významné vydanie VPN , ktoré odštartovalo dodávku komponentov WireGuard do základného jadra a stabilizáciu vývoja. Zahrnutý do jadra Linux kód dodatočným bezpečnostným audítom, ktoré vykonala nezávislá firma špecializujúca sa na podobné kontroly. Audit neodhalil žiadne problémy.
Keďže WireGuard sa teraz vyvíja v základnom jadre Linux, pre distribúcie a používateľov, ktorí naďalej využívajú staršie verzie jadra, bol pripravený repozitár . Repozitár obsahuje spätné portované kódy WireGuard a vrstvu compat.h na zabezpečenie kompatibility so starými jadrami. Uvádza sa, že pokým existuje vôľa vývojárov a potreba používateľov, samostatná verzia patchov bude udržiavaná v aktívnom stave. V súčasnej podobe môže byť samostatná verzia WireGuard použitá s jadrami z a , a tiež je k dispozícii vo forme patchov pre jadra Linux a . Distribúcie, ktoré používajú najnovšie jadra, ako Arch, Gentoo a
Fedora 32, získajú možnosť používania WireGuard spolu s aktualizáciou jadra 5.6.
Hlavný proces vývoja sa teraz vedie v repozitári , ktorý obsahuje úplné strom jadra Linux so zmenami projektu WireGuard. Patchy z tohto repozitára budú recenzované na zaradenie do hlavného jadra a pravidelne prenášané do vetiev net/net-next. Vývoj nástrojov a skriptov, ako sú wg a wg-quick, sa vedie v repozitári , ktorý môže byť použitý na vytváranie balíkov v distribúciách.
Pripomíname, že VPN WireGuard je implementovaný na základe moderných šifrovacích metód, zabezpečuje veľmi vysoký výkon, je jednoduchý na používanie, zbavený komplikácií a dobre sa osvedčil v niektorých veľkých nasadeniach spracovávajúcich veľké objemy prevádzky. Projekt sa vyvíja od roku 2015, prešiel auditom a používaných šifrovacích metód. Podpora WireGuard je už integrovaná do NetworkManager a systemd, a patche pre jadro sú súčasťou základných distribúcií , Mageia, Alpine, Arch, Gentoo, OpenWrt, NixOS, a .
V WireGuard sa uplatňuje koncepcia smerovania na základe šifrovacích kľúčov, ktorá predpokladá priradenie súkromného kľúča k každému sieťovému rozhraniu a použitie na prepojenie verejných kľúčov. Výmena verejných kľúčov na nadviazanie pripojenia sa vykonáva analogicky k SSH. Na dohodu kľúčov a pripojenie bez spustenia samostatného démona v používateľskom priestore sa používa mechanizmus Noise_IK z , podobný udržiavaniu authorized_keys v SSH. Prenos dát sa uskutočňuje prostredníctvom enkapsulácie do UDP paketov. Podporuje sa zmena IP adresy VPN servera (roaming) bez prerušenia pripojenia s automatickou rekonfiguráciou klienta.
Na šifrovanie stream cipher a algoritmus overovania správ (MAC) , vyvinutý Danielom Bernsteinom (), Tanyou Lange
(Tanja Lange) a Peter Schwabe. ChaCha20 a Poly1305 sa prezentujú ako rýchlejšie a bezpečnejšie alternatívy ku AES-256-CTR a HMAC, pričom implementácia softvéru umožňuje dosiahnuť stály čas vykonávania bez potreby špeciálnej hardvérovej podpory. Na generovanie zdieľaného tajného kľúča sa využíva protokol Diffie-Hellman na eliptických krivkách v realizácii , taktiež navrhnutý Danielom Bernsteinom. Na hashovanie sa používa algoritmus .
Pri starom výkon WireGuard preukázal 3,9-násobne vyššiu priepustnosť a 3,8-násobne vyššiu reakčnú rýchlosť v porovnaní s OpenVPN (256-bit AES s HMAC-SHA2-256). V porovnaní s IPsec (256-bit ChaCha20+Poly1305 a AES-256-GCM-128) má WireGuard mierne výhody vo výkone (13-18%) a zníženie latencie (21-23%). Výsledky testovania zverejnené na stránke projektu sa týkajú staršej samostatnej implementácie WireGuard a sú označené ako nedostatočne kvalitné. Od doby vykonania testov bol kód WireGuard a IPsec ďalšie optimalizovaný a teraz pracuje rýchlejšie. Komplexnejšie testovanie pokrývajúce integrovanú implementáciu v jadre zatiaľ nebolo vykonané. Napriek tomu sa uvádza, že WireGuard v niektorých situáciách stále predčí IPsec vďaka viacerým vláknam, zatiaľ čo OpenVPN zostáva veľmi pomalý.
Zdroj: opennet.ru
