FriendShare: A secure and reliable framework for file sharing on network
Introduction
File sharing is an extensive application which can be deployed using client-server or peer to peer (P2P) architecture. Client server architecture uses a server which can be a single point of failure, since all the requests pass through that server. This architecture also has problems related to privacy of data. Peer to Peer networks may decrease the threat related of file tampering and increases the access control for users. But these networks are open, hence there are chances that some nodes may act selfish and ignores user's request for a file while downloading a lot of content from other users. Misbehaving nodes can distribute malicious files which can be further transferred by unsuspected users. These systems have a reputation value associated with various nodes. But, in this case also, some users can form a group and try to increase their reputation by fake transactions within the group, known as Collusion attack (Lian et al., 2007). One other attack known as Sybil (Yu et al., 2010) attack is another issue in such systems. In the Sybil attack, user creates fake accounts and increase their reputation by doing fake transactions between them. Higher reputation increases the probability of being chosen as server for a file. In addition, there may be some nodes which try to download many files but shares little called as Free riding nodes (Krishnan et al., 2004). These nodes reflect their selfish behavior resulting in selfish transactions. Collusion, Sybil and Selfish transactions are possible in P2P networks since it is difficult to detect the Collusion groups. The proposed system, we called it as FriendShare, uses a novel approach to restrict such transactions. It uses social network's (Ellisonet al, 2007) trust links for transactions. To overcome the shortcomings mentioned above, FriendShare consists of following components - Social Network, Query Manager, Reputation System, Weighted Graph System and Caching System.
FriendShare transfers file by finding path between client and server in the weighted social network graph by imposing conditions on the edges of the graph which helps in blocking malicious transactions. Further, reputation value is used to provide trusted server for a file. Caching system helps in reducing the query response time. Following are the contributions of proposed work:
- ∙
FriendShare reduces the overhead of calculating reputation for each transaction. Reputation value will be computed only when file is found in non-friend users. But as the number of transactions increase, the chances for the file to be found among friends increases hence decreases the overhead for calculating reputation.
- ∙
FriendShare uses weighted graph system along with reputation system that helps in eliminating Collusion groups, Sybil groups and Free-riders from the network.
- ∙
FriendShare uses caching that reduces the number of hops required for fulfilling the query and also reduces the overhead of reputation calculation.
The remainder of this paper is arranged as follows. Section 2 presents the related work. Section 3 introduces the design of FriendShare. In Section 4, the performance of FriendShare is evaluated through simulation. Section 5 concludes this paper with discussion on future work.
Section snippets
Related works
This section presents the works reported in the literature similar to the presented work. Initially, the available works on reputation based file sharing systems is presented. Next, some of the caching scheme that can be used in such systems are presented.
Popescu (2004) proposed Turtle, which is a peer to peer sharing system that uses the concept of “friend of a friend”. Queries for searching and retrieving takes place through friends. This system states a protocol for searching and retrieving
Design of FriendShare
FriendShare leverages the concept of “friend of a friend” transactions where every transaction takes place between friends or through friends. FriendShare enables the tag based searching where user can search the file in the network and relevant files will be shown on the basis of tags. After choosing a file, it will be searched in the cache. If file is not present in the cache, then it will be searched among friends. Each user maintains the list of friends sorted by rank and any one of its
Dataset and simulation description
We conducted simulation to show the performance of FriendShare. Simulation is coded in Java and carried out on two desktops. One contains Intel Core i5-3230 CPU at 2.60 GHz and 4 GB Memory. Other contains Intel Core i7-3770 CPU at 3.40 GHz and 8 GB Memory. The experi-ment is performed in Windows 8.1 pro and Windows 7 Professional Operating Systems. Qi defines a file sharing system along with evaluation procedure. Most of the experimental evaluation procedures and parameters for FriendShare are
Conclusions and future work
FriendShare is a social network based file sharing system where each transaction takes place through friends. A mutual friend can vouch for two non-friend users, which creates the trust in the transactions. FriendShare has lesser reputation calculation overhead, enhanced reputation evaluation accuracy and the capability of preventing malicious transactions like Sybil attack, Collusion attacks and Selfish transctions. FriendShare-Reputation can be used in file sharing system to restrict
Acknowledgment
The authors are thankful to Digital India Corporation (formerly Media Lab Asia), Ministry of Electronics and Information Technology, Government of India, for grant under Visvesvaraya Scheme. We are thankful to the anonymous reviewers and the editor for their valuable comments, which really helped in improving the manuscript.
Abhinav Jain is currently working in IT Industry and has an experience of around 3 years in the Industry. He has completed Master of Technology in Information Technology and Bachelor of Technology in Computer Science and Engineering from Department of Computer Science and Engineering, Indian Institute of Technology (IIT) Roorkee, India in 2015. His areas of interest include Software Engineering, Algorithms, Data mining, Social Networks and File Systems.
References (40)
- et al.
Scalable and efficient file sharing in information-centric networking
J. Netw. Comput. Appl.
(2015) - et al.
Incentive mechanism for p2p file sharing based on social network and game theory
J. Netw. Comput. Appl.
(2014) - et al.
Peer discovery for d2d communications based on social attribute and service attribute
J. Netw. Comput. Appl.
(2017) - et al.
A social network integrated reputation system for cooperative p2p file sharing
Improving WWW Proxies Performance with Greedy-dual-size-frequency Caching Policy
(1998)- D. DeFigueiredo, A. Garcia, B. Kramer, Analysis of Peer-to-peer Network Security Using Gnutella, Department of Computer...
Social network sites: definition, history, and scholarship
J. Computer-Mediated Commun.
(2007)- D. Hughes, G. Coulson, J. Walkerdine, Free riding on gnutella revisited: the bell tolls?, IEEE Distr. Syst. Online...
- et al.
Squirrel: a decentralized peer-to-peer web cache
- et al.
Decentralized content sharing among tourists in visiting hotspots
J. Netw. Comput. Appl.
(2017)
The eigentrust algorithm for reputation management in p2p networks
The impact of free-riding on peer-to-peer networks
Are file swapping networks cacheable? characterizing p2p traffic
Graph evolution: densification and shrinking diameters
ACM Trans. Knowl. Discov. Data
Social-p2p: social network-based p2p file sharing system
Research of peer-to-peer network architecture
An empirical study of collusion behavior in the maze p2p file-sharing system
Exploiting bittorrent for fun (but not profit)
Safe and private data sharing with turtle: friends team-up and beat the system (transcript of discussion)
Cited by (2)
Performance based Risk driven Trust (PRTrust): On modeling of secured service sharing in peer-to-peer federated cloud
2022, Computer CommunicationsCitation Excerpt :Table 1 highlights some of the proposed trust and risk models for establishing trust in the cloud, using SLA, reputation, recommendation mechanism that forms the basis of this work. In SLA based trust models [99–103], the parameters to measure infrastructure and service performance, security and compliance, QoS, etc., are contracted between the cloud service provider and the consumer. The models provide mathematical techniques for collection, measurement and aggregation of these parameters to compute the trust for decision making [103–105].
An Effective and Secure Data Sharing in P2P Network Using Biased Contribution Index Based Rumour Riding Protocol (BCIRR)
2020, Optical Memory and Neural Networks (Information Optics)
Abhinav Jain is currently working in IT Industry and has an experience of around 3 years in the Industry. He has completed Master of Technology in Information Technology and Bachelor of Technology in Computer Science and Engineering from Department of Computer Science and Engineering, Indian Institute of Technology (IIT) Roorkee, India in 2015. His areas of interest include Software Engineering, Algorithms, Data mining, Social Networks and File Systems.
Sandeep Kumar (SMIEEE' 17) is currently working as a Faculty in the Department of Computer Science and Engineering, Indian Institute of Technology (IIT) Roorkee, India. He has supervised more than thirty master dissertations, about fifteen under-graduate projects. He has supervised three PhD thesis and is currently supervising four PhD students. He has published more than fourty research papers in international/national journals and conferences and has also written book/book-chapters with Springer (USA) and IGI Publications (USA). He has also filed patent for his work done along with his students. Dr. Sandeep is the member of board of examiners and board of studies of various universities and institutions. He has collaborations in industry and academia. He is currently handling multiple national and international re-search/consultancy projects. He has received NSF/TCPP early adopter award-2014, 2015, ITS Travel Award 2011 and 2013, Young Faculty Research Fellowship 2018 (MeitY, Govt. of India) and others. He is the Senior member of IEEE and the member of ACM. His name has also been enlisted in major directories such as Marquis Who's Who, IBC and others. He is also working/worked in collaboration with industries such as Adobe Research India Labs, IBM Systems, and others. His areas of interest include Semantic Web, Web Services, Multi-Agent systems, Software Engineering, and Social Networks.