VectorTrust: Trust Vector Aggregation Scheme for Trust ... - Li Lab

3 downloads 0 Views 196KB Size Report
propose a trust vector based scheme (VectorTrust) for aggre- gation of distributed ... power-nodes based aggregation scheme [5], PET personalized economic ...
VectorTrust: Trust Vector Aggregation Scheme for Trust Management in Peer-to-Peer Networks Huanyu Zhao and Xiaolin Li Scalable Software Systems Laboratory Department of Computer Science Oklahoma State University, Stillwater, OK 74078, USA Email: {huanyu, xiaolin}@cs.okstate.edu Abstract—With emerging Internet-scale open content and resource sharing, social networks, and complex cyber-physical systems, trust issues become prominent. In this paper, we propose a trust vector based scheme (VectorTrust) for aggregation of distributed trust scores. Leveraging a Bellman-Ford based algorithm for fast trust score aggregation, VectorTrust features localized and distributed concurrent communication. A VectorTrust-enabled system is decentralized by nature and does not rely on any centralized server or centralized trust aggregation. We design, implement, and analyze trust aggregation and trust management strategies. To evaluate the performance, we design and implement a VectorTrust simulator (VTSim) in an unstructured P2P network. The analysis and simulation results demonstrate the efficiency, accuracy, scalability and robustness of VectorTrust scheme. On average, VectorTrust converges faster and involves less computational complexity than most existing trust schemes. VectorTrust remains robust and tolerant to malicious peers and malicious behaviors. With dynamic growth of P2P network scales and topology complexities, VectorTrust scales well with reasonable overheads (O(lgN ) communication overheads) and fast convergence speed (about O(lgN ) steps).

I. I NTRODUCTION Peer-to-Peer computing (P2P) has made tremendous progress in fundamental data lookup and content/information retrieval. The increasing popularity of these P2P systems, social networks, online business paradigms has made them prone to malicious behaviors and attacks. Furthermore, many P2P systems do not have central administration and peers are autonomous, making them inherently insecure and untrustful. To handle trustworthiness issues of these services in open and decentralized environments, trust and reputation schemes have been proposed to establish trust among peers in P2P systems. In a trust and reputation system, historical behaviors and activites are recorded for each entity, and these statistics are used to predict how the entity is likely to behave in the future. Driven by urgent needs in commercial offerings and increasing popularity of many P2P systems for content and multimedia sharing, many trust and reputation systems have been proposed recently, for example, eBay’s feedback scheme [1], PeerTrust rating framework [2], EigenTrust (inspired by PageRank) global trust ranking system [3], GosThe research presented in this paper is supported in part by National Science Foundation (CNS-0709329).

sipTrust gossip-based aggregation scheme [4], PowerTrust power-nodes based aggregation scheme [5], PET personalized economic model [6], NICE distributed trust inference [7], and selective aggregation schemes H-Trust [8] and FuzzyTrust [9]. Some recent work tried to quantitatively model the behavior of honest and dishonest peers in trust systems [10], [11]. More trust and reputation research addressing various issues include [12], [13], [14], [15]. Comprehensive survey and overview can be found in [16], [17], [18], [19]. To ensure trustworthiness, we proposes a trust vector based trust management scheme (VectorTrust) for aggregation of distributed trust scores. It leverages a Bellman-Ford based distributed algorithm for fast trust score aggregation. Our contributions in this work are multifold. (1) We propose the notion of trust vector, trust transfer over a trust overlay network architecture. (2) We design a trust communication/propagation scheme called Trust Vector Aggregation Algorithm. This algorithm requires only localized communication between neighbor peers on the top of a peer interaction overlay network. The trust vector captures a concise snapshot of the trust overlay network from each peer’s perspective. (3) We design the inference, maintenance and evaluation schemes for VectorTrust. (4) We conduct extensive simulation evaluation and demonstrate the performance of VectorTrust schemes in terms of efficiency, accuracy, scalability and robustness compared to other major trust schemes. The rest of the paper is structured as follows. In Section II, we present and discuss the VectorTrust scheme and trust vector aggregation algorithm. Section III presents the simulation results to evaluate the performance of the proposed scheme. Section IV concludes the paper and presents the future work. II. V ECTORT RUST S CHEME A. Trust Vector and Trust Overlay Network VectorTrust system is built on a trust overlay network on the top of a P2P network. Figure 1i shows a trust overlay network. The vertices in the network correspond to peers in a system. There is an edge directed from Peer A to Peer B if and only if Peer A was a client for Peer B in a direct transaction/interaction. The real number r (r ∈ [0, 1]) of the directed edge A to B reflects how much A trusts B (TA,B = 1 indicates A 100% trusts B, TA,B = 0 indicates A never trusts

make record for all its previous clients ID to be used in trust aggregation phase.

0.8 B

0.7 A

C

0.3

0.8

0.7 0.5

0.9

D

0.6

0.9

B. Trust Vector Aggregation Algorithm

F 0.7

E 0.6

(i) Trust Overlay Network Fig. 1.

(ii) Sample Trust Table

Trust Overlay Network

B). This directed link with trust rating is called Trust Vector (TV). If Peer A has a trust rating 0.7 on B, the trust vector is TA,B = 0.7 as shown in Figure 2i. B 0.8

