Jump to content

Phex

From Alfawiki
Phex
Company typeFree software
IndustryFile sharing software
FoundedApril 2001; 25 years ago (2001-04)
FounderKonrad Haenel
Area served
Worldwide
ProductsPeer-to-peer file sharing application
Websitephex.sourceforge.net

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