What is PeerShare?

PeerShare is an information sharing application built on top of an open source p2p application called Phex, which uses Gnutella protocol. We're planning to add content-specific handlers to our application so that users can retrieve focused results from the network based on keywords and the target content type they specified in their queries. The first handler for our application is an efficient BibTeX entry searcher. (We named the first release of our application 'BibShare') In addition, we will incorporate multilevel sharing agreement among users. This will enable users to differentiate the users with whom they can share their information based on the confidentiality of the content. For example, users may not want to share photo images with strangers, but only with their family members or close friends. Finally, we shall use this application as a test bed for our trust management system.

 

Why do we need BibShare?

A popular choice of formatting research papers is LaTeX, because LaTeX provides a simple, clean, text-based syntax for constructing nicely formatted papers, and also LaTeX provides strong support for mathematical equations and symbols. When citing paper references in LaTeX, one can use BibTeX files, which are files containing a list of citations, and the user can refer to each citation using a standard shorthand notation. For example, a paper on Google could be referred to using the keyword "google", and that citation in the LaTeX document will be automatically used to insert the correct citation from the BibTeX file.

As more and more research papers are being presented, it becomes more troublesome to maintain the BibTeX files. This is because the BibTeX files could be so large as to contain hundreds or even thousands of references. Also, since BibTeX files are hand-written, they could contain incorrect or incomplete information. Another issue is that each user could have one or several BibTeX files, and when we try to find a certain reference from the file, we could be unpleasantly surprised to find out there is one copy of the same citation in each file, but the citation data differs.

To simplify the process of finding BibTeX files on different people's computers, we believe that using a peer-to-peer (P2P) system would do the job well. This P2P system would actually be specifically targeted for accessing BibTeX files, although it could be used to share other file types as well. This means that the system would be able to parse and understand BibTeX files. What is more important is that the system would provide a formal BibTeX file ranking system so that users can know how trustworthy a given BibTeX file is. By using such a system, users can instantly search through the BibTeX files of other users in the same system, and then find the citation that they are looking for effortlessly. We believe that this system would be useful to the research community in general and users will find that they can share their many different BibTeX files with many people easily and efficiently.

BibShare was implemented with this motivation. It has been extended from a class project of Dr. Ling Liu's Advanced Internet Application Development class in Spring of 2004. BibShare's module for indexing BibTeX files was taken from the project.