1. Trang chủ
  2. » Luận Văn - Báo Cáo

Agrégation fiable de données d’activité sur l’internet préservant l’anonymat

50 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 50
Dung lượng 2,88 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Inscription Figure 2: Métaphore du vote - Etape 1 : Inscription Dans cette étape, un utilisateur doit s‟inscrire auprès d‟un “Master Peer” un pair institutionnel dans le réseau DistriNe

Trang 1

09

DistriNet

Agrégation fiable de données d’activité sur

l’internet préservant l’anonymat

Etudiant : LE Bao Anh

Superviseur : Martin RAJMAN - Maître d'enseignement et de recherche

Artificial Intelligence Laboratory - LIA, Ecole Polytechnique Fédérale de Lausanne - EPFL Mémoire de stage de fin d’études

Trang 2

Table des matières

Liste des figures 4

Remerciements 5

Résumé 6

Abstract 7

I Introduction 8

1 Problématique 8

2 Etat de l‟art 9

3 Context 10

4 Objectives du projet DistriNet 10

5 Présenter précisément mon sujet de stage 11

II Solution 13

1 Métaphore du vote 13

A Inscription 14

B Validation du votant 14

C Vote 15

2 Modélisation de la procédure de vote 15

3 Description détaillée des solutions choisies 17

A Procédure d‟inscription 17

B Procédure d‟accès 18

C Procédure de vote 19

III Implémentation 22

1 Architecture 22

2 Diverses techniques spécifiques appliquées dans le projet 23

IV Test & Résultats 25

1 Test fonctionnel (Mode d‟emploi) 25

A Screenshot de Contact Peer 25

B Screenshot de Master Peer 26

C Mail de confirmation de DistriNet 27

D Screenshot d‟Access Peer 28

E Screenshot de l‟interface de Vote 29

Trang 3

2 Validation 29

A Préservation de l‟anonymat 29

B Non manupulabilité 35

3 Exemple d‟exploitation des données agrégées (Google Maps) 35

V Conclusions & Perspectives 37

1 Conclusions 37

2 Perspectives 37

VI Annexe 39

1 Code des messages 39

2 Paramètre du Système 40

3 Les fichiers de log 43

A MP (128.178.155.80) 43

B P1 (128.178.155.105) 45

C P2 (128.178.155.38) 45

D P3 (128.178.155.100) 45

E BV(S) (128.178.155.92) 46

4 Introduction de déploiement d‟un pair institutionnel 47

A Installation des plate-formes 47

B Déploiement d‟un pair institutionnel 48

C Configuration d‟un pair institutionnel 49

D Lancer le système DistriNet 49

Références 50

Trang 4

Liste des figures

Figure 1: Exemples d’activités sur l’Internet 8

Figure 2: Métaphore du vote - Etape 1 : Inscription 14

Figure 3: Métaphore du vote - Etape 2 : Validation du votant 14

Figure 4: Métaphore du vote - Etape 3 : Vote 15

Figure 5: Architecture générale du système DistriNet 16

Figure 6 : Procédure d’insciption 17

Figure 7 : Procédure d’accès 18

Figure 8 : Procédure de vote – Etape 1 19

Figure 9: Procédure de vote – Etape 2 20

Figure 10: Architecture d'un pair institutionnel 22

Figure 11 : Screenshot de Contact Peer 25

Figure 12 : Screenshot de Master Peer 26

Figure 13 : Screenshot de mail de confirmation du réseau DistriNet 27

Figure 14 : Screenshot d’Access Peer 28

Figure 15 : Screenshot de l’interface de Vote 29

Figure 16: Exemple d’un fichier de log 30

Figure 17: Nouvelle architecture prévue 38

Figure 18 : Le trafic des messages d’une procédure de vote 40

Figure 19 : Interface de configuration 40

Trang 5

Remerciements

Je tiens particulièrement à remercier professeur Martin RAJMAN, mon responsable de stage,

pour l‟encadrement, l‟aide, les conseils utiles et l‟environnement de travail très sérieux qu‟il

m‟a donné pendant toute la durée du stage

Je tiens également à remercier M.Trần Hữu Đức, pour sa collaboration très utiles et ses

nouveaux concepts, ses aides, ses commentaires et ses discussions qui ont fait progresser

mon travail

