Rosenpass, un projet VPN qui promet de résister aux attaques des ordinateurs quantiques

rosenpass

Rosenpass est une précaution importante contre ce qui est à venir :

Récemment le nouvelles qu'un groupe de moiDes chercheurs, développeurs et cryptographes allemands ont publié la première version du projet Rosenpass, qui développe des VPN et des mécanismes d'échange de clés résistants aux attaques informatiques quantiques.

rosenpass utilise WireGuard VPN sous le capot avec des algorithmes et des clés de chiffrement standard qui est utilisé comme moyen de transport et le complète avec des outils d'échange de clés protégés contre le piratage sur les ordinateurs quantiques (c'est-à-dire que Rosenpass protège en outre l'échange de clés sans modifier les algorithmes de fonctionnement et les méthodes de cryptage de WireGuard).

Rosenpass peut également être utilisé séparément de WireGuard sous la forme d'un outil générique d'échange de clés adapté à la protection d'autres protocoles contre les attaques informatiques quantiques.

À propos de Rosenpass

Rosenpass est écrit en Rust et utilise liboqs 1 et libsodium 2, l'outil établit une clé symétrique et la fournit à WireGuard. Étant donné que vous fournissez une clé à WireGuard via la fonction PSK, l'utilisation de Rosenpass + WireGuard n'est pas moins sécurisée sur le plan cryptographique que l'utilisation de WireGuard seul ("sécurité hybride").

Des travaux sont actuellement en cours pour vérifier formellement le protocole, algorithmes cryptographiques et mise en œuvre pour fournir une preuve mathématique de fiabilité. Pour le moment, à l'aide de ProVerif, une analyse symbolique du protocole et son implémentation de base dans le langage Rust ont déjà été réalisées.

Protocole Rosenpass est basé sur le mécanisme d'échange de clés authentifié post-quantique PQWG (Post-quantum WireGuard), construit en utilisant le cryptosystème McEliece, qui résiste à la force brute sur un ordinateur quantique. La clé générée par Rosenpass est utilisée sous la forme d'une clé symétrique WireGuard Pre-Shared Key (PSK), implémentant une couche de protection supplémentaire pour la connexion VPN hybride.

Rosenpass attribue deux ports UDP ; si le port N est spécifié pour rosenpass, il attribuera le port N+1 pour WireGuard.

Comme WireGuard, Rosenpass n'impose aucune séparation entre les clients et les serveurs. Si vous ne spécifiez pas l'option listen, Rosenpass et WireGuard choisiront des ports aléatoires ; c'est le mode client. Si vous ne spécifiez pas de point de terminaison, Rosenpass n'essaiera pas de se connecter au pair et attendra à la place les connexions des pairs. C'est le mode serveur. Vous pouvez spécifier les deux. Sauter les deux n'est pas interdit mais pas très utile non plus.

Rosenpass fournit un processus d'arrière-plan distinct qui est utilisé pour générer des clés WireGuard prédéfinies et sécuriser les échanges de clés pendant le processus de poignée de main à l'aide de techniques cryptographiques post-quantiques.

Comme WireGuard, les clés symétriques de Rosenpass sont mises à jour toutes les deux minutes. Pour protéger la connexion, des clés partagées sont utilisées (de chaque côté, une paire de clés publique et privée est générée, après quoi les participants se transfèrent les clés publiques).

Comme pour toute application, il y a un petit risque de problèmes les critiques de sécurité (tels que les débordements de tampon, l'exécution de code à distance) ; l'application Rosenpass est écrite dans le langage de programmation Rust, qui est beaucoup moins sujet à ce genre de problèmes. Rosenpass peut également écrire des clés dans des fichiers au lieu de les fournir à WireGuard. Avec un peu de script, le mode indépendant du déploiement peut être utilisé pour exécuter votre application dans un conteneur, une machine virtuelle ou un autre hôte. Ce mode peut également être utilisé pour intégrer des outils autres que WireGuard avec Rosenpass.

Il convient de mentionner que Rosenpass présente certains inconvénients ; il s'exécute en tant que root, ce qui nécessite l'accès aux clés privées WireGuard et Rosenpass, prend le contrôle de l'interface et fonctionne avec exactement une interface. Si vous n'êtes pas sûr d'exécuter Rosenpass en tant que root, vous devez utiliser le mode autonome pour créer une configuration plus sécurisée à l'aide de conteneurs, de prisons ou de machines virtuelles.

Le code de la boîte à outils est écrit en Rust et est distribué sous les licences MIT et Apache 2.0. Les algorithmes et primitives cryptographiques sont empruntés aux librairies C liboqs et libsodium.

La base de code publiée se positionne comme une implémentation de référence : sur la base des spécifications fournies, des options d'outils alternatives peuvent être développées à l'aide d'autres langages de programmation.

Enfin, si vous souhaitez en savoir plus, vous pouvez consulter les détails dans le lien suivant.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.