1 the eigentrust algorithm for reputation management in p2p networks sepandar d.kamvar, mario...

53
1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hec tor Garcia-Molina Stanford University Appeared in WWW 2003, Budapest, Hungary Speaker : Yu-Hsin Shih Date : 2007/09/04

Upload: douglas-gaines

Post on 31-Dec-2015

221 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

1

The EigenTrust Algorithm for Reputation Management in P2P NetworksSepandar D.Kamvar, Mario T.Schlosser, Hector Garc

ia-MolinaStanford University

Appeared in WWW 2003, Budapest, Hungary

Speaker : Yu-Hsin Shih

Date : 2007/09/04

Page 2: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

2

Outline

Problem

Basic EigenTrust

Distributed EigenTrust

Secure EigenTrust

Global Trust Value

Experiments and Results

Page 3: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

3

Problem

Motivation: Reduce inauthentic files

distributed by malicious peers in a P2P network

Goal: Identify sources of

inauthentic files and malicious peers against downloading from them

Page 4: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

4

Problem (cont.)

Problem How to aggregate local trust value without a centr

alized server From a few peers – cannot get a wide view of P2P netw

ork From all peers – may congest the network

Page 5: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

5

Problem (cont.)

Method Each peer i is assigned a global

trust value, which reflects the experiences of all peers in the network with peer i

Page 6: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

6

Outline

Problem

Basic EigenTrust

Distributed EigenTrust

Secure EigenTrust

Global Trust Value

Experiments and Results

Page 7: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

7

Terminology

Local trust value: cij

The opinion that peer i has on peer j, based on past experience

Global trust value: ti

The trust that the entire system places on peer i

Peer 1

Peer 3

Peer 2

Peer 4

C21=0.3

C23=0.7

C14=0.01

C12=0.6

t3=0.55

t2=0.3

t1=0.15

t4=0

Page 8: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

8

Basic EigenTrust

1. Compute local trust value

2. Normalize local trust value

3. Aggregate local trust value

Page 9: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

9

Basic EigenTrust

1. Compute local trust value

2. Normalize local trust value

3. Aggregate local trust value

Page 10: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

10

Compute Local Trust Value

Step 1: Peer i downloads a file from peer j

Positive transaction tr(i,j) = 1

Negative transaction tr(i,j) = -1

Step 2: Local trust value sij = sum of ratings of individual transactions that peer i has downloaded from peer j

sij = Σ tr(i,j)

Page 11: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

11

Basic EigenTrust

1. Compute local trust value

2. Normalize local trust value

3. Aggregate local trust value

Page 12: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

12

Normalize Local Trust Value

..

All cij are non-negative

ci1 + ci2 + . . . + cin = 1 C14=0.1

C12=0.9

Peer 1

Peer 2

Peer 4

Page 13: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

13

Normalize Local Trust Value (cont.) Local trust vector ci :

contains all local trust values cij that peer i has on other peers j

C14=0.1

C12=0.9

Peer 1

Peer 2

Peer 4

1.0

0

9.0

0

Peer 1

c1

0

0

Peer 2

Peer 4

Page 14: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

14

Normalize Local Trust Value (cont.) Drawback

Normalized values do not distinguish between peers with no interaction and peers with poor experience

Normalized values are relative, not absolute interpretation

Page 15: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

15

Basic EigenTrust

1. Compute local trust value

2. Normalize local trust value

3. Aggregate local trust value

Page 16: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

16

Past History

Each peer biases its choice of downloads using its own opinion vector ci.

If it has had good past experience with peer j, it will be more likely to download from that peer.

Problem – Each peer has limited past experience. Knows few other peers.

0

0

0

0

0

0

Peer 4

Peer 1

???

?

??

Peer 6

Page 17: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

17

Friends of Friends

Ask for the opinions of people who you trust

Weight their opinions by your trust in them

0

0

0

0

0

0

Peer 4

Peer 1

0

0

0

0

0

0

Peer 2

Peer 8

Peer 6

Page 18: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

18

The Math

j

jkijik cct

Ask your friends j

Weight each friend’s opinion by how much you trust him.

What your friends think of peer k

0.2 0.3 0.5 1 0 0

.1

.3

.2

.3

.1

.1

.2 .1.6 0 0 0.2

'it i

T tC

Page 19: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

19

Problems with Friends

Either you know a lot of friends, in which case you have to compute and store many values.

Or, you have few friends, in which case you won’t know many peers, even after asking your friends.

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Page 20: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

20

Goals

Want each peer to Know all peers Perform minimal computation and storage

Page 21: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

21

To Know All Peers

Ask your friends:

t = CTci

Ask friends’ friends:

t = (CT)2ci

Keep asking until t converges:

t = (CT)nci

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Page 22: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

22

Minimal Computation

Luckily, the global trust vector t, if is computed in this manner, converge to the same thing for every peer!

Therefore, each peer doesn’t have to store and computes its own global trust vector. The whole network can cooperate to store and compute t.

Page 23: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

23

Non-distributed Algorithm

Initialize:

Repeat until converges

T(0)t

nn

1...

1

(k)T1)(k tCt

Page 24: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

24

Practical Issues

A priori notions of trust

Inactive Peers

Malicious Collectives

Page 25: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

25

A Priori Notions of Trust

Assuming that some peers in the network are trustworthy

Define a distribution p over pre-trusted peers P, such that pi = 1 / |P|

In the presence of malicious peers, t = (CT)n p will converge faster so p is used as the start vector

Page 26: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

26

Inactive Peers

If peer i doesn’t download from anybody else or assigns 0 to all peers, cij will be undefined:

Redefine cij. If a peer i doesn’t know anyone or doesn’t trust anyone, he will choose to trust per-trusted peers

Page 27: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

27

Malicious Collectives

Break collectives by having each peer place at least some trust in the peers P that are not a part of the collective

How? Probabilistically, an agent crawling the network is less likely to get stuck crawling a malicious collective

Challenge: Make sure that no pre-trusted peer is a member of malicious collective

Page 28: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

28

Outline

Problem

Basic EigenTrust

Distributed EigenTrust

Secure EigenTrust

Global Trust Value

Experiments and Results

Page 29: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

29

Distributed EigenTrust

Each peer i stores its local trust vector ci and global trust vector ti

Computation, storage, message overheads are minimal

In P2P networks, each peer has limited interactions with other peers. So most of the trust values will be 0.

In the case of a network with heavily active peers, limit the number of local trust values cij that each peer can report

Page 30: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

30

Distributed EigenTrust AlgorithmFor each peer i {

-First, ask peers who know you for their opinions of you.

-Repeat until convergence {

-Compute current trust value: ti(k+1) = (1-a)(c1i t1

(k) +…+

cni tn(k))+api

-Send your opinion cij and trust value ti(k+1) to your

acquaintances.

-Wait for the peers who know you to send you their trust

values and opinions.

}

}

Page 31: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

31

Algorithm Complexity

Algorithm converges fast: around 100 query cycles for a network of 1000 peers

Computed global trust values do not change significantly any more after a low number of iterations

Page 32: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

32

Outline

Problem

Basic EigenTrust

Distributed EigenTrust

Secure EigenTrust

Global Trust Value

Experiments and Results

Page 33: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

33

Secure EigenTrust

Previously, each peer computes and reports its own global trust value ti.

Drawback: Malicious peers can easily report false trust values

Secure EigenTrust

A peer’s trust value must not be computed by and reside at the peer itself.

Trust value of one peer will be computed by more than one peer. (use majority vote to avoid malicious results)

Page 34: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

34

Secure EigenTrust

M peers (score managers) compute trust value of peer i Use Distributed Hash Table (DHT) to get M score mangers

Hash unique ID of peer (IP address, TCP port) using hash functions h1, h2, h3 into points in the logical coordinate space

The peers corresponding to the points become the score managers.

Page 35: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

35

Secure EigenTrust : Properties Anonymity

A peer at a specific coordinate cannot find out for whom it computes the trust value

Randomization Peers that enter the system cannot select at which

coordinates in the hash space they want to be located

Redundancy Several score managers compute the trust value for one

peer

Page 36: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

36

Outline

Problem

Basic EigenTrust

Distributed EigenTrust

Secure EigenTrust

Global Trust Value

Experiments and Results

Page 37: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

37

Global Trust Value

When you get responses from multiple peers

DeterministicChoose the one with highest trust value

ProbabilisticChoose a peer with probability proportional to its trust value

Page 38: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

38

Deterministic Download

Choose the one with highest trust value

Advantage High probability to access authentic files

Disadvantage Highly trusted peers will be overloaded.

Newcomers have little chance to build up reputation

Page 39: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

39

Deterministic Download

Choose the one with highest trust value

Page 40: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

40

Probabilistic Download

Choose a peer with probability proportional to its trust value

Advantage Limit number of unsatisfactory downloads

Balance network load

Allow newcomers to build up reputation

Page 41: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

41

Probabilistic Download

Choose a peer with probability proportional to its trust value

Page 42: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

43

Using Global Trust Values

Isolating Malicious Peers

Select peers probabilistically based on trust value

, where d is a constant between 0 and 1.

In this way, a peer avoid downloading from another peer who gives it bad discriminatory service.

Page 43: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

44

Using Global Trust Values

Stimulating Free-riders to Share

Reward reputable peers Increase connectivity, greater bandwidth

Effect

Incentive to share files Give non-malicious peers an incentive to delete

inauthentic files

Page 44: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

45

Outline

Problem

Basic EigenTrust

Distributed EigenTrust

Secure EigenTrust

Global Trust Value

Experiments and Results

Page 45: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

46

Threat Scenarios

Malicious Individuals Always provide inauthentic

files

Malicious Collective Always provide inauthentic

files Know each other. Give each

other good opinions and give other bad opinions.

Page 46: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

47

Threat Scenarios (cont.)

Camouflaged Collective Provide authentic files some of

the time to trick good peers into giving them good opinions.

Malicious Spies Some members of the collective

give good files all the time, but give good opinions to malicious peers.

Page 47: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

48

Malicious Individuals

Page 48: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

49

Malicious Collective

Page 49: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

50

Camouflaged Collective

Page 50: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

51

Malicious Spies

Page 51: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

52

Summary

EigenTrust Dramatically reduce number of inauthentic file do

wnloads in the network Robust to malicious peers Low overhead

Page 52: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

53

Reference

Kamvar’s slides & paper http://www.stanford.edu/~sdkamvar/talks/EigenTrust.ppt http://www.stanford.edu/~sdkamvar/papers/eigentrust.pdf

Page 53: 1 The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar, Mario T.Schlosser, Hector Garcia-Molina Stanford University Appeared

54

Thank you!