Je voudrais remercier tout le personnel de l‟équipe DistriNet de laboratoire LIA de l‟EPFL,

M Pascal Felber, M Etienne Rivière, M Lozenzo Leonini de l‟université Neuchâtel Institut

d‟informatique, Nathalie Perin et son équipe de l‟école des Beaux-Arts à Genève ainsi que

Patrizio Dazzi, Matteo Mordacchini mes collègues de High Performance Computing

Laboratoire ISTI-CNR Pisa, Italy pour leurs aides, conseils et encouragements

J‟adresse mes sincères remerciements à tous les professeurs d‟informatique ainsi que de

français de l‟IFI, qui sont quelquefois très sévères, pour m‟avoir enseigné et me donné les

cours intéressants pendant mes études au niveau master Je profite de cette occasion pour dire

remercier à tous les personnels de l‟IFI qui m‟ont apporté de l‟aide

Je remercie chaleureusement mes camarades de la promotion 13 pour leur amitié Je leur

souhaite bonne chance pour la soutenance

Finalement, je voudrais remercier ma famille, mes parents et mes amis qui sont toujours près

de moi et m‟ont apporté le courage dans les moments difficiles

Trang 6

Résumé

L'impact économique de l'Internet se développe chaque jour La plupart des applications de

Web existant à grande échelle et systèmes commerciaux existants sont actuellement

centralisées et nécessitent une grande quantité de ressources matérielles et logicielles En

outre, ils soulèvent régulièrement le problème de respecter “privacy” de diverses pièces

d'information fournis par les utilisateurs pour les applications sur Internet Réseau P2P

représentent un axe de recherche intéressant pour résoudre ces deux problèmes

Le but du projet est de construire un prototype de P2P basé sur l'environnement Splay

(http://www.splay-project.org/) de l'Université de Neuchâtel, et visant à fournir contrôle de

pertinence mesuré pour des communautés d'utilisateurs Splay est un environnement pour le

prototypage et le déploiement d‟applications distribuées de grande taille Ce système contient

déjà une partie de réseau P2P, ainsi que des mécanismes spécifiques pour garantir la

robustesse du système Splay est développée par le langage de programmation LUA

(http://www.lua.org/home.html)

La génération de contrôle de pertinence s'appuiera sur les recherches exécutées par l'EPFL et

l'Université de Neuchâtel dans le cadre du projet CoFeed L'idée de base est de suivre

l'activité de requêtes des utilisateurs, et de suivre les documents qu'ils sélectionnent dans les

pages de résultats récupérées par les requêtes soumises, et de stocker ces pages dans le

système P2P

Parmi les questions importantes à étudier, nous pouvons citer l'anonymat de contrôle de

pertinence fourni par les utilisateurs, et la non manipulabilité de ces informations

L‟anonymat est nécessaire pour assurer la confidentialité des informations transmises et

cacher l'expéditeur de ces informations Non manipulabilité est nécessairee pour éviter que

les pairs peuvent envoyer de manière répétitive les mêmes informations dans le but de

biaiser les statistiques maintenues par le système Des solutions efficaces pour les deux

questions seront dévelopées en LUA

Mots-clés :

Réseau pair-à-pair, anonymat, non manipulabilité

Trang 7

Abstract

The economic impact of the Internet is growing every day Most of the existing large-scale

web-based applications and existing commercial systems are currently centralized and

require a substantial amount of hardware and software resources In addition, they regularly

raise the problem of enforcing the privacy of the various pieces of information provided by

the users to such Internet applications P2P network represent an interesting research

direction to solve both of these problems

The purpose of this project is to build a P2P prototype based on the Splay environment

(http://www.splay-project.org/) of the University of Neuchâtel, and aiming at providing

relevance feedback information tailored for various user communities The Splay

environment is a system that simplifies the prototyping and development of distributed

applications deployed on overlay networks This system already contains a part of the

targeted P2P framework, as well as specific mechanisms for guaranteeing the robustness of

the system Splay is developed in the LUA programming language

(http://www.lua.org/home.html)

The generation of the relevance feedback information will rely on the research carried out by

EPFL and UniNE in the framework of the CoFeed project The basic idea is to monitor the

querying activity of the users, and to track the documents they select in the result pages

retrieved by the submitted queries, and to store these pages in the P2P system

Among the important issues to study, one can cite the anonymity of the relevance feedback

information provided by the users, and the non manipulability of such information

Anonymity will require to ensure the privacy of transmitted information and hide the sender

of these informations Non manipulability will require to avoid that peers can repetitively

submit the same information to bias the statistic maintained by the system Effective

solutions for both issues will be developed in LUA

Key words:

Peer-to-Peer network, anonymity, non manipulability

Trang 8

I Introduction

1 Problématique

Sur l‟Internet aujourd‟hui, nous avons beaucoup d‟activités Dans le cadre de notre projet, les

activités sur l’Internet peuvent être définies comme les visites des sites Web, les

soumissions des requêtes sur un moteur de recherche

Si nous pouvons agréger ces activités et les stocker de façon efficace pour traiter et exploiter,

cela donnera des résultats intéressants pour les utilisateurs Il s‟agit d‟une notion de suivi de

l’activité sur l’internet, cela veut dire intercepter l‟activité effectuée par des groupes

d‟utilisateurs et l‟agréger en une activité moyenne Par exemple, pour le cas des visites de

sites web, cela revient à calculer le nombre moyen de visites reçues par un site au cours du

temps

Figure 1: Exemples d’activités sur l’Internet

En observant les exemples ci-dessus, nous trouvons qu‟il y a quelques grandes questions

posées:

?) Les différentes données agrégées fournies (e.g fréquences de visites ou votes) sont-elle

fiables ?

Trang 9

?) Peut-on les manipuler ?

?) L‟anonymat des contributions individuelles est-il préservé ?

Notre recherche sert à résoudre complètement ce problème La solution efficace de ce

problème est très importante car si l‟on peut avoir confiance en ces données, à partir de cela,

on peut construire un grand nombre des systèmes (en particulier, des applications) de types

différents qui rendre des choses très utiles pour les grands publiques sur l‟Internet

Un autre aspect difficile du problème est que ces systèmes de suivi doivent être acceptables

pour les utilisateurs Pour cela, l‟activité de suivi doit essentiellement :

Préserver l'anonymat (i.e qu'il ne soit pas possible de reconstruire les activités

individuelles à partir des informations échangees et stockées dans le système)

