Android et Chrome OS sont deux des produits les plus populaires de Google actuellement et l'entreprise mise sur eux pour étendre son influence dans l'industrie. Mais si Android domine déjà largement le marché des systèmes d'exploitation mobiles, on ne peut pas en dire autant de Chrome OS, son système d'exploitation destiné aux Chromebook. Toutefois, le géant de la recherche a déclaré récemment à propos des Chromebook que « l'avenir nous réserve des objectifs très intéressants ». Pour y parvenir, l'entreprise mise sur la sécurité et la confidentialité des données, une denrée très prisée par les utilisateurs ces dernières années.
Android et Chrome OS utilisent tous deux Linux donc leur sécurité passe inévitablement par la sécurité du noyau. Ainsi, Google soutient désormais tous les projets visant à renforcer la sécurité de Linux. La firme de Mountain View a annoncé jeudi qu'il finançait un projet visant à renforcer la sécurité de Linux en écrivant certaines parties du noyau avec Rust. Le but est, entre autres, d'éradiquer les bogues liés à la mauvaise gestion de la mémoire par le langage C, qui était jusque-là le seul langage utilisé dans le développement du noyau. Si le projet aboutit, il sera possible d'ajouter de nouveaux éléments écrits en Rust au cœur de Linux.
Un tel changement marquerait une évolution technologique et culturelle majeure pour un projet de logiciel libre qui est devenu la base de vastes pans d'Internet. Cette initiative [l'ajout de modules Rust au noyau Linux] améliorerait la sécurité en fermant certaines voies que les pirates peuvent utiliser pour attaquer les téléphones, les ordinateurs ou les serveurs. Depuis son lancement en 1991, Linux a été écrit uniquement dans le puissant, mais vieux langage de programmation C. Ce dernier a été développé en 1972 et serait plus vulnérable aux piratages que les langages de programmation contemporains.
En effet, Rust, qui est désormais géré par la fondation indépendante Rust, rend plus sûre l'écriture en mémoire pour les logiciels. Les pirates informatiques peuvent exploiter les problèmes de mémoire, en cachant du code supplémentaire malveillant dans des zones de mémoire hors limites. Rust vérifie ces problèmes et d'autres encore lorsque les programmeurs créent leurs logiciels. Et il a été le langage de programmation le plus apprécié pendant cinq années consécutives dans l'enquête annuelle de Stack Overflow auprès des développeurs.
« Rust représente la meilleure alternative à C et C++ actuellement disponible », a conclu l'équipe de sécurité de Microsoft en 2019. L'équipe a déclaré que Rust aurait empêché les problèmes de mémoire en cause dans 70 % de ses problèmes de sécurité importants. Et comme les vérifications de Rust ont lieu pendant la construction du logiciel, la sécurité ne se fait pas au détriment des performances lorsque le logiciel est en cours d'exécution. L'objectif du projet Linux on Rust n'est pas de remplacer tout le code C de Linux, mais plutôt d'améliorer certaines parties sélectives et nouvelles.
Une meilleure sécurité pour Linux est une bonne nouvelle pour tout le monde, sauf pour les pirates. Outre les systèmes d'exploitation Android et Chrome, les services Google tels que YouTube et Gmail reposent tous sur des serveurs fonctionnant sous Linux. Linux alimente aussi Amazon et Facebook, et est un élément incontournable des services de cloud computing. Il n'est pas certain que les dirigeants du noyau Linux s'accommoderont de Rust. Linus Torvalds, le créateur du noyau Linux, a déclaré récemment qu'il était ouvert au changement si les champions de Rust pour Linux prouvaient leur valeur.
Le contributeur Miguel Ojeda a proposé 13 changements nécessaires pour autoriser les modules Rust dans Linux afin de faire démarrer les choses. Google a déjà pris quelques mesures préliminaires pour rendre possible l'utilisation de Rust pour Linux Android. Google a également remercié les programmeurs de la communauté Linux qui ont lancé le projet Rust for Linux. « La communauté avait déjà fait et continue de faire un excellent travail pour ajouter le support de Rust au système de construction du noyau Linux », a déclaré Google dans un billet de blogue en avril dernier.
Par ailleurs, Google ne miserait pas uniquement sur Linux et Rust. Il dispose de son propre langage à mémoire sécurisée, Go, et d'un nouveau système d'exploitation appelé Fuchsia qu'il a commencé à utiliser dans son écran intelligent Nest Hub. « Google a investi dans de nombreux autres langages, outils et plateformes », a déclaré un porte-parole de la société. « Le fait d'avoir plusieurs solutions à des problèmes connexes, mais qui ne se chevauchent pas nécessairement, permet une pollinisation croisée de bonnes idées à réutiliser », a-t-il ajouté.
Et vous ?
Quel est votre avis sur le sujet ?
Que pensez-vous des efforts de Google pour l'utilisation de Rust dans le développement du noyau Linux ?
Voir aussi
Linus Torvalds souligne une bonne avancée du langage Rust dans le développement du noyau Linux, et aurait qualifié le C++ de « langage de m... », après le message de Google
Google finance deux développeurs du noyau Linux pour qu'ils se concentrent sur la sécurité afin de garantir la viabilité du projet de logiciel libre à long terme
La nouvelle réécriture de la pile Bluetooth d'Android est faite avec le langage Rust, Google devrait annoncer plus d'informations sur le code dans les prochaines semaines
Microsoft, Google, AWS, Huawei et Mozilla s'associent pour créer la Fondation Rust, une organisation à but non lucratif chargée de gérer le langage de programmation
La prise en charge de Rust pour le développement du noyau Linux fait l'objet d'une nouvelle série de discussions, après une proposition de RFC