On Recovering Affine Encodings in White-Box Implementations. / Derbez, Patrick; Fouque, Pierre-Alain; Lambin, Baptiste; Minaud, Brice.

In: TCHES, Vol. 2018, No. 3, 14.08.2018, p. 121-149.

Research output: Contribution to journalArticle

Published

Documents

  • Patrick Derbez
  • Pierre-Alain Fouque
  • Baptiste Lambin
  • Brice Minaud

Abstract

Ever since the first candidate white-box implementations by Chow et al. in 2002, producing a secure white-box implementation of AES has remained an enduring challenge. Following the footsteps of the original proposal by Chow et al., other constructions were later built around the same framework. In this framework, the round function of the cipher is ``encoded'' by composing it with non-linear and affine layers known as encodings. However, all such attempts were broken by a series of increasingly efficient attacks that are able to peel off these encodings, eventually uncovering the underlying round function, and with it the secret key.

These attacks, however, were generally ad-hoc and did not enjoy a wide applicability. As our main contribution, we propose a generic and efficient algorithm to recover affine encodings, for any Substitution-Permutation-Network (SPN) cipher, such as AES, and any form of affine encoding. For AES parameters, namely 128-bit blocks split into 16 parallel 8-bit S-boxes, affine encodings are recovered with a time complexity estimated at 2^32 basic operations, independently of how the encodings are built.

This algorithm is directly applicable to a large class of schemes. We illustrate this on a recent proposal due to Baek, Cheon and Hong, which was not previously analyzed. While Baek et al. evaluate the security of their scheme to 110 bits, a direct application of our generic algorithm is able to break the scheme with an estimated time complexity of only 2^35 basic operations.

As a second contribution, we show a different approach to cryptanalyzing the Baek et al. scheme, which reduces the analysis to a standalone combinatorial problem, ultimately achieving key recovery in time complexity 2^31. We also provide an implementation of the attack, which is able to recover the secret key in about 12 seconds on a standard desktop computer.
Original languageEnglish
Pages (from-to)121-149
Number of pages29
JournalTCHES
Volume2018
Issue number3
DOIs
StatePublished - 14 Aug 2018
This open access research output is licenced under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.

ID: 31309272