Rust implementation of PAKE protocols: CPace, OPAQUE, SPAKE2, and SPAKE2+ — generic over cryptographic primitives, no_std compatible
-
Updated
Jul 19, 2026 - Rust
Rust implementation of PAKE protocols: CPace, OPAQUE, SPAKE2, and SPAKE2+ — generic over cryptographic primitives, no_std compatible
An open-source, mobile-native implementation of the TAKE biometric authentication protocol using AWS Nitro Enclaves and OPRF to prevent server breaches.
Browser-based tour of the PAKE family — SRP-6a, J-PAKE, CPace, and Dragonfly (RFC 7664) side by side. Watch a shared key form from a low-entropy password that never crosses the wire, toggle a server breach, and replay the Dragonblood side-channel that broke WPA3's hunting-and-pecking.
Browser-based SPAKE2/SPAKE2+ demo — RFC 9382/9383. Same handshake, same session key — the difference appears when the server leaks. SPAKE2 stored the password: the attacker is now the client. SPAKE2+ stored a verifier: the attacker gets an offline dictionary attack. Real M/N masking over P-256. No backends. No simulated math.
Provide modular, no_std Rust implementations of Password-Authenticated Key Exchange protocols with flexible cryptographic primitive support.
Add a description, image, and links to the password-authenticated-key-exchange topic page so that developers can more easily learn about it.
To associate your repository with the password-authenticated-key-exchange topic, visit your repo's landing page and select "manage topics."