Step-by-step: the road to Fleming, article 0: What is SAFE-Fleming?
Development
development fleming routing
Back
pierrechevalier83
MaidSafe
1
1d
A Network that respects its users
The SAFE Network is an open source software project that is designing an alternative Internet incorporating Privacy, Security and Freedom at its core.
There are many components to the Network. At the lowest level of abstraction lies Crust, a communication layer that allows any two computers to connect to each other through home routers with end-to-end encryption. At a much higher level, the Authenticator is an application that allows a user to connect to a decentralised, permissionless network without the user’s password and private key ever leaving their own machine. Between these two levels of abstraction lie many more components that make up the full design of the Network.
We’ve been building each of these layers (see our Github page for a complete list) and each component is now approaching varying degrees of completion. Integrated together for the first time over a year ago, they created a working network in the Authenticator release (a.k.a Alpha 2) of the SAFE Network.
The Routing layer
Looking at it from the backend, the Network has two key functionalities:
the user can store data on it publicly or privately;
the user can retrieve any public data on the Network or any private data that they own.
To use these features, front end (user) software - for example, the SAFE Web Browser - communicates with the SAFE Network via a set of API’s (Application Programming Interfaces).
At the heart of the Network lies the Routing layer. Seen from that layer, the Network starts as an unstructured set of computers that are connected to each other using Crust. Each computer then uses the Routing code to decide how to connect to other computers, what information to share with them and in what circumstances. The Network then emerges from a set of computers running the Routing software and fulfils those two key functionalities above.
The next big step: a permissionless decentralised network
The Alpha 2 Network is called alpha software (as opposed to a stable release) because a crucial element of the design is still outstanding: permissionless operation. For that reason, the current implementation of the Network runs on a set of trusted computers operated by MaidSafe, the company driving the effort of building the SAFE Network.
This is a staging post on the road to full release. By design, the SAFE Network is a decentralised network that runs on the storage and bandwidth of its users. Users provide resources to the Network by running a vault, which is a piece of software that lets your computer connect to others and follow the protocols that make up the Network.
The conceptual reason for taking this decentralised approach is simple: no entity can then gather users’ data without their consent. That is in stark contrast with the clearnet (the existing Internet) where most user data is centralised in data centres that are controlled by a handful of large corporations.
Because any user can run a vault anonymously, we can’t expect honest behaviour from every participant. In fact, it is a certainty that a proportion of the users of any successful network will be malicious actors trying to break some of the invariants of the network for personal gain.
This simple fact implies a technical challenge that must be solved: how do you trust a network if you can’t trust any individual participant?
1/2