Litcius/Paper detail

HACLxN: Verified Generic SIMD Crypto (for all your favourite platforms)

Marina Polubelova, Karthikeyan Bhargavan, Jonathan Protzenko, Benjamin Beurdouche, Aymeric Fromherz, Natalia Kulatova, Santiago Zanella-Béguelin

202019 citationsDOIOpen Access PDF

Abstract

We present a new methodology for building formally verified cryptographic libraries that are optimized for multiple architectures. In particular, we show how to write and verify generic crypto code in the F programming language that exploits single-instruction multiple data (SIMD) parallelism. We show how this code can be compiled to platforms that support vector instructions, including ARM Neon and Intel AVX, AVX2, and AVX512. We apply our methodology to obtain verified vectorized implementations on all these platforms for the ChaCha20 encryption algorithm, the Poly1305 one-time MAC, and the SHA-2 and Blake2 families of hash algorithms.

Topics & Concepts

Computer scienceSIMDParallel computingCryptographyInstruction setCode (set theory)EncryptionHash functionProgramming languageOperating systemAlgorithmSet (abstract data type)Cryptographic Implementations and SecuritySecurity and Verification in ComputingAdvanced Malware Detection Techniques
HACLxN: Verified Generic SIMD Crypto (for all your favourite platforms) | Litcius