區(qū)塊鏈的本質(zhì)是一個分布式的去中心化的數(shù)據(jù)庫充择,共識機(jī)制就是維護(hù)這個數(shù)據(jù)庫正常運(yùn)轉(zhuǎn)的必要條件德玫,理解了共識機(jī)制,也就明白了區(qū)塊鏈的工作原理椎麦,幣評君(biping.io宰僧,最全的加密貨幣行情和區(qū)塊鏈資訊)給大家講講區(qū)塊鏈?zhǔn)澜绲墓沧R機(jī)制有幾種形式?優(yōu)缺點(diǎn)又是什么观挎?
共識機(jī)制是什么琴儿?
區(qū)塊鏈本質(zhì)是去中心化,去中心化的核心是共識機(jī)制嘁捷,區(qū)塊鏈上的共識機(jī)制主要解決由誰來構(gòu)造區(qū)塊造成,以及如何維護(hù)區(qū)塊鏈統(tǒng)一的問題。
共識機(jī)制的必要性雄嚣?
分布式系統(tǒng)中晒屎,多個主機(jī)通過異步通信方式組成網(wǎng)絡(luò)集群。在這樣的一個異步系統(tǒng)中缓升,需要主機(jī)之間進(jìn)行狀態(tài)復(fù)制鼓鲁,以保證每個主機(jī)達(dá)成一致的狀態(tài)共識。錯誤信息可能出現(xiàn)在異步系統(tǒng)內(nèi)并不斷傳播港谊,因此需要在默認(rèn)不可靠的異步網(wǎng)絡(luò)中定義容錯協(xié)議骇吭,以確保各主機(jī)達(dá)成安全可靠的狀態(tài)共識,這就是共識機(jī)制誕生的必要性歧寺。
幾種共識機(jī)制
在區(qū)塊鏈網(wǎng)絡(luò)中燥狰,由于應(yīng)用場景的不同,所設(shè)計的目標(biāo)各異斜筐,不同的區(qū)塊鏈系統(tǒng)采用了不同的共識算法龙致。每種共識算法都不是完美的,都有其優(yōu)點(diǎn)和局限性顷链。
一般來說净当,在私有鏈和聯(lián)盟鏈情況下,對一致性蕴潦、正確性要求很高像啼,會采用強(qiáng)一致性的共識算法。而在公有鏈情況下潭苞,對一致性和正確性要求稍低忽冻,通常采用最終一致性的共識算法。
▌PoW 工作量證明
整個系統(tǒng)中每個節(jié)點(diǎn)為整個系統(tǒng)提供計算能力(簡稱算力)此疹,通過一個競爭機(jī)制僧诚,讓計算工作完成最出色的節(jié)點(diǎn)獲得系統(tǒng)的獎勵遮婶,即完成新生成貨幣的分配,簡單理解就是多勞多得湖笨,bictoin旗扑、LTC等貨幣型區(qū)塊鏈就應(yīng)用POW機(jī)制。
?優(yōu)點(diǎn)
完全去中心化
節(jié)點(diǎn)自由進(jìn)出慈省,算法簡單臀防,容易實(shí)現(xiàn)
破壞系統(tǒng)花費(fèi)的成本巨大,只要網(wǎng)絡(luò)破壞者的算力不超過網(wǎng)絡(luò)總算力的50%边败,網(wǎng)絡(luò)的交易狀態(tài)就能達(dá)成一致
?缺點(diǎn)
浪費(fèi)能源袱衷,這是最大的缺點(diǎn)
區(qū)塊的確認(rèn)時間難以縮短,如bictoin每秒只能做7筆交易笑窜,不適合商業(yè)應(yīng)用
新的區(qū)塊鏈必須找到一種不同的散列算法致燥,否則就會面臨bictoin的算力攻擊
對節(jié)點(diǎn)的性能網(wǎng)絡(luò)環(huán)境要求高
容易產(chǎn)生分叉,需要等待多個確認(rèn)
無法達(dá)成最終一致性
▌PoS 權(quán)益證明
也稱股權(quán)證明排截,類似于你把財產(chǎn)存在銀行嫌蚤,這種模式會根據(jù)你持有加密貨幣的數(shù)量和時間,分配給你相應(yīng)的利息断傲。
?優(yōu)點(diǎn)
對節(jié)點(diǎn)性能要求低脱吱,達(dá)成共識時間短
?缺點(diǎn)
沒有最終一致性,需要檢查點(diǎn)機(jī)制來彌補(bǔ)最終性
▌DPOW 委托股權(quán)證明
DPOW是 PoS 的進(jìn)化方案艳悔,在常規(guī) PoW和 PoS 中急凰,任何一個新加入的區(qū)塊女仰,都需要被整個網(wǎng)絡(luò)所有節(jié)點(diǎn)做確認(rèn)猜年,非常影響效率。
DPoS則類似于現(xiàn)代董事會的投票機(jī)制疾忍,通過選舉代表來進(jìn)行投票和決策乔外。被選舉出的n個記賬節(jié)點(diǎn)來做新區(qū)塊的創(chuàng)建、驗證一罩、簽名和相互監(jiān)督杨幼,這樣就極大地減少了區(qū)塊創(chuàng)建和確認(rèn)所需要消耗的時間和算力成本。
?優(yōu)點(diǎn)
大幅縮小參與驗證和記賬節(jié)點(diǎn)的數(shù)量聂渊,可以達(dá)到秒級的共識驗證
?缺點(diǎn)
犧牲了去中心化的概念差购,不適合公有鏈
▌PBFT 實(shí)用拜占庭容錯
實(shí)用拜占庭容錯機(jī)制是一種采用“許可投票、少數(shù)服從多數(shù)”來選舉領(lǐng)導(dǎo)者并進(jìn)行記賬的共識機(jī)制汉嗽,該共識機(jī)制允許拜占庭容錯欲逃,允許強(qiáng)監(jiān)督節(jié)點(diǎn)參與,具備權(quán)限分級能力饼暑,性能更高稳析,耗能更低洗做,而且每輪記賬都會由全網(wǎng)節(jié)點(diǎn)共同選舉領(lǐng)導(dǎo)者,允許33%的節(jié)點(diǎn)作惡彰居,容錯率為33%诚纸。實(shí)用拜占庭容錯特別適合聯(lián)盟鏈的應(yīng)用場景。
?優(yōu)點(diǎn)
會背離中心化陈惰,加密貨幣的存在及獎勵機(jī)制會產(chǎn)生馬太效應(yīng)畦徘,讓社區(qū)中的窮者更窮,富者更富
共識效率高奴潘,可實(shí)現(xiàn)高頻交易
?缺點(diǎn)
當(dāng)系統(tǒng)只剩下33%的節(jié)點(diǎn)運(yùn)行時旧烧,系統(tǒng)會停止運(yùn)行
▌dBFT 授權(quán)拜占庭容錯
這種機(jī)制是用權(quán)益來選出記賬人,然后記賬人之間通過拜占庭容錯算法達(dá)成共識画髓。授權(quán)拜占庭容錯機(jī)制最核心的一點(diǎn)掘剪,就是最大限度地確保系統(tǒng)的最終性,使區(qū)塊鏈能夠適用于真正的金融應(yīng)用場景奈虾。
?優(yōu)點(diǎn)
專業(yè)化的記賬人
可以容忍任何類型的錯誤
記賬由多人協(xié)同完成夺谁,每一個區(qū)塊都有最終性,不會分叉
算法的可靠性有嚴(yán)格的數(shù)學(xué)證明
?缺點(diǎn)
當(dāng)三分之一或以上記賬人停止工作后肉微,系統(tǒng)將無法提供服務(wù)
當(dāng)三分之一或以上記賬人聯(lián)合作惡匾鸥,可能會使系統(tǒng)出現(xiàn)分叉
▌Pool 驗證池
基于傳統(tǒng)的分布式一致性技術(shù),加上數(shù)據(jù)驗證機(jī)制碉纳。
?優(yōu)點(diǎn)
不需要加密貨幣也可以工作勿负,在成熟的分布式一致性算法(Pasox、Raft)基礎(chǔ)上劳曹,實(shí)現(xiàn)秒級共識驗證奴愉。
?缺點(diǎn)
去中心化程度不如bictoin,更適合多方參與的多中心商業(yè)模式铁孵。
▌Paxos
這是一種傳統(tǒng)的分布式一致性算法锭硼,是一種基于選舉領(lǐng)導(dǎo)者的共識機(jī)制。領(lǐng)導(dǎo)者節(jié)點(diǎn)擁有絕對權(quán)限蜕劝,并允許強(qiáng)監(jiān)督節(jié)點(diǎn)參與檀头,其性能高,資源消耗低岖沛。所有節(jié)點(diǎn)一般有線下準(zhǔn)入機(jī)制暑始,但選舉過程中不允許有作惡節(jié)點(diǎn),不具備容錯性婴削。
Paxos算法中將節(jié)點(diǎn)分為三種類型:
proposer:提出一個提案廊镜,等待大家批準(zhǔn)為結(jié)案。往往是客戶端擔(dān)任該角色
acceptor:負(fù)責(zé)對提案進(jìn)行投票馆蠕。往往是服務(wù)端擔(dān)任該角色
learner:被告知結(jié)案結(jié)果期升,并與之統(tǒng)一惊奇,不參與投票過程〔チ蓿可能為客戶端或服務(wù)端
Paxos 能保證在超過50%的正常節(jié)點(diǎn)存在時颂郎,系統(tǒng)能達(dá)成共識。
▌瑞波共識機(jī)制
瑞波共識算法使一組節(jié)點(diǎn)能夠基于特殊節(jié)點(diǎn)列表形成共識容为,初始特殊節(jié)點(diǎn)列表就像一個俱樂部乓序,要接納一個新成員,必須由該俱樂部51%的會員投票通過坎背。共識遵循這些核心成員的“51%權(quán)利”替劈,外部人員則沒有影響力。由于該俱樂部由中心化開始得滤,它將一直是中心化的陨献,而如果它開始腐化,股東們什么也做不了懂更。與bictoin及Peercoin一樣眨业,瑞波系統(tǒng)將股東們與其投票權(quán)隔開,因此沮协,它比其他系統(tǒng)更中心化龄捡。
▌Peercoin
Peercoin(點(diǎn)點(diǎn)幣,PPC)慷暂,混合了POW工作量證明及POS權(quán)益證明方式聘殖,其中POW主要用于發(fā)行貨幣,未來預(yù)計隨著挖礦難度上升行瑞,產(chǎn)量降低奸腺,系統(tǒng)安全主要由POS維護(hù)。
想知道更多區(qū)塊鏈的資訊和干貨蘑辑,請持續(xù)關(guān)注幣評君(biping.io洋机,最全的加密貨幣行情和區(qū)塊鏈資訊坠宴。