Phex
| Company type | Free software |
|---|---|
| Industry | File sharing software |
| Founded | April 2001 |
| Founder | Konrad Haenel |
Area served | Worldwide |
| Products | Peer-to-peer file sharing application |
| Website | phex |
Phex is a peer-to-peer file sharing application designed for the gnutella network, released as free software under the GNU General Public License. It requires Java SE version 5.0 or newer to operate.
Features
Phex supports the latest functionalities of the gnutella network, including the creation of private networks over the internet, sophisticated filtering of search results, and displaying client country flags. It also allows exporting lists of shared files in various formats compatible with other Phex users.
The release of version 3.2.0.102 added compatibility with Tiger Tree hashes, which improves defense against corrupted or poisoned downloads. When combined with swarming techniques, segmented downloading, and the Download Mesh feature, Phex offers fast, secure, and fully decentralized file transfers comparable to those available through BitTorrent.
History
The foundation for Phex was laid by FURI, an early gnutella client developed in Java by William W. Wong and distributed under the GNU GPL. Although FURI was innovative due to its Java implementation, it never progressed beyond Beta status and was discontinued around 2000, leading many users to switch to alternatives such as LimeWire.
In April 2001, Konrad Haenel forked FURI to initiate the Phex project but departed later that year. Subsequently, Gregor K. took over development and continues to lead it today. Initial versions of Phex were distributed as Java JAR files, which restricted usability on platforms like Mac OS. To mitigate this limitation, MacPhex was created as a Mac-specific wrapper offering additional functionality.
Anonymous Phex
Since 2006, an anonymous variant named I2Phex has been available, which leverages the I2p network to mask users’ IP addresses within this gnutella client. Plans include merging I2Phex features into future official Phex releases.
Unlike using the public IP infrastructure, I2Phex routes traffic through encrypted tunnels provided by the I2p anonymity network. This traffic is mixed with other data streams via a garlic routing mechanism, making it difficult to trace file sources or recipients.
Due to bandwidth limitations on anonymous networks, file sharing capabilities are often restricted; typically such networks support only searching or tracking for protocols like BitTorrent. Nodes participating in garlic routing may reject routing file-sharing data, increasing the likelihood that connections can be identified. Furthermore, outgoing traffic is not encrypted end-to-end in some cases, potentially compromising anonymity.
Several clients such as LimeWire, FrostWire, gtk-gnutella, and Phex implement TLS to encrypt communications between nodes. While TLS does not provide anonymity like I2P, it prevents ISPs from filtering gnutella traffic and makes tracing more difficult.
Phex with Tor
It is possible to configure Phex to use a SOCKS5 proxy that routes gnutella network traffic over the Tor system. This setup involves chaining a SOCKS5 proxy through the Tor client, thereby enhancing privacy during file-sharing sessions.
Academic studies
Phex has been analyzed in various academic research projects concerning decentralized architectures, search methodologies, and trust frameworks within peer-to-peer networks. Key studies include:
- A decentralized recommendation framework based on self-organizing partnerships (Università di Torino, 2006)
- EPITELLA: Improving Gnutella search efficiency using epidemic dissemination models (University College London, 2006)
- Analysis of shared content and user request patterns in Gnutella (University of Rostock, 2004)
- Trust management based on reputation in peer-to-peer environments (Iowa State University, 2003)
See also
External links
- Official resources: website, Wiki, Discussion forum
- Project page hosted on SourceForge.net
- Gnutella web caches for identifying peer IP addresses
- Contributor statistics and code quality at Ohloh
- Interview on gulli.com (2007)