mirror of
https://github.com/open-quantum-safe/liboqs.git
synced 2025-10-03 00:02:36 -04:00
fixed invalid markdown anchors
Signed-off-by: Ganyu (Bruce) Xu <g66xu@uwaterloo.ca>
This commit is contained in:
parent
2c15d82893
commit
57308e3d60
55
README.md
55
README.md
@ -13,6 +13,7 @@ liboqs is an open source C library for quantum-safe cryptographic algorithms.
|
||||
- [Supported Algorithms](#supported-algorithms)
|
||||
- [Key encapsulation mechanisms](#key-encapsulation-mechanisms)
|
||||
- [Signature schemes](#signature-schemes)
|
||||
- [Stateful signature schemes](#stateful-signature-schemes)
|
||||
- [Limitations and Security](#limitations-and-security)
|
||||
- [Platform limitations](#platform-limitations)
|
||||
- [Support limitations](#support-limitations)
|
||||
@ -54,35 +55,35 @@ Falcon and SPHINCS+ have also been [selected for standardization](https://csrc.n
|
||||
All names other than `ML-KEM` and `ML-DSA` are subject to change. `liboqs` makes available a [selection mechanism for algorithms on the NIST standards track, continued NIST competition, or purely experimental nature by way of the configuration variable OQS_ALGS_ENABLED](CONFIGURE.md#oQS_ALGS_ENABLED). By default `liboqs` is built supporting all, incl. experimental, PQ algorithms listed below.
|
||||
|
||||
<!-- OQS_TEMPLATE_FRAGMENT_ALG_SUPPORT_START -->
|
||||
### KEMs
|
||||
| Algorithm family | Standardization status | Primary implementation |
|
||||
|:--------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [NTRU-Prime](./docs/algorithms/kem/ntruprime.md) | [Not selected](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/NTRU-Prime-Round3.zip) | [`PQClean/PQClean@4c9e5a3`](https://github.com/PQClean/PQClean/commit/4c9e5a3aa715cc8d1d0e377e4e6e682ebd7602d6) |
|
||||
| [HQC](./docs/algorithms/kem/hqc.md) | [Selected by NIST](https://pqc-hqc.org/doc/hqc_specifications_2025_08_22.pdf) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
| [FrodoKEM](./docs/algorithms/kem/frodokem.md) | [Not selected](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/FrodoKEM-Round3.zip) | [`microsoft/PQCrypto-LWEKE@b6609d3`](https://github.com/microsoft/PQCrypto-LWEKE/commit/b6609d30a9982318d7f2937aa3c7b92147b917a2) |
|
||||
| [BIKE](./docs/algorithms/kem/bike.md) | [Not selected](https://csrc.nist.gov/csrc/media/Projects/post-quantum-cryptography/documents/round-4/submissions/BIKE-Round4.zip) | [`awslabs/bike-kem`](https://github.com/awslabs/bike-kem) |
|
||||
| [NTRU](./docs/algorithms/kem/ntru.md) | [Not selected](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/NTRU-Round3.zip) | [`PQClean/PQClean@4c9e5a3`](https://github.com/PQClean/PQClean/commit/4c9e5a3aa715cc8d1d0e377e4e6e682ebd7602d6) |
|
||||
| [ML-KEM](./docs/algorithms/kem/ml_kem.md) | [Standardized by NIST](https://csrc.nist.gov/pubs/fips/203/final) | [`pq-code-package/mlkem-native@048fc2a`](https://github.com/pq-code-package/mlkem-native/commit/048fc2a7a7b4ba0ad4c989c1ac82491aa94d5bfa) |
|
||||
| [Classic McEliece](./docs/algorithms/kem/classic_mceliece.md) | [Under ISO consideration](https://classic.mceliece.org/mceliece-spec-20221023.pdf) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
| [Kyber](./docs/algorithms/kem/kyber.md) | [Selected by NIST](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/Kyber-Round3.zip) | [`pq-crystals/kyber@441c051`](https://github.com/pq-crystals/kyber/commit/441c0519a07e8b86c8d079954a6b10bd31d29efc) |
|
||||
#### Key encapsulation mechanisms
|
||||
| Algorithm family | Standardization status | Primary implementation |
|
||||
|:------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [NTRU-Prime](docs/algorithms/kem/ntruprime.md) | [Not selected](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/NTRU-Prime-Round3.zip) | [`PQClean/PQClean@4c9e5a3`](https://github.com/PQClean/PQClean/commit/4c9e5a3aa715cc8d1d0e377e4e6e682ebd7602d6) |
|
||||
| [HQC](docs/algorithms/kem/hqc.md) | [Selected by NIST](https://pqc-hqc.org/doc/hqc_specifications_2025_08_22.pdf) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
| [FrodoKEM](docs/algorithms/kem/frodokem.md) | [Not selected](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/FrodoKEM-Round3.zip) | [`microsoft/PQCrypto-LWEKE@b6609d3`](https://github.com/microsoft/PQCrypto-LWEKE/commit/b6609d30a9982318d7f2937aa3c7b92147b917a2) |
|
||||
| [BIKE](docs/algorithms/kem/bike.md) | [Not selected](https://csrc.nist.gov/csrc/media/Projects/post-quantum-cryptography/documents/round-4/submissions/BIKE-Round4.zip) | [`awslabs/bike-kem`](https://github.com/awslabs/bike-kem) |
|
||||
| [NTRU](docs/algorithms/kem/ntru.md) | [Not selected](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/NTRU-Round3.zip) | [`PQClean/PQClean@4c9e5a3`](https://github.com/PQClean/PQClean/commit/4c9e5a3aa715cc8d1d0e377e4e6e682ebd7602d6) |
|
||||
| [ML-KEM](docs/algorithms/kem/ml_kem.md) | [Standardized by NIST](https://csrc.nist.gov/pubs/fips/203/final) | [`pq-code-package/mlkem-native@048fc2a`](https://github.com/pq-code-package/mlkem-native/commit/048fc2a7a7b4ba0ad4c989c1ac82491aa94d5bfa) |
|
||||
| [Classic McEliece](docs/algorithms/kem/classic_mceliece.md) | [Under ISO consideration](https://classic.mceliece.org/mceliece-spec-20221023.pdf) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
| [Kyber](docs/algorithms/kem/kyber.md) | [Selected by NIST](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/Kyber-Round3.zip) | [`pq-crystals/kyber@441c051`](https://github.com/pq-crystals/kyber/commit/441c0519a07e8b86c8d079954a6b10bd31d29efc) |
|
||||
|
||||
### Digital signatures
|
||||
| Algorithm family | Standardization status | Primary implementation |
|
||||
|:---------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [Falcon](./docs/algorithms/sig/falcon.md) | [Selected by NIST](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/Falcon-Round3.zip) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
| [SLH-DSA](./docs/algorithms/sig/slh_dsa.md) | [Standardized by NIST](https://csrc.nist.gov/pubs/fips/205/final) | [`pq-code-package/slhdsa-c@a0fc1ff`](https://github.com/pq-code-package/slhdsa-c/commit/a0fc1ff253930060d0246aebca06c2538eb92b88) |
|
||||
| [UOV](./docs/algorithms/sig/uov.md) | [Under NIST consideration](https://csrc.nist.gov/csrc/media/Projects/pqc-dig-sig/documents/round-2/spec-files/uov-spec-round2-web.pdf) | [`pqov/pqov@7e0832b`](https://github.com/pqov/pqov/commit/7e0832b6732a476119742c4acabd11b7c767aefb) |
|
||||
| [MAYO](./docs/algorithms/sig/mayo.md) | [Under NIST consideration](https://csrc.nist.gov/csrc/media/Projects/pqc-dig-sig/documents/round-2/spec-files/mayo-spec-round2-web.pdf) | [`PQCMayo/MAYO-C@4b7cd94`](https://github.com/PQCMayo/MAYO-C/commit/4b7cd94c96b9522864efe40c6ad1fa269584a807) |
|
||||
| [CROSS](./docs/algorithms/sig/cross.md) | [Under NIST consideration](https://www.cross-crypto.com/CROSS_Specification_v2.2.pdf) | [`CROSS-signature/CROSS-lib-oqs@c8f7411`](https://github.com/CROSS-signature/CROSS-lib-oqs/commit/c8f7411fed136f0e37600973fa3dbed53465e54f) |
|
||||
| [SNOVA](./docs/algorithms/sig/snova.md) | [Under NIST consideration](https://csrc.nist.gov/csrc/media/Projects/pqc-dig-sig/documents/round-2/spec-files/snova-spec-round2-web.pdf) | [`vacuas/SNOVA@1c3ca6f`](https://github.com/vacuas/SNOVA/commit/1c3ca6f4f7286c0bde98d7d6f222cf63b9d52bff) |
|
||||
| [ML-DSA](./docs/algorithms/sig/ml_dsa.md) | [Standardized by NIST](https://csrc.nist.gov/pubs/fips/204/final) | [`pq-crystals/dilithium@444cdcc`](https://github.com/pq-crystals/dilithium/commit/444cdcc84eb36b66fe27b3a2529ee48f6d8150c2) |
|
||||
| [SPHINCS+](./docs/algorithms/sig/sphincs.md) | [Selected by NIST](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/SPHINCS-Round3.zip) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
#### Signature schemes
|
||||
| Algorithm family | Standardization status | Primary implementation |
|
||||
|:-------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [Falcon](docs/algorithms/sig/falcon.md) | [Selected by NIST](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/Falcon-Round3.zip) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
| [SLH-DSA](docs/algorithms/sig/slh_dsa.md) | [Standardized by NIST](https://csrc.nist.gov/pubs/fips/205/final) | [`pq-code-package/slhdsa-c@a0fc1ff`](https://github.com/pq-code-package/slhdsa-c/commit/a0fc1ff253930060d0246aebca06c2538eb92b88) |
|
||||
| [UOV](docs/algorithms/sig/uov.md) | [Under NIST consideration](https://csrc.nist.gov/csrc/media/Projects/pqc-dig-sig/documents/round-2/spec-files/uov-spec-round2-web.pdf) | [`pqov/pqov@7e0832b`](https://github.com/pqov/pqov/commit/7e0832b6732a476119742c4acabd11b7c767aefb) |
|
||||
| [MAYO](docs/algorithms/sig/mayo.md) | [Under NIST consideration](https://csrc.nist.gov/csrc/media/Projects/pqc-dig-sig/documents/round-2/spec-files/mayo-spec-round2-web.pdf) | [`PQCMayo/MAYO-C@4b7cd94`](https://github.com/PQCMayo/MAYO-C/commit/4b7cd94c96b9522864efe40c6ad1fa269584a807) |
|
||||
| [CROSS](docs/algorithms/sig/cross.md) | [Under NIST consideration](https://www.cross-crypto.com/CROSS_Specification_v2.2.pdf) | [`CROSS-signature/CROSS-lib-oqs@c8f7411`](https://github.com/CROSS-signature/CROSS-lib-oqs/commit/c8f7411fed136f0e37600973fa3dbed53465e54f) |
|
||||
| [SNOVA](docs/algorithms/sig/snova.md) | [Under NIST consideration](https://csrc.nist.gov/csrc/media/Projects/pqc-dig-sig/documents/round-2/spec-files/snova-spec-round2-web.pdf) | [`vacuas/SNOVA@1c3ca6f`](https://github.com/vacuas/SNOVA/commit/1c3ca6f4f7286c0bde98d7d6f222cf63b9d52bff) |
|
||||
| [ML-DSA](docs/algorithms/sig/ml_dsa.md) | [Standardized by NIST](https://csrc.nist.gov/pubs/fips/204/final) | [`pq-crystals/dilithium@444cdcc`](https://github.com/pq-crystals/dilithium/commit/444cdcc84eb36b66fe27b3a2529ee48f6d8150c2) |
|
||||
| [SPHINCS+](docs/algorithms/sig/sphincs.md) | [Selected by NIST](https://csrc.nist.gov/CSRC/media/Projects/post-quantum-cryptography/documents/round-3/submissions/SPHINCS-Round3.zip) | [`PQClean/PQClean@1eacfda`](https://github.com/PQClean/PQClean/commit/1eacfdafc15ddc5d5759d0b85b4cef26627df181) |
|
||||
|
||||
### Stateful digital signatures
|
||||
| Algorithm family | Standardization status | Primary implementation |
|
||||
|:-------------------------------------------|:-----------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------|
|
||||
| [XMSS](./docs/algorithms/sig_stfl/xmss.md) | [Standardized by Internet Research Task Force (IRTF), approved by NIST](https://www.rfc-editor.org/info/rfc8391) | [`XMSS/xmss-reference`](https://github.com/XMSS/xmss-reference) |
|
||||
| [LMS](./docs/algorithms/sig_stfl/lms.md) | [Standardized by Internet Research Task Force (IRTF), approved by NIST](https://www.rfc-editor.org/info/rfc8554) | [`cisco/hash-sigs`](https://github.com/cisco/hash-sigs) |
|
||||
#### Stateful signature schemes
|
||||
| Algorithm family | Standardization status | Primary implementation |
|
||||
|:-----------------------------------------|:-----------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------|
|
||||
| [XMSS](docs/algorithms/sig_stfl/xmss.md) | [Standardized by Internet Research Task Force (IRTF), approved by NIST](https://www.rfc-editor.org/info/rfc8391) | [`XMSS/xmss-reference`](https://github.com/XMSS/xmss-reference) |
|
||||
| [LMS](docs/algorithms/sig_stfl/lms.md) | [Standardized by Internet Research Task Force (IRTF), approved by NIST](https://www.rfc-editor.org/info/rfc8554) | [`cisco/hash-sigs`](https://github.com/cisco/hash-sigs) |
|
||||
<!-- OQS_TEMPLATE_FRAGMENT_ALG_SUPPORT_END -->
|
||||
|
||||
Note that for algorithms marked with a dagger (†), liboqs contains at least one implementation that uses a large amount of stack space; this may cause failures when run in threads or in constrained environments. For more information, consult the algorithm information sheets in the [docs/algorithms](https://github.com/open-quantum-safe/liboqs/tree/main/docs/algorithms) folder.
|
||||
|
@ -68,7 +68,7 @@ def render_alg_support_tbl(doc_dir: str) -> str:
|
||||
elif "sig_stfl/" in yaml_path:
|
||||
dirname = "sig_stfl"
|
||||
md_basename = os.path.splitext(os.path.split(yaml_path)[1])[0]
|
||||
md_url = f"./docs/algorithms/{dirname}/{md_basename}.md"
|
||||
md_url = f"docs/algorithms/{dirname}/{md_basename}.md"
|
||||
std_status = algdata["standardization-status"]
|
||||
spec_url = algdata["spec-url"]
|
||||
primary_impl = format_upstream_source(algdata["primary-upstream"]["source"])
|
||||
@ -101,13 +101,13 @@ def update_readme(liboqs_dir: str):
|
||||
sig_tbl = render_alg_support_tbl(sig_doc_dir)
|
||||
sig_stfl_doc_dir = os.path.join(liboqs_dir, "docs", "algorithms", "sig_stfl")
|
||||
sig_stfl_tbl = render_alg_support_tbl(sig_stfl_doc_dir)
|
||||
md_str = f"""### KEMs
|
||||
md_str = f"""#### Key encapsulation mechanisms
|
||||
{kem_tbl}
|
||||
|
||||
### Digital signatures
|
||||
#### Signature schemes
|
||||
{sig_tbl}
|
||||
|
||||
### Stateful digital signatures
|
||||
#### Stateful signature schemes
|
||||
{sig_stfl_tbl}
|
||||
"""
|
||||
readme_path = os.path.join(liboqs_dir, "README.md")
|
||||
|
Loading…
x
Reference in New Issue
Block a user