Skip to content

Crypto++ 8.6 release

Choose a tag to compare
@noloader noloader released this 24 Sep 16:06
· 250 commits to master since this release

Crypto++ 8.6 was released on September 24, 2021. The 8.6 release was a minor, unplanned release. There was one CVE and no memory errors.

This release clears CVE-2021-40530 and fixes a problem with ChaCha20 AVX2 implementation. The CVE was due to ElGamal encryption using a work estimate to size encryption exponents instead subgroup order. The ChaCha20 issue was due to mishandling a carry in the AVX2 code path. The ChaCha20 issue was difficult to duplicate, so most users should not experience it.

Release Notes

  • fix ElGamal encryption (GH #1059, CVE-2021-40530)
  • fix ChaCha20 AVX2 implementation (GH #1069)
  • add octal and decimal literal prefix parsing to Integer (Commit e154280)
  • add missing overload in ed25519Signer and ed25519Verifier (Commits fae9943, 08f3fc5)
  • make SHA-NI independent of AVX and AVX2 (GH #1045)
  • fix OldRandomPool GenerateWord32 (Commit fabd88e)
  • use CPPFLAGS during feature testing (Commit 7e0f678)
  • fix compile on CentOS 5 (Commits b51383c, ef3a9e8)
  • fix compile on FreeBSD (Commit 2619dbe)
  • fix feature testing on ARM A-32 and Aarch64 (Commit 203a47a)
  • enable inline ASM for CRC and PMULL on Apple M1
  • fix Intel oneAPI compile (PR #1027)
  • rename test files with *.cpp extension (GH #1024)
  • fix GCC compile error due to missing _mm256_set_m128i (Commit 2cfa8a6)
  • add LSH-256 and LSH-512 hash functions (GH #1025, PR #1026)
  • add ECIES_P1363 for backwards compatibility (Commit 8e02d0d)
  • fix AdditiveCipherTemplate ProcessData (GH #1010)
  • remove CRYPTOPP_NO_CXX11 define (Commit 6911928)
  • add -fno-common for Darwin builds (Commit a70662d)
  • update documentation

FIPS DLL deprecation

The FIPS DLL used to be an important artifact for Windows builds. NIST moved the Crypto++ library to the Historical Validation List in 2014. The Windows DLL is no longer validated.

The project files to build the FIPS DLL are cryptdll.vcxproj and dlltest.vcxproj. The projects are now deprecated and subject to removal.