Le navigateur Tor mise sur le langage sécurisé Rust

Le navigateur Tor se tourne vers le langage sécurisé Rust, conçu pour éviter les corruptions de mémoire. Dans la lignée de Firefox, dont le code source sert de socle au projet Tor.

Le browser Tor, une version modifiée de Firefox afin d’inclure des fonctions préservant la vie privée, va se tourner davantage vers le langage de développement sécurisé Rust. Développé par la fondation Mozilla, ce langage est une version remaniée de C++ visant notamment à proscrire les erreurs de développement aboutissement à des corruptions de mémoire.

Mozilla a commencé à livrer de premiers composants écrits dans ce langage au cours de l’été 2016 et il doit prendre une place grandissante dans le développement du navigateur de la fondation, en remplaçant des parties de code aujourd’hui écrites en C et C++.

Réécrire le code C++ en Rust

Une évolution qu’il est donc logique de retrouver dans le projet Tor, dont les développeurs s’étaient déjà intéressés à Rust en 2014 sans que cette première marque d’intérêt ne débouche alors sur rien de concret. Au cours d’une réunion, qui s’est tenue la semaine dernière à Amsterdam, les développeurs de Tor se sont mis d’accord pour réécrire en Rust le code C++, conçu en complément de Firefox.

« Nous ne nous sommes pas affrontés à propos de Rust, Go ou du C++ moderne. Au lieu de cela, nous nous sommes concentrés sur nos objectifs pour migrer Tor vers un langage protégeant la mémoire et sur la façon de parvenir à ce résultat, écrit Sebastian Hahn, un développeur Tor. Avec ce cadre de référence, Rust faisait figure de candidat extrêmement fort pour les améliorations que nous considérions comme nécessaires. » S’il ajoute que les équipes de Tor ont encore beaucoup à apprendre sur ce nouveau langage, il mentionne quelques essais préliminaires encourageants sur de premières intégrations.

A lire aussi :

Le FBI a-t-il exploité une faille inconnue pour traquer les utilisateurs de Tor ?

Sécurité : Rust s’invite dans le multimédia de Firefox 48

DefecTor : s’appuyer sur le DNS pour désanonymiser Tor