← Blog

Mettre à jour un firmware par LoRaWAN sans faire confiance au réseau

CRA & Dev #6 : la mise à jour FUOTA d'un capteur LoRaWAN, avec une image signée et vérifiée par MCUboot, un retour arrière automatique et un banc d'essai sur carte ESP32.

· 2 min read
crasecurityfirmwareembeddedlorawan

Le Cyber Resilience Act demande qu’un produit puisse être corrigé après sa mise sur le marché, et que le fabricant distribue ses mises à jour de manière sécurisée. Sur un serveur, c’est un téléchargement HTTPS. Sur un capteur LoRaWAN posé en haut d’un mât pour dix ans, qui reçoit quelques dizaines d’octets par trame et n’écoute presque jamais, c’est un autre métier.

Nous en avons fait le sixième épisode de CRA & Dev, notre wiki technique en accès libre : Mille fragments, une seule signature : mettre à jour un firmware par LoRaWAN.

Ce que vous y trouverez

L’idée tient en une phrase : le réseau transporte, le bootloader décide.

  • Le transport : les trois briques FUOTA de la LoRa Alliance (horloge, multicast, fragments redondants), et ce qu’elles coûtent en temps d’antenne avant d’écrire la moindre ligne de code.
  • La confiance : pourquoi la clé de groupe LoRaWAN n’authentifie pas un firmware, et comment une image signée, vérifiée par MCUboot au démarrage, règle la question quel que soit le chemin qu’elle a pris.
  • L’échec prévu : une image démarrée à l’essai, confirmée seulement quand elle a fait ses preuves, sinon remplacée par l’ancienne ; et le refus des anciennes versions vulnérables.

Tout est vérifié sur un vrai banc, deux cartes Heltec (ESP32, radio SX1276) sous Zephyr : une image forgée, une image altérée d’un bit, une ancienne version et une mise à jour incapable de rejoindre le réseau sont toutes refusées ou annulées. Le firmware complet et la simulation de bout en bout sont dans le dépôt, sous licence libre.

Pour qui

Les équipes qui livrent un capteur, une passerelle ou un équipement LoRaWAN et qui doivent pouvoir le corriger pendant toute sa durée de vie. C’est aussi un bon point de départ pour toute mise à jour sur un lien contraint : le principe de séparer transport et confiance vaut pour NB-IoT, Bluetooth ou une liaison série.

Si la question n’est plus « comment » mais « quoi faire pour notre produit, et dans quel ordre », c’est l’objet de notre accompagnement conformité CRA.

➡️ Vérifier si votre produit est concerné : 3 minutes, sans e-mail