欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

當(dāng)前位置:主頁 > 區(qū)塊鏈 > 區(qū)塊鏈技術(shù) > 詳解拜占庭容錯算法

什么是拜占庭容錯算法?PBFT、FBA和dBFT有什么區(qū)別?

2023-07-28 08:42:19 | 來源: | 作者:佚名
這篇文章主要介紹了什么是拜占庭容錯算法?PBFT、FBA和dBFT有什么區(qū)別?的相關(guān)資料,需要的朋友可以參考下本文詳細內(nèi)容介紹

拜占庭容錯算法是一種在分布式系統(tǒng)中實現(xiàn)故障恢復(fù)的算法,它是由拜占庭將軍問題衍生出來的。拜占庭將軍問題是一個經(jīng)典的分布式系統(tǒng)問題,它描述了一群分散在不同地點的將軍,需要通過信使來傳遞消息,從而達成一個共同的決策。然而,這些將軍中可能有一些是叛徒,他們會故意發(fā)送錯誤或不一致的消息,以破壞其他忠誠將軍的一致性。因此,拜占庭容錯算法的目標(biāo)是在一個存在故障或惡意節(jié)點的非信任環(huán)境中,保證系統(tǒng)中的大多數(shù)節(jié)點能夠達成一個正確的共識。

拜占庭容錯算法有多種版本,每種版本都有各自的優(yōu)缺點和適用場景。本文將介紹三種比較常見和重要的拜占庭容錯算法:實用拜占庭容錯(PBFT),聯(lián)邦拜占庭協(xié)議(FBA)和授權(quán)拜占庭容錯算法(dBFT)。

實用拜占庭容錯(PBFT)

實用拜占庭容錯(PBFT)是一種基于投票的拜占庭容錯算法,它由Miguel Castro和Barbara Liskov在1999年提出,是第一個在實際系統(tǒng)中可行的拜占庭容錯算法。PBFT可以在失效節(jié)點不超過總節(jié)點數(shù)1/3的情況下保證消息傳遞的正確可靠。PBFT主要用于私有鏈或許可鏈,因為它需要預(yù)先確定參與共識的節(jié)點集合,也就是說,節(jié)點的身份是事先知道的。PBFT的優(yōu)點是高交易通量和吞吐量,但缺點是通信開銷大,擴展性差。

PBFT是一種狀態(tài)機副本復(fù)制算法,即服務(wù)作為狀態(tài)機進行建模,狀態(tài)機在分布式系統(tǒng)的不同節(jié)點進行副本復(fù)制。每個狀態(tài)機的副本都保存了服務(wù)的狀態(tài),同時也實現(xiàn)了服務(wù)的操作。所有的副本在一個被稱為視圖的輪換過程中運作。在某個視圖中,一個副本作為主節(jié)點(leader),其它的副本節(jié)點作為備份節(jié)點(backup)。主節(jié)點通過隨機算法選出,用來負責(zé)與提案的客戶端通信。

PBFT共識過程可以分為四個階段:預(yù)準(zhǔn)備(pre-prepare),準(zhǔn)備(prepare),提交(commit)和回復(fù)(reply)。具體流程如下:

  • 客戶端向主節(jié)點發(fā)送請求消息。
  • 主節(jié)點給請求消息編號,并向所有副本節(jié)點廣播預(yù)準(zhǔn)備消息。
  • 每個副本節(jié)點收到預(yù)準(zhǔn)備消息后,檢查消息是否有效,并向所有副本節(jié)點廣播準(zhǔn)備消息。
  • 每個副本節(jié)點收到2f+1個有效的準(zhǔn)備消息后(包括自己發(fā)送的),進入準(zhǔn)備狀態(tài),并向所有副本節(jié)點廣播提交消息。
  • 每個副本節(jié)點收到2f+1個有效的提交消息后(包括自己發(fā)送的),進入提交狀態(tài),并執(zhí)行請求操作,并向客戶端發(fā)送回復(fù)消息。
  • 客戶端收到f+1個相同的回復(fù)消息后,認為請求已經(jīng)完成,并返回結(jié)果。

