• Aucun résultat trouvé

Cette section décrit les comportements des utilisateurs et les modèles de graphes sociaux. Il convient de noter que nous considérons les mêmes hypothèses que celles indiquées dans [50, 51].

4.2.1 Interactions sociales

Le problème du sondage se compose d’un système modélisé comme un graphe non-orienté G = (V, E), que nous appelons graphe social, avec N = |V | est l’ensemble des nœuds (ayant des identités uniques) représentant les utilisateurs et E est l’ensemble de liens sociaux.

Chaque participant (ou utilisateur) n exprime son opinion par le biais d’un vote vn ∈ {−1, 1}24. Après la collecte des votes de tous les nœuds, le résultat attendu estP

nvn.

22. http ://apps.facebook.com/opinionpolls/ 23. http ://www.doodle.com/

4.2. Modèle de Sondage

Dans ce travail, nous considérons les hypothèses suivantes :

Nous considérons un modèle asynchrone où chaque nœud peut communiquer (en-voyer/recevoir des messages) avec ses voisins (par exemple, des amis directs). Certains messages peuvent arriver à destination avec un certain retard. Tous les nœuds doivent envoyer/recevoir/ transmettre des messages s’ils sont sollicités.

Chaque nœud est soit honnête ou malhonnête. Le nœud honnête respecte complètement le protocole et prend soin de sa vie privée en ce sens que la valeur de son vote n’est pas divulguée. Tous les nœuds se soucient de leur réputation : les informations relatives à un utilisateur sont considérées comme reflétant intiment la vraie personne associée à ce nœud. En particulier, les nœuds malhonnêtes ne montrent jamais une mauvaise conduite (ou un mauvais comportement) qui mettra en péril leur réputation. Tous les nœuds malhonnêtes peuvent former une coalition pour obtenir une connaissance complète de la topologie du réseau et essayer de tout faire pour atteindre les objectifs suivants sans être détectés : (i) biaiser le résultat du sondage pour la promotion de leurs votes ou de changer (ou corrompre) les valeurs qu’ils ont reçues de la part d’honnêtes nœuds ; (ii) déduire (ou inférer) les opinions des autres nœuds.

Afin d’unifier les opinions, tous les nœuds malhonnêtes pourraient former une coalition D de taille D. Cependant, ils veulent aussi protéger leur réputation sans être affectés. Ils sont égoïstes dans le sens où chaque nœud malhonnête préfère prendre soin de sa propre réputation pour se couvrir des autres [50, 51]. Contrairement à des nœuds byzantins, les nœuds malhonnêtes sont plutôt limités et représentatifs du comportement humain [69].

Pour tolérer l’existence de nœuds malhonnêtes avec une corruption de vote limitée, nous supposons que chaque nœud a au moins un ami honnête, mais il ne sait pas lequel est honnête. Pour dissuader les mauvais comportements venant des nœuds malhonnêtes, une action affectant le profil d’un nœud se comportant mal peut être déclenchée. Plus précisément, si le nœud u est détecté comme malhonnête par un nœud v, alors le profil de u est tagué avec la déclaration “v accuse u d’être malhonnête” et le profil de v contient la déclaration “u est un méchant”. Notons que dans les réseaux sociaux, personne ne voudrait être étiqueté comme malhonnête. En outre, nous ne prenons pas en compte les “Sybil” attaques et la gestion des spams comme ces types de mauvais comportements peuvent être détectés par plusieurs systèmes tels que SybilGuard [136], SybilLimit[135], et [87, 116] (pour atténuer les spams).

Par ailleurs, comme dans [50, 51], nous supposons que les nœuds malhonnêtes ne peuvent pas blâmer injustement les autres nœuds. En effet, lorsque cette accusation à tort est faite abusivement (sans preuve concrète), elle apporte aux utilisateurs malhonnêtes plus de problèmes que d’avantages et affecte leur réputation. Ces utilisateurs mal intentionnés veulent participer au processus de sondage afin de divulguer le vote des utilisateurs honnêtes et biaiser le résultat final mais sans compromettre leur réputation.

