First Libgcrypt 1.11 Beta available
Werner Koch
wk at gnupg.org
Wed May 22 16:30:20 CEST 2024
Hi!
I just uploaded a first beta of Libgcrypt 1.11
https://gnupg.org/ftp/gcrypt/snapshots/libgcrypt/libgcrypt-1.11.0-beta450.tar.bz2
https://gnupg.org/ftp/gcrypt/snapshots/libgcrypt/libgcrypt-1.11.0-beta450.tar.bz2.sig
THIS IS A BETA VERSION and reflects current Git master. Before the
final 1.11.0 release we may change some things just do not expect that
there are no API changes for the new stuff. In particular we hope to get
the final Kyber version in; right now we implement FIPS203.ipd dated
2023-08-24.
This version of Libgcrypt is required to build GnuPG master or a
forthcoming beta of gnupg 2.6.
Salam-Shalom,
Werner
Noteworthy changes in version 1.11.0 (unreleased) [C25/A5/R0]
-------------------------------------------------
* New and extended interfaces:
- Add an API for Key Encapsulation Mechanism (KEM). [T6755]
- Add Streamlined NTRU Prime sntrup761 algorithm. [rCcf9923e1a5]
- Add Kyber algorithm. [rC18e5c0d268]
- Add Classic McEliece algorithm. [rC003367b912]
- Add One-Step KDF with hash and MAC. [T5964]
- Add KDF algorithm HKDF of RFC-5869. [T5964]
- Add KDF algorithm X963KDF for use in CMS. [rC3abac420b3]
- Add GMAC-SM4 and Poly1305-SM4. [rCd1ccc409d4]
- Add ARIA block cipher algorithm. [rC316c6d7715]
- Add explicit FIPS indicators for MD and MAC algorithms. [T6376]
- Add support for SHAKE as MGF in RSA. [T6557]
- Add gcry_md_read support for SHAKE algorithms. [T6539]
- Add gcry_md_hash_buffers_ext function. [T7035]
- Add cSHAKE hash algorithm. [rC065b3f4e02]
- Support internal generation of IV for AEAD cipher mode. [T4873]
* Performance:
- Add SM3 ARMv8/AArch64/CE assembly implementation. [rCfe891ff4a3]
- Add SM4 ARMv8/AArch64 assembly implementation. [rCd8825601f1]
- Add SM4 GFNI/AVX2 and GFI/AVX512 implementation.
[rC5095d60af4,rCeaed633c16]
- Add SM4 ARMv9 SVE CE assembly implementation. [rC2dc2654006]
- Add PowerPC vector implementation of SM4. [rC0b2da804ee]
- Optimize ChaCha20 and Poly1305 for PPC P10 LE. [T6006]
- Add CTR32LE bulk acceleration for AES on PPC. [rC84f2e2d0b5]
- Add generic bulk acceleration for CTR32LE mode (GCM-SIV) for SM4
and Camellia. [rCcf956793af]
- Add GFNI/AVX2 implementation of Camellia. [rC4e6896eb9f]
- Add AVX2 and AVX512 accelerated implementations for GHASH (GCM)
and POLYVAL (GCM-SIV). [rCd857e85cb4, rCe6f3600193]
- Add AVX512 implementation for SHA512. [rC089223aa3b]
- Add AVX512 implementation for Serpent. [rCce95b6ec35]
- Add AVX512 implementation for Poly1305 and ChaCha20
[rCcd3ed49770, rC9a63cfd617]
- Add AVX512 accelerated implementation for SHA3 and Blake2
[rCbeaad75f46,rC909daa700e]
- Add VAES/AVX2 accelerated i386 implementation for AES.
[rC4a42a042bc]
- Add bulk processing for XTS mode of Camellia and SM4.
[rC32b18cdb87, rCaad3381e93]
- Accelerate XTS and ECB modes for Twofish and Serpent.
[rCd078a928f5,rC8a1fe5f78f]
- Add AArch64 crypto/SHA512 extension implementation for
SHA512. [rCe51d3b8330]
- Add AArch64 crypto-extension implementation for Camellia.
[rC898c857206]
- Accelerate OCB authentication on AMD with AVX2. [rC6b47e85d65]
* Bug fixes:
- For PowerPC check for missing optimization level for vector
register usage. [T5785]
- Fix EdDSA secret key check. [T6511]
- Fix decoding of PKCS#1-v1.5 and OAEP padding. [rC34c2042792]
- Allow use of PKCS#1-v1.5 with SHA3 algorithms. [T6976]
* Other:
- Allow empty password for Argon2 KDF. [rCa20700c55f]
- Various constant time operation imporvements.
- Add "bp256", "bp384", "bp512" aliases for Brainpool curves.
- Support for the random server has been removed. [T5811]
- The control code GCRYCTL_ENABLE_M_GUARD is deprecated and not
supported any more. Please use valgrind or other tools. [T5822]
- Logging is now done via the libgpg-error logging functions.
[rCab0bdc72c7]
Changes also found in 1.10.3:
* Bug fixes:
- Fix public key computation for other EdDSA curves.
[rC469919751d6e]
- Remove out of core handler diagnostic in FIPS mode. [T6515]
- Check that the digest size is not zero in gcry_pk_sign_md and
gcry_pk_verify_md. [T6539]
- Make store an s-exp with \0 is considered to be binary. [T6747]
- Various constant-time improvements.
* Portability:
- Use getrandom call only when supported by the platform. [T6442]
- Change the default for --with-libtool-modification to never.
[T6619]
Changes also found in 1.10.2
* Bug fixes:
- Fix Argon2 for the case output > 64. [rC13b5454d26]
- Fix missing HWF_PPC_ARCH_3_10 in HW feature. [rCe073f0ed44]
- Fix RSA key generation failure in forced FIPS mode. [T5919]
- Fix gcry_pk_hash_verify for explicit hash. [T6066]
- Fix a wrong result of gcry_mpi_invm. [T5970]
- Allow building with --disable-asm for HPPA. [T5976]
- Fix Jitter RNG for building native on Windows. [T5891]
- Allow building with -Oz. [T6432]
- Enable the fast path to ChaCha20 only when supported. [T6384]
- Use size_t to avoid counter overflow in Keccak when directly
feeding more than 4GiB. [T6217]
* Other:
- Do not use secure memory for a DRBG instance. [T5933]
- Do not allow PKCS#1.5 padding for encryption in FIPS mode.
[T5918]
- Fix the behaviour for child process re-seeding in the DRBG.
[rC019a40c990]
- Allow verification of small RSA signatures in FIPS mode. [T5975]
- Allow the use of a shorter salt for KDFs in FIPS mode. [T6039]
- Run digest+sign self tests for RSA and ECC in FIPS mode.
[rC06c9350165]
- Add function-name based FIPS indicator function.
GCRYCTL_FIPS_SERVICE_INDICATOR_FUNCTION. This is not considered
an ABI changes because the new FIPS features were not yet
approved. [rC822ee57f07]
- Improve PCT in FIPS mode. [rC285bf54b1a, rC4963c127ae, T6397]
- Use getrandom (GRND_RANDOM) in FIPS mode. [rCcf10c74bd9]
- Disable RSA-OAEP padding in FIPS mode. [rCe5bfda492a]
- Check minimum allowed key size in PBKDF in FIPS mode.
[T6039,T6219]
- Get maximum 32B of entropy at once in FIPS mode. [rCce0df08bba]
- Prefer gpgrt-config when available. [T5034]
- Mark AESWRAP as approved FIPS algorithm. [T5512]
- Prevent usage of long salt for PSS in FIPS mode. [rCfdd2a8b332]
- Prevent usage of X9.31 keygen in FIPS mode. [rC392e0ccd25]
- Remove GCM mode from the allowed FIPS indicators. [rC1540698389]
- Add explicit FIPS indicators for hash and MAC algorithms. [T6376]
Changes also found in 1.10.1:
* Bug fixes:
- Fix minor memory leaks in FIPS mode.
- Build fixes for MUSL libc. [rCffaef0be61]
* Other:
- More portable integrity check in FIPS mode. [rC9fa4c8946a,T5835]
- Add X9.62 OIDs to sha256 and sha512 modules. [rC52fd2305ba]
* Interface changes relative to the 1.10.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GCRY_CIPHER_ARIA128 NEW cipher algo.
GCRY_CIPHER_ARIA192 NEW cipher algo.
GCRY_CIPHER_ARIA256 NEW cipher algo.
gcry_cipher_geniv_methods NEW type.
gcry_cipher_setup_geniv NEW function.
gcry_cipher_geniv NEW function.
GCRY_PK_KEM NEW constant.
GCRY_MD_CSHAKE128 NEW hash algo.
GCRY_MD_CSHAKE256 NEW hash algo.
GCRYCTL_MD_CUSTOMIZE NEW control code.
gcry_cshake_customization NEW type.
GCRY_MAC_CMAC_ARIA NEW mac algo.
GCRY_MAC_GMAC_SM4 NEW mac algo.
GCRY_MAC_GMAC_ARIA NEW mac algo.
GCRY_MAC_POLY1305_SM4 NEW mac algo.
GCRY_MAC_POLY1305_ARIA NEW mac algo.
GCRY_KDF_ONESTEP_KDF NEW kdf algo.
GCRY_KDF_ONESTEP_KDF_MAC NEW kdf algo.
GCRY_KDF_X963_KDF NEW kdf algo.
gcry_kem_algos NEW type.
gcry_kem_keypair NEW function.
gcry_kem_encap NEW function.
gcry_kem_decap NEW function.
GCRY_KEM_SNTRUP761 NEW kem algo.
GCRY_KEM_CM6688128F NEW kem algo.
GCRY_KEM_MLKEM512 NEW kem algo.
GCRY_KEM_MLKEM768 NEW kem algo.
GCRY_KEM_MLKEM1024 NEW kem algo.
GCRY_KEM_RAW_X25519 NEW kem algo.
GCRY_KEM_RAW_X448 NEW kem algo.
GCRY_KEM_RAW_BP256 NEW kem algo.
GCRY_KEM_RAW_BP384 NEW kem algo.
GCRY_KEM_RAW_BP512 NEW kem algo.
GCRY_KEM_RAW_P256R1 NEW kem algo.
GCRY_KEM_RAW_P384R1 NEW kem algo.
GCRY_KEM_RAW_P521R1 NEW kem algo.
GCRY_KEM_DHKEM25519 NEW kem algo.
GCRY_KEM_DHKEM448 NEW kem algo.
GCRY_KEM_DHKEMP256R1 NEW kem algo.
GCRY_KEM_DHKEMP384R1 NEW kem algo.
GCRY_KEM_DHKEMP521R1 NEW kem algo.
GCRY_KEM_*_SECKEY_LEN NEW constants.
GCRY_KEM_*_PUBKEY_LEN NEW constants.
GCRY_KEM_*_ENCAPS_LEN NEW constants.
GCRY_KEM_*_CIPHER_LEN NEW constants.
GCRY_KEM_*_SHARED_LEN NEW constants.
gcry_md_hash_buffers_ext NEW function.
gcry_pk_input_data_push NEW macro.
GCRYCTL_ENABLE_M_GUARD DEPRECATED feature.
gcry_handler_log_t DEPRECATED type.
gcry_set_log_handler DEPRECATED function.
--
The pioneers of a warless world are the youth that
refuse military service. - A. Einstein
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openpgp-digital-signature.asc
Type: application/pgp-signature
Size: 247 bytes
Desc: not available
URL: <https://lists.gnupg.org/pipermail/gcrypt-devel/attachments/20240522/86c84077/attachment.sig>
More information about the Gcrypt-devel
mailing list