CryptoDB
Daniel J. Bernstein
Publications
Year
Venue
Title
2024
CIC
Understanding binary-Goppa decoding
Abstract
<p>This paper reviews, from bottom to top, a polynomial-time algorithm to correct $t$ errors in classical binary Goppa codes defined by squarefree degree-$t$ polynomials. The proof is factored through a proof of a simple Reed–Solomon decoder, and the algorithm is simpler than Patterson's algorithm. All algorithm layers are expressed as Sage scripts backed by test scripts. All theorems are formally verified. The paper also covers the use of decoding inside the Classic McEliece cryptosystem, including reliable recognition of valid inputs. </p>
2024
CRYPTO
CryptAttackTester: high-assurance attack analysis
Abstract
Quantitative analyses of the costs of cryptographic attack algorithms play a central role in comparing cryptosystems, guiding the search for improved attacks, and deciding which cryptosystems to standardize. Unfortunately, these analyses often turn out to be wrong. Sometimes errors are not caught until years later.
This paper introduces CryptAttackTester (CAT), a software framework for high-assurance quantification of attack effectiveness. CAT enforces complete definitions of attack algorithms all the way down through the model of computation, enforces complete definitions of probability predictions and cost predictions all the way down through the cost metric, and systematically tests the predictions on small-scale inputs.
For example, CAT gives a fully defined meaning to the statement "the median cost of brute-force search for an AES-128 key is under 2^141.89 bit operations", and provides clear, auditable reasons to believe that the statement is correct. This does not rule out all possible analysis errors, but with CAT it is no longer possible for bugs to hide inside ambiguous or untested security-level claims. The paper gives various examples of errors in the literature that survived typical informal testing practices and that would have been caught if CAT-enforced links had been in place.
As an important case study, the bulk of the current CAT release consists of full definitions of a broad spectrum of algorithms for information-set decoding (ISD), along with cost/probability predictions for each algorithm. ISD is the top attack strategy against the McEliece cryptosystem. The predictions cover interactions between (1) high-level search strategies from Prange, Lee–Brickell, Leon, Stern, Dumer, May–Meurer–Thomae, and Becker–Joux–May–Meurer; (2) random walks from Omura, Canteaut–Chabaud, Canteaut–Sendrier, and Bernstein–Lange–Peters; and (3) speedups in core subroutines such as linear algebra and sorting. The predictions also account for various attack overheads that were omitted from previous analyses. These gaps add up to roughly 10 bits, depending on parameters. CAT's tests catch much smaller errors than this.
The cost metric selected in CAT has a very simple definition, is a lower bound for the price-performance ratio of non-quantum special-purpose hardware (although the bound is loose for attacks bottlenecked by long-distance communication), and allows many optimization efforts to be shared with the design of cryptographic circuits.
2023
JOFC
Cryptographic Competitions
Abstract
Competitions are widely viewed as the safest way to select cryptographic algorithms. This paper surveys procedures that have been used in cryptographic competitions, and analyzes the extent to which those procedures reduce security risks.
2021
TCHES
CTIDH: faster constant-time CSIDH
📺
Abstract
This paper introduces a new key space for CSIDH and a new algorithm for constant-time evaluation of the CSIDH group action. The key space is not useful with previous algorithms, and the algorithm is not useful with previous key spaces, but combining the new key space with the new algorithm produces speed records for constant-time CSIDH. For example, for CSIDH-512 with a 256-bit key space, the best previous constant-time results used 789000 multiplications and more than 200 million Skylake cycles; this paper uses 438006 multiplications and 125.53 million cycles.
2020
TCHES
Concrete quantum cryptanalysis of binary elliptic curves
📺
Abstract
This paper analyzes and optimizes quantum circuits for computing discrete logarithms on binary elliptic curves, including reversible circuits for fixed-base-point scalar multiplication and the full stack of relevant subroutines. The main optimization target is the size of the quantum computer, i.e., the number of logical qubits required, as this appears to be the main obstacle to implementing Shor’s polynomial-time discrete-logarithm algorithm. The secondary optimization target is the number of logical Toffoli gates. For an elliptic curve over a field of 2n elements, this paper reduces the number of qubits to 7n + ⌊log2(n)⌋ + 9. At the same time this paper reduces the number of Toffoli gates to 48n3 + 8nlog2(3)+1 + 352n2 log2(n) + 512n2 + O(nlog2(3)) with double-and-add scalar multiplication, and a logarithmic factor smaller with fixed-window scalar multiplication. The number of CNOT gates is also O(n3). Exact gate counts are given for various sizes of elliptic curves currently used for cryptography.
2019
TCHES
Fast constant-time gcd computation and modular inversion
📺
Abstract
This paper introduces streamlined constant-time variants of Euclid’s algorithm, both for polynomial inputs and for integer inputs. As concrete applications, this paper saves time in (1) modular inversion for Curve25519, which was previously believed to be handled much more efficiently by Fermat’s method, and (2) key generation for the ntruhrss701 and sntrup4591761 lattice-based cryptosystems.
2019
EUROCRYPT
Quantum Circuits for the CSIDH: Optimizing Quantum Evaluation of Isogenies
📺
Abstract
Choosing safe post-quantum parameters for the new CSIDH isogeny-based key-exchange system requires concrete analysis of the cost of quantum attacks. The two main contributions to attack cost are the number of queries in hidden-shift algorithms and the cost of each query. This paper analyzes algorithms for each query, introducing several new speedups while showing that some previous claims were too optimistic for the attacker. This paper includes a full computer-verified simulation of its main algorithm down to the bit-operation level.
2019
ASIACRYPT
Decisional Second-Preimage Resistance: When Does SPR Imply PRE?
Abstract
There is a well-known gap between second-preimage resistance and preimage resistance for length-preserving hash functions. This paper introduces a simple concept that fills this gap. One consequence of this concept is that tight reductions can remove interactivity for multi-target length-preserving preimage problems, such as the problems that appear in analyzing hash-based signature systems. Previous reduction techniques applied to only a negligible fraction of all length-preserving hash functions, presumably excluding all off-the-shelf hash functions.
2017
CHES
Gimli : A Cross-Platform Permutation
Abstract
This paper presents Gimli, a 384-bit permutation designed to achieve high security with high performance across a broad range of platforms, including 64-bit Intel/AMD server CPUs, 64-bit and 32-bit ARM smartphone CPUs, 32-bit ARM microcontrollers, 8-bit AVR microcontrollers, FPGAs, ASICs without side-channel protection, and ASICs with side-channel protection.
2017
CHES
Sliding Right into Disaster: Left-to-Right Sliding Windows Leak
Abstract
It is well known that constant-time implementations of modular exponentiation cannot use sliding windows. However, software libraries such as Libgcrypt, used by GnuPG, continue to use sliding windows. It is widely believed that, even if the complete pattern of squarings and multiplications is observed through a side-channel attack, the number of exponent bits leaked is not sufficient to carry out a full key-recovery attack against RSA. Specifically, 4-bit sliding windows leak only 40% of the bits, and 5-bit sliding windows leak only 33% of the bits.In this paper we demonstrate a complete break of RSA-1024 as implemented in Libgcrypt. Our attack makes essential use of the fact that Libgcrypt uses the left-to-right method for computing the sliding-window expansion. We show for the first time that the direction of the encoding matters: the pattern of squarings and multiplications in left-to-right sliding windows leaks significantly more information about the exponent than right-to-left. We show how to extend the Heninger-Shacham algorithm for partial key reconstruction to make use of this information and obtain a very efficient full key recovery for RSA-1024. For RSA-2048 our attack is efficient for 13% of keys.
Program Committees
- CHES 2019
- FSE 2019
- CHES 2018
- Asiacrypt 2018
- CHES 2017
- CHES 2016
- FSE 2015
- Asiacrypt 2015
- CHES 2015
- FSE 2014
- Asiacrypt 2014
- CHES 2014
- CHES 2013
- CHES 2012
- Eurocrypt 2011
- CHES 2011
- CHES 2010
- FSE 2010
- CHES 2009
- Asiacrypt 2009
- FSE 2009
- Asiacrypt 2008
- CHES 2008
Coauthors
- Gustavo Banegas (2)
- Jens Bauch (1)
- Mihir Bellare (1)
- Daniel J. Bernstein (34)
- Joachim Breitner (1)
- Leon Groot Bruinderink (1)
- Fabio Campos (1)
- Yun-An Chang (1)
- Owen Chia-Hsin Chen (1)
- Tien-Ren Chen (1)
- Jiun-Ming Chen (1)
- Chen-Mou Cheng (2)
- Li-Ping Chou (1)
- Tung Chou (3)
- Chitchanok Chuengsatiansup (2)
- Niels Duif (1)
- Reza Rezaeian Farashahi (1)
- Daniel Genkin (1)
- Nadia Heninger (2)
- Daira Hopwood (1)
- Andreas Hülsing (2)
- Stefan Kölbl (1)
- Tanja Lange (16)
- Stefan Lucks (1)
- Chloe Martindale (1)
- Pedro Maat Costa Massolino (1)
- Florian Mendel (1)
- Michael Meyer (1)
- Kashif Nawaz (1)
- Ruben Niederhagen (1)
- Lorenz Panny (1)
- Louiza Papachristodoulou (1)
- Christiane Peters (1)
- Tobias Schneider (1)
- Michael Schneider (1)
- Peter Schwabe (7)
- Benjamin Smith (1)
- Nicko van Someren (1)
- Jana Sotáková (1)
- François-Xavier Standaert (1)
- Stefano Tessaro (1)
- Yosuke Todo (1)
- Henry de Valence (1)
- Iggy van Hoof (1)
- Christine van Vredendaal (1)
- Benoît Viguier (1)
- Christine van Vredendaal (1)
- Zooko Wilcox-O'Hearn (1)
- Bo-Yin Yang (4)
- Yuval Yarom (1)