其中f表示最大可能存在的失效或惡意節(jié)點數(shù)。通過這樣一個四階段過程,PBFT可以保證只要有超過2/3的正常節(jié)點達成一致,就可以抵抗少于1/3的失效或惡意節(jié)點的影響。

PBFT的一個典型應(yīng)用是Hyperledger Fabric,它是一個開源的企業(yè)級區(qū)塊鏈平臺,支持智能合約和多種共識算法。Hyperledger Fabric在0.6版本中使用了PBFT作為默認的共識算法,后來在1.0版本中改用了更靈活的可插拔的共識框架,但仍然保留了PBFT作為一種可選的共識算法。

聯(lián)邦拜占庭協(xié)議(FBA)

聯(lián)邦拜占庭協(xié)議(FBA)是一種基于拜占庭協(xié)議(BA)的拜占庭容錯算法,它由David Mazieres在2015年提出,是一種適用于開放式的分布式系統(tǒng)的共識算法。FBA不需要預(yù)先確定參與共識的節(jié)點集合,而是允許每個節(jié)點自由選擇信任哪些節(jié)點,并根據(jù)信任關(guān)系形成局部子集。FBA可以在失效或惡意節(jié)點不超過總節(jié)點數(shù)1/3的情況下保證消息傳遞的正確可靠。FBA的優(yōu)點是去中心化程度高,網(wǎng)絡(luò)擴展性好,但缺點是安全性和活性依賴于信任圖的結(jié)構(gòu)。

FBA中的每個節(jié)點都有一個唯一的標(biāo)識符和一個公鑰,用來驗證消息的簽名。每個節(jié)點都有一個自己選擇信任的節(jié)點集合,稱為準(zhǔn)同意集(quorum slice)。一個準(zhǔn)同意集表示該節(jié)點認為必須達成一致的最小節(jié)點集合。一個準(zhǔn)同意集可以包含任意數(shù)量和任意類型的節(jié)點,甚至包括自己。一個準(zhǔn)同意集不一定是固定的,可以隨著時間和情況而變化。一個準(zhǔn)同意集也不一定是對稱的,即A信任B不一定意味著B信任A。

FBA中所有節(jié)點的準(zhǔn)同意集構(gòu)成了一個信任圖(trust graph),信任圖反映了整個網(wǎng)絡(luò)中節(jié)點之間的信任關(guān)系。信任圖中存在一個特殊的子圖,稱為聯(lián)邦(federation),它滿足以下兩個條件:

  • 重疊性:對于聯(lián)邦中的任意兩個節(jié)點A和B,存在一個聯(lián)邦中的節(jié)點C,使得C屬于A和B的準(zhǔn)同意集。
  • 安全性:對于聯(lián)邦中的任意兩個節(jié)點A和B,不存在一個非聯(lián)邦中的節(jié)點C,使得C屬于A和B的準(zhǔn)同意集。

聯(lián)邦是FBA中達成共識所需要的最小條件,它保證了聯(lián)邦內(nèi)部的一致性和對外部的隔離性。聯(lián)邦中可能存在多個不相交或部分相交的子聯(lián)邦,每個子聯(lián)邦都可以獨立地達成共識。

