Echt Dezentrales Netz/modules

Aus C3D2
Wechseln zu: Navigation, Suche

PageOutline(1,,inline)

About the Module Comparison

On a sunny day at the CCC Camp 2015 Paige (Maidsafe), Alex (Ethereum), Carlo (Secushare) and Christian (GNUnet) decided to help making the modules of their projects comparable. What these projects have in common: They aim to build a better-<mouse-over: more private and secure> internet. The following tables will help identifying the multiple implementations of similar concepts and jobs and to synchronize vocabulary as a basis for further analysis and testing. For the purpose of filling these and more we will organize workshops inviting promising projects.

Rawlist of existing modules/patterns

All of the projects regarded have modules of similar functionality implemented or plan to do so as these functionalities have emerged to realize certain criteria of ours and have services functioning in a p2p-archtitecture.
Some functionalities/patterns are:


* Decentralized lookup and naming (i.e GNS vs. DNS)
* Distributed Hashtable (DHT)
* Hashtable routing
* Onion routing vs. authority free onion routing
* NAT traversal
* Link-Layer Crypto: encryption layer over transport links
* Automatic transport selection
* Pluggable interfaces for UDP, TCP, HTTPS, raw wi-fi, sneakernet
* Mesh Routing, End-to-End Circuits
* Hidden Services
* Virtual Private Networking VPN 
* User interface
* Messaging protocol
* Filesharing
* File synchronisation
* Blockchain 
* Distributed channel state storage
* Social networking abstraction
* Distributed Social Graph implementation
* Multicast: tree distribution channels + pubsub
* Byzantine consensus
* Cryptographic payments
* Gossip
* More in "A Pattern Language for Overlay Networks in Peer-to-Peer Systems"

Usage of Patterns in I2P, COR, TOR and GNUnet

I2P COR Tor GNUNet
Decentralized lookup and naming x - x
Distributed Hashtable x (i2p-) - x x
Hashtable routing x
Onion routing vs. authority free onion routing x - x -
NAT traversal x - (for HS) x
Link-Layer Crypto: encryption layer over transport links x - x x
Automatic transport selection x - x wizard guided transport selection x
Pluggable interfaces for UDP, TCP.... x x
Mesh Routing, End-to-End Circuits - x - x
Hidden Services x - x -
Virtual Private Networking VPN x (tunnel ip) - x
User interface x webinterface - - x
Messaging protocol  ? proxy for irc - - x psyc
Filesharing x - - x
File synchronisation - - - -
Blockchain
Distributed channel state storage
Social networking abstraction - x with secushare
Distributed Social Graph implementation No
Multicast: tree distribution channels + pubsub in progress
Byzantine consensus - - x (directory services do) x
Cryptographic payments x
Gossip - - x

User Interface & Usability

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= Ind.ie =||= Cocoa =|| Messaging Client Heartbeat Frontend ||  || [https://source.ind.ie/project/heartbeat-cocoa/tree/master Source] ||  ||aral ||

Many-To-Many Application Layer

File Sharing

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUNET =||= fs =|| anonymous censorship-resistant file sharing || API || Source || Doc || grothoff ||

File Synchronisation

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= Ind.ie =||= Pulse =|| secure and distributed file synchronisation engine || || Source || || aral ||

Blockchain

Social Networking

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= secushare =||= social =|| social networking abstraction || API || Source || Paper, Video || tg & lynX || ||= secushare =||= psyc =|| extensible rich messaging protocol || API || Source || Paper, Video || lynX || ||= secushare =||= psycstore =|| distributed channel state storage || API || Source || Paper, Video || tg ||


Scalability Layer

Content Distribution

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= secushare =||= multicast =|| tree distribution channels + pubsub || API || Source || Paper || tg ||

Look-Up & Naming

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= GNS =|| decentralized database that enables users to securely resolve names to values || API || Source || Doc, Video || grothoff ||

Consensus Service

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= consensus =|| … || API || Source || … || florian.dold ||


One-to-One Application Layer

Hidden Services / VPN

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= VPN =|| hidden services and virtual private networking || API || Source || Manual || grothoff ||

NAT traversal

Payment

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= TALER =||= TALER =|| taxable anonymous micropayment || ? || ? || Website || grothoff ||

Telephony

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= conversation =|| telephony system over CADET and GNS || API || Source || Manual, Video || bart.polot ||


Routing

Anonymizing Circuits

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= brahms =|| authority-free onion routing || … || … || Paper || julius.bünger ||

Distributed Hashtable

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= DHT =|| distributed hash table, key-value lookup || API || Source || Doc || grothoff || ||= SAFE Network =||= Routing =|| a secured DHT, based on a Kademlia-like implementation || API || Source || Technical paper || Forum ||

Mesh Routing, End-to-End Circuits

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= CADET =|| confidential ad-hoc decentralised end-to-end transport || API || Source || Doc, Video || bart.polot ||


Link-Layer

Transports

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= transport =|| pluggable interfaces for UDP, TCP, HTTPS, raw wi-fi, sneakernet || API || Source || Doc || grothoff || ||= GNUnet =||= ats =|| automatic transport selection || API || Source || Doc || grothoff || ||= SAFE Network =||= Crust =|| reliable P2P network connections in Rust with NAT traversal || API || Source || Technical paper || Forum ||

Link-Layer Crypto

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= core =|| encryption layer over transport links || API || Source || Doc || grothoff ||


Operating System, Libraries

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= GNUnet =||= util =|| library functions such as logging and configuration || API || Source || Doc || grothoff ||