0.7 A

0.7 A

B

(i) Trust Vector

0.7 A

0.8 B

C

In the initial stage of an evolving trust overlay network, direct trust ratings are stored in local trust tables. However, the direct trust information is limited and does not cover all potential interactions. For most peers without adequate direct trust information, they have to use indirect trusts. We propose the Trust Vector Aggregation Algorithm (TVAA) to infer and aggregate trust values as presented in Algorithm 1. In TVAA, each trust path is aggregated to MTP with most reliable trust rating towards a target peer. Indirect trust information will be added to a trust table and be updated as the aggregation process evolves. Note that, trust aggregation does not create any new link in the trust overlay graph. Links are created or modified only after direct transactions.

C 0.5

D

0.5

(ii) Trust Transfer (iii) Most Trustable Path Fig. 2. Trust Vector

Note that the edge in a graph represents the rating for a combination of all direct transactions between two peers. This trust rating value could be obtained by applying different functions to consider all the history transactions’ importance, date, service quality, etc. How to rate a service and how to generate and normalize the accurate direct trust rating are not with the scope of this paper. Some typical apaches to calculate the local trust ratings are given in [8], [12], [9]. The VectorTrust scheme proposed in this paper studies the problem of inferring the trust value between two peers when direct trust value is not available. Suppose A wishes to find a trust value for C. If A and C had prior transactions, then A can just look up the value of edge A→C. However, if A and C never had a transaction before, A has to infer a trust value for C by using trust transfer. As shown by Figure 2ii, A has indirect trust TA,C towards C. TA,C = TA,B ∗ TB,C . Given a set of trust paths from A to C, A tends to choose the Most Trustable Path (MTP). MTP can be computed as the maximal product value of all directed edges along a path. And this product will be considered as A’s trust rating towards C. In Figure 2iii, the MTP is A→B→C, and A infers a trust rating of TA,C = 0.56 towards C. For each direct transaction in the system, participating peers generates a direct trust link and assigns a trust rating to represent the quality of this transaction. And a new link with the arrow point to the server will be added in trust graph. So each transaction in the system can either adds a new directed edge in the trust graph, or relabels the value of an existing edge with its new trust value or a compound value of both old and new trust ratings. The trust table is required for each peer. As shown by Figure 1ii, each entry shows only the next hop instead of the whole trust path. Besides of trust table, each peer has to

Algorithm 1 TVAA: Trust Vector Aggregation Algorithm 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:

12: 13:

Initialize each peer’s trust table in network loop for Each peer in network do if It is a client peer in a new direct transaction then Assigns or relabels trust rating for the server peer and inserts this information into local trust table. end if end for for Each peer in network do Sends its trust table to all pervious client peers. Receives trust tables from its neighbors Relaxes the trust ratings: Replaces existing trust ratings with more higher ones in local trust table. If the update is from peer R, updates R as next hop. end for end loop

