I came to the safe network because of my interest in bitcoin. I know many others do for the same reason.
This fact, combined with the difficulty of reading the widely spread and aging documentation of the safe network inspired this blog post:
MaidSafe and the safe network explained using bitcoin terminology (original blog post)
MaidSafe and the safe network explained using bitcoin terminology (github page)
It uses bitcoin terms as ‘windows’ to observe how the safe network functions (both the similarities and the differences). This hopefully makes it more comfortable for bitcoiners to approach and appreciate the safe network. I’ve found the safe network is a distinctly exciting innovation unlike the standard blockchain competitors, and want to share it with people who are most able to appreciate it.
There’s a lot of information there, about forty individual topics are addressed. It would be great if people could provide feedback and corrections before I show it to the bitcoin community.
For sake of a preview, here is the first topic:
Blockchain
The blockchain is the most important innovation of bitcoin. The purpose of the blockchain is to achieve consensus for the state of data in the bitcoin network.
The safe network addresses the same problem as the blockchain, namely that of consensus, but does not use a blockchain. The major innovation introduced by the safe network to solve the consensus problem is called ‘close group consensus’.
With bitcoin and blockchains, every node of the network has a full copy of all data on the network. As new data is added to the network, every node keeps a copy of that data.
Safe keeps only six copies of each piece of data on the network. Each piece of data is allocated a group of 32 nodes by the network to keep watch over the integrity of that piece of data. Changes to that data can only be made if there’s consensus by 28 of the 32 nodes as to the true state of the data. Because only that relatively small group of nodes must agree on the true state of the data, safe is much more efficient than bitcoin.
There is some doubt about why 32, is this secure, why not more, why not less? Rather than jump to deriving this number by proof, take a moment to consider what is being achieved by the consensus rules of both bitcoin and safe: data should not be vulnerable to being lost, corrupted, or incorrectly modified. If those 32 nodes can be manipulated (hacked or bribed etc), the data they control would not be considered secure. This concern is addressed by the first part of the phrase, ‘close’ group consensus.
Closeness is the algorithm which determines how the group governing each piece of data is formed. Members of this group are chosen by the network in a way that is very difficult to manipulate (the difficulty of doing this, like bitcoin, changes depending on the size of the network, becoming harder as the network grows). Rather than go into the details of the close group consesus algorithm here, I would instead recommend reading about xor distance as used by the safe network and follow the information trail from there.
To directly compare the language for the security of the bitcoin vs safe network, bitcoin is secured by ‘proof of work’, safe is secured by ‘close group consensus’.
For more reading about consensus using close groups rather than a blockchain, it’s worth reading Consensus Systems on the maidsafe blog.
In the same way the blockchain was the key innovation that allowed the realization of bitcoin, close group consensus is the key innovation that allows safe to provide the same functionality but with vastly improved efficiency.
If you want to contribute to this documentation it’s open source on github, so changes or additions are easy to make. Please see the readme for information about contributing.