FastTrack uses
supernodes to improve
scalability. To allow downloading from multiple sources, FastTrack employs the
UUHash hashing algorithm. While UUHash allows very large
files to be
checksummed in a short time, even on slow weak
computers, it also allows for massive
corruption of a file to go unnoticed. Many people, as well as the
RIAA, have exploited this
vulnerability to spread corrupt and fake files on the network. The FastTrack protocol uses
encryption and was not
documented by its creators. The first clients were all
closed source software. However, initialization data for the encryption algorithms is sent in the clear and no
public key encryption is used, so
reverse engineering was made comparatively easy. In 2003,
open source programmers succeeded in reverse-engineering the portion of the protocol dealing with client-
supernode communication, but the supernode-supernode communication protocol remains largely unknown. ==Clients==