Skip to content

v0.5.0

Compare
Choose a tag to compare
@baentsch baentsch released this 09 Jun 05:12
· 186 commits to main since this release
8c746d7

This release continues from the 0.4.0 release of oqs-provider and is fully tested to be used in conjunction with the main branch of liboqs. This release is guaranteed to be in sync with v0.8.0 of liboqs.

oqs-provider now also enables use of QSC algorithms during TLS1.3 handshake. The required OpenSSL code updates are contained in openssl/openssl#19312.

Algorithm updates

All algorithms no longer supported in the NIST PQC competition and not under consideration for standardization by ISO have been removed. All remaining algorithms with the exception of McEliece have been lifted to their final round 3 variants as documented in liboqs. Most notably, algorithm names for Sphincs+ have been changed to the naming chosen by its authors.

Functional updates

  • Enablement of oqs-provider as a (first) dynamically fetchable OpenSSL3 TLS1.3 signature provider.
  • MacOS support
  • Full support for CA functionality
  • Algorithms can now be selected by their respective bit strength using the property string "oqsprovider.security_bits"
  • Documentation of (O)IDs used by the different PQC algorithms used and supported in current and past releases of oqs-openssl and oqs-provider
  • Testing is now completely independent of a source code distribution of OpenSSL being available
  • oqsprovider can be built and installed making use of pre-existing installations of OpenSSL and liboqs. Details are found in the "scripts" directory's build and test scripts.
  • Automated creation of (Debian) packaging information
  • Graceful handling (by way of functional degradation) of the feature sets contained in different OpenSSL releases; all oqsprovider capabilities are only available when using a version > than OpenSSL3.1.
  • A bug regarding handling of hybrid algorithms has been fixed as well as some memory leaks.

Misc updates

  • Dynamic code point and OID changes via environment variables. See ALGORITHMS.md.
  • Dynamic key encoding changes via environment variable using external qsc_key_encoder library. See ALGORITHMS.md.

Full Changelog: 0.4.0...0.5.0.