David Miller (), sing tanggung jawab kanggo subsistem jaringan kernel Linux, menyang cabang net-sabanjuré karo implementasine saka antarmuka VPN saka project Awal taun ngarep, owah-owahan sing dikumpulake ing cabang net-next bakal dadi dhasar rilis inti. Linux 5.6.
Upaya kanggo promosi kode WireGuard Ing kernel utama, upaya wis ditindakake sajrone sawetara taun kepungkur, nanging tetep ora kasil amarga gumantung marang implementasi fungsi kriptografi sing digunakake kanggo ningkatake kinerja. Wiwitane, fungsi-fungsi kasebut kanggo kernel minangka tambahan Seng API tingkat kurang, kang pungkasanipun bisa ngganti standar Crypto API.
Sawisé rembugan ing konferensi Resep Kernel, para pangripta WireGuard ing wulan September Ngonversi patch sampeyan kanggo nggunakake Crypto API sing wis ana ing inti, sing bisa diakses dening para pangembang WireGuard Ana keluhan babagan kinerja lan keamanan sakabèhé. Wis diputusake kanggo terus ngembangake Zinc API, nanging minangka proyèk sing kapisah.
Ing November, pangembang kernel kanggo nanggepi kompromi lan sarujuk kanggo nransfer bagean kode saka Seng kanggo kernel utama. Ateges, sawetara komponen Seng bakal dipindhah menyang inti, nanging ora minangka API kapisah, nanging minangka bagéan saka subsistem API Crypto. Contone, Crypto API wis disiapake ing WireGuard Implementasi cepet saka algoritma ChaCha20 lan Poly1305.
Gegandhengan karo pangiriman sing bakal teka WireGuard ing tim inti, pangadeg proyek kasebut babagan restrukturisasi repositori. Kanggo nyederhanakake pangembangan, repositori monolitik diganti karoWireGuard.git", sing dirancang supaya ana kanthi kapisah, bakal nampa telung repositori kapisah sing luwih cocog kanggo ngatur karya nganggo kode ing inti utama:
- — wit kernel lengkap kanthi owah-owahan saka proyèk Wireguard, patch saka ngendi bakal ditinjau kanggo dilebokake ing inti lan dipindhah kanthi rutin menyang cabang net/net-next.
- - gudang kanggo keperluan lan skrip sing mbukak ing ruang pangguna, kayata wg lan wg-cepet. Repositori bisa digunakake kanggo nggawe paket kanggo distribusi.
- — repositori nganggo versi modul, sing dikirim kanthi kapisah saka kernel lan kalebu lapisan compat.h kanggo njamin kompatibilitas karo kernel lawas. Pangembangan utama bakal ditindakake ing repositori. wireguard-linux.git, nanging anggere ana kemungkinan lan panjaluk saka pangguna, versi patch sing kapisah uga bakal didhukung ing wangun sing bisa digunakake.
Ayo padha ngelingake yen VPN WireGuard Diimplementasikake nggunakake metode enkripsi modern, iki nyedhiyakake kinerja sing dhuwur banget, gampang digunakake, bebas saka komplikasi, lan wis mbuktekake awake dhewe ing sawetara penyebaran skala gedhe sing nangani volume lalu lintas sing akeh. Proyek iki wis dikembangake wiwit taun 2015 lan wis diaudit lan cara enkripsi sing digunakake. Dhukungan WireGuard Iki wis diintegrasikake menyang NetworkManager lan systemd, lan patch kernel kalebu ing distribusi dhasar. , Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, и .
В WireGuard Konsep routing kunci enkripsi digunakake, sing nglibatake ikatan kunci pribadi menyang saben antarmuka jaringan lan nggunakake kanggo ikatan kunci publik. Kunci publik diijolake kanggo nggawe sambungan kanthi cara sing padha karo SSH. Kanggo negosiasi kunci lan nggawe sambungan tanpa mbukak daemon sing kapisah ing ruang pangguna, mekanisme Noise_IK saka padha karo njaga authorized_keys ing SSH. Transmisi data ditindakake liwat enkapsulasi ing paket UDP. Ndhukung ngganti alamat IP server VPN (roaming) tanpa medhot sambungan lan kanthi otomatis ngonfigurasi klien.
Kanggo enkripsi stream cipher lan algoritma otentikasi pesen (MAC) , dirancang dening Daniel Bernstein (), Tanya Lange
(Tanja Lange) and Peter Schwabe. ChaCha20 lan Poly1305 dipanggonke minangka analog sing luwih cepet lan luwih aman saka AES-256-CTR lan HMAC, implementasine piranti lunak sing ngidini entuk wektu eksekusi tetep tanpa nggunakake dhukungan hardware khusus. Kanggo ngasilake kunci rahasia sing dienggo bareng, protokol Diffie-Hellman kurva eliptik digunakake ing implementasine , uga diusulake dening Daniel Bernstein. Algoritma sing digunakake kanggo hashing yaiku .
ing produktivitas WireGuard nduduhake throughput 3.9 kali luwih dhuwur lan responsiveness 3.8 kali luwih dhuwur dibandhingake karo OpenVPN (AES 256-bit nganggo HMAC-SHA2-256). Dibandhingake karo IPsec (ChaCha20+Poly1305 lan AES-256-GCM-128 256-bit) ing WireGuard Kauntungan kinerja sing sithik (13-18%) lan pengurangan latensi (21-23%) diamati. Tes kasebut ditindakake nggunakake implementasi algoritma enkripsi cepet saka proyek kasebut dhewe; ngalih menyang Crypto API asli inti bisa nyebabake kinerja sing mudhun.
Source: opennet.ru
