• Aucun résultat trouvé

4.3 Protocole de Sondage

4.3.2 Correction

Dans cette section, nous étudions l’impact des nœuds malhonnêtes sur la vie privée et la précision du résultat du sondage quand EPol est déployé sur les graphes de G2 dans les pires et moyens cas. Toutes les preuves sont données dans [5, 55].

Analyse de confidentialité

La propriété de la vie privée exprime la capacité du système pour empêcher la divulgation des informations privées (dans notre cas le vote des utilisateurs) aux nœuds malhonnêtes. En d’autres termes, la coalition des malhonnêtes ne pourrait révéler toute information d’un nœud honnête au-delà de ce qu’elle peut déduire de son propre vote, le résultat des calculs et les parts des votes.

Soit γi la proportion des nœuds votant avec une génération de 2i + 1 parts durant la phase de Partage, où 0 ≤ i ≤ k et Pk

i=0γi = 1. Le vote d’un nœud peut être révélé avec (i) certitude si les nœud malhonnêtes sont sûrs de leur divulgation ; (ii) sinon avec incertitude. Supposons que le nombre de nœuds malhonnêtes est D ≤ (m − 1)∆G/2 (présenté ultérieurement dans le théorème 4.7). Nous considérons les cas suivants de divulgation de votes :

Divulgation avec certitude. Nous discutons le cas où le vote d’un nœud donné peut être divulguée avec certitude dans deux cas : (i) tous les nœuds envoient 2k + 1 parts, et (ii) les nœuds peuvent envoyer un nombre impair 2i + 1 parts où 0 ≤ i ≤ k (en générant i + 1 des parts du vote désiré et i parts opposées).

Théorème 4.1 (Divulgation sûre) Supposons qu’une coalition D de nœuds malhonnêtes connaît le nombre de parts envoyé par un nœud ayant voté avec 2i + 1 parts (0 ≤ i ≤ k). La probabilité Pce pour que D révèle correctement et avec certitude le vote d’un nœud honnête est

au plus de γi DNi+1. 

Corollaire 4.1 Si tous les nœuds envoient 2k + 1 parts durant la phase de Partage, alors la probabilité pour que D divulgue avec certitude le vote d’un honnête nœud est au plus de NDk+1. 

Nous traçons la limite Pce comme une fonction f (γi, i) = γi DNi+1 dans la figure 4.3 pour k = 3, N = 100 et D = 20. Nous remarquons que Pce croit avec l’augmentation de γi et la diminution de i. Ainsi, nous obtenons une confidentialité maximale lorsque tous les nœuds génèrent 2k + 1 parts, et une confidentialité minimale lorsque tous les nœuds produisent une seule part.

Si le résultat du sondage est N (resp. −N ), il est trivial de déduire que tous les nœuds ont voté “+1” (resp. “−1”) et dans ce cas particulier tous les votes sont divulgués. De plus, supposons

4.3. Protocole de Sondage

Upper bound of probability

0 0.2 0.4 0.6 0.8 1 γi 0 1 2 3 i 0 0.05 0.1 0.15 0.2 f(γi,i)

Figure 4.3 – Probabilité pour révéler avec certitude le vote d’un nœud.

que tous les nœuds malhonnêtes votent “−1”. Si le résultat final est N −2D, alors on peut deviner que le vote des nœuds honnêtes est “+1”. Sans tenir compte de ces cas (à savoir, tous les nœuds honnêtes ne votent pas pour la même option), le théorème 4.2 nous montre le nombre maximum de votes qu’une coalition de malhonnêtes pourrait découvrir.

Théorème 4.2 Si tous les nœuds honnêtes ne votent pas la même option, une coalition de D malhonnêtes nœuds peut révéler au plus le vote de 2D honnêtes nœuds.

Divulgation avec incertitude. Cette partie examine le cas où des nœuds malhonnêtes com-plotent pour révéler le vote d’un nœud honnête sans certitude. La coalition décide sur le vote d’un nœud sur la base des parts reçues (ils ont reçus soit toutes les parts soit quelques parts du vote). Ainsi, ils choisissent une des stratégies suivantes : (a) des ρ + 1 parts identiques (pour cer-tains 0 ≤ ρ ≤ k) émises par un nœud donné, elles seront considérées comme son vote ; (b) Après avoir reçu la totalité des parts à partir d’un nœud donné, la valeur la plus représentée des parts reçues sera considérée comme son vote. La première stratégie est utilisée par de “gourmands” utilisateurs malhonnêtes qui veulent révéler rapidement le vote d’un utilisateur honnête (même s’ils viennent juste de recevoir une part). Quant à la deuxième stratégie, elles est utilisée par des utilisateurs malhonnêtes “non gourmands” qui sont patients et attendent pour recevoir toutes les parts de l’utilisateur honnête avant d’essayer de divulguer son vote. Nous présentons les pro-babilités qu’une coalition de nœuds malhonnêtes divulgue le vote d’un nœud honnête pour ces situations dans les théorèmes 4.3 et 4.4. Rappelons que chaque nœud ne connaît pas le nombre de parts générées par les autres et ∆G est le diamètre de réseau.

