mirror of
https://github.com/open-quantum-safe/liboqs.git
synced 2025-10-04 00:02:01 -04:00
* Initial derive keypair commit Signed-off-by: Eddy Kim <Eddy.M.Kim@outlook.com> Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Add pqcrystals-ml_kem_ipd.patch Signed-off-by: Eddy Kim <Eddy.M.Kim@outlook.com> Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Fix encaps key in scheme and revert whitespace changes Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Hopefully corrected patch file Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Corrected missing derand in kem_scheme Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Fix indentation Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Run copy_from_upstream Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> derand testing tentative changes Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Add missing function declarations Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Add template for avx2 derand functions Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Run copy_from_upstream Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> WIP: Add changes for coin length Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Update patch to include coin lengths Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Bootstrap Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Conditional copy Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Run copy_from_upstream Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Separate coins variable into two distinct variables Signed-off-by: Eddy Kim <Eddy.M.Kim@outlook.com> Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Add derand fixes - Add support for BIKE, FrodoKEM, sntrup - Add hooks for testing - Add missing kem comment to documentation - Don't run decaps() in test_kem_derand if encaps_derand() fails - Add markdown documentation changes Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> WIP trying to fix build errors Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Fix remaining build issues Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Resolve unused parameter issues for BIKE Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Resolve unused paramter issues for FrodoKEM Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Fix whitespace inconsistency Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Fix whitepace issue Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Insert unused attributes Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Void all unused parameters Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Use tab instead of spaces in kem_scheme Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Run copy_from_upstream Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Fix kem_derand python tests Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Initialize coins in test_kem_derand Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Update patch to work with mlkem-native Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Update docs generation and templating Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Run copy_from_upstream [full tests] [extended tests] Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Don't call randombytes on zero-length arrays Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Run format script Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Remove encaps_derand support Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Run copy_from_upstream Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Skip encaps/decaps in test_kem_derand Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Refactor test code Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * s/coins/seed/g Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Improve output Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> * Improve formatting [full tests] [extended tests] Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> --------- Signed-off-by: Eddy Kim <e84kim@uwaterloo.ca> Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca> Co-authored-by: Eddy Kim <Eddy.M.Kim@outlook.com>
196 lines
5.4 KiB
YAML
196 lines
5.4 KiB
YAML
name: ML-KEM
|
|
type: kem
|
|
principal-submitters:
|
|
- Peter Schwabe
|
|
auxiliary-submitters:
|
|
- Roberto Avanzi
|
|
- Joppe Bos
|
|
- Léo Ducas
|
|
- Eike Kiltz
|
|
- Tancrède Lepoint
|
|
- Vadim Lyubashevsky
|
|
- John M. Schanck
|
|
- Gregor Seiler
|
|
- Damien Stehlé
|
|
crypto-assumption: Module LWE+R with base ring Z[x]/(3329, x^256+1)
|
|
website: https://pq-crystals.org/kyber/ and https://csrc.nist.gov/pubs/fips/203
|
|
nist-round: FIPS203
|
|
spec-version: ML-KEM
|
|
primary-upstream:
|
|
source: https://github.com/pq-code-package/mlkem-native/commit/09bb1790bf9d38e1714f39af789306f28cdd395d
|
|
with copy_from_upstream patches
|
|
spdx-license-identifier: CC0-1.0 or Apache-2.0
|
|
optimized-upstreams:
|
|
cupqc-cuda:
|
|
source: https://github.com/praveksharma/cupqc-mlkem/commit/b026f4e5475cd9c20c2082c7d9bad80e5b0ba89e
|
|
spdx-license-identifier: Apache-2.0
|
|
parameter-sets:
|
|
- name: ML-KEM-512
|
|
claimed-nist-level: 1
|
|
claimed-security: IND-CCA2
|
|
length-public-key: 800
|
|
length-ciphertext: 768
|
|
length-secret-key: 1632
|
|
length-shared-secret: 32
|
|
length-keypair-seed: 64
|
|
implementations-switch-on-runtime-cpu-features: true
|
|
implementations:
|
|
- upstream: primary-upstream
|
|
upstream-id: ref
|
|
supported-platforms: all
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: true
|
|
large-stack-usage: false
|
|
- upstream: primary-upstream
|
|
upstream-id: x86_64
|
|
supported-platforms:
|
|
- architecture: x86_64
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
required_flags:
|
|
- avx2
|
|
- bmi2
|
|
- popcnt
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: true
|
|
large-stack-usage: false
|
|
- upstream: primary-upstream
|
|
upstream-id: aarch64
|
|
supported-platforms:
|
|
- architecture: ARM64_V8
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: false
|
|
large-stack-usage: false
|
|
- upstream: cupqc-cuda
|
|
upstream-id: cuda
|
|
supported-platforms:
|
|
- architecture: CUDA
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
no-secret-dependent-branching-claimed: false
|
|
no-secret-dependent-branching-checked-by-valgrind: false
|
|
large-stack-usage: false
|
|
- name: ML-KEM-768
|
|
claimed-nist-level: 3
|
|
claimed-security: IND-CCA2
|
|
length-public-key: 1184
|
|
length-ciphertext: 1088
|
|
length-secret-key: 2400
|
|
length-shared-secret: 32
|
|
length-keypair-seed: 64
|
|
implementations-switch-on-runtime-cpu-features: true
|
|
implementations:
|
|
- upstream: primary-upstream
|
|
upstream-id: ref
|
|
supported-platforms: all
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: true
|
|
large-stack-usage: false
|
|
- upstream: primary-upstream
|
|
upstream-id: x86_64
|
|
supported-platforms:
|
|
- architecture: x86_64
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
required_flags:
|
|
- avx2
|
|
- bmi2
|
|
- popcnt
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: true
|
|
large-stack-usage: false
|
|
- upstream: primary-upstream
|
|
upstream-id: aarch64
|
|
supported-platforms:
|
|
- architecture: ARM64_V8
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: false
|
|
large-stack-usage: false
|
|
- upstream: cupqc-cuda
|
|
upstream-id: cuda
|
|
supported-platforms:
|
|
- architecture: CUDA
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
no-secret-dependent-branching-claimed: false
|
|
no-secret-dependent-branching-checked-by-valgrind: false
|
|
large-stack-usage: false
|
|
- name: ML-KEM-1024
|
|
claimed-nist-level: 5
|
|
claimed-security: IND-CCA2
|
|
length-public-key: 1568
|
|
length-ciphertext: 1568
|
|
length-secret-key: 3168
|
|
length-shared-secret: 32
|
|
length-keypair-seed: 64
|
|
implementations-switch-on-runtime-cpu-features: true
|
|
implementations:
|
|
- upstream: primary-upstream
|
|
upstream-id: ref
|
|
supported-platforms: all
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: true
|
|
large-stack-usage: false
|
|
- upstream: primary-upstream
|
|
upstream-id: x86_64
|
|
supported-platforms:
|
|
- architecture: x86_64
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
required_flags:
|
|
- avx2
|
|
- bmi2
|
|
- popcnt
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: true
|
|
large-stack-usage: false
|
|
- upstream: primary-upstream
|
|
upstream-id: aarch64
|
|
supported-platforms:
|
|
- architecture: ARM64_V8
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
common-crypto:
|
|
- SHA3: liboqs
|
|
no-secret-dependent-branching-claimed: true
|
|
no-secret-dependent-branching-checked-by-valgrind: false
|
|
large-stack-usage: false
|
|
- upstream: cupqc-cuda
|
|
upstream-id: cuda
|
|
supported-platforms:
|
|
- architecture: CUDA
|
|
operating_systems:
|
|
- Linux
|
|
- Darwin
|
|
no-secret-dependent-branching-claimed: false
|
|
no-secret-dependent-branching-checked-by-valgrind: false
|
|
large-stack-usage: false
|