CryptoDB
Joppe W. Bos
Publications
Year
Venue
Title
2023
TCHES
Enabling FrodoKEM on Embedded Devices
Abstract
FrodoKEM is a lattice-based Key Encapsulation Mechanism (KEM) based on unstructured lattices. From a security point of view this makes it a conservative option to achieve post-quantum security, hence why it is favored by several European authorities (e.g., German BSI and French ANSSI). Relying on unstructured instead of structured lattices (e.g., CRYSTALS-Kyber) comes at the cost of additional memory usage, which is particularly critical for embedded security applications such as smart cards. For example, prior FrodoKEM-640 implementations (using AES) on Cortex-M4 require more than 80 kB of stack making it impossible to run on some embedded systems. In this work, we explore several stack reduction strategies and the resulting time versus memory trade-offs. Concretely, we reduce the stack consumption of FrodoKEM by a factor 2–3x compared to the smallest known implementations with almost no impact on performance. We also present various time-memory trade-offs going as low as 8 kB for all AES parameter sets, and below 4 kB for FrodoKEM-640. By introducing a minor tweak to the FrodoKEM specifications, we additionally reduce the stack consumption down to 8 kB for all the SHAKE versions. As a result, this work enables FrodoKEM on more resource constrained embedded systems.
2021
TCHES
Masking Kyber: First- and Higher-Order Implementations
📺
Abstract
In the final phase of the post-quantum cryptography standardization effort, the focus has been extended to include the side-channel resistance of the candidates. While some schemes have been already extensively analyzed in this regard, there is no such study yet of the finalist Kyber.In this work, we demonstrate the first completely masked implementation of Kyber which is protected against first- and higher-order attacks. To the best of our knowledge, this results in the first higher-order masked implementation of any post-quantum secure key encapsulation mechanism algorithm. This is realized by introducing two new techniques. First, we propose a higher-order algorithm for the one-bit compression operation. This is based on a masked bit-sliced binary-search that can be applied to prime moduli. Second, we propose a technique which enables one to compare uncompressed masked polynomials with compressed public polynomials. This avoids the costly masking of the ciphertext compression while being able to be instantiated at arbitrary orders.We show performance results for first-, second- and third-order protected implementations on the Arm Cortex-M0+ and Cortex-M4F. Notably, our implementation of first-order masked Kyber decapsulation requires 3.1 million cycles on the Cortex-M4F. This is a factor 3.5 overhead compared to the unprotected optimized implementationin pqm4. We experimentally show that the first-order implementation of our new modules on the Cortex-M0+ is hardened against attacks using 100 000 traces and mechanically verify the security in a fine-grained leakage model using the verification tool scVerif.
2020
TCHES
Rapidly Verifiable XMSS Signatures
📺
Abstract
This work presents new speed records for XMSS (RFC 8391) signature verification on embedded devices. For this we make use of a probabilistic method recently proposed by Perin, Zambonin, Martins, Custódio, and Martina (PZMCM) at ISCC 2018, that changes the XMSS signing algorithm to search for rapidly verifiable signatures. We improve the method, ensuring that the added signing cost for the search is independent of the message length. We provide a statistical analysis of the resulting verification speed and support it by experiments. We present a record setting RFC compatible implementation of XMSS verification on the ARM Cortex-M4. At a signing time of about one minute on a general purpose CPU, we create signatures that are verified about 1.44 times faster than traditionally generated signatures. Adding further well-known implementation optimizations to the verification algorithm we reduce verification time by over a factor two from 13.85 million to 6.56 million cycles. In contrast to previous works, we provide a detailed security analysis of the resulting signature scheme under classical and quantum attacks that justifies our selection of parameters. On the way, we fill a gap in the security analysis of XMSS as described in RFC 8391 proving that the modified message hashing in the RFC does indeed mitigate multi-target attacks. This was not shown before and might be of independent interest.
2019
JOFC
White-Box Cryptography: Don’t Forget About Grey-Box Attacks
Abstract
Despite the fact that all current scientific white-box approaches of standardized cryptographic primitives have been publicly broken, these attacks require knowledge of the internal data representation used by the implementation. In practice, the level of implementation knowledge required is only attainable through significant reverse-engineering efforts. In this paper, we describe new approaches to assess the security of white-box implementations which require neither knowledge about the look-up tables used nor expensive reverse-engineering efforts. We introduce the differential computation analysis (DCA) attack which is the software counterpart of the differential power analysis attack as applied by the cryptographic hardware community. Similarly, the differential fault analysis (DFA) attack is the software counterpart of fault injection attacks on cryptographic hardware. For DCA, we developed plugins to widely available dynamic binary instrumentation (DBI) frameworks to produce software execution traces which contain information about the memory addresses being accessed. For the DFA attack, we developed modified emulators and plugins for DBI frameworks that allow injecting faults at selected moments within the execution of the encryption or decryption process as well as a framework to automate static fault injection. To illustrate the effectiveness, we show how DCA and DFA can extract the secret key from numerous publicly available non-commercial white-box implementations of standardized cryptographic algorithms. These approaches allow one to extract the secret key material from white-box implementations significantly faster and without specific knowledge of the white-box design in an automated or semi-automated manner.
2017
CHES
Faster Homomorphic Function Evaluation Using Non-integral Base Encoding
Abstract
In this paper we present an encoding method for real numbers tailored for homomorphic function evaluation. The choice of the degree of the polynomial modulus used in all popular somewhat homomorphic encryption schemes is dominated by security considerations, while with the current encoding techniques the correctness requirement allows for much smaller values. We introduce a generic encoding method using expansions with respect to a non-integral base, which exploits this large degree at the benefit of reducing the growth of the coefficients when performing homomorphic operations. This allows one to choose a smaller plaintext coefficient modulus which results in a significant reduction of the running time. We illustrate our approach by applying this encoding in the setting of homomorphic electricity load forecasting for the smart grid which results in a speed-up by a factor 13 compared to previous work, where encoding was done using balanced ternary expansions.
Program Committees
- Crypto 2023
- Eurocrypt 2023
- Eurocrypt 2021
- Asiacrypt 2021
- PKC 2020
- CHES 2020
- CHES 2019
- CHES 2018
- Asiacrypt 2017
Coauthors
- Kazumaro Aoki (1)
- Maxime Augier (1)
- Estuardo Alpirez Bock (1)
- Charlotte Bonte (1)
- Carl Bootland (1)
- Joppe W. Bos (18)
- Olivier Bronchain (1)
- Chris Brzuska (1)
- David Canright (1)
- Wouter Castryck (1)
- Craig Costello (4)
- Frank Custers (1)
- Jens Franke (1)
- Pierrick Gaudry (1)
- Eloi Sanfelix Gonzalez (1)
- Marc Gourjon (1)
- Hüseyin Hisil (1)
- Hüseyin Hisil (2)
- Charles Hubain (2)
- James Hughes (1)
- Andreas Hülsing (1)
- Ilia Iliashenko (1)
- Thorsten Kleinjung (5)
- Alexander Kruppa (1)
- Kristin E. Lauter (3)
- Arjen K. Lenstra (4)
- Wil Michiels (2)
- Andrea Miele (2)
- Peter L. Montgomery (1)
- Cristofaro Mune (1)
- Dag Arne Osvik (2)
- Onur Özen (1)
- Joost Renes (3)
- Herman J. J. te Riele (1)
- Tobias Schneider (1)
- Martijn Stam (1)
- Deian Stefan (2)
- Philippe Teuwen (2)
- Emmanuel Thomé (1)
- Andrey Timofeev (1)
- Alexander Treff (1)
- Denise Verbakel (1)
- Frederik Vercauteren (1)
- Christine van Vredendaal (3)
- Christophe Wachter (1)
- Paul Zimmermann (1)