4 ms·
> If I want to architect a peer-to-peer application that needs to achieve consensus, what are some of the provably correct protocols/algorithms? None. Ever.¹ P
by acuozzo 4y ago
> If I want to architect a peer-to-peer application that needs to achieve consensus, what are some of the provably correct protocols/algorithms?
None. Ever.¹ Proof: https://groups.csail.mit.edu/tds/papers/Lynch/jacm85.pdf https://groups.csail.mit.edu/tds/papers/Lynch/jacm85.pdf
[1] Assuming that peers in your application can crash.
- vivegi 4y agoThanks. Interesting paper. > THEOREM 2. There is a partially correct consensus protocol in which all nonfaulty processes always reach a decision, provided no processes die during its execution and a strict majority of the processes are alive initially. This seems to be the silver lining from the paper for practitioners.
- acuozzo 4y ago> This seems to be the silver lining from the paper for practitioners. Indeed. Of course, the hard (impossible?) part is ensuring that no peers die.