No new posts available
dpc's avatar
#

Huh, I think I finally found a BFT Consensus algo that I really like and is actually simple. Other ones that say are simple, are not, while I think this one I would be able to implement myself if needed: Simplex.

There’s a paper with pseudo-Pascal, but it is actually quite easy to follow. And on top of it there’s a website explaining it in even simpler terms.

https://simplex.blog

What I like about it:

  • actually simple to understand - I’d say simpler than Raft,
  • partial-synchrony not a problem for me,
  • works for any number of peers,
  • fast finality (in network latency terms),
  • logically atomic commits: there is no ā€œsubmitted, but still pending reaching consensusā€ stuff,
  • there’s a Go implementation that should clarify anything unclear: https://github.com/ava-labs/Simplex

dpc's avatar
(Professional)#

I guess now I won’t be able to resist to implement it…