WireGuard
| WireGuard | ||
|---|---|---|
| Linux kerne del | ||
|
| ||
| Generel information | ||
| programtype | virtuelt privat netværk | |
| Forfatter | Jason A. Donenfeld | |
| Udvikler | Jason A. Donenfeld | |
| Licens | GPLv2 | |
| Teknisk information | ||
| Planlagt ind | C ( Linux -kernemodul ), Go (brugerpladsimplementering) | |
| Versioner | ||
| Seneste stabile version | Ingen [ 1 ] ( ) | |
| Links | ||
WireGuard er en gratis og open source softwareapplikation og kommunikationsprotokol , der implementerer Virtual Private Network (VPN) teknikker til at skabe sikre punkt-til-punkt- forbindelser i routede eller brokoblede konfigurationer . [ 2 ] Det kører som et modul i Linux-kernen og sigter mod bedre ydeevne end IPsec- og OpenVPN -tunneling-protokollerne . [ 3 ] Den blev skrevet af Jason A. Donenfeld og er udgivet under den anden version af GNU General Public License (GPL). [ 4 ] Den officielle hjemmeside beskriver protokollen som et igangværende arbejde . [ 5 ]
Funktioner
WireGuard sigter mod at levere en VPN, der er enkel og yderst effektiv. En gennemgang fra ArsTechnica bemærkede, at populære VPN-teknologier såsom OpenVPN og IPsec ofte er komplekse at konfigurere, afbrydes nemt (i mangel af yderligere konfiguration), tager lang tid at forhandle genforbindelser, kan bruge forældede cifre og har relativt massiv kode (fra 400.000 til 600.000 linjer kode for de to angivne eksempler), hvilket gør det sværere at finde fejl. [ 6 ]
WireGuards design søger at reducere disse problemer ved at gøre tunnelen mere sikker og nemmere at administrere som standard. Ved at bruge kryptopakkeversionering fokuserer den på cifre, der anses for at være blandt de mest sikre krypteringsmetoder i dag, og den har også en kodebase på omkring 4000 linjer, omkring 1 % af OpenVPN eller IPsec , hvilket letter sikkerhedsrevisioner . Ars Technica rapporterede, at stabile tunneler i sine test var nemme at skabe med WireGuard sammenlignet med alternativer, og kommenterede, at det ville være "svært at gå tilbage" til lange genforbindelsesforsinkelser sammenlignet med "nonsens" og øjeblikkelige genforbindelser fra WireGuard. [ 6 ]
Protokol
WireGuard bruger Curve25519 til nøgleudveksling , ChaCha20 til kryptering, Poly1305 til datagodkendelse , SipHash til nøgler fra hashtabeller og BLAKE2s til hash . [ 4 ] Det understøtter lag 3 til både IPv4 og IPv6 og kan indkapsle v4 i v6 og omvendt. [ 7 ]
I maj 2019 offentliggjorde INRIA -forskere et maskinverificeret bevis på protokollen, produceret ved hjælp af CryptoVerif proof wizard . [ 8 ]
Historie
De første snapshots af kodebasen eksisterer den 30. juni 2016. [ 9 ] Fire af WireGuards tidlige brugere var VPN-tjenesteudbydere Mullvad , [ 10 ] AzireVPN, [ 11 ] IVPN [ 12 ] og cryptostorm. [ 13 ] WireGuard har modtaget donationer fra Mullvad, Private Internet Access , IVPN og NLnet Foundation . [ 14 ]
Fra juni 2018 anbefaler udviklerne af WireGuard at behandle koden og protokollen som eksperimentel, idet de bemærker, at de endnu ikke har opnået en stabil udgivelse, der understøtter CVE -sporing af eventuelle sikkerhedssårbarheder, der måtte blive opdaget. [ 15 ] [ 16 ]
Den 9. december 2019 accepterede David Miller, Linux Network Stack Lead, WireGuard-patches i "net-next" vedligeholdelsestræet til inklusion i en kommende kerne. [ 17 ] [ 18 ] [ 19 ] Den 28. januar 2020 fusionerede Linus Torvalds David Millers net-næste træ, og WireGuard går ind i Linux-kernetræet. [ 20 ]
Modtagelse
Oregon - senator Ron Wyden anbefalede National Institute of Standards and Technology (NIST), at de evaluerede WireGuard som en erstatning for eksisterende teknologier såsom IPsec og OpenVPN . [ 21 ]
Dette system er blevet modtaget meget positivt af hele fællesskabet og har fået omtale på snesevis af teknologiske kanaler på grund af dets store hastighed sammenlignet med systemer som OpenVPN og en meget enkel installationsproces [1].
Implementeringer
Implementeringer af WireGuard-protokollen omfatter:
- Den indledende Donenfeld-implementering, skrevet i C og Go. [ 22 ]
- Cloudflares BoringTun , en brugerrumsimplementering skrevet i Rust . [ 23 ] [ 24 ]
Userspace-programmer, der understøtter WireGuard
Userspace-programmer, der understøtter WireGuard inkluderer:
- NetworkManager siden version 1.16 [ 25 ]
- systemd siden version 237 [ 26 ]
- Intels ConnMan siden version 1.38 [ 27 ]
- Mozillas Firefox private netværk [ 28 ]
Se også
- Secure Shell (SSH), en kryptografisk netværksprotokol, der bruges til at sikre tjenester over et usikret netværk.
- OpenVPN , en VPN, der har fået stor berømmelse for sin brede brug i branchen
Referencer
- ^ a b "Installation" . WireGuard. Arkiveret fra originalen den 22. juli 2019 . Hentet 20. august 2019 .
- ↑ "WireguardVPN | Brugsvejledning?" . ProxyServer . Hentet 11. februar 2020 .
- ↑ Prenel, Bart; Vercauteren, Frederik (red.). Anvendt kryptografi og netværkssikkerhed . Springer. ISBN 978-3-319-93387-0 . Arkiveret fra originalen den 18. februar 2019 . Hentet 25. juni 2018 .
- ^ a b "WireGuard: hurtig, moderne, sikker VPN-tunnel" . WireGuard. Arkiveret fra originalen den 28. april 2018 . Hentet 28. april 2018 .
- ^ "Igangværende arbejde" . Wireguard.com .
- ^ a b Salter, Jim (26. august 2018). "WireGuard VPN anmeldelse: En ny type VPN giver seriøse fordele" . Ars Technica . Arkiveret fra originalen den 20. september 2018.
- ↑ Donenfeld, Jason A. "Introduktion og motivation" . WireGuard: Next Generation Kernel Network Tunnel (PDF) . Arkiveret fra originalen den 4. marts 2018.
- ↑ Benjamin Lipp, Bruno Blanchet, Karthikeyan Bhargavan (2019), A Mechanized Cryptographic Proof of the WireGuard Virtual Private Network Protocol , Forskningsrapport RR-9269, Paris: Inria, hal-02100345 .
- ↑ https://download.wireguard.com/monolithic-historical/
- ↑ Mason, John (13. februar 2019). "Mullvad Review" . den bedstewpn . 2. Stærke tunneling-protokoller – OpenVPN & WireGuard . Arkiveret fra originalen den 16. marts 2019 . Hentet 8. april 2019 .
- ↑ Mason, John (19. februar 2019). AzireVPN anmeldelse . thebesttvpn . 2. Imponerende protokoller og kryptering . Arkiveret fra originalen den 8. april 2019 . Hentet 8. april 2019 .
- ↑ Pestell, Nick. Introduktion til Wireguard . Hentet 22. september 2019 .
- ↑ "WireGuard-understøttelse tilføjet!" . cryptostorm blog . 5. april 2019. Arkiveret fra originalen 9. december 2019 . Hentet 9. december 2019 .
- ^ "Donationer" . WireGuard. Arkiveret fra originalen den 28. april 2018 . Hentet 28. april 2018 .
- ^ "Om projektet" . WireGuard. Arbejde i gang . Arkiveret fra originalen den 25. juni 2018 . Hentet 25. juni 2018 .
- ^ "Installation" . WireGuard. Arkiveret fra originalen den 26. juni 2018 . Hentet 26. juni 2018 .
- ^ "e7096c131e5161fa3b8e52a650d7719d2857adfd - pub/scm/linux/kernel/git/davem/net-next - Git hos Google" . kernel.googlesource.com .
- ^ "LKML: David Miller: Re: [PATCH net-next v2] net: WireGuard sikker netværkstunnel" . lkml.org .
- ↑ "[ANNONCER] WireGuard fusionerede til net-next, på vej til Linux 5.6" . web.archive.org . 9. januar 2020. Arkiveret fra originalen 9. januar 2020 . Hentet 16. marts 2020 .
- ↑ Torvalds, Linus. "indeks : kernel/git/torvalds/linux.git" . Linux-kernens kildetræ . Kernel.org . Hentet 2. februar 2020 .
- ^ "US Senator anbefaler Open-Source WireGuard til NIST for regerings-VPN" . Phoronix . 30. juni 2018. Arkiveret fra originalen 5. august 2018 . Hentet 5. august 2018 .
- ↑ Donenfeld, Jason (7. juni 2019). "WireGuard: hurtig, moderne, sikker VPN-tunnel" . Hentet 16. juni 2019 .
- ↑ Krasnov, Vlad (18. december 2018). "BoringTun, en brugerspace WireGuard-implementering i Rust" . Cloudflare Blog (på amerikansk engelsk) . Arkiveret fra originalen den 4. april 2019 . Hentet 29. marts 2019 .
- ↑ "CloudFlare lancerer "BoringTun" som rustskrevet WireGuard User-Space-implementering" . phoronix.com . Hentet 29. marts 2019 .
- ^ "WireGuard i NetworkManager" .
- ↑ "systemd" .
- ↑ "Intel ConnMan 1.38 udgivet med WireGuard Support" .
- ↑ "Mozilla VPN Sicher, schnell und zuverlässig – auf jedem Gerät, egal wo du bist." (på tysk) .