liboqs是一个用于量子安全密码算法的开源C库。
一,概述
liboqs提供:
- 量子安全 密钥封装机制(KEM)和数字签名算法的开源实现的集合;
- 这些算法的通用API;
- 测试工具和基准测试例程。
liboqs是由Douglas Stebila和Michele Mosca领导的开放量子安全(OQS)项目的一部分,该项目旨在开发量子安全密码学并将其集成到应用程序中,以促进在现实环境中的部署和测试。特别是,OQS通过OpenSSL和OpenSSH将liboqs原型集成到TLS和SSH中。
https://openquantumsafe.org/papers/SAC-SteMos16.pdf
https://openquantumsafe.org/papers/NISTPQC-CroPaqSte19.pdf
二,目前状态
2.1支持的算法
密钥封装机制
- BIKE: BIKE1-L1, BIKE1-L3, BIKE1-L5, BIKE2-L1, BIKE2-L3, BIKE2-L5, BIKE3-L1, BIKE3-L3, BIKE3-L5 (NIST Round 1 version)
- FrodoKEM: FrodoKEM-640-AES, FrodoKEM-640-SHAKE, FrodoKEM-976-AES, FrodoKEM-976-SHAKE, FrodoKEM-1344-AES, FrodoKEM-1344-SHAKE
- Kyber: Kyber512, Kyber768, Kyber1024
- NewHope: NewHope-512-CCA, NewHope-1024-CCA
- NTRU: NTRU-HPS-2048-509, NTRU-HPS-2048-677, NTRU-HPS-4096-821, NTRU-HRSS-701
- SABER: LightSaber-KEM, Saber-KEM, FireSaber-KEM
- SIKE: SIDH-p434, SIDH-p503, SIDH-p610, SIDH-p751, SIKE-p434, SIKE-p503, S