Cryptology ePrint Archive: Report 2022/428

Implicit White-Box Implementations: White-Boxing ARX Ciphers

Adrián Ranea and Joachim Vandersmissen and Bart Preneel

Abstract: Since the first white-box implementation of AES published twenty years ago, no significant progress has been made in the design of secure implementations against an attacker with full control of the device. Designing white-box implementations of existing block ciphers is a challenging problem, as all proposals have been broken. Only two white-box design strategies have been published this far: the CEJO framework, which can only be applied to ciphers with small S-boxes, and self-equivalence encodings, which were only applied to AES.

In this work we propose implicit implementations, a new design of white-box implementations based on implicit functions, and we show that current generic attacks that break CEJO or self-equivalence implementations are not successful against implicit implementations. The generation and the security of implicit implementations are related to the self-equivalences of the non-linear layer of the cipher, and we propose a new method to obtain self-equivalences based on the CCZ-equivalence. We implemented this method and many other functionalities in a new open-source tool BoolCrypt, which we used to obtain for the first time affine, linear, and even quadratic self-equivalences of the permuted modular addition. Using the implicit framework and these self-equivalences, we describe for the first time a practical white-box implementation of a generic Addition-Rotation-XOR (ARX) cipher, and we provide an open-source tool to easily generate implicit implementations of ARX ciphers.

Category / Keywords: secret-key cryptography / white-box cryptography, self-equivalence, implicit implementations, ARX

Date: received 4 Apr 2022

Contact author: adrian ranea at esat kuleuven be

Available format(s): PDF | BibTeX Citation

Version: 20220406:130522 (All versions of this report)

Short URL:

[ Cryptology ePrint archive ]