Sortie d'Arti 1.1, l'implémentation officielle de Tor dans Rust

Les développeurs du réseau anonyme Tor ont publié la version du projet Arti 1.1.0, qui développe un client Tor écrit en langage Rust. La branche 1.x est marquée comme étant adaptée à une utilisation par les utilisateurs généraux et offre le même niveau de confidentialité, de convivialité et de stabilité que l'implémentation principale du C. Le code est distribué sous les licences Apache 2.0 et MIT.

Contrairement à l'implémentation C, qui a d'abord été conçue comme un proxy SOCKS puis adaptée à d'autres besoins, Arti est initialement développé sous la forme d'une bibliothèque modulaire intégrable pouvant être utilisée par diverses applications. De plus, lors du développement d'un nouveau projet, toute l'expérience passée en matière de développement de Tor est prise en compte, ce qui évite les problèmes architecturaux connus et rend le projet plus modulaire et efficace.

La raison invoquée pour réécrire Tor dans Rust est le désir d’atteindre un niveau plus élevé de sécurité du code en utilisant un langage sécurisé en mémoire. Selon les développeurs de Tor, au moins la moitié de toutes les vulnérabilités surveillées par le projet seront éliminées dans une implémentation de Rust si le code n'utilise pas de blocs « dangereux ». Rust permettra également d'atteindre des vitesses de développement plus rapides que l'utilisation du C, grâce à l'expressivité du langage et aux garanties strictes qui permettent d'éviter de perdre du temps en double vérification et en écriture de code inutile.

La version 1.1 introduit la prise en charge des ponts pour contourner le blocage et le transport des plug-ins. Parmi les transports testés avec Arti pour masquer le trafic et lutter contre les blocages, obfs4proxy et snowflake ont été notés. Les exigences relatives à l'environnement de construction ont été augmentées - la construction d'Arti nécessite désormais au moins la branche Rust 1.60.

La prochaine version (1.2) devrait prendre en charge les services onion et les fonctionnalités associées, telles que le protocole de contrôle de congestion (RTT Congestion Control) et la protection contre les attaques DDoS. L'atteinte de la parité avec le client C est prévue pour la branche 2.0, qui proposera également des liaisons pour utiliser Arti dans le code dans divers langages de programmation. Au cours des prochaines années, les travaux se concentreront sur la mise en œuvre des fonctionnalités nécessaires au fonctionnement des relais et des serveurs d'annuaire. Lorsque le code Rust atteint un niveau pouvant remplacer complètement la version C, les développeurs ont l'intention de donner à Arti le statut d'implémentation principale de Tor et d'arrêter de maintenir l'implémentation C. La version C sera progressivement supprimée pour permettre une migration en douceur.

Source: opennet.ru

Ajouter un commentaire