200 likes | 226 Views
The EigenTrust Algorithm for Reputation Management in P2P Networks. Sepandar D.Kamvar Mario T.Schlosser Hector Garcia-Molina Presenter: Jianming Zhou. Problem. Problem in P2P: Inauthentic files distributed by malicious nodes Objective:
E N D
The EigenTrust Algorithm for Reputation Management in P2P Networks Sepandar D.Kamvar Mario T.Schlosser Hector Garcia-Molina Presenter: Jianming Zhou
Problem • Problem in P2P: • Inauthentic files distributed by malicious nodes • Objective: • Identify the source of inauthentic files and bias against downloading from them • Basic Idea • Reputation System: • Assign a trust value to each peer on its previous behaviors
Challenges • Need an distributed reputation system • Success like C/S reputation system (eg. eBay) • Provide comprehensive evaluation of peer • Lower overhead • Desired features • Self-policy, i.e., no central server • Maintain anonymity • Robust to malicious node and sybil attack • Minimal overhead
EigenTrust -- Intro • Basic idea • Each peer has a Global Reputation given by the local trust values assigned by other peers • Terminology • Local trust value: cij • The opinion peer i has of peer j, based on past exp. • Each time peer i downloads an authentic/inauthentic file from peer j, cijincreases/decreases. • Global trust value: ti • The trust that the entire system places in peer i
More about Local trust value • Normalization • Otherwise, malicious peers can assign arbitrarily high local trust value to other malicious peers • All cij is non-negative • ci1+ci2+ci3+…+cin = 1 • Local Trust Vector: ci • contains all local trust values cij that peer i has of other peers j
Other Approaches • Foundation of EigenTrust • Reply on past experience • Friend-friend reference • Past Experience • Each peer bias choice based on its vector ci • Peer with good experience will likely be selected • Problem: each peer has limited past experience, knowing few other peers • Friend-friend reference • Ask friend opinion of other peers • Weight their opinion by your trust in them • Problem: various number of friends for each peer What their opinion of peer k Ask friend j Weight your friend’s opinion by how much you trust them
EigenTrust • Combine and enhance • Comprehensive, i.e., knowing all peers • Lower overhead in term of computation and storage • Comprehensive • Iterative friend-friend reference • Ask your friend: • Ask their friend: • Ask until all nodes: • N large, converge to same vector for every peer i • Peers can cooperate to compute and store t
Basic Algorithm:non-distributed • Non-distributed • Initialize • Repeat until converge
Distributed algorithm 1 • Each peer store its local trust vector • Each peer store its own global trust value • Each peer compute its own ti • The component-wise version of • is the distribution over pre-trusted peers • Anti- malicious collectives and guarantee converge
Distributed algorithm 2 For each peer i { -First, ask peers who know you for their opinions of you. -Repeat until convergence { -Compute current trust value: ti (k+1) = c1it1(k) +…+ cnitn(k) -Send your opinion cij and trust value ti(k) to your acquaintances. -Wait for the peers who know you to send you their trust values and opinions. } }
Secure EigenTrust • Peer should not hold its own t • Problem: malicious node can report false value • Solution: different peer compute t for one peer • Leverage DHT • T should not be computed by only one peer • Problem: malicious node can collude • Solution: multiple score managers + majority rule • Score manager: peer i is j’s score manager if i computes its global trust value
Usage of global trust value • Isolating malicious nodes • bias the download from more reputable nodes • Potential problem: highly trusted node overloaded • Incenting freeriders to share • Hinder the spread of inauthentic files
Performance • Setup • Node selection in trust system • Deterministic algorithm => overload • Probabilistic algorithm => balanced
Performance • Thread Model • A:Individual Malicious Peers • B:Malicious Collectives • C:Malicious Collectives with Camoflouge • D:Malicious Spies
Conclusion • EigenTrust • Dramatically reduces number of inauthentic files on the network. • Robust to malicious peers. • Low overhead