elqio

Le protocole

Cinq forces, chacune spécifiée avant d'être codée, chacune vérifiable. Les schémas sont exacts : ce qu'ils montrent est ce que le code fait.

1 / 5

Chiffré de bout en bout, post-quantique, sans porte dérobée.

Un message ELQIO est chiffré sur l'appareil de l'expéditeur et déchiffré sur celui du destinataire. Entre les deux, relais, opérateur, réseau et observateurs ne voient qu'un bloc opaque. Il n'existe aucune clé de service, aucun accès d'exception : il n'y a rien à remettre à qui que ce soit.

Hybride : deux méthodes, une seule doit tenir

L'échange de clés combine une courbe elliptique classique, X25519, et un mécanisme post-quantique, ML-KEM-768, dans la construction X-Wing. Si l'un des deux était cassé, par un ordinateur quantique ou par une faille découverte, l'autre protège encore le message. Les signatures sont composites de la même manière : Ed25519 et ML-DSA-65, ensemble.

Prévu pour changer

Chaque message porte le numéro de sa suite cryptographique. La suite actuelle s'appelle ELQIO-1. Une suite ELQIO-2 pourra la remplacer sans rupture : les appareils reconnaissent la suite d'un message et savent s'ils peuvent le lire.

Jusqu'aux relais

Les liaisons entre relais utilisent TLS 1.3 avec un échange hybride X25519MLKEM768, obligatoire : un relais qui ne le supporte pas n'est pas accepté dans le réseau.

Suite
ELQIO-1 (numéro 0x01)
Échange de clés
X-Wing = X25519 + ML-KEM-768 (FIPS 203)
Signatures
Ed25519 + ML-DSA-65 (FIPS 204)
Chiffrement
ChaCha20-Poly1305
Hachage, dérivation
SHA-256, HKDF-SHA-256
Entre relais
TLS 1.3, X25519MLKEM768, obligatoire
Bibliothèques
libcrux, RustCrypto. Auditées uniquement. Pas de crypto maison.
Chiffrement de bout en bout Un message devient un bloc opaque sur l'appareil de l'expéditeur, traverse trois relais et un observateur sans jamais s'ouvrir, et n'est lisible que sur l'appareil du destinataire. Une horloge marquée 2040 est barrée : ce qui est enregistré aujourd'hui restera illisible. bonjour expéditeur chiffré ici relais : bloc opaque, jamais ouvert opérateur, réseau, observateur ■■■■■■■■ bonjour déchiffré ici destinataire 2040 enregistré aujourd'hui, toujours illisible demain ELQIO-1 : X-Wing (X25519 + ML-KEM-768) · Ed25519 + ML-DSA-65 · ChaCha20-Poly1305
Deux personnes, un message qui devient un bloc opaque dès l'appareil, traverse tout, ne s'ouvre qu'à l'arrivée. L'horloge « 2040 » est barrée : enregistrer maintenant ne permettra pas de déchiffrer plus tard.
2 / 5

Anonymat des métadonnées : qui parle à qui n'est connu de personne.

Le contenu chiffré ne protège pas de tout. Savoir que deux personnes s'écrivent, à quelle heure, à quelle fréquence, suffit souvent à comprendre. ELQIO traite ces métadonnées comme une partie du message à protéger.

Trois relais, trois couches

Chaque circuit passe par un relais gardien, un intermédiaire et une sortie. Le message est enveloppé de trois couches de chiffrement ; chaque relais retire la sienne et ne connaît que le relais précédent et le suivant. Le gardien reste le même pendant environ un mois, ce qui limite le nombre de relais qui voient l'adresse IP d'un client.

Des fragments, pas des messages

Un message est découpé en fragments redondants par un code d'effacement, déposés dans des boîtes aux lettres pseudonymes sur plusieurs relais de stockage. Une partie des fragments suffit à reconstituer le message. Les étiquettes des boîtes sont dérivées de la session et changent : le relais qui stocke ne sait pas à qui appartient une boîte.

Prouvé, pas affirmé

