MaidSafe Dev Update - May 24, 2018 - Introducing PARSEC


#1

As we mentioned in our previous update, and hinted at on social media in recent days, we have an announcement to make this week.

Byzantine Fault Tolerant Consensus
As a short introduction, it’s about decentralised BFT consensus - in other words, the ability for networks without a central authority (decentralised networks) to agree on a state. In practical SAFE Network terms consensus enables the network to confirm a Safecoin transaction for example, or to enable a user to store a piece of data. As you can imagine a consensus algorithm is ubiquitous in any decentralised network and that is why we’re excited to be able to bring you a next generation asynchronous Byzantine Fault Tolerant consensus algorithm that will become a key part of the SAFE Network.

It’s a protocol that enables highly asynchronous* (*assuming random delays with finite expected value) consensus and we believe it is the most elegant solution to the Byzantine Fault Tolerant problem in existence today. It will be fully open source, mathematically more simple than existing solutions and provides probability of one instead of relying on high statistical probability of consensus. And of course, unlike the blockchain, it is efficient and does not sacrifice user’s computing resources on the altar of security.

PARSEC
It’s called PARSEC (Protocol for Asynchronous, Reliable, Secure and Efficient Consensus) and the details of the RFC are available here and today we are also releasing a corresponding Whitepaper. In addition, those looking for a higher level introduction should also check out our Medium article. We hope you enjoy reading them as much as we enjoyed working on them.

As you will find, PARSEC is an effective solution to the difficult challenge of achieving vote ordering in a decentralised network, even if ⅓ of nodes minus one are malicious. This is very interesting in itself, but when we incorporate some of the other deliverables of the Routing library, such as: Add, Remove, Split, Merge and Secure message transfer the functionality this provides is quite revolutionary.

Progress together
This innovation is not just something that will work well with the SAFE Network. As many of you will be aware some projects and technologies in the cryptocurrency space (such as IOTA, ByteBall, Nano and others) are trying to achieve consensus via a DAG (Directed Acyclic Graph) and we would really hope that these projects also benefit. We will be reaching out to make them aware of PARSEC and we welcome their input. This is the beauty of open source and by working in partnership we will undoubtedly improve on the current state of the art in true decentralisation for use by all. We will never limit progress nor prevent innovation.

The bigger picture
With a highly asynchronous (*assuming random delays with finite expected value) consensus mechanism in place there is much more we can do. In the coming weeks we will release two additional papers. The next will describe PARSEC running inside a dynamic network (add/remove nodes) while the third will detail network sharding (split, merge, secure message relay). The exciting part about these papers is that the code is already written, and some of it is running in Alpha 2!

As many have speculated, this algorithm will reduce significantly the number of testnets and code we write. Instead of huge conditional sets in our codebase, it will be reduced to this algorithm. Then adding features: add, remove, split, merge and secure message relay, Routing will be complete for Alpha 3. This marks the end of the unknowns we have to face before launch. From this point on we will be finalising Vault rules, Safecoin farming, SOLID integration and all of the client APIs and bindings. Much, if not all, of this is now manageable and with some tight project management we will be able to progress with much more velocity and accuracy. To say the team are happy would be an understatement. We felt this last piece of the puzzle was essential and always possible, now it’s behind us, we are very optimistic about SAFE’s future!

That is it for this week’s update, we hope you enjoy reading the paper and pondering its implications. It’s such an important innovation that we wanted to focus the full update on PARSEC so that everyone, technical and otherwise, has the chance to dig into this and understand just how important it is. Please note that we are working on a video that will explain many of the key concepts of PARSEC and we’ll release that next week.

Most within the team have not been involved in PARSEC and have continued with Alpha 3 implementation plans, normal progress reports will resume next week!


PARSEC and MAIDSAFE
#2

First!!! Oh, yeah!!!


#3

second!!!


#4

THIRD [20 chars…]


#5

4th :smiley: (20 chars…)


#7

5th…20char…

Great update, someone could make reddit post on cryptocurrency about “Progress together” part.


#8

unbelievable how fast you are Oo

thank-you-very-much-now-the-changing-world-part-can-really-begin

ps:

can’t wait to see whats coming now =) awesome news!


#9

Brilliant, well done MaidSafe!


#10

Is this what used to be called ‘Close Group Consensus’? Was that a placeholder concept that was never quite filled in?


Parsec and Close Group Consensus
#11

Probably a stupid question. If PARSEC has a white paper does that mean it’ll have its own ICO too?

In any case, when markets are looking better, imo Maidsafe should consider doing an ICO for a dapp which would run on SAFE and would dedicate some fraction of the funds raised to help out Maidsafe.


#12

Wow… welcome to the future!

Remember this day mates. This will write our history


#13

It has its own whitepaper to prove the mathematical claims of the algorithm, but no new ICO, no!


#14

100% not, an algorithm in itself is not for profit like that. Many would, but it’s only a small part of SAFE, but should help loads of other projects.


#15

No that still exists for letting us know a block is valid. So the majority of the valid nodes have voted for something. This adds a very important feature, order and strict order amongst honest nodes. This order is vital in many places.


Parsec and Close Group Consensus
#16

9bd

So much to take in, so much good news!!!
Especially being able to share the solution with other projects. Just wow.


#17

Absolutly amazing work! A tear welled up in my eye when I read this update. Smashing work!


#18

Thanks David, So in terms of SafeCoin, PARSEC consensus will be achieved on the order or spends from owner to recipient (ie, double spend prevention) - is that the kind of application?


#19

Congratulations! Because ‘to the moon’ doesn’t quit cut it anymore (overused): the nearest star, Proxima Centauri, is about 1.3 parsecs from here…


#20

Much more than that, but yes it can prevent double spends etc. For us confirming the group members is a huge deal, then we know valid voters for group consensus. This algo though will allow any project to order events and next paper will show how to handle nodes joining and leaving. Then we show sharding done securely and at scale. It is all part of a much bigger picture for SAFE.


#21

Amazing. I’m working my way through the paper now. Fascinated to discover what this means for the decentralisation movement. I love blockchain, the only bad thing about it is the blockchain.