
Written mostly in C++ using assembler for the most performance-critical encryption functions. It can only be used as a WireGuard VPN client. TunSafe is an alternative user space implementation by Ludvig Strigeus.The latter is a virtual network interface, which implements the WireGuard protocol, and uses Windows Kernel Sockets (WSK) for the transport. Starting August 2021, this implementation was gradually superseded by a new version implemented entirely in kernel mode – WireGuardNT. Until recently, it was built on top of wireguard-go (implementation of the WireGuard protocol in user space, written in the Go language) and the WinTun virtual network interface. It can be used both as a client and as a server (unofficially).


The project code is distributed under the BSD-3-Clause license and consists of two main parts:

In early 2019, Cloudflare introduced BoringTun, an implementation of the WireGuard protocol written in Rust.
