問題描述
參考維基百科:拜占庭將軍問題
投票
Situation1
A:1,B:1,C:0
A收到的指令1和0的比例爲:2:1
B收到的指令1和0的比例爲:2:1
C收到的指令1和0的比例爲:2:1
投票結果執行1指令
Situation2
A:0,B:1,C:0
A收到的指令1和0的比例爲:1:2
B收到的指令1和0的比例爲:1:2
C收到的指令1和0的比例爲:1:2
投票結果執行0指令
Situation3
A:0,B:1/0,C:1
A收到的指令1和0的比例爲:2:1
B(故障節點)
C收到的指令1和0的比例爲:1:2
投票結果A執行1指令,C執行0指令,產生了不一致
解決辦法一:口信消息型拜占庭問題之解
- TODO
加密簽名防篡改版
Situation4
A:1,B:BAD,C:1
A:執行1指令
B:bad節點
C:執行1指令(發現被篡改指令,執行A指令)、
投票結果執行1指令,
Situation4
B:BAD,A,0,C:1
A,C: 發現來自B的信息不一致,被篡改,刪除B並重新投票.