# liboqs

> free software library implementing quantum-safe cryptographic algorithms

**Wikidata**: [Q109541458](https://www.wikidata.org/wiki/Q109541458)  
**Source**: https://4ort.xyz/entity/liboqs

## Summary
liboqs is a free software library that implements quantum-safe cryptographic algorithms, designed to protect systems against threats posed by quantum computers. It provides open-source implementations of post-quantum cryptography schemes and is developed under the Open Quantum Safe project. The library supports multiple cryptographic primitives and is used for research, experimentation, and integration into future-proof security infrastructures.

## Key Facts
- Implements post-quantum cryptographic algorithms such as Kyber, SABER, NTRU, McEliece, SPHINCS, and Supersingular Isogeny Key Encapsulation.
- Developed by the Open Quantum Safe initiative.
- Licensed under the Expat license (MIT-like).
- First release was version 0.1.0 on November 13, 2018.
- Latest stable version is 0.8.0, released June 8, 2023.
- Available in English at https://openquantumsafe.org/liboqs/.
- Source code hosted on GitHub: https://github.com/open-quantum-safe/liboqs.
- Classified as both a cryptographic library and free software.
- Written primarily in C (programming language Q15777).

## FAQs
### Q: What is liboqs used for?
A: liboqs is used to implement and test quantum-safe cryptographic algorithms that are resistant to attacks by quantum computers. It enables developers and researchers to experiment with post-quantum cryptography solutions before they become standardized.

### Q: Is liboqs free to use?
A: Yes, liboqs is free software distributed under the Expat license, which allows users to run, study, modify, and redistribute the software without restriction.

### Q: Who develops liboqs?
A: liboqs is developed by the Open Quantum Safe project, an initiative focused on advancing practical quantum-safe cryptography.

## Why It Matters
As quantum computing advances, traditional public-key cryptographic systems like RSA and ECC face potential obsolescence due to their vulnerability to quantum algorithms such as Shor's algorithm. liboqs plays a crucial role in preparing for this transition by offering accessible, well-documented implementations of post-quantum cryptographic methods. Its availability accelerates research, facilitates standardization efforts, and helps organizations begin evaluating and integrating quantum-resistant technologies ahead of widespread quantum threats. By being open-source and community-driven, it also fosters transparency and collaboration across academia, industry, and government sectors working toward secure digital futures.

## Notable For
- Being one of the most comprehensive open-source libraries for post-quantum cryptography.
- Supporting a wide range of cryptographic schemes including key encapsulation mechanisms and digital signatures.
- Serving as the foundational component for other tools in the Open Quantum Safe ecosystem, such as OQS-OpenSSL.
- Providing regular updates and versioned releases since its initial launch in 2018.
- Offering cross-platform support and extensive documentation for ease of adoption.

## Body

### Overview
liboqs is a modular, extensible C library that provides implementations of quantum-safe cryptographic algorithms. It serves as a core building block within the broader Open Quantum Safe initiative, aimed at enabling deployment and evaluation of cryptographic protocols believed to be secure against adversaries equipped with large-scale quantum computers.

### Development & Licensing
The library is maintained by the Open Quantum Safe project and made available under the permissive Expat license. This licensing model encourages broad usage and modification while ensuring minimal legal barriers to adoption.

### Supported Algorithms
liboqs includes reference implementations of several candidate algorithms from NIST’s Post-Quantum Cryptography Standardization process, including but not limited to:
- **Kyber** – A lattice-based key encapsulation mechanism (KEM).
- **SABER** – Another lattice-based KEM.
- **NTRU** – Lattice-based encryption scheme.
- **McEliece cryptosystem** – Code-based encryption.
- **SPHINCS** – Hash-based signature scheme.
- **Supersingular Isogeny Key Encapsulation (SIKE)** – Isogeny-based KEM.

These implementations are intended for testing, benchmarking, and prototyping rather than direct production use unless hardened appropriately.

### Version History
Below are selected notable versions with publication dates:
- **v0.1.0**: Released November 13, 2018
- **v0.2.0**: October 8, 2019
- **v0.3.0**: June 10, 2020
- **v0.4.0**: August 12, 2020
- **v0.5.0**: March 10, 2021
- **v0.6.0**: June 8, 2021
- **v0.7.0**: August 11, 2021
- **v0.7.1**: December 16, 2021
- **v0.7.2**: August 21, 2022
- **v0.8.0**: June 8, 2023

Each version introduces bug fixes, performance improvements, new algorithm support, or API refinements.

### Technical Details
- Language: Primarily written in C (Q15777).
- Repository: Hosted publicly on GitHub at https://github.com/open-quantum-safe/liboqs.
- Website: Documentation and resources can be accessed via https://openquantumsafe.org/liboqs/.
- Integration: Designed to interface with higher-level applications and TLS libraries through projects like OQS-BoringSSL and OQS-OpenSSL.

### Use Cases
liboqs supports various use cases including:
- Academic and industrial research into post-quantum cryptography.
- Benchmarking and comparative analysis of different quantum-safe algorithms.
- Prototyping next-generation secure communication systems.
- Informing standards development bodies such as NIST during the PQC standardization process.

Its modular architecture makes it adaptable for diverse environments requiring robust cryptographic foundations resilient to future technological shifts.

## References

1. [2021](https://github.com/open-quantum-safe/liboqs/releases/tag/0.7.1)
2. [Release 0.1.0. 2018](https://github.com/open-quantum-safe/liboqs/releases/tag/master-0.1.0)
3. [Release 0.2.0. 2019](https://github.com/open-quantum-safe/liboqs/releases/tag/0.2.0)
4. [Release 0.3.0. 2020](https://github.com/open-quantum-safe/liboqs/releases/tag/0.3.0)
5. [Release 0.4.0. 2020](https://github.com/open-quantum-safe/liboqs/releases/tag/0.4.0)
6. [Release 0.5.0. 2021](https://github.com/open-quantum-safe/liboqs/releases/tag/0.5.0)
7. [Release 0.6.0. 2021](https://github.com/open-quantum-safe/liboqs/releases/tag/0.6.0)
8. [Release 0.7.0. 2021](https://github.com/open-quantum-safe/liboqs/releases/tag/0.7.0)
9. [Release 0.7.2. 2022](https://github.com/open-quantum-safe/liboqs/releases/tag/0.7.2)
10. [Release 0.8.0. 2023](https://github.com/open-quantum-safe/liboqs/releases/tag/0.8.0)
11. [Release 0.9.0. 2023](https://github.com/open-quantum-safe/liboqs/releases/tag/0.9.0)
12. [Release 0.9.1. 2023](https://github.com/open-quantum-safe/liboqs/releases/tag/0.9.1)
13. [Release 0.9.2. 2024](https://github.com/open-quantum-safe/liboqs/releases/tag/0.9.2)
14. [Release 0.10.0. 2024](https://github.com/open-quantum-safe/liboqs/releases/tag/0.10.0)
15. [Release 0.10.1. 2024](https://github.com/open-quantum-safe/liboqs/releases/tag/0.10.1)
16. [Release 0.11.0. 2024](https://github.com/open-quantum-safe/liboqs/releases/tag/0.11.0)
17. [Release 0.12.0. 2024](https://github.com/open-quantum-safe/liboqs/releases/tag/0.12.0)
18. [Release 0.13.0. 2025](https://github.com/open-quantum-safe/liboqs/releases/tag/0.13.0)
19. [Release 0.14.0. 2025](https://github.com/open-quantum-safe/liboqs/releases/tag/0.14.0)
20. [Release 0.15.0. 2025](https://github.com/open-quantum-safe/liboqs/releases/tag/0.15.0)