Donner des résultats raisonnablement fiables, en particulier qu'il ne soit pas trop

facile de biaiser les résultats produits en générant artificellement de l'activité (par

exemple en visitant un site que l'on veut favoriser plusieurs fois) L'idee dans le projet

pour éviter de telles manipulations est d'utiliser la notion d'authentification,

permettant de garantir qu'une activité n'est prise en compte qu'une seule fois par

utilisateur

Un exemple simple de ces systèmes est de traiter ces données brutes et de les visualiser (sur

une carte) A la fin de mon projet du stage, j‟ai implémenté un tel système qui accumule tous

les “votes” (une nouvelle conception sera définie dans deuxième chapitre) des utilisateurs sur

l‟Internet et les visualise dans une carte du monde (Google Maps)

D‟autre type de système sera prochainement implémenté à partir de ces données est un

système de recommandation (un tel système sera effectué à l‟EPFL par Tran Huu Duc) En

basant sur les fréquences séparées de sites web visties ou les fréquences des co-occurence des

sites web visités (visité pendant une période donnée), ce système donne aux utilisateurs des

suggestions intéressantes et utiles

2 Etat de l’art

Il existe maintenant des systèmes de presque même fonctionnalité que nous espérons, parmi

entre eux on peut citer comme Tor or FreeNet Ces deux systèmes nous permettent de

Trang 10

Site Web officiel du projet : http://www.torproject.org/index.html.fr

FreeNet est un autre projet dans ce domain dont l‟idée est de contruire un réseau

informatique anonyme et décentralisé sur l‟internet Il vise à permettre une liberté

d‟expression et d‟information totale fondée sur la sécurité de l‟anonymat, et permet donc à

chacun de lire comme de publier du contenu Il offre la plupart des services actuels d‟internet

(courriel, téléchargement, web, etc.)

Site Web officiel du projet : http://freenetproject.org/index.html

Mais notre but dans le projet DistriNet est différent que celui de Tor et de FreeNet Notre but

essentiel est de rendre grands publiques des données agrégées sur l’activité sur l’Internet