TVAA is implemented based on distributed Bellman-Ford algorithm. Updates are performed periodically where entire or part of a peer’s trust table is sent to all its precious clients every Tp time. On receiving an update from a neighbor, each peer relax the trust ratings to all possible peers and updates its own trust table to reflect any changes, and then include relevant neighbors as the next hops. In a P2P network, some peers join or leave the network frequently, which leads to dynamic topology changes. The new joined peer can send a trust request to the network. Peers that receive the trust request choose to send back their entire trust tables. When the new peer receives the replies, their initial local trust tables are established. In VectorTrust, life time of a trust table entry is set to TL (TL > Tp ). If no update is received for TL , peer left is assumed. And the relevant entry in a trust table will be removed. A special case needs to be considered. If Peer A has a direct trust vector to Peer B, although the trust rating may be lower than an indirect path, VectorTrust still considers the direct trust

as the most trustable path. That is, in VectorTrust, the direct experience cannot be replaced by indirect trust inference. Illustrated Example. Consider a network with 6 peers as shown in Figure 1i. We illustrate the evolution of the trust table in Figure 3, where T denotes the current time (or iteration). In the figure, at each iteration, a new trust rating item is highlighted with a darker color. At time T = 0, the original trust tables are constructed according to the direct experience and are shown in Figure 3i to 3vi. The aggregation begins at time T = 0. All peers send their trust tables to all their previous clients: A to D, B to A and E, C to B, E, and F , D to A, E to C and D, and F to C and E. As these neighbors receives this information, they recalculate the trust ratings. E.g., A receives a trust table from B that tells A there is a trust path via B to C, with a trust rating of TB,C = 0.8. Since the current trust rating to B is TA,B = 0.7, then A knows it has a trust path to C that is TA,C = TA,B ∗ TB,C = 0.56. Similarly, all peers except E have gained new trust information at Time T = 1 shown in Figure 3vii to 3xii. Then all peers broadcast their trust vectors to their previous clients again. This prompts each peer to recalculate their trust tables. At time T = 4, none receives any new information that might yield any better trust path. So the algorithm stops and results in a convergence status. C. Trust Search and Trust Inference After the aggregation process, each local peer has established a trust table, which represents a current local view of the network. When there is a need to obtain a trust value on a remote peer, trust search will initiates. Assume Peer A wants to infer a trust value for a Peer F . Peer A searches for a target entry F in its own local trust table as shown in Figure 3xiii, and finds the trust rating for F is TA,F = 0.504. The MTP (A→B→C→F) can also be inferred step by step. D. Limitations and Solutions The major limitation with TVAA is the “count to infinity” problem caused by Bellman-Ford algorithm. TVAA can cause trust loops sometimes because the Bellman-Ford algorithm does not prevent loops from happening. Split Horizon with Poison Reverse technique was proposed to avoid the formation of loops (trust loops in VectorTrust), using a maximum number of hops to counter the “count-to-infinity” problem. The addition of a hold time (refusing trust updates for a few minutes after a trust retraction) also effectively avoids loops.

TABLE I S IMULATION PARAMETER S ETTING Notation N

Environment Parameter Network size

D α µr

Average peer outdegree Malicious peer percentage Initial trust rating distribution mean value Initial trust rating distribution variance Peer outdegree distribution mean value Peer outdegree variance Trust rating variance threshold Expected number of new transaction occurrences in unit service interval Peer voting threshold

σr2 µD 2 σD γ λ

θv

Default Value 100,200 to 1000(step by 200) 3,6,9 10%,30%,50% 0.25,0.75 0.1 3,6,9 (D) 1 0.02 to 0.20 10 to 50(step by 10) 50%

A. Simulation Setup and Procedure The basic parameter setting and default values used in the simulation are summarized in Table I. For honest peers, the initial trust value follows a normal distribution with mean µr = 0.75 and variance σr2 = 0.1. For malicious peers, initial trust value follows a normal distribution with mean µr = 0.25 and variance σr2 = 0.1. The network complexity is represented in terms of nodes’ outdegree D. A network complexity with D = 6 indicates that the initial nodes’ outdegrees follow a 2 normal distribution with mean µD = 6 and variance σD = 1. We use a voting threshold of θv = 50% which means one peer is identified malicious if more than 50% of eligible peers vote it as malicious. The simulation generates network topology, and initializes local trust tables following the given distribution. Then the VectorTrust aggregation processes are simulated for all peers concurrently. To measure the performance under dynamic models, new transactions is continuously generated according to a poisson distribution with an arrival rate λ = 10 to 50 transactions per service cycle, between a random source node and a random destination node. B. Results and Analysis Convergence Time. VectorTrust convergence time is measured in terms of the number of iterations needed to establish each peer’s trust table and achieve convergence status. The term “convergence” under dynamic models means that the variance between any peer’s two consecutive trust table is smaller than the pre-set threshold. Convergence Time 100

