HOME

TheInfoList



OR:

Phex is a
peer-to-peer file sharing Peer-to-peer file sharing is the distribution and sharing of digital media using peer-to-peer (P2P) networking technology. P2P file sharing allows users to access media files such as books, music, movies, and games using a P2P software program tha ...
client for the
gnutella Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million computer ...
network, released under the terms of the
GNU General Public License The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the Four Freedoms (Free software), four freedoms to run, study, share, and modify the software. The license was th ...
, so Phex is
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
. Phex is based on
Java SE Java Platform, Standard Edition (Java SE) is a computing platform for development and deployment of portable code for desktop and server environments. Java SE was formerly known as Java 2 Platform, Standard Edition (J2SE). The platform uses Ja ...
5.0 or later.


Features

Phex supports most of the recent features of the gnutella network. Additionally it enables the creation of private networks over the internet, has a powerful search result filter, shows client country flags, and can export the list of shared files into multiple formats, some of which can also be read out and downloaded directly by another Phex. Version 3.2.0.102 also supports Tiger Tree hashes for uploads and downloads, providing full protection against poisoned downloads. Together with Swarming, segmented file transfer, and the Download Mesh this makes downloads as efficient and safe as BitTorrent downloads, yet completely decentralized by design.


History

''FURI'' was an early
gnutella Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million computer ...
client written by William W. Wong and released under the
GNU General Public License The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the Four Freedoms (Free software), four freedoms to run, study, share, and modify the software. The license was th ...
. The software was notable at the time of its release for being written entirely in
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
. The software was capable of running on Java 1.1 as long as the user downloaded external Swing libraries. If these libraries were unavailable, Java 1.2 was required. Officially, the program never left Beta status. The author eventually stopped maintaining the software, resulting in users migrating to other clients like
LimeWire LimeWire was a free software, free peer-to-peer file sharing client for Microsoft Windows, Windows, MacOS, Linux and Solaris OS, Solaris. Created by Mark Gorton in 2000, it was most prominently a tool used for the download and distribution of O ...
. The last update to the software was on May 1, 2000. In April 2001 Konrad Haenel forked the rarely updated gnutella client ''FURI'' to form Phex. While he participated in the Phex project initially, he left in late 2001. The project member Gregor K. continued to develop Phex and is the lead developer today. Early versions of Phex were released simply as a java
jar A jar is a rigid, cylindrical or slightly conical container, typically made of glass, ceramic, or plastic, with a wide mouth or opening that can be closed with a lid, screw cap, lug cap, cork stopper, roll-on cap, crimp-on cap, press-on c ...
file, limiting their ease of use on some platforms such as the Mac OS. MacPhex was an alternative version made available on the Phex website and supported by macXster. It wrapped Phex in a double click-able application and occasionally added small additional features unique to the Mac OS.


Anonymous Phex