en tout garantissant des caractéristiques:

La capacité de raisonner de façon fiable à partir de ces données agrégées Autrement

dit, le système doit garantir le non manipulabilité

L‟anonymat des contributions individuelles utilisées pour produire les données

agrégées

3 Context

Dans le cadre du projet DistriNet, on cherche à résoudre plusieurs questions différentes

posées comme abordé ci-dessus et à construire un système réel sur l‟Internet Il s‟agit d‟un

très grand projet à long terme et besoin beaucoup de contributions de toute l‟équipe Après

des discussions sérieuses avec mon supervieur Nous nous concentrons d‟abord sur deux

grands points: préservation de l’anonimat et non manipulabilité Ce sont deux points

cruciaux et difficiles à résoudre et sont aussi mon sujet de stage

Ce projet est effectué en collabaration entre l‟Ecole Polytechnique Fédérale de Lausanne –

EPFL et les partenaires de l‟Université de Neuchatel et de l‟ISTI Pisa

Je travaille plein temps dans laboratoire LIA (Artificial Intelligence Laboratory) à l‟EPFL

C‟est une de deux grandes écoles polytechniques prestigieuses de la Suisse Ca me donne un

environnement de travail très sérieux et du niveau international

4 Objectives du projet DistriNet

Nous allons construire un système ayant les caratéristiques comme suivant :

1 Permettant de produire des données agrégées d’activité sur l’Internet librement

accessibles (système ouvert)

C‟est parce que la plupart des systèmes existants aujourd‟hui n‟est pas gratuite et

assez fermée pour les grands publiques Grâce à ce système ouvert, tout le monde

Trang 11

peut construire pour soi-même des applications libre qui exploitent les données

agrégées et servent aux différents buts

2 Garantissant l’anonymat des contributions individuelles

Cette caractéristique est pour but de garantir que personne hors d‟utilisateur puisse

savoir ces contributions individuelles ce qui, quelques fois est trop importants dans

certains systèmes statistiques informatiques

3 Garantissant une fiabilité raisonnable pour les données agrégées fournies

Cette caractéristique nous permet de traiter les données pour extraire les informations

nécessaires dans les différents buts

4 Stockant les données dans un réseau P2P (pas de serveur centralisé nécessaire)

Nous choisissons le réseau P2P pour stocker les données agrégées parce que deux

raisons principales

Premièrement, nous voulons que toutes les données soient distribuées dans tout le

réseau et tous les pairs dans le réseau jouent le même rơle que les autres Autrement

dit, aucun pair peut contrơler soi-même tout ou bien la plupart des données agrégées

dans le réseau

Deuxièmement, ces données stockées sont énormes, si elles sont stockées de façon

centralisée, nous deviendrons résoudre au problème du cỏt de la resource (la

resource matérielle demandée)

5 Permettant le développement d’applications utiles exploitant les données

disponibles (par exemple des applications de visualisation)

Notre système est ouvert, c‟est la raison pour laquelle que le système doit permettre

aux gens (les développeurs) d‟exploiter les données pour sa diversité de buts

5 Présenter précisément mon sujet de stage

Comme abordé tout d‟abord, dans mon cas, je dois résoudre deux problèmes principaux:

l'anonymat et non-manipulabilité Pour chaque problème, je dois chercher les techniques

disponibles ainsi que concevoir les techniques spéciales pour atteindre les buts posés

Pour comprendre exactement ce que je dois faire, je les définis comme suivant:

Préservation de l’anonymat des contributions individuelles:

Le mécanisme de construction des données agrégées ne doit pas permettre de reconstruire

l‟identité des utilisateurs fournissant les données indiviuelles

Trang 12

Dans la partie “Test & Résultats” je vais prouver ces points en utilisant et en expliquant que

mon système fonctionne correctement comme ces définitions

Trang 13

II Solution

1 Métaphore du vote

Théoriquement, un vote de notre sens est défini comme:

Les contributions individuelles sont modélisées comme des votes

Et

La procédure d’agrégation est modélisée comme une votation (système de vote)

On utilise une image de vote normal existe dans la vie courante pour facilement comprendre

les conceptions utilisées dans ce projet Un vote, en général, c‟est-à-dire une activité sur

l‟internet comme un utilisateur appuie sur un lien d‟Internet, compléter un sondage ou bien

