區(qū)塊鏈的共識(shí)機(jī)制解釋
共識(shí)機(jī)制是一個(gè)熱門話題,涉及到環(huán)境、可擴(kuò)展性和安全性。但它們究竟是什么?
什么是共識(shí)機(jī)制?
在加密貨幣世界中,共識(shí)機(jī)制是使計(jì)算機(jī)網(wǎng)絡(luò)能夠共同工作以確保網(wǎng)絡(luò)安全的協(xié)議和算法。
網(wǎng)絡(luò)中51%的節(jié)點(diǎn)必須就網(wǎng)絡(luò)的全球狀態(tài)達(dá)成一致,以便達(dá)成共識(shí)。
在某種程度上,這只是一種通俗的說(shuō)法,"這是我們要用的方法,以確保我們都同意對(duì)方的觀點(diǎn)"。
我們達(dá)成了什么共識(shí)?
區(qū)塊鏈技術(shù)由經(jīng)過(guò)驗(yàn)證的區(qū)塊組成,然后添加到一個(gè)鏈上(因此得名區(qū)塊鏈)。
每個(gè)區(qū)塊包含一個(gè)特定時(shí)間段內(nèi)經(jīng)過(guò)驗(yàn)證的交易列表。這是每個(gè)人都可以看到的;也就是說(shuō),你可以回去看區(qū)塊鏈上的每一筆交易。
共識(shí)機(jī)制被用來(lái)驗(yàn)證添加到區(qū)塊鏈上的交易。
一些更高級(jí)的區(qū)塊鏈項(xiàng)目也會(huì)使用共識(shí)機(jī)制來(lái)驗(yàn)證存儲(chǔ)的數(shù)據(jù)、智能合約等。
但在基本層面上,共識(shí)機(jī)制是用來(lái)驗(yàn)證交易的。
協(xié)商一致機(jī)制是如何運(yùn)作的?
嗯,這取決于一個(gè)區(qū)塊鏈決定使用的模式。有兩種主要類型的共識(shí)機(jī)制:工作證明(PoW)和權(quán)益證明(PoS)。
什么是工作證明
工作證明是比特幣使用的共識(shí)機(jī)制。其他使用它的加密貨幣項(xiàng)目有以太坊1.0,Dogecoin,和Litecoin。
它最初是由辛西婭-德沃克和莫尼-瑙爾在1992年開(kāi)發(fā)的,作為防止垃圾郵件的一種方式。盡管是該模型的首次提出,但他們當(dāng)時(shí)并沒(méi)有將其稱為工作證明。相反,它被稱為 "定價(jià)功能"。
一直到2009年,中本聰創(chuàng)造了比特幣,它使用工作證明作為共識(shí)機(jī)制。它被用來(lái)驗(yàn)證交易,以及在區(qū)塊鏈上創(chuàng)建新區(qū)塊。
從那時(shí)起,它已經(jīng)發(fā)展成為加密貨幣項(xiàng)目中廣泛使用的共識(shí)機(jī)制。
工作證明是如何運(yùn)作的?
網(wǎng)絡(luò)上的節(jié)點(diǎn)將試圖回答難以解決,但容易驗(yàn)證的加密難題--試圖解決難題的節(jié)點(diǎn)被稱為礦工。一旦一個(gè)礦工完成了一個(gè)謎題,他們就會(huì)把這個(gè)謎題廣播到區(qū)塊鏈上,以便其他礦工可以驗(yàn)證這個(gè)解決方案。
密碼謎題的答案是一個(gè)叫做 "NONCE "的隨機(jī)數(shù),它代表只使用一次的數(shù)字。這個(gè)數(shù)字不能被預(yù)測(cè),只能被猜測(cè)。
這意味著你必須投入大量的時(shí)間來(lái)尋找NONCE。
一旦與區(qū)塊內(nèi)的數(shù)據(jù)相結(jié)合,并通過(guò)哈希函數(shù),NONCE將產(chǎn)生一個(gè)具有一系列條件的結(jié)果。這就是礦工將通過(guò)的過(guò)程,以驗(yàn)證解決方案是否正確。
當(dāng)有效的NONCE與一個(gè)區(qū)塊結(jié)合時(shí),它會(huì)創(chuàng)建一個(gè)區(qū)塊哈希。然后,這將被存儲(chǔ)在經(jīng)過(guò)驗(yàn)證的區(qū)塊上,作為礦工工作的證明。然后,區(qū)塊將被創(chuàng)建并添加到區(qū)塊鏈上。
現(xiàn)在你有證據(jù)證明你付出了工作來(lái)解決這個(gè)難題。因此,你會(huì)得到一個(gè)加密貨幣形式的獎(jiǎng)勵(lì),稱為礦工的獎(jiǎng)勵(lì),。
這個(gè)獎(jiǎng)勵(lì)只給首先找到NONCE的人,而不管其他人可能為解開(kāi)這個(gè)謎題投入了多少精力。
工作證明的能源問(wèn)題
由于礦工的獎(jiǎng)勵(lì),比特幣挖礦是一種為自己創(chuàng)造被動(dòng)收入的方式,這就是個(gè)人和大公司投資成為礦工的原因。
你的計(jì)算能力越強(qiáng),解決加密難題的設(shè)備越好,你就越有可能收到錢作為獎(jiǎng)勵(lì)。
換句話說(shuō),一臺(tái)超級(jí)計(jì)算機(jī)比一臺(tái)2008年的戴爾電腦更有可能找到NONCE。
這導(dǎo)致了比特幣網(wǎng)絡(luò)上使用了大量的能源。它導(dǎo)致了環(huán)境保護(hù)者反對(duì)工作證明的共識(shí)機(jī)制。
比特幣網(wǎng)絡(luò)占全球電力消耗的0.66%,占全球能源消耗的0.23%。
比特幣消耗的電力足以為劍橋大學(xué)供電1081年,或?yàn)橛?guó)所有的茶壺供電33年。
然而,并非所有都是壞事。比特幣網(wǎng)絡(luò)所消耗的大量計(jì)算能力實(shí)際上意味著該網(wǎng)絡(luò)更加安全。
這是因?yàn)?,為了攻擊區(qū)塊鏈,你需要控制網(wǎng)絡(luò)上51%的計(jì)算能力(稱為51%攻擊)。擁有這么多計(jì)算能力可能要花費(fèi)數(shù)十億美元,這在經(jīng)濟(jì)上是不可行的。
什么是 "權(quán)益證明"
權(quán)益證明是Solana、Cardano和Tezos使用的共識(shí)機(jī)制。
它最早于2011年在比特幣論壇上創(chuàng)建,作為工作證明的替代品,以改善舊的共識(shí)機(jī)制的不足之處。2012年,我們看到了第一個(gè)采用權(quán)益證明的加密貨幣項(xiàng)目 - Peercoin。
以太坊2.0將看到區(qū)塊鏈從工作證明轉(zhuǎn)向權(quán)益證明。試圖做到 "更可擴(kuò)展、更安全、更可持續(xù)"。
這種方法比工作證明方法使用的計(jì)算能力要少得多。而且,因此,使用它的項(xiàng)目被視為更環(huán)保。
權(quán)益證明是如何工作的?
權(quán)益證明的共識(shí)機(jī)制是偽造區(qū)塊,而不是像工作證明方法那樣挖礦。
在工作證明項(xiàng)目中,代幣被創(chuàng)造出來(lái)作為對(duì)礦工的獎(jiǎng)勵(lì),但在權(quán)益證明項(xiàng)目中,交易費(fèi)被用作獎(jiǎng)勵(lì)。因此,權(quán)益證明項(xiàng)目通過(guò)出售預(yù)先開(kāi)采的代幣啟動(dòng),或者最初以工作證明方式啟動(dòng),然后過(guò)渡到權(quán)益證明。
如果你想?yún)⑴c偽造區(qū)塊,你必須將你的代幣入股。抵押過(guò)程要求你將你的代幣鎖定在網(wǎng)絡(luò)中,這意味著,你在這段時(shí)間內(nèi)無(wú)法使用它們。
這是因?yàn)槿绻闶且粋€(gè)壞的行為者,你將會(huì)被奪走你的抵押代幣作為懲罰--使這樣的行為在經(jīng)濟(jì)上是可行的。
Stakers,也被稱為驗(yàn)證者,在工作證明中承擔(dān)著與礦工類似的角色。
接下來(lái),使用偽隨機(jī)選擇方法選擇驗(yàn)證人。其中最流行的三種方法是node wealth、coin age selection和randomized block selection。
讓我們仔細(xì)看看每種方法。
node wealth
簡(jiǎn)單地說(shuō),你押的代幣越多,你被選中驗(yàn)證下一個(gè)區(qū)塊的機(jī)會(huì)就越大。
如果這是選擇驗(yàn)證者的唯一變量,那么只有最富有的投幣者才能保證網(wǎng)絡(luò)的安全;使項(xiàng)目的分散性降低,更容易受到壞人的攻擊。
coin age selection
一個(gè)節(jié)點(diǎn)將根據(jù)代幣被抵押的時(shí)間來(lái)選擇,使用這個(gè)公式。
幣齡 = 抵押的天數(shù) x 抵押的幣數(shù)
一旦一個(gè)節(jié)點(diǎn)完成了區(qū)塊的鍛造,它的幣齡就會(huì)被重置為零。因此,他們必須等待一段時(shí)間才能鍛造另一個(gè)區(qū)塊。這可以防止富裕的釘子戶主導(dǎo)鍛造過(guò)程。反過(guò)來(lái),使區(qū)塊鏈更加分散。
randomized block selection
隨機(jī)區(qū)塊選擇將通過(guò)尋找具有最低哈希值和最高股權(quán)的節(jié)點(diǎn)來(lái)選擇下一個(gè)偽造者。
值得注意的是,每個(gè)使用權(quán)益證明共識(shí)機(jī)制的加密貨幣項(xiàng)目在選擇偽造者時(shí)都使用自己的一套規(guī)則和方法。
回到驗(yàn)證一個(gè)區(qū)塊...
當(dāng)一個(gè)節(jié)點(diǎn)最終被選中時(shí),它將驗(yàn)證該區(qū)塊上的交易。每筆交易都用發(fā)件人的私鑰簽名。
驗(yàn)證者將使用這個(gè)密鑰來(lái)找到發(fā)件人的公鑰和地址。利用這些信息,他們將驗(yàn)證發(fā)件人是否真的有他們要花的錢,以及他們是否有多次花費(fèi)代幣(被稱為雙重消費(fèi)問(wèn)題)。
接下來(lái),散列函數(shù)將經(jīng)過(guò)驗(yàn)證的散列交易分組為一棵Merkle樹(shù)。然后,偽造者使用其私鑰簽署區(qū)塊,并將其廣播到區(qū)塊鏈上,讓其他驗(yàn)證者(現(xiàn)在稱為證明者)證明該區(qū)塊是有效的。
槽和紀(jì)元是用來(lái)劃分時(shí)間的。槽是為創(chuàng)建一個(gè)區(qū)塊而設(shè)定的時(shí)間(以太坊2.0的12秒)。
一個(gè)紀(jì)元是一個(gè)更大的定義時(shí)間段,它通常預(yù)示著什么時(shí)候會(huì)選擇一組新的驗(yàn)證者(以太坊2.0的32個(gè)槽位,大約6分24秒)。
通常情況下,每個(gè)槽會(huì)在區(qū)塊鏈上產(chǎn)生一個(gè)區(qū)塊。然而,如果偽造者未能及時(shí)產(chǎn)生區(qū)塊,這可能是空的。
一旦區(qū)塊被驗(yàn)證并添加到區(qū)塊鏈上,偽造者節(jié)點(diǎn)將獲得加密貨幣形式的獎(jiǎng)勵(lì)。
如前所述,這通常來(lái)自于交易費(fèi)用。如果證明人正確證明,也會(huì)得到獎(jiǎng)勵(lì)。
并非所有的權(quán)益證明項(xiàng)目都會(huì)遵循這個(gè)確切的方法,并對(duì)系統(tǒng)稍作調(diào)整。
委托持股證明
一些權(quán)益證明項(xiàng)目允許你把你的代幣委托給其他驗(yàn)證者,而不是自己去設(shè)置一個(gè)節(jié)點(diǎn)。這降低了賭注獎(jiǎng)勵(lì)的準(zhǔn)入門檻。
個(gè)人根據(jù)記錄和聲譽(yù)來(lái)選擇將他們的代幣委托給哪個(gè)驗(yàn)證者。其他因素也可以決定某人將他們的代幣委托給哪里,比如他們是否使用環(huán)保能源,是否有一定比例的捐贈(zèng)給慈善機(jī)構(gòu)。
工作證明(Proof-of-Work)和權(quán)益證明(Proof-of-Stake)之間的區(qū)別
好吧,這是一個(gè)很大的信息。讓我們快速總結(jié)一下共識(shí)機(jī)制的差異。
工作證明
- 比特幣使用它
- 區(qū)塊被挖掘出來(lái)
- 礦工解決密碼學(xué)難題
- 需要大量的計(jì)算能力來(lái)挖礦
- 只有解開(kāi)謎題的人才能得到獎(jiǎng)勵(lì)
- 對(duì)環(huán)境非常不利
權(quán)益證明
- Cardano使用它
- 區(qū)塊是偽造的
- 密鑰和簽名被用來(lái)驗(yàn)證交易
- 驗(yàn)證者必須用他們的代幣做賭注才能被選中來(lái)偽造區(qū)塊
- 驗(yàn)證者和證明者都會(huì)得到獎(jiǎng)勵(lì)
- 更加環(huán)境友好
其他共識(shí)機(jī)制
盡管這是最流行的兩種共識(shí)機(jī)制,但它們并不是唯一的。事實(shí)上,在我們說(shuō)話的時(shí)候,更多的共識(shí)機(jī)制正在被創(chuàng)造出來(lái)。
以下是一些替代性共識(shí)機(jī)制的例子。
空間和時(shí)間證明
這種共識(shí)機(jī)制允許項(xiàng)目存儲(chǔ)數(shù)據(jù),而不僅僅是驗(yàn)證交易。
從本質(zhì)上講,該模型設(shè)置了一種將信息放到硬盤上的方式,然后會(huì)隨機(jī)檢查信息是否還在那里。
人們?yōu)樗麄兊男畔⒈淮鎯?chǔ)而付費(fèi),然后那些存儲(chǔ)數(shù)據(jù)的人則為存儲(chǔ)付費(fèi)。
授權(quán)證明
這是一個(gè)更集中的權(quán)益證明的版本。
權(quán)威證明項(xiàng)目不允許任何人成為驗(yàn)證者,而是選擇幾個(gè)他們信任的節(jié)點(diǎn)。這樣做是為了更快地處理交易,以及進(jìn)一步減少對(duì)環(huán)境的影響。
唯一節(jié)點(diǎn)列表
這是瑞波(XRP)使用的共識(shí)機(jī)制。
與授權(quán)證明類似,你選擇幾個(gè)你信任的節(jié)點(diǎn)。這一次,節(jié)點(diǎn)不需要抵押任何東西,他們只需要驗(yàn)證交易。
交易被發(fā)送到大量的節(jié)點(diǎn),他們被要求簽署有效的交易。如果一個(gè)交易沒(méi)有得到很多簽名,它就被認(rèn)為是無(wú)效的,所以它被扔掉。
共識(shí)機(jī)制對(duì)于確保區(qū)塊鏈的安全并使其成為今天的樣子至關(guān)重要。我們從工作證明開(kāi)始,目前正在演變?yōu)闄?quán)益證明,作為減少我們對(duì)地球傷害的一種方式。
但是,這將是剩下的時(shí)間里的共識(shí)機(jī)制嗎?或者我們很快就會(huì)看到另一種演變?