Rosenpass: Post-quantum-secure WireGuard VPN in Rust

  • Rosenpass implements a post-quantum-secure key exchange in the spirit of a Noise protocol. The motivating use case is integrating with the WireGuard VPN: In this mode, the key generated by Rosenpass is supplied to WireGuard as its pre-shared symmetric key (PSK). This results in a WireGuard VPN connection with hybrid post-quantum security.

    The implementation is written in Rust but uses libsodium and liboqs – both of which are C libraries.