Authors
Katherine Q Ye, Matthew Green, Naphat Sanguansin, Lennart Beringer, Adam Petcher, Andrew W Appel
Publication date
2017/10/30
Conference
Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security
Pages
2007-2020
Publisher
ACM
Description
We have formalized the functional specification of HMAC-DRBG (NIST 800-90A), and we have proved its cryptographic security-that its output is pseudorandom--using a hybrid game-based proof. We have also proved that the mbedTLS implementation (C program) correctly implements this functional specification. That proof composes with an existing C compiler correctness proof to guarantee, end-to-end, that the machine language program gives strong pseudorandomness. All proofs (hybrid games, C program verification, compiler, and their composition) are machine-checked in the Coq proof assistant. Our proofs are modular: the hybrid game proof holds on any implementation of HMAC-DRBG that satisfies our functional specification. Therefore, our functional specification can serve as a high-assurance reference.
Total citations
20172018201920202021202220232024211191091387
Scholar articles
KQ Ye, M Green, N Sanguansin, L Beringer, A Petcher… - Proceedings of the 2017 ACM SIGSAC Conference on …, 2017