Liboqs
C library for prototyping and experimenting with quantum-resistant cryptography
Install / Use
/learn @open-quantum-safe/LiboqsREADME
liboqs
liboqs is an open source C library for quantum-safe cryptographic algorithms.
Overview
liboqs provides:
- a collection of open source implementations of quantum-safe key encapsulation mechanisms (KEMs) and digital signature algorithms; the full list can be found below
- a common API for these algorithms
- a test harness and benchmarking routines
liboqs is part of the Open Quantum Safe (OQS) project, which aims to develop and integrate into applications quantum-safe cryptography to facilitate deployment and testing in real world contexts. In particular, OQS provides prototype integrations of liboqs into protocols like TLS, X.509, and S/MIME, through our OpenSSL 3 Provider and we provide a variety of other post-quantum-enabled demos.
The OQS project is supported by the Post-Quantum Cryptography Alliance as part of the Linux Foundation. More information about the Open Quantum Safe project can be found at openquantumsafe.org.
OQS is running a survey to better understand our community. We would like to hear from organizations and individuals about their interest in and use of the Open Quantum Safe project. Please take a few minutes to fill out the survey: https://linuxfoundation.surveymonkey.com/r/oqssurvey
Status
Supported Algorithms
Details on each supported algorithm can be found in the docs/algorithms folder.
The list below indicates all algorithms currently supported by liboqs, including experimental algorithms and already excluding algorithm variants pruned during the NIST competition, such as Kyber-90s or Dilithium-AES.
The only algorithms in liboqs that implement NIST standards are the ML-KEM (final standard) and ML-DSA (final standard) variants with their respective different bit strengths. liboqs will retain these algorithm names selected by NIST throughout the finishing stages of the standardization process, so users can rely on their presence going forward. If NIST changes the implementation details of these algorithms, liboqs will adjust the implementation so that users are protected from such potential changes.
Falcon has also been selected for standardization, but the liboqs implementations of these algorithms are currently tracking Round 3 submissions and not NIST standards drafts.
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. By default liboqs is built supporting all, incl. experimental, PQ algorithms listed below.
Key encapsulation mechanisms
| Algorithm family | Standardization status | Primary implementation |
|:-------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------|
| BIKE | Not selected by NIST | awslabs/bike-kem |
| Classic McEliece | Under ISO consideration | PQClean/PQClean@1eacfda |
| FrodoKEM | Under ISO consideration | microsoft/PQCrypto-LWEKE@a2f9dec |
| HQC | Selected by NIST for upcoming standardization | PQClean/PQClean@1eacfda |
| Kyber | Selected by NIST as basis for ML-KEM (FIPS 203) | pq-crystals/kyber@441c051 |
| ML-KEM | Standardized by NIST | pq-code-package/mlkem-native@048fc2a |
| NTRU | Not selected by NIST, under standardization consideration by NTT | PQClean/PQClean@4c9e5a3 |
| NTRU-Prime | Not selected by NIST | PQClean/PQClean@4c9e5a3 |
Signature schemes
| Algorithm family | Standardization status | Primary implementation |
|:-------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------|
| CROSS | Under NIST consideration | CROSS-signature/CROSS-lib-oqs@a21ebc3 |
| Falcon | Selected by NIST for upcoming standardization | PQClean/PQClean@1eacfda |
| MAYO | Under NIST consideratio
Related Skills
node-connect
344.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
96.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
344.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
344.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
