2026-06-20 | network | #wireguard #vpn #noise-protocol #kernel #chacha20-poly1305 #curve25519 #cryptokey-routing #secure-channel #netlink
WireGuard 用不到 4000 行内核代码替代了 IPSec/IKE 数十万行的协议栈——这不是少写功能,而是用固定密码学原语、固定握手模式和 cryptokey routing 这三个设计决定,换掉了证书体系、协商机和 SPD/SAD 分离。本文钻进源码和协议握手过程,逐层拆解 cryptokey routing 的双向执行、Noise IKpsk2 的 1.5 RTT 握手(含四次 ECDH 的安全属性贡献)、内核多核队列架构、timer 状态机、cookie DoS 防御和三密钥对轮换。
2026-07-19 | network · kernel | #wireguard #linux-kernel #allowedips #netlink #noise #datapath #linux-6.6
基于 Linux 6.6 drivers/net/wireguard:wg_xmit 与 AllowedIPs trie、noise 握手入口、encrypt/decrypt worker、messages.h 常量与 netlink 配置面。与 network/89 全景文互补。