SaQura C / C++ · Upgrade notes

Versions & compatibility — SaQura C / C++

Before you update

Current version: 1.0.0 · saqura.de/downloads · SaQura C/C++ SDK (saqura.de) · to the documentation

  • 1.0.0 is the first version. The C interface (24 functions in saqura.h) is stable from 1.0.0 on; later 1.x versions only add. All data is byte-identical to the other SDKs.
  • Accepted are distribution licenses and standard licenses without device binding. A license with device binding (hardwareId) or app binding (boundPackage) belongs to another library and is refused with a reason; the library never contacts a server.
  • One package per platform: macOS 12 or newer (universal for Apple silicon and Intel, signed and notarised), Linux x86_64 and arm64 with glibc 2.30 or newer, Windows 10/11 x64 (MSVC, static C runtime, signed). liboqs 0.15.0 and OpenSSL 3.5.8 are built into the library; only system libraries are required.

The tables under each version answer the same five questions in the same order. “Drop-in update: yes” means: our cross-platform test corpus has shown that the new version reads the data of the previous one and no call needs to change.

Optional modules

  • No optional modules. Every package contains the static and the dynamic library, the header saqura.h, an example with CMake file, plus license and third-party notices. You choose static or dynamic at link time.

Licenses & app binding

  • The same .lic file as with every SaQura SDK; saqura_license_load checks signature, validity and type. The license applies to the whole process until saqura_license_clear or the next load; a refused load leaves the previous license in place.

1.0.0 · 2026-09-04

First release

  • Quantum encryption of generations 2, 4, 5, 6 (FrodoKEM, Classic McEliece), 7 (RSA-4096 with FrodoKEM) and 8 (X25519 with ML-KEM); the SQS1 stream for large data as a push interface at constant memory; the SQK1 envelope (stream key for one recipient); signatures ML-DSA and SLH-DSA. All byte-identical to the other SDKs, verified in both directions.
  • Free tier without license with the same rules as the other SDKs (generations 2, 4, 5, 6 up to 80 bytes of plaintext with a marker, waiting time between calls; decrypting, reading and verifying in every tier). License functions saqura_license_load / status / clear; error code SAQURA_ERROR_LICENSE.
  • Packages for macOS (universal), Linux x86_64, Linux arm64 and Windows x64 with SHA-256 checksums under saqura.de/downloads/saqura-c/. The Windows and macOS packages are signed, the macOS package additionally notarised.
CompatibilityStatusNote
Data formats (keys, ciphertexts, streams)baselineBaseline; byte-identical to the other SDKs.
License files (bound / unbound)baselineDistribution and unbound standard license; no binding.
Native libraries / ABIbaselineStatic and dynamic library per platform; 24 exported symbols.
R8 / keep rules, trimming / linkerbaseline
Minimum platformbaselinemacOS 12; glibc 2.30; Windows 10
Drop-in update?YesFirst version.