VPN WireGuard เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบญเบกเบฎเบฑเบšเป€เบ‚เบปเป‰เบฒเปƒเบ™เบชเบฒเบ‚เบฒ net-next เปเบฅเบฐ เบเบณเบ™เบปเบ”เปƒเบซเป‰เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบซเบผเบฑเบ Linux 5.6

David Miller (David S. Miller), เบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเบฅเบฐเบšเบปเบšเบเปˆเบญเบเบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบ kernel Linux, เบเบญเบกเบฎเบฑเบš เป„เบ›เบซเบฒเบชเบฒเบ‚เบฒเบ•เปเปˆเป„เบ› เป€เบžเบตเป‰เบก เบ”เป‰เบงเบเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš VPN เบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™ WireGuardเปƒเบ™เบ•เบปเป‰เบ™เบ›เบตเปœเป‰เบฒ, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเบฐเบชเบปเบกเป„เบงเป‰เปƒเบ™เบชเบฒเบ‚เบฒ net-next เบˆเบฐเป€เบ›เบฑเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบญเบเบซเบผเบฑเบ. Linux 5.6โ€‹.

เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบกเบ—เบตเปˆเบˆเบฐเบชเบปเปˆเบ‡เป€เบชเบตเบกเบฅเบฐเบซเบฑเบ” WireGuard เปƒเบ™ kernel เบซเบผเบฑเบ, เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบกเป„เบ”เป‰เบกเบตเบ‚เบถเป‰เบ™เปƒเบ™เป„เบฅเบเบฐเบชเบญเบ‡เบชเบฒเบกเบ›เบตเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเบžเบงเบเบกเบฑเบ™เบเบฑเบ‡เบšเปเปˆเบ›เบฐเบชเบปเบšเบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบชเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบ‚เบญเบ‡เบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ›เบฑเบšเบ›เบธเบ‡เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš. เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™, เบŸเบฑเบ‡เบŠเบฑเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™ เบชเบฐเป€เปœเบต เบชเปเบฒเบฅเบฑเบš kernel เป€เบ›เบฑเบ™ Zinc API เบฅเบฐเบ”เบฑเบšเบ•เปˆเปเบฒเป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เป€เบŠเบดเปˆเบ‡เปƒเบ™เบ—เบตเปˆเบชเบธเบ”เบชเบฒเบกเบฒเบ”เบ—เบปเบ”เปเบ—เบ™ API Crypto เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™.

เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบชเบปเบ™เบ—เบฐเบ™เบฒเปƒเบ™เบเบญเบ‡เบ›เบฐเบŠเบธเบก Kernel Recipes, เบœเบนเป‰เบชเป‰เบฒเบ‡ WireGuard เปƒเบ™เป€เบ”เบทเบญเบ™เบเบฑเบ™เบเบฒ เป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ›เบฐเบ™เบตเบ›เบฐเบ™เบญเบก เบ›เปˆเบฝเบ™เปเบžเบฑเบ”เบŠเปŒเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบžเบทเปˆเบญเปƒเบŠเป‰ Crypto API เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™เปเบเบ™เบเบฒเบ‡, เป€เบŠเบดเปˆเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป„เบ”เป‰ WireGuard เบกเบตเบเบฒเบ™เบฎเป‰เบญเบ‡เบฎเบฝเบ™เบเปˆเบฝเบงเบเบฑเบšเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš เปเบฅเบฐ เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเป‚เบ”เบเบฅเบงเบก. เป„เบ”เป‰เบกเบตเบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบชเบทเบšเบ•เปเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒ Zinc API, เปเบ•เปˆเป€เบ›เบฑเบ™เป‚เบ„เบ‡เบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เปƒเบ™เป€เบ”เบทเบญเบ™เบžเบฐเบˆเบดเบ, เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ kernel เป„เบ› เปƒเบ™เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ™เบตเบ›เบฐเบ™เบญเบกเปเบฅเบฐเบ•เบปเบเบฅเบปเบ‡เบ—เบตเปˆเบˆเบฐเป‚เบญเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบˆเบฒเบเบชเบฑเบ‡เบเบฐเบชเบตเป„เบ›เบซเบฒเปเบเปˆเบ™เบ•เบปเป‰เบ™เบ•เป. เป‚เบ”เบเบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเป‰เบง, เบšเบฒเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบชเบฑเบ‡เบเบฐเบชเบตเบˆเบฐเบ–เบทเบเบเป‰เบฒเบเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบซเบผเบฑเบ, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™ API เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เปเบ•เปˆเป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเปˆเบญเบ Crypto API. เบ•เบปเบงเบขเปˆเบฒเบ‡, Crypto API เปเบฅเป‰เบง เบฅเบงเบก เบเบฐเบเบฝเบกเป„เบงเป‰เปƒเบ™ WireGuard เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เบงเปˆเบญเบ‡เป„เบงเบ‚เบญเบ‡เบญเบฑเบฅเบเปเบฃเบดเบ—เบถเบก ChaCha20 เปเบฅเบฐ Poly1305.

เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบ—เบตเปˆเบˆเบฐเบกเบฒเป€เบ–เบดเบ‡ WireGuard เปƒเบ™เบ—เบตเบกเบ‡เบฒเบ™เบซเบผเบฑเบ, เบœเบนเป‰เบเปเปˆเบ•เบฑเป‰เบ‡เป‚เบ„เบ‡เบเบฒเบ™ เบ›เบฐโ€‹เบเบฒเบ” เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ‚เปเป‰เบกเบนเบ™. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‡เปˆเบฒเบเบ‚เบถเป‰เบ™, เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เปเบšเบš monolithic เป„เบ”เป‰เบ–เบทเบเบ—เบปเบ”เปเบ—เบ™เบ”เป‰เบงเบWireGuard.git", เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเปƒเบซเป‰เบกเบตเบขเบนเปˆเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบชเบฒเบกเบšเปˆเบญเบ™ เป€เบŠเบดเปˆเบ‡เป€เปเบฒเบฐเบชเบปเบกเบเบงเปˆเบฒเบชเบณเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบงเบฝเบเบ‡เบฒเบ™เบ”เป‰เบงเบเบฅเบฐเบซเบฑเบ”เปƒเบ™เปเบเบ™เบซเบผเบฑเบ:

  • wireguard-linux.git โ€” เบ•เบปเป‰เบ™เป„เบกเป‰ kernel เป€เบ•เบฑเบกเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™ Wireguard, เบเบฒเบ™เปเบเป‰เป„เบ‚เบ•เปˆเบฒเบ‡เป†เบˆเบฒเบเบ™เบฑเป‰เบ™เบˆเบฐเบ–เบทเบเบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™เป€เบžเบทเปˆเบญเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบซเบผเบฑเบ เปเบฅเบฐ เบเป‰เบฒเบเป„เบ›เบ—เบตเปˆเบชเบฒเบ‚เบฒ net/net-next เป€เบ›เบฑเบ™เบ›เบฐเบˆเบณ.
  • wireguard-tools.git - เบ„เบฑเบ‡เป€เบเบฑเบšเบกเป‰เบฝเบ™เบชเปเบฒเบฅเบฑเบšเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เปเบฅเบฐเบชเบฐเบ„เบดเบšเบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบขเบนเปˆเปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰, เป€เบŠเบฑเปˆเบ™ wg เปเบฅเบฐ wg-quick. repository เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบŠเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบˆเบเบขเบฒเบ.
  • wireguard-linux-compat.git โ€” เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบฅเบธเป‰เบ™เบ‚เบญเบ‡เป‚เบกเบ”เบนเบ™, เบชเบปเปˆเบ‡เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบˆเบฒเบเป€เบ„เบตเป€เบ™เบฅ เปเบฅเบฐ เบ›เบฐเบเบญเบšเบกเบตเบŠเบฑเป‰เบ™ compat.h เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเป€เบ„เบตเป€เบ™เบฅเป€เบเบปเปˆเบฒ. เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบฑเป‰เบ™เบ•เบปเป‰เบ™เบˆเบฐเป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™. wireguard-linux.git, เปเบ•เปˆเบ•เบฒเบšเปƒเบ”เบ—เบตเปˆเบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰ เปเบฅเบฐ เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบˆเบฒเบเบœเบนเป‰เปƒเบŠเป‰, เป€เบงเบตเบŠเบฑเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบ‚เบญเบ‡เปเบžเบฑเบ”เบŠเปŒเบเปเปˆเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเปœเบฑเบšเบชเบฐเปœเบนเบ™เปƒเบ™เบฎเบนเบšเปเบšเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ.

เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบ•เบทเบญเบ™เบ—เปˆเบฒเบ™เบงเปˆเบฒ VPN WireGuard เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เป, เบกเบฑเบ™เปƒเบซเป‰เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเบนเบ‡เบซเบผเบฒเบ, เปƒเบŠเป‰เบ‡เปˆเบฒเบ, เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบชเบฑเบšเบชเบปเบ™, เปเบฅเบฐ เป„เบ”เป‰เบžเบดเบชเบนเบ”เบ•เบปเบงเป€เบญเบ‡เปƒเบ™เบเบฒเบ™เบ™เบณเปƒเบŠเป‰เบ‚เบฐเปœเบฒเบ”เปƒเบซเบเปˆเบˆเบณเบ™เบงเบ™เปœเบถเปˆเบ‡เบ—เบตเปˆเบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบˆเบณเบ™เบงเบ™เบซเบผเบงเบ‡เบซเบผเบฒเบ. เป‚เบ„เบ‡เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป„เบ”เป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบกเบฒเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ›เบต 2015 เปเบฅเบฐ เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบš เปเบฅเบฐ เบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™ เบงเบดเบ—เบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเปƒเบŠเป‰เปเบฅเป‰เบง. เบชเบฐเปœเบฑเบšเบชเบฐเปœเบนเบ™ WireGuard เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบš NetworkManager เปเบฅเบฐ systemd เปเบฅเป‰เบง, เปเบฅเบฐ เบเบฒเบ™เปเบเป‰เป„เบ‚ kernel เปเบกเปˆเบ™เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบเบฒเบ™เปเบˆเบเบขเบฒเบเบžเบทเป‰เบ™เบ–เบฒเบ™. Debian เบšเปเปˆ เปเบฑเป‰เบ™ เบ„เบปเบ‡, Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, เบซเบปเบงเบ‚เปเป‰เบเปˆเบญเบ ะธ ALT.

ะ’ WireGuard เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡เบเบฒเบ™เบเบณเบ™เบปเบ”เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบเบฐเปเบˆเป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เปเบกเปˆเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เป€เบŠเบดเปˆเบ‡เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบเบฐเปเบˆเบชเปˆเบงเบ™เบ•เบปเบงเบเบฑเบšเปเบ•เปˆเบฅเบฐเบญเบดเบ™เป€เบ•เบตเป€เบŸเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบ เปเบฅเบฐ เบ™เปเบฒเปƒเบŠเป‰เบกเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบเบฐเปเบˆเบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐ. เบเบฐเปเบˆเบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐเปเบกเปˆเบ™เปเบฅเบเบ›เปˆเบฝเบ™เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบš SSH. เป€เบžเบทเปˆเบญเป€เบˆเบฅเบฐเบˆเบฒเบเบฐเปเบˆ เปเบฅเบฐ เบชเป‰เบฒเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป‚เบ”เบเบšเปเปˆเบ•เป‰เบญเบ‡เปƒเบŠเป‰ daemon เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰, เบเบปเบ™เป„เบ Noise_IK เบˆเบฒเบ Noise Protocol Frameworkเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบฎเบฑเบเบชเบฒ authorized_keys เปƒเบ™ SSH. เบเบฒเบ™เบชเบปเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™ encapsulation เปƒเบ™เบŠเบธเบ” UDP. เบกเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบขเบนเปˆ IP เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ VPN (เป‚เบฃเบกเบกเบดเบ‡) เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ•เบฑเบ”เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปเบฅเบฐเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบฅเบนเบเบ„เป‰เบฒเบ„เบทเบ™เปƒเบซเบกเปˆเป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”.

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ” เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰ stream cipher ChaCha20 เปเบฅเบฐเบฅเบฐเบšเบปเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ‚เปเป‰เบ„เบงเบฒเบก (MAC) Poly1305เบญเบญเบเปเบšเบšเป‚เบ”เบ Daniel Bernstein (Daniel J. Bernstein), Tanya Lange
(Tanja Lange) เปเบฅเบฐ Peter Schwabe. ChaCha20 เปเบฅเบฐ Poly1305 เบ–เบทเบเบˆเบฑเบ”เป€เบ›เบฑเบ™ analogues เบ—เบตเปˆเป„เบงเบเบงเปˆเบฒเปเบฅเบฐเบ›เบญเบ”เป„เบžเบเบงเปˆเบฒเบ‚เบญเบ‡ AES-256-CTR เปเบฅเบฐ HMAC, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบŠเบญเบšเปเบงเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบšเบฑเบ™เบฅเบธเป€เบงเบฅเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบฎเบฒเบ”เปเบงเบžเบดเป€เบชเบ”. เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบฅเบฐเบซเบฑเบ”เบฅเบฑเบšเบ—เบตเปˆเปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบ™, เป€เบชเบฑเป‰เบ™เป‚เบ„เป‰เบ‡เบฎเบนเบšเบชเป‰เบงเบ Diffie-Hellman protocol เบ–เบทเบเปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”. Curve25519, เบเบฑเบ‡เบชเบฐเป€เบซเบ™เบตเป‚เบ”เบ Daniel Bernstein. เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ—เบตเปˆเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ hashing เปเบกเปˆเบ™ BLAKE2s (RFC7693).

