當前位置:首頁 » 區塊鏈知識 » 將軍的煩惱區塊鏈

將軍的煩惱區塊鏈

發布時間: 2024-08-26 17:07:47

A. 區塊鏈的技術原理是什麼

區塊鏈技術涉及的關鍵點包括:去中心化(Decentralized)、去信任(Trustless)、集體維護(Collectivelymaintain)、可靠資料庫(ReliableDatabase)、時間戳(Timestamp)、非對稱加密(AsymmetricCryptography)等。

區塊鏈技術重新定義了網路中信用的生成方式:在系統中,參與者無需了解其他人的背景資料,也不需要藉助第三方機構的擔保或保證,區塊鏈技術保障了系統對價值轉移的活動進行記錄、傳輸、存儲,其最後的結果一定是可信的。

(1)將軍的煩惱區塊鏈擴展閱讀

區塊鏈技術原理的來源可歸納為一個數學問題:拜占庭將軍問題。拜占庭將軍問題延伸到互聯網生活中來,其內涵可概括為:在互聯網大背景下,當需要與不熟悉的對手方進行價值交換活動時,人們如何才能防止不會被其中的惡意破壞者欺騙、迷惑從而做出錯誤的決策。

進一步將拜占庭將軍問題延伸到技術領域中來,其內涵可概括為:在缺少可信任的中央節點和可信任的通道的情況下,分布在網路中的各個節點應如何達成共識。區塊鏈技術解決了聞名已久的拜占庭將軍問題——它提供了一種無需信任單個節點、還能創建共識網路的方法。

B. 拜占庭將軍問題與區塊鏈

1982年,圖靈獎得主萊斯利·蘭伯特提出拜占庭將軍問題,探討了分布式系統中節點故障下的共識達成。這一難題隨著區塊鏈技術的發展,愈發引人關注。本文將通過通俗易懂的方式,解析這一問題背後的共識協議。

想像一下,兩位將軍需共同決定進攻時間,但通信途徑受阻。這個簡單的「兩個將軍問題」揭示了在分布式環境中,信息傳遞的不確定性可能導致共識無法達成。FLP定理指出,在非同步通信中,無法保證一致性。

然而,工程師們並未放棄,他們通過調整策略,如增加信使數量,確保至少一部分信息能傳遞,或多次嘗試直到聯系成功,從而在實際操作中找到解決方案。拜占庭將軍問題的復雜版本則涉及更多將軍和復雜策略,但關鍵是叛徒數量不能超過總人數的1/3,否則共識無法達成。

傳統的方法如口頭協定和書面協定都有局限性,口頭協定難以追蹤來源,書面協定依賴於中心化權威。區塊鏈技術的出現,通過非對稱加密和工作量證明(PoW)演算法,解決了這些問題,實現了去中心化的信任網路,確保了消息的不可篡改和來源的可追溯。

總的來說,區塊鏈技術巧妙地解決了拜占庭將軍問題,展示了在分布式系統中達成共識的強大能力,為未來的信任網路奠定了基礎。這個過程雖有挑戰,但通過技術創新,我們找到了一個接近完美的解決方案。

C. 理論上區塊鏈怎麼解決拜占庭將軍問題

拜占庭將軍問題(以下簡稱「共識問題」)的正式表述是:如何在一個不基於信任的分布式網路中就信息達成共識?這個表述聽起來有些晦澀,但其本質並不復雜,下面的例子與共識問題雖然並不完全一致,但卻有助於我們的理解[9]。

想像一下在遙遠的拜占庭時代,有一個富饒的城邦,金銀珠寶綾羅綢緞應有盡有,它的領主哆啦A夢獨享著這一切奢華與榮耀。而在城邦的外圍,四位拜占庭將軍大雄、胖虎、小夫和靜香都覬覦著哆啦A夢的財富,於是他們決定聯手攻佔哆啦A夢的城邦。根據雙方的實力對比,必須有超過半數的將軍同時發起進攻方能克敵制勝,因此獲勝條件就是四人中至少三個人可以就進攻時間達成一致。那麼四位將軍的勝算有多少呢?

這個問題的答案就要取決於四個人的合作方式了,如果是集中式系統,有一個盟主,比如胖虎(相當於中央伺服器),那麼他們的勝利是毫無懸念的,因為就進攻時間達成一致非常簡單,只要胖虎召集大雄、小夫和靜香開個會討論一下就可以了,即使大家意見有分歧胖虎也可以在最後予以定奪。下面讓我們回到拜占庭將軍問題的假設里,在不基於信任的分布式網路中,四位將軍的勝算又如何呢?

?

首先由於四位將軍之間缺乏信任,因此聚到小黑屋裡開個密謀會的可能性被排除了(一旦在小黑屋裡被胖虎綁架了怎麼辦?);其次由於沒有盟主,四個人的意見都會被同等的看重。在這種情況下,四位將軍只能通過信使在各自營地之間傳遞消息,來商定進攻時間了。比如大雄覺得早上6點是發動進攻的好時機,他就會派信使將自己的意見告訴胖虎、小夫和靜香,與此同時,胖虎可能認為晚上9點發動突襲更好,小夫更喜歡下午3點出擊,而靜香希望是上午10點,他們三人也會在同一時間派出自己的信使。這樣一來,在第一輪通信結束後,四位將軍每個人都有了四個可供選擇的進攻時間,他們各自要在下一輪通信中把自己選定的時間告知另外三人。由於四個人的決策都是獨立做出的,因此最終的選擇結果就有256種可能,而只有當三人以上都恰好選擇了同一時間的時候,共識才被達成,而這樣的結果才64種,也就是說達成共識的概率僅為1/4。這還只是四位將軍的情況,如果將軍的人數是10人,100人,1000人呢?我們稍加計算就可以發現隨著人數的增加,達成共識的希望會變得越來越渺茫。

