From 6516da6651dbeb92157592e45b5ace803433f362 Mon Sep 17 00:00:00 2001 From: Douglas Stebila Date: Thu, 14 May 2020 17:38:28 -0400 Subject: [PATCH] liboqs 0.3.0 release candidate 1 --- CMakeLists.txt | 2 +- CONTRIBUTORS | 3 +++ RELEASE.md | 29 +++++++++++++++++------------ 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9090bf939..43182df5d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,7 @@ set(CMAKE_C_STANDARD 11) set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_POSITION_INDEPENDENT_CODE ON) set(CMAKE_C_VISIBILITY_PRESET hidden) -set(OQS_VERSION_TEXT "0.2.1-dev") +set(OQS_VERSION_TEXT "0.3.0-rc1") set(OQS_COMPILE_BUILD_TARGET "${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_HOST_SYSTEM}") set(CMAKE_EXPORT_COMPILE_COMMANDS ON) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 0efca5294..501adb89b 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -5,9 +5,11 @@ Eric Crockett (Amazon Web Services) Nir Drucker (Amazon Web Services) Ben Davies (University of Waterloo) Javad Doliskani (University of Waterloo) +Nicholas Fulton (Arizona State University) Vlad Gheorghiu (evolutionQ, University of Waterloo) Shay Gueron (Amazon Web Services) Torben Hansen (Royal Holloway University of London) +Kevin Kane (Microsoft Research) Nikita Karpey (https://github.com/gadoofou87) Tancrède Lepoint (SRI International) Shravan Mishra (University of Waterloo) @@ -19,3 +21,4 @@ Douglas Stebila (University of Waterloo) Goutam Tamvada (University of Waterloo) John Underhill Sebastian Verschoor (University of Waterloo) +Thom Wiggers (Radboud University) diff --git a/RELEASE.md b/RELEASE.md index f69a15183..c64fc10dd 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,4 +1,4 @@ -liboqs version 0.2.1-dev +liboqs version 0.3.0-rc1 ======================== About @@ -10,7 +10,6 @@ The **Open Quantum Safe (OQS) project** has the goal of developing and prototypi liboqs can be used with the following Open Quantum Safe application integrations: -- **OpenSSL 1.0.2**: A prototype integration of liboqs-based authentication and key exchange into TLS 1.2 in our fork of OpenSSL 1.0.2; see the [OQS-OpenSSL-1\_0\_2-stable](https://github.com/open-quantum-safe/openssl/tree/OQS-OpenSSL_1_0_2-stable) branch of our OpenSSL fork's repository. - **OpenSSL 1.1.1**: A prototype integration of liboqs-based authentication and key exchange into TLS 1.3 in our fork of OpenSSL 1.1.1; see the [OQS-OpenSSL-1\_1\_1-stable](https://github.com/open-quantum-safe/openssl/tree/OQS-OpenSSL_1_1_1-stable) branch of our OpenSSL fork's repository. - **OpenSSH 7.9 portable 1**: A prototype integration of liboqs-based authentication and key exchange into SSH in our fork of OpenSSH 7.9; see the [OQS-master](https://github.com/open-quantum-safe/openssh-portable/tree/OQS-master) branch of our OpenSSH fork's repository. @@ -24,7 +23,7 @@ liboqs can also be used in the following programming languages via language-spec Release notes ============= -This release of liboqs was released on TODO. Its release page on GitHub is https://github.com/open-quantum-safe/liboqs/releases/tag/0.2.1. +This is release candidate 1 for version 0.3.0 of liboqs. This release candidate was released on May 14, 2020. Its release page on GitHub is https://github.com/open-quantum-safe/liboqs/releases/tag/0.3.0-rc1. What's New ---------- @@ -33,18 +32,24 @@ This release continues from the 0.2.0 release of liboqs. ### Key encapsulation mechanisms -- Update BIKE to Round 2 submission; removes `BIKE2-*`, `BIKE3-*`, `BIKE1-L5`, renames `BIKE1-L1` and `BIKE1-L3` to `BIKE1-L1-CPA` and `BIKE1-L3-CPA`, and adds `BIKE1-L1-FO` and `BIKE-L3-FO` -- Add Kyber "90s variants": `Kyber512-90s`, `Kyber768-90s`, `Kyber1024-90s` +- BIKE: Update to Round 2 submission; removes `BIKE2-*`, `BIKE3-*`, `BIKE1-L5`, renames `BIKE1-L1` and `BIKE1-L3` to `BIKE1-L1-CPA` and `BIKE1-L3-CPA`, and adds `BIKE1-L1-FO` and `BIKE-L3-FO` +- Classic McEliece: Newly added +- Kyber: Add "90s variants": `Kyber512-90s`, `Kyber768-90s`, `Kyber1024-90s` +- LEDAcrypt: Newly added +- ThreeBears: Newly added ### Digital signature schemes -- TBA +- Falcon: Newly added +- MQDSS: Update to v2.1 +- Picnic: Update to v2.2 +- qTesla: Update to v1.0 +- Rainbow: Newly added +- SPHINCS+: Add AVX2 and AESNI implementations ### Other changes -- TBA - -Future work ------------ - -Releases of liboqs master branch will be made every 2 to 3 months. Details about the algorithm lifecycle of master branch can be found at https://github.com/open-quantum-safe/liboqs/wiki/Contributing-Guide. Plans for the next release can be found online at https://github.com/open-quantum-safe/liboqs/projects/11 +- Switch build system to CMake +- Add support for building via Mingw on Windows +- Support cross compilation via CMake to Raspberry Pi, Android, Windows, and more +- Most optimizations dependent on specific CPU features are automatically detected at runtime, rather than being selected at compile-time