Aucun relais ne voit ensemble l'adresse IP d'un client et une étiquette de boîte. Cette propriété est vérifiée par une preuve automatisée de non-liaison, rejouée à chaque démonstration sur les journaux de tous les relais du réseau.

Anonymat des métadonnées Un message est découpé en fragments redondants, enveloppé de trois couches de chiffrement, et passe par un relais gardien, un intermédiaire et une sortie ; chaque relais retire une couche et ne connaît que ses voisins. Les fragments sont déposés dans des boîtes pseudonymes sur plusieurs relais. Vu de l'extérieur, le trafic n'est qu'une suite de blocs identiques. message fragments redondants gardien retire la 1re couche intermédiaire retire la 2e sortie retire la 3e 7F2AC19D3B6E boîtes pseudonymes étiquettes changeantes vu de l'extérieur du bruit uniforme : aucun relais ne voit ensemble l'adresse IP et l'identité Chaque relais ne connaît que le précédent et le suivant.
Un message éclaté en fragments, trois couches d'enveloppes qui se pèlent à chaque relais, des boîtes aux étiquettes changeantes. L'observateur extérieur ne voit que du bruit uniforme.
3 / 5

Identités vérifiables, révocables, sans accès au contenu.

Chaque personne possède un identifiant unique, publié dans un registre d'événements signés, chaînés entre eux et répliqués. Tout le monde peut vérifier qu'un identifiant est authentique et qu'il n'a pas été modifié.

E3Q9-6FYS-FRWF-KQRZ-JEV2-ZC50-J78Y-KEKS

Un identifiant tient en 20 octets : une version, une adresse de 16 octets et une somme de contrôle de 3 octets, écrits en 32 caractères par groupes de quatre. L'alphabet exclut I, L, O et U pour qu'on ne confonde rien en le dictant. Un identifiant commence toujours par E. Sous forme de lien, il s'écrit elq:E3Q9-6FYS-….

Révoquer n'est pas lire

Un compte peut être révoqué, en cas d'usage criminel ou sur décision de justice. Un événement de révocation est ajouté au registre et le réseau cesse de relayer les messages de cette identité. Cela n'ouvre jamais l'accès à ce qui a été écrit : il n'existe aucune clé pour cela. La révocation est un acte public et vérifiable, comme la publication.

Identités vérifiables et révocables Un registre d'événements signés, chaînés les uns aux autres et répliqués sur plusieurs copies. Une identité y est publiée, puis marquée révoquée par un événement ultérieur ; le réseau cesse de relayer ses messages. À côté, un cadenas fermé : le contenu des messages reste inaccessible, révoquer n'est pas lire. Registre d'événements signés, chaîné, répliqué. #4F1A…#9C03…#E27B…#51D8… événementpublicationévénementrévocation signéE3Q9-6FYS…signéE3Q9-6FYS… E3Q9-6FYS FRWF-KQRZ… E3Q9-6FYS FRWF-KQRZ… RÉVOQUÉ le réseau cesse de relayer contenu toujours fermé copies répliquées, vérifiables par tous Révoquer n'est pas lire.
Un registre en chaîne signée, un sceau « révoqué » sur une identité, un cadenas de contenu qui reste fermé.
4 / 5

Le timbre : un modèle économique anonyme.

Un service qui ne vend ni publicité ni données doit être payé autrement. ELQIO reprend le modèle le plus ancien de la correspondance : le timbre. Chaque dépôt sur le réseau coûte un timbre.

Signé sans voir

Le timbre est acheté à l'opérateur, mais signé à l'aveugle : l'opérateur signe un timbre qu'il ne voit pas, comme on signerait sous une enveloppe opaque. Le relais peut ensuite vérifier que la signature est valide, sans que personne puisse relier ce timbre à son acheteur. L'opérateur sait qu'il a vendu cent timbres, jamais lequel a servi à qui.

Acheté par le réseau anonyme

L'achat lui-même passe par le réseau anonyme, par une session, et non par une connexion identifiable. Aucun achat ne se fait plus par connexion directe. Chaque relais gardien publie chaque jour un compte signé des timbres qu'il a acceptés : la comptabilité du réseau se vérifie, sans qu'un relais puisse nier un chiffre, et sans rien révéler des correspondances.

