1 Introduction
In recent years, peer-to-peer (P2P) computing has gained its popularity in many large-scale distributed applications over the Internet. These include distributed file-sharing [22], digital content delivery [23], and P2P Grid computing [8]. Despite the demand of robustness and scalability of P2P systems, the anonymous and dynamic nature of peer activities make them often very vulnerable to abuses by selfish and malicious peers [11], [27]. For example, most P2P file-sharing networks, e.g., Gnutella, consist of autonomous peers with special self-interests. There is no efficient way to prevent malicious peers from joining the open networks.