Recovering the CTR_DRBG state in 256 traces

  • Lauren De Meyer KU Leuven, imec - COSIC
Keywords: DPA, SCA, CPA, AES, CTR, PRNG, NIST, DRBG, DDLA

Abstract

The NIST CTR_DRBG specification prescribes a maximum size on each random number request, limiting the number of encryptions in CTR mode with the same key to 4 096. Jaffe’s attack on AES in CTR mode without knowledge of the nonce from CHES 2007 requires 216 traces, which is safely above this recommendation. In this work, we exhibit an attack that requires only 256 traces, which is well within the NIST limits. We use simulated traces to investigate the success probability as a function of the signal-to-noise ratio. We also demonstrate its success in practice by attacking an AES-CTR implementation on a Cortex-M4 among others and recovering both the key and nonce. Our traces and code are made openly available for reproducibility.

Published
2019-11-19
How to Cite
De Meyer, L. (2019). Recovering the CTR_DRBG state in 256 traces. IACR Transactions on Cryptographic Hardware and Embedded Systems, 2020(1), 37-65. https://doi.org/10.13154/tches.v2020.i1.37-65
Section
Articles