以太坊2.0 意在解決以太坊的共識(shí)問(wèn)題和擴(kuò)展性問(wèn)題,基于共識(shí)問(wèn)題提出了一個(gè)新概念就是信標(biāo)鏈( Beacon Chain ),而基于擴(kuò)展性問(wèn)題提出的是分片鏈(Shard Chains)。今天大白就和大家科普一下什么是信標(biāo)鏈以及信標(biāo)鏈具有怎樣的功能。
1. 信標(biāo)鏈?zhǔn)鞘裁矗?/p>
信標(biāo)鏈,英文名叫 Beacon Chain,Beacon ,意思就是燈塔,信號(hào)浮標(biāo)。它其實(shí)是以太坊 2.0 系統(tǒng)的核心。
信標(biāo)鏈?zhǔn)且环N全新的權(quán)益證明( PoS )區(qū)塊鏈,它是為了解決共識(shí)問(wèn)題,而分片鏈( Shard Chains )的目的是解決以太坊的擴(kuò)展性問(wèn)題。
分片鏈之所以能解決性能問(wèn)題,它相當(dāng)于是通過(guò)多片技術(shù)處理交易等,提高了系統(tǒng)的效率和性能,下圖展示的是信標(biāo)鏈和分片鏈的結(jié)構(gòu)圖,其中信標(biāo)鏈處于協(xié)調(diào)層,負(fù)責(zé)協(xié)調(diào)和管理工作,而分片鏈處于數(shù)據(jù)層,負(fù)責(zé)數(shù)據(jù)部分的工作。
在圖中我們可以看到,為什么我們需要信標(biāo)鏈呢?信標(biāo)鏈像是一個(gè)核心脊骨,支撐和聯(lián)系著各分片鏈。事實(shí)上,信標(biāo)鏈?zhǔn)墙o整個(gè)以太坊 2.0 系統(tǒng)注入生命力的核心,負(fù)責(zé)指揮協(xié)調(diào)系統(tǒng)的所有參與者。那么它能做些什么呢?
2. 信標(biāo)鏈可以做什么?
首先,這條鏈?zhǔn)菣?quán)益證明( PoS )區(qū)塊鏈,它可以讓驗(yàn)證者可以參與質(zhì)押系統(tǒng)、替代礦工的角色而成為鏈的構(gòu)建者。也就是說(shuō)信標(biāo)鏈上管理著驗(yàn)證者的名單,以及分片驗(yàn)證者任務(wù)。
怎么樣才可以成為信標(biāo)鏈的驗(yàn)證者呢?
首先你需要向當(dāng)前以太坊主鏈上的一個(gè)合約發(fā)送押金( 32 個(gè)以太幣),然后經(jīng)過(guò)一系列的審核檢查之后,你就會(huì)收到一張電子收據(jù)(以太坊智能合約中的事件),這個(gè)收據(jù)就相當(dāng)于一張 vip 卡,有了這張卡,你就擁有了驗(yàn)證資格,成為了驗(yàn)證者。如果你很“活躍”,就可能被選中成為區(qū)塊提議者。
成為驗(yàn)證者之后,信標(biāo)鏈就會(huì)給你安排任務(wù)了。
它會(huì)將你隨機(jī)分配到一到兩個(gè)分片中去做驗(yàn)證。我們知道,在工作量證明機(jī)制下,也就是我們現(xiàn)在的以太坊主鏈上,礦工通過(guò)挖礦生成下一個(gè)區(qū)塊,但是在權(quán)益證明機(jī)制下,不存在挖礦,下一個(gè)區(qū)塊的產(chǎn)生是由驗(yàn)證者們選擇出來(lái)的。這個(gè)選擇具有隨機(jī)性,不是一個(gè)驗(yàn)證者所能掌控的,這也體現(xiàn)了去中心化的特點(diǎn)。
假如你不是很“活躍”,信標(biāo)鏈將你分配到分片之后,你需要同該分片的其它驗(yàn)證者一起選擇出新的區(qū)塊。
然后該分片的區(qū)塊提議者就會(huì)為這個(gè)分片收集交易,并且將這些交易納入到剛剛驗(yàn)證者們選出的區(qū)塊中去,雖然由于你不是區(qū)塊的提意者,也就沒(méi)有將交易納入新區(qū)塊的權(quán)力,但是作為驗(yàn)證者的你這個(gè)時(shí)候可以驗(yàn)證這個(gè)過(guò)程中區(qū)塊提議者是否行為妥當(dāng)。
如果你表現(xiàn)良好,做了身為驗(yàn)證者應(yīng)該做的事就會(huì)得到獎(jiǎng)勵(lì),相反,如果你違反規(guī)則就受到懲罰,懲罰就是從你抵押的 32 ETH 中扣除一部分,當(dāng)?shù)盅航鸬陀?16 個(gè)以太幣之后,信標(biāo)鏈就會(huì)將你從驗(yàn)證者列表中移除。
如果有一天你不想當(dāng)驗(yàn)證者了,你抵押的以太幣加上你得到的獎(jiǎng)勵(lì)以及減去你因懲罰而扣除的以太幣將不會(huì)回到你之前的以太坊主鏈中,而是會(huì)被存進(jìn)某一個(gè)分片鏈中。
除了管理驗(yàn)證者之外,信標(biāo)鏈還需要存儲(chǔ)一些認(rèn)證( Attestation )。
我們知道當(dāng)前的以太坊區(qū)塊鏈上存儲(chǔ)了我們平時(shí)的那些資產(chǎn)轉(zhuǎn)移等交易的數(shù)據(jù)信息,但是信標(biāo)鏈不同于當(dāng)前的以太坊主鏈,它存儲(chǔ)的是一系列經(jīng)過(guò)計(jì)算的字符串。
這個(gè)字符串的產(chǎn)生基于計(jì)算機(jī)中的一種哈希運(yùn)算,它就像生活中你將豆子放進(jìn)豆?jié){機(jī)處理之后,你不能根據(jù)得到的豆?jié){去判斷之前豆子的形狀大小等特征。而且假設(shè)你多加了一顆豆子,得到的豆?jié){就會(huì)發(fā)生很大的改變,你無(wú)法確定你這顆豆子是豆?jié){中的哪個(gè)微粒,這個(gè)豆?jié){機(jī)就像是哈希算法,不能通過(guò)哈希之后的結(jié)果去推導(dǎo)去哈希之前的樣子,而且只要哈希之前的數(shù)據(jù)有一點(diǎn)改變,哈希之后的結(jié)果就會(huì)發(fā)生很大的變化。
在信標(biāo)鏈中,驗(yàn)證者驗(yàn)證并簽名交易,比如一筆轉(zhuǎn)賬交易,然后經(jīng)過(guò)哈希變成一段字符串,將這個(gè)字符串存到信標(biāo)鏈中,此時(shí)這個(gè)字符串就代表了一筆交易的數(shù)據(jù),這樣做的好處就是,你不用去深入探究這筆交易到底在哪個(gè)分片中發(fā)生。
分片中的狀態(tài)一旦發(fā)生改變(比如某個(gè)賬戶余額發(fā)生了丁點(diǎn)改變),驗(yàn)證者都會(huì)把這個(gè)變化匯報(bào)給信標(biāo)鏈。因此,信標(biāo)鏈實(shí)時(shí)跟蹤者分片的變化,也建立起了個(gè)分片間的聯(lián)系與通信。
3. 小結(jié)
總的來(lái)講,信標(biāo)鏈就像信號(hào)燈一樣,指揮著系統(tǒng)的各種行為,存儲(chǔ)著大量的認(rèn)證數(shù)據(jù)。但是這種指揮是去中心化的,如參與其中的驗(yàn)證者的投票行為是由驗(yàn)證者本身自己所決定的,信標(biāo)鏈?zhǔn)遣荒茏笥业摹W詈螅艠?biāo)鏈以及分片鏈還涉及許多的的技術(shù)難點(diǎn),以太坊團(tuán)隊(duì)也在砥礪前行。
評(píng)論