cpython/Tools/c-analyzer/cpython
Jonathan Protzenko 325e9b8ef4
gh-99108: Add HACL* Blake2 implementation to hashlib (GH-119316)
This replaces the existing hashlib Blake2 module with a single implementation that uses HACL\*'s Blake2b/Blake2s implementations. We added support for all the modes exposed by the Python API, including tree hashing, leaf nodes, and so on. We ported and merged all of these changes upstream in HACL\*, added test vectors based on Python's existing implementation, and exposed everything needed for hashlib.

This was joint work done with @R1kM.

See the PR for much discussion and benchmarking details.   TL;DR: On many systems, 8-50% faster (!) than `libb2`, on some systems it appeared 10-20% slower than `libb2`.
2024-08-13 21:42:19 +00:00
..
__init__.py
__main__.py gh-102033: Fix syntax error in Tools/c-analyzer (GH-102066) 2023-03-22 07:59:32 -07:00
_analyzer.py gh-105407: Remove unused imports in Tools/c-analyzer/ (#105410) 2023-06-06 21:08:48 +00:00
_builtin_types.py gh-94673: [c-analyzer] Add a Script to Identify Static Types (#94989) 2022-07-18 19:03:57 -06:00
_capi.py gh-102033: Fix syntax error in Tools/c-analyzer (GH-102066) 2023-03-22 07:59:32 -07:00
_files.py gh-90815: Add mimalloc memory allocator (#109914) 2023-10-30 15:43:11 +00:00
_parser.py gh-99108: Add HACL* Blake2 implementation to hashlib (GH-119316) 2024-08-13 21:42:19 +00:00
globals-to-fix.tsv gh-71587: Drop local reference cache to _strptime module in _datetime (gh-120224) 2024-06-12 10:46:39 -06:00
ignored.tsv GH-116017: Get rid of _COLD_EXITs (GH-120960) 2024-07-01 13:17:40 -07:00
known.tsv