A Framework for Trust Management System in Computational Grids Thamarai Selvi Somasundaram1, #R. Kumar1, R.A. Balachandar1, P. Balakrishnan1, K. Rajendar1,J.S. SwarnaPandian1 , G. Kannan1 , R. Rajiv1, C.A. Prasath1 1 Department of Information Technology Anna University, MIT Campus Chromepet, Chennai – 600044, India Abstract The Grid approach provides the ability to access, utilize, and control a variety of heterogeneous resources distributed across multiple domains. Choosing appropriate resources in such a distributed and heterogeneous environment brings up several challenges. Several attempts have been made to select resources based on user requirements and resources availability, but there has been no attempts made in Grids to provide selection of resources on the basis of trust. We introduce a new framework that is based on the concept of dynamic trust evaluation by taking into account of User’s experiences and the Resource provider’s efficiency. 1. Introduction Grid approach is evolving as an important trend in high-performance computing. Trust plays an important role in all grid computing interactions. Grid computing, largely used by scientific and academic communities, has been slow to enter the commercial arena. A commercial grid means the use of grid computing within the context of a business or enterprise, rather than perhaps for academic or research purposes. Consumer must trust that the service provider will provide the services they advertise and will not disclose private consumer information. Trust of the service provider's competence, availability, job efficiency and reputation will influence the consumer’s satisfaction in the selection of the service provider. Service provider must trust that the consumer is an authenticated and an authorized one, thereby making him liable in payment of goods or services. Thus, trust management has to be an intrinsic part of commercial grids. However, business transactions span across multiple organizations, possibly in different countries and not all of these domains may be trusted to the same extent. Applications will need to be able to navigate through these possibly inconsistent trust relationships. There is a need for a general-purpose trust management system for computational grids. 2. Background A trust relationship occurs between a truster, the subject that trusts a target entity, called the trustee. A truster/trustee may be a collective entity such as a company, committee or partnership. The essential components of a trust relationship are: the truster, the trustee, a specific context with associated level of trust, and the conditions under which this relationship becomes active [1]. There are several definitions about trust in literature. In this paper, we define trust as the quantified belief by a truster with respect to the competence, honesty, security and dependability of a trustee within a specified context at a given time. Trust is not symmetric, so this belief by the truster does not imply any similar belief by the trustee. Distrust is the quantified belief by a truster that a trustee is incompetent, dishonest, not secure or not dependable within a specified context. Quantification reflects that a truster can have various degrees of trust (distrust), which could be expressed as a numerical range or as a discrete classification such as low, medium or high. The context of a trust relationship is defined as a set of actions with a trust level applying to all the actions and a set of constraints, which must be evaluated for the trust relationship to apply. Hence evaluating the trustworthiness of a service provider is the important factor when we design a new trust model for commercial grids. Traditionally there are two major classes of trust models. The first class is the Central model (CM), which has a central trust point. Every entity in the Central model has the same opinion as what the central trust point has. Reputation-based systems [2], e. g. eBay [3], are the typical examples of the CM model. The certificate authority (CA) based trust model, which has been widely deployed in ecommerce [4], [5], [6], [9], [10] is the typical example. The CM model works fine if the central point is reliable and trustable. The second class is the Transitive model (TM) [7] which has a transitive trust chain. In TM, the recommendation from the recommender is highly emphasized for the trustworthiness. Actually the CM model can be seen as a special case of the TM model with just on transitive relationship and the recommendation being totally trusted. However, making use of the recommendation and other metrics are good for developing a new TM model. 3. Related Work Most of the work concerning trust has been concentrated in the area of security/reputation. These are mainly in the form of formal logics to analyze cryptographic protocols for design flaws and correctness. However, they are ill suited as general models of trust as their applications are for a specific domain. Trust models such as PGP [8] and the X.509 [11], [12] as well as trust management applications such PolicyMaker [13] and KeyNote [14] are concerned identity trust. These trust mechanisms do not consider the behavior trust which changes over time. A survey of trust in Internet applications is presented in [1] and as part of this work a policy specification language called Ponder [15] supporting behavior trust was developed. Ponder can be used to define authorization and security management policies. Ponder being extended to allow for more abstract and potentially complex trust relationships between entities across organizational domains. Abdul-Rahman and Hailes categories the trustworthy as four levels namely (“very trustworthy”, “trustworthy”, “untrustworthy”, “and very untrustworthy”). In our approach we utilized the both subjective and objective natures, inorder to reflect the evaluation of trust. Reputations are also effectively used in electronic marketplaces as a measure of the reliability of participants. For instance, with eBay, buyers and sellers can express their votes (-1, 0, or 1) for each other after each transaction. Votes so collected are used by eBay to provide cumulative ratings of users that are made known to all participants. In systems like eBay, reputations are associated with physical identities and are managed at the eBay server. Google, which is one of the well-known applications, uses the notion of trust to display the relevant information from internet web pages. It retrieves and displays the relevant documents by sorting the web pages according to the PageRank of each web page. PageRank is one of the methods that have been used by Google to determine page’s relevance or importance. Also it employs the principal eigenvector of the matrix to compute the PageRank. Reputation Systems such as CNET.com, EXP.com and expertcentral.com compute reputations by taking the feedback from experts and reviewers. OpenPrivacy (www.openprivacy.org) introduces a set of reputation services that can be used to create, use, and calculate results from accumulated opinions and reputations. Sierra, Talon, and Reptile are OpenPrivacy projects that incorporate reputations to enhance searching as well as to discard unwanted information. The ReferralWeb system helps to explore social networks. The trust which has been concentrated in the area of reputations are [4], [9], [16], [17], [18], [19] and [20]. 4. Relationship between Trust and Security Trust and security are not the same areas in the domain of e-Commerce and Grid. Unfortunately trust is sometimes confused with PKI (Public key Infrastructure). Trust models in PKI or ACL in access control systems are called objective trust models, where the objects specify strict trust relationship between entities. But they occupy much system resource and are not flexible as expected. If such system collapses, damage can’t be controlled. For these unconquerable problems of objective trust models, subjective trust as a new area and research field has gained momentum. Distributed network, ubiquitous, mobile computing, and rating systems for online communities, where maintenance of explicit certification authorities is not feasible anymore, have raised the research interest in subjective trust models. Subjective trust model describes the trust relationship between two entities as similar as the relationship in social network and defines trust relationship in a much proper way. Subjective trust model only bring light load and can adapt to flexible network environment. Most of the existing systems follow the approach of binary trust (Yes/No) values, which restricts the expression of trust to a certain degree (trusted or non-trusted). No previous interaction histories are evaluated. In terms of calculation, this is a non- calculative trust. The binary trust model fails to reflect well the real situation in security. Trust assessment may not be static. It may depend on environmental context, amount of referral from other trusted parties and the task being performed. From the above discussion we can conclude that the security and trust are two distinct concepts. Security can be used to support trust by providing a secure trusted environment, network and communication so that the trusted computation can take place. However, building trust in Grid environments also helps to reduce aspects of Security Risks [21]. 5. Trust Management System The Trust Management System proposed in this research evaluates the trust value of all grid resource providers and facilitates the selection of suitable resource for job execution based on the trust value. Though the literature proposes several types of trust in grid environment, we classify trust into five different types so that all types of trust come under our classification. We classify the trust using the three entities of the grid environment viz., the user, the resource broker and the resource provider as, Service Provision Trust – It describes relying party’s trust in a service provider. The trustor trust the trustee to provide a service that does not involve access to the trustor’s resource Equipment provision trust/Resource provision trust – It describes trust in principals for the purpose of accessing resources owned by the relying party. A trustor trusts to use resources that he owns or controls. It measures whether a resource provided by the resource provider is trustworthy. The QoS offered by the resource will determine this trust. Information provision trust – It refers to the belief that information provided by the information provider is reliable and accurate Broker’s trust – It is a measure of belief that a resource broker has discovered a trustworthy resource. User’s trust – It measures whether a resource provider is willing to offer his resources to the user. In this case, the previous behavior of the user while payment may be considered for this trust. In grid like environment, where resources from diverse organizations are shared to solve a computationally intensive problem which requires trusted resource, the real challenge lies in the determination of trustworthiness of the resource provider. Hence, the emphasis is on establishing equipment or resource provision trust. In this project, we design and develop a trust management system for establishing trust management system for determining equipment provision trust. 5.1. Lifecycle of Trust Management System A trust management system follows a specific lifecycle that goes through several stages while computing trust of a particular entity. The figure 1 shows a generalized lifecycle of a trust management system that goes through several stages. Trust Metric Identification This is the first stage of a trust management system in which the required trust metrics from which the given trust of an entity can be defined is identified. Trust Metric Evaluation In the next stage, a suitable methodology is applied to determine the value of those metrics. Trust Metric Calculation Once the values for all the metrics are computed, the overall trust value is determined using the values. It requires formalization of trust model expressed in terms of the metrics identified. The calculated trust is then stored in the database for further use. Trust Metric identification Trust Integration TMS Trust Value updation Trust Metric Evaluation Trust Metric Calculation Figure 1: Lifecycle of Trust Management System Trust Value updation Since, to reflect the dynamic nature of grid environment where trust value will change rapidly as the resources and users come and go, it is mandatory to monitor and compute the metrics periodically and calculate the trust value. This value is updated in the database to ensure that the trust management system always uses the current trust value of the entity. Trust Integration The calculated trust value is then used for making decisions towards job scheduling, service access and for other purpose depending on the type of the trust established. 5.2. Block Diagram of the Trust Management System The Trust Management System proposed in this project evaluates the trust value of all grid resource providers and facilitates the selection of suitable resource for job execution based on the trust value. It computes trust value of a resource provider based on the following three factors: Infrastructure of the organization that provides a grid resource to the grid Feedback from the user after accessing the resource and Performance metrics of the particular grid resource. evaluating their trust. The performance metrics considered are as follows: Actual Execution Time Actual Execution time is defined as the time taken by the resource provider in executing a job. It is the sum of the CPU time and the I/O waiting time of a job. Actual Execution time reflects the capability of resources in executing a particular job. Availability Availability is defined as the time during which the resource provider is available over a period of time. It brings out the difference between the Uptime (the period of time, the resource provider is ready for execution of job) and the Downtime (the period of time, the resource provider is not ready for the execution of job). Hence this plays an important role in evaluating the consistency of the Resource provider. Number of Success Success denotes the state of the job after being executed by a particular resource provider. The accumulation (total) of success parameter helps us in determining the success rate of the resource provider over his past experience in User User Feedback executing a job. Number of Failure Trust Failure denotes the state of the job after being Manager executed. More failure in executing a job Resource Resource reflects the inefficiency of a resource provider. Provider The accumulation (total) of failure parameter Registration helps us in determining the resource provider failure rate in the execution a job. Trust Trust Bandwidth Resource Metrics Computation It can be defined as the speed with which data Computation can be sent to a target resource. It is measured Performance in megabits/seconds. The purpose of considering this parameter is to determine the resource provider's network performance since it reflects the throughput of the communication Gridway Metascheduler, Ganglia, NWS link. Latency The amount of time in milliseconds, required Figure 2: Block diagram of proposed Trust to transmit a tcp message to a target resource. Management system The purpose of considered this parameter is to The proposed trust management system that determine the resource provider's network establishes equipment or resource provision trust is performance since it reflects the round trip shown in the figure 2 that follows various stages of time of the communication link.These the lifecycle. It shows several modules that works parameters are collectively called as resource together to compute the trust value of the grid performance parameters. These parameters resource providers. reflect the efficiency of the resource provider Resource Performance Module in executing a job and its network This module obtains the performance metrics of characteristics every resource providers and uses them in Resource Registration Module This module obtains infrastructure information of the resource provider during registration of the resource in to the grid. We express this information in terms of the following parameters: Governing body of the organization. This parameter allows us to classify the organization into public or private assuming public organization has a greater trust over the private organization. Registration number of the private organization. These parameters are collectively called as resource registration parameters and they reflect the reputation of the resource provider in the user community. User Feedback Module This module obtains the user’s feed back about a particular resource provider by prompting him to mention the level of satisfiability and willingness to recommend the resource to others. With this information, we classify the trust level of resource providers in to following six categories: Excellent Very Good Good Medium Low Very Low The two parameters namely the level of satisfiability and willingness to recommend are collectively called as user feedback parameters and they reflect the behavior of resource provider with user community. Trust Metrics Computation This module applies various methodologies to compute the value of trust metrics received from underlying resources. Several tools such as Ganglia, Network Weather Service were identified to determine the values of the metrics and they are integrated with the trust management system. The values are sent to the trust computation module to calculate overall trust value. Trust Computation This module gathers the input from all the above modules and computes the overall trust of a resource provider and stores it in the database. The trust represents the trustworthy of the resource provider at a given instant of time. Trust Updation This module periodically monitors the resource performance metrics and computes the overall trust value and updates in the database. Similarly, at the end of every resource access, the user feedback and resource performance metrics are obtained, and overall trust value is computed and updated in the database. The trust value obtained from the trust management system can be used for making decisions in the grid environment. In this project, the trust value of the resource provider is used to identify suitable and most trusted resource for job execution. Hence, the trust management system is proposed to be integrated with a grid metascheduler and thereby developing a grid resource broker that can discover a suitable trustworthy grid resource for job execution. The proposed four layered trusted grid architecture is shown in the figure 3. Figure 3: Layered Architecture of Trusted Grid Fabric Layer The Fabric layer deals with the resources available in grid environment and defines the interface to local resources, which may be shared. This includes computational resources, data storage, networks, catalogs, software modules, and other system resources. Grid Middleware Layer This layer refers to the grid middleware that incorporates necessary components for authentication, monitoring and discovery of grid resources, execution of job in grid resources, file transfer between grid resources. Trust Layer The trust layer is responsible for evaluating the trust value of all the grid resource providers. This layer periodically monitors the trust metrics and obtains the values of those metrics from various tools such as Ganglia, NWS, Metascheduler etc., It computes overall trust value using the metrics and stores them in the database. This trust value is used to identify the most trusted resources for job execution. Suitable grid resources that match the job requirements are discovered and they are ranked on the basis of their trust value. The resource that has most trusted value is selected for job execution. Application layer The application layer enables the use of resources in a grid environment through several portlets. It includes portlets for providing user feedback and resource registration information. This information is useful for evaluating trust value of the grid resource provider. In addition to that, this layer may include portlets that display availability of resources, results of job execution and necessary user interface components for job submission and resource request. The known issues in the Trust management system are the evaluation of the trust parameters. The two categories of parameters namely Resource registration parameter and the User feedback parameter can be obtained directly from the Resource provider and the user respectively. However to obtain the Resource performance parameters a separate methodology must be followed. The parameters namely the Actual Execution time, Success and the failure of the job are calculated using the information obtained from a grid meta scheduler. The other parameters such as the Availability, Latency and Bandwidth can be calculated using the information obtained from the Network Monitoring tools such as Network Weather Servcie, Ganglia. 6. Research Issues and Future Work We believe that the trust management in Grid has not been explored properly. We have proposed the new Trust management system for computational grids chooses the optimal resources that are available in the grid environment. According to our information we did not find any literature which points out the impact of trust on Grid environment as whole. We believe our list of suggested parameters provides a realistic and practical view of a Grid. We have suggested a complete Trust Management System Architecture for Grid and discussed its implementation issues. We are sure it will have minimal overhead in terms of computation, infrastructure, storage, and complexity In future our intention is to implement the suggested Trust Management System Architecture and integrated with meta scheduler for better performance of the resource selection and job submission. ACKNOWLDGEMENT This research work is funded by Department of Information Technology, New Delhi, India. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. References T. Grandison and M. Sloman, “A Survey of Trust in Internet Applications”, IEEE Communications Surveys and Tutorials, Vol. 4, No. 4, pp. 2-16, 2000. R.Dingledine, et al “Reputation in p2p anonymity systems”, proc.of the 1st Workshop on Economics of p2p systems June, 2003. B.Gross and et al “Balances of power on ebay:Peers or unequals.” , Workshop on Economics of p2p systems June, 2003. K.Aberer and et al “Managing trust in peer-topeer information systems.” Proceedings of the 10th International Conference on Information and Knowledge Management, 2001 Indrajit Ray and Sudip Chakraborth, “A Vector Model of Trust Developing Trustworty Systems”,1999, 259-278. Bin Yu and Munindar P.Singh, “Distributed Reputation Management For Electronic Commerce”, First International Joint Conference on Autonomous Agents and Multiagent Systems, Bologna, Italy, 2002. A. Abdul-Rahman,”The PGP Trust Model”,EDI-Forum, April 1997. P.Resnick and et al “Reputation Systems.” Communication of the ACM 43(12):4548,2001. L.Xiong and L.Liu, “A reputation-based trust model for peer-to-peer e-commerce communities”, Proc. Of the IEEE conference on e-commerce , June 2003. M.A.Josang, EGray. “Analysing topologies of transitive trust .”, In Proc of the workshop of Formal Aspects of Security and trust (FAST) 2003,sept. 2003 J. Menezes, P. C. Oorshot, and S. A. Vanstone,“Handbook of Applied Cryptography”, Fifth Edition, CRC Press, New York, 2001. C.Adams and S. Farral, “RFC2510 – Internet X.509 public key infrastructure certificate management protocols,” 1999. M.Blaze,J. Feigenbaum, and J. Lacy, 14. 15. 16. 17. 18. 19. 20. 21. “Decentralized trust management,” IEEE Conference on Security and Privacy, 1996 M. Blaze, “Using the KeyNote trust management system,” AT&T Research Labs,1999. N. Damianou, N. Dulay, E. Lupu, and M. Sloman, “The Ponder policy specification language, “Workshop on Policies for Distributed Systems and Networks, 2001. P. Resnick, R. Zeckhauser, E. Friedman and K. Kuwabara,“ Reputation systems”,Communications of the ACM 43(12):45–48, 2001 R. Dingledine, N. Mathewson, and P Syverson, “Reputation in p2p anonymity systems”, Proc. of the 1st Workshop on Economics of Peer-to-PeerSystems, June 2003. Matt Blaze, Joan Feigenbaum, and Jack Lacy “Decentralized Trust Management”, IEEE Symposium on Security and Privacy,1996, Oakland CA, May 6-8 1996. IEEE Press Ernesto Damiani, De Capitani di Vimercati Stefano Paraboschi, Pierangela Samarati, and Fabio Violante, “A reputation-based approach for choosing reliable resources in peer-to-peer networks”, 9th ACM conference on Computer ACM Press, Nov 2002 Sepandar D. Kamvar, Mario T. Schlosser, and Hector Garcia-Molina, “The EigenTrust Algorithm for Reputation Management in P2P Networks”, Twelfth International World Wide Web Conference, 2003, Budapest, Hungary, May 20-24 2003. ACM Press. Muhammad Hanif Durad, Yuanda Cao,” A Vision for the Trust Managed Grid”, Proceedings of the Sixth IEEE International Symposium on Cluster Computing and the Grid Workshops (CCGRIDW'06)