FBA共識過程可以分為兩個階段:提名(nomination)和投票(balloting)。具體流程如下:

  • 提名階段:每個節(jié)點可以提出一個或多個候選值,并將其廣播給自己的準(zhǔn)同意集。每個收到候選值的節(jié)點都會將其轉(zhuǎn)發(fā)給自己的準(zhǔn)同意集,直到整個網(wǎng)絡(luò)都收到了所有候選值。每個節(jié)點會根據(jù)某種規(guī)則選擇一個候選值作為自己提名的值,并將其廣播給自己的準(zhǔn)同意集。如果一個節(jié)點收到了足夠多(至少f+1)相同提名值,并且該值也屬于自己提名過或收到過的候選值,則該值被認為是可接受的值(accepted value),并進入下一個階段。
  • 投票階段:每個節(jié)點會根據(jù)自己的可接受值,生成一個投票消息,并將其廣播給自己的準(zhǔn)同意集。每個收到投票消息的節(jié)點都會將其轉(zhuǎn)發(fā)給自己的準(zhǔn)同意集,直到整個網(wǎng)絡(luò)都收到了所有投票消息。每個節(jié)點會根據(jù)某種規(guī)則選擇一個投票值作為自己確認的值,并將其廣播給自己的準(zhǔn)同意集。如果一個節(jié)點收到了足夠多(至少2f+1)相同確認值,并且該值也屬于自己確認過或收到過的投票值,則該值被認為是批準(zhǔn)的值(confirmed value),并進入下一個階段。
  • 最終階段:每個節(jié)點會根據(jù)自己的批準(zhǔn)值,生成一個最終消息,并將其廣播給自己的準(zhǔn)同意集。每個收到最終消息的節(jié)點都會將其轉(zhuǎn)發(fā)給自己的準(zhǔn)同意集,直到整個網(wǎng)絡(luò)都收到了所有最終消息。如果一個節(jié)點收到了足夠多(至少2f+1)相同最終值,并且該值也屬于自己最終過或收到過的批準(zhǔn)值,則該值被認為是共識的值(consensus value),并結(jié)束共識過程。

通過這樣一個三階段過程,F(xiàn)BA可以保證只要有超過2/3的正常節(jié)點達成一致,就可以抵抗少于1/3的失效或惡意節(jié)點的影響。

FBA的一個典型應(yīng)用是Stellar,它是一個開源的分布式支付網(wǎng)絡(luò),支持多種貨幣和資產(chǎn)的轉(zhuǎn)賬和交換。Stellar在2015年改用了FBA作為其共識算法,稱為Stellar共識協(xié)議(SCP)。SCP允許每個節(jié)點自由選擇信任哪些節(jié)點,并根據(jù)信任關(guān)系形成聯(lián)邦。SCP可以在網(wǎng)絡(luò)中快速達成共識,同時保證安全性和去中心化性。

授權(quán)拜占庭容錯算法(dBFT)

授權(quán)拜占庭容錯算法(dBFT)是一種基于委托權(quán)益證明(DPoS)的拜占庭容錯算法,它由Erik Zhang在2016年提出,是一種適用于公有鏈或混合鏈的共識算法。dBFT不需要所有節(jié)點都參與共識,而是由網(wǎng)絡(luò)中持有代幣的用戶通過投票選出一定數(shù)量(通常為21個)的代表節(jié)點(delegate),代表節(jié)點負責(zé)驗證交易和生成區(qū)塊。dBFT可以在失效或惡意節(jié)點不超過總代表節(jié)點數(shù)1/3的情況下保證消息傳遞的正確可靠。dBFT的優(yōu)點是低延遲,高吞吐量,節(jié)能環(huán)保,但缺點是中心化程度較高,代表節(jié)點可能存在壟斷或勾結(jié)。

dBFT中每個代表節(jié)點都有一個唯一的標(biāo)識符和一個公鑰,用來驗證消息的簽名。每個代表節(jié)點都有一個角色:主節(jié)點(speaker)或者委員會成員(committee member)。主節(jié)點負責(zé)提出新區(qū)塊,并向其他代表節(jié)點廣播區(qū)塊消息。委員會成員負責(zé)驗證新區(qū)塊,并向其他代表節(jié)點廣播簽名消息。主節(jié)點和委員會成員在每個區(qū)塊周期中輪換。