Le réseau radio local, de boîtier à boîtier, reste gratuit.

Signature
RSA-2048 à l'aveugle (RSABSSA, RFC 9474)
Unité
Un timbre par dépôt
Achat
Par le réseau anonyme, par session
Le timbre signé à l'aveugle À gauche, l'opérateur signe un timbre glissé dans une enveloppe opaque : il signe sans voir. Au centre, le timbre sorti de l'enveloppe, à bords dentelés, porte la signature valide. À droite, un relais vérifie la signature et accepte le dépôt. L'opérateur sait qu'il a vendu cent timbres, jamais lequel a servi à qui. opérateur vend des timbres enveloppe opaque l'opérateur signe sans voir signé · valide un envoi = un timbre relais vérifie, accepte l'achat lui-même passe par le réseau anonyme Cent timbres vendus. Lequel a servi à qui : inconnu. RSA-2048 aveugle (RSABSSA, RFC 9474) · pas de publicité, pas d'exploitation des données
Un timbre à l'ancienne, revisité, signé sous enveloppe opaque : le signataire signe sans voir.
5 / 5

Indépendant du transport, résilient.

Un message ELQIO est un bloc binaire, conçu au bit près pour tenir dans une trame radio LoRa. Ce qui tient dans la radio la plus lente passe partout ailleurs.

Pourquoi 48 octets

La charge utile LoRa la plus robuste en Europe, à 868 MHz avec le facteur d'étalement 12, est de 51 octets. Trois octets vont à l'en-tête du maillage radio, 48 au fragment. Un fragment Compact fait donc exactement 48 octets, dont 35 de données, et passe sur n'importe quel module LoRa, même le plus lent. Un fragment Étendu, pour les réseaux à bon débit, fait 960 octets, dont 947 de données.

Quatre chemins

  • Internet, par les relais du réseau.
  • Radio LoRa de proche en proche, par des boîtiers domestiques qui relaient de toit en toit.
  • Un signal audio encodé sur une simple ligne téléphonique, dans l'esprit des modems et du fax.
  • Satellite, par un opérateur partenaire, là où plus rien d'autre ne passe.

Si un canal tombe, un autre prend. La livraison différée est un cas normal du protocole, pas une panne : un message attend dans sa boîte le temps qu'il faut.

Des relais qui tiennent

Les relais se mettent à jour seuls, à partir de versions signées à seuil, c'est-à-dire par plusieurs mainteneurs à la fois, et de builds reproductibles, que n'importe qui peut recompiler et comparer. Le cœur est écrit en Rust, sans allocation système, pour tourner aussi sur les cibles embarquées des boîtiers.

Indépendant du transport Le même bloc de 48 octets part de la gauche et arrive identique à droite par quatre chemins : la fibre Internet, des ondes radio LoRa relayées de toit en toit, un signal audio sur une ligne téléphonique, et un satellite, par un opérateur partenaire. Si un chemin tombe, un autre prend. 48 octets 48 octets identique Internet radio LoRa, de toit en toit signal audio sur ligne téléphonique satellite, opérateur partenaire un canal tombe
Le même bloc voyage par quatre chemins, fibre, ondes radio entre toits, appel téléphonique, satellite, et arrive identique.

Deux profils de messages, et un troisième mode.

ProfilContenuTransportsÉtat
CompactTexte court, protection maximaleTous : radio, audio, Interneten service
RicheTextes longs, images, fichiers, voix en différéRéseaux à bon débiten service
Temps réelAppel vidéo point à point chiffréRéseaux à bon débiten service

État et spécifications

Le protocole, l'identité, le réseau de relais, les timbres et leur achat anonyme, les quatre transports, les trois profils, les applications et les devices sont spécifiés, codés en Rust et en service, en mode « timbre exigé » et TLS hybride obligatoire. Le réseau décrit ce qui tourne et comment c'est vérifié.

Le code et les spécifications ne sont pas publics. Les relecteurs y accèdent sur demande ; toutes les décisions de conception sont écrites et datées. Pour relire les spécifications : contribuer.