| name: SPHINCS+ |
| type: signature |
| principal-submitters: |
| - Andreas Hülsing |
| auxiliary-submitters: |
| - Jean-Philippe Aumasson |
| - Daniel J. Bernstein, |
| - Ward Beullens |
| - Christoph Dobraunig |
| - Maria Eichlseder |
| - Scott Fluhrer |
| - Stefan-Lukas Gazdag |
| - Panos Kampanakis |
| - Stefan Kölbl |
| - Tanja Lange |
| - Martin M. Lauridsen |
| - Florian Mendel |
| - Ruben Niederhagen |
| - Christian Rechberger |
| - Joost Rijneveld |
| - Peter Schwabe |
| - Bas Westerbaan |
| crypto-assumption: hash-based signatures |
| website: https://sphincs.org/ |
| nist-round: 3 |
| spec-version: NIST Round 3 submission, v3.1 (June 10, 2022) |
| spdx-license-identifier: CC0-1.0 |
| primary-upstream: |
| source: https://github.com/PQClean/PQClean/commit/8e221ae797b229858a0b0d784577a8cb149d5789 |
| with copy_from_upstream patches |
| spdx-license-identifier: CC0-1.0 |
| upstream-ancestors: |
| - https://github.com/sphincs/sphincsplus |
| advisories: |
| - This algorithm is not tested under Windows. |
| parameter-sets: |
| - name: SPHINCS+-SHA2-128f-simple |
| claimed-nist-level: 1 |
| claimed-security: EUF-CMA |
| length-public-key: 32 |
| length-secret-key: 64 |
| length-signature: 17088 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHA2-128s-simple |
| claimed-nist-level: 1 |
| claimed-security: EUF-CMA |
| length-public-key: 32 |
| length-secret-key: 64 |
| length-signature: 7856 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHA2-192f-simple |
| claimed-nist-level: 3 |
| claimed-security: EUF-CMA |
| length-public-key: 48 |
| length-secret-key: 96 |
| length-signature: 35664 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHA2-192s-simple |
| claimed-nist-level: 3 |
| claimed-security: EUF-CMA |
| length-public-key: 48 |
| length-secret-key: 96 |
| length-signature: 16224 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHA2-256f-simple |
| claimed-nist-level: 5 |
| claimed-security: EUF-CMA |
| length-public-key: 64 |
| length-secret-key: 128 |
| length-signature: 49856 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHA2-256s-simple |
| claimed-nist-level: 5 |
| claimed-security: EUF-CMA |
| length-public-key: 64 |
| length-secret-key: 128 |
| length-signature: 29792 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA2: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHAKE-128f-simple |
| claimed-nist-level: 1 |
| claimed-security: EUF-CMA |
| length-public-key: 32 |
| length-secret-key: 64 |
| length-signature: 17088 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHAKE-128s-simple |
| claimed-nist-level: 1 |
| claimed-security: EUF-CMA |
| length-public-key: 32 |
| length-secret-key: 64 |
| length-signature: 7856 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHAKE-192f-simple |
| claimed-nist-level: 3 |
| claimed-security: EUF-CMA |
| length-public-key: 48 |
| length-secret-key: 96 |
| length-signature: 35664 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHAKE-192s-simple |
| claimed-nist-level: 3 |
| claimed-security: EUF-CMA |
| length-public-key: 48 |
| length-secret-key: 96 |
| length-signature: 16224 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHAKE-256f-simple |
| claimed-nist-level: 5 |
| claimed-security: EUF-CMA |
| length-public-key: 64 |
| length-secret-key: 128 |
| length-signature: 49856 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |
| - name: SPHINCS+-SHAKE-256s-simple |
| claimed-nist-level: 5 |
| claimed-security: EUF-CMA |
| length-public-key: 64 |
| length-secret-key: 128 |
| length-signature: 29792 |
| implementations-switch-on-runtime-cpu-features: true |
| implementations: |
| - upstream: primary-upstream |
| upstream-id: clean |
| supported-platforms: all |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: false |
| no-secret-dependent-branching-checked-by-valgrind: false |
| large-stack-usage: false |
| - upstream: primary-upstream |
| upstream-id: avx2 |
| supported-platforms: |
| - architecture: x86_64 |
| required_flags: |
| - avx2 |
| operating_systems: |
| - Linux |
| - Darwin |
| common-crypto: |
| - SHA3: liboqs |
| no-secret-dependent-branching-claimed: true |
| no-secret-dependent-branching-checked-by-valgrind: true |
| large-stack-usage: false |