dBFT共識過程可以分為兩個階段:預(yù)備(prepare)和提交(commit)。具體流程如下:

  • 預(yù)備階段:主節(jié)點從交易池中選擇一批交易,并打包成新區(qū)塊,并向其他代表節(jié)點廣播區(qū)塊消息。每個收到區(qū)塊消息的代表節(jié)點都會檢查區(qū)塊是否有效,并向其他代表節(jié)點廣播簽名消息。如果一個代表節(jié)點收到了超過2/3的有效的簽名消息,則進入下一個階段。
  • 提交階段:主節(jié)點收集所有的簽名消息,并將其附加到新區(qū)塊上,并向其他代表節(jié)點廣播最終區(qū)塊消息。每個收到最終區(qū)塊消息的代表節(jié)點都會驗證區(qū)塊和簽名是否有效,并將區(qū)塊添加到自己的區(qū)塊鏈上,并向網(wǎng)絡(luò)中的普通節(jié)點廣播區(qū)塊。普通節(jié)點收到區(qū)塊后,也會驗證區(qū)塊和簽名是否有效,并將區(qū)塊添加到自己的區(qū)塊鏈上。

通過這樣一個兩階段過程,dBFT可以保證只要有超過2/3的正常代表節(jié)點達成一致,就可以抵抗少于1/3的失效或惡意代表節(jié)點的影響。

dBFT的一個典型應(yīng)用是NEO,它是一個開源的智能經(jīng)濟平臺,支持智能合約和多種資產(chǎn)的發(fā)行和管理。NEO在2016年采用了dBFT作為其共識算法,稱為NEO共識協(xié)議(NCP)。NCP允許網(wǎng)絡(luò)中持有NEO代幣的用戶通過投票選出21個共識節(jié)點,共識節(jié)點負責(zé)驗證交易和生成區(qū)塊。NCP可以在網(wǎng)絡(luò)中快速達成共識,同時保證安全性和效率。

總結(jié)

拜占庭容錯算法是一種在分布式系統(tǒng)中實現(xiàn)故障恢復(fù)的算法,它可以在存在失效或惡意節(jié)點的情況下保證系統(tǒng)中的大多數(shù)節(jié)點能夠達成一個正確的共識。拜占庭容錯算法有多種版本,每種版本都有各自的優(yōu)缺點和適用場景。本文介紹了三種比較常見和重要的拜占庭容錯算法:實用拜占庭容錯(PBFT),聯(lián)邦拜占庭協(xié)議(FBA)和授權(quán)拜占庭容錯算法(dBFT)。這三種算法分別適用于私有鏈或許可鏈,開放式的分布式系統(tǒng)和公有鏈或混合鏈。它們都可以在失效或惡意節(jié)點不超過總節(jié)點數(shù)1/3的情況下保證消息傳遞的正確可靠,但也有不同的性能,擴展性,去中心化程度等方面的差異。拜占庭容錯算法是分布式系統(tǒng)和區(qū)塊鏈技術(shù)中的一個重要研究領(lǐng)域,未來還有很多值得探索和改進的空間。

以上就是什么是拜占庭容錯算法?PBFT、FBA和dBFT有什么區(qū)別?的詳細內(nèi)容,更多關(guān)于詳解拜占庭容錯算法的資料請關(guān)注腳本之家其它相關(guān)文章!

聲明:文章內(nèi)容不代表本站觀點及立場,不構(gòu)成本平臺任何投資建議。本文內(nèi)容僅供參考,風(fēng)險自擔(dān)!
Tag:容錯算法   PBFT   fba   dBFT  

你可能感興趣的文章

熱門幣種

  • 幣名
    最新價格
    24H漲幅
  • bitcoin BTC 比特幣

    BTC

    比特幣

    $ 119310.87¥ 855220.31
    +0.82%
  • ethereum ETH 以太坊

    ETH

    以太坊

    $ 3834.26¥ 27483.97
    +2.47%
  • ripple XRP 瑞波幣

    XRP

    瑞波幣

    $ 3.227¥ 23.1311
    +1.52%
  • tether USDT 泰達幣

    USDT

    泰達幣

    $ 1.0002¥ 7.1694
    +0%
  • binance-coin BNB 幣安幣

    BNB

    幣安幣

    $ 828.23¥ 5936.75
    +5.65%
  • solana SOL Solana

    SOL

    Solana

    $ 187.77¥ 1345.93
    +1.05%
  • usdc USDC USD Coin

    USDC

    USD Coin

    $ 0.9995¥ 7.1644
    +0%
  • dogecoin DOGE 狗狗幣

    DOGE

    狗狗幣

    $ 0.2404¥ 1.7231
    +1.18%
  • tron TRX 波場

    TRX

    波場

    $ 0.3197¥ 2.2916
    +0.09%
  • cardano ADA 艾達幣

    ADA

    艾達幣

    $ 0.8288¥ 5.9408
    +0.4%

