]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-99108: Implement HACL* HMAC (#130157)
authorBénédikt Tran <10796600+picnixz@users.noreply.github.com>
Fri, 4 Apr 2025 17:04:00 +0000 (19:04 +0200)
committerGitHub <noreply@github.com>
Fri, 4 Apr 2025 17:04:00 +0000 (19:04 +0200)
commit0a97427ee5287e3e6d1d3393a03480ab83abfe90
tree2cabc96ef1cd7d6168ce15f06ade1d8d0636d473
parent7099c75550c55050ac160cfe3519d49f2ef0c675
gh-99108: Implement HACL* HMAC (#130157)

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.
29 files changed:
Doc/whatsnew/3.14.rst
Lib/hmac.py
Lib/test/support/hashlib_helper.py
Lib/test/test_hmac.py
Makefile.pre.in
Misc/NEWS.d/next/Core_and_Builtins/2025-02-15-14-36-32.gh-issue-99108.u6CfmK.rst [new file with mode: 0644]
Misc/sbom.spdx.json
Modules/Setup
Modules/Setup.stdlib.in
Modules/_hacl/Hacl_HMAC.c [new file with mode: 0644]
Modules/_hacl/Hacl_HMAC.h [new file with mode: 0644]
Modules/_hacl/Hacl_Streaming_HMAC.c [new file with mode: 0644]
Modules/_hacl/Hacl_Streaming_HMAC.h [new file with mode: 0644]
Modules/_hacl/README.md
Modules/_hacl/internal/Hacl_HMAC.h [new file with mode: 0644]
Modules/_hacl/internal/Hacl_Streaming_HMAC.h [new file with mode: 0644]
Modules/_hacl/libintvector-shim.h [new file with mode: 0644]
Modules/_hacl/python_hacl_namespaces.h
Modules/_hacl/refresh.sh
Modules/clinic/hmacmodule.c.h [new file with mode: 0644]
Modules/hmacmodule.c [new file with mode: 0644]
PC/config.c
PCbuild/pythoncore.vcxproj
PCbuild/pythoncore.vcxproj.filters
Python/stdlib_module_names.h
Tools/c-analyzer/cpython/_parser.py
Tools/c-analyzer/cpython/ignored.tsv
configure
configure.ac