Crypto 2024
HAWKEYE – Recovering Symmetric Cryptography From Hardware Circuits
Gregor Leander
Ruhr University Bochum
Christof Paar
Max Planck Institute for Security and Privacy
Julian Speith
Max Planck Institute for Security and Privacy
Lukas Stennes
Ruhr University Bochum
Keywords: Hardware Reverse Engineering, Symmetric Cryptography
Abstract
We present the first comprehensive approach for detecting and analyzing symmetric cryptographic primitives in gate-level descriptions of hardware. To capture both ASICs and FPGAs, we model the hardware as a directed graph, where gates become nodes and wires become edges. For modern chips, those graphs can easily consist of hundreds of thousands of nodes. More abstractly, we find subgraphs corresponding to cryptographic primitives in a potentially huge graph, the sea-of-gates, describing an entire chip. As we are particularly interested in unknown cryptographic algorithms, we cannot rely on searching for known parts such as S-boxes or round constants. Instead, we are looking for parts of the chip that perform highly local computations. A major result of our work is that many symmetric algorithms can be reliably located and sometimes even identified by our approach, which we call HAWKEYE. Our findings are verified by extensive experimental results, which involve SPN, ARX, Feistel, and LFSR-based ciphers implemented for both FPGAs and ASICs. We demonstrate the real-world applicability of HAWKEYE by evaluating it on OpenTitan’s Earl Grey chip, an open-source secure micro-controller design. HAWKEYE locates all major cryptographic primitives present in the netlist comprising 424341 gates in 44.3 seconds.
Publication
Crypto 2024
PaperArtifact
Artifact number
crypto/2024/a9
Artifact published
August 15, 2024
License
This work is licensed under the Apache License, Version 2.0.
BibTeX How to cite
Leander, G., Paar, C., Speith, J., Stennes, L. (2024). HAWKEYE – Recovering Symmetric Cryptography From Hardware Circuits. In: Reyzin, L., Stebila, D. (eds) Advances in Cryptology – Crypto 2024. Lecture Notes in Computer Science, vol. 14923. Springer, Cham. https://doi.org/10.1007/978-3-031-68385-5_11. Artifact available at https://artifacts.iacr.org/crypto/2024/a9