D=3 D=6 D=9

18

D=3 D=6 D=9

90

16

80

14

70

Mean Message Number

Convergence Time

The performance of VectorTrust is evaluated through simulation. We designed an event-driven simulator prototype VTSim using NetLogo, a popular multi-agent simulation engine [20]. We start with description of simulation setup and primary procedures. Performance metrics are then defined and results in terms of each metric are presented and discussed. At the end of this section, we present a thorough comparison with other existing trust schemes.

Average Message Overhead

20

III. E XPERIMENTAL E VALUATION

12 10 8 6 4

60 50 40 30 20

2

10

0 100

200

300

Fig. 4.

400

500 600 Network Size

700

800

900

Convergence Time

1000

0 100

200

Fig. 5. head

300

400

500 600 Network Size

700

800

900

1000

Average Message Over-

(i) Peer A, T=0

(ii) Peer B, T=0

(iii) Peer C, T=0

(iv) Peer D, T=0

(v) Peer E, T=0

(vi) Peer F, T=0

(vii) Peer A, T=1

(viii) Peer B, T=1

(ix) Peer C, T=1

(x) Peer D, T=1

(xi) Peer E, T=1

(xii) Peer F, T=1

(xiii) Peer A, T=4

(xiv) Peer B, T=4

(xvii) Peer E, T=4

(xviii) Peer F, T=4

Fig. 3.

(xv) Peer C, T=4 (xvi) Peer D, T=4 Illustrated VectorTrust Aggregation Example

Average Trust Path Length

Average Trust Table Size

10

1000

D=3 D=6 D=9

9 8

800 Average Trust Table Size

6 5 4 3 2

700 600 500 400 300 200

1 0 100

D=3 D=6 D=9

900

7 Average Path Length

The relationship between the network size, network complexity and convergence time are shown in Figure 4. The figure shows that VectorTrust only needs a small number of aggregation cycles before convergence. We also observe that convergence time decreases as network complexity increases. This is reasonable because in a more complex network, each peer has higher connectivity and can obtain more information in one iteration. In a network with N nodes, a peer needs logD N iterations to retrieve all relevant trust information on average. Therefore, as network size N increases, convergence time increases relatively slowly as shown in Figure 4, in the order of O(logD N ). Communication Message Overhead. Figure 5 shows the average communication message overhead for per individual peer to achieve convergence in VectorTrust. The message overhead grows slowly with network size growing, which shows that VectorTrust is a lightweight scheme. The computed trust values do not change significantly after convergence status even if there are new transactions coming. The observation is that in a network with high complexity, VectorTrust system incurs more message overheads but takes less convergence time. Overall, per service cycle, average messages needed for each peer is in the order of O(D) where D is network complexity. In a typical VectorTrust network, D is in the order of O(lg N ). To achieve convergence, it takes O(lg N ) iterations. Therefore, the average message overhead for each peer to converge is O(lg2 N ). And the average message overhead for each peer in one iteration is O(lg N ). Average Trust Path Length. Average trust path length indicates the average length of a trust path starts from a source peer to a destination peer in convergence status. The effects of various network size and network complexity on average trust

100

200

300

400

500 600 Network Size

700

800

900

1000

Fig. 6. Average Trust Path Length

0 100

200

Fig. 7.

300

400

500 600 Network Size

700

800

900

1000

Average Trust Table Size

path length are shown in Figure 6. Generally, a peer should reach its target within 6 hops. In most cases, the converged trust path is between 3 and 6. In the network where the complexity is too low, e.g., D = 3, lots of trust paths length is more than 6, and the average even reaches 8 hops. This kinds of longer trust paths involve more trust transfers and it leads to lower accuracy in inferred trust ratings. Average Trust Table Size. The average trust table size for each individual peer in VectorTrust is shown in Figure 7. The curves correspond to various network sizes and complexities. Trust table size grows with network size. That is, most peers have accesses to all other peers’ trust information over the whole network. This fact indicates the trust information spreads fast and extensively in VectorTrust. In a large P2P network, the trust table can have hundreds or thousands of entries. The storage overhead could be a burden. However, the VectorTrust P2P environment is composed mostly by fixed desktops or laptops. The storage requirement for a thousands of entities text trust table is affordable in most terminals. Query Hit Rate. A basic function in VectorTrust is trust rating query where one local peer searches in its local trust