4.2.2 Graphe social

Dans ce qui suit, nous définissons d’abord les termes et notations du graphe social utilisés tout au long de ce chapitre. Ensuite, nous décrivons les graphes à faible coût de communication. Enfin, nous donnons la description de notre famille de graphes.

Notations. Chaque nœud n possède un ensemble de voisins directs Γ(n) de taille dn, et deux sous-ensembles de Γ(n) : un ensemble Sn de consommateurs contenant les nœuds qui reçoivent des messages de n, et un ensemble Rn de producteurs concernant les nœuds pour lesquels n agit comme un consommateur (ou reçoit des messages). Ces ensembles pourraient ne pas être disjoints, c-à-d, Sn∩ Rn 6= ∅, comme illustré sur la figure 4.1 (où z est un nœud à la fois producteur et consommateur).

n x y z a b c producteurs Rn consommateurs Sn

Figure 4.1 – Producteurs et consommateurs de n.

Le diamètre d’un graphe social G est noté ∆G. Notons que les algorithmes distribués pour calculer le diamètre exact d’un graphe sont de complexité O(N ) [57, 93].

Graphes à faible coût de communication. Considérons dans un réseau l’opération de dif-fusion de messages initiée par un nœud unique, appelé source. Ce dernier veut transmettre une donnée à tous les nœuds du réseau. Si l’on utilise une approche naïve : à la réception d’un mes-sage venant d’un voisin, un nœud stocke la donnée puis la propage à travers ses liens. Cependant, un nœud peut recevoir/envoyer autant de messages dupliqués (qui peuvent être transmis par de nombreux chemins) de/vers d’autres nœuds. Cela conduit à inonder le réseau. Pour surmonter ce problème, nous proposons une méthode de diffusion efficace utilisant le concept que nous appelons : la propriété m-diffusion. Un graphe satisfait la propriété m-diffusion, pour un entier positif m tel que 1 ≤ m ≤ dmin avec dmin est le degré minimal, si pour chaque nœud source, il existe un ordre topologique sur les nœuds du graphe de telle sorte que chaque nœud est connecté soit directement à la source, soit à m nœuds qui le précèdent selon l’ordre défini par rapport à la source. En conséquence, au lieu d’accepter tous les messages provenant d’une source, un nœud reçoit et stocke seulement m messages passés par des chemins ordonnés.

Soit βn(s) l’ensemble des voisins pour un nœud n qui le précèdent selon un ordre établi par rapport à un nœud source s25 (nous omettons parfois d’indiquer la source lorsqu’aucune confusion ne se pose).

Graphes basés sur le partage de secret. Nous présentons la famille des graphes avec et sans la présence de nœuds malhonnêtes. Nous utilisons un paramètre prédéfini k ∈ N (comme dans [50, 51]), appelé paramètre de confidentialité, et un autre paramètre m ∈ N pour présenter les caractéristiques de nos réseaux sociaux. Soit G = (V, E) un graphe social ayant les propriétés suivantes :

Propriété 4.1 (Pg1) dn ≥ 2k + 1, |Sn| = 2i + 1 et |Rn| ≤ 2k + 1 où 0 ≤ i ≤ k, pour tout

n ∈ V . 

Propriété 4.2 (Pg2) G satisfait la propriété m-diffusion. 

Propriété 4.3 (Pg3) Pour un nœud source, chaque autre nœud possède moins de m/2 nœuds malhonnêtes que le précèdent selon un ordre défini par rapport à une source donnée.  Selon la propriété Pg1, l’ensemble des consommateurs et l’ensemble des producteurs d’un nœud ont la taille d’au plus 2k + 1 et pourraient ne pas être disjoints. Cette condition distingue notre famille de graphes des autres structures dans [35, 50, 51] et elle est plus flexible par rapport aux graphes utilisées dans [56] car ils ont tous considéré la restrictive condition, à savoir : chaque nœud a exactement 2k + 1 consommateurs. De plus, elle diffère aussi des structures utilisées dans [7, 8] qui n’imposent aucune borne supérieure sur le nombre de producteurs (que doit