Théorème 4.3 (Stratégie gourmande) Supposons qu’une coalition de D nœuds malhon-nêtes se base sur la règle suivante “ à la réception de ρ + 1 parts identiques (0 ≤ ρ ≤ k) à partir d’un nœud donné, elles seront considérées comme le vote de ce nœud”. La proba-bilité pour que cette coalition révèle correctement le vote d’un nœud est Pgr(ρ) = Pk

i=ργi · D ρ+1  Pρ j=0 D−ρ−1 j / N

j+ρ+1 et qui est bornée par Pk

i=ργiN −D+ρ+2N +1 (N −D+ρ+1D )ρ+1.  Dans le théorème 4.3, le vote v d’un nœud honnête est découvert si ce nœud a envoyé 2i + 1 ≥ 2ρ + 1 parts dans lesquelles ρ + 1 parts identiques représentant v et jusqu’à ρ parts de valeur −v ont été reçues par les consommateurs malhonnêtes. En outre, par le théorème 4.3,

Greedy vote disclosing 0 0.2 0.4 0.6 0.8 1 γk 0 20 40 60 80 D 0 0.2 0.4 0.6 0.8 1 Pgr (a) Gourmand

Non-greedy vote disclosing

0 0.2 0.4 0.6 0.8 1 γk 0 20 40 60 80 D 0 0.2 0.4 0.6 0.8 1 Pun (b) Non-gourmand

Figure 4.4 – Probabilité pour révéler le vote d’un nœud avec incertitude.

la valeur Pgr augmente quand γi diminue (et i augmente) et D augmente. Par exemple, avec N = 100, k = 1 (c-à-d, chaque nœud vote, avec une part ou 2k + 1 = 3 parts) et ρ = 0, nous traçons la probabilité Pgr en fonction de D et γk sur la figure 4.4(a). Comme prévu, la confidentialité du vote diminue (à savoir, Pgr augmente) lorsque γk diminue et D augmente. Théorème 4.4 (Stratégie non gourmande) Supposons qu’une coalition de D nœuds mal-honnêtes se base sur la règle suivante “la valeur la plus représentée des parts reçues à partir d’un nœud donné sera considérée comme le vote de ce nœud”. La probabilité pour que la coalition révèle correctement ce vote est Pun =Pk

i=0γi·Pi+1 j=1 Pj−1 t=0 D j  D−j t / N

j+t, qui est bornée par

D

N/(1 − 2DN)1 − Pk

i=0γi(2ND)2i+1.  Par le théorème 4.4, la quantité Pun croit lorsque les deux valeurs γi et D augmentent (et i aussi augmente). Pour N = 100 et k = 1, la figure 4.4(b) montre l’impact de D sur Pun. Selon ce résultat, comme prévu, la confidentialité du vote diminue (à savoir Pun augmente) lorsque les deux valeurs D et γk croissent.

Combinaison de la divulgation avec et sans certitude. L’objectif de cette partie est de présenter la situation où les nœuds malhonnêtes peuvent essayer de révéler le vote d’un nœud honnête soit avec certitude ou incertitude. Supposons qu’ils respectent les règles de la divulgation du vote avec et sans certitude. Du point de vue des nœuds malhonnêtes, ils veulent toujours que leur détection de vote soit aussi sûre que possible. Plus précisément, ils préfèrent que le vote soit révélé de manière plus sûre que d’autres cas. Par conséquent, leur stratégie est la suivante : ils essaient d’abord de divulguer un vote de nœud avec certitude. S’ils ne parviennent pas (par exemple, en raison d’un manque de messages), ils examineront donc la façon de détecter ce vote sans certitude. Cette stratégie hybride implique dans ce cas que la probabilité pour qu’un vote soit divulgué est Pcom= max{Pce, Pgr, Pun}.

Précision du résultat final

Dans cette partie, nous examinons les impacts maximal et moyen de la coalition des mal-honnêtes sur la précision du résultat final et ce lorsque nous déployons le protocole EP ol sur la famille des graphes G2. Un nœud malhonnête peut influer sur le résultat du scrutin avec les mauvais comportements suivants :

4.3. Protocole de Sondage

(i) Comme un nœud ne peut générer et envoyer des parts qu’à ses propres consommateurs (sinon les parts sont abandonnées) et il y a au plus 2k + 1 consommateurs pour chaque nœud, ce dernier doit envoyer au plus 2k + 1 parts dans lesquelles au plus k + 1 sont identiques. D’où, un nœud malhonnête peut ne pas se conformer au protocole en envoyant plus de k + 1 (mais pas supérieure à 2k + 1) parts identiques.

