成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

干貨 | DPOS共識算法——缺失的白皮書

learn_shifeng / 794人閱讀

摘要:共識是商定確定性交易順序和過濾無效交易的過程。選舉過程確保利益相關(guān)方最終得到控制,因?yàn)楫?dāng)網(wǎng)絡(luò)不能順利運(yùn)行時,利益相關(guān)方的損失最大。這種行為不會持續(xù)很長時間,因?yàn)槔嫦嚓P(guān)方最終會投票替換生產(chǎn)者。

譯者介紹:

奚海峰,萬云首席技術(shù)官,曾在IBM擔(dān)任研究院工程師和高級咨詢顧問,在Sempra Commodities (全球大宗商品交易公司集團(tuán))擔(dān)任主管架構(gòu)師,在Tudor Investment ( 美國排名前20的對沖基金)擔(dān)任軟件開發(fā)主管。在美國12年間,榮獲了包括“IBM 研究成就獎”在內(nèi)的多次嘉獎,在一流國際會議和雜志上發(fā)表過多篇學(xué)術(shù)論文,并且持有美國發(fā)明專利。
轉(zhuǎn)載請注明譯者及出處

這篇“缺失的白皮書”是對委托權(quán)益證明(DPOS)的分析,目的是為DPOS的工作原理及其魯棒性根源提供一個分析。DPOS的早期描述可以在bitshares.org(https://bitshares.org/technol...)找到;不過,那個描述還包含了許多不屬于實(shí)際共識過程的內(nèi)容。

所有區(qū)塊鏈本質(zhì)上都是一種由交易驅(qū)動的確定性狀態(tài)機(jī)。共識是商定確定性交易順序和過濾無效交易的過程。有許多不同的共識算法都可以產(chǎn)生等效的交易排序,但DPOS已經(jīng)通過在多個區(qū)塊鏈上經(jīng)年累月的可靠運(yùn)行證明自身是健壯、安全和有效的。

像所有共識算法一樣,塊生產(chǎn)者可能導(dǎo)致的最大損害是審查。所有塊的有效性必須基于確定性的開源狀態(tài)機(jī)邏輯。

DPOS算法概要
DPOS算法分為兩部分:選擇一組塊生產(chǎn)者和調(diào)度生產(chǎn)。選舉過程確保利益相關(guān)方最終得到控制,因?yàn)楫?dāng)網(wǎng)絡(luò)不能順利運(yùn)行時,利益相關(guān)方的損失最大。選舉方法對實(shí)際運(yùn)行中如何達(dá)成共識幾乎沒有影響,因此,本文將重點(diǎn)介紹如何在塊生產(chǎn)者被選擇之后達(dá)成共識。

為了幫助解釋這個算法,我想假設(shè)3個塊生產(chǎn)者A,B和C。因?yàn)楣沧R(的達(dá)成)需要2/3+1多數(shù)來解決所有情況,這個簡化的模型將假設(shè)生產(chǎn)者C是打破僵局的那個人。在現(xiàn)實(shí)世界中,將有21個或更多的塊生產(chǎn)者。像工作量證明一樣,一般規(guī)則是最長鏈勝出。任何時候當(dāng)一個誠實(shí)的對等節(jié)點(diǎn)看到一個有效的更長鏈,它都會從當(dāng)前分叉切換到更長的這條鏈。

我將舉例說明在大多數(shù)想得到的網(wǎng)絡(luò)條件下DPOS如何運(yùn)行。這些例子應(yīng)該可以幫助您理解為什么DPOS穩(wěn)健且難以破壞。

正常操作
在正常操作模式下,塊生產(chǎn)者每3秒鐘輪流生成一個塊。假設(shè)沒有人錯過自己的輪次,那么這將產(chǎn)生最長鏈。塊生產(chǎn)者在被調(diào)度輪次之外的任何時間段出塊都是無效的。

少數(shù)分叉
不超過節(jié)點(diǎn)總數(shù)三分之一的惡意或故障節(jié)點(diǎn)可能創(chuàng)建少數(shù)分叉。在這種情況下,少數(shù)分叉每9秒只能產(chǎn)生一個塊,而多數(shù)分叉每9秒可以產(chǎn)生兩個塊。這樣,誠實(shí)的2/3多數(shù)將永遠(yuǎn)比少數(shù)(的鏈)更長。

