Jason A. Donenfeld, olùkọ̀wé WireGuard VPN, ti ṣe ìtújáde pàtàkì àkọ́kọ́ ti software oníbàárà WireGuard fún Windows 1.0, àti àwọn awakọ̀ WireGuardNT 1.0 pẹ̀lú ibudo kan. VPN WireGuard fún Windows 10 àti 11 kernel, tó ń ṣe àtìlẹ́yìn fún àwọn ètò AMD64, x86, àti ARM64. Koodu ẹ̀yà Windows kernel náà ní ìwé àṣẹ lábẹ́ GPLv2, software oníbàárà sì ní ìwé àṣẹ lábẹ́ ìwé àṣẹ MIT.
Ibudo naa da lori ipilẹ koodu ti imuse WireGuard akọkọ fun kernel Linux, eyiti a ti yipada si lilo awọn ẹya kernel Windows ati akopọ nẹtiwọọki NDIS. Ni akawe si imuse wireguard-go, eyiti o nṣiṣẹ ni aaye olumulo ati lilo wiwo nẹtiwọọki Wintun, WireGuardNT nfunni ni awọn ilọsiwaju iṣẹ ṣiṣe pataki nipa yiyọkuro awọn iyipada ipo ati didaakọ awọn akoonu packet lati kernel si aaye olumulo. Bii awọn imuse fun Linux, OpenBSD, ati FreeBSD, gbogbo ilana ṣiṣe ilana ni WireGuardNT nṣiṣẹ taara ni ipele akopọ nẹtiwọọki.
A samisi ẹya 1.0 gẹgẹbi ami pataki kan, ti o samisi ipinnu awọn ọran pupọ ati imuṣẹ awọn iṣẹ-ṣiṣe ti a pinnu, gẹgẹbi: lilo iṣẹ NdisWdfGetAdapterContextFromAdapterHandle() dipo ibi ipamọ ti ko ni aabo ti ipo awakọ ni aaye Reserved ati lilo awọn aiṣedeede ti ko ni iwe-aṣẹ; titọpa ti o tọ ati ni kiakia ti iwọn MTU (Igbese Giga julọ) nipasẹ idaduro awọn ipe eto; lilo boṣewa C23 ninu koodu naa.
Jẹ ki a leti pe VPN WireGuard ti wa ni imuse lori ipilẹ ti awọn ọna fifi ẹnọ kọ nkan ode oni, pese iṣẹ ṣiṣe giga pupọ, rọrun lati lo, laisi awọn ilolu ati ti fihan ararẹ daradara ni nọmba awọn imuṣẹ nla ti n ṣakoso awọn iwọn nla ti ijabọ. Ise agbese na ti n dagbasoke lati ọdun 2015 ati pe o ti ṣe ayẹwo idanwo ati ijẹrisi deede ti awọn ọna fifi ẹnọ kọ nkan ti a lo. WireGuard nlo imọran ti ipa ọna fifi ẹnọ kọ nkan ti o da lori, eyiti o kan sisopọ bọtini ikọkọ pẹlu wiwo nẹtiwọọki kọọkan ati lilo awọn bọtini gbangba fun dipọ.
Pípàṣípààrọ̀ àwọn kọ́kọ́rọ́ gbogbogbò láti fi ìsopọ̀ múlẹ̀ jọ SSH. Láti ṣe àdéhùn lórí àwọn kọ́kọ́rọ́ àti láti sopọ̀ láìsí ṣíṣe daemon kan ní ààyè olùlò, a lo ìlànà Noise_IK láti inú Noise Protocol Framework, gẹ́gẹ́ bí ìtọ́jú àwọn àṣẹ_keys nínú SSH. Gbígbé dátà ni a ń ṣe nípasẹ̀ ìdènà nínú àwọn packets UDP. A ń ṣe àtìlẹ́yìn fún ìyípadà. Awọn adirẹsi IP Àwọn olupin VPN (rírìn kiri) láìsí ìdádúró ìsopọ̀ pẹ̀lú àtúnṣe aládàáṣe oníbàárà.
Awọn fifi ẹnọ kọ nkan naa nlo ṣiṣan ṣiṣan ChaCha20 ati Poly1305 ijẹrisi alugoridimu ifiranṣẹ (MAC), ni idagbasoke nipasẹ Daniel J. Bernstein, Tanja Lange, ati Peter Schwabe. ChaCha20 ati Poly1305 wa ni ipo bi yiyara ati awọn analogues aabo diẹ sii ti AES-256-CTR ati HMAC, imuse sọfitiwia eyiti ngbanilaaye iyọrisi akoko ipaniyan ti o wa titi laisi lilo atilẹyin ohun elo pataki. Lati ṣe ipilẹṣẹ bọtini ikọkọ ti o pin, ilana Elliptic Curve Diffie-Hellman ni a lo ninu imuse Curve25519, tun dabaa nipasẹ Daniel Bernstein. Awọn algorithm BLAKE2s (RFC7693) ni a lo fun hashing.
orisun: opennet.ru
