Fiat Cryptography: A Code-Generation Approach to Correct-by-Construction Cryptography
Duration: 28 mins 46 secs
Share this media item:
Embed this media item:
Embed this media item:
About this item
Description: |
Chlipala, A
Thursday 13th May 2021 - 17:30 to 18:00 |
---|
Created: | 2021-05-18 13:41 |
---|---|
Collection: | Verified software: from theory to practice |
Publisher: | Isaac Newton Institute for Mathematical Sciences |
Copyright: | Chlipala, A |
Language: | eng (English) |
Abstract: | Big-integer modular arithmetic is at the heart of many cryptographic algorithms. Often the modulus is known in advance, in which case code can be quite specialized for performance reasons, and in fact experts have typically reimplemented classic algorithms from scratch in C or assembly, for each combination of modulus and hardware word size. Our Fiat Cryptography project showed a better way: a formally verified compiler that specializes implementations from algorithm libraries. Since our initial open-source release, Fiat Cryptography has been adopted for elliptic-curve operations in both Chrome and Firefox, the Linux kernel, and the Go standard library. I will sketch how we get world-performance-champion C code via partial evaluation of purely functional programs, with machine-checked proof via the Coq proof assistant. |
---|
Available Formats
Format | Quality | Bitrate | Size | |||
---|---|---|---|---|---|---|
MPEG-4 Video | 640x360 | 443.57 kbits/sec | 93.46 MB | View | Download | |
WebM | 640x360 | 253.19 kbits/sec | 53.38 MB | View | Download | |
iPod Video | 480x270 | 489.43 kbits/sec | 103.12 MB | View | Download | |
MP3 | 44100 Hz | 249.86 kbits/sec | 52.68 MB | Listen | Download | |
Auto * | (Allows browser to choose a format it supports) |