A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | AA | AB | AC | AD | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Requirement | Veilid | Freenet-Locutus (2023) | Yggdrasil | Braid | Earthstar (Willow) | P2Panda | Secure Scuttlebutt | Nostr | Polycentric | Berty (Wesh) | NewNode | Session | SimpleX | |||||||||||||||||
2 | Core Function | Anonymity Network | Distributed Computation | Overlay Network | State Synchronization | Decentralized Collaboration | Decentalized Collaboration | Social Network | Social Network | Social Network | Private Messaging | Private Messaging | Private Messaging | Private Messaging | |||||||||||||||||
3 | Decentralized (No Single Point of Failure) | YES | PARTIAL: uses DHT to find peers | NO: clients provide relay defaults | |||||||||||||||||||||||||||
4 | Private (Packets Encrypted in Transit) | YES | YES | YES | PARTIAL: depends on the transport | YES | YES | YES | YES | ||||||||||||||||||||||
5 | Authenticated (Signed Events) | YES | YES | YES: all messages are signed | YES | ||||||||||||||||||||||||||
6 | Anonymous (Peer Obfuscation) | YES | NO | NO | NO | NO | NO | NO: identity trivially linked to IP address | NO: partly centralized architecture | ||||||||||||||||||||||
7 | Censorship Resistant (Blind Replication) | NO | PARTIAL: explicit replication | PARTIAL: some content on multiple relays | |||||||||||||||||||||||||||
8 | Perfect Forward Secrecy | YES | YES | NO | |||||||||||||||||||||||||||
9 | Blockchain / Distributed Ledger | NO | NO | NO | NO | YES: each user/feed has its own blockchain | NO | ||||||||||||||||||||||||
10 | Content Publishing | YES: most existing web servers work | YES | YES: public feeds and reactions | YES | ||||||||||||||||||||||||||
11 | Distributed Storage | YES: DHT | YES: DHT (WASM contracts) | NO | YES: append-only log | YES: append-only DAG (tangle) | YES: followers replicate all content | PARTIAL: between clients and relays only | |||||||||||||||||||||||
12 | Distributed Storage: Verified Order | YES: block chain | |||||||||||||||||||||||||||||
13 | Distributed Storage: Mutability | N/A | YES | YES | |||||||||||||||||||||||||||
14 | Distributed Storage: Mutability (multi-player) | N/A | YES | YES | PARTIAL: events | ||||||||||||||||||||||||||
15 | Distributed Storage: Ephemerality | N/A | YES | ||||||||||||||||||||||||||||
16 | Private Messaging | PARTIAL: VeilidChat work in progress | NO | NO | YES: encrypted but still replicated publicly | YES: core use case | |||||||||||||||||||||||||
17 | Private Messaging: Store/Forward | N/A | YES: identical to other content | ||||||||||||||||||||||||||||
18 | Private Messaging: Sealed Sender | N/A | YES | ||||||||||||||||||||||||||||
19 | Private Messaging: End-to-End Encrypted | N/A | YES | ||||||||||||||||||||||||||||
20 | Private Messaging: Groups | NO | YES | ||||||||||||||||||||||||||||
21 | Supports Linux | YES: veilid-server, veilid-cli | YES | YES | YES: Manyverse | ||||||||||||||||||||||||||
22 | Supports Android | PARTIAL: VeilidChat work in progress | YES | YES: Manyverse | YES | ||||||||||||||||||||||||||
23 | Supports Web Client | PARTIAL: WASM implementation | YES | YES | YES | PARTIAL: ssbweb | YES | YES | |||||||||||||||||||||||
24 | Tolerates Short Lived Connections | YES | PARTIAL: syncing can take a while | ||||||||||||||||||||||||||||
25 | Relay Servers: Public | YES | YES | YES: "pubs" | YES | YES | |||||||||||||||||||||||||
26 | Relay Servers: Private | YES | YES: "rooms" | ||||||||||||||||||||||||||||
27 | Decentralized Identity | NO | N/A | YES: public key | YES: public key | YES | |||||||||||||||||||||||||
28 | Shared Identity Across Devices | N/A | NO: one identity per device | NO: planned | |||||||||||||||||||||||||||
29 | Friend-to-Friend / Friendnet | YES: possible if configured properly | YES: can be enforced with custom key | ||||||||||||||||||||||||||||
30 | Offline First Operation | NO | YES: all operations local first, synced later | NO | |||||||||||||||||||||||||||
31 | Transport via Internet | YES | YES | YES | YES | YES | YES | YES | YES | YES | YES: libp2p | YES | YES | ||||||||||||||||||
32 | Transport via Local Area Network | YES | YES | PARTIAL: requires manual deployment | YES: libp2p | ||||||||||||||||||||||||||
33 | Transport via Nearby Device | NO | PARTIAL: bluetooth unmaintained | YES: BLE, Nearby | |||||||||||||||||||||||||||
34 | Transport via Sneakernet | NO | PARTIAL: proposed | PARTIAL: conceptually possible | |||||||||||||||||||||||||||
35 | Transport via Long Distance Radio | NO | |||||||||||||||||||||||||||||
36 | Bridged to Plainnet Internet | NO | N/A | YES | N/A | N/A | N/A | Plainnet, web frontends | Plainnet, web browsers | ||||||||||||||||||||||
37 | Transparent Layer-3 Network Proxy | NO | YES | ||||||||||||||||||||||||||||
38 | Stable Release / Maintained | PARTIAL | PARTIAL | YES | YES | PARTIAL: new maintainer, being rewritten to use the Willow protocol | NO | YES | YES | YES | |||||||||||||||||||||
39 | Open Source | YES | YES | YES | YES | YES | YES | YES | YES | YES | |||||||||||||||||||||
40 | Programming language | Rust / Dart | Rust | Go | Javascript / Rust | Rust | Javascript / Rust | Go / Javascript | |||||||||||||||||||||||
41 | |||||||||||||||||||||||||||||||
42 | |||||||||||||||||||||||||||||||
43 | |||||||||||||||||||||||||||||||
44 | |||||||||||||||||||||||||||||||
45 | |||||||||||||||||||||||||||||||
46 | |||||||||||||||||||||||||||||||
47 | |||||||||||||||||||||||||||||||
48 | |||||||||||||||||||||||||||||||
49 | |||||||||||||||||||||||||||||||
50 | |||||||||||||||||||||||||||||||
51 | |||||||||||||||||||||||||||||||
52 | |||||||||||||||||||||||||||||||
53 | |||||||||||||||||||||||||||||||
54 | |||||||||||||||||||||||||||||||
55 | |||||||||||||||||||||||||||||||
56 | |||||||||||||||||||||||||||||||
57 | |||||||||||||||||||||||||||||||
58 | |||||||||||||||||||||||||||||||
59 | |||||||||||||||||||||||||||||||
60 | |||||||||||||||||||||||||||||||
61 | |||||||||||||||||||||||||||||||
62 | |||||||||||||||||||||||||||||||
63 | |||||||||||||||||||||||||||||||
64 | |||||||||||||||||||||||||||||||
65 | |||||||||||||||||||||||||||||||
66 | |||||||||||||||||||||||||||||||
67 | |||||||||||||||||||||||||||||||
68 | |||||||||||||||||||||||||||||||
69 | |||||||||||||||||||||||||||||||
70 | |||||||||||||||||||||||||||||||
71 | |||||||||||||||||||||||||||||||
72 | |||||||||||||||||||||||||||||||
73 | |||||||||||||||||||||||||||||||
74 | |||||||||||||||||||||||||||||||
75 | |||||||||||||||||||||||||||||||
76 | |||||||||||||||||||||||||||||||
77 | |||||||||||||||||||||||||||||||
78 | |||||||||||||||||||||||||||||||
79 | |||||||||||||||||||||||||||||||
80 | |||||||||||||||||||||||||||||||
81 | |||||||||||||||||||||||||||||||
82 | |||||||||||||||||||||||||||||||
83 | |||||||||||||||||||||||||||||||
84 | |||||||||||||||||||||||||||||||
85 | |||||||||||||||||||||||||||||||
86 | |||||||||||||||||||||||||||||||
87 | |||||||||||||||||||||||||||||||
88 | |||||||||||||||||||||||||||||||
89 | |||||||||||||||||||||||||||||||
90 | |||||||||||||||||||||||||||||||
91 | |||||||||||||||||||||||||||||||
92 | |||||||||||||||||||||||||||||||
93 | |||||||||||||||||||||||||||||||
94 | |||||||||||||||||||||||||||||||
95 | |||||||||||||||||||||||||||||||
96 | |||||||||||||||||||||||||||||||
97 | |||||||||||||||||||||||||||||||
98 | |||||||||||||||||||||||||||||||
99 | |||||||||||||||||||||||||||||||
100 |