Packages
hackney
3.0.2
4.7.2
4.7.1
4.7.0
4.6.1
4.6.0
4.5.2
4.5.1
4.5.0
4.4.5
4.4.3
4.4.2
4.4.1
4.4.0
4.3.0
4.2.3
4.2.2
4.2.1
4.2.0
4.1.0
4.0.3
4.0.2
4.0.1
4.0.0
3.2.1
3.2.0
3.1.2
3.1.1
3.1.0
3.0.3
3.0.2
3.0.1
3.0.0
retired
2.0.1
2.0.0
2.0.0-beta.1
1.25.0
1.24.1
1.24.0
1.23.0
1.22.0
1.21.0
1.20.1
1.20.0
1.19.1
1.19.0
1.18.2
1.18.1
1.18.0
1.17.4
1.17.3
1.17.2
1.17.1
1.17.0
1.16.0
1.15.2
1.15.1
1.15.0
1.14.3
1.14.2
1.14.0
1.13.0
1.12.1
1.12.0
1.11.0
1.10.1
1.10.0
1.9.0
1.8.6
1.8.5
1.8.4
1.8.3
1.8.2
1.8.0
1.7.1
1.7.0
1.6.6
retired
1.6.5
1.6.4
retired
1.6.3
1.6.2
1.6.1
1.6.0
1.5.7
1.5.6
1.5.5
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.10
1.4.8
1.4.7
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.2
1.3.1
1.3.0
1.2.0
1.1.0
1.0.6
1.0.5
1.0.2
1.0.1
0.15.2
0.15.0
0.14.3
0.14.2
0.14.1
0.14.0
0.13.1
Simple HTTP client with HTTP/1.1, HTTP/2, and HTTP/3 support
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
c_src/boringssl/third_party/fiat/README.md
# Fiat Cryptography
Most files in this directory are generated using [Fiat
Cryptography](https://github.com/mit-plv/fiat-crypto) from the associated
library of arithmetic-implementation templates. These files are included under
the Apache 2.0 license. (See LICENSE file.)
Some files are included directly from the `fiat-c/src` directory of the Fiat
Cryptography repository. Their contents are `#include`d into source files, so
we rename them to `.h`. Implementations that use saturated arithmetic on 64-bit
words are further manually edited to use platform-appropriate incantations for
operations such as addition with carry; these changes are marked with "`NOTE:
edited after generation`".
# CryptOpt
Files in the `asm` directory are compiled from Fiat-Cryptography templates
using [CryptOpt](https://github.com/0xADE1A1DE/CryptOpt). These generated
assembly files have been edited to support call-stack unwinding. The modified
files have been checked for functional correctness using the CryptOpt
translation validator that is included in the Fiat-Cryptography repository.
Correct unwinding and manual assembler-directive changes related to object-file
conventions are validated using unit tests.
# Bedrock
Routines for which assembly-level optimization is not necessary are written in
[Bedrock2](https://github.com/mit-plv/bedrock2) and translated to C. The file
`bedrock_unverified_platform.c.inc` provides the platform functionality code
thus translated expects.
The P256 point doubling and addition are implemented in this manner in
p256_coord.br.c.inc. This code originates from Fiat Cryptogaphy commit
6e22d333861d51c7f6baa0826648a2215d0c333f file src/Bedrock/P256.v
Field arithmetic operations are dispatched in p256_field.c.inc to
platform-specific code including assembly, fiat-crypto-generated C, and
Bedrock-generated C.