(ii) Il corrompt les parts reçues en remplaçant chaque part “+1” par “−1” pour diminuer la valeur des données collectées.

(iii) Il modifie les données collectées provenant d’un nœud honnête ou envoie un message forgé (ou corrompu) dans la phase de Diffusion.

Pour pouvoir limiter l’impact des mauvais comportements des nœuds malhonnêtes sur le bon déroulement du sondage, les utilisateurs peuvent déclencher des procédures de vérification. A ce titre, les attaques (i) et (ii) ne peuvent être détectées sans l’inspection du contenu des parts. En effet, dans la première attaque, le pire des cas est lorsqu’un nœud malhonnête envoie toutes les 2k + 1 parts avec la valeur “−1”. Dans l’attaque (ii), un nœud reçois au plus 2k + 1 parts (comme il possède au plus 2k + 1 producteurs). Aussi, la valeur calculée pour les données collectées doit être dans l’intervalle [−(2k + 1), 2k + 1]. Par contre, pour l’attaque (iii), un nœud malhonnête ne peut pas créer un message forgé contenant l’identité d’un autre nœud. De plus, cette activité ne porte pas atteinte au résultat final étant donné qu’un nœud reçoit directement un message de la source s (s’il est un voisin de s) ou obtient une majorité de messages reçus (d(m + 1)/2e) contenant les données correctes de s. Nous montrons l’impact de ces mauvais comportements sur la précision du sondage dans les théorèmes 4.5 et 4.6.

Théorème 4.5 (Imapct maximal) Tout nœud malhonnête pourrait affecter le résultat final

jusqu’à 6k + 4. 

Théorème 4.6 (Impact moyen) Soit α la proportion des nœuds ayant voté “+1”. L’impact moyen du à un mauvais comportement d’un nœud malhonnête est Iavg =Pk

i=0γi(2i + 1)1 + 2Pk

i=0γi2i+1i+α + 1. 

La quantité Iavg est minimisée lorsque tous les nœuds génèrent le même nombre de parts (par exemple 2i + 1), et ainsi, Iavg = 2(2i + α + 1). Dans le pire des cas, un nœud malhonnête envoie 2k + 1 parts, et l’impact moyen minimisé est Iavg = 2(2k + α + 1).

Corollaire 4.2 Le résultat attendu biaisé est dans l’intervalle [(2α − 1)N − (6k + 4)D; (2α − 1)N ]. Plus particulièrement, si tous les nœuds envoient 2k + 1 parts, alors ce résultat biaisé est

(2α − 1)N − (4k + 2α + 2)D. 

Sur la base des théorèmes 4.1-4.6 et les corollaires 4.1 et 4.2, pour un paramètre fixe k, le nombre d’utilisateurs votant avec un nombre élevé de parts (par exemple, 2k + 1 parts) influe sur la confidentialité des votes et de la précision du résultat du sondage. Plus concrètement, si nous nous soucions de la confidentialité du vote, nous devons augmenter le nombre de nœuds générant 2k + 1 parts puisque la probabilité de divulguer le vote d’un nœud avec certitude (Pce) et une incertitude gourmande (Pgr) va diminuer. Mais cela augmente la probabilité Punde la divulgation non gourmande de vote ainsi que l’impact sur le résultat final. En revanche, si nous prenons soin de l’exactitude du résultat final, nous devrions réduire le nombre de nœuds votant avec 2k +1 parts puisque cela réduit l’impact sur le résultat final. Il diminue aussi Pun. Cependant, ceci augmente les valeurs Pce et Pgr.

Figure 4.5 – Un graphe où notre protocole tolère m−12G malhonnête nœuds. Tolérance aux nœuds malhonnêtes

Dans cette partie, nous calculons le nombre maximum de nœuds malhonnêtes que notre protocole EP ol peut admettre. Rappelons que ∆G est le diamètre du réseau.

Théorème 4.7 (Borne des nœuds malhonnêtes) Le nombre maximum de nœuds

malhon-nêtes que EP ol peut tolérer est m−12G. 

Un exemple de graphe qui tolère D = m−12G nœuds malhonnêtes est illustré dans la fi-gure 4.5 pour m = 3.

Il est également à noter que notre protocole peut tolérer plus de √

N nœuds malhonnêtes pour une structure à base d’anneau qui a été proposée dans [50, 51] (ces travaux tolèrent moins de √

N nœuds malhonnêtes). En effet, comme cette structure a le diamètre ∆G =N , et avec le paramètre m ≥ 3, la borne supérieure de D n’est pas moins de√

N .

Corollaire 4.3 Si D ≤ m−12G alors un nœud décide à tort sur les données collectées d’un autre nœud avec la probabilité qui converge exponentiellement vite vers 0 en N (et ∆G).