讀者朋友們可能聽說過ETH 2.0的開發正在取得進展,但可能有所疑問:我們現在是處於開發的哪個階段了?大多數現有的資訊不是技術性很強就是過於籠統,因此我們寫了這篇文章來幫大家理清思路,解答困惑。
我們現在正處於階段0,在這個階段,會測試並啟動信標鏈,而信標鏈是ETH 2.0中權益證明(PoS)系統的核心。這篇文章會解釋信標鏈的作用以及為了它的正式發布我們現在正在進行的工作。
信標鏈的目標是什麼?
ETH 2.0的一個目標是通過分片來分擔處理和儲存交易的工作,從而擴大交易吞吐量。分片是有價值的嘗試,因為目前在ETH 1.0,每個全節點都需要驗證整個以太坊網路上的交易並儲存整個以太坊狀態,這意味著每個全節點都在管理以太坊上所有的經濟活動。
考慮到以太坊的目標是要能夠承載全球範圍內的全部經濟活動,那麼在每一個全節點上儲存全球經濟活動的數據無疑是困難的。隨著狀態在ETH 1.0上的不斷增長,運行一個全節點會變得越來越不可及,這就意味著以太坊去中心化的程度會降低。況且,以太坊現在還尚未成為主流,就已經接近交易吞吐量的極限了。
在ETH 2.0中,分片通過在信標鏈上協調和最終確定數據來緩解這些限制帶來的危機。信標鏈則作為真實信息的源頭。
信標鏈藉助PoS來達成共識和敲定分片上的數據
信標鏈將使用PoS來驗證分片上的數據。在工作量證明(PoW)的區塊鏈里,礦工如果表現得好的話會有激勵,如果他們在挖礦時選擇通過分叉來攻擊網路,將得不到區塊獎勵和交易費來填補電力和挖礦設備等的沉沒成本。
信標鏈改變了在區塊鏈上實現安全性和數據驗證的工作機制。不同於扣除礦工的經濟報酬,使其無法覆蓋沉沒成本,從而確保區塊鏈的安全,信標鏈通過削減或「燒毀」屬於驗證者的ETH來保證安全性。
如果想取得驗證ETH 2.0的資格並由此獲得收益,潛在的驗證者首先需要向系統提交(即質押)至少32 ETH。如果驗證者試圖給網路提交錯誤的數據,或他們的離線時間過長,他們之前提交的部分甚至全部的ETH都會被扣除。
階段0的發展現狀
啟動信標鏈是一項需要小心謹慎的工作。為了確保過程順利,開發者正遵循這些信標鏈規範對客戶端實現進行測試。
客戶端是去中心化系統的核心,因為他們解決了中心點故障的問題。在ETH 1.0里,全節點通過以下三種方式排除中心點故障:
保存以太坊的整個狀態(即全部的經濟活動和餘額等)
與對等節點(其他客戶端)共享最新的區塊鏈信息,例如新挖出來的區塊和等待驗證的交易,以及
接收到信息後先驗證再分享給其他客戶端,執行網路規則
在現階段,ETH 2.0的開發工作主要是由多個獨立團隊對客戶端進行開發測試。Prysm是一個由Prysmatic Labs開發和由Quanstamp審計的ETH 2.0客戶端。這個客戶端現在正在進行Topaz 測試網的測試,任何人都可以下載客戶端並模擬運行ETH 2.0的信標鏈。
點擊這裡了解如何在Topaze ETH 2.0測試網上運行Prysm客戶端!
按時間列舉最近階段0的里程碑事件
多種實現並行能保障ETH 2.0的安全性
ETH 2.0的茁壯成長需要多個客戶端在信標鏈啟動時處於活躍狀態。如果我們依賴單個客戶端,該客戶端的一個bug就足以給網路帶來毀滅性影響,包括將整個網路置於非共識狀態或阻止區塊的敲定。
當網路上存在多個客戶端實現時,單個客戶端的一個bug對網路帶來毀滅性影響的可能性會大大降低。如果在一個客戶端中出現了一個bug,該客戶端會無法參與共識,但整個網路還能繼續運行並敲定交易,因為其他的客戶端不太可能會出現同樣的bug。換句話說,其他的客戶端會維持共識。因此,多客戶端並存能提高網路安全。
創建測試網的目的是模擬將信標鏈放到主網的真實情況。為了測試當多個客戶端共享信息(區塊、交易等)時會不會出現bug,ETH 2.0的客戶端實現正積極地在多客戶端測試網上通信。
Schlesi是第一個多客戶端測試網,於今年4月27日啟動。一度有4個已同步的客戶端實現在其中運行了測試網信標鏈,它們是:
Prysmatic Labs的Prysm
PegaSys的Teku,由ConsenSys資助
Sigma Prime的Lighthouse,以及
Status的Nimbus
5月17日,某個客戶端出現了一個共識bug,並在Schlesi多客戶端測試網上引起一個分叉。在找到bug後,客戶端的開發者決定結束Schlesi測試網並重新創建一個從區塊0開始的新多客戶端測試網——Witti。值得注意的是,在測試網上發現bug是開發過程中很正常的一種情況。在ETH 1.0正式發布前的測試網中,也發現了很多諸如此類的bug。
在Witti Testnet上的驗證者數和質押的ETH數。來源:beaconcha.in
信標鏈的啟動及後續
ETH 2.0將在今年末前啟動,但這並不是一個硬性期限。信標鏈正式面世前,需要多客戶多測試網在足夠長的時間內表現穩定。
一旦以太坊社區對測試網的穩定性達成了一定水平的社會共識,存款合約 (Deposite Contract) 將在ETH 1.0上發布。存款合約的用處在於收集將來ETH2.0驗證者的質押金,這樣他們才有資格在信標鏈上執行驗證工作。當質押的ETH達到預定數額時,信標鏈將被激活,繼而在該鏈上生成新區快。
信標鏈的啟動將標誌著階段0的結束。此後,ETH 1.0和2.0將並行存在一段時間。ETH 1.0將最終過渡為ETH 2.0系統上的一個分片。
冷萃財經原創,作者:Awing,轉載請註明出處:https://www.lccjd.top/2020/06/12/%e4%b8%80%e6%96%87%e4%ba%86%e8%a7%a3eth2%e7%9a%84%e7%8e%b0%e9%98%b6%e6%ae%b5%e5%8f%91%e5%b1%95%ef%bc%9a%e9%98%b6%e6%ae%b50/?variant=zh-tw
文章評論