Announcing Clatter - Noise Protocol with Post-Quantum Extensions

Clatter v1.0.0 released! :tada:

Crates.io Version
docs.rs

no_std compatible, pure Rust implementation of the Noise protocol framework with support for Post Quantum (PQ) extensions as presented by Yawning Angel, Benjamin Dowling, Andreas Hülsing, Peter Schwabe, and Fiona Johanna Weber.

The implementation draws inspiration from best parts of these existing crates

...and adds in the post-quantum extensions in a flexible and configurable manner. A cherry on the top is Clatter's DualLayerHandshake type, which provides support for hybrid encryption schemes, where the adversary would have to break both classical and quantum-safe cryptography before any mission-critical information is leaked*.

Motivation

The spark behind Clatter emerged while working on real ultra-secure embedded devices. Even the smallest devices can nowadays carry critical data and conduct highly sensitive communications so it makes sense to bring the cutting-edge communication security available to all kinds of targets. We want to be ready today to defend against tomorrow's threats, right?

What's next?

Clatter is still taking its first steps and it would be encouraging to receive feedback, pull requests, concrete user experiences or feature ideas from the audience. Please feel free to participate in whichever way you feel comfortable!



*I would really love to hear ideas on how to implement even more robust hybrid schemes as the current approach is effective but quite naive and wastes a bit of resources