Jason A. Donenfeld, qoraaga WireGuard VPN, ayaa sii daayay sii deynta ugu horreysa ee weyn ee barnaamijka macaamiisha WireGuard ee Windows 1.0, iyo sidoo kale darawallada WireGuardNT 1.0 oo leh deked VPN WireGuard oo loogu talagalay kernel-ka Windows 10 iyo 11, oo taageeraya qaab-dhismeedka AMD64, x86, iyo ARM64. Koodhka qaybta kernel-ka Windows waxaa shati haysta GPLv2, barnaamijka macmiilkuna wuxuu shati haystaa shatiga MIT.
Dekeddu waxay ku salaysan tahay saldhigga koodhka ee hirgelinta WireGuard ee ugu weyn ee kernel-ka Linux, kaas oo loo beddelay isticmaalka hay'adaha kernel-ka Windows iyo xirmada shabakadda NDIS. Marka la barbar dhigo hirgelinta wireguard-go, kaas oo ku shaqeeya booska isticmaalaha oo isticmaala interface-ka shabakadda Wintun, WireGuardNT waxay bixisaa horumarin waxqabad oo muhiim ah iyadoo meesha laga saarayo beddelayaasha macnaha guud iyo nuqul ka sameynta waxyaabaha ku jira baakadka kernel-ka una guurinaysa booska isticmaalaha. Sida hirgelinta Linux, OpenBSD, iyo FreeBSD, dhammaan macquulka habaynta borotokoolka ee WireGuardNT waxay si toos ah ugu socotaa heerka xirmada shabakadda.
Nooca 1.0 waxaa loo calaamadeeyay inuu yahay tallaabo muhiim ah, taasoo calaamad u ah xallinta arrimo dhowr ah iyo fulinta hawlaha loogu talagalay, sida: isticmaalka shaqada NdisWdfGetAdapterContextFromAdapterHandle() halkii laga isticmaali lahaa kaydinta aan amniga lahayn ee xaaladda darawalka ee goobta la keydiyay iyo isticmaalka khaladaadka aan la diiwaan gelin; raadraac sax ah oo degdeg ah oo cabbirka MTU (Unit Transmission Unit ugu badan) ah iyada oo loo marayo dhexda wicitaanada nidaamka; isticmaalka heerka C23 ee koodhka.
Xasuusin ahaan, WireGuard VPN waxay ku salaysan tahay hababka sirta casriga ah, waxay bixisaa waxqabad heer sare ah, waa mid fudud in la isticmaalo, waa mid aan lahayn dhibaatooyin, waxayna isku caddaatay tiro badan oo hawlgallo ballaaran ah oo maareynaya taraafikada badan. Mashruucu wuxuu socday tan iyo 2015 wuxuuna maray baaritaan iyo xaqiijin rasmi ah oo ku saabsan hababka sirta ah. WireGuard waxay isticmaashaa fikrad marin habayn ah oo ku salaysan sirta, taas oo ku lug leh xidhitaanka furaha gaarka ah ee shabakad kasta iyo isticmaalka furayaasha dadweynaha si loogu xidho furaha.
Isweydaarsiga furayaasha dadweynaha si loo sameeyo xiriir waxay la mid tahay SSH. Si loo gorgortamo furayaasha loona xiro iyada oo aan la isticmaalin daemon gaar ah booska isticmaalaha, habka Noise_IK ee ka socda Qaab-dhismeedka Hab-raaca Noise ayaa la isticmaalaa, oo la mid ah dayactirka furayaasha_la oggol yahay ee SSH. Gudbinta xogta waxaa lagu sameeyaa iyada oo loo marayo ku-xidhka baakadaha UDP. Beddelka waa la taageeraa. Ciwaanka IP-ga Adeegayaasha VPN (roaming) iyada oo aan la joojin xiriirka iyadoo dib-u-habeyn otomaatig ah lagu sameynayo macaamiisha.
Sirta socodka ChaCha20 iyo algorithm-ka xaqiijinta farriinta Poly1305 (MAC), oo ay sameeyeen Daniel J. Bernstein, Tanja Lange, iyo Peter Schwabe, ayaa loo isticmaalaa qarinta. ChaCha20 iyo Poly1305 waxaa loo suuqgeeyaa sidii beddello dhakhso badan oo ammaan ah oo loogu talagalay AES-256-CTR iyo HMAC, kuwaas oo hirgelinta barnaamijkoodu u oggolaanayo fulinta waqti go'an iyada oo aan loo baahnayn taageero qalab gaar ah. Furaha sirta ah ee la wadaago waxaa lagu soo saaraa iyadoo la adeegsanayo hab-raaca elliptic curve Diffie-Hellman ee hirgelinta Curve25519, oo sidoo kale uu soo jeediyay Daniel Bernstein. Algorithm-ka BLAKE2s (RFC7693) waxaa loo isticmaalaa xakamaynta.
Source: opennet.ru
