Article 5 sur 124 min de lecture

On ne fait jamais confiance au transport

Les radios ont un bilan de sécurité médiocre. Plutôt que de débattre pour savoir laquelle est assez sûre, AirNox part du principe qu’aucune ne l’est, et construit la sécurité une couche au-dessus.

Une capsule scellée, munie d’un cadenas, qui traverse trois voies de transport bruyantes entre un ordinateur portable et un téléphone
Les supports sont bruyants. La capsule, non.
Sur cette page

Un support n’est pas une preuve d’identité

L’appairage (pairing) Bluetooth prouve que deux appareils ont mené à bien la procédure d’appairage. La proximité NFC prouve que quelque chose s’est trouvé à quelques centimètres d’un lecteur. Un QR code prouve qu’une caméra a vu un motif. Rien de tout cela ne prouve qui se trouve de l’autre côté, et chacun de ces supports a déjà été attaqué publiquement : écoute clandestine, affaiblissement forcé de la robustesse des clés, contact NFC relayé à l’autre bout d’une ville avec deux téléphones ordinaires.

Nous traitons donc les trois comme hostiles. N’importe qui peut écouter. N’importe qui peut injecter. N’importe qui peut relayer. Rien de ce qu’affirme le support n’est pris comme la preuve de quoi que ce soit.

Trois couches : les supports hostiles en bas, la session AirNox au milieu, votre décision au-dessus
Les supports en dessous. La session au-dessus. Vous, tout en haut.

Un seul appairage

La confiance s’établit une seule fois, lorsque vous appairez l’ordinateur et le téléphone. L’ordinateur affiche un QR code et le téléphone le scanne. Puis les deux écrans affichent un code court, et vous les comparez. S’ils correspondent, les deux appareils se sont mis d’accord sur des clés qu’aucun support n’a jamais vues, et chacun connaît désormais l’identité de l’autre. S’ils ne correspondent pas, quelque chose s’est interposé, et vous arrêtez.

Cette comparaison est le seul moment où un humain vérifie le canal, et c’est le moment qui compte. Tout ce qui suit hérite de la confiance que vous avez établie de vos propres yeux.

Trois étapes : scanner un QR code, comparer un code court sur les deux écrans, appairé ; en dessous, les messages modifiés, rejoués ou dans le désordre sont rejetés
Une comparaison, puis la session prend le relais.

La session

Une fois l’appairage fait, chaque message entre l’ordinateur et le téléphone voyage dans une session qui appartient au portefeuille. Elle est chiffrée de bout en bout (end-to-end) : un support sur écoute ne laisse fuiter que du bruit. Elle est à authentification mutuelle (mutually authenticated) : chaque côté sait que le message vient de l’appareil avec lequel il a été appairé, et non d’un imposteur. Elle est liée au support sur lequel elle circule : un message capturé sur un chemin ne peut pas être rejoué sur un autre.

La session repose sur un modèle de handshake moderne et largement étudié, du type de ceux qu’utilisent les tunnels sécurisés les plus répandus. Nous n’improvisons pas en cryptographie.

Ce qui est rejeté

Un message modifié en transit échoue à l’authentification : rejeté. Un message rejoué arrive hors séquence : rejeté. Même sort pour un message qui arrive dans le désordre. Un message provenant d’un autre appareil que celui qui a été appairé ne passe jamais le handshake. Dans chaque cas, le téléphone n’affiche rien à signer, parce que rien de valide n’est arrivé.

C’est pourquoi la commodité du Bluetooth LE et du NFC ne coûte rien en sécurité. Le support peut être aussi faible qu’il le veut. Savoir si la radio sous-jacente est sûre, c’est une question à laquelle nous n’avons jamais besoin de répondre.

Sur n’importe quel support, la même session

La session ne sait pas si elle voyage par la lumière, par la radio ou par un contact. Vous pouvez appairer par QR, puis utiliser le Bluetooth LE au quotidien et le NFC sur un terminal, sans jamais appairer de nouveau. Changer de support ne change rien à ce qui est digne de confiance, parce que le support ne l’a jamais été.

Est-ce encore un air gap ?

Les puristes disent qu’un air gap, c’est la lumière et rien d’autre. Nous n’allons pas nous disputer sur le mot. Si vous voulez la version stricte, utilisez les QR codes et rien d’autre ; c’est toujours possible. La propriété qui nous importe se trouve sous le mot : l’appareil qui détient les clés n’a aucune route vers Internet, et les seules choses qui traversent sont une requête que le téléphone décode par lui-même et une signature qu’il a choisi de produire. Une session en Bluetooth LE préserve cette propriété. Ce qu’elle apporte en plus, c’est que vous continuez à vous en servir.

La série complète

  1. Partez du principe que l’ordinateur est compromis
  2. Mass Adoption Security : l’appareil de signature est un téléphone que vous possédez déjà
  3. Trois façons de franchir l’air gap : QR codes, Bluetooth LE et NFC
  4. Invisible sur les ondes : un appareil de signature qu’aucun scan ne repère
  5. On ne fait jamais confiance au transport
  6. Ce que vous montre le téléphone : l’analyse des transactions sur l’appareil de signature
  7. Le téléphone tient son propre registre
  8. Le coffre-fort de votre ordinateur : Argon2id et un profil qui résiste au cassage
  9. Des dApps sans portefeuille de navigateur
  10. Un serveur MCP avec des règles : des agents IA encadrés par des limites
  11. Un seul portefeuille protégé pour tout
  12. Petit et natif : C++, aucun runtime JavaScript, de la station de travail au Raspberry Pi

Rejoignez la liste d’attente

Laissez votre adresse e-mail et nous vous enverrons les annonces de sortie. Rien d’autre.