在线无码中文破解|日本影院一区二区三区|五月激情Av在线|国产香蕉视频一区|国产老熟女AAAA|云霸高清91视频|久久久www视频|在线熟女网站无码视频|国产精品 国产|韩日精品中文字幕

風(fēng)險提示:理性看待區(qū)塊鏈,提高風(fēng)險意識!

解析中本聰如何用比特幣解決在分布式結(jié)構(gòu)中“拜占庭將軍”難題的?

1個回答

匿名用戶5星評價

2019-08-14 10:53:02

解析中本聰如何用比特幣解決在分布式結(jié)構(gòu)中“拜占庭將軍”難題的?

一群拜占庭將軍分別各率領(lǐng)一支軍隊共同攻打一座城市。假如軍隊只有進攻或撤離兩種選擇。因此將軍們必須通過投票來選擇最終的策略,也就是所有軍隊一起進攻或所有軍隊一起撤離。

因為各位將軍分處城市不同方向,他們只能通過信使互相聯(lián)系。在投票過程中每位將軍都將自己投票給進攻還是撤退的信息通過信使分別通知其他所有將軍,這樣一來每位將軍根據(jù)自己的投票和其他所有將軍送來的信息就可以知道共同的投票結(jié)果而決定行動策略。

這里有兩個問題。

一是將軍中可能出現(xiàn)叛徒,叛徒不僅可能給糟糕的策略投票,還可能選擇性地發(fā)送投票信息。假設(shè)有9位將軍投票,其中1名叛徒。8名忠誠的將軍中出現(xiàn)了4人投進攻,4人投撤離的情況。這時候叛徒可能故意給4名投進攻的將領(lǐng)送信表示投票進攻,而給4名投撤離的將領(lǐng)送信表示投撤離。這樣一來在4名投進攻的將領(lǐng)看來,投票結(jié)果是5人投進攻,從而發(fā)起進攻;而在4名投撤離的將軍看來則是5人投撤離。最后的結(jié)果是軍隊步調(diào)不一,可能會輸?shù)暨@場戰(zhàn)役。

二是由于將軍之間需要通過信使通訊,信使成了關(guān)鍵的一環(huán)。叛變將軍可能通過偽造信件來以其他將軍的身份發(fā)送假投票。即便所有將軍都保持忠誠,也不能排除信使被敵人截殺,甚至被敵人間諜替換等情況。

因此很難通過保證人員可靠性(叛徒)及通訊可靠性(信使)來解決問題。

區(qū)塊鏈?zhǔn)窃鯓咏鉀Q拜占庭的問題的呢?

答案是共識算法。

在拜占庭的將軍之中,如果我們在戰(zhàn)役之前規(guī)定:

九名將軍按照順序分別投票,順序分別為A~J,每個將軍都有自己獨一無二的印章。需要投票時,A先投票,a投完票后將自己的投票結(jié)果分別蓋上自己獨一無二的印章,給另外八位將軍每人發(fā)一份自己的投票結(jié)果。

當(dāng)b收到a的投票結(jié)果時,在將自己的投票結(jié)果加蓋印章后分別發(fā)給另外八個人,直到最后j投票后,每人手中都有8份投票結(jié)果。在投票結(jié)束后,每位將軍可以向其他任意幾位將軍發(fā)送驗證信息,來核對雙方得到的投票結(jié)果是否相同。

假如這里面有叛徒,叛徒在這種投票機制下,如果他選擇在發(fā)出去的八份信報中針對不同的將軍寫了不同的投票結(jié)果。投票結(jié)束后如果有將軍覺得投票有問題,他向其他將軍驗證時可能會得出某一個人的投票有兩種情況,這時候叛徒就會被發(fā)現(xiàn)。所以叛徒只能在發(fā)出去的八份信報中保持相同的投票,這顯然不會影響最后軍隊的整體行動的一致性。

如果在信報傳遞的過程中出現(xiàn)了被截斷或者丟失的情況,沒有收到信報的將軍可以向其他收到信報的幾位將軍尋求丟失信報的投票結(jié)果。如果信報被篡改,那在最后將軍們之間相互驗證的時候會發(fā)現(xiàn)錯誤,得到正確的結(jié)果。

在實際的區(qū)塊鏈系統(tǒng)中,解決拜占庭問題所采用的共識機制有好幾種方法,提供了將軍們投票順序的解決方法。比如工作量證明機制(PoW,按照將軍們平時的勤勞程度決定投票順序)、權(quán)益證明機制(PoS,按照將軍們各自的財富所有程度決定投票順序)。