6 releases
0.5.8 | Aug 2, 2024 |
---|---|
0.5.7 | Aug 2, 2024 |
0.2.0 | Jul 5, 2024 |
0.1.1 | Apr 5, 2024 |
0.1.0 | Feb 26, 2024 |
#1197 in Cryptography
74 downloads per month
Used in 5 crates
15KB
317 lines
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
~6.5MB
~146K SLoC