Search Hit Rate

Aggregation Accuracy

45%

96%

98%

40%

92%

94%

96%

35%

90% 88% 86% 84%

200

300

Fig. 8.

400

500 600 Network Size

700

800

900

90% 88%

Query Hit Rate

92% 90% 88%

80% 100

845

Fig. 9.

300

400

500 600 Network Size

700

800

900

0.8 100

1000

Aggregation Accuracy

200

300

400

500 600 Network Size

700

800

900

25% 20%

5% 0 100

1000

200

300

400

500 600 Network Size

700

800

900

1000

(i) Malicious Peer Detection Rate (ii) Detection False Positive (α = (α = 10%) 10%) Detection False Positive (Malicious Peer Percentage = 30%) 50%

100%

45%

98%

40%

96%

35%

94%

False Positive

Detection Rate

Malicious Peer Detection Rate (Malicious Peer Percentage = 30%)

92% 90% 88%

D=3 D=6 D=9

30% 25% 20% 15%

86& 84%

10%

D=3 D=6 D=9

82% 80% 100

200

300

400

500 600 Network Size

700

800

900

5% 0

1000

100

200

300

400

500 600 Network Size

700

800

900

1000

(iii) Malicious Peer Detection Rate (iv) Detection False Positive (α = (α = 30%) 30%) Detection False Positive (Malicious Peer Percentage = 50%)

Malicious Peer Detection Rate (Malicious Peer Percentage = 50%)

50%

100%

45%

98%

40%

96%

35%

94%

False Positive

Detection Rate

table trying to find remote peer’s trust rating. The query hit rate is the percentage of successfully completed queries over total number of queries issued. As shown in Figure 8, when the network complexity exceeds a special threshold. The query hit rate approaches 100%. In a less complex network where peers have only a few connections to other peers, the query hit rate is much lower. In reality, such low network complexity does not happen often. We test this kind of less complex network in experiment only for comparison purpose. Accuracy. VectorTrust aggregation accuracy is measured in Figure 9. One inferred trust rating is effective if and only if the variance between the trust rating and remote peer’s real behavior (represented by a pre-set rating score) is less than the pre-set threshold γ. On average, the accuracy of VectorTrust is maintained around 90%. This result is very encouraging because VectorTrust is a personalized trust system using inferred (not direct) trust and the information for each node to access is limited. When the network complexity is low, the aggregation accuracy decreases a lot. As we discussed before, in less complex network, the longer trust paths involves more trust transfers, which leads to lower accuracy in inferred trust ratings. To eliminate the effect of long √ trust paths, we advise to use weighted trust rating rw = d r (r: trust rating, d: total hops). Malicious Peer Detection. The malicious peer detection rate and detection speed are measured. Malicious peer percentage is set as α = 10%, 30%, 50%. Figure 10 reports the malicious peer detection rate and the related false positive rate as a function of network size. In general, the false positive rate increases reversely proportional to the detection rate. In a normal network setting (D = 6, 9, α = 10%, 30%), more than 95% of malicious peers are identified with a false positive rate less than 5%. Even in a less complex network (D = 3), the detection rate still achieves 90%. VectorTrust detection malicious peer speed is shown in Figure 11. Increasing the percentage of malicious peers does not lead to lower performance. VectorTrust is able to detect most of malicious peers before aggregation converges. And malicious peers are much easier to be detected in a complex network.

30%

10%

D=3 D=6 D=9

82%

200

D=3 D=6 D=9

15%

86%

82%

1000

94%

86% 84%

D=3 D=6 D=9

82%

92%

False Positive

94%

50%

100%

Detection Rate

Effective Trust Rating Rate

Search Hit Rate

96%

80% 100

D=3 D=6 D=9

98%

98%

Detection False Positive (Malicious Peer Percentage = 10%)

Malicious Peer Detection Rate (Malicious Peer Percentage = 10%)

100%

100%

92% 90% 88%

30% 25% 20% 15%

86% 84%

10%

D=3 D=6 D=9

82% 80% 100

