Premier atterrissage du langage de programmation Rust sur une puce-système IoT[EDITION ABONNES] Réalisée par le britannique 42 Technology, l’application logicielle implantée sur une puce de connexion LTE/NB-IoT de Nordic Semiconductor (le boîtier-système nRF9160 SiP en l'occurrence) est l'une des premières applications professionnelles dans l’IoT écrites avec le langage de programmation Rust.... L’objectif avec cette réalisation est, selon la société, de montrer qu’il est possible d’accélérer les phases de développement de produits et de systèmes IoT cellulaires robustes et sécurisés à faible coût et faible consommation, en vue de “débloquer“ de nouveaux marchés pour les produits industriels et le grand public : suivi et surveillance d'actifs en temps réel, comptage, ville intelligente, etc. 42 Technology conçoit et développe des produits et systèmes connectés intégrant capteurs, composants électroniques et liens de communication : vanne numérique IoT pour les bouteilles de gaz industrielles, système de surveillance des conditions en temps réel pour la supervision de postes de réseau électrique... « Notre objectif est d'aider à éliminer les vulnérabilités de sécurité que trop de gens ont constatées, par exemple avec les caméras de sécurité résidentielles à faible coût, les concentrateurs intelligents et les équipements médicaux tels que les pompes à insuline », explique Jonathan Pallant, qui a dirigé le programme de développement d'applications chez 42 Technology et qui est également membre fondateur du groupe de travail Rust Embedded.
Pour ce langage, il existe aujourd’hui des outils de développement puissants, en particulier un compilateur capable de mettre en évidence des problèmes potentiels dès le début du processus de développement (en particulier les problèmes d’allocation mémoire) sans entraîner de temps supplémentaire d’exécution, et ce grâce à des technologies de vérification formelle intégrées dans le processus de compilation. La démonstration de l'application 42 Technology repose sur le dispositif SiP (System in Package) mis au point par Nordic Semiconductor qui est un modem LTE-M / NB-IoT multimode pour la connexion d’équipements IoT au réseau mobile, avec en sus un GPS, le tout géré par un cœur de processeur Arm Cortex-M33 (lire notre article ici). Les fonctions de sécurité TrustZone de l’architecture Armv8-M mise en oeuvre pour ce processeur sont ici intéressantes du point de vue d’une application Rust, car elles permettent aux applications et services associés de fonctionner de manière sécurisée. Lors de récents essais sur le terrain, l’application Rust de 42 Technology a notamment permis d’établir des connexions cryptées sécurisées avec les services de cloud Amazon via un réseau Cat-M LTE en cours de déploiement au Royaume-Uni par l’opérateur de réseau mobile Telefonica O2. |