Machine-Checked Proofs for Cryptographic Standards: Indifferentiability of Sponge and Secure High-Assurance Implementations of SHA-3
Machine-Checked Proofs for Cryptographic Standards: Indifferentiability of Sponge and Secure High-Assurance Implementations of SHA-3
复制标题
密码标准的机器检查证明:海绵的不可区分性和 SHA-3 的安全高保证实现
DOI:
--
复制
发表时间:
2019
期刊:
影响因子:
--
通讯作者:
Pierre
中科院分区:
文献类型:
--
作者:
J. Almeida;Cécile Baritel;M. Barbosa;G. Barthe;François Dupressoir;B. Grégoire;Vincent Laporte;Tiago Oliveira;Alley Stoughton;Pierre
We present a high-assurance and high-speed implementation of the SHA-3 hash function. Our implementation is written in the Jasmin programming language, and is formally verified for functional correctness, provable security and timing attack resistance in the EasyCrypt proof assistant. Our implementation is the first to achieve simultaneously the four desirable properties (efficiency, correctness, provable security, and side-channel protection) for a non-trivial cryptographic primitive. Concretely, our mechanized proofs show that: 1) the SHA-3 hash function is indifferentiable from a random oracle, and thus is resistant against collision, first and second preimage attacks; 2) the SHA-3 hash function is correctly implemented by a vectorized x86 implementation. Furthermore, the implementation is provably protected against timing attacks in an idealized model of timing leaks. The proofs include new EasyCrypt libraries of independent interest for programmable random oracles and modular indifferentiability proofs.
影响因子:
6.9
作者:
J. Almeida;M. Barbosa;G. Barthe;François Dupressoir;M. Emmi
通讯作者:
J. Almeida;M. Barbosa;G. Barthe;François Dupressoir;M. Emmi