1 unstable release
0.1.0 | Feb 26, 2024 |
---|
#14 in #anti-censorship
776 downloads per month
Used in 4 crates
(2 directly)
2KB
About
Earendil is a decentralized, censorship-resistant packet-routing overlay network designed for performance and censorship resistance. It enables secure and private communication between nodes, even against powerful state-level adversaries.
Currently, the project is extremely early-stage and not ready to use. Stay tuned for updates!
Key Features
- Robust censorship resistance
- Confederal, non-egalitarian topology
- Decentralized, sybil-resistant incentives based on micropayments
- User-tunable anonymity/performance tradeoff
User documentation
Detailed info can be found in the Earendil documentation.
Developers
Layout of the crate
This repository is laid out as a Cargo workspace.
The primary, "root" crate is earendil
, the primary daemon intended to be run on any machine that wishes to access Earendil (similar to the tor
daemon for Tor).
Other crates live in libraries/
:
earendil_packet
implements structs for the Earendil packet format at different layers of the protocol, such as the onion-encrypted mixnet format and the format that carries the end-to-end application messages.earendil_topology
implements functionality for Earendil's relay graph, including helper functions for gossip
Overall, we follow an architecture where the crates in libraries/
avoid doing any I/O, and instead implement data types. Actual communication is done by the earendil
daemon.
Quick example
See the docs
Dependencies
~5–16MB
~170K SLoC