離線少數(shù)的多重生產(chǎn)
(離線的)少數(shù)人可以試圖產(chǎn)生無限數(shù)量的分叉,但是他們的所有分叉都將比多數(shù)人的那條鏈短,因?yàn)樯贁?shù)人在出塊速度上注定比多數(shù)人來的更慢。

網(wǎng)絡(luò)碎片化
網(wǎng)絡(luò)完全有可能碎片化,導(dǎo)致沒有任何分叉擁有多數(shù)塊生成者。在這種情況下,最長的鏈將倒向最大的那個少數(shù)群體。當(dāng)網(wǎng)絡(luò)連通性恢復(fù)時,較小的少數(shù)群體會自然切換到最長的那條鏈,明確的共識將恢復(fù)。

有可能存在這樣三個分叉,其中兩個最長的分叉長度相同。在這種情況下,第3個(較?。┓植娴膲K生產(chǎn)者重新加入網(wǎng)絡(luò)時會打破平局。塊生產(chǎn)者總數(shù)為奇數(shù),因此不可能長時間保持平局。稍后我們還會講到生產(chǎn)者“洗牌”,它使得出塊順序隨機(jī)化,從而確保即使是生產(chǎn)者數(shù)目相同的兩個分叉也會以不同的步長增長,最終導(dǎo)致一個分叉超過另一個。

在線少數(shù)的多重生產(chǎn)
在這種場景下,少數(shù)節(jié)點(diǎn)B在其時間段內(nèi)產(chǎn)生了兩個或更多可供選擇的塊。下一個計劃生產(chǎn)者(C)可以選擇基于B產(chǎn)生的任何一種方案繼續(xù)構(gòu)建鏈條。一旦如此,這個選擇就成為最長的鏈,而所有選擇B1的節(jié)點(diǎn)都將切換分叉。少數(shù)不良生產(chǎn)者企圖廣播再多的替代塊也無關(guān)緊要,它們作為最長鏈的一部分永遠(yuǎn)不會超過一輪。

最后不可逆塊
在網(wǎng)絡(luò)碎片化的情況下,多個分叉都有可能持續(xù)不斷增長相當(dāng)長的時間。長遠(yuǎn)來看最長的鏈終將獲勝,但觀察者需要一種確切的手段來判定一個塊是否絕對處于增長最快的那條鏈。這可以通過觀察來自2/3+1多數(shù)塊生產(chǎn)者的確認(rèn)來決定。

在下圖中,塊B已被C和A所確認(rèn),這代表了2/3+1多數(shù)確認(rèn),由此我們可以推斷沒有其它鏈會比這個更長 – 如果2/3的生產(chǎn)者是誠實(shí)的。

個“規(guī)則”類似于比特幣的6塊確認(rèn)“規(guī)則”。一些聰明人也許可以謀劃一系列事件使得兩個節(jié)點(diǎn)(應(yīng)該是“交易”?)出現(xiàn)在不同的最后不可逆塊上。這種邊緣案例要求攻擊者能完全控制通信延遲,并且在幾分鐘內(nèi)兩次--而不是一次--使用該控制。即便這真的發(fā)生了,那么最長鏈(勝出)的長期規(guī)則仍然適用。我們估計這種攻擊的可能性足夠接近0,且經(jīng)濟(jì)后果無關(guān)緊要,因此不足為慮。

生產(chǎn)者法定人數(shù)不足
在缺乏明晰的生產(chǎn)者法定人數(shù)這種不太可能的情況下,少數(shù)人還是可以繼續(xù)出塊。利益相關(guān)方可以在這些塊里包括更改投票的交易。這些投票可以選出一組新的生產(chǎn)者,并將出塊參與率恢復(fù)到100%。一旦如此,少數(shù)鏈將最終超過所有其他以低于100%參與率運(yùn)行的鏈。

在此過程中,所有觀察者都會知道,在一條參與率超過67%的鏈形成之前,網(wǎng)絡(luò)狀態(tài)是不定的。那些選擇在此條件下進(jìn)行交易的人所冒的風(fēng)險與選擇接受不到6個確認(rèn)的人相似。他們知道存在這樣一些小的可能性,即:共識也許最終在一個不同的分叉上建立起來。在實(shí)踐中,這種情況比接受少于3個比特幣交易確認(rèn)的塊要安全多了。

多數(shù)生產(chǎn)者舞弊
如果多數(shù)生產(chǎn)者變得腐敗,那么他們可以產(chǎn)生無限數(shù)量的分叉,每個分叉都看起來以2/3多數(shù)確認(rèn)向前走。這種情況下,最后不可逆塊算法蛻變?yōu)樽铋L鏈算法。最長鏈就是為最大多數(shù)所批準(zhǔn)的那條鏈,而這將由少數(shù)剩下的誠實(shí)節(jié)點(diǎn)決定。這種行為不會持續(xù)很長時間,因?yàn)槔嫦嚓P(guān)方最終會投票替換生產(chǎn)者。

