• Home
Name Date Size #Lines LOC

..--

include/krml/04-Jul-2025-1,065830

internal/04-Jul-2025-345185

Hacl_Hash_MD5.cD04-Jul-202537.6 KiB1,4311,385

Hacl_Hash_MD5.hD04-Jul-20252.2 KiB6725

Hacl_Hash_SHA1.cD04-Jul-202512.7 KiB464419

Hacl_Hash_SHA1.hD04-Jul-20252.2 KiB6725

Hacl_Hash_SHA2.cD04-Jul-202535.3 KiB1,2741,122

Hacl_Hash_SHA2.hD04-Jul-20256.7 KiB20566

Hacl_Hash_SHA3.cD04-Jul-202520.9 KiB735675

Hacl_Hash_SHA3.hD04-Jul-20253.6 KiB13279

Hacl_Streaming_Types.hD04-Jul-20252.6 KiB8448

README.mdD04-Jul-20251,000 3020

python_hacl_namespaces.hD04-Jul-20255.4 KiB9076

refresh.shD04-Jul-20254.8 KiB14084

README.md

1# Algorithm implementations used by the `hashlib` module.
2
3This code comes from the
4[HACL\*](https://github.com/hacl-star/hacl-star/) project.
5
6HACL\* is a cryptographic library that has been formally verified for memory
7safety, functional correctness, and secret independence.
8
9## Updating HACL*
10
11Use the `refresh.sh` script in this directory to pull in a new upstream code
12version.  The upstream git hash used for the most recent code pull is recorded
13in the script.  Modify the script as needed to bring in more if changes are
14needed based on upstream code refactoring.
15
16Never manually edit HACL\* files. Always add transformation shell code to the
17`refresh.sh` script to perform any necessary edits. If there are serious code
18changes needed, work with the upstream repository.
19
20## Local files
21
221. `./include/python_hacl_namespaces.h`
231. `./README.md`
241. `./refresh.sh`
25
26## ACKS
27
28* Jonathan Protzenko aka [@msprotz on Github](https://github.com/msprotz)
29contributed our HACL\* based builtin code.
30