Documente Academic
Documente Profesional
Documente Cultură
Rédacteurs :
Contributeur Organisme Rôle
Simon Boche CIDre UR1 Contributeur
Christophe Bidan CIDre Supélec Contributeur
Gilles Guette CIDre UR1 Contributeur
Nicolas Prigent CIDre Supélec Contributeur
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée Confidentiel CPP
1 Introduction
Ce document constitue le premier livrable de la tâche 3 du projet ANR AMORES (Architecture
pour les systèmes résilients MObiles et ubiquitaiRES). Il comprend un état de l’art des protocoles
de routage respectueux de la vie privée.
Le projet AMORES est construit autour de trois applications ayant trait à la mobilité : co-
voiturage dynamique, calcul d’itinéraires multimodaux en temps réel et réseau social mobile. Pour
ces trois applications, l’objectif principal du projet est de définir les geo-primitives de communi-
cation au niveau intergiciel permettant de fournir les services géo-localisés requis, et cela tout en
assurant le respect de la vie privée, en particulier au niveau de la localisation.
Les géo-primitives requièrent des composants de base, tels que le routage, des primitives crypto-
graphiques ou encore la géo-localisation (extérieure ou intérieure). La problématique du respect
de la vie privée se pose également au niveau de ces composants de base et en particulier des traces
numériques qui peuvent être générées par leur utilisation.
Dans ce document, nous précisons dans un premier temps la terminologie et les définitions
utilisées pour qualifier les notions fondamentales liées au respect de la vie privée puis nous explici-
tons les propriétés retenues pour caractériser le respect de la vie privée. Nous analysons ensuite les
concepts généraux utilisés dans les protocoles de routage pour protéger le respect de la vie privée
puis nous explicitons les modèles d’attaquants considérés dans ce document. Enfin, nous terminons
par une analyse de différents protocoles de routage respectueux de la vie privée existant.
2 Terminologie et définitions
Le respect de la vie privée est un sujet très vaste. Dans [PHDK05], Pfitzmann et al. définissent
un certain nombre de notions liées au respect de la vie privée dans le contexte des réseaux de
communication.
Définition 1
Émetteur : nœud à l’origine d’un message.
Définition 2
Receveur : nœud étant destination d’un message.
Définition 3
Communication : échange de message entre un émetteur et un receveur.
Le modèle est formalisé de la façon suivante : des émetteurs envoient des messages à travers un
réseau de communication à des receveurs. Les émetteurs et les receveurs sont des sujets du réseau
de communication. Dans ce contexte, un attaquant cherche à répondre la question suivante : qui
(émetteur) communique avec qui (récepteur) ?
Ainsi, une méthode pour protéger la vie privée consiste à assurer l’anonymat des sujets. La no-
tion d’anonymisation n’est pas seulement lié à l’identité, mais aussi à toute information permettant
d’identifier de manière unique le sujet.
Définition 4
Anonymat (Pfitzmann) : un nœud est anonyme si il n’est pas identifiable dans un ensemble de
nœuds, appelé ensemble d’anonymat. On parle aussi de k-anonymité (le nœud se trouvant alors
dans un ensemble d’anonymat composé de k éléments).
À partir de cette définition, il est possible de quantifier l’anonymat. Plus l’ensemble d’anonymat
est grand, plus le sujet est anonyme. La taille de l’ensemble d’anonymat est maximale si elle
concerne l’ensemble des nœuds réalisant une même action (envoyer ou recevoir). De plus, l’ensemble
d’anonymat n’est pas fixe dans le temps, mais change en fonction de l’activité des nœuds.
Dans notre contexte, cette définition se décline pour les émetteurs et les receveurs :
1/23
AMORES L3 – État de l’art des protocoles de routage
Confidentiel CPP respectant la vie privée
Définition 5
Anonymat de l’émetteur : l’émetteur d’un message est anonyme si cet émetteur n’est pas identi-
fiable dans l’ensemble d’anonymat des émetteurs.
Définition 6
Anonymat du récepteur : le récepteur d’un message est anonyme si ce récepteur n’est pas identifiable
dans l’ensemble d’anonymat des récepteurs.
Dans un de réseau de communication ad hoc, un message est relayé par des nœuds intermé-
diaires. Le respect de la vie privée concerne donc également ces nœuds.
Définition 7
Anonymat d’un nœud intermédiaire : un nœud intermédiaire est anonyme s’il n’est pas identifiable
dans l’ensemble des nœuds intermédiaires.
L’anonymat n’est pas suffisante pour assurer la vie privée des nœuds du réseau. Une autre notion
indispensable est la notion d’inassociabilité.
Propriété 1
Inassociabilité (unlinkability). L’inassociabilité de deux ou plus items d’intérêts (nœuds, messages,
actions. . . ) d’un point de vue d’un observateur signifie qu’il ne peut pas distinguer si ces items
sont liés entre eux.
Un item d’intérêt possible peut être par exemple la position (absolue et relative) d’un nœud.
Cette notion de position est primordiale pour assurer le respect de la vie privée : la position d’une
personne peut permettre par exemple de déterminer ces lieux préférées ou bien même, si la position
relie la personne à un cabinet médical, une idée de son état de santé.
Néanmoins, assurer le secret de la position (c’est à dire, l’impossibilité à partir d’une identité
de connaitre sa position) n’est pas suffisant. En effet, le secret de la position empêche la création
d’un lien entre l’identité et la position, mais pas entre la position et l’identité. Or, en se basant
sur les travaux de Gambs et al. [GKdPC10], il est possible à partir de l’historique des points
géolocalisés de retrouver des points d’intérêts d’une personne. Ainsi, le couple lieu de domicile -
lieu de travail est un quasi identifiant (c’est-à-dire que l’ensemble d’anonymat d’une personne est
très faible).
Gambs et al. utilise la position absolue de nœud. La position absolue utilise un système de
coordonnées (le plus souvent longitude et lattitude) pour repérer la position sur la planète. Néan-
moins, la position relative (déterminée à partir d’un point de référence, la distance par rapport à
ce point et une direction) permet elle aussi d’identifier une personne. En effet, il est possible de
transposer une position relative en une position absolue si le point de référence dispose d’une po-
sition absolue. Au delà de cette conversion, la position relative permet de décrire des liens sociaux
entre les personnes.
Il est donc nécessaire d’empêcher la création d’un lien bijectif entre l’identité d’un nœud et sa
position.
Propriété 2
Inassociabilité nœud - position. Il ne doit pas être possible de relier un nœud à sa position et
inversement.
Au dela de l’inassociabilité nœud - position, nous pouvons distinguer dans les réseaux adhoc,
plusieurs types d’inassociabilité :
Propriété 3
nassociabilité émetteur - message. Il ne doit pas être possible de relier un message à son émetteur.
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
Propriété 4
Inassociabilité récepteur - message. Il ne doit pas être possible de relier un message à son recepteur.
Propriété 5
Inassociabilité message - message. Il ne doit pas être possible de relier deux messages provenant
d’un même émetteur et à destination du même recepteur.
3.2 MIX-Net
Dans un réseau classique, un routeur connait l’expéditeur et le destinataire du message. Pour
protéger l’identité de ces nœuds ainsi que le contenu du message d’un nœud intermédiaire mal-
veillant, il est possible d’utiliser le mécanisme de MIX-Net [Cha81].
Le principe est le suivant : chaque nœud intermédiaire possède une clé de chiffrement (clé
publique ou clé symétrique). Le nœud source va utiliser la clé de chiffrement du dernier nœud
intermédiaire pour chiffrer son message. Le résultat est chiffré avec la clé de l’avant dernier nœud
intermédiaire. Le processus est répété jusqu’à utiliser la clé de chiffrement du premier nœud inter-
médiaire (voir figure 1). Le résultat de cette processus est souvent appelé oignon cryptographique.
Le nœud source peut ensuite envoyer le message au premier nœud intermédiaire. Celui-ci est
le seul capable de déchiffrer le message. Le premier nœud intermédiaire peut ensuite envoyer le
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
message au deuxième nœud. Celui-ci ne peut pas savoir de qui vient originellement le message et
il ne connait que le prochain saut du message.
Ainsi, seul le premier nœud intermédiaire connait l’expéditeur du message. Réciproquement,
seul le dernier nœud intermédiaire connait le destinataire du message. Un nœud routeur va aussi,
pour rendre plus difficile l’analyse du traffic, temporiser avant la transmission d’un message ou
bien réordonner la file d’attente.
Certains protocoles, comme AODV-BR [LG00], utilisent le multi-chemin pour proposer d’autres
routes si la route principale ne fonctionne plus. D’autres, comme SPREAD [LLZ06], proposent
d’utiliser en parallèle toutes les routes, permettant ainsi de mixer la communication sur les diffé-
rentes routes.
4 Modèles d’attaquants
Le routage respectueux de la vie privée dans les réseaux ad hoc est un sujet déjà abordé dans la
littérature. Mais avant de pouvoir analyser les différentes solutions, nous devons définir un modèle
d’attaquant unique afin de pouvoir comparer les solutions existantes.
La sécurité d’une solution est analysée par rapport à un type d’attaquant donné. On parle
d’attaquant plus fort qu’un autre lorsque ses capacités sont plus importantes. Il existe différents
critères discriminant les attaquants sur un réseau ad hoc respectueux de la vie privée.
Notons aussi que la position de l’attaquant a elle même de l’importance. Ainsi, pour une
communication donnée un attaquant se trouvant sur la route entre deux nœuds ciblés aura accès
à plus d’informations et sera donc plus fort qu’un attaquant en dehors de cette route.
La combinaison de ces différents critères permet de définir un attaquant. Par exemple, nous
pouvons considérer un attaquant global et passif : cet attaquant a une vision globale du réseau et
ne fait qu’écouter les messages émis, sans en émettre lui même.
Dans la suite de ce document nous nous intéressons à deux types d’attaquants : l’attaquant
global passif et l’attaquant collusif actif.
Nous analysons dans cette partie cinq protocoles de routage. Chaque analyse se découpe de
la façon suivante : l’introduction explique les concepts généraux utilisés dans le protocole. Le
déroulement du protocole est ensuite étudié. Puis les propriétés de respect de la vie privée sont
ensuite détaillées. Enfin, nous terminons par évaluer les performances du protocole d’un point de
vue réseau.
Tous les protocoles étudiés sont des protocoles réactifs. De manière générale, tous les protocoles
font les hypothèses suivantes :
– Les liens entre les nœuds sont symétriques. Si un nœud A peut envoyer un message à un
nœud B, alors le nœud B peut envoyer un message au nœud A. L’ensemble des nœuds du
réseau forme ainsi un graphe non-orienté.
– Tous les protocoles étudiés utilisent de la cryptographie. Les nœuds doivent donc disposer
des ressources nécessaires pour utiliser des fonctions cryptographiques.
– Les ressources d’un attaquant ne sont pas illimitées (en temps et en mémoire). Notamment,
il ne peut casser les algorithmes de chiffrement en testant toutes les clés possibles.
5.1 ANODR
ANODR (ANonymous On Demand Routing) [KH03] utilise le concept de la trappe crypto-
graphique (trapdoor ) et du routage en oignon pour assurer les propriétés de respect de la vie
privée.
Chaque nœud i possède une clé secrète KSi et une clé publique KPi .
Dans ANODR, l’oignon cryptographique va être construit au fur et à mesure de la propagation
d’un message de découverte de route. Il va ensuite être utilisé par la destination pour contacter la
source.
L’ensemble des nœuds sur la route est numéroté de 0 à n, avec 0 le nœud source et n le
nœud destinataire. Les auteurs supposent que chaque nœud i du réseau ad hoc possède une clé
symétrique que lui seul connait, notée Ki .
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
Demande de route
Lorsque le nœud source souhaite découvrir un chemin pour une destination donnée, il envoie
un message de la forme :
< RREQ, Seqnum, trdest , onioni−1 = {Ni−1 , {N... , {N0 }K0 }K... }Ki−1 >
Avant tout traitement, le nœud vérifie s’il a déjà traité le message en utilisant Seqnum et en
le comparant avec les numéros de séquences déjà rencontrés. Ceux-ci sont stockés dans un cache.
S’il a déjà traité le message, il le supprime. Sinon, il enregistre Seqnum dans le cache et teste
ensuite l’ouverture de la trappe. Si l’ouverture échoue, le nœud i diffuse le message en modifiant
tout d’abord l’oignon :
Réponse
– le champ onionn−1 du paquet RREQ émis par le nœud n − 1 contient la route utilisée par le
message RREQ pour arriver à destination. Cette route va être utilisée en sens inverse pour
joindre le nœud source.
alea1 alea2 1
... ... ...
Ni key_current_hop
alea3 Ki
... ...
Transfert de données
Lorsque le nœud source souhaite envoyer un message au nœud destinataire, il lui suffit de
mettre en en-tête du message le pseudonyme P1 reçu lors de la phase de découverte de route puis
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
d’envoyer le message. À l’aide de sa table de routage, le nœud 1 peut déterminer que le message
est pour lui et à quel nœud il doit transmettre le message. Il remplace alors le pseudonyme P1 par
le pseudonyme P2 . Les nœuds intermédiaires procèdent aux mêmes opérations, permettant ainsi
d’envoyer de proche en proche un message de la source vers la destination.
5.1.3 Performances
ANODR utilise de façon intensive le chiffrement et le déchiffrement, et cela pour tous les nœuds
du réseau lors d’un message RREQ et pour tous les nœuds participant à la route pour un message
RREP . Cela implique un temps de latence incompressible sur chaque nœud du réseau. De plus,
les messages ne sont pas de taille fixe. Ainsi, le champ onion grandit au fur et à mesure de la
traversée du réseau. Cela nécessite donc un temps de transmission plus important et donc une
consommation d’énergie elle aussi plus importante.
Notons qu’un autre protocole, le protocole AnonDSR [SKY05], très proche d’ANODR, tente
de corriger le problème de temps de latence et plus largement de performances en utilisant un
système d’index permettant d’éviter de tester l’ensemble des clés possédées par un nœud.
5.2 ASR
Comme ANODR, Le protocole ASR (Anonymous Secure Routing) [ZWK+ 04] repose sur l’uti-
lisation d’une trappe permettant de protéger l’identité du destinataire.
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
Demande de route
Ui = (Ui−1 ⊕ Ni ) >> p
– Ni est un nombre aléatoire choisi par le nœud i et de taille p.
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
Il effectue dans un premier temps les mêmes vérifications qu’un nœud intermédiaire.
Une fois ces vérifications faites, il compare Un−1 et U0 en recherchant une suite de k ∗ p bits en
commun (avec k ∈ N) afin de déterminer si le nombre de saut est inférieur à la valeur maximale.
Si le nombre de saut est supérieur à la valeur maximale, alors le message est suprimé.
Réponse
Le nœud destinataire n, une fois qu’il a reçu un message de demande de route, envoie le message
suivant :
Il déchiffre dans un premier temps le premier champ du message en utilisant sa clé secrète KSi .
Si le déchiffrement réussit, Ni+1 est utilisé pour déchiffrer le deuxième champ. Il vérifie ensuite si
le message RREP vient bien du destinataire du message. Pour cela, le nœud chiffre seq avec la
clé de session Ks . Il compare ensuite ce résultat au champ {seq}Ks du message RREQ ayant pour
numéro de séquence seq (ces informations sont disponibles dans le cache du nœud). Si c’est bien
le destinataire qui envoie ce message RREP , le nœud i génère à son tour une clé aléatoire Ni et
envoie le message suivant :
Il enregistre ensuite dans sa table de routage (voir figure 4) les informations suivantes : seq,
KPi−1 , Ni , Ni+1 .
Le nœud source recevant un message RREP effectue les mêmes opérations qu’un nœud inter-
médiaire recevant un message RREP (nonobstant la diffusion d’un nouveau message RREP ).
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
Transfert de données
Lorsque le nœud source souhaite transmettre un message au nœud n, il préfixe le message par
le champ T AG, composé de la façon suivante :
5.2.3 Performances
ASR utilise le chiffrement asymétrique pour la trappe et pour les messages de type RREP .
Cela sous-entend une tentative de déchiffrement par l’ensemble des nœuds. Or, le déchiffrement
asymétrique est lent et provoque une latence lors de la découverte de route.
L’utilisation du champ T AG utilisant la fonction à sens unique rapide permet néanmoins
d’accélérer la transmission des données par rapport à la phase de découverte de route en diminuant
le temps nécessaire au nœud pour déterminer si un message doit être routé ou pas.
5.3 SDAR
SDAR (Secure Distributed Anonymous Routing) [BEKXK04] utilise un routage en oignon, une
trappe cryptographique et un système de réputation. Un système de réputation consiste à noter
les différents participants sur leur comportement. Dans le protocole SDAR, le système de notation
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
évalue le respect du protocole par les nœuds du réseau. Trois niveaux de confiance sont créés :
confiance faible, confiance moyenne et confiance forte. Un nœud peut décider, lors de l’envoi de la
découverte de route, du niveau de confiance voulue pour la communication.
Découverte de route
– trust correspond au niveau de confiance que veut le nœud source pour cette communication.
Ce champ peut prendre les valeurs suivantes : LOW , M EDIU M et HIGH.
– KPtemp et KStemp sont respectivement une clé publique et une clé privée temporaire.
– {n, Ks , size(padding)}KPn est la trappe cryptographique, avec n l’identité du nœud desti-
nataire, Ks une clé symétrique de session et size(padding) la taille du padding ajouté par
le nœud source.
– padding correspond à des bits aléatoires. Il permet de masquer aux autres nœuds le nombre
de nœuds ayant déjà traité le message.
– Le dernier champ du message permet de communiquer au destinataire les informations né-
cessaires pour la construction d’un oignon permettant ensuite de router correctement les
messages. Ce dernier champ contient une signature du message envoyé par le nœud concerné
(msg0 correspondant au message RREQ émit par le nœud 0).
Le nœud intermédiaire vérifie dans un premier temps s’il a déjà traité le message en utilisant
KPtemp comme numéro de séquence unique. Si le message n’a pas déjà été traité, i vérifie s’il
est le destinataire du message en tentant de déchiffrer la trappe. S’il n’est pas le destinataire, il
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
génère une clé Ki et un nombre aléatoire Ni . Il construit ensuite une nouveau champ contenant
les informations de routage, puis diffuse le message nouvellement créé :
Réponse
Ni prev_hop key_current_hop
alea1 i−1 Ki
... ... ...
Transmission de données
Pour la transmission de données, le nœud source utilise l’identité des nœuds et les clés pour
construire un routage en oignon. Lorsqu’un nœud intermédiaire reçoit un message, il déchiffre la
couche externe et diffuse le contenu ainsi déchiffré.
5.3.3 Performances
L’utilisation du chiffrement asymétrique et du chiffrement symétrique impliquent des délais
d’attente importants pour la négociation d’une route. De plus, comme un oignon est utilisé pour les
données, chaque nœud doit déchiffrer sa couche, le message diminuant en taille au fur et à mesure.
La différence de taille entre le message original et le message dans l’oignon cryptographique peut
être importante, impactant ainsi l’utilisation de la bande passante.
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
5.4 ARM
Le protocole ARM [SP09] repose sur l’utilisation d’un routage en oignon, de la notion de trappe
et d’une méthode originale pour limiter la diffusion des messages en utilisant un TTL aléatoire.
ARM utilise des valeurs aléatoires suivant une loi de distribution choisie par les auteurs pour
initialiser et mettre à jour le TTL. La loi de distribution est choisie pour permettre à la valeur du
TTL de diminuer.
5.4.1 Description
Dans ARM, chaque nœud possède une identité permanente connue des autres nœuds ainsi
qu’une clé publique KPi . De plus, le nœud source 0 et le nœud destinataire n partagent une
clé symétrique K0,n et un pseudonyme secret P seudo0,n . Chaque nœud du réseau définit avec
ses voisins une clé de broadcast. Dans la suite et par soucis de lisibilité, cette clé de broadcast
n’apparaitra pas dans les échanges de messages. Les auteurs proposent d’utiliser le key management
scheme de Seys et Preneel [SP05].
Découverte de route
Le nœud source envoie un paquet de type RREQ pour initier la découverte de route :
< RREQ, P seudo0,n , ttli−1 , KPn , trapdoordest , {{{N0 , K0 }P Kn , N1 , K1 }P Kn . . . Ni−1 , Ki−1 }P Kn >
Il vérifie tout d’abord si P seudo0,n fait partie de sa liste de pseudonyme, indiquant qu’il est
potentiellement le destinataire du message. Si le test est réussi, le nœud tente d’ouvrir la trappe
en utilisant sa clé K0,n . S’il n’est pas le destinataire du message, i regarde s’il n’a pas déjà traité
le message en utilisant ses tables de routage. Enfin, il vérifie la valeur du TTL aléatoire. Si celle-ci
est supérieure à 1, Le nœud va diffuser le message, en modifiant ttli et en mettant à jour le champ
contenant la route en y ajoutant Ni et Ki :
< RREQ, P seudo0,n , ttl, KPn , trapdoordest , {{{N0 , K0 }P Kn , N1 , K1 }P Kn . . . Nn−1 , Kn−1 }P Kn >
Le destinataire effectue les mêmes vérifications que les nœuds intermédiaires. Il diffuse ensuite :
Réponse
À l’aide de la clé privée présente dans la trappe, le nœud destinataire accède à la liste des
pseudonymes et des clés de chiffrement des nœuds présents sur la route. n génère alors un message
de type RREP , qu’il chiffre avec la clé de broadcast définie avec les nœuds voisins :
Transmission de données
La transmission de messages consiste à utiliser les secrets partagés entre deux nœuds successifs
et un compteur comme identifiant de messages. Le contenu du message est chiffré à l’aide des
secrets partagés. tables de routage.
Cache du nœud i :
1 alea1 Ki {1}K
... ... ... ...
5.4.3 Performances
ARM utilise le chiffrement au niveau local (diffusion en broadcast) et un chiffrement pour les
informations de routage. Le chiffrement au niveau local implique un déchiffrement / chiffrement
pour chaque nœud. De plus, les auteurs n’ayant pas précisé quels algorithmes étaient utilisés, cela
rend difficile l’évaluation de l’impact du chiffrement sur les performances du protocole.
5.5 MASK
Le protocole MASK [ZLLF06] utilise trois concepts pour protéger la vie privée : pseudony-
misation des liens, MIX-net et multichemin. La notion de MIX-net dans MASK est similaire à
celle proposée par Chaum, avec une nuance : ce n’est pas le nœud source qui choisit la route à
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
suivre et qui chiffre le message mais les différents nœuds intermédiaires. Ainsi, il n’y a pas d’oignon
cryptographique dans MASK.
Trois tables sont utilisées par le protocole de routage : Forwarding Route Table (FRT), Reverse
Route Table (RRT) et Target LinkID Table (TLT) (voir figure 7).
L’authentification mutuelle entre deux nœuds prend en compte l’existence de plusieurs réseaux
adhoc déconnectés les uns des autres. Afin d’éviter toute fuite d’information, un nœud ne peut
déterminer de quel groupe est un autre nœud (nonobstant l’appartenance des deux nœuds au
même groupe). Pour réaliser cela, les auteurs utilisent le principe de pairing-based cryptography.
représente le leme lien entre le nœud 1 et le nœud 2. En se synchronisant, les nœuds peuvent ainsi
changer régulièrement de clé et d’identifiant.
Les auteurs supposent l’existence d’une autorité de confiance avant la création du MANET.
Cette autorité détermine les paramètres publics nécessaires pour le fonctionnement de MASK.
Découverte de route
< Lα
i−1,i , {RREP, n, seqdest + 1}Ki−1,i
α >
– Lαi−1,i est un pseudonyme temporaire entre le nœud i et i − 1.
α
– Ki−1,1 est une clé symétrique temporaire entre le nœud i et i − 1.
– α est un compteur permettant d’incrémenter les pseudonymes et les clés symétriques tem-
poraires.
Lα α
i−1,i et Ki−1,i sont générés à partir de l’authentification mutuelle entre le nœud i et le nœud
i − 1.
Le destinataire reçoit :
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
Réponse
À partir de Lγi+1,i , i détermine la clé à utiliser pour déchiffrer le message. Il peut ainsi regarder
seqdest afin de déterminer s’il faut enregistrer une nouvelle entrée dans la FRT (s’il n’y a pas
d’entrée déjà existante ou de numéro de séquence égal) ou, si une entrée existe déjà (le numéro de
séquence réçu étant plus récent), la mettre à jour. Une entrée dans la FRT se présente de la façon
γ
suivante : n, seqdest , Lα i−1,i et Li,i+1 (respectivement l’identifiant du lien entre le nœud i − 1 et i
et l’identifiant du lien entre le nœud i et i + 1).
Le nœud détermine ensuite l’identifiant de lien et la clé de chiffrement à utiliser pour le prochain
saut. Pour cela, il recherche l’identifiant de la destination et le numéro de séquence dans sa RRT.
Il peut ainsi accèder au pseudonyme Pi−1 du nœud lui ayant envoyé le message. Ce pseudonyme
permet de déterminer, à l’aide de l’authentification mutuelle, l’identifiant du lien (Lα i−1,i ) et la clé
α
(Ki−1,i ) à utiliser. Le nœud intermédiaire peut ensuite envoyer le message suivant :
< Lα
i−1,i , {RREP, n, seqdest + 1}Ki−1,i
α >
Transmission de données
Après la phase de la découverte de route, une ou plusieurs routes totalement disjointes existent
entre le nœud source et le nœud destination. Tous les nœuds intermédiaires disposent grâce à
la FRT de l’identifiant du lien précédent et de l’identifiant du lien suivant. Un nœud peut ainsi
simplement remplacer l’identifiant et diffuser le message. Il est aussi possible d’utiliser la clé liée
à l’identifiant de lien pour chiffrer les données. Un message transportant les données ressemblera
alors à :
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
n 1 Pi−1
... ... ...
n 1 Li−1,i Li,i+1
... ... ... ...
LinkID_last_hop
5.5.3 Performances
Les auteurs de MASK utilisent RC6 comme algorithme de chiffrement symétrique. Le chiffre-
ment implique un temps de latence pour chaque nœud, temps nécessaire pour le chiffrement /
déchiffrement. Cependant, l’utilisation du chiffrement symétrique permet de limiter le temps de
latence. Une des forces de ce protocole est qu’il est résistant à la forte mobilité des nœuds et à la
congestion réseau. Cela repose sur l’utilisation de plusieurs chemins. Ainsi, pour une destination
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
choisie, plusieurs circuits sont possibles. Si un nœud participant au premier circuit devient indis-
ponible, il est possible très rapidement d’utiliser le deuxième circuit. Ce choix aléatoire permet de
diluer le trafic sur une partie du réseau, et non pas sur un seul chemin.
6 Conclusion
L’ensemble des protocoles étudiés vise à protéger la vie privée. La figure 8 propose sous forme
de tableau l’ensemble des propriétés que doivent assurer les nœuds. Malheureusement, aucun des
protocoles ad hoc étudiés ne permet d’assurer un respect de la vie privée à l’ensemble des nœuds
du réseau.
Références
[BEKXK04] A. Boukerche, K. El-Khatib, L. Xu, and L. Korba. A novel solution for achieving
anonymity in wireless ad hoc networks. In Proceedings of the 1st ACM internatio-
nal workshop on Performance evaluation of wireless ad hoc, sensor, and ubiquitous
networks, pages 30–38. ACM, 2004.
[Cha81] D.L. Chaum. Untraceable electronic mail, return addresses, and digital pseudonyms.
Communications of the ACM, 24(2) :84–90, 1981.
[DMS04] R. Dingledine, N. Mathewson, and P. Syverson. Tor : The second-generation onion
router. Technical report, DTIC Document, 2004.
[GKdPC10] Sébastien Gambs, Marc-Olivier Killijian, and Miguel Núñez del Prado Cortez. Show
me how you move and i will tell you who you are. In Proceedings of the 3rd ACM
SIGSPATIAL International Workshop on Security and Privacy in GIS and LBS,
SPRINGL ’10, pages 34–41, New York, NY, USA, 2010. ACM.
[GRS96] D. Goldschlag, M. Reed, and P. Syverson. Hiding routing information. In Information
Hiding, pages 137–150. Springer, 1996.
[KH03] Jiejun Kong and Xiaoyan Hong. Anodr : anonymous on demand routing with untra-
ceable routes for mobile ad-hoc networks. In Proceedings of the 4th ACM international
symposium on Mobile ad hoc networking & computing, MobiHoc ’03, pages 291–302,
New York, NY, USA, 2003. ACM.
[LG00] S.J. Lee and M. Gerla. Aodv-br : Backup routing in ad hoc networks. In Wireless
Communications and Networking Conference, 2000. WCNC. 2000 IEEE, volume 3,
pages 1311–1316. Ieee, 2000.
[LLZ06] W. Lou, W. Liu, and Y. Zhang. Performance optimization using multipath rou-
ting in mobile ad hoc and wireless sensor networks. Combinatorial optimization in
communication networks, pages 117–146, 2006.
AMORES L3 – État de l’art des protocoles de routage
respectant la vie privée
[PHDK05] Andreas Pfitzmann, Marit Hansen, Tu Dresden, and Uld Kiel. Anonymity, unlinkabi-
lity, unobservability, pseudonymity, and identity management a consolidated proposal
for terminology. Technical report, 2005.
[SKY05] Ronggong Song, Larry Korba, and George Yee. Anondsr : Efficient anonymous dy-
namic source routing for mobile ad-hoc networks. In Proceedings of the 2005 ACM
Workshop on Security of Ad Hoc and Sensor Networks (SASN 2005), 2005.
[SP05] S. Seys and B. Preneel. The wandering nodes : Key management for low-power
mobile ad hoc networks. In Distributed Computing Systems Workshops, 2005. 25th
IEEE International Conference on, pages 916–922. IEEE, 2005.
[SP09] S. Seys and B. Preneel. Arm : Anonymous routing protocol for mobile ad hoc net-
works. International Journal of Wireless and Mobile Computing, 3(3) :145–155, 2009.
[ZLLF06] Y. Zhang, W. Liu, W. Lou, and Y. Fang. Mask : Anonymous on-demand rou-
ting in mobile ad hoc networks. Wireless Communications, IEEE Transactions on,
5(9) :2376–2385, 2006.
[ZWK+ 04] B. Zhu, Z. Wan, M.S. Kankanhalli, F. Bao, and R.H. Deng. Anonymous secure
routing in mobile ad-hoc networks. In Local Computer Networks, 2004. 29th Annual
IEEE International Conference on, pages 102–108. IEEE, 2004.