為什么說共識(shí)機(jī)制是區(qū)塊鏈的核心問題
共識(shí)機(jī)制是區(qū)塊鏈的核心問題,所有區(qū)塊鏈都會(huì)采用一種共識(shí)機(jī)制來使得去中心化網(wǎng)絡(luò)能夠同步。毫不夸張的說,在區(qū)塊鏈領(lǐng)域內(nèi),一切都是圍繞共識(shí)運(yùn)轉(zhuǎn)的。共識(shí)機(jī)制之于區(qū)塊鏈,就如同法律之于國家一樣的存在。那么,共識(shí)機(jī)制究竟是什么?
所謂共識(shí)機(jī)制,是分布式系統(tǒng)中的一個(gè)過程,用于在涉及多個(gè)不可靠節(jié)點(diǎn)的網(wǎng)絡(luò)中,在所有節(jié)點(diǎn)之間實(shí)現(xiàn)數(shù)據(jù)一致性并對(duì)某個(gè)提案達(dá)成一致的協(xié)議。不同的共識(shí)機(jī)制各自有其優(yōu)缺點(diǎn)?,F(xiàn)在主要根據(jù)安全性,可擴(kuò)展性,TPS性能,以及資源消耗來判定一款共識(shí)機(jī)制的優(yōu)劣。
盡管現(xiàn)在區(qū)塊鏈項(xiàng)目如過江之鯽,但主流的共識(shí)機(jī)制總結(jié)起來卻不外乎幾種,下面我們一一分析道來,相信大家看完,會(huì)對(duì)共識(shí)機(jī)制有一個(gè)自己的認(rèn)識(shí)。
最普遍的共識(shí)機(jī)制便是PoW和PoS。
PoW (Proof of work)即工作量證明機(jī)制,PoW機(jī)制是比特幣等需要挖礦幣種的通用機(jī)制,對(duì)于重復(fù)性小概率事件來說,出示結(jié)果同時(shí)就證明了工作量。具體到應(yīng)用,就是工作越多,收益越大。
這種思想被廣泛地使用在我們的生活中。比如近期火爆的“吃雞”游戲(絕地求生),不考慮外-掛的前提下,玩家在一場游戲中成功活到最后的概率很小,如果一個(gè)人最近“吃雞”的次數(shù)非常多,那基本能證明他的實(shí)力,大概率靠的不是運(yùn)氣。
再或者關(guān)于運(yùn)動(dòng)技巧的掌握,通常也是一種工作量證明。一個(gè)三分球精準(zhǔn)的籃球投手,一定付出了大量的時(shí)間去練習(xí)投籃,因?yàn)楣ぷ髁颗c技能的熟練程度是正相關(guān)的。
PoS(Proof of stake)即股權(quán)證明機(jī)制,與PoW不同,PoS幣是不需要挖礦的,它會(huì)在創(chuàng)世區(qū)塊內(nèi)寫明股權(quán)證明,直接證明你擁有的份額。簡而言之,就是你擁有1%的股權(quán),和PoW中你擁有1%的算力的效果是一樣的。
兩種機(jī)制在保障安全上各有獨(dú)到之處。
在PoW機(jī)制中,由于獲得激勵(lì)的概率大體等同于占有的算力,此時(shí)撒謊的收益顯著低于誠實(shí)挖礦。在這個(gè)機(jī)制下,比特幣的安全主要取決于挖礦者,而與持有者沒有關(guān)系。
而PoS的安全機(jī)制則在于股東不會(huì)殺死自己的錢,在這個(gè)機(jī)制下,不占有PoS股權(quán)的人無法對(duì)鏈本身構(gòu)成威脅,其安全取決于持有人,和其他因素?zé)o關(guān)。
無論是PoW還是PoS都不完美。前者是一種贏者通吃的游戲,并會(huì)導(dǎo)致大量的算力被浪費(fèi),而后者根本就是不公平的,少數(shù)人獲得大量成本極低的加密貨幣,新獲得PoS的能力受到已持有PoS的絕對(duì)限制。
在PoS機(jī)制基礎(chǔ)上又誕生了DPoS機(jī)制。它和PoS原理上類似,區(qū)別就在于前面這個(gè)D,這類似于董事會(huì)投票。以EOS為例,所有持幣地址投票共選出21個(gè)超級(jí)節(jié)點(diǎn)來行使記賬權(quán),如果在規(guī)定時(shí)間內(nèi)記賬失敗,網(wǎng)絡(luò)會(huì)選出新的節(jié)點(diǎn)來取代他們。
這樣做的優(yōu)點(diǎn)是大大減少了參與驗(yàn)證和記賬的節(jié)點(diǎn)數(shù)量,比特幣出塊時(shí)間為十分鐘,而EOS宣稱形成共識(shí)速度可達(dá)秒級(jí)。
但缺點(diǎn)是去中心化程度不夠,只能算是弱中心化,算不上真正意義的去中心化。另外,絕大多數(shù)的持幣人根本不關(guān)心投票,也缺少投票所需的時(shí)間,經(jīng)驗(yàn)和技能。
PBFT(Practical ByzanTIne Fault Tolerance)即實(shí)用拜占庭容錯(cuò)算法,它主要依據(jù)法定多數(shù)的決定,一個(gè)節(jié)點(diǎn)代表一票,以少數(shù)服從多數(shù)的方式實(shí)現(xiàn)了拜占庭的容錯(cuò)演算。
優(yōu)點(diǎn)在于保證靈活性和安全性的前提下最大允許(n-1)/3故障節(jié)點(diǎn)的容錯(cuò)性,缺點(diǎn)是當(dāng)有1/3或以上記賬人停止工作后,系統(tǒng)將無法提供服務(wù)。