D=3 D=6 D=9

200

300

400

500 600 Network Size

700

800

900

5%

1000

0

100

200

300

400

500 600 Network Size

700

800

900

1000

(v) Malicious Peer Detection Rate (vi) Detection False Positive (α = (α = 50%) 50%) Fig. 10. Malicious Peer Detection Rate

peers establish local trust tables and reach convergence. Computational overhead in VectorTrust is reasonable. VectorTrust convergence time and message overhead increase slowly with network size growing, demonstrating its high scalability. The trust information spreads fast and extensively in VectorTrust. The comparison results also show that VectorTrust scheme performs well even when a large number of peers are malicious. The slightly lower accuracy is reasonable because of the nature of VectorTrust scheme. VectorTrust uses inferred trust rating in stead of direct experience. It aggregates trust ratings with a limited direct experience in the network where most of current schemes require a large number of existing direct experiences to compute trust ratings. VectorTrust is designed to be used in a distributed and decentralized network with no global trust information. Another important observation is that VectorTrust works better in more complex networks. This is encouraging because the current P2P networks are becoming more complex and VectorTrust is highly scalable.

C. Summary and Discussion Table II shows a summary of the VectorTrust system and some existing trust management schemes in terms of accuracy and efficiency. The experimental results show that VectorTrust scheme is efficient in trust aggregation. After O(lg N ) iterations, most

IV. C ONCLUSION We presented the VectorTrust scheme to manage trust in peer-to-peer networks, specifically, the trust vector, trust inference and trust vector aggregation algorithms. To validate our proposed algorithms, we conducted extensive simulation-

Malicious Peer Detection Time (Malicious Peer Percentage = 10%)

Malicious Peer Detection Time (Malicious Peer Percentage = 30%)

20

20 D=3 D=6 D=9

18

16

14

14

14

10 8

Detection Time

16

12

12 10 8

12 10 8

6

6

6

4

4

4

2

2

0 100

200

300

400

500 600 Network Size

700

800

900

1000

0 100

D=3 D=6 D=9

18

16

Detection Time

Detection Time

Malicious Peer Detection Time (Malicious Peer Percentage = 50%)

20 D=3 D=6 D=9

18

2

200

(i) α = 10% Fig. 11.

300

400

500 600 Network Size

700

800

900

1000

(ii) α = 30% Malicious Peer Detection Time

0 100

200

300

400

500 600 Network Size

700

800

900

1000

(iii) α = 50%

TABLE II S UMMARY OF SOME EXISTING TRUST AND REPUTATION SCHEMES * Trust Scheme EigenTrust PeerTrust PowerTrust GossipTrust FuzzyTrust H-Trust VectorTrust

Catergory

Convergence Speed

Overhead

Malicious Peer Detection Rate

Global full aggregation reputation system Global full aggregation reputation system Global selective aggregation reputation system Global full aggregation reputation system Global selective aggregation reputation system Personalized selective aggregation trust system Personalized full (or selective) aggregation trust system

Medium, cannot converge if pretrusted nodes leave Not available

Medium message overhead, very high computational overhead High message overhead, high computational overhead [2] Medium message overhead (lower than EigenTrust [5]), medium computation overhead Medium message overhead (average log2 N [4]), low computation overhead Median message overhead, Medium computational overhead Medium message overhead, low computation overhead [8] Medium message overhead(O(lg N )), low computational overhead

Depends on pretrust peers

Medium, faster than EigenTrust [5] Fast, log2 N [4] Medium, Increasing linearly with network size [9] Slow [8] Fast, O(logD N )

Moderate [2] High [5] High [4] more than 99% [9] more than 99% [8] 90%-99%, depends on network complexity

* This summary is presented to understand each scheme better, not for comparison purpose. It is hard to compare due to different system configurations.

