作為以太坊2.0的核心,「信標鏈」將為以太坊帶來什麼?
ECN以太坊中國/張詠晴編譯
2019-07-31 15:43

 

階段0的代碼已經凍結、客戶端正在進行互操作測試、階段2的相關研究如火如荼……這對以太坊的未來到底意味著什麼?

 

信標鏈【階段0】

 

經過一年的集中開發,以太網2.0信標鏈規範於6月30日凍結,即研究和設計已經完成,我們完全進入交付階段。信標鏈是以太坊2.0系統的基礎。它負責管理權益證明協議,並協調所有獨立並行的分片,這是開發中最為複雜的部分。

 

去年7月,信標鏈的想法在柏林誕生,並定為以太坊2.0的未來方向。這個概念雖然是從無到有,但絕不是無中生有。其中的想法可以追溯到以太坊的最早期。該規範透過深入的洞察、討論、檢查和測試過程,才得以形成。

 

同時,目前已經有九個以上來自不同背景和地區的團隊,在不同的編程語言中實現了該規範,並且添加了使其完全運行的工程基礎設施(雖然規範本身就是引擎,但我們要使其具有完備的功能,還有很多其他事情需要做,例如添加網路、數據庫、工具等)。一些團隊已經發布了概念證明公開測試網,讓人們可以嘗試成為以太坊2.0中的驗證者,例如 Prysmatic Labs。

 

有時,規範變化得很快,但我們一直在保持跟進。最近的信標鏈規範凍結是一個重要的里程碑,並且將帶來兩個良好效應。

 

首先,信標鏈規範現在可以進行形式驗證。這涉及到將其翻譯成一種叫做作「K」的特殊用途語言,才能進行嚴謹的分析和正確性證明。運行期驗證將執行這項工作。目前已經完成了對驗證者質押合約的分析,該合約將部署在以太坊1.0上,以便驗證者轉移到以太坊2.0。

 

規範凍結的第二個效應,是它使得所有客戶端都能處於同步狀態,並啓動下一個關鍵階段:互操作性。以太坊2.0信標鏈客戶端類似於當前的以太坊節點,例如 Geth、Parity 和 Pantheon。這些運行以太坊網路的節點彼此溝通,無時無刻達成共識是不可或缺的。可能一個小錯誤引起的分歧都會導致網路分裂。

 

要實現互操作性本身就是一個過程。首先,所有客戶端都需要通過通用參考測試。該規範的一個非常有趣的特性是它已經實現了可執行性,即可以運行規範本身以直接生成客戶端測試。相比於當前使用 Python 編寫的規範,有些人可能更喜歡敘述風格,但儘管如此,當前的規範確實是一個非常有用的工具。另一種類型的測試是「模糊測試」,過去它成功地針對以太坊1.0客戶端的問題進行了追蹤,即反覆向客戶端輸入隨機無效數據,來找出導致客戶端非正常運行的個例。目前正在為信標鏈開發這類模糊測試工具。

 

一旦每個以太坊2.0客戶端團隊,都能保證客戶端可以正常運行,接下來就要使這些客戶端能夠在網路中實現通訊。問題在於,當分散式系統出現問題,是很難排查出來的。因此,第一步就是讓各客戶端執行一個簡化協議(Hobbit),從而使得在執行完整網路堆棧(Network stack)之前更容易進行漏洞排查和分析。

 

為此,計劃的內容是今年9月份讓所有的客戶端團隊,匯聚在加拿大安大略省的某個地方:在確保所有客戶端執行可以正確進行互操作之前,任何人都不能離開。

 

成功實現互操作性,將為今年即將推出的一個共同的、長期的公共測試網鋪路搭橋。到那時,任何想要加入該測試網中的用戶,都能自主選擇安裝一個以太坊2.0客戶端,質押測試 ETH 代幣,並參與測試網中的驗證活動,或者尋找測試網漏洞。發現bug和缺陷的人都有機會獲得獎勵。

 

最後,如果進展順利,信標鏈將於2020年初啓動。有人建議啟動日期定於2020年1月3日,因為這天是比特幣創世區塊誕生的週年紀念日。但對於信標鏈來說要完全產品化還為時尚早,我認為最有可能在2020年第一季末發布。

 

信標鏈啟動前所需的最後一步,是將驗證者質押合約,部署到當前的以太坊1.0區塊鏈上。質押合約規定,任何想要成為驗證者的用戶,都需要抵押 32 ETH。計劃將在今年10月初的第五次開發者會議(DevCon V)期間進行部署。一旦該質押合約中的 ETH 質押數量達到了約 200 萬枚,即代表驗證者數量足夠多時(65,000 名左右),我們就可以有把握地正式啟動信標鏈,使其安全性達到能夠抵禦攻擊的程度。

 

本文為巴比特資訊授權刊登,原文標題為「寫在以太坊ICO五週年之際:談以太坊2.0的最新進展