Byzantine Broadcast Problem and SMR
在存在Byzantine nodes的情况下,如何设计一个同时满足consistency和liveness的协议?ref https://write.as/xytang/byzantine-nodes-and-smr
A plugin to rotating leader idea
Idea
Stick with rotating leader approach.
Subroutine
- 一个sender,known to all up front
- 这个sender唯一知晓一个input v*
Goal
- Termination: 每一个honest node最终都会对v*有一个猜测v1并停下
- Agreement: 所有的honest nodes选择同一个v1
- Validity: 如果sender是honest node,v1 = v*
Notes
- 不对Byzantine node有任何假设
- 三个要求,满足任意两个是容易的:1+2 = 永远使用同一个v;1+3 = just trust the sender is honest;2+3 =