導讀

以太坊2.0測試網絡已於2020年1月3日正式上線,以太坊2.0是今年區塊鏈技術領域最重要的革新。其整體技術部署共分為7個階段,部署加過渡總體計劃約5年。 Phase0的信標鏈(Beacon Chain),將會在2020年第二季度末或第三季度正式上線。 2021年計劃將引入Phase1: sharding分片功能,在2022年,Phase2計劃推出新的虛擬機eWASM,對Dapp生態會有更好的支撐,讓Dapp的用戶體驗變得更好。 Phase2之後(包括)的階段,目前仍在積極的開發,官方並沒有給出明確的路線規劃。對於以太坊2.0而言,信標鍊是整個系統的心臟,它控制著整個系統的脈搏,因此要理解以太坊2.0企圖對工程實踐和產品設計的造成影響,理解信標鏈的技術架構至關重要。下面我們就對信標鏈的技術架構,做詳細的解析。

本文所有的參數均來自以太坊2.0官方信標鏈技術規範,Etherum2.0S pecifications (http://github.com/etherum/eth2.0-specs)。 FutureMoney R&D團隊對信標鏈的技術架構進行了深入研究分析。對本文中的技術術語以及分析如有疑問,可以參考官方技術規範,不一致之處以官方技術說明為準。另外需要說明的是本文參考的信標鏈技術規範版本為v0.10.1,文檔版本更新可能導致說明與本文分析有所出入。

我們不僅解析了以太坊2.0中的核心技術原理,還分析了引入各技術對應用層的影響,同時對每個技術在以太坊2.0體系結構中的權重和實現難度進行了簡單的評級,供讀者參考。

分片

要理解信標鏈,我們首先了解一下分片技術(sharding computing),它是以太坊2.0的核心功能。分片鏈與信標鍊是相互獨立的,它是計劃在Phase1才引入的功能。不過首先了解一下它有助於我們理解以太坊2.0的整體技術架構及其設計目的。以太坊1.0中系統每秒處理事務數大約為15,這樣的吞吐量對於一個底層系統而言是遠遠不夠的,建立在它之上的Dapp應用,通常會面臨擁堵和體驗不好的問題,而我們擴展系統時面臨的主要困難是:每個節點都要驗證和同步鏈上所有信息,這樣的架構顯然很容易達到瓶頸。

以太坊2.0中的分片技術就是為了解決這樣的擴展問題。以太坊2.0的主要目標就是進行水平擴展,以信標鏈加上分片鏈的整體架構,讓驗證者僅僅處理和驗證自己分片上的交易,或者只參與信標鍊主鏈上的共識過程。所以每個分片上的交易只會由全網的一個子集來處理,大大減輕了節點的負荷,加上採用權益證明的共識機制,驗證者只需要消費級硬件就可以運行節點了。這樣的整體架構下,全網的吞吐量將會有一個質的⻜躍。以太坊2.0的部署計劃是在Phase1啟動64個分片鏈。

採用分片技術最大的問題就是安全性問題,因為驗證節點被分配到不同分片上且各自為政,因此攻擊者攻破單個分片的難度就會大大降低。解決這個問題的核心,是在信標鏈中採用的隨機方法,每個區塊都由一組隨機選擇的驗證者(Validator)所組成的委員會(Committee)來處理。只要一個驗證者持有的權益少於全部驗證者權益的1/3,那麼系統被攻擊的概率就為0. 這點後面會詳細說明。

評論:從生態上分析,分片技術的引入,由於提高了網絡並行度,對上層的Dapp有極大的性能優化作用,在以太坊1.0中出現的擁堵和執行效率低下等問題將得到很大的緩解。甚至原本有一些由於效率原因而無法商用的功能,也將得到解鎖。由於64個分片是獨立執行的,意味著全網最多有64個分片可以並行執行,這類似於計算機由單線程變為了64線程。這無疑會讓應用層的Dapp用戶體驗更加順暢。我們大膽預測,以太坊2.0中的Dapp的數量和種類會是以太坊1.0上的5~10倍。分片技術將在phase1中引入,目前尚有一些技術細節未公佈,不過技術本身是從數據庫物理分片中延伸出來的成熟技術,也有成熟的實現方案。分片技術在生態上帶來的革新將非常值得期待。

重要程度:★★★★★ 實現難度:★★★☆☆

Slot和Epoch

Slot和Epoch是以太坊2.0技術規範裡面非常重要的概念,我們翻譯為時隙(slot)和時段(epoch)。信標鍊是以太坊2.0的心跳,而時隙與時段就類似於計算機中的時鐘週期,他們是以太坊的時鐘週期,所有的分片鏈都要與信標鏈的時隙和時段同步,而信標鏈就是這個脈搏的發生器。時隙的間隔是12秒,每個時段由32個時隙組成,因此每個時段是6.4分鐘(根據技術規範v0.10.1, 有的文檔認為slot間隔為6秒,64個slot為一個epoch,我們以這個版本的技術規範為準,具體參數不影響對架構的理解)。

一個時段(epoch)中所包含的32個時隙(slot)

640?wx_fmt=jpeg

在每個時隙中,信標鏈上和各分片鏈上都有可能會產生一個區塊。信標鍊和其他各分片鏈之間是緊密同步的,也就是說它們的時隙節奏是完全相同的。最理想的情況下,每12秒信標鏈上就會產生一個區塊,而64個分片鏈上分別同時產生64個分片區塊。不過,某個時隙者上信標鍊或者任意一個分片鏈上,也可能會出現空塊。信標鍊和各分片鏈的創世區塊是在各自的0號時隙中產生的。信標鏈技術規範規定,各分片鏈在信標鏈的時段(epoch)0完成之後才能開始。而分片鏈各有各的時段0,它們不必同步(時段0的0號時隙處產生各自的創世區塊)。

我們可以簡單的理解時隙就是區塊時間,是區塊的時鐘週期,每個週期都有可能產生64+1個區塊。而32個時隙週期組成一個時段。一個時段是系統進行一次完整的隨機分配和驗證的基本單位。所有的驗證者在一個時隙內都要完成一次驗証投票。

評論:時隙和時段同步了分片鍊和主鏈之間的節奏,同步的機制,不僅能夠一定程度上更加。比起異步架構來講,它也省去了大量分片之間和分片主鏈之間的通信成本,大家使用同一個時鐘, 約時間的時候就不用換算了。目前在已上線的Testnet中已經上線了slot和epoch的功能,他們是用戶客戶端接入主網時,所需要考慮的核心機制。對於應用開發者而言,他們無需過多涉入時隙和時段的技術細節,但是了解slot和epoch的原理,有助於開發者規劃自己的應用,需要與主網交互的部分,確定等待時間和安全等級。

重要程度:★★★★☆ 實現難度:★★★★☆

驗證者(Validator)

以太坊2.0的一個核心轉變,就是共識機制由POW轉向了POS。以太坊2.0權益證明的網絡,不再是依靠礦工,而是依靠驗證者來維護。驗證者是以太坊2.0網絡的主動參與者。用戶可以質押ETH來獲得驗證者資格,以此參與到網絡建設中。所以說質押者是虛擬礦工,由節點主動質押激活。每個驗證者最多的餘額為32個ETH,也就是每個驗證者的權益有一個上限,這樣保證了公平,避免了單個驗證者節點權益過大的情況,對安全性也有一定的提高。不過手裡有很多ETH的用戶可以通過質押,每32個ETH可獲得一個完全的驗證者資格,以此可以獲得多個驗證者資格。

對於大多數驗證者在大多數時間內,都僅僅是對信標鍊或分片鏈產生的最新區塊進行投票,這個過程叫做⻅證(attest)。它們的投票將決定信標鏈以及各個分片鏈上的最新區塊。而在每個時隙中,系統都會隨機選舉出來一個驗證者作為提議者,將由它來產生一個新的區塊,並由其他驗證者來⻅證(attesting), 對於一個提議者,它也可能同時是一個驗證者。

在某個時隙中,被選為提議者的g並沒有提議產生新的區塊,因此這個時隙出的就是空塊

640?wx_fmt=jpeg

在一個時段中(epoch),一名驗證者只會被分配到一個時隙中,也只會被分配到一個分片鍊或信標鏈上。驗證者會參與該分片的投票過程,以選舉出最新的區塊。如果它驗證的是分片的區塊, 那麼它同樣會在這個時隙內把最新的分片區塊鏈接到信標鏈上。

驗證者節點要在網絡中運行起來必須要依靠叫做驗證者客戶端的工具。信標鏈節點可以跟踪信標鏈的運行狀況並讀取相關信息,這個功能叫做信標鏈節點功能,驗證者客戶端可以自己運行信標鏈節點功能,也可以連接到其他運行此功能的信標鏈節點上。通過利用信標鏈節點客戶端才能和信標鏈進行交互,執行驗證者的正常功能。目前,以太坊2.0擁有7個核心開發團隊,其中之一的Prysmatic Labs團隊就是在開發此類客戶端程序,Lighthouse同樣也是開發客戶端程序的團隊, 只有通過客戶端,驗證者才能通過信標鏈節點執行其功能。

關於更多驗證者客戶端的技術細節可以參考Prymatic Labs官方網站(https://prsmaticlabs.com)。

總之,驗證者通過質押ETH獲得驗證者資格,並通過運行驗證者客戶端,運行信標鏈節點功能, 接入信標鏈,配合信標鏈一系列的隨機分配算法,參與選舉,驗證相應的分片或信標鏈上的最新區塊,完成自己驗證者的職能。

評論:以太坊2.0中的驗證者都會因為參與驗證或者舉報作弊而獲得獎勵,這就是所謂的staking挖礦,即通過質押成為驗證者參與網絡驗證以獲得獎勵。由於單個驗證者最大持有權益不能超過32ETH,而且要通過使用驗證者客戶端進行驗證,更不用說還有可能因為slash懲罰而丟失質押的本金籌碼。這就有可能催生出另一個行業,節點管理服務商。以太坊2.0的質押規則讓staking具有一定的⻔檻,單個用戶要做staking,最好的策略不是自己成為驗證者,而是委託節點服務商,提供專業的質押服務。節點商可以提供發驗證者客戶端,管理大量的驗證者節點,檢測slash⻛險等服務,與普通用戶共享驗證者獎勵。這有可能成為一個很大的商業模式。

重要程度:★★★★☆ 實現難度:★★★☆☆

交鏈(CrossLink)

交鏈(其他的一些文章也翻譯成交聯或分片鏈狀態),是信標鏈區塊內指向某分片區塊的數據。信標鏈就是通過它來獲悉各分鏈上最新區塊的信息。因為信標鏈上最多有64個分片,所以一個信標鏈區塊內最多有64個交鏈,當然其他分片上也可能在該時隙內沒有產生區塊,所以交鏈的數量也可能小於64。按照系統部署的階段劃分,交鏈的功能應該在phase1中引入,因為phase1階段的核心是引入分片技術,而交鍊是分叉選擇和跨鏈通信的核心技術。在這裡,我們只要理解它是信標鏈區塊上存放的各分片鏈的信息即可,詳細的細節我們到了phase1時再做討論。

評論:crosslink是在phase 1階段才會引入的機制,它是信標鏈區塊內的各分片的信息。上層應用可以利用信標鏈節點功能,讀取各分片的狀態。因此應用層上就擁有了更大的優化空間。 crosslink的引入,也使得主鏈隨時能獲得各分片鏈的狀態,進行負載均衡。同時,這些信息的存在也能降低跨鏈通信的複雜度,提高分叉選擇的效率。

重要程度:★★★☆☆ 實現難度:★★★☆☆

投票委員會(Committee)

委員會就是一批隨機選出的驗證者,他們被隨機分配到某時隙某分片鍊或信標鏈上,參與投票驗證功能,每個委員會至少應該有128個驗證者。信標鏈最核心的功能就是它的偽隨機數算法,“信標鏈”這個名字就是來源於它的隨機數算法功能,叫做隨機性信標。信標鏈會對一個叫做RANDAO偽隨機過程達成共識。在一個時段(epoch)開始的時候,RANDAO會選出該時段內所有時隙的區塊提議者,並且將驗證者隨機分配到各個委員會中去。由於phase0中只上線信標鏈,而分片鏈的功能要到phase1中才會引入,因此,目前我們只討論信標鏈上的委員會運行機制, 及其投票規則。

在驗證者投票的時候,驗證者投的是它認為的信標鏈當前的頂端區塊(head of the blockchain)是誰,即它認可的信標鏈中最新的區塊是誰。對信標鏈頂端區塊投票的時候,以太坊2.0使用的是LMD GHOST算法,即基於消息驅動的最重子樹選擇算法(Last Message Driven Greediest Heaviest Observed SubTree)。這就是以太坊2.0的分叉規則,即出現了不同投票時就要根據LMD Ghost算法進行分叉選擇。 LMD GHOST在其他區塊鏈系統中非常受歡迎,簡單的說就是選出最⻓子鏈,本文的重點在於分析信標鏈機制和技術架構,更多的算法細節在這裡就不贅述了, 需要了解更多請參閱相關文檔。

640?wx_fmt=jpeg

在上圖中例子中,我們假設在每個時隙內只有一個委員會(事實上同一個時隙內可以有多個委員會)。在時隙1,Alice提議了一個區塊,並得到了委員會A中的兩個驗證者的⻅證。在時隙2中,Bob提議了一個區塊,B委員會有一個驗證者錯過了,它認為時隙1產生的區塊才是最頂端的區塊,所以投票給了Alice提議的區塊。在時隙3中,委員會C中的驗證者要運行LMD GHOST算法,進行分叉選擇。並且獨立投票自己認可的目前的頂端區塊。

委員會的隨機過程以及投票的規則可以簡單描述如下。在每個時段開始時,所有的驗證者被均勻的分配到各個時段內的時隙中,然後在該時隙中再被分配到同樣大小的委員會中。每個驗證者都要在自己所在的時隙內發出⻅證消息(即投票,⻅證消息的詳細內容將在後面小節做詳細說明),投票信標鏈的頂端區塊。同時,每個委員會還要在自己所在時隙嘗試交鏈到特定的某分片。隨機算法保證每個委員會至少有128個驗證者。

例如,整個系統中共有驗證者16384個,將這些驗證者均勻的分配到32個時隙中,每個時隙分配到512個驗證者。我們以時隙1為例,在這個時隙內的512個驗證者又被平均分配到4個委員會中, 每個委員會128個驗證者。所有時隙1的512個驗證者在時隙1都要發起LMD GHOST投票(投票最頂端區塊)。另外每128個驗證者組成的委員會,可能其中一個嘗試交鏈到分片48,其他三個委員會分別嘗試交鏈到分片21,分片8,和分片16在時隙2,整個過程再重複一遍。這個過程在該時段剩下的時隙中也將一一重複。等到該時段結束的時候,系統中所有的16384個節點都享受了信標鏈頂端區塊的投票和分片的交鏈。所以在一個時段中,系統中的每個節點都將完成一次驗證任務。

評論:委員會(committee)是以太坊2.0的核心技術,每個時段都會產生新的委員會,分別對不同的分片進行驗證。每個驗證者只負責驗證自己分片的區塊,降低了單個節點的負荷,提高了效率。同時,隨機過程RANDAO在每個時段都會重新隨機分配一次,選舉新的提議者。這樣的隨機過程使得網絡的安全大大提高,攻擊成功的概率不大於萬億分之一。這對於應用層上基於以太坊2.0的Defi類應用至關重要,安全對金融類應用而言是最重要的。

重要程度:★★★★★ 實現難度:★★★☆☆

信標鏈檢查點(checkpoint)

上面討論的委員會是在某個時隙內,完成對該時隙內產生的區塊的投票。但是在一個時段內,除了對各時隙發起的投票外,信標鏈還要求每個驗證者在投票的時候,還要為自己所在時段的檢查點區塊進行投票。

信標鏈檢查點是位於一個時段的第一個時隙內產生的區塊,如果這個時段在第一個時隙內沒有產生區塊,那麼往前順移,前一個時段內產生的最後一個區塊就是本時段的檢查點區塊。每個時段都有一個檢查點區塊。

驗證者在對時隙內產生的區塊進行LMD GHOST的投票時,也要為該時段的檢查點(checkpoint)區塊投票。投票時,驗證者需要提供自己認定的上個時段的檢查點區塊,以及希望確定本時段的檢查點區塊,前者稱為“來源檢查點區塊”,後者稱為“目標檢查點區塊”。這個投票的形式類似於(Source epoch S --> Target epoch T, 即來源檢查點區塊S和目標檢查點區塊T)。

640?wx_fmt=png

圖片來源於Gasper的論文FFG+GHOST

詳情請參閱:http://github.com/etherum/research/blob/master/papers/ffg+ghost/paper.p df

上圖來源於FFG + GHOST的論文,論文中假設一個時段有64時隙,為了方便討論我們在此也做這樣的假設。在圖中,信標鏈上從時隙65到128之間都是空塊,即沒有提議者產生區塊。時段2中的檢查點,本來應該是時隙128處的區塊,但因為65到128時隙之間都沒有產生區塊,所以這個時段的檢查點仍然是時隙64產生的區塊。時段1中的驗證者認為來源檢查點是區塊0(創世區塊),而目標檢查點是區塊64,即投票0 --> 64,而時段2的驗證者對檢查點的投票與時段1時的投票是相同的。同理,在時段3他們認為來源檢查點是64,而目標檢查點是180,因為本該在192時隙產生的區塊是空塊。

這種對檢查點的投票機制叫做Casper FFG投票。 Casper FFG,也就是Casper FFG(Casper, the Friendly Finality Gadget),是以太坊2.0中用於保證確定性的協議。 Casper是一種通用的“小工具”,主要用於做合理化(justify)和最終確定(finalized)的算法。他能夠應用於任何區塊鏈系統中,而不僅僅是以太坊2.0,不過在POS的共識機制中,它的功能能夠充分發揮出來。關於合理化和最終確定將在下一節詳細討論。

評論:以太坊2.0的共識機制中,最重要的是,LMD GHOST 和Casper FFG,分別代表頂端區塊投票,和檢查點投票。他們共同構成了以太坊2.0共識機制的核心算法。他們能夠有效的處理一些突發的情況,如節點宕機, 多重投票,⻓城攻擊等。檢查點機制要和下面的合理化和最終確定一起來討論,他們共同決定了交易數據的周期。

重要程度:★★★☆☆ 實現難度:★★★☆☆

合理化(justified)和最終確定(finalized)

只要超過2/3的驗證者對同一對epoch(例如上面的Source epoch S --> Target epoch T)進行了投票,那這對epoch就叫做獲得了多數票。多數票是根據用戶持有的權益來決定的,也就是說是驗證者總餘額的2/3所支持的投票,注意不是票數,而是票的權重。例如,兩個驗證者,每個8ETH,另一個32ETH,前兩個驗證者加起來並不是多數投票,他們的權益只佔總權益的1/3,而持有32ETH的驗證者自己一個人就佔了總權益的2/3,他自己就是多數票。獲得了2/3以上權益支持的投票就叫做獲得了多數票。

如果一個時段結束的時候,一個檢查點得到了2/3的總餘額的支持,即形成了多數票。那麼這個檢查點就被合理化(justified)了。一個檢查點被合理化之後,如果下一個檢查點也被合理化了, 那麼這個檢查點就會被最終確定(finalized)。一個最終確定的檢查點一定經過了合理化的過程, 而一個合理化的檢查點不一定確定了,還存在反轉的可能。但是,檢查點一旦進入了最終狀態, 就不能被修改了,而且一個檢查點一旦進入了最終確定狀態,它之前的所有區塊都進入了最終確定狀態,而之後都不可篡改了。

時隙64處的檢查點被合理化之後,時隙32處的檢查點就被最終確定了,之前的所有區塊也就被最終確定了

640?wx_fmt=jpeg

在以上的例子中,時隙96處產生了一個信標鏈的頂端區塊,即最新區塊,它本身是下一個時段的檢查點,但是它本身包含的是時段2檢查點區塊的⻅證消息,也就是這個時隙還是對時段2的檢查點進行投票。當時隙64處的區塊獲得了2/3的多數票時,它就被合理化(justified)了, 同時上一個合理化的檢查點,時隙32處的區塊就被最終確定(finalized)了,此時,時隙32之前的所有區塊,都被最終確定了。

因此我們可以看⻅,一筆交易如果在一個時段的中間進行投票打包。那麼從這個區塊產生,到最終被確認最多需要2.5個時段,即0.5 + 1+ 1個時段,也就是16分鐘。一個區塊需要經歷,提議者提議產生,到驗證者提出⻅證消息進行投票,再一步步到合理化,最後達到最終確定的狀態。用戶可以自己決定是否要等到交易確定之後再進行下一步操作,或者更低一點的安全性就足夠了。

合理化與最終確定對於分片機制以及以太坊2.0而言極其重要,一旦最終確定,那之前的所有交易就永遠寫在鏈上了,不可篡改了。最終確定的機制降低了跨片通信的複雜度。如果沒有確定性,分片和跨片交易的rollback將會變得具有破壞性,讓以太坊2.0的架構設計的意義將蕩然無存。

評論:檢查點機制,合理化以及最終確定性算法,讓一筆交易要經歷區塊打包,驗證者共識,合理化,最終確定這幾個階段才能永久寫入區塊鏈中。這樣的過程階段劃分,數據將更“合理”的進入區塊鏈,在永久寫入前,有一個緩衝,逐步確定的過程,以回滾突發狀況。一旦最終確定便不可篡改,這樣的過程不僅使得確認過程更加安全,也使得回滾的過程會更安全,同時提高了突發狀況的處理效率。對於上層應用而言,可以根據具體的應用場景選擇合適的安全等級,在Dapp認為合適的階段確認數據,進行下一步操作。應用可以根據自己的需求,在安全和效率之間選擇一個合適的點。

重要程度:★★★★★ 實現難度:★★★★☆

⻅證消息(attestaion)

在介紹完了前面的各個機制之後,我們再回過頭來深入理解一下驗證者發送的⻅證消息。所謂的⻅證消息(attestation), 也就是驗證者發起的投票,它包含該驗證者投票的具體信息,並被驗證者附加到最新的區塊內。在每個時段,每個驗證者都會發起一個⻅證消息,對其分配時隙內的區塊進行投票,以及對時段的檢查點區塊進行投票,另外,所在委員會還要負責交鏈到隨機分配的分片上。 (參考前面交鍊和委員會那兩節)

Attestation示意圖

640?wx_fmt=png

所以對於驗證者而言,其最重要的職責就是提交⻅證消息,也就是提交投票。而attestation中的內容實際上包含3種投票,一個是對信標鏈頂端區塊(最新區塊)的投票,使用LMD Ghost算法進行分叉選擇。第二個是使用Casper FFG算法對自己的epoch進行時段檢查點區塊投票,合理化檢查點,以及最終確定檢查點。最終確定的檢查點之前的區塊都不可篡改,而該檢查點將成為新的LMD Ghost算法的起點。第三個就是交鏈,確定分片鏈的最新區塊。在一個驗證者的attestation中,就要包含這三種投票,他們指向的內容不同,對整個系統的貢獻也不同。

評論:一個⻅證消息,就是驗證者投票的數據結構。它包含了三種投票,信標鏈頂端區塊,檢點區塊,分片頂端區塊。驗證者在每個時段都要進行一次這樣的投票。

重要程度:★★★☆☆ 實現難度:★★★☆☆

新技術將帶來的影響

以上我們討論了以太坊2.0中的核心技術和原理。這些技術將從底層深刻的影響應用層的形態,Dapp的體驗,同時也會催生出新的應用場景商業模式。以太坊2.0的技術架構主要解決了1.0所遇到的擁堵和效率問題,通過分片不僅提高了網絡並行度,也提高了安全性,網絡在吞吐量和可靠性方面將會有一個質的⻜躍。分片委員會,時段混洗機制,讓每個驗證者都能公平公正的參與網絡驗證,單個委員會被控的概率在萬億分之一的量級。在效率和安全方面的提升以及向POS機制的轉變為上層Defi應用生態的發展提供了最重要的基礎。

在POS共識機制方面,單個節點的權益限制,質押規則,懲罰機制,最大程度的保證了每個驗證者公平公正隨機的參與驗證過程。同時,也提高了驗證者接入網絡的⻔檻。驗證者客戶端,slash檢測,海量節點管理,成為了以太坊2.0 staking挖礦必鬚麵對的技術問題,這些需求將形成一個新的商業機會,staking節點服務商。由於⻔檻較高,單個用戶最好的staking策略就是交給專業的staking節點服務商進行拼單。

然而我們認為,staking的節點服務只是一個中間件的服務,他並不是以太坊2.0設計的重點。以太坊2.0的全部設計目的都是為了改善,優化其生態的體驗和發展。每個技術上的改進都是在對標上層應用中遇到的問題。整個以太坊2.0的重點,並不在POS,不在staking挖礦,也不在經濟模型,甚者不在技術本身,而在於要利用這些技術對上層的應用開發者生態造成深刻的影響,盡可能擴展主網的應用範圍。基於2.0的產品技術形態將發生巨大的改變,用戶體驗也將得到巨大的提升,隨之帶來的是更廣泛的應用落地,更豐富實用場景。

從經濟激勵上看,以太坊2.0的增發率為0.4%,而以太坊1.0的增發率為3.92%。以太坊2.0在設計上為上層應用留下了巨大的利潤空間,它更加鼓勵大家在參與在應用生態上的開發和建設,更多的利用以太坊2.0解決實際商業生產中的問題,而不只是挖礦。換句話說,如果一個Dapp足夠好,只要能提供超過0.4%的年化收益,理性的用戶就應該更傾向於參與這個的應用,而不是staking。在以太坊2.0中,staking是作為一個基本組件提供給上層的應用使用的,而不是主要獲取代幣的途徑。它鼓勵更多的用戶參與應用生態,而不是單純參與驗證,不然又會重複現在無聊的挖礦遊戲,而區塊鏈技術的應用和落地卻始終得不到發展。

以太坊2.0技術帶來的影響,不是共識機制的轉變,不是對ETH幣價的鞏固和提升,而是在工程領域和技術層面進行改進,“建好更平坦的賽道,吸引更多的賽⻋”。它的目的並不在區塊鏈領域,而在於擴展區塊技術及其適用的範圍,提供更完善的基建,用區塊鏈技術支撐應用去解決區塊鏈世界之外的問題。而它要做是提供一個世界計算機。

結語

以上我們討論了以太坊2.0 Phase0階段最核心的技術架構和運行機制。重點討論了驗證者的投票機制,LMD Ghost和Casper FFG是以太坊2.0共識機制的核心算法。核心的概念包括時隙(slot),時段(epoch),驗證者(Validator),交鏈(Cross Link),委員會(Committee), 檢查點(Check point), 合理化(justified), 最終確定(finalized) , 以及⻅證消息(attestation)。理解了這些概念以及他們之間如何協同工作的之後,你就大致理解了以太坊2.0的基本工作原理。本文並未對很多技術細節進行討論,如LMD Ghost算法,Casper FFG算法,以及信標鏈使用的核心隨機數信標算法RANDAO過程,本文旨在整體運行機制上討論以太坊2.0種信標鏈的技術架構。對信標鏈的理解將直接影響到對驗證者客戶端的使用,開發以及對phase1的分片技術的利用,還有對後續各部署階段的應用。

同時,我們也討論了以太坊2.0技術上的改進可能對生態產生的巨大影響。以太坊2.0的設計架構勢必使其在吞吐量上有一個質的⻜躍,使其向其世界計算機的目標更近一步。以太坊2.0在技術架構上的設計目標,已經不再局限於提供一個帶智能合約的點對點支付系統,也不是局限在區塊鏈本身。它的所有改進都是針對工程實踐和產品體驗的,它作為一個區塊鏈的基礎設施平台,為上層的應用Dapp提供更好的性能和用戶體驗,這也是為什麼它計劃利用整個phase2的階段來上線調試全新的虛擬機eWASM 。以太坊2.0技術架構的改進將會使得更多的應用落地,優化更多的產品有更好的體驗,從而讓區塊鏈技術更好的應用到社會和生產當中。它所有的設計目標都是為了優化工程環境。

隨著以太坊2.0各部署階段的逐步展開以及更多技術細節被逐步公佈出來,我們將逐步⻅證一個基礎區塊鏈系統的演化過程。我們當前還從未有過一個去中心化的應用可擴展平台。當前最緊迫的工程就是需要點對點的組網。如果你想更深入的研究以太坊2.0的技術細節,權威的參考是Etherum 2.0 Specification,如果有問題也歡迎聯繫FutureMoney R&D,我們的官網是http://futuremoney.cc, 也可以直接發送郵件到frank @futuremoney.cc,歡迎討論。

關於FutureMoney

FutureMoney是全球領先的數字貨幣資產管理公司,專注於基金管理、量化分析及區塊鏈技術研究。旗下設有行業研究院、區塊鏈股權基金和多個數字貨幣信託。投研方向覆蓋基礎公鏈、應用協議和去中心化金融服務等,為投資人和被投項目提供專業化的投資諮詢服務。

FutureMoney致力於搭建合規的金融資管平台,積極推動全球範圍內的數字資產監管及合規業務,計劃為數字貨幣投資提供一條快速安全的通道。