• Aucun résultat trouvé

Dans la suite, nous supposons que moins d’un tiers des gestionnaires de score du fournisseur considéré sontmalveillants.

4.3

Protocole d’interaction

Nous présentons maintenant les sous-protocoles du mécanisme d’interaction. Avant que les interactions puissent avoir lieu, il faut que le mécanisme ait été préparé, c’est-à-dire que les utilisateurs se soient enregistrés auprès de l’autorité centrale Cpour obtenir leurs certificats et pseudonymes. Une interaction se divise ensuite en deux étapes : un client commence par obtenir la réputation du fournisseur qui l’intéresse. Une fois qu’il a trouvé un fournisseur lui convenant, il peut lancer l’interaction qui lui permet d’obtenir le service désiré et de témoigner.

4.3.1 Mise en place du protocole

Pendant une interaction, les utilisateurs requièrent des identifiants ainsi que des clés crypto- graphiques. Dans ce chapitre, nous utilisons le schéma de signature classique présenté en sec-

tion2.6.1. Tout d’abord, l’autorité centrale C possède une paire de clés de signature (vkC,skC),

qui est utilisée pour émettre des certificats sur les utilisateurs.

Les fournisseurs génèrent également une paire de clés de signature : le fournisseur FS génère la paire (vkFS,skFS), qu’il enregistre auprès de C pour obtenir un certificat certFSsur vkFS.

Afin de préserver leur vie privée, les clients fonctionnent différemment. Un client génère lui-même ses pseudonymes aléatoirement, ainsi qu’une paire de clés de signature associée à chaque pseudonyme. Pour le pseudonyme nym, le client génère la paire (vknym,sknym). Chaque

pseudonyme est certifié par C, qui génère un certificat certnymsur nym et vknym. Le nombre de

pseudonymes de chaque client doit être limité pour éviter les attaques Sybil (voir section3.3.4), qui amplifieraient sinon lesbourrages d’urnepossibles (voir section3.3.3). Ainsi, C demande aux clients de payer un coût prédéfini lors de la certification d’un pseudonyme, que ce coût soit monétaire ou calculatoire [Bor06].

Dans la suite, nous notons nym le pseudonyme utilisé par le client, FS le fournisseur et GSi

ses gestionnaires de score, pour 1 6 i 6 n.

4.3.2 Obtention de la réputation d’un fournisseur

Quand un client est intéressé par le service proposé par un fournisseur, il contacte les ges- tionnaires de score de ce fournisseur à travers ladhtpour obtenir les témoignages émis sur ce fournisseur. Dès que le client a reçu les réponses de plus de deux tiers des gestionnaires, il effectue un quorum ; ceci empêche une collusion d’un tiers de gestionnaires malveillants de modifier les témoignages, et garantit donc leur inforgeabilité ainsi que celle des scores de réputation (propriétés5et6). Le client est finalement capable de calculer la réputation du four- nisseur comme spécifié par la section4.4. La figure4.3décrit ce protocole.

Client Gestionnaire i Témoignages sur FS ?

{témoignages sur FS} Calcul de la réputation de FS

Figure 4.3 – Obtention des témoignages et calcul de la réputation du fournisseur

4.3.3 Interaction entre un client et un fournisseur

Une fois que le client a calculé la réputation du fournisseur, il choisit d’interagir avec le four- nisseur s’il juge cette réputation suffisamment élevée. Cette interaction se déroule en quatre étapes : tout d’abord, le client et le fournisseur choisissent un identifiant de transaction. Ils signent cet identifiant et le transmettent, accompagné de la signature, aux gestionnaires de score du fournisseur. Une fois que les gestionnaires de score en ont confirmé la réception, la transaction peut avoir lieu. Finalement, le client et le fournisseur envoient leurnote, qui per- mettent de constituer untémoignagerendant compte de la transaction. La figure4.4présente une telle interaction.

Le client commence par calculer l’identifiant de transaction idtransdéfini par

idtrans= H (nym,FS,timestamp),

où H est une fonction de hachage classique comme sha-256 [Nat12]. Cet identifiant permet de ne prendre en compte qu’un seul témoignage par transaction. Le client et le fournisseur signent cet identifiant en calculant

σnym = Sign(sknym,idtrans)

σFS = Sign(skFS,idtrans),

qu’ils transmettent ensuite aux gestionnaires de score du fournisseur. De cette façon, les ges- tionnaires de score ont la preuve que le client et le fournisseur désirent effectuer la transaction. Une fois qu’un gestionnaire a reçu les deux signatures, il confirme leur réception au client et au fournisseur.

Après réception de plus de(2n)/3confirmations des gestionnaires, le client et le fournisseur

effectuent la transaction.

Une fois la transaction complétée, le client et le fournisseur émettent leurs notes ρnymet ρFS

auprès des gestionnaires de score : les deux notes représentent l’opinion de leur émetteur sur le fournisseur. Comme la réputation s’intéresse aussi bien au service fourni qu’au comportement du fournisseur, les notes ont deux dimensions : la qualité du service fourni, ainsi que la confor- mité du comportement du fournisseur. Si, après un temps prédéfini, le client ou le fournisseur

4.3 Protocole d’interaction

Client Gestionnaire i Fournisseur

Calcul de idtrans

idtrans

idtrans, σnym idtrans, σFS

Signatures reçues Signatures reçues

Transaction

ρnym ρFS

Notes reçues Notes reçues

Figure 4.4 – Interaction entre un client et un fournisseur

n’ont pas émis de note, les gestionnaires assignent une note par défaut en considérant que les deux utilisateurs sont satisfaits : par défaut, leur note est 1.

Après réception – ou assignation par défaut – des deux notes, chaque gestionnaire de score utilise ces notes, le pseudonyme du client, ainsi que la date approximative pour créer un té- moignage local. À partir de là, les gestionnaires utilisent un algorithme du consensus pour dé- cider du témoignage conservé [LSP82], ce qui garantit que la synchronisation fonctionne tant que moins d’un tiers des gestionnaires sont malveillants ; ainsi, l’indéniabilité des témoignages (propriétés3et4) est garantie. Plus précisément, Raynal [Ray02] explique qu’une solution au problème du consensus garantit trois propriétés :

Terminaison chaque gestionnaire de score honnête choisit une valeur ;

Validité faible Si tous les gestionnaires honnêtes proposent le même témoignage, alors chaque gestionnaire honnête choisit ce témoignage ;

Accord Les gestionnaires honnêtes choisissent tous un même témoignage.

Ainsi, si le client et le fournisseur envoient les mêmes notes à chaque gestionnaire de score, le témoignage accepté par les gestionnaires honnêtes est bien le témoignage émis par les utilisa- teurs. Cependant, si le client ou le fournisseur est malveillant et envoie des notes différentes aux gestionnaires de score, alors le témoignage résultant est indéterminé.