交易作為權(quán)益證明(TaPoS
當(dāng)用戶為一個交易簽名時,他們是在對區(qū)塊鏈狀態(tài)的一定假設(shè)下這樣做的。這個假設(shè)是基于他們對最近幾個塊的看法。如果最長鏈的共識發(fā)生改變,則潛在會使簽名者之前的假設(shè)失效。

就TaPoS而言,所有交易都包含最近一個塊的散列,如果該塊在鏈歷史中不存在則這些交易被認(rèn)為是無效的。任何在孤兒分叉上給交易簽名的人,都會發(fā)現(xiàn)該交易無效且無法遷移到主分叉。

該過程的一個附帶作用是可以抵御試圖產(chǎn)生替代鏈的長期攻擊。每個利益相關(guān)方在每次交易時都直接對區(qū)塊鏈做出確認(rèn)。隨著時間推移,所有的塊都是由所有利益相關(guān)方確認(rèn)過的,這在一條偽造鏈里是無法復(fù)制的。

確定性生產(chǎn)者洗牌
在上面所有例子中,我們展示的都是塊生產(chǎn)者按循環(huán)調(diào)度出塊。實(shí)際上,每出N個塊(N是生產(chǎn)者數(shù)量),塊生產(chǎn)者集合都會洗牌一次。這種隨機(jī)性確保塊生成者B不會總是忽略塊生成者A,每當(dāng)形成多個擁有相同數(shù)量生產(chǎn)者的分叉時,平局最終都會被打破。

結(jié)論
在每一個我們能想到的自然網(wǎng)絡(luò)分裂的情況下,委托權(quán)益證明都是強(qiáng)健的,甚至在面對相當(dāng)數(shù)量生產(chǎn)者舞弊的情形時也是安全的。不像其它共識算法,當(dāng)大多數(shù)生產(chǎn)者不合格時,DPOS還是可以繼續(xù)工作。在此過程中,社區(qū)可以投票替換掉不合格的生產(chǎn)者,直到恢復(fù)100%參與率。我還不知道有任何其它算法可以在如此高強(qiáng)度和變化多端的失敗條件下依然保持強(qiáng)健。

說到底,DPOS引人注目的安全性來自于其選擇塊生產(chǎn)者和驗(yàn)證節(jié)點(diǎn)質(zhì)量的算法。運(yùn)用贊成投票的過程可以確保一個人即使擁有50%的有效投票權(quán)也不能獨(dú)自挑選哪怕一個生產(chǎn)者。DPOS旨在優(yōu)化擁有強(qiáng)壯網(wǎng)絡(luò)連接的誠實(shí)節(jié)點(diǎn)100%參與(共識過程)的名義條件。這使得DPOS有能力在平均只有1.5秒的時間內(nèi)以99.9%的確定性確認(rèn)交易,同時以優(yōu)雅和可檢測的方式降級 – 從降級中恢復(fù)正常也不過是小事一樁。

其它共識算法以網(wǎng)絡(luò)條件差的不誠實(shí)節(jié)點(diǎn)為名義條件展開設(shè)計,這樣設(shè)計的最終結(jié)果就是性能更差、延遲更高、通信開銷高的網(wǎng)絡(luò),而且這個網(wǎng)絡(luò)在33%節(jié)點(diǎn)失效的情況下會完全停擺。

在BitShares成功運(yùn)行三年以及在Steem運(yùn)行一年期間,我們經(jīng)歷了各種各樣的網(wǎng)絡(luò)條件和軟件錯誤。DPOS成功穿行于其間,在處理了比任何其它區(qū)塊鏈更多交易的同時持續(xù)達(dá)成共識,展現(xiàn)了非凡的能力。

英文版原文鏈接:https://steemit.com/dpos/@dan...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/41309.html

相關(guān)文章

  • DPOS 共識算法 - 缺失皮書

    摘要:而共識,是就確定性交易順序達(dá)成一致并過濾無效交易的過程。請注意,這個規(guī)則類似于比特幣的個塊確認(rèn)。在實(shí)際操作中,這種情況仍然要比接受少于個比特幣確認(rèn)要安全的多。其他共識算法的設(shè)計初衷是,節(jié)點(diǎn)不誠實(shí)且網(wǎng)絡(luò)條件惡劣。 原文:https://steemit.com/dpos/@dan...網(wǎng)絡(luò)上已經(jīng)有了好幾個版本的譯文,可能是原文寫的沒那么平易近人,這些譯文我都看得不太懂 :) showIm...

    ISherry 評論0 收藏0
  • 區(qū)塊鏈主流共識算法

    摘要:比特幣是第一個區(qū)塊鏈應(yīng)用,同時也是最著名的應(yīng)用之一,它所使用的共識機(jī)制就是。區(qū)塊鏈系統(tǒng)的參與者鎖定他們在該區(qū)塊鏈上持有的虛擬資產(chǎn)或,他們會簽署消息以達(dá)成一致意見。 一.POW(Proof Of Work) Proof Of Work,也就是工作量證明。工作量證明系統(tǒng)(或者說協(xié)議、函數(shù)),是一種應(yīng)對拒絕服務(wù)攻擊和其他服務(wù)濫用的經(jīng)濟(jì)對策。它要求發(fā)起者進(jìn)行一定量的運(yùn)算,也就意味著需要消耗計算...

    awokezhou 評論0 收藏0
  • Hashgraph —— 或許是目前最為優(yōu)秀共識協(xié)議

    摘要:同時因?yàn)樗泄?jié)點(diǎn)都是對等節(jié)點(diǎn),避免了潛在的攻擊風(fēng)險。創(chuàng)建輪次一個事件的創(chuàng)建輪次是或者,其中是該事件父節(jié)點(diǎn)的最大輪次。 背景 在深入探索Hashgraph之前,我們先聊聊關(guān)于共識協(xié)議的背景,眾所周知比特幣和以太坊目前都采用POW共識機(jī)制,如果暫不考慮大礦場聯(lián)合做些小動作,工作量證明機(jī)制確實(shí)是個非常安全的協(xié)議,簡單粗暴的算法設(shè)計從經(jīng)濟(jì)收益層面杜絕了幾乎99%的潛在攻擊,比特幣網(wǎng)絡(luò)從2009...

    jsummer 評論0 收藏0
  • 權(quán)威解讀 | DPOS委托權(quán)益證明 vs POW工作量證明

    摘要:比特幣的共識算法被稱為工作量證明目前,每分鐘,比特幣網(wǎng)絡(luò)會獎勵成功記賬的礦工個比特幣。新的算法被稱為委托權(quán)益證明,是由發(fā)明的。 本文首發(fā)萬云Wancloud,翻譯:任重遠(yuǎn),萬向區(qū)塊鏈業(yè)務(wù)專家,參與工信部區(qū)塊鏈白皮書撰寫 本文摘自BitShares 101中關(guān)于委托權(quán)益證明和工作量證明的討論。 在這一章節(jié)中,我將會向大家解釋一下誕生于2014年8月的某項(xiàng)技術(shù)。該技術(shù)所帶來的飛躍將會使得D...

    taohonghui 評論0 收藏0
  • 淺談asch系統(tǒng)共識機(jī)制與容錯性

    摘要:從外因的角度來說,系統(tǒng)應(yīng)該能夠容忍黑客攻擊受托人作弊的情況。這里的黑客攻擊不是說,造成的后果最多是部分服務(wù)器宕機(jī),我們已經(jīng)歸到內(nèi)因里去了,這里的黑客攻擊主要是指通過入侵拿到部分受托人密鑰并獲取權(quán)限,然后利用這些權(quán)限獲利。 0 前言 我曾分析了DPOS算法的漏洞并且模擬了一個簡單的攻擊的方法,然后實(shí)現(xiàn)了一個簡化的PBFT算法模型試圖去修復(fù)該漏洞,并且對比了效果。 隨后在正式的產(chǎn)品中實(shí)現(xiàn)了...

    Gu_Yan 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<