Un Mix Network transporte les messages par des ordinateurs qui relaient les messages, appelés nœuds ou mixes. Ceux-ci retirent des couches de chiffrement et traitent le trafic pour compliquer l'association entre messages entrants et sortants. David Chaum en a décrit les bases en 1981. L'objectif est de protéger la relation entre expéditeur et destinataire, pas seulement le contenu. Le résultat dépend du protocole, du reste du trafic et des capacités de l'observateur ; multiplier les intermédiaires ne garantit pas l'anonymat.
Anna envoie un message privé à Pierre. Personne ne peut le lire en chemin, mais un observateur peut voir des données quitter Anna puis arriver chez Pierre peu après. La répétition de ce schéma peut révéler leurs échanges. Ces indices sont des métadonnées : des informations autour du message, comme l'heure, la taille ou les adresses réseau. L'article de Chaum de 1981 traitait précisément ce problème du courrier électronique. Il ne demandait pas seulement comment fermer une lettre, mais comment rendre son parcours moins facile à suivre. Le réseau de mixage apporte donc une protection différente du seul chiffrement du contenu. [1] [2] [9]
Imaginons un parcours simplifié par A, B et C. Anna chiffre d'abord le message lui-même pour Pierre. Elle l'enveloppe ensuite pour le dernier nœud C, puis ce paquet pour B et enfin pour A. Elle utilise leurs clés publiques : des données permettant de créer une enveloppe chiffrée que seule la clé privée correspondante ouvre. Les clés sont des données numériques utilisées par le logiciel de chiffrement. La clé publique peut être partagée, tandis que chaque nœud garde sa clé privée secrète. Après avoir retiré sa couche, A apprend où envoyer le paquet intérieur, sans recevoir les autres clés. On prépare les couches à rebours pour que les nœuds les retirent dans l'ordre du trajet. C'est un exemple pédagogique, pas l'affirmation que tout réseau de mixage comporte exactement trois nœuds. [1] [4] [5]
Si seul le message d'Anna entrait dans A et qu'un seul message en sortait aussitôt, l'observateur aurait la tâche facile. Un mix classique par lots rassemble donc plusieurs messages avant de les transmettre. Le traitement groupé élargit les correspondances possibles entre entrées et sorties. Uniformiser la taille des paquets compte aussi : un envoi exceptionnellement volumineux resterait sinon reconnaissable. Le remplissage jusqu'à une longueur déterminée s'appelle padding. Le nombre de personnes ou de messages ne mesure pas à lui seul la confidentialité ; les connaissances préalables de l'observateur comptent également. [1] [3]
Le mix retire sa couche de chiffrement, vérifie le message selon le protocole et ne transmet pas une simple copie du même paquet extérieur. Il ne suffit donc plus de chercher des données identiques à l'entrée et à la sortie. L'ordre change également : Chaum proposait de trier les sorties du lot selon leurs données ; d'autres constructions procèdent autrement. L'essentiel est que l'ordre de sortie ne révèle pas celui d'arrivée. Le mix surveille aussi les messages présentés à nouveau. Le nœud suivant poursuit le travail, puis le dernier transmet l'envoi vers le destinataire. Le contenu destiné à Pierre reste protégé par un chiffrement distinct destiné au lecteur final. [1] [3] [5]
Les messages peuvent aussi circuler en continu avec des délais aléatoires différents, au lieu d'attendre un lot commun. Le lien temporel entre l'arrivée et le départ d'un paquet, c'est-à-dire un ensemble de données, devient moins direct. Le trafic de couverture ajoute des messages sans communication d'utilisateur, conçus pour ressembler aux vrais messages. Le seul mouvement des données révèle alors moins facilement quand Anna a réellement écrit. C'est le principe de Loopix, dont Nym reprend des idées. Cette protection coûte du trafic supplémentaire, du travail aux appareils et de l'attente. Les réglages de ces coûts influencent aussi la confidentialité obtenue. [3] [5]
Dans le modèle classique, au moins un mix qui respecte le protocole et ne révèle pas ses correspondances entre entrées et sorties peut garder cette association interne secrète. Honnête désigne ici ce comportement précis, pas un jugement général sur l'opérateur. Cela ne veut pas dire qu'un serveur honnête règle toutes les situations. Si l'attaquant reconnaît tous les autres messages du groupe, il peut retrouver celui d'Anna par élimination. L'observation aux extrémités, l'activité durable des utilisateurs et la possibilité de modifier le trafic comptent aussi. Les travaux de recherche précisent donc un modèle de menace : ce que l'adversaire peut exactement observer et contrôler. [1] [3]
Un attaquant peut réinjecter un paquet intercepté et chercher des répétitions correspondantes à l'autre extrémité. Il peut essayer de marquer un message en modifiant ses données, retarder le trafic ou supprimer certains messages. Les défenses comprennent donc des contrôles d'intégrité et une mémoire des répétitions. Le format Sphinx, utilisé notamment par Loopix et Nym, fournit les éléments nécessaires à ces contrôles. Dans certains systèmes, les messages de couverture aident aussi à détecter les pertes. Ce sont des protections précises, soumises à des hypothèses précises, pas une promesse d'invulnérabilité. Même chiffré, un message peut ne jamais arriver. [3] [5]
Anna peut fournir à Pierre des instructions chiffrées pour le retour. Il les utilise pour répondre sans connaître son adresse réseau habituelle. Chaum décrivait déjà de telles adresses de retour. Certains systèmes modernes emploient des blocs de réponse à usage unique, appelés SURB (Single-Use Reply Block). Cet usage unique participe à la protection ; ce n'est pas une contrainte arbitraire. Un pseudonyme peut montrer que plusieurs messages viennent du même auteur sans dévoiler son identité civile, mais il relie aussi ces messages. Si Anna se présente dans le texte ou envoie des renseignements personnels, cacher le trajet n'annule pas cette révélation. [1] [10]
Tor fait également passer les communications par plusieurs intermédiaires, mais privilégie des temps de réponse courts pour permettre la navigation web. Un observateur bien placé aux deux extrémités peut comparer les horaires et les volumes du trafic. Tor possède aussi des mécanismes de padding : prétendre qu'il n'utilise aucun trafic de couverture serait inexact. Les mixnets classiques acceptent davantage d'attente, par exemple pour délivrer des messages. Loopix étudie un compromis avec des délais de l'ordre de la seconde. Nym distingue son mode mixnet du mode dVPN, plus rapide. En mode dVPN, les données passent par des tunnels chiffrés plutôt que par le mélange de messages décrit ici. Ni le nom ni la longueur du trajet ne suffisent : il faut regarder le transport réel et la menace visée. [4] [9] [8] [3] [5] [11]
Un portefeuille Bitcoin est une application qui permet de recevoir et d’envoyer des paiements. Si un portefeuille ou une autre application prend en charge un chemin adapté, un mixnet peut rendre plus difficile le rattachement de son trafic à une connexion Internet précise. Ce n'est ni une fonction automatique du protocole Bitcoin ni un service de mélange de monnaies. Les liens publics entre transactions Bitcoin restent dans la blockchain, le registre partagé des transactions ; cacher leur trajet ne les efface pas. BIP 324 chiffre lui aussi les connexions entre nœuds, sans mélanger les messages pour masquer l'expéditeur. Il faut distinguer la confidentialité du transport de celle de l'historique des paiements. Mix Network éclaire la première couche ; il ne transforme pas tout paiement en espèces anonymes. [6] [7]
Pour une vision complète, lisez aussi David Chaum, Confidentialité de Bitcoin, Pseudonymat, Bitcoin, Bitcoin Anonymity Networks, BIP324.