Map
↑PQ-WireGuard

A Tale of Two Worlds — Hybrid-WireGuard

Wiki summarycryptographypost-quantumwireguardpaperformal-methods ↳ show in map Markdown
title
A Tale of Two Worlds — Hybrid-WireGuard
type
summary
summary
Lafourcade et al. (USENIX Security 2025) formally analyze PQ-WireGuard, fix it, and propose a hybrid variant with formal proofs in SAPIC+ (ProVerif/Tamarin/DeepSec) and a Rust implementation
tags
cryptography, post-quantum, wireguard, paper, formal-methods
sources
usenix-25-lafourcade
created
2026-05-10
updated
2026-05-10

The Lafourcade–Mahmoud–Ruhault–Taleb paper from USENIX Security 2025 is one of two concurrent independent works that revisit the original PQ-WireGuard. The other is pq-wireguard-revisited (Hashimoto et al., IACR 2025/1758). Lafourcade et al. focus on formal verification and hybridization, with a Rust implementation; Hashimoto et al. focus on a leaner cryptographic redesign with the new RKEM primitive.

Three contributions

Formal analysis of PQ-WireGuard. They model PQ-WireGuard in SAPIC+, a framework that compiles a single specification to ProVerif, Tamarin, and DeepSec — letting them exploit each tool's strengths (Tamarin: associative-commutative DH; ProVerif: efficient unbounded-session analysis; DeepSec: trace-equivalence properties). They identify gaps in the prior symbolic proof (Donenfeld and Milner, Hülsing et al.), notably a missed UKS attack scenario, and show PQ-WireGuard inherits WireGuard's lack-of-anonymity issue. They also flag a non-standard KEM encapsulation definition in the original PQ-WireGuard that affects implementation. The fixed version is named PQ-WireGuard⋆, formally proven to provide anonymity, UKS resistance, agreement, and secrecy.

Hybrid-WireGuard. A new protocol combining PQ-WireGuard⋆ with classical WireGuard, designed to provide hybrid security: secure as long as either the classical or the post-quantum scheme remains unbroken. This is the recommended migration shape during the transitional period — the European Telecommunications Standards Institute's stance, OpenSSH 9.9's X25519+ML-KEM hybrid, Apple's PQ3, etc. The headline formal result: any attack on Hybrid-WireGuard decomposes into an attack on PQ-WireGuard⋆ and an attack on WireGuard.

Adaptive evaluation strategy. SAPIC+'s naive evaluation of all relevant security properties for a hybrid protocol explodes combinatorially. They propose an adaptive strategy that prunes the state space while preserving soundness — necessary in practice because the unfiltered analysis is intractable.

Rust implementation. A "generic, efficient and usable" Rust implementation of Hybrid-WireGuard, instantiated with Classic McEliece and ML-KEM, with benchmarks comparing against WireGuard, PQ-WireGuard, and PQ-WireGuard⋆.

How it diverges from Hashimoto et al.

The two papers reached overlapping conclusions independently:

  • Both found the UKS attack from KEM-binding issues
  • Both noted PQ-WireGuard's reliance on additional KEM assumptions

The fixes are different:

Aspect Lafourcade et al. Hashimoto et al.
Structural change Concatenate static PKs to PSK in H4 Redesign around RKEM, eliminate duplicated PSK absorption
PSK in key schedule Two inclusions (preserved) One inclusion (streamlined)
Identity hiding assumption Drop "PKs hidden from adversary"; insert PSK into anti-DoS MACs Preserve original assumption; prove identity hiding and unlinkability
Anti-DoS cost Recipient performs PK ops to look up PSK (against the original DoS model) DoS-protection model preserved
Server PK memory Classic McEliece (large) preserved RKEM/Rebar reduces 190–390×
Implementation Rust with bench Implementation referenced, online

Practically: Hashimoto et al. is the better engineering result for kernel-level deployment (memory budget); Lafourcade et al. is the better formal-methods result and provides a working hybrid Rust implementation that conservative deployers could adopt today.

Both are needed inputs for a real PQ-WireGuard standardization process.

Why it matters

The paper is also a worked example of using SAPIC+ on a real industrial protocol — a useful reference for anyone building post-quantum hybrid handshakes (TLS, IKEv2, Signal, IMessage PQ3 are all in this category).

Cross-references: pq-wireguard, pq-wireguard-revisited, reinforcing-kem, ml-kem, post-quantum-cryptography, crqc-timeline.