WireGuard
WireGuard est un protocole de communication et un logiciel libre et open source permettant de créer un réseau privé virtuel (VPN)[3],[4]. Il est conçu avec des objectifs de facilité d'utilisation, de performances et de surface d'attaque basse[5]. Il vise une meilleure performance[6] et une plus grande économie d'énergie que les protocoles IPsec et OpenVPN Tunneling[7]. Le protocole WireGuard transmet le trafic sur UDP. En mars 2020, la version Linux du logiciel a atteint une version de production stable et a été intégrée au noyau Linux 5.6. Les composants du noyau Linux sont sous licence GNU (GLPL) version 2. D'autres implémentations sont sous GPLV2 ou d'autres licences gratuites / Open-Source.
Développé par | Jason Donenfeld (d) |
---|---|
Première version | [1] |
Dernière version | 1.0.20220627 ()[2] |
Dépôt | git.zx2c4.com/wireguard-linux |
Écrit en | C et Go |
Système d'exploitation | Linux, Android, iOS, FreeBSD, NetBSD, OpenBSD, macOS et Microsoft Windows |
Formats lus | WireGuard profile (d) |
Formats écrits | WireGuard profile (d) |
Type | Réseau privé virtuel |
Licence | Licence publique générale GNU version 2 et licence publique générale GNU |
Site web | www.wireguard.com |
Protocole
modifierWireGuard utilise les protocoles suivant[5] :
- Curve25519 pour l'échange de clé
- ChaCha20 pour la cryptographie symétrique
- Poly1305 pour les code d'authentification de message
- SipHash pour les clés hashées
- BLAKE2s pour la fonction de hachage cryptographique
- Basé uniquement en UDP[8]
Mode optionnel de pré-partage symétrique des clés
modifierWireGuard supporte le mode de pré-partage symétrique des clés, qui fournit une couche de cryptographie symétrique supplémentaire pour atténuer les futurs progrès de l'informatique quantique. Cela réduit le risque que le trafic soit stocké jusqu'à ce que les ordinateurs quantiques soient capable de casser Curve25519, leur permettant de déchiffrer le trafic. Les clés pré-partagées sont "généralement gênantes du point de vue de la gestion des clés et pourraient être plus probablement volées", mais à plus court terme, si la clé symétrique est compromise, les clés Curve25519 offrent toujours une protection plus que suffisante[9].
Mise en réseau
modifierÀ cause des potentiels désavantages du TCP-sur-TCP[10],[11], Wireguard utilise uniquement[10] UDP[5]. WireGuard prend entièrement en charge IPv6, à l'intérieur et à l'extérieur du tunnel. Il ne prend en charge que la Couche réseau 3 pour IPV4 et IPV6. De plus, il peut encapsuler IPV4 en IPV6 (et vice-versa)[12].
Extensibilité
modifierWireGuard est conçu pour être étendu par des programmes et des scripts tiers. Cela a été utilisé pour améliorer WireGuard avec diverses fonctionnalités, notamment des interfaces de gestion plus simple d'utilisation (y compris une configuration plus facile des clés), la connexion, les mises à jour dynamiques du pare-feu et l'intégration du LDAP.[citation nécessaire]
L'exclusion de ces fonctionnalités complexes du code source améliore sa stabilité et sa sécurité. Pour assurer la sécurité, WireGuard restreint les options d’implémentation de contrôles cryptographiques, limite les choix de processus d'échange de clé et limite les algorithmes[citation nécessaire] à un petit sous-ensemble de primitives cryptographiques modernes.
Si un défaut est trouvé dans l'une des primitives, une nouvelle version peut être publiée et résoudre le problème. De plus, les paramètres de configuration qui affectent la sécurité de l'ensemble de l'application ne peuvent pas être modifiés par des utilisateurs non privilégiés[13].
Réception
modifierUne étude réalisée par Ars Technica a révélé que WireGuard était simple à configurer et à utiliser, utilisait des chiffrements puissants et avait une base de code minimale qui offrait une petite surface d'attaque[14].
WireGuard a reçu un financement de l'Open Technology Fund[15] et des dons de Mullvad, Private Internet Access, IVPN, la Fondation NLnet[16] et OVPN[17].
Le sénateur de l'Oregon, Ron Wyden, a recommandé au National Institute of Standards and Technology (NIST) d'évaluer WireGuard en remplacement des technologies existantes[18].
Références
modifier- « https://www.businessinsider.com/wireguard-jason-a-donenfeld-profile-secure-vpn-linux-mac-windows-2021-1 »
- « wireguard-linux-compat » (consulté le )
- Guénaël Pépin, « Face à OpenVPN, WireGuard veut devenir le Signal des connexions chiffrées », sur nextinpact.com, (consulté le )
- « Qu’est-ce que Wireguard, le seigneur du VPN ? », sur futura-sciences.com, (consulté le )
- « WireGuard: fast, modern, secure VPN tunnel » [archive du ], WireGuard (consulté le )
- « Wireguard - Un protocole VPN de nouvelle génération qui rend la connexion VPN plus rapide que jamais », sur Siècle Digital, (consulté le )
- Guénaël Pépin, « Connexions chiffrées : l'âge des protocoles VPN en question », sur nextinpact.com, (consulté le )
- (en) Jason A. Donenfeld, « Known Limitations - WireGuard », sur www.wireguard.com (consulté le )
- Jason Donenfeld, « WireGuard: Next Generation Kernel Network Tunnel », sur Wireguard.com,
- (en) Jason A. Donenfeld, « Known Limitations - WireGuard », sur www.wireguard.com (consulté le )
- « Why TCP Over TCP Is A Bad Idea », sur sites.inka.de (consulté le )
- Jason A. Donenfeld « WireGuard: Next Generation Kernel Network Tunnel (chap 1: Introduction & Motivation) » (DOI 10.14722/NDSS.2017.23160, lire en ligne, consulté le )
—NDSS 2017 Symposium (lire en ligne) (San Diego, CA, 26 février - 1er mars 2017) - « Wireguard VPN Protocol - Privacy HQ », sur privacyhq.com (consulté le )
- Jim Salter, « WireGuard VPN review: A new type of VPN offers serious advantages » [archive du ], sur Ars Technica,
- « Building a more secure, accessible and resilient WireGuard VPN protocol. », sur www.opentech.fund (consulté le )
- « Donations » [archive du ], WireGuard (consulté le )
- « OVPN donates to support WireGuard », sur OVPN,
- « US Senator Recommends Open-Source WireGuard To NIST For Government VPN » [archive du ], Phoronix, (consulté le )
Annexes
modifierArticles connexes
modifier- OpenVPN
- Comparison of virtual private network services
- Secure Shell (SSH), un protocole de réseau cryptographique utilisé pour sécuriser les services sur un réseau non sécurisé
Liens externes
modifier- (en) Site officiel
- Face à OpenVPN, WireGuard veut devenir le Signal des connexions chiffrées sur nextinpact.com, le 5 septembre 2017