★ Recommended architecture
Hybrid: nym-smol-dvpn + nym-smolmix
The recommended architecture. One process runs both a per-app dVPN client and a per-app mixnet client: sync over dVPN, broadcast over the mixnet.
Runtime: Rust — native apps, both modes concurrently in one processdVPN (WireGuard)Mixnet (5-hop)Speed: Fast sync / slow broadcast
dVPN (WireGuard)Mixnet (5-hop)
One process runs both per-app clients: sync over dVPN via one exit gateway, broadcast over the mixnet via another — one entry gateway, one lightwalletd.
ClientEntry GWMixExit GWlightwalletd
dVPN (WireGuard) (no mixing)Mixnet (5-hop) (mixing delays)
Latency model
Block sync · dVPN (WireGuard)360 ms (3 hops)
Tx broadcast · Mixnet (5-hop)1.6 s (6 hops, 3 mix layers)
Geographic propagation (speed-of-light)Per-hop mixing delayReliable-channel ACK (return, geographic only)
Per-actor assessment (inherited)
The same four threat actors apply. This architecture inherits the assessment of the configuration it implements: Recommended hybrid. Layer-2 baseline hygiene remains the wallet’s responsibility.
Baseline hygiene applies here tooWhatever the transport, the wallet still owes the same Layer-2 discipline: randomize request times, obfuscate the start height, and never broadcast on reaching the tip.Full detail →
Above this transport: query shapeThis transport carries the bytes; what goes on the wire and when is decided above it. nym-swizzle-zcash shapes the query pattern itself — grid-aligned sync ranges and decoupled, restart-safe broadcasts — so the server can't chain sessions or attribute sends.The duty →The library →