幣圈快訊

  • Solana鏈上NFT銷售總額達到64億美元

    2025-07-28 04:40
    金色財經(jīng)報道,據(jù)CryptoSlam最新數(shù)據(jù)顯示,Solana鏈上NFT銷售總額達到6,402,134,350美元,鏈上NFT交易量約為65,950,954筆,其中鏈上買家數(shù)量6,427,128,賣家數(shù)量3,490,603。
  • 美商務(wù)部長:歐盟將開放其20萬億美元的市場

    2025-07-28 04:10
    金色財經(jīng)報道,據(jù)央視新聞,美國商務(wù)部長盧特尼克27日在其社交媒體上發(fā)文表示,美國總統(tǒng)特朗普開啟了世界最大經(jīng)濟體之一的大門,歐盟將開放其20萬億美元的市場,并首次完全接受美國的汽車和工業(yè)標(biāo)準(zhǔn)。此外,歐盟還將從美國購買7500億美元的能源產(chǎn)品,并在美國投資6000億美元,美國對歐盟輸美產(chǎn)品的關(guān)稅將全部設(shè)定為15%。
  • 數(shù)據(jù):過去24小時全網(wǎng)爆倉1.88億美元,多單爆倉5705.39萬美元,空單爆倉1.31億美元

    2025-07-28 04:00
    ChainCatcher消息,據(jù)Coinglass數(shù)據(jù),過去24小時全網(wǎng)爆倉1.88億美元,多單爆倉5705.39萬美元,空單爆倉1.31億美元。其中比特幣多單爆倉144.9萬美元,比特幣空單爆倉3010.89萬美元,以太坊多單爆倉1383.05萬美元,以太坊空單爆倉4342.75萬美元。此外,最近24小時,全球共有81775人被爆倉,最大單筆爆倉單發(fā)生在Binance-BTCUSDT價值267.63萬美元。
  • BNB突破830美元,創(chuàng)歷史新高

    2025-07-28 03:40
    金色財經(jīng)報道,行情顯示,BNB突破830美元,創(chuàng)歷史新高,現(xiàn)報830.66美元,24小時漲幅達到6.02%,行情波動較大,請做好風(fēng)險控制。
  • 馮德萊恩:15%稅率是歐委會能夠達成的最佳結(jié)果

    2025-07-28 03:12
    金色財經(jīng)報道,當(dāng)?shù)貢r間27日,在與美國總統(tǒng)特朗普宣布歐盟美國達成重大貿(mào)易協(xié)議后,歐盟委員會主席馮德萊恩對外解釋其在對美貿(mào)易談判中的部分決定。馮德萊恩稱,歐盟目前仍然過度依賴俄羅斯液化天然氣,因此,從美國進口更多價格可承受的液化天然氣是非常受歡迎的。在關(guān)稅安排方面,馮德萊恩確認,協(xié)議中對汽車行業(yè)的關(guān)稅統(tǒng)一定為15%。她表示,在當(dāng)前形勢下,15%的關(guān)稅水平是歐委會能夠達成的最佳結(jié)果。此外,她還證實,歐盟與美國在醫(yī)藥行業(yè)也達成一致,將實施15%的統(tǒng)一關(guān)稅稅率。馮恩萊恩承認,歐盟與美國尚未就烈酒領(lǐng)域做出決定,當(dāng)天簽署的貿(mào)易協(xié)定框架的細節(jié)將在未來幾周內(nèi)公布。(央視新聞)
  • 查看更多