soumettre une requête de recherche avec des mots-clés sur une machine de recherche

On peut imaginer une activité mentionnée comme un vote dans la vie courante (après ceci,

appellé “vote”) Ici, nous vous donnons une comparaison étape par étape les correspondances

entre un vote dans la vie courante et un vote dans notre sens: (3 étapes) Mais il faut d‟abord

comprendre les concepts essentiels utilisés dans le système:

Vote : recensement d‟une activité d‟un utilisateur sur l‟Internet (ex : la visite d‟un site

web, le click sur un lien URL après une recherche); on s‟intéresse prioritairement à

des activités pour lesquelles il existe un historique (historique de navigation, de

recherche, bookmarks, )

Votant : utilisateur inscrit dans le système DistriNet

Bulletin de vote : mécanisme d‟authentification des votes, appellé aussi jeton de

vote

Bureau de vote : machine connectée au réseau DistriNet chargée de prendre en

compte (i.e agréger, compter) les votes pour un type d‟activité donné (e.g les visites

d‟un site Web)

Je distingue concrètement les 3 étapes :

Trang 14

A Inscription

Figure 2: Métaphore du vote - Etape 1 : Inscription

Dans cette étape, un utilisateur doit s‟inscrire auprès d‟un “Master Peer” (un pair

institutionnel dans le réseau DistriNet et son explication détaillée sera abordée plus tard) pour

avoir le droit de voter Le fait n‟est exécuté qu‟une fois (la première fois d‟accès au réseau)

Le système demandera aux utilisateurs une identité, dans notre système c‟est une adresse

email valide

La technique de filtrage spécique captcha est utilisée pour éviter les inscriptions

automatiques par robots La version utilisée dans le système est recaptcha, une version

gratuite, populaire et destiné spécifiquement pour les logicielles source ouvert

Après cette étape, l‟utilisateur peut obtenir un login/password, cela est considéré comme

“carte d’électure” pour voter dans les fois suivantes

Afin d‟éviter les gens qui veulent tricher le système, un email de confirmation sera envoyé à

cette adresse email dans le but de validation

B Validation du votant

Figure 3: Métaphore du vote - Etape 2 : Validation du votant

Chaque fois un votant veut voter, il doit présenter l‟identité (email dans ce cas-là) L‟étape

correspondante dans notre système est de faire un login avec l‟identification d‟utilisateur et le

mot de passe reçus de l‟étape précedante

Trang 15

C Vote

Figure 4: Métaphore du vote - Etape 3 : Vote

Au lieu de mettre le bulletin de vote dans une boîte, l‟utilisateur clique sur un lien URL ou

bien envoie une requête de recherche dans le réseau DistriNet Ces données sont stockées

dans le réseau

2 Modélisation de la procédure de vote

Une architecture générale du système DistriNet fonctionne comme dans la figure suivante :

Trang 16

Figure 5: Architecture générale du système DistriNet

Avec :

• Volatile Peer (VP) : un utilisateur de l‟Internet (en fait, un plug-in dans le navigateur

Web qu‟il utilise)

• Contact Peer (CP) : une machine dans le réseau DistriNet (i.e un pair institutionnel)

qui permet aux utilisateurs d‟accéder au réseau

• Access Peer (AP) : un pair institutionnel (aléatoirement choisi par le Contact Peer)

qui permet aux utilisateurs d‟accéder aux réssources du réseau DistriNet

• Master Peer (MP) : le pair institutionnel (aléatoirement choisi par le Contact Peer)

qui permet a un nouvel utilisateur de s‟inscrire dans le réseau, gère son information

spécifique (adresse mail, login/password), lui fournit des jetons de vote et authentifie

ses votes

Un Volatile Peer sur l‟Internet ne connait que Contact Peer Autrement dit, Contact Peer est

un seul pair institutionnel connu pour les utilisateurs dans le réseau Après avoir bien

Trang 17

contacté, Contact Peer va choisir aléatoirement un autre pair institutionnel (c‟est Master Peer

si Volatile Peer veut s‟inscrire dans le réseau DistriNet, et Access Peer dans le cas d‟accéder

au réseau DistriNet) C‟est aussi une façon de garantir l‟équilibrage de charge pour le réseau

Pair-à-Pair

3 Description détaillée des solutions choisies

