Quatre couches, et la dernière est un refus.
Chacune est une chose distincte qui peut échouer, et chaque échec met fin à la session au lieu de la poursuivre sous une forme plus faible. Toute la conception tient dans cette phrase.
- Le transport
Du chiffré sur le fil
Le flux est scellé par XSalsa20-Poly1305 sous une clé convenue pour cette session seule. Un relais fait suivre des octets qu’il ne sait pas lire et ne détient aucune clé qui les ouvre.
XSalsa20-Poly1305 - La preuve
Une identité signée
Le serveur de rendez-vous signe l’identité de chaque extrémité avec une clé Ed25519. Le client vérifie cette signature avec la clé publique compilée en lui, puis vérifie que l’identité qu’elle contient est bien l’appareil que tu as appelé.
Ed25519 - L’accord
Une clé par session
Ce n’est qu’une fois la preuve tenue que les deux bouts établissent la clé symétrique. Avant ce point, il ne passe ni un pixel, ni une touche, ni un fichier.
1 clé · 1 session - Le refus
Et aucune branche qui continue
Mauvaise clé, mauvaise identité, mauvais type de message, aucune réponse : le client abandonne. Il n’existe pas de chemin qui retombe en clair — précisément le chemin que viserait un attaquant.
La session est refusée
