Mix network

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Présentation du fonctionnement de Tor par l'Electronic Frontier Foundation, un exemple de mix network


En informatique, un mix network, parfois appelé réseau de mélange[1] est une famille de modes de routage favorisant l'anonymat par l'usage de serveurs intermédiaires multiples re-routant l'information sans avoir accès à celle-ci ni connaitre son origine ou sa destination finale.

Le concept de mix network a été pour la première fois décrit par David Chaum en 1981[2]. Des exemples d'applications du principe de mix network sont le système de relai de courriel Mixmaster) ou le projet Tor.

Principe[modifier | modifier le code]

Le protocole s'appuie sur un ensemble de serveur de re-transmission des messages. Le réseau utilise des algorithmes de cryptographie asymétrique pour protèger ses communications.

Supposons qu'Alice souhaite envoyer un message à Bob à travers un mix network.

Notations[modifier | modifier le code]

Soient:

  • N le nombre de serveurs/nœuds appartenant au mix network
  • soit pour i \in [1..N]:
    • S_{i} les noms des serveurs du réseau
    • A_{i} leurs adresses respectives
    • K_{p_i} leurs clés publiques respectives
  • Par convention, on notera que Alice opère le serveur S_{A} et Bob le serveur S_{B}, avec adresses A_{A}, A_{B} et clé publiques K_{p_A}, K_{p_B}[3]
  • K_{p_x}(\scriptstyle\ data ) le résultat du chiffrement de la donnée \scriptstyle\ data par la clé publique K_{p_x}.
  • soit l'entier n la longueur du chemin d'envoi choisie par Alice (voir plus loin)[4]
  • soit C le chemin de l'envoi (voir plus bas), une n-uplet (C_{j}) avec _{j} \in [1..n] de n nœuds du réseau sur (S_{0},...S_{N}) , avec possible répétition.

Fonctionnement[modifier | modifier le code]

Initialisation du réseau[modifier | modifier le code]

Chaque nœud se déclare auprès de tous les autres participants en indiquant son adresse (suivant un protocole de communication quelconque) et sa clé publique.

Préparation de l'envoi[modifier | modifier le code]

Alice décide de la longueur de la chaîne d'envoi n en fonction du niveau de sécurisation (chaîne plus longue) et de rapidité (chaîne plus courte) qu'elle estime acceptable.

Alice choisit suivant une méthode discrétionnaire un chemin représenté par une liste C de n éléments de (S_{1},...S_{N}). Cette liste représente, dans l'ordre, la liste des serveurs par lesquels le message va transiter.

Cas simple[modifier | modifier le code]

Considérons le cas simple où n=1, soit le message va être transmis par Alice à un unique serveur qui va le renvoyer à Bob. Dans ce cas la liste C comporte unique élément C_{1} tel qu'il existe un indice j \in [0..N] tel que C_{1}=S_{j}.


Avantages[modifier | modifier le code]

Vulnérabilités[modifier | modifier le code]

Bibliographie[modifier | modifier le code]

  • David Chaum, « Untracable electronic mail, return addresses, and digital pseudonyms », Communications of the ACM, vol. 24, no 2,‎ 1981, p. 84-90 (présentation en ligne)

Référence[modifier | modifier le code]

  1. Présentation I2P (Invisible Internet Project), Free 64 bit programs, consulté le 15 novembre 2013
  2. (Chaum 1981)
  3. du point de vue formelle nous pouvons considérer que les serveurs d'Alice et de Bob font partie du réseau (cas d'une communication peer-to-peer, ou qu'ils sont extérieurs à ce réseau, les premiers et dernier serveurs du chemin servant alors respectivement de points d'entrée et de sortie au réseau peer-to-peer, la présentation du présent article article se place dans cette seconde perspective
  4. en général n << N, bien que ce ne soit pas théoriquement nécessaire