The Circle is a peer-to-peer distributed file storage application built in Python. It is based on Chord, which is a member of the distributed hash table (DHT) algorithms.
Some of the more unusual features:
- Most DHT don't cope well with very common keys. The Circle has a probabilistic mechanism for sharing common keys between nodes.
- The Circle's chat mechanism is quite advanced: you can find people who aren't currently online, send messages to people not currently online, send a message to a channel (IRC-style), see who on your buddy list is online. This is achieved using a combination of crypto, a distributed caching mechanism, and a clever use of the DHT.
- The DHT implementation is vulnerable to denial of service attacks.
The Circle currently provides:
- File sharing
- Instant messaging and IRC-style chat
- A personalized, trust-based news service
- Proxying for the Debian APT system