เบ—เบตเปˆ เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™ WireGuard เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ—เบตเปˆเบชเบนเบ‡เบเบงเปˆเบฒ 3.9 เป€เบ—เบปเปˆเบฒ เปเบฅเบฐ เบเบฒเบ™เบ•เบญเบšเบชเบฐเปœเบญเบ‡เบชเบนเบ‡เบเบงเปˆเบฒ 3.8 เป€เบ—เบปเปˆเบฒ เป€เบกเบทเปˆเบญเบ—เบฝเบšเบเบฑเบš OpenVPN (AES 256 เบšเบดเบ” เบžเป‰เบญเบกเบเบฑเบš HMAC-SHA2-256). เป€เบกเบทเปˆเบญเบ—เบฝเบšเบเบฑเบš IPsec (ChaCha20+Poly1305 เปเบฅเบฐ AES-256-GCM-128 256 เบšเบดเบ”) เปƒเบ™ WireGuard เบกเบตเบ„เบงเบฒเบกเป„เบ”เป‰เบ›เบฝเบšเบ”เป‰เบฒเบ™เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ (13-18%) เปเบฅเบฐ เบเบฒเบ™เบซเบผเบธเบ”เบฅเบปเบ‡เบ‚เบญเบ‡เบ„เบงเบฒเบกเปœเปˆเบงเบ‡เป€เบงเบฅเบฒ (21-23%). เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เบงเปˆเบญเบ‡เป„เบงเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เป€เบญเบ‡เบ‚เบญเบ‡เบญเบฑเบฅเบเปเบฃเบดเบ—เบถเบกเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”; เบเบฒเบ™เบ›เปˆเบฝเบ™เป„เบ›เปƒเบŠเป‰ Crypto API เบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡เบ‚เบญเบ‡เปเบเบ™เบเบฒเบ‡เบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบธเบ”เบฅเบปเบ‡.

VPN WireGuard เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบญเบกเบฎเบฑเบšเป€เบ‚เบปเป‰เบฒเปƒเบ™เบชเบฒเบ‚เบฒ net-next เปเบฅเบฐ เบเบณเบ™เบปเบ”เปƒเบซเป‰เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบซเบผเบฑเบ Linux 5.6

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เบŠเบทเป‰เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ DDoS, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ VPS VDS ๐Ÿ”ฅ เบŠเบทเป‰เป€เบงเบฑเบšเป„เบŠเบ—เปŒเป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบ”เป‰เบงเบเบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™ DDoS, เป€เบŠเบตเบšเป€เบงเบต VPS VDS | ProHoster