Überblick
So funktioniert die SaQura Library
Quantensichere Verschlüsselung als Baustein für Ihre eigene Software — in .NET, Kotlin, Swift, Python, JavaScript oder C/C++. Ihre Daten verlassen dabei nie Ihr Gerät.
Überblick
Das Problem in einem Absatz
Fast jede Software nutzt Verschlüsselung — ein digitales Schloss für Passwörter, Nachrichten und Daten. Die heute üblichen Schlösser (RSA, ECC) wird ein künftiger Quantencomputer knacken können. Behörden wie das BSI und die EU-Richtlinie NIS2 drängen deshalb auf die Umstellung auf quantensichere Verfahren. Angreifer fangen Daten schon heute ab, um sie später zu entschlüsseln — deshalb zählt es jetzt.
Was es ist
Verschlüsselung direkt in Ihrer App
Die SaQura Library ist ein fertiger Software-Baustein (ein „SDK“), den Entwickler in die eigene Anwendung einbauen. Die Ver- und Entschlüsselung passiert direkt auf dem Gerät — anders als bei einem Online-Dienst verlassen die Daten den Rechner nie. Das ist ideal, wenn Vertraulichkeit oder Vorgaben es verlangen.
// .NET / C#
var (pub, priv) = await Quantum.GenerateKeyPairAsync(QuantumStrength.Standard, QuantumGeneration.Gen8);
var (secret, cipher) = await "Hello".EncryptWithQuantumAsync(pub);
var plain = await cipher.DecryptWithQuantumAsync(priv, secret);Vereinfachte Beispiele — die genaue Syntax steht in der Doku.
Fakten
Verfahren, Standards, Plattformen
Dieselben Verfahren und dasselbe Datenformat in allen sechs SDKs — was auf einer Plattform verschlüsselt wurde, entschlüsselt jede andere. Die Tabelle nennt, was in der Library steckt und wo.
| Verfahren | Standard | Verfügbar in |
|---|---|---|
| X25519 + ML-KEM (Gen8, hybrid) | RFC 7748 + FIPS 203 | alle 6 SDKs |
| ML-KEM-512 / 768 / 1024 | FIPS 203 | alle 6 SDKs |
| ML-DSA-44 / 65 / 87 | FIPS 204 | alle 6 SDKs |
| SLH-DSA-SHA2-128f / 192f / 256f | FIPS 205 | alle 6 SDKs |
| FrodoKEM-640 / 976 / 1344 (Gen4, Gen6) | BSI TR-02102-1 (für 976 und 1344) | alle 6 SDKs |
| Classic McEliece 6688128 / 6960119 / 8192128 (Gen2, Gen5) | BSI TR-02102-1 (für 6688128 und 8192128) | alle 6 SDKs |
| RSA-4096 + FrodoKEM (Gen7, hybrid) | PKCS #1 v2.2 + FrodoKEM | alle 6 SDKs |
| AES-256-GCM | FIPS 197 · SP 800-38D | .NET, Kotlin, Swift, Python (JS und C: innerhalb der Generationen und SQS1) |
| ChaCha20-Poly1305 | RFC 8439 | Streaming (SQS1) in .NET, Kotlin, Swift, JS, C |
| RSA-4096 (OAEP, PSS) | PKCS #1 v2.2 | .NET, Kotlin, Swift, Python (JS und C: innerhalb von Gen7) |
| PBKDF2-HMAC-SHA512 | SP 800-132 | .NET, Kotlin, Swift, Python |
Streaming: große Dateien mit konstantem Speicher (SQS1)
Dateien und Datenströme werden in Segmenten (standardmäßig 1 MiB) mit AES-256-GCM oder ChaCha20-Poly1305 verschlüsselt — der Speicherbedarf bleibt konstant, unabhängig von der Dateigröße (getestet mit 3 GiB). Jedes Segment trägt Zähler und Ende-Kennung, ein abgeschnittener Strom wird erkannt. Der Stream-Schlüssel lässt sich in einen Post-Quanten-Umschlag (Gen8/ML-KEM, Gen5, Gen6) legen. Streaming in .NET, Kotlin, Swift, JS und C; Umschlag in .NET, Kotlin, Swift und C.
Sitzungsprotokoll: MLS (RFC 9420) mit hybridem Post-Quanten-Schlüsselaustausch
Für Gruppen- und Einzelsitzungen setzt SaQura auf MLS nach RFC 9420 — nicht auf PQXDH oder Double Ratchet. Die Standard-Suite (P-256, AES-128-GCM) ist mit OpenMLS interoperabel und gegen die offiziellen RFC-9420-Testvektoren geprüft. Zusätzlich gibt es eine SaQura-Suite, die den Schlüsselaustausch durch hybrides X25519 + ML-KEM-768 ersetzt; Signaturen bleiben dort ECDSA P-256, und diese Suite ist bewusst nicht mit fremden Stacks interoperabel. MLS steht in Swift und Kotlin bereit; der SaQura Messenger nutzt es.
Pakete: NuGet · SaQura 1.0.15 · Maven Central · jp.co.kyototech:saqura:1.2.2 · npm · saqura 0.1.0 · SwiftPM · 1.2.0 · PyPI · saqura 1.0.10 · C/C++ · 1.0.1
Für wen
Wann das der richtige Weg ist
Für Teams, die Verschlüsselung in ihre eigene Software einbauen — besonders dort, wo Daten aus Datenschutz- oder Compliance-Gründen lokal bleiben müssen.
So fangen Sie an
Loslegen
Die Library per Paket-Manager hinzufügen, kostenlos testen, mit einer Lizenz produktiv gehen — Installation und Beispiele je Sprache stehen in der Doku.
Und dann