Echt Dezentrales Netz/modules: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
(Removing all content from page)
(added modules)
Zeile 1: Zeile 1:
[[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 [wiki:Ting Ting] inviting [https://wiki.c3d2.de/EDN#Recherche promising projects].
If your project project has a module that possibly does a similar job to a listed one, just add a row to its table. If you have modules that do not fit, try making up suitable categories.
This [ProjectsFeatureList table] and [https://wiki.c3d2.de/EDN#Recherche list of projects] may be helpful.
----
= 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 || [https://gnunet.org/svn/gnunet/src/include/gnunet_fs_service.h API] || [https://gnunet.org/svn/gnunet/src/fs/ Source] || [https://gnunet.org/file-sharing-service Doc] || grothoff ||
=== File Synchronisation ===
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= Ind.ie =||= Pulse =|| secure and distributed file synchronisation engine || || [https://source.ind.ie/project/pulse Source] || || aral ||
=== Blockchain ===
== Social Networking ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= secushare =||= social =|| social networking abstraction || [https://gnunet.org/svn/gnunet/src/include/gnunet_social_service.h API] || [https://gnunet.org/svn/gnunet/src/social/ Source] || [https://gnunet.org/design-social-messaging-system Paper], [https://gnunet.org/internetistschuld Video] || tg & lynX ||
||= secushare =||= psyc =|| extensible rich messaging protocol || [https://gnunet.org/svn/gnunet/src/include/gnunet_psyc_service.h API] || [https://gnunet.org/svn/gnunet/src/psyc/ Source] || [https://gnunet.org/design-social-messaging-system Paper], [http://youbroketheinternet.org/#30c3scalability Video] || lynX ||
||= secushare =||= psycstore =|| distributed channel state storage || [https://gnunet.org/svn/gnunet/src/include/gnunet_psycstore_service.h API] || [https://gnunet.org/svn/gnunet/src/psycstore/ Source] || [https://gnunet.org/design-social-messaging-system Paper], [http://youbroketheinternet.org/#30c3scalability Video] || tg ||
----
= Scalability Layer =
== Content Distribution ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= secushare =||= multicast =|| tree distribution channels + pubsub || [https://gnunet.org/svn/gnunet/src/include/gnunet_multicast_service.h API] || [https://gnunet.org/svn/gnunet/src/multicast/ Source] || [https://gnunet.org/design-social-messaging-system 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 || [https://gnunet.org/svn/gnunet/src/include/gnunet_gns_service.h API] || [https://gnunet.org/svn/gnunet/src/gns/ Source] || [https://gnunet.org/gns-implementation Doc], [https://gnunet.org/internetistschuld Video] || grothoff ||
== Consensus Service ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= GNUnet =||= consensus =|| … || [https://gnunet.org/svn/gnunet/src/include/gnunet_consensus_service.h API] || [https://gnunet.org/svn/gnunet/src/consensus/ 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 || [https://gnunet.org/svn/gnunet/src/include/gnunet_vpn_service.h API] || [https://gnunet.org/svn/gnunet/src/vpn/ Source] || [https://gnunet.org/gnunet-pt Manual] || grothoff ||
== NAT traversal ==
== Payment ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= TALER =||= TALER =|| taxable anonymous micropayment || ? || ? || [http://taler.net Website] || grothoff ||
== Telephony ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= GNUnet =||= conversation =|| telephony system over CADET and GNS || [https://gnunet.org/svn/gnunet/src/include/gnunet_conversation_service.h API] || [https://gnunet.org/svn/gnunet/src/conversation/ Source] || [https://gnunet.org/book/export/html/2244 Manual], [http://youbroketheinternet.org/#30c3apps Video] || bart.polot ||
----
= Routing =
== Anonymizing Circuits ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= GNUnet =||= brahms =|| authority-free onion routing || … || … || [https://gnunet.org/brahms Paper] || julius.bünger ||
== Distributed Hashtable ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= GNUnet =||= DHT =|| distributed hash table, key-value lookup || [https://gnunet.org/svn/gnunet/src/include/gnunet_dht_service.h API] || [https://gnunet.org/svn/gnunet/src/dht/ Source] || [https://gnunet.org/developer-handbook-dht Doc] || grothoff ||
||= SAFE Network =||= Routing =|| a secured DHT, based on a Kademlia-like implementation || [http://maidsafe.net/routing/master/routing/index.html API] || [https://github.com/maidsafe/routing Source] || [http://maidsafe.net/Whitepapers/pdf/MaidSafeDistributedHashTable.pdf Technical paper] || [https://forum.safenetwork.io Forum] ||
== Mesh Routing, End-to-End Circuits ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= GNUnet =||= CADET =|| confidential ad-hoc decentralised end-to-end transport || [https://gnunet.org/svn/gnunet/src/include/gnunet_cadet_service.h API] || [https://gnunet.org/svn/gnunet/src/cadet/ Source] || [https://gnunet.org/cadet-subsystem Doc], [http://youbroketheinternet.org/#30c3meshnet 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 || [https://gnunet.org/svn/gnunet/src/include/gnunet_transport_service.h API] || [https://gnunet.org/svn/gnunet/src/transport/ Source] || [https://gnunet.org/transport-service Doc] || grothoff ||
||= GNUnet =||= ats =|| automatic transport selection || [https://gnunet.org/svn/gnunet/src/include/gnunet_ats_service.h API] || [https://gnunet.org/svn/gnunet/src/ats/ Source] || [https://gnunet.org/ats-subsystem Doc] || grothoff ||
||= SAFE Network =||= Crust =|| reliable P2P network connections in Rust with NAT traversal || [http://maidsafe.net/crust/master/crust/index.html API] || [https://github.com/maidsafe/crust Source] || [http://maidsafe.net/Whitepapers/pdf/DHTbasedNATTraversal.pdf Technical paper] || [https://forum.safenetwork.io Forum] ||
== Link-Layer Crypto ==
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= GNUnet =||= core =|| encryption layer over transport links || [https://gnunet.org/svn/gnunet/src/include/gnunet_core_service.h API] || [https://gnunet.org/svn/gnunet/src/core/ Source] || [https://gnunet.org/gnunet-core-subsystem Doc] || grothoff ||
----
= Operating System, Libraries =
||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =||
||= GNUnet =||= util =|| library functions such as logging and configuration || [https://gnunet.org/svn/gnunet/src/include/gnunet_util.h API] || [https://gnunet.org/svn/gnunet/src/util/ Source] || [https://gnunet.org/libgnunetutil Doc] || grothoff ||
----
= Rawlist of existing modules/patterns =
All of the [PromisingProjects projects] 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 [http://www.researchgate.net/publication/221034643_A_Pattern_Language_for_Overlay_Networks_in_Peer-to-Peer_Systems "A Pattern Language for Overlay Networks in Peer-to-Peer Systems"]

Version vom 11. Dezember 2015, 22:39 Uhr

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 [wiki:Ting Ting] inviting promising projects.


If your project project has a module that possibly does a similar job to a listed one, just add a row to its table. If you have modules that do not fit, try making up suitable categories.


This [ProjectsFeatureList table] and list of projects may be helpful.



User Interface & Usability

||= Project =||= Module =||= Description =||= API =||= Source =||= Docs =||= Contact =|| ||= Ind.ie =||= Cocoa =|| Messaging Client Heartbeat Frontend || || 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 ||


Rawlist of existing modules/patterns

All of the [PromisingProjects projects] 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"