Since 2006, an anonymous version of Phex has been available: ''I2Phex'', which uses the
I2p The Invisible Internet Project (I2P) is an anonymous network layer (implemented as a mix network) that allows for censorship-resistant, peer-to-peer communication. Anonymous connections are achieved by encrypting the user's traffic (by using ...
network to hide the
IP address An Internet Protocol address (IP address) is a numerical label such as that is connected to a computer network that uses the Internet Protocol for communication.. Updated by . An IP address serves two main functions: network interface ident ...
of the users of this
gnutella Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million computer ...
client. The future roadmap is to integrate the ''I2Phex'' code into one of the next Phex versions. Rather than use the public IP network, ''I2Phex'' uses encrypted tunnels through the
I2p The Invisible Internet Project (I2P) is an anonymous network layer (implemented as a mix network) that allows for censorship-resistant, peer-to-peer communication. Anonymous connections are achieved by encrypting the user's traffic (by using ...
privacy/encryption network. Traffic is mixed with other network traffic (see
mix network Mix networks are routing protocols that create hard-to-trace communications by using a chain of proxy servers known as ''mixes'' which take in messages from multiple senders, shuffle them, and send them back out in random order to the next desti ...
) through a
garlic routing Garlic routing is a variant of onion routing that encrypts multiple messages together to make it more difficult for attackers to perform traffic analysis and to increase the speed of data transfer. Michael J. Freedman defined "garlic routing" as ...
system, making it difficult for outside observers to identify originators or the recipients of a file through traffic analysis. Anonymous networks have been remiss to host file sharing protocols due to bandwidth considerations. Often only searching (or tracking for BitTorrent) are supported. Nodes within the
garlic routing Garlic routing is a variant of onion routing that encrypts multiple messages together to make it more difficult for attackers to perform traffic analysis and to increase the speed of data transfer. Michael J. Freedman defined "garlic routing" as ...
system could refuse to route file sharing traffic. This makes inbound and outbound connections easier to locate. Outbound traffic is unencrypted so associating it with the inbound node will break the anonymity.
LimeWire LimeWire was a free software, free peer-to-peer file sharing client for Microsoft Windows, Windows, MacOS, Linux and Solaris OS, Solaris. Created by Mark Gorton in 2000, it was most prominently a tool used for the download and distribution of O ...
,
FrostWire FrostWire is a free and open-source BitTorrent client first released in September 2004, as a fork of LimeWire. It was initially very similar to LimeWire in appearance and functionality, but over time developers added more features, including sup ...
,
gtk-gnutella gtk-gnutella is a peer-to-peer file sharing application which runs on the gnutella network. gtk-gnutella uses the GTK+ toolkit for its graphical user interface. Released under the GNU General Public License, gtk-gnutella is free software. Histo ...
, and Phex all support the use of TLS to encrypt traffic between nodes. TLS is not anonymous like
I2P The Invisible Internet Project (I2P) is an anonymous network layer (implemented as a mix network) that allows for censorship-resistant, peer-to-peer communication. Anonymous connections are achieved by encrypting the user's traffic (by using ...
, however, it does prevent ISPs from filtering
gnutella Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million computer ...
content and makes it more difficult to trace traffic.


Phex with Tor

It is possible to use Phex with
SOCKS A sock is a piece of clothing worn on the feet and often covering the ankle or some part of the calf. Some types of shoes or boots are typically worn over socks. In ancient times, socks were made from leather or matted animal hair. In the late ...
5 proxy. Using that feature it is possible to route gnutella traffic via
Tor Tor, TOR or ToR may refer to: Places * Tor, Pallars, a village in Spain * Tor, former name of Sloviansk, Ukraine, a city * Mount Tor, Tasmania, Australia, an extinct volcano * Tor Bay, Devon, England * Tor River, Western New Guinea, Indonesia Sc ...
and then to Phex. This is possible by using SOCKS5 cascading
proxy Proxy may refer to: * Proxy or agent (law), a substitute authorized to act for another entity or a document which authorizes the agent so to act * Proxy (climate), a measured variable used to infer the value of a variable of interest in climate ...
to Tor client.


Academic studies

Various academic studies are based on Phex: * * * *


See also

*
Anonymous P2P An anonymous P2P communication system is a peer-to-peer distributed application in which the nodes, which are used to share resources, or participants are anonymous or pseudonymous. Anonymity of participants is usually achieved by special routi ...
*
Comparison of Gnutella software Gnutella is a peer-to-peer network protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million compute ...


References


External links

* Official
web siteWikiForum

Project page
at
SourceForge.net SourceForge is a web service that offers software consumers a centralized online location to control and manage open-source software projects and research business software. It provides source code repository hosting, bug tracking, mirroring ...

Gnutella web caches
where to find peers IPs
Code quality and contributor statistics
a
Ohloh
*
Interview in gulli.com
(2007) {{File sharing File sharing software for Linux MacOS file sharing software Windows file sharing software Free software programmed in Java (programming language) Free file sharing software