把上面例子中的將軍換成計算機網路中的節點,把信使換成節點之間的通信,把進攻時間換成需要達成共識的信息,你就可以理解共識問題所描述的困境了。達成共識的能力對於一個支付系統來說重要性不言而喻,如果你給家裡匯了一筆錢買車,第二天去銀行核實的時候櫃台告訴你「關於你匯了多少錢的問題,我們的系統里有三個版本的記錄」,這樣的銀行你顯然是不敢把錢存進去的。在比特幣出現之前共識問題是很難被完美解決的,要保證達成共識就需要採用集中式系統(除非節點滿足特定條件),要想去中心化共識就無法保證。那麼區塊鏈技術又是如何解決這一難題的呢?(關注公眾號weoption,回復「區塊鏈」,可查看全文。)

D. 拜占庭將軍很忙—《區塊鏈思維》第21塊

無論在鏈圈,還是在幣圈混,經常聽到一個名詞「拜占庭將軍問題」。

到底拜占庭是啥,拜占庭將軍怎麼啦,到處都被提及,這位將軍好忙啊!

先說拜占庭這個地方。很久很久以前的歐洲,建立在比中世紀還古老的時期,歷史上就是東羅馬帝國,跨越了千年的歷史期盼。

扯遠了,回到正題,什麼是拜占庭將軍問題。

拜占庭這個地方異常堅固,同時被十個獨立鄰邦環伺,分別有一位將軍,單獨攻城必敗,只有一半以上的將軍同時攻打才能破城。

十位將軍為了協調一致,在那個古老的時代,累死傳令兵,要麼飛鴿傳書(那時的歐洲比中國落後,好像沒有這個高速通信手段)。十位將軍相互通信一次就需要90次傳信,每位將軍都有各自的攻城計劃,要想達成統一就需要往復傳遞不知道多少次。

我們可以假設一個場景,一個桌子上坐著十位將軍,每個人各自說著自己的想法,同時聽其他九位的說法,但是信息的傳遞不是實時的,有快有慢,有早有晚。想明白了嗎?也就是說,這十位將軍如果想達成一致,理論上有可能,實際上他們的有生之年都實現不了,難怪拜占庭帝國經歷了千年也沒有被這十位將軍攻破。

中本聰這個神人,利用互聯網信息傳遞的及時性特點,引入時間戳可以明確知道「誰先說、誰後說」的特性,創造性地加入挖礦機制(就是用計算機算隨機數滿足一定難度才算成功)比拼各位將軍的智商來決定誰做本次進攻的統帥,使用非對稱加密保證信息傳輸的安全性等等手段融合到比特幣中,用實例說明自己破解了這個歷史難題「拜占庭將軍問題」。從而向世人證明解決60億人口的互信問題是有去中心化解決方案地。

幣圈和鏈圈的朋友很焦慮的另一個關鍵問題就是:這個圈子概念太TM多。除了這個「拜占庭將軍問題」,還有一個「拜占庭容錯」,這是什麼鬼?這兩個是一樣的嗎?這兩個是故意有一個被寫錯了嗎?還是說我的智商稅沒交夠?其實,你都說對了。

「拜占庭將軍問題」假設所有十個將軍都是好的,都想攻破拜占庭,只是達成共識很難,比特幣提供了好人達成共識的方案。

「拜占庭容錯」是說十個將軍可以很好地達成共識。但是,如果其中出了壞人,怎麼解決?

如果十個將軍中出現了壞人(叫叛徒也行),進攻計劃是否會永遠無法達成共識呢?

「拜占庭容錯」告訴大家,是可以達成地,並且,還能找出這些「叛徒」是誰。只是,10個將軍中叛徒的數量不能超過3個,超出了就無法「容錯」,也找不出這些叛徒是誰。對應的公式就是:3n+1。其中3n+1是將軍總數(區塊鏈的賬本/礦機總數),n是能夠「容錯」的「叛徒」(惡意記錯賬)總數。

對於十個將軍來說,最多容忍三個叛徒,多了就徹底沒戲啦。為了比特幣的容錯能力越來越強,就需要更多的節點,這樣才能容忍並找出更多的叛徒。懂了吧。

小結一下:拜占庭將軍問題是假設都是好人前提下如何達成共識,拜占庭容錯就是全網最多能夠容忍多少叛徒並且能找出他們。

請交智商稅到如下地址:

國稅BTC到Kcash:

地稅ETH及各種原生Token到 Imtoken:

不交稅的,祝你做「韭菜」一切順利 :D

熱點內容
比特幣是誰發行得 發布:2024-11-16 22:32:56 瀏覽:176
etn挖礦算力 發布:2024-11-16 22:32:35 瀏覽:544
5g升級會員合約包b類怎麼退訂 發布:2024-11-16 22:30:13 瀏覽:141
最具影響力海外區塊鏈錢包 發布:2024-11-16 22:21:07 瀏覽:521
做一款區塊鏈需要多少錢 發布:2024-11-16 22:17:44 瀏覽:910
18年1月比特幣 發布:2024-11-16 22:17:39 瀏覽:812
合約現貨外匯怎麼玩 發布:2024-11-16 22:16:46 瀏覽:327
蘋果4合約機丟失怎麼辦 發布:2024-11-16 22:12:41 瀏覽:628
trx4陀螺儀 發布:2024-11-16 22:04:08 瀏覽:455
bitmax停止挖礦 發布:2024-11-16 21:25:09 瀏覽:356