A Procédure d’inscription

Figure 6 : Procédure d’insciption

Tout d‟abord, Volatile Peer contacte avec Contact Peer pour recevoir l‟IP de Master Peer

choisi aléatoirement par ce Contact Peer En suite, Volatile Peer transfère directement à ce

Master Peer reçu: email, password, recaptcha pour l‟inscription et Master Peer confirmera

l‟utilisateur par email donné

Trang 18

B Procédure d’accès

Figure 7 : Procédure d’accès

1) D‟abord, Volatile Peer contacte Contact Peer et reçoit IP(AP) comme la procédure

présentée plus tôt

2) Dès que la réception de l‟IP de Access Peer, Volatile Peer submittera son userID et

password à Access Peer

3) L‟IP de Master Peer de cet utilisateur sera extrait à partir d‟userID, Access Peer

utilise IP(MP) afin de transmettre les informations de l‟utilisateur à Master Peer pour

les authentifier et attendre la réponse de Master Peer

4) La réponse de Master Peer sur l‟authentification d‟accès de Volatile Peer

5) Access Peer permet à Volatile Peer d‟accéder au réseau DistriNet

Trang 19

C Procédure de vote

Cette procédure contient deux étapes principales :

Etape 1 :

Figure 8 : Procédure de vote – Etape 1

1) Volatile Peer contacte avec Contact Peer, et puis Contact Peer génère aléatoirement

un pair institutionnel et répond à Volatile Peer l‟adresse IP d‟Access Peer pour que

Volatile Peer puisse accéder au réseau auprès cet Access Peer

2) Il s‟agit d‟une procédure d‟accès au réseau DistriNet comme expliqué ci-dessus dans

la partie “Procédure d‟accès”

Trang 20

Etape 2 :

Dans cette étape, les messages circilants dans le réseau DistriNet sont assez compliqués, les

numéros suivants sont correspondants avec ceux dans la figure:

Figure 9: Procédure de vote – Etape 2

BV(S) : Bureau de Vote du site S

Premièrement, Volatile Peer génère les deux codes C1 et C2 à partir de tokenID pour crypter

les messages votés dans le but de cacher le contenu avec les pairs intermédiaires Il y a

plusieurs possibilités différentes pour générer ces deux codes en garantissant l‟indépendance

entre C1 et C2 Dans notre cas, nous avons choisi de couper en deux parties de tokenID (la

moitié à gauche et celle à droite de tokenID) Ce Volatile Peer utilise ces deux codes afin

d‟envoyer des messages pour les pairs intermédiaires P1 & P2

1) Volatile Peer envoie 3 messages pour les 3 pairs intermédiaires Pour les P1 & P2, la

structure des messages est :

Trang 21

a Vote session ID : ID d‟une session de vote

b IP(BV(S)) : Adresse Logique du Site web voté

c Code

d Crypt d‟un message

Note que : les messages sont cryptés de façon croisée C‟est-à-dire que le message

envoie à P1 accompagné par C1 est crypté par C2 et vice-versa

Les deux pairs intermédiaires font seulement une chose de transmettre des messages

au pair destinataire (le pair s‟occupe du vote ou bureau de vote)

Volatile Peer envoie en même temps pour le pair intermédiaire P3 un message

contenant seulement l‟IP de Master Peer pour validation du vote

2) Dans cette étape, les deux pairs intermédiares P1 & P2 ne font qu‟une chose est de

transmettre les messages reçus au pair destinataire (bureau de vote, BV(S))

3) Une fois bureau de vote reçu les deux messages, il décrypte de façon croisée les deux

messages pour savoir le contenu (décrypter le message reçu par P1 avec code reçu par

P2 et vice-versa) Après le décryptage, BV(S) sait le vote, le pair intermédiaire de

validation de vote P3 et les deux codes C1, C2 Un message contient C1 et C2 sera

envoyé à P3 pour demander la validation de ce vote

4) P3 rejoint les deux messages reçus par BV(S) et Volatile Peer et puis contacte avec

Master Peer pour valider C1 et C2

5) Master Peer répond à la demande de P3 : OK/NOT_OK

6) P3 attend la réponse de l‟étape 5 et la transmettre à BV(S) BV(S) reçoit la réponse et

