liboqs Documentation

repository·main·Indexed 25 days ago

https://github.com/open-quantum-safe/liboqs

An open source C library providing a unified API for quantum-safe cryptographic algorithms, including Key Encapsulation Mechanisms (KEMs) and digital signature schemes. It supports NIST-standardized algorithms like ML-KEM, ML-DSA, and SLH-DSA, as well as stateful signature schemes like LMS and XMSS. Designed for research and prototyping, it includes a test harness, benchmarking routines, and integration capabilities via the OpenSSL 3 Provider.

Tokens
31.1K
Snippets
32
Records
125
Agent score
84%

What's inside liboqs

  1. Overview of the AArch64 native backend (little endian)

    main

    The ml_kem/mlkem-native_ml-kem-768_aarch64 directory provides a native backend for little-endian AArch64 systems. This implementation is derived from NeonNTT and uses the SLOTHY superoptimizer to achieve high performance.

    Note that the assembly code in this directory is auto-generated. If you need to modify the assembly or understand its underlying logic, you should not edit the files in this directory directly; instead, consult the source files in the dev/ directory.

  2. Overview of Classic McEliece KEM

    main

    Classic McEliece is a Key Encapsulation Mechanism (KEM) based on Niederreiter's dual version of McEliece's public key encryption using binary Goppa codes. It is provided in liboqs as a Tier 3 supported algorithm.

    Key Characteristics:

    • Algorithm Type: Key Encapsulation Mechanism (KEM).
    • Security Model: IND-CCA2.
    • Implementation: Based on PQClean implementations (both 'clean' and 'avx2' optimized versions).
  3. Overview of liboqs

    main

    liboqs is an open source C library designed for quantum-safe cryptography. It provides a collection of open source implementations for quantum-safe Key Encapsulation Mechanisms (KEMs) and digital signature algorithms.

    Key features include:

    • A common API for accessing various quantum-safe algorithms.
    • A test harness and benchmarking routines.
    • Integration capabilities via the OpenSSL 3 Provider and other post-quantum-enabled demos within the Open Quantum Safe (OQS) project.
  4. Overview of CROSS digital signature scheme

    main

    CROSS is a digital signature scheme based on the hardness of the restricted syndrome decoding problem for random linear codes on a finite field. It is currently supported in liboqs at Tier 3.

    Key Details:

    • Algorithm Type: Digital signature scheme.
    • Security Model: EUF-CMA.
    • Specification Version: 2.2 + PQClean and OQS patches.
    • License: CC0-1.0.
  5. Overview of MQOM digital signature scheme

    main

    MQOM is a digital signature scheme based on the Multivariate Quadratic problem. It is currently supported in liboqs at Tier 3 support level and is actively maintained by its upstream contributors.

    • Algorithm Type: Digital signature scheme
    • Cryptographic Assumption: Computing the solution of a Multivariate Quadratic problem
    • Specification Version: NIST Round 2
    • License: MIT
  6. Overview of Falcon digital signature scheme

    main

    Falcon is a digital signature scheme based on the hardness of NTRU lattice problems. It is provided in liboqs as a Tier 3 supported algorithm.

    Key characteristics:

    • Algorithm type: Digital signature scheme.
    • Security Model: EUF-CMA.
    • Specification version: 20211101.
    • License: MIT (for primary and AVX2 implementations).
  7. HQC Algorithm Overview

    main

    HQC (Hamming Quasi-Cyclic) is a Key Encapsulation Mechanism (KEM) based on the syndrome decoding of structured codes. It is supported in liboqs at Tier 2 support level.

    • Algorithm Type: Key Encapsulation Mechanism (KEM)
    • Security Model: IND-CCA2
    • Specification Version: 2025-08-22
    • License: Public domain
  8. Understand liboqs platform support tiers

    main

    liboqs categorizes supported platforms into three tiers, which define the level of testing, build guarantees, and security support provided:

    • Tier 1: "Guaranteed to work". These platforms are built and tested by the CI system for every change. They include platform-specific build documentation. Some Tier 1 targets (marked with †) are also tested for constant-time behavior via automated testing in tests/constant_time. These platforms are prioritized for security support.
    • Tier 2: "Guaranteed to build". The CI system contains builds for these targets, though automated testing may not always be available. They are generally functional but may have known deficiencies.
    • Tier 3: Supported but not automatically verified. The codebase supports these platforms, but the CI system does not build or test them automatically. They may or may not work as expected and require platform-specific build documentation.