mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	 0a97427ee5
			
		
	
	
		0a97427ee5
		
			
		
	
	
	
	
		
			
			A new extension module, `_hmac`, now exposes the HACL* HMAC (formally verified) implementation. The HACL* implementation is used as a fallback implementation when the OpenSSL implementation of HMAC is not available or disabled. For now, only named hash algorithms are recognized and SIMD support provided by HACL* for the BLAKE2 hash functions is not yet used.
		
			
				
	
	
	
	
		
			1 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			1 KiB
		
	
	
	
	
	
	
	
Algorithm implementations used by the hashlib module.
This code comes from the HACL* project.
HACL* is a cryptographic library that has been formally verified for memory safety, functional correctness, and secret independence.
Updating HACL*
Use the refresh.sh script in this directory to pull in a new upstream code version. The upstream git hash used for the most recent code pull is recorded in the script. Modify the script as needed to bring in more if changes are needed based on upstream code refactoring.
Never manually edit HACL* files. Always add transformation shell code to the
refresh.sh script to perform any necessary edits. If there are serious code
changes needed, work with the upstream repository.
Local files
ACKS
- Jonathan Protzenko aka @msprotz on Github contributed our HACL* based builtin code.