Skip to content

TinyRail v0.14.0-beta.11

Pre-release
Pre-release

Choose a tag to compare

@tinyrail-publication tinyrail-publication released this 04 Sep 12:04
· 6 commits to main since this release

Le compte du broker se déduit du nom de la carte

Plus rien à saisir, plus rien à stocker, plus rien à re-synchroniser :

motdepasse = SHA256(nom + "albatros" + "xptrucks")

La carte le calcule, l'application aussi. Le compte ne peut donc plus manquer
ni diverger, et l'accès distant s'ouvre sans qu'on ait rien à configurer.

⚠️ CE QUE CETTE PROTECTION VAUT, ET CE QU'ELLE NE VAUT PAS. Les deux sels
vivent dans cette image, qui se télécharge sans authentification et qu'un
strings suffit à lire ; le nom d'une carte est diffusé en clair dans son
annonce BLE. Le mot de passe est donc reconstituable.

C'est un choix assumé, et il tient parce que le mot de passe n'est pas ce qui
protège l'installation : tout ce qui transite est chiffré de bout en bout avec
la clé d'appairage, que le broker n'a jamais et qui ne sort jamais de la carte.
Un tiers qui recalculerait ce mot de passe ne pourrait ni lire les trames, ni
en fabriquer que la carte accepte. Il pourrait occuper le compte et usurper le
sujet status : un dérangement, pas une prise de contrôle.

⚠️ Un compte posé par OP_SET_MQTT reste prioritaire, pour viser un broker tiers
dont les comptes ne suivent pas cette règle.

Vérifié de bout en bout sur une carte réelle : compte effacé, carte redémarrée,
connexion acceptée par le broker avec le mot de passe calculé, trames
déchiffrées lues sur le flux.

⚠️ Rappel pour qui efface un compte : CLEAR_MQTT n'écrit pas la NVS lui-même,
un interval s'en charge. Couper le courant aussitôt après laisse le compte en
place.