Path to this page:
Subject: CVS commit: pkgsrc/security/botan3
From: Thomas Klausner
Date: 2023-10-19 17:17:21
Message id: 20231019151721.1FB7BFADC@cvs.NetBSD.org
Log Message:
botan3: update to 3.2.0.
Version 3.2.0, 2023-10-09
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* Add support for (experimental!) post-quantum secure key exchange
in TLS 1.3 (GH #3609 #3732 #3733 #3739)
* Add support for TLS PSK (GH #3618)
* Add a first class interface for XOFs (GH #3671 #3672 #3701)
* Add KMAC from NIST SP 800-185 (GH #3689)
* Add cSHAKE XOF; currently this is not exposed to library users but
is only for deriving further cSHAKE derived functions. (GH #3671)
* Add improved APIs for key encapsulation (GH #3611 #3652 #3653)
* As Kyber's 90s mode is not included in the NIST draft specification,
and most implementations only support the SHAKE based mechanism,
the Kyber 90s mode is now deprecated. (GH #3695)
* Previously ``KyberMode`` enums had elements like ``Kyber512`` to identify the
scheme. These have changed to have ``_R3`` suffixes (like ``Kyber512_R3``) to
clearly indicate these are not the final version but is instead the version
from round3 of the PQC competition. The old names continue on as (deprecated)
aliases. (GH #3695)
* Fix bugs in various signature algorithms where if a signature
operation was used after the key object had been deleted, a use
after free would occur. (GH #3702)
* The types defined in pubkey.h can now be moved (GH #3655)
* Add the Russian block cipher Kuznyechik (GH #3680 #3724)
* The ``TLS::Group_Params`` enum is now a class which emulates the
behavior of the enumeration. (GH #3729)
* Implement serialization for the Certificate Authority TLS extension
(GH #3687)
* Refactored the internal buffering logic of most hash functions
(GH #3705 #3693 #3736)
* Add OS support for naming threads; now Botan thread pool threads
are identified by name. (GH #3628 #3738)
* Updated the TLS documentation to reflect TLS 1.3 support and
the removal of TLS 1.0 and 1.1. (GH #3708)
* Upon deserialization, the ``EC_Group`` type now tracks the encoding
which was used to create it. This is necessary to implement policies
which prohibit use of explicit curve encodings (which are in any case
deprecated). (GH #3665)
* If compiling against an old glibc which does not support the ``getrandom``
call, now the raw syscall is used instead. (GH #3688 #3685)
* On MinGW the global thread pool is disabled by default (GH #3726 #2582)
* Various internal functions now use ``std::span`` instead of raw pointers
plus length field. NOTE: any implementations of ``BlockCipher``, ``HashFunction``
etc that live outside the library will have to be updated. This is not covered
by the SemVer guarantee; see ``doc/sem_ver.rst`` (GH #3684 #3681 #3713 #3714
#3698 #3696)
* Add helper for buffer alignment, and adopt it within the hash function
implementations. (GH #3693)
* Added support for encoding CRL Distribution Points extension in new
certificates (GH #3712)
* Internal refactoring of SHA-3 to support further SHA-3 derived functionality
(GH #3673)
* Add support for testing using TLS-Anvil (GH #3651) and fix a few cases
where the TLS implementation sent the incorrect alert type in various
error cases which were discovered using TLS-Anvil (GH #3676)
* Add initial (currently somewhat experimental) support for using the ninja
build system as an alternative to make. (GH #3677)
* Remove an unused variable in BLAKE2b (GH #3624)
* Fix a number of clang-tidy warnings in the headers (GH #3646)
* Add checks for invalid length AD in Argon2 (GH #3626)
* CI now uses Android NDK 26, and earlier NDKs are not supported
due to limitations of the C++ library in earlier NDKs (GH #3718)
* Improve support for IBM's XLC compiler (GH #3730)
* Avoid compilation failures when using ``-Werror`` mode with GCC 12
due to spurious warnings in that version. (GH #3711 #3709)
Files: