Title: THE EIGENTRUST ALGORITHM FOR REPUTATION MANAGEMENT IN P2P NETWORKS
1THE EIGENTRUST ALGORITHM FOR REPUTATION
MANAGEMENT IN P2P NETWORKS
- Sepandar D. Kamvar Mario T. Schlosser Hector
Garcia-Molina - Stanford University
- International World Wide Web Conference
- Budapest, Hungary 2003
2PAPER CONTRIBUTION
- Eigentrust decreases the number of downloads of
inauthentic files - Isolates malicious peers from the network
- Basic Idea Each peer i is assigned a global
trust value this reflects the experiences of
all the peers in the network with peer i
3PAPER FLOW
- Basic Eigentrust
- Distributed Eigentrust
- Secure Eigentrust
- Experiments and Results
4PAPER FLOW
- Basic Eigentrust
- Distributed Eigentrust
- Secure Eigentrust
- Experiments and Results
5EIGENTRUST BASIC ALGORITHM
- Compute local trust value
- Normalize local trust value
- Aggregate local trust value (Distributed)
6EIGENTRUST BASIC ALGORITHM
- Compute local trust value
- Normalize local trust value
- Aggregate local trust value
7COMPUTE LOCAL TRUST VALUE
- Step1 Peer i downloads a file from peer j
- Positive transaction gt tr(i,j) 1
- Negative transaction gt tr(i,j) -1
- Step2 Local trust value sij sum of ratings of
individual transactions that peer i has
downloaded from peer j - Sij S tr(i,j)
8EIGENTRUST BASIC ALGORITHM
- Compute local trust value
- Normalize local trust value
- Aggregate local trust value
9NORMALIZE LOCAL TRUST VALUE
- Why normalize?
- To avoid maliciousness
This ensures that all values will be between 0
and 1
10EIGENTRUST BASIC ALGORITHM
- Compute local trust value
- Normalize local trust value
- Aggregate local trust value
11THE NOTION OF TRANSITIVE TRUST
- Context of Trust Good Service Vs. Good Referrals
- This Paper
- A peer will have a high opinion of those who have
provided it authentic files - The global reputation of each peer i is given by
the local trust values assigned to a peer i by
other peers, weighted by the global reputations
of the assigning peers
12AGGREGATE LOCAL TRUST VALUE
- A peer asks his friends/acquaintances about
their opinions - of other peers
- where tik represents the trust that peer i places
in peer k - based on asking his friends.
- Probabilistically, if an agent were searching
for reputable - peers, it would crawl the network using the
following rule at - each peer i, it will crawl to peer j with the
probability of cij
13FORMAL NOTATION
- C matrix cij where C is the normalized local
trust matrix - ti vector containing the values tik
- ti CT ci where ci is the local trust
vector
Now, peer i gains a view of the network wider
than his own experience t (CT)2 ci
(asking friends friends) t (CT)n ci
(complete view of the network) If n is large, ti
will converge to the same vector for every peer
i. At convergence, t is the eigenvector of C.
14EIGENTRUST BASIC ALGORITHM
- Compute local trust value
- Normalize local trust value
- Aggregate local trust value
15EIGENTRUST PRACTICAL ISSUES
- A Priori Notion of Trust
- Inactive Peers
- Malicious Collectives
16A PRIORI NOTION 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
17INACTIVE PEERS
- If peer i does not download from anybody else,
or assigns a 0 score to all peers, cij will be
undefined
- Redefine cij so that if a peer i does not know
anyone, or does not trust anyone, he will choose
to trust the pre-trusted peers
18MALICIOUS 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 To make sure that no pre-trusted peer
is a member of a malicious collective (that would
compromise the algorithm)
19PAPER FLOW
- Basic Eigentrust
- Distributed Eigentrust
- Secure Eigentrust
20DISTRIBUTED EIGENTRUST
- Each peer 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
21DISTRIBUTED EIGENTRUST
- Observations
- 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
22PAPER FLOW
- Basic Eigentrust
- Distributed Eigentrust
- Secure Eigentrust
23SECURE EIGENTRUST
- Earlier Each peer computes and reports its own
trust value ti - Drawback Malicious peers can easily report false
trust values - Secure Eigentrust
- Trust value of a peer must not be computed by and
reside at the peer itself - Trust value of one peer will be computed by more
than one other peer (use of majority vote to
avoid malicious results)
24SECURE EIGENTRUST
- M peers (score managers) compute trust value of
peer i - Use Distributed Hash Table (DHT) to get M score
managers
- 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.
25SECURE 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
26PAPER FLOW
- Basic Eigentrust
- Distributed Eigentrust
- Secure Eigentrust
27USING GLOBAL TRUST VALUES IMPLICATIONS
- Isolating Malicious Peers
- Highly trusted peers gt overloading a few peers
- Select peers probabilistically based on trust
value - Limits number of unsatisfactory downloads
- Balances network load
- Allows newcomers to build up their reputation
- Peers may also bias their choice of download
- Avoid download from a peer that has given it bad
service, even if gives rest of the network good
service
28USING GLOBAL TRUST VALUES
- Incentivize freeriders to share
- Reward reputable peers (Increased connectivity,
greater BW) - Incentive to share files
- Gives non-malicious peers an incentive to delete
inauthentic files
29PAPER FLOW
- Basic Eigentrust
- Distributed Eigentrust
- Secure Eigentrust
- Experiments and Results
30SIMULATION SETTINGS
31EXPERIMENT LOAD DISTRIBUTION MODEL
32EXPERIMENT THREAT MODELS
33EXPERIMENT THREAT MODELS A,B
34EXPERIMENT THREAT MODEL C
35EXPERIMENT THREAT MODEL D
36THANK YOU!
37PROBABILISTIC INTERPRETATION
- Markov Chain Collection of random values (t1,
t2,,tn) - whose probabilities at a time interval depends on
the value - of the number at a previous time.
- t2 CT t1
- .
- .
- tn CTtn-1 (convergence at tn )
- tn1 CTtn (here, tn tn1)
- tn1 CTtn1 (eigenvector definition, Av cv)
- At convergence, t is the eigenvector of C.