based experiments. The simulation results demonstrate that VectorTrust is efficient, accurate, scalable, and robust. We believe that VectorTrust establishes a solid foundation to support trust-enabled applications and middleware. Our ongoing work is to study incentive mechanisms under VectorTrust framework to ensure fairness, truthfulness and system efficiency. We will also deploy VectorTrust in a P2P network environment (e.g. PlanetLab and EmuLab) using realworld applications. R EFERENCES [1] eBay, “www.ebay.com.” [2] L. Xiong and L. Liu, “Peertrust: Supporting reputation-based trust in peer-to-peer communities,” IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 16, no. 7, pp. 843–857, July 2004. [3] S. D. Kamvar, M. T. Schlosser, and H. G.-Molina, “The eigentrust algorithm for reputation management in p2p networks,” in Proceedings of the 12th International Conference on World Wide Web (WWW2003), Budapest,HUNGARY, May 2003. [4] R. Zhou and K. Hwang, “Gossip-based reputation management for unstructured peer-to-peer networks,” IEEE Trans. on Knowledge and Data Engineering, Jan 2007. [5] ——, “Powertrust: A robust and scalable reputation system for trusted peer-to-peer computing,” Ieee Transactions on Parallel and Distributed Systems, vol. 18, no. 5, May 2007. [6] Z. Liang and W. Shi, “Pet: A personalized trust model with reputation and risk evaluation for p2p resource sharing,” in Proc.38th Ann. Hawaii Int’l Conf. System Sciences, I. C. Press, Ed., 2005. [7] S. Lee, R. Sherwood, and B. Bhattacharjee, “Cooperative peer groups in nice,” in Proc. IEEE Conf. Computer Comm. (INFOCOM 03), I. C. Press, Ed., 2003, pp. 1272–1282. [8] H. Zhao and X. Li, “H-trust: A robust and lightweight group reputation system for p2p desktop grid,” in The 2nd International Workshop on Trust and Reputation Management in Massively Distributed Computing Systems (TRAM 2008) in conjunction with the 28th IEEE ICDCS, Beijing, China, 2008.

[9] S. Song, K. Hwang, and R. Zhou, “Trusted p2p transactions with fuzzy reputation aggregation,” IEEE Internet Computing, vol. 9, no. 6, pp. 24–34, Dec 2005. [10] Q. Zhang and T. Yu, “On the modeling of honest players in reputation systems,” in The 2nd International Workshop on Trust and Reputation Management in Massively Distributed Computing Systems (TRAM 2008) in conjunction with the 28th IEEE ICDCS 2008, Beijing, China, 2008. [11] Q. Feng, Y. Yang, Y. L. Sun, and Y. Dai, “Modeling attack behaviors in rating systems,” in The 2nd International Workshop on Trust and Reputation Management in Massively Distributed Computing Systems (TRAM 2008) in conjunction with the 28th IEEE ICDCS, Beijing, China, 2008. [12] A. A. Selcuk, E. Uzun, and M. R. Pariente, “A reputation-based trust management system for p2p networks,” International Journal of Network Security, vol. 6, no. 3, pp. 235–245, May 2008. [13] Z. Liang and W. Shi, “Analysis of ratings on trust inference in open environments,” Elsevier Performance Evaluation, vol. 65, no. 2, pp. 99– 128, Feb 2008. [14] Y. Sun, Z. Han, W. Yu, and K. J. R. Liu, “A trust evaluation framework in distributed networks: Vulnerability analysis and defense against attacks,” in IEEE INFOCOM’06, Barcelona, April 2006. [15] D. Yao, R. Tamassia, and S. Proctor, “Private distributed scalar product protocol with application to privacy-preserving computation of trust,” in Proceedings of IFIPTM-Joint iTrust and PST Conferences on Privacy, Trust Management and Security, Moncton, New Brunswick, Canada, Jul 2007. [16] P. Resnick, R. Zeckhauser, and a. K. K. E. Friedman, “Reputation systems,” Communications of the ACM, vol. 43, no. 12, pp. 45–48, 2000. [17] S. Marti and H. Garcia-Molina, “Taxonomy of trust: Categorizing p2p reputation systems,” Computer Networks, vol. 50, no. 4, pp. 472–484, Mar 2006. [18] S. Ruohomaa, L. Kutvonen, and E. Koutrouli, “Reputation management survey,” in Second International Conference on Availability, Reliability and Security (ARES’07), 2007. [19] Y. Wang and J. Vassileva, “A review on trust and reputation for web service selection,” The 1st International Workshop on Trust and Reputation Management in Massively Distributed Computing Systems (TRAM 2007) in conjunction with the 27th IEEE ICDCS, 2007. [20] U. Wilensky, “Netlogo,” Http://ccl.northwestern.edu/netlogo.