• Home
Name Date Size #Lines LOC

..--

asm/04-Jul-2025-671647

BUILD.gnD04-Jul-2025216 54

LICENSED04-Jul-20251.1 KiB2318

METADATAD04-Jul-2025430 1411

README.chromiumD04-Jul-2025350 1311

README.mdD04-Jul-20251.2 KiB2419

curve25519_32.hD04-Jul-202544.7 KiB1,5721,370

curve25519_64.hD04-Jul-202528.8 KiB979808

curve25519_64_adx.hD04-Jul-202522 KiB697514

curve25519_64_msvc.hD04-Jul-202537.5 KiB1,2821,064

p256_32.hD04-Jul-2025150.3 KiB4,7614,472

p256_64.hD04-Jul-202564.6 KiB2,0361,744

p256_64_msvc.hD04-Jul-202563.3 KiB2,0031,711

README.chromium

1Name: Fiat-Crypto: Synthesizing Correct-by-Construction Code for Cryptographic Primitives
2Short Name: fiat-crypto
3URL: https://github.com/mit-plv/fiat-crypto
4Version: git (see METADATA)
5Revision: 6ccc6638716d4632304baf1adbb5c47c3a12ea6f
6License: MIT
7License File: LICENSE
8Security Critical: yes
9Shipped: yes
10
11Description:
12See README.md and METADATA.
13

README.md

1# Fiat Cryptography
2
3The files in this directory are generated using [Fiat
4Cryptography](https://github.com/mit-plv/fiat-crypto) from the associated
5library of arithmetic-implementation templates. These files are included under
6the MIT license. (See LICENSE file.)
7
8Some files are included directly from the `fiat-c/src` directory of the Fiat
9Cryptography repository. Their contents are `#include`d into source files, so
10we rename them to `.h`. Implementations that use saturated arithmetic on 64-bit
11words are further manually edited to use platform-appropriate incantations for
12operations such as addition with carry; these changes are marked with "`NOTE:
13edited after generation`".
14
15# CryptOpt
16
17Files in the `asm` directory are compiled from Fiat-Cryptography templates
18using [CryptOpt](https://github.com/0xADE1A1DE/CryptOpt). These generated
19assembly files have been edited to support call-stack unwinding. The modified
20files have been checked for functional correctness using the CryptOpt
21translation validator that is included in the Fiat-Cryptography repository.
22Correct unwinding and manual assembler-directive changes related to object-file
23conventions are validated using unit tests.
24