traiter le vote (accepter si la réponse est positive ou réfuser dans le cas contraire)

Après avoir observé toutes les étapes, nous trouvons que:

Ces pairs intermédiairs P1 & P2 savent seulement l‟expéditeur et le destinataire mais ils ne

savent rien du tout le contenu des messages, c‟est-à-dire le site web voté et le pair

intermédiaire P3 (le pair intermédiaire de validation du jeton de vote)

Tandis que le pair intermédiaire P3 et Master Peer ne savent que tokenID mais pas le

contenu du vote

C‟est évidamment que Volatile Peer et Bureau de Vote savent le contenu du vote, mais

BV(S) ne sait pas Volatile Peer

Trang 22

Architecture d’un pair institutionnel

Figure 10: Architecture d'un pair institutionnel

Dans le réseau DistriNet, tous les pairs institutionnels ont la même fonction (il joue le rôle

comme Master Peer, Access Peer ou peut-être Contact Peer dans certains cas) C‟est

pourquoi tous les pairs institutionnels ont la même architecture (détaillée dans la figure 10)

Toutes les fonctions de base sont développées en Lua Lua est un langage de programmation

de script libre, réflexif, impératif et fonctionnel Mais Lua se pose certaines difficultés

rencontrées pendant l‟implémentation du projet notamment les difficultés du développement

de web

Trang 23

Une de deux parties principales de cette architecture est un “job” Splay Splay est un

environnement pour le prototypage et le déploiment d’applications distribuées de grande

taille

Plus précisément, ce “job” Splay qui tourne tout le temps (temps réel) afin de traiter les

données reçues, traiter les messages (transmettre, crypter, décrypter) Il est déployé

automatiquement à partir d‟un pair institutionnel unique dans le réseau (qui joue le rôle

contrôller dans le réseau) pour tous les pairs institutionnels dans le réseau DistriNet

La partie de web serveur permet au système d‟interagir avec les utilisateurs

Dans tout le développement, nous nous appuyons sur plusieurs projets et bibliothèques

supportées Lua dans les domains de web, base de données, cryptage, recaptcha La plupart

de ces modules se trouve dans le projet Kepler :

http://www.keplerproject.org/

Il s‟agit d‟une plate-forme open source pour le développement d‟applications web en LUA

La partie de web qui tourne de manière séparée et indépendante sur chaque pair institutionnel

dans le réseau DistriNet Pour chaque pair institutionnel, cette partie doit être déployé

manuellement à partir du code source et configuré par l‟adminitrateur de ce serveur (pair

institutionnel) Les descriptions de déploiment et de configuration se trouvent dans la partie

d‟annexe IV

Nous listons tous les codes des messages transmis pour que tous les pairs institutionnels

puissent se connecter, ainsi que toutes les informations techniques concernant la mise en

oeuvre du sysème dans la partie d‟annexe

Tout le code source et ainsi que les modifications du projet se trouvent sur l‟Internet sur le

lien : http://code.google.com/p/distrinet/

2 Diverses techniques spécifiques appliquées dans le projet

Le protocole de transmission des messages dans le réseau DistriNet maintenant est TCP/IP

(Transmission Control Protocol/Internet Protocol) A cause que la manque du protocol de

routage dans le réseau pair-à-pair (La connection effective au réseau P2P va être intégrée

dans la nouvelle version du système) Nous devons donc utiliser le protocole TCP/IP pour

Trang 24

Le système de gestion de base de données MYSQL a été utilisé afin de gérer les informations

de chaque pair institutionnel comme les informations d‟utilisateur, les données d‟activité

agrégées fiables, les paramètres de configuation du système

Le serveur web Xavante est utilisé pour être mieux compatible avec le langage de

progammation LUA selon les suggessions des auteurs de LUA Xavante fait partie du projet

Kepler : http://www.keplerproject.org/xavante/

Trang 25

IV Test & Résultats

1 Test fonctionnel (Mode d’emploi)

Dans cette partie, nous vous présentons quelques principaux screenshots et ses explications

de notre système

A Screenshot de Contact Peer

Figure 11 : Screenshot de Contact Peer

La première connection avec le réseau DistriNet est l‟interface de Contact Peer

Une petite fenêtre qui liste les pairs institutionnels existants dans le réseau

Ngày đăng: 17/03/2021, 19:11

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm