Le raisonnement est simple. Les humains ne sont pas infaillibles. Or, les codeurs sont des humains. Donc, leurs lignes de code sont susceptibles de contenir des erreurs, lesquelles peuvent potentiellement s'avérer graves.
Il suffit de régulièrement utiliser un smartphone ou un ordinateur pour constater que certaines applis, même développées par des entreprises aguerries, nécessitent des mises à jour régulières en raison de failles de sécurité découvertes un peu trop tard.
L'avenir sera-t-il différent? C'est fort possible d'après Wired, qui n'est pas le seul à croire dur comme fer à l'avènement d'un nouveau langage informatique. Rust, c'est son nom, a pour vocation d'empêcher les codeurs et les codeuses de réaliser un certain nombre d'erreurs pouvant compromettre la sécurité de nos appareils et de nos données.
Avec Rust, certaines failles de sécurité ne peuvent tout simplement pas voir le jour. Exit les patchs de sécurité devant être conçus à la hâte pour colmater les brèches.
Ce langage ne date pas tout à fait d'hier: il vient de souffler sa douzième bougie –mais les grandes innovations ne se font pas en un jour. À l'origine, c'était un projet parmi d'autres, imaginé par un programmeur de chez Mozilla, principalement connu pour son navigateur Firefox. Douze ans, c'est peu, rappelle Wired, qui signale que C, l'un des langages les plus utilisés de notre époque, est désormais quinquagénaire.
En fait, Rust a progressivement tiré son épingle du jeu, pour finir par être utilisé dès 2019 par Microsoft, Google et Amazon Web Services. Les trois entreprises ont même fini par monter la Rust Foundation, organisme à but non lucratif destiné à étendre peu à peu l'influence de ce langage si prometteur.
Convaincues également, Mozilla et Huawei ont fini par embarquer dans l'aventure en 2020. Et au début de l'automne 2022, on a même vu apparaître du Rust du côté de chez Linux.
L'autoroute du succès
Dave Kleidermacher, vice-président du pôle sécurité et vie privée d'Android, n'y va pas par quatre chemins: «Ce langage est en train de devenir viral.»
Il faut dire que Rust semble particulièrement sûr. Parmi ses points forts, on compte le fait que contrairement à ces bons vieux langages pleins de qualités que sont C et C++, il a été conçu pour que les programmes ne soient jamais en mesure d'utiliser accidentellement les données de l'ordinateur sur lequel ils se trouvent.
Les utilisateurs et utilisatrices peuvent donc dormir sur leur deux oreilles en ayant l'assurance qu'aucun de leurs dossiers cachés ne sera ouvert, même de façon non intentionnelle.
Ce succès croissant ne plaît toutefois pas à tout le monde. Du côté des accros à Linux, on affirme que l'intégration de Rust va surtout rendre les choses plus complexes, car sa cohabitation avec les autres langages employés ne peut que créer de l'instabilité. Arguments retoqués par les défenseurs de ce langage, qui mettent justement en avant l'incroyable fluidité avec laquelle il parviendrait à coexister avec ses congénères.
Se pose en tout cas le problème de la transition, car il est rarement simple de passer d'une architecture à une autre sans faire s'effondrer le château de cartes. Et ce sont justement les qualités de Rust qui pourraient poser problème: car passer d'un langage riche en failles potentielles à un autre bien plus sécurisé –et sécurisant– va engendrer plus d'une erreur, que la main humaine devra rectifier.
Irrémédiable? Pas du tout, selon Josh Aas, directeur de l'Internet Security Research Group, qui œuvre pour un internet plus sûr. «Oui, c'est beaucoup de travail, mais rappelez-moi de combien de billions de dollars et de combien de codeurs de talent dispose le monde de la tech? Nous avons les ressources.» La rustisation du monde de la programmation est en marche.