區(qū)塊鏈導(dǎo)論-第四章_第1頁
區(qū)塊鏈導(dǎo)論-第四章_第2頁
區(qū)塊鏈導(dǎo)論-第四章_第3頁
區(qū)塊鏈導(dǎo)論-第四章_第4頁
區(qū)塊鏈導(dǎo)論-第四章_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

區(qū)塊鏈導(dǎo)論講師:第四章共識(shí)機(jī)制區(qū)塊鏈導(dǎo)論拜占庭容錯(cuò)技術(shù)PoW共識(shí)機(jī)制PoS共識(shí)機(jī)制Contents4.14.24.34.44.5其他共識(shí)機(jī)制DPoS共識(shí)機(jī)制1區(qū)塊鏈導(dǎo)論4.1拜占庭容錯(cuò)技術(shù)拜占庭容將軍問題問題:拜占庭帝國國土遼闊,每支軍隊(duì)的駐地分隔很遠(yuǎn),將軍們只能靠信使傳遞消息。拜占庭帝國在軍事行動(dòng)中,通過將軍少數(shù)服從多數(shù)的集體投票策略選擇進(jìn)攻或者撤退,如果有大部分將軍決定進(jìn)攻,則采取進(jìn)攻策略,反之選擇撤退策略。但是將軍或傳令官中如果出現(xiàn)叛徒,叛徒會(huì)通過傳播虛假命令影響其集體投票的結(jié)果或統(tǒng)一行動(dòng)的計(jì)劃。怎樣使得將軍們能在一個(gè)有叛徒的非信任環(huán)境中建立對戰(zhàn)斗計(jì)劃的共識(shí)呢?2區(qū)塊鏈導(dǎo)論拜占庭容錯(cuò)技術(shù)策略:將軍們預(yù)先制定一種方法或協(xié)議,使所有忠誠的將軍能夠達(dá)成一致,而且少數(shù)幾個(gè)叛徒不能使忠誠的將軍做出錯(cuò)誤的計(jì)劃。3區(qū)塊鏈導(dǎo)論拜占庭將軍問題拜占庭容錯(cuò)技術(shù)拜占庭容錯(cuò)技術(shù)(BFT):來源于拜占庭將軍問題,廣泛應(yīng)用于解決分布式系統(tǒng)容錯(cuò)問題的技術(shù),是由LeslieLamport提出的關(guān)于P2P網(wǎng)絡(luò)通信的基本問題:在不可靠信道上,通過消息傳遞的方式難以保證系統(tǒng)狀態(tài)的一致性。參與區(qū)塊鏈系統(tǒng)共識(shí)記賬的每一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)相當(dāng)于將軍,節(jié)點(diǎn)之間的交易信息傳遞相當(dāng)于信使,某些節(jié)點(diǎn)可能由于各種原因而產(chǎn)生錯(cuò)誤的信息并傳達(dá)給其他節(jié)點(diǎn)。通常,這些發(fā)生故障節(jié)點(diǎn)被稱為拜占庭節(jié)點(diǎn),而正常的節(jié)點(diǎn)即為非拜占庭節(jié)點(diǎn)。2區(qū)塊鏈導(dǎo)論拜占庭容錯(cuò)技術(shù)拜占庭系統(tǒng)普遍采用的假設(shè)條件包括:(1)拜占庭節(jié)點(diǎn)的行為可以是任意的,拜占庭節(jié)點(diǎn)之間可以共謀;(2)節(jié)點(diǎn)之間的錯(cuò)誤不相關(guān);(3)節(jié)點(diǎn)之間通過異步網(wǎng)絡(luò)連接,網(wǎng)絡(luò)中的消息可能丟失、亂序并延時(shí)到達(dá),但大部分協(xié)議假設(shè)消息在有限的時(shí)間里能傳達(dá)到目的地;(4)服務(wù)器之間傳遞的信息,第三方可以嗅探到,但是不能篡改、偽造信息的內(nèi)容和驗(yàn)證信息的完整性。5區(qū)塊鏈導(dǎo)論拜占庭容錯(cuò)技術(shù)假設(shè)基于拜占庭容錯(cuò)的P2P網(wǎng)絡(luò)系統(tǒng)是擁有N個(gè)節(jié)點(diǎn)的系統(tǒng),則對于每一個(gè)請求,該系統(tǒng)需要滿足以下條件:(1)當(dāng)非拜占庭節(jié)點(diǎn)有相同的輸入信息,則它們會(huì)產(chǎn)生同樣的結(jié)果;(2)如果輸入的信息通過驗(yàn)證,非拜占庭節(jié)點(diǎn)必須接收這個(gè)信息,并輸出相應(yīng)的結(jié)果?;诎菡纪ト蒎e(cuò)的P2P網(wǎng)絡(luò)系統(tǒng)的實(shí)際運(yùn)作過程中,還需要假設(shè)整個(gè)系統(tǒng)中拜占庭節(jié)點(diǎn)不超過m(m<n/2)個(gè),并且每個(gè)請求還需要滿足安全性和存活性兩個(gè)指標(biāo)。(1)安全性:任何已經(jīng)完成的請求都不能被更改;(2)存活性:能接受并且執(zhí)行非拜占庭客戶端的正常請求。6區(qū)塊鏈導(dǎo)論區(qū)塊鏈導(dǎo)論4.2PoW共識(shí)機(jī)制PoW共識(shí)機(jī)制PoW共識(shí)機(jī)制:通過算力資源,計(jì)算出一個(gè)符合規(guī)則的隨機(jī)數(shù),即可獲得記賬權(quán)。PoW的共識(shí)形成過程是俗稱的“挖礦”,每個(gè)參與競爭記賬權(quán)的節(jié)點(diǎn)稱為“礦工”,“挖礦”的過程就是各個(gè)“礦工”通過計(jì)算資源來競爭同一個(gè)難度具有可動(dòng)態(tài)變化和調(diào)整的書寫問題,并且成功解決該數(shù)學(xué)問題的“礦工”將獲得區(qū)塊鏈的記賬權(quán)。7區(qū)塊鏈導(dǎo)論P(yáng)oW共識(shí)機(jī)制以比特幣為例,在挖礦過程中,礦工需要不斷調(diào)整Nonce值,對區(qū)塊頭數(shù)據(jù)做雙重SHA-256哈希運(yùn)算,使得結(jié)果滿足給定數(shù)量前導(dǎo)0的哈希值。其中前導(dǎo)0的個(gè)數(shù),取決于挖礦難度,前導(dǎo)0的個(gè)數(shù)越多,挖礦難度越大,在每創(chuàng)建2016個(gè)區(qū)塊后將計(jì)算新的難度,此后的2016個(gè)區(qū)塊將使用新的難度。挖礦具體過程如下:獲取16進(jìn)制的原始區(qū)塊數(shù)據(jù),以80字節(jié)長度的區(qū)塊頭數(shù)據(jù)作為輸入;不斷變更區(qū)塊頭中的隨機(jī)數(shù)Nonce,對變更后的區(qū)塊頭數(shù)據(jù)做雙重SHA-256哈希運(yùn)算,得到32字節(jié)長度的運(yùn)算結(jié)果;將運(yùn)算結(jié)果與當(dāng)前難度值進(jìn)行比較,如果小于目標(biāo)難度,即挖礦完成;否則,挖礦失敗。8區(qū)塊鏈導(dǎo)論P(yáng)oW共識(shí)機(jī)制挖礦難度計(jì)算過程如下:找到前2016個(gè)區(qū)塊的第一個(gè)塊,并計(jì)算生成這2016個(gè)區(qū)塊花費(fèi)的時(shí)間,一般為14天;計(jì)算前2016個(gè)區(qū)塊的難度總和,即單個(gè)區(qū)塊的難度*總時(shí)間;計(jì)算新的難度,即2016個(gè)塊的難度總和/14天的秒數(shù),得到每秒的難度值;同時(shí)要求新的難度,難度不低于參數(shù)定義的最小難度。該算法目的是通過對比實(shí)際出塊時(shí)間間隔和理想出塊時(shí)間間隔進(jìn)行動(dòng)態(tài)難度調(diào)整,同時(shí)使用難度上下限進(jìn)行限制,防止難度變化過快9區(qū)塊鏈導(dǎo)論P(yáng)oW共識(shí)機(jī)制優(yōu)點(diǎn)體現(xiàn)在協(xié)議的相對公平性與安全性,節(jié)點(diǎn)挖出新區(qū)塊獲得記賬權(quán)及預(yù)設(shè)獎(jiǎng)勵(lì)的概率與其算力占全網(wǎng)總算力的百分比具有一致性;相應(yīng)地,攻擊者的算力需要占據(jù)全網(wǎng)50%以上的算力,才能同全網(wǎng)其它誠實(shí)節(jié)點(diǎn)競爭成功從而實(shí)施攻擊,工作量證明也一定程度地增加了攻擊的困難性。10區(qū)塊鏈導(dǎo)論P(yáng)oW共識(shí)機(jī)制缺點(diǎn)資源消耗巨大是PoW共識(shí)機(jī)制最顯著的缺點(diǎn),而且由于節(jié)點(diǎn)還需要一定的時(shí)間付出算力資源以作為工作量證明,完成特定隨機(jī)數(shù)的計(jì)算才能成功創(chuàng)建區(qū)塊,同時(shí)需要得到其他節(jié)點(diǎn)的驗(yàn)證,降低了區(qū)塊鏈系統(tǒng)的效率,無法做到交易數(shù)據(jù)的實(shí)時(shí)確認(rèn)。PoW共識(shí)算法不適合于私有鏈和聯(lián)盟鏈。11區(qū)塊鏈導(dǎo)論區(qū)塊鏈導(dǎo)論4.3PoS共識(shí)機(jī)制PoS共識(shí)機(jī)制PoS共識(shí)機(jī)制在2012年8月由極客SunnyKing發(fā)布的點(diǎn)點(diǎn)幣中首次實(shí)現(xiàn)。PoS共識(shí)機(jī)制是出自這個(gè)新型區(qū)塊鏈系統(tǒng)中的一種特殊交易形式,稱為幣權(quán)交易。在幣權(quán)交易中,規(guī)定貨幣所有者可以將其持有的貨幣發(fā)送給自己的賬戶,從而消耗幣齡獲得鑄幣的權(quán)限并獲取部分利息,也保證用戶在創(chuàng)建新區(qū)塊后幣齡歸零。PoS共識(shí)機(jī)制實(shí)質(zhì)上是要求用戶證明自己擁有一定數(shù)量的數(shù)字貨幣的所有權(quán),也就是“權(quán)益”。在實(shí)施權(quán)益證明機(jī)制的數(shù)字貨幣中,創(chuàng)建區(qū)塊的過程由于并不需要耗費(fèi)大量算力,因此一般不叫“挖礦”而稱為“鑄幣”。12區(qū)塊鏈導(dǎo)論P(yáng)oS共識(shí)機(jī)制PoS共識(shí)機(jī)制中還引入了“幣齡”的概念。幣齡是指貨幣數(shù)量與貨幣持有時(shí)間的乘積。PoS共識(shí)機(jī)制將主鏈定義為消耗幣齡高的鏈,每個(gè)區(qū)塊的交易都會(huì)將其消耗的幣齡提交給該區(qū)塊以作為區(qū)塊的積分,累計(jì)積分最高的即總消耗幣齡最大的區(qū)塊鏈。13區(qū)塊鏈導(dǎo)論P(yáng)oS共識(shí)機(jī)制PoS共識(shí)機(jī)制與PoW共識(shí)機(jī)制相比,它具有以下優(yōu)勢:PoS共識(shí)技術(shù)使PoW共識(shí)機(jī)制算力資源浪費(fèi)的問題有所緩解。在權(quán)益證明系統(tǒng)中,區(qū)塊生成的概率和幣齡成正比,因此用戶不需要耗費(fèi)大量的算力資源來搶奪鑄幣權(quán),礦工們也不再需要消耗大量資源進(jìn)行算力軍備競賽。由于掌握大量貨幣成為了攻擊者實(shí)施成功攻擊的必要條件,攻擊者對貨幣系統(tǒng)的攻擊代價(jià)大大提高,攻擊持續(xù)的難度也有所增加。貨幣所有者和利益相關(guān)人一般持有大量數(shù)字貨幣,他們會(huì)更傾向于維護(hù)區(qū)塊鏈數(shù)字貨幣系統(tǒng)的安全。14區(qū)塊鏈導(dǎo)論P(yáng)oS共識(shí)機(jī)制PoS共識(shí)機(jī)制存在以下缺陷:基于權(quán)益證明機(jī)制的加密貨幣一般使用以下兩種方式對初始幣進(jìn)行分發(fā):一種是初期借用PoW機(jī)制進(jìn)行挖礦;另一種是采用首次公開募股(InitialPublicOfferings,IPO)的方式。但是采用IPO的方式發(fā)行貨幣會(huì)使貨幣集中在開發(fā)者和少數(shù)人手中,使得貨幣系統(tǒng)缺乏信任基礎(chǔ)的。囤幣行為的自發(fā)形成,導(dǎo)致區(qū)塊鏈系統(tǒng)交易活躍性下降,同時(shí)掌握大量貨幣的用戶可能會(huì)直接壟斷記賬權(quán)。15區(qū)塊鏈導(dǎo)論區(qū)塊鏈導(dǎo)論4.4DPoS共識(shí)機(jī)制DPoS共識(shí)機(jī)制授權(quán)股權(quán)證明機(jī)制(DelegatedProofofStake,DPoS):是一種綜合完善PoW共識(shí)機(jī)制和PoS共識(shí)機(jī)制的新型共識(shí)算法。授權(quán)股權(quán)證明機(jī)制最主要的特點(diǎn)是引入了見證人(Delegate)這個(gè)概念。新的區(qū)塊由權(quán)益隨機(jī)投票選出的N名見證人選出。每個(gè)持有數(shù)字貨幣的用戶相當(dāng)于擁有一個(gè)選票的選民,最終得票前N位的見證人即擔(dān)當(dāng)代表,代表的數(shù)目N為至少有50%的節(jié)點(diǎn)認(rèn)為已經(jīng)充分去中心化的數(shù)量。見證人的候選名單每個(gè)維護(hù)周期(一般為1天)更新一次。見證人然后隨機(jī)排列,每個(gè)見證人按序有2秒的權(quán)限時(shí)間生成區(qū)塊,若見證人在給定的時(shí)間片不能生成區(qū)塊,區(qū)塊生成權(quán)限交給下一個(gè)時(shí)間片對應(yīng)的見證人。16區(qū)塊鏈導(dǎo)論DPoS共識(shí)機(jī)制選出的代表擁有提出改變網(wǎng)絡(luò)參數(shù)的特權(quán),包括交易費(fèi)用、區(qū)塊大小、見證人費(fèi)用和區(qū)塊區(qū)間。若大多數(shù)代表同意所提出的改變,用戶有兩周的審查期,這期間可以罷免代表并廢止所提出的改變。DPoS機(jī)制實(shí)質(zhì)上是一種代議制共識(shí),通過投票機(jī)制將所有用戶的權(quán)利集中到了少數(shù)人手中,形成一種有約束的中心化,這種中心化會(huì)大大加快交易的確認(rèn)速度,確認(rèn)時(shí)間縮短到秒級。但與中心化系統(tǒng)的弊端類似,記賬權(quán)利一旦集中,就不得不提防獲得代表權(quán)的用戶是否會(huì)為了自身利益而損害系統(tǒng)的公平公正,降低了信任基礎(chǔ)。17區(qū)塊鏈導(dǎo)論區(qū)塊鏈導(dǎo)論4.5其他共識(shí)機(jī)制Ripple共識(shí)機(jī)制Ripple(瑞波):是一種基于互聯(lián)網(wǎng)的開源支付協(xié)議,可以實(shí)現(xiàn)部分去中心化的貨幣兌換、支付與清算功能。在Ripple的網(wǎng)絡(luò)中,交易由客戶端(應(yīng)用)發(fā)起,經(jīng)過追蹤節(jié)點(diǎn)(TrackingNode)或驗(yàn)證節(jié)點(diǎn)(ValidatingNode)把交易廣播到整個(gè)網(wǎng)絡(luò)中。下圖是Ripple的共識(shí)過程中節(jié)點(diǎn)交互示意圖。18區(qū)塊鏈導(dǎo)論Ripple共識(shí)節(jié)點(diǎn)交互示意圖Ripple共識(shí)機(jī)制Ripple的共識(shí)達(dá)成發(fā)生在驗(yàn)證節(jié)點(diǎn)之間,每個(gè)驗(yàn)證節(jié)點(diǎn)都預(yù)先配置了一份可信任節(jié)點(diǎn)名單(UniqueNodeList,UNL)。在名單上的節(jié)點(diǎn)可對交易達(dá)成進(jìn)行投票。每隔幾秒,Ripple網(wǎng)絡(luò)將進(jìn)行如下共識(shí)過程:1)每個(gè)驗(yàn)證節(jié)點(diǎn)會(huì)不斷收到從網(wǎng)絡(luò)發(fā)送過來的交易,通過與本地賬本數(shù)據(jù)驗(yàn)證后,不合法的交易直接丟棄,合法的交易將匯總成交易候選集(candidateset)。交易候選集里面還包括之前共識(shí)過程無法確認(rèn)而遺留下來的交易。2)每個(gè)驗(yàn)證節(jié)點(diǎn)把自己的交易候選集作為提案發(fā)送給其他驗(yàn)證節(jié)點(diǎn)。19區(qū)塊鏈導(dǎo)論Ripple共識(shí)機(jī)制3)驗(yàn)證節(jié)點(diǎn)在收到其他節(jié)點(diǎn)發(fā)來的提案后,如果不是來自UNL上的節(jié)點(diǎn),則忽略該提案;如果是就會(huì)對比提案中的交易和本地的交易候選集,如果有相同的交易,該交易就獲得一票。在一定時(shí)間內(nèi),當(dāng)交易獲得超過50%的票數(shù)時(shí),則該交易進(jìn)入下一輪。否則將留待下一次共識(shí)過程去確認(rèn)。4)驗(yàn)證節(jié)點(diǎn)把超過50%票數(shù)的交易作為提案發(fā)給其他節(jié)點(diǎn),同時(shí)提高所需票數(shù)的閾值到60%,重復(fù)步驟3和步驟4,直至閾值達(dá)到80%。5)驗(yàn)證節(jié)點(diǎn)把經(jīng)過80%的UNL節(jié)點(diǎn)確認(rèn)的交易正式寫入本地的賬本數(shù)據(jù)中,稱為最后關(guān)閉賬本(LastClosedLedger),即賬本最后(最新)的狀態(tài)。20區(qū)塊鏈導(dǎo)論Ripple共識(shí)機(jī)制Ripple共識(shí)算法的獨(dú)特之處在于他不是在全網(wǎng)一次性達(dá)成共識(shí),而是在UNL子網(wǎng)中達(dá)成共識(shí),算法的效率比PoW等匿名共識(shí)算法要高效。Ripple共識(shí)算法假設(shè)拜占庭節(jié)點(diǎn)數(shù)少于所有節(jié)點(diǎn)數(shù)的20%,需要任意兩個(gè)UNL間重合的節(jié)點(diǎn)數(shù)至少占最大URL節(jié)點(diǎn)數(shù)的20%。另外UNL中的任意節(jié)點(diǎn)串通作惡的概率需要小于20%。Ripple共識(shí)算法的拜占庭容錯(cuò)(BFT)能力為(n-1)/5,即可以容忍整個(gè)網(wǎng)絡(luò)中20%的節(jié)點(diǎn)出現(xiàn)拜占庭錯(cuò)誤而不影響正確的共識(shí)。21區(qū)塊鏈導(dǎo)論小蟻共識(shí)機(jī)制小蟻共識(shí)機(jī)制:基于小蟻共識(shí)機(jī)制的區(qū)塊鏈技術(shù),是將實(shí)體世界的資產(chǎn)和權(quán)益進(jìn)行數(shù)字化,通過點(diǎn)對點(diǎn)網(wǎng)絡(luò)進(jìn)行登記發(fā)行、轉(zhuǎn)讓交易、清算交割等金融業(yè)務(wù)的去中心化網(wǎng)絡(luò)協(xié)議,可以被用于股權(quán)眾籌、P2P網(wǎng)貸、數(shù)字資產(chǎn)管理和智能合約等領(lǐng)域。小蟻共識(shí)機(jī)制使得運(yùn)行小蟻協(xié)議的各節(jié)點(diǎn)能夠?qū)Ξ?dāng)前區(qū)塊鏈狀態(tài)達(dá)成一致意見。通過股權(quán)持有人投票選舉,來決定記賬人及其數(shù)量;被選出的記賬人完成每個(gè)區(qū)塊內(nèi)容的共識(shí),決定其中所應(yīng)包含的交易。22區(qū)塊鏈導(dǎo)論小蟻共識(shí)機(jī)制小蟻的記賬機(jī)制被稱為中性記賬。在中性記賬的共識(shí)機(jī)制下,記賬人只有選擇是否參與的權(quán)力,而不能改變交易數(shù)據(jù),不能人為排除某筆交易,也不能人為對交易進(jìn)行排序。小蟻的中性記賬區(qū)塊鏈可以做到:1)每15s產(chǎn)生一個(gè)區(qū)塊,優(yōu)化后有望達(dá)到小于5s;2)單個(gè)記賬人不能拒絕包含某筆交易進(jìn)入當(dāng)前區(qū)塊;3)每個(gè)確認(rèn)由全體記賬人參與,一個(gè)確認(rèn)就是完全確認(rèn);4)結(jié)合超導(dǎo)交易機(jī)制,記賬人不能通過構(gòu)造交易來搶先成交牟利。23區(qū)塊鏈導(dǎo)論小蟻共識(shí)機(jī)制小蟻股權(quán)持有人可以發(fā)起選舉記賬人交易,對所選擇數(shù)量的(1~1024個(gè))候選記賬人進(jìn)行投票支持。小蟻協(xié)議實(shí)時(shí)統(tǒng)計(jì)所有投票,并計(jì)算出當(dāng)前所需記賬人的人數(shù)和記賬人名單。以區(qū)塊隨機(jī)數(shù)的生成來了解小蟻共識(shí)機(jī)制,每個(gè)區(qū)塊生成前,記賬人之間需要協(xié)作生成一個(gè)區(qū)塊隨機(jī)數(shù)。小蟻使用Shamir秘密共享方案(Shamir’sSecretSharingScheme,SSSS)來協(xié)作生成隨機(jī)數(shù)。24區(qū)塊鏈導(dǎo)論小蟻共識(shí)機(jī)制依據(jù)SSSS方案,可以將密文S生成N份密文碎片,持有其中的K份,就能還原出密文S。小蟻記賬人(假設(shè)為N+1個(gè))之間通過以下3步對隨機(jī)數(shù)達(dá)成共識(shí):1)自選一個(gè)隨機(jī)數(shù),將此隨機(jī)數(shù)通過SSSS方案生成N份碎片,用其他N個(gè)記賬人的公鑰加密,并廣播。2)收到其他N個(gè)記賬人的廣播后,將其中自己可解密的部分解密,并廣播。3)收集到至少K份密文碎片后,解出隨機(jī)數(shù);獲得所有記賬人的隨機(jī)數(shù)后,合并生成區(qū)塊隨機(jī)數(shù)。25區(qū)塊鏈導(dǎo)論小蟻共識(shí)機(jī)制在上述區(qū)塊隨機(jī)數(shù)生成的第一步的廣播中,記賬人還同時(shí)廣播其認(rèn)為應(yīng)該寫入本區(qū)塊的每筆交易的哈希值。其他記賬人偵聽到廣播后,檢查自己是否有該交易哈希值的對應(yīng)數(shù)據(jù),如沒有則向其他節(jié)點(diǎn)請求。當(dāng)區(qū)塊隨機(jī)數(shù)產(chǎn)生后,每個(gè)記賬人合并所有第一步廣播中的交易(剔除只有哈希值但無法獲得交易數(shù)據(jù)的交易),并簽名。獲得2/3記賬人的簽名,則本區(qū)塊完成;否則,共識(shí)失敗,轉(zhuǎn)回隨機(jī)數(shù)共識(shí)的第一步,再次嘗試。26區(qū)塊鏈導(dǎo)論Algorand共識(shí)機(jī)制Algorand共識(shí)機(jī)制:“Algorand”一詞是由“algorithm(算法)”和“random(隨機(jī))”兩個(gè)詞組合而成的,Algorand共識(shí)機(jī)制就是基于隨機(jī)算法的公共賬本協(xié)議。Algorand共識(shí)算法的核心機(jī)制是Micali教授開發(fā)的一個(gè)稱為BA*的拜占庭協(xié)議,并通過這個(gè)BA*協(xié)議對新區(qū)塊達(dá)成共識(shí)。BA*每次循環(huán)有3個(gè)子步驟,在每次循環(huán)后均有1/3以上的概率能達(dá)成共識(shí)。一旦“驗(yàn)證者”對某一個(gè)新區(qū)塊達(dá)成共識(shí),超過一半的“驗(yàn)證者”再用自己的私鑰對該區(qū)塊進(jìn)行電子簽名,該區(qū)塊就可以開始在Algorand網(wǎng)絡(luò)中傳播。27區(qū)塊鏈導(dǎo)論Algorand共識(shí)機(jī)制“Algorand共識(shí)算法的具體流程如下:(1)創(chuàng)建并不斷更新一個(gè)獨(dú)立參數(shù),稱為“種子”。(2)在BA*每次循環(huán)中,基于當(dāng)前“種子”參數(shù)構(gòu)建并公布一個(gè)隨機(jī)算法,該隨機(jī)算法中的一個(gè)關(guān)鍵參數(shù)是用戶的私鑰。(3)每個(gè)用戶使用自己的私鑰運(yùn)行系統(tǒng)公布的隨機(jī)算法,得到自己的憑證。憑證值滿足一定條件的用戶就是這一輪的“驗(yàn)證者”,其中在第一個(gè)子步驟中憑證值最小的“驗(yàn)證者”則稱為“領(lǐng)導(dǎo)者”,“領(lǐng)導(dǎo)者”的任務(wù)是在區(qū)塊生成階段創(chuàng)建區(qū)塊,“驗(yàn)證者”的任務(wù)是對新區(qū)塊達(dá)成共識(shí)。他們需要組裝一個(gè)新區(qū)塊并連同自己的憑證一起對外發(fā)出。28區(qū)塊鏈導(dǎo)論Algorand共識(shí)機(jī)制“Algorand共識(shí)算法的具體流程如下:(4)在確認(rèn)“領(lǐng)導(dǎo)者”的憑證后,所有“驗(yàn)證者”將基于“領(lǐng)導(dǎo)者”組裝的新區(qū)塊運(yùn)行拜占庭協(xié)議BA*。(5)拜占庭協(xié)議BA*相當(dāng)于一個(gè)兩階段的投票機(jī)制。第一階段,“驗(yàn)證者”對其收到的候選區(qū)塊運(yùn)行分級共識(shí)協(xié)議,選出“驗(yàn)證者”共識(shí)最多的候選區(qū)塊;第二階段,“驗(yàn)證者”對第一階段選出的候選區(qū)塊,運(yùn)行二元拜占庭協(xié)議(BinaryByzantineAgreement),即接受新區(qū)塊或接受空區(qū)塊。需要強(qiáng)調(diào)的是在每一階段中的每一

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論