Télécharger la présentation
Publié parFabienne Prieur Modifié depuis plus de 10 années
1
Sujet d’étude d’approfondissement en réseau: Freenet
samy Responsable du module: Florence Perronnin Auteurs: Audrey COLBRANT Samy SIDOTMANE
2
Plan Introduction I. Description générale
II. Les réseaux P2P décentralisé faiblement structuré III. Description technique de Freenet IV. Objectifs de Freenet V. Démonstration Conclusion Bibliographie samy
3
Introduction Naissance du projet Année de création : 1999
Concepteur : Ian Clarke Lieu : Edimbourg Fonctionnalités possibles avec Freenet 0.7 Surfer sur des sites Freenet Créer et insérer des free Site Discussions dans des forums Echange de fichiers Réception et envoi d’ samy
4
I. Description générale
Fonctionnement global Réseau bâtit sur internet Diamétralement opposé aux principes du web Pas de client ni de serveur / tous clients et tous serveur P2P =/= Freenet =/= Web Espace de total liberté Anonymat Résistance à la censure Résistance aux attaques C’est fun audrey
5
Comment se connecter à Freenet ? Installer un nœud sur votre PC
Nœud = Serveur (accès local: :8888) Patienter 24 à 48 heures pour que la page d’accueil soit utilisable. audrey
6
II. Les réseaux P2P décentralisés faiblement structurés
Le principe : P2P Chaque nœud est serveur et client en même temps Les ressources sont décentralisées Décentralisé Recherche de ressources décentralisée Montée en charge Structuré Anneau logique où l’on ordonne les nœuds et les clés de décryptage des données. Une Finger Table sur chaque nœud pour repérer les clés lors des recherches samy
7
Exemple d’anneau logique avec DHT à 6bits
Les nœuds Les clés privées associées aux ressources Finger Table pour le nœud 8 Clé Nœud 8+1=9 N14 8+2=10 8+4=12 8+8=16 N21 8+16=24 N32 8+32=40 N42 samy
8
Mais alors qu’est ce que le P2P décentralisé faiblement structuré ?
Nœuds ordonnés sur l’anneau Ressources dupliquées Ressources non ordonnées sur l’anneau Finger Table remplacée par un cache samy
9
III. Description technique de Freenet
1. S’insérer dans le réseau 2. Stockage de l’information 3. Les principaux protocoles de routage 4. Flux réseau et ports utilisés samy
10
III. 1. Fonctionnement du réseau Freenet (S’insérer dans le réseau)
J’ai téléchargé le logiciel Freenet et démarré le service(nœud actif) Votre Ordinateur Internet Noeud samy Browser :8888 port : 2383 nodeId : 20107cdb705b37dbbcbbd6ec836919bebea24b3bf962a c0032ef3c6af
11
III. 1. Fonctionnement du réseau freenet (S’insérer dans le réseau)
J’ai téléchargé le logiciel Freenet et démarré le service(nœud actif) Pour accéder au réseau il faut connaitre quelqu’un Vous connaissez l’ NodeInfo et ip d’un ami (on suppose qu’il est dans le réseau) Le Nœud de votre ami toto Votre Noeud Toto envoi: idVoisin le plus proche du votre samy
12
III. 1. Fonctionnement du réseau freenet (S’insérer dans le réseau)
J’ai téléchargé le logiciel Freenet et démarré le service(nœud actif) Pour accéder au réseau il faut connaitre quelqu’un Vous connaissez l’IP d’un ami (on suppose qu’il est dans le réseau) Vous ne connaissez personne hélas (reste le DNS – pas vraiment à jour) DNS Le Nœud retourné par le DNS Votre Noeud Nœud inconnu envoi: idVoisin le plus proche du votre samy
13
III. 1. Fonctionnement du réseau freenet (S’insérer dans le réseau)
J’ai téléchargé le logiciel Freenet et démarré le service(nœud actif) Pour accéder au réseau il faut connaitre quelqu’un Vous connaissez l’IP d’un ami (on suppose qu’il est dans le réseau) Vous ne connaissez personne hélas (reste le DNS – pas vraiment à jour) Dans les deux cas vous avez un NodeId auquel vous connecter 3. Se connecter au voisin que l’on vous a retourné, à son tour il vous redirigera jusqu’à ce que vous ayez au moins 3 connections et au plus 20 connections samy
14
III. 1. Fonctionnement du réseau freenet (S’insérer dans le réseau)
Bilan jusqu’à présent Votre nœud Est placé dans sa zone N2^ 3 1 N2^160-XXX samy 2 N2^159
15
III. 1. Fonctionnement du réseau freenet (S’insérer dans le réseau)
J’ai téléchargé le logiciel Freenet et démarré le service(nœud actif) Pour accéder au réseau il faut connaitre quelqu’un Vous connaissez l’IP d’un ami (on suppose qu’il est dans le réseau) Vous ne connaissez personne hélas (reste le DNS – pas vraiment à jour) 3. Se connecter au voisin que l’on vous a retourné, à son tour il vous redirigera jusqu’à ce que vous ayez au moins 3 connections et au plus 20 connections 4. À ce moment notre table de routage possède quelques voisins qui eux aussi nous ont dans leur Table samy
16
III. 2. Le stockage de l'information
- tout est fichier - un fichier = une clé unique - fichiers coupés en blocs de 32 Ko a - Les clés b - Le stockage audrey
17
III. 2.a - Les clés Accès au fichier par :
Key] CHK - Content Hash Keys SSK - Signed Subspace Keys USK - Updateable Subspace Keys audrey
18
CHK : Permet de désigner un fichier particulier sur le réseau (mp3, pdf...). Composé de : 1. le hash du fichier donnant un identifiant unique 2. la clé de décryptage qui permet de lire le fichier 3. la méthode de cryptage impossible de décrypter le fichier sans la CHK A quoi ça ressemble ? hash,decryption key,crypto settings Par exemple : bA7qLNJR7IXRKn6uS5PAySjIM6azPFvK~18kSi6bbNQ,AAEA--8 audrey
19
SSK : Permet de désigner un fichier qui va changer au cours du temps (Freesite...). Composé de : 1. le hash du fichier donnant un identifiant unique 2. la clé de décryptage qui permet de lire le fichier 3. méta données contenant notamment la méthode de cryptage 4. le chemin choisi par le créateur de la données 5. le numéro de version de la donnée A quoi ça ressemble ? hash,decryption key,crypto settings/path-version audrey
20
USK : Permet de charger la dernière version d'un site, mécanisme de recherche de last update sur un SSK. Composé de : 1. le hash du fichier donnant un identifiant unique 2. la clé de décryptage qui permet de lire le fichier 3. méta données contenant notamment la méthode de cryptage 4. le chemin choisi par le créateur de la données 5. le numéro de version de la donnée On construit une clé USK à partir d'une SSK ainsi : hash,decryption key,crypto settings/path-version => hash,decryption key,crypto settings/path/version audrey
21
III. 2. b - Le stockage - Dossier download
- Datastore divisé en deux parties égales : * Le cache : stockage des clés qui passent par le noeud map de : noeud source, clé, fréquence de passage -> explique le délai pour que le nœud soit opérationnel * Le store : stockage des données cryptées qui ont été rapatriées sur le noeud Mécanisme de flush de la mémoire utilisée. audrey
22
III. 3. Fonctionnement du réseau freenet (Télécharger une ressource)
Je suis un nœud déjà intégré qui a des voisins J’ai une clé qui correspond à une ressource et je désire la récupérer. Key CHK/SSk et HTL samy Ressource correspondante
23
III. 3. Fonctionnement du réseau freenet (Echange de position -- SWAP)
Demandes successives d’un nœud à son voisin se rapportant à des clés voisines Echange de position sur l’Overlay 2. Echange de cache (clés associées aux nœuds) Principe complémentaire avec le système de duplication de données samy
24
III. 3. Fonctionnement du réseau freenet (Insertion de ressources)
On insère notre ressource dans notre nœud Le Nœud se charge de transformer la ressource en Freenet Ressource On la stock dans notre store On choisit 1 voisin dans la liste (le plus proche de la ressource)et on tire aléatoirement un HTL On leur envoi la ressource Le voisin reçoit une ressource, la stock dans son store, et la diffuse en décrémentant le HTL samy
25
III. 4. Flux Réseau et ports utilisés
samy
26
III. 4. Flux Réseau et ports utilisés
FNP : port de communication choisit aléatoirement pour éviter les blocages de port FCPv2: Protocole à base de message le transport s’effectue via TCP Types de messages : hello Client, listPeer, listPeers etc … samy
27
IV. Comment Freenet atteint ses objectifs ?
1 – Types de connexions 2 - Anonymat 3 - Résistance à la censure 4 - Résistance aux attaques audrey
28
IV. 1 – Types de connexions
- OpenNet - Darknet - Faux darknet - mixte audrey
29
IV. 2 - Anonymat - On voit les requêtes comme si on était une passerelle (pas de connaissance de la source ou de la destination) - Données en version chiffrées sur l'ordinateur - Déni plausible par impossibilité de lecture du contenu audrey
30
IV. 3 - Résistance à la censure
- Censurer une info = la trouver et éteindre tous les noeuds qui l'ont - Trouver une info = faire des requêtes la concernant - Faire des requêtes sur une info = la multiplier => impossible de censurer quoi que ce soit => analyse du trafic pour identifier les nœuds seulement par des gouvernements ou de puissantes organisations audrey
31
IV. 4 - Résistance aux attaques
a. Harvesting b. Location swapping c. Attaques légales d. Identification d'un utilisateur + Attaque par corrélation + Attaque adaptative audrey
32
a. Harvesting - Déf : Récupérer l'ensemble des adresses IP des noeuds pour les bloquer. Tous les logiciels de P2P sont sensibles à cette attaque. - ici : Freenet étant décentralisé, il faut faire tourner une version modifiée du noeud - Faisable uniquement par des gouvernements ou des organisations puissantes - Solution : Darknet audrey
33
b. Location swapping - Principe : Faire disparaître des données du réseau en détruisant des noeuds - ici : l'algorithme d'échange des positions est visé en ciblant une zone particulière et leurs clés associées - Solutions : + mécanisme de caching (2007) + changement de position sur le cercle aléatoire toutes les 2000 permutations = uniformisation des nœuds sur le cercle audrey
34
c. Attaques légales - Blocage de ports : port aléatoire pour les connexions, impossible de bloquer tous les ports - Blocage de protocole : le trafic est crypté donc impossible de détecter qu'il vient de Freenet - Interdiction du cryptage : impossible depuis l'apparition du commerce en ligne - Pénaliser l'utilisation de Freenet : Darknet subsistera. Perquisition de pc possible mais il faut un motif valable. audrey
35
d. Identification d'un utilisateur
Uniquement sur : OpenNet, mixte, faux DarkNet + Attaque par corrélation - études statistiques des requêtes provenant des noeuds auxquels on est directement connectés - ex : pour un fichier de 4Go, il faut requêtes. Un noeud OpenNet a 20 connexions, soit morceaux/connexion audrey + Attaque adaptative - se faire une idée de la position approximative d'une requête sur le cercle - s'en approcher et si on arrive à se connecter au noeud -> attaque par corrélation
36
V. Démonstration ... Les deux
37
Conclusion - Bonne idée initiale
- A donné naissance à beaucoup d'autres logiciels P2P - Problèmes d'éthiques - Equilibre entre totale liberté et total contrôle ? - Difficulté à trouver des informations cohérentes. audrey
38
Bibliographie
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.