Skip to content

Releases: open-quantum-safe/liboqs-rust

oqs-sys version 0.9.1

23 Oct 11:40
oqs-sys-v0.9.1
c71cb42
Compare
Choose a tag to compare
oqs-sys-v0.9.1

oqs-sys version 0.9.1

oqs and oqs-sys 0.9.0

19 Oct 08:25
v0.9.0
6455ee6
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.7.2...v0.9.0

Version 0.8.0

13 Sep 12:25
Compare
Choose a tag to compare
v0.8.0

Initial oqs 0.8.0 support

Version 0.7.2

30 Aug 07:55
v0.7.2
48b0bdd
Compare
Choose a tag to compare

Breaking Changes

The following algorithms are insecure:

  • Remove SIKE and SIDH (RUSTSEC-2022-0045)
  • Remove Rainbow I algorithms (RUSTSEC-2022-0047)

See also the changelog for liboqs: https://github.com/open-quantum-safe/liboqs/releases/tag/0.7.2

Summary of changes in liboqs-rust

Full Changelog: v0.7.1...v0.7.2

What's Changed per PR

New Contributors

Full Changelog: v0.7.1...v0.7.2

v0.7.2-rc2

15 Aug 10:34
v0.7.2-rc2
c750f09
Compare
Choose a tag to compare
v0.7.2-rc2 Pre-release
Pre-release

Breaking changes

The following algorithms are insecure:

  • Remove SIKE and SIDH (RUSTSEC-2022-0045)
  • Remove Rainbow I algorithms (RUSTSEC-2022-0047)

See also the changelog for liboqs: https://github.com/open-quantum-safe/liboqs/releases/tag/0.7.2-rc2

What's Changed

Full Changelog: v0.7.1...v0.7.2-rc2

Release 0.7.1

17 Dec 16:44
v0.7.1
a38d8c4
Compare
Choose a tag to compare

Changes since liboqs-rs 0.7.0

  • NTRU level 5 algorithms
  • NTRUPrime level 5 algorithms
  • Be able to extract Algorithm from Sig/Kem
  • Invert no_std feature (breaking, sorry!)
  • Implement Display, Hash, Eq for Kem, Sig
  • Implement Display for Algorithm

Changes from liboqs

KEMs

  • Add NTRU level 5 parameter sets (ntruhps40961229, ntruhrss1373)
  • Add NTRU Prime level 5 parameter sets (ntrulpr1277, sntrup1277)
  • Add ARMv8 aarch64 optimized implementations of Kyber and SABER
  • Minor updates to Kyber, NTRU, NTRU Prime, and SIKE implementations

Digital signature schemes

  • Minor updates to Dilithium implementation

Other changes

  • Optimized AES implementation on ARMv8 with crypto extensions.
  • Preliminary support for building on S390x platform
  • Improved build configurations on ARM platforms
  • Improvements to benchmarking harness, with improved precision on ARM platforms

See also https://github.com/open-quantum-safe/liboqs/releases/tag/0.7.1

Commit History

Full Changelog: v0.7.0...v0.7.1

Version 0.7.0

12 Aug 09:20
v0.7.0
9844b79
Compare
Choose a tag to compare

Changes in liboqs-rust

  • Updates to liboqs 0.7.0 (see below)
  • New feature flags for each algorithm
    • Default features include kems and sigs which in turn include all algorithms.

liboqs changelog:

This release continues from the 0.6.0 release of liboqs.

Key encapsulation mechanisms

  • Update BIKE to Round 3 (version 3.2) -- add BIKE1, BIKE3, remove BIKE1-L1-CPA, BIKE1-L1-FO, BIKE1-L3-CPA, BIKE1-L3-FO
  • Update NTRU Prime implementation
  • Update SIKE implementation
  • Remove OQS_KEM_DEFAULT alias

Digital signature schemes

  • Remove OQS_SIG_DEFAULT alias

Other changes

  • Allow liboqs to build on other architectures, with preliminary builds on ppc64le and x86.
  • Support for building liboqs on Apple Silicon
  • New algorithm datasheets with more details on implementations.
  • Optimized SHA-256 implementation on ARMv8 with crypto extensions.

Version 0.6.0

08 Jun 16:41
v0.6.0
2e9a27a
Compare
Choose a tag to compare

Updates to oqs-rs

  • Expose random API
  • Add non_portable flag
  • Build portable by default, unlike liboqs default
  • to_owned now consumes self to follow to_* convention.

OQS Changelog

  • Update Classic McEliece implementation
  • Bug fixes in SIKE
  • Bug fixes in HQC
  • Fix in KEM api
  • Fix wrong NIST level for Kyber768-90s
  • Update SPHINCS+ to round 3
  • Improve random number generator when not relying on OpenSSL
  • Constant-time AES code

Version 0.5.0

11 Mar 13:40
v0.5.0
91d44d2
Compare
Choose a tag to compare

This corresponds to version 0.5.0 of liboqs.

oqs-rs changelog

  • Algorithm updates corresponding with liboqs
  • Fixed some algorithm names

liboqs-sys changelog

  • Updated bindings to liboqs 0.5.0

liboqs changelog

Copied from https://github.com/open-quantum-safe/liboqs/releases/tag/0.5.0

Release notes

This is version 0.5.0 of liboqs. It was released on March 10, 2021.

What's New

This release continues from the 0.4.0 release of liboqs. Its main goal is to incorporate updates submitted to Round 3 of the NIST Post-Quantum Cryptography Standardization Project.

Deprecations

As a result of NIST's announcement of Round 3 of the Post-Quantum Cryptography Standardization Project, the 0.4.x series was the last release of liboqs to contain algorithms from Round 2 that are not Round 3 finalists or alternate candidates. Those algorithms have been removed in the 0.5.0 series. The algorithms in question are: NewHope, ThreeBears, MQDSS, and qTesla.

Key encapsulation mechanisms

  • BIKE: No changes.
  • Classic McEliece: Added AVX2 implementation.
  • FrodoKEM: Incorporate upstream bug fixes and add runtime CPU feature detection for AVX2/AES-NI implementation.
  • HQC: Update to Round 3 version.
  • Kyber: Update to Round 3 version.
  • NTRU: Incorporate upstream bug fixes.
  • NTRUPrime: Add NTRUPrime.
  • Saber: Update to Round 3 version.
  • SIKE: Update to version 3.4.

Digital signature schemes

  • Dilithium: Update to version 3.1.
  • Falcon: Update to Round 3 version.
  • Picnic: Update to Picnic v3.0.4.
  • Rainbow: Update to Round 3 version.
  • SPHINCS+: Incorporate upstream bug fixes.

Other changes

  • Support for building liboqs with CPU extensions has been enhanced, and most implementations now have runtime CPU feature detection.
  • A tool for benchmarking memory usage has been added (test_kem_mem and test_sig_mem).
  • Valgrind is used to check for secret-dependent branch throughout the library. Note that not all implementations currently avoid secret-dependent branching; see tests/constant_time for details.

Version 0.3.0

25 Nov 13:04
v0.3.0
e8f96e1
Compare
Choose a tag to compare
  • no_std support
  • serde support
  • Update liboqs (includes e.g. HQC round 3 update)
  • Make API panic less (sorry, breaking changes)