有沒有可能創建一條區塊鏈,讓每個節點都只需處理部分,而無需處理全部交易呢?這樣一來,每個節點都只需處理網路中很少一部分交易,從而降低通信成本 —— 那就是以太坊2.0 。以太坊即將迎來一場非常重要的大型升級,如果成功實現的話,將為這個世界創造巨大價值。本文源自於 Grant Hummer 的 《ETH2 for Dummies》,由專欄作者 以太坊愛好者作編譯、撰寫及整理。
現在以太坊1.0 處理速度很慢;整個網路每秒僅能處理15 筆交易,而且,通過這些交易進行任何復雜的操作都會帶來極其高昂的成本。
相比之下,Visa (總部位於美國的支付服務提供商)每秒能處理上千筆交易。
延伸閱讀:錯過了減半,是時候關注「以太坊」了!五大指標看 Ethereum 五年來的發展脈絡
ETH1.0 的不足
以太坊的效率為何如此低下?使用成本為何如此高昂呢?
一言以蔽之,去中心化在創造巨大價值的同時也會帶來極高的成本(至少現在是如此)。實現去中心化的成本之所以如此之高,是因為與如今大多數區塊鏈一樣,以太坊上的每個節點(即,連接至以太坊網路的計算機,例如,運行以太坊軟件的筆記本電腦)都必須各自執行記載到區塊中的每一個計算,以確保所有參與者都遵守規則。這個過程要耗費能源和運算資源。
此外還有時間上的耗費。以太坊節點遍布世界各地 —— 畢竟這是一個給參與者提供激勵的公開網路 —— 不同節點之間存在較高的網路通信延遲,計算能力也各不同。以太坊網路必須能夠容忍比較長的網路延遲(即出塊時間不能縮得太短),以便網速較慢的節點能夠與網路保持同步,並參與去中心化投票機制。
就當前架構下的以太坊網路而言,如果要其在很短時間內處理過多數據,筆記本電腦和個人服務器等消費級硬體就無法與網路保持同步,只有大型數據中心才能在這個網路中充當節點之用。這就會極大地降低以太坊的去中心化程度,因為數據中心節點很容易就能形成壟斷,進而控制整個網路,或是對網路進行審查。實際上,一些區塊鏈網路(如EOS)現在就面臨著這樣的問題。
延伸閱讀:以太坊的價格簡史:浮浮沉沉的啟示錄 — 從 0.3 美元眾籌開始的瘋狂故事
延伸閱讀:走向主流!美國 CFTC 主席預言:「以太坊期貨即將進入美國金融市場」
對於公有鏈來說,維持足夠的去中心化水平是非常重要的。如果沒有去中心化,那麼使用區塊鏈就沒多大意義,因為中心化的區塊鏈很容易就能審查人們的交易,而且相比一般的分佈式數據庫來說,使用效率還要低得多。如果你對區塊鏈了解不深的話,不妨跟我一起回憶一下,在中本聰通過比特幣開創新型去中心化治理模式之前,任何一個系統都不可能實現免信任型治理——其中,所有參與者都有權控制決策,但是沒有人掌握全部(或多數)控制權。Vitalik (以太坊的創建者)在回應關於去中心化和性能之間的權衡問題時,打了一個非常有名的比喻:
任何人都可以創建出一個類似於「垃圾集中處理場」的高TPS 系統。
有沒有可能創建一條區塊鏈,讓每個節點都只需處理部分,而無需處理全部交易呢?這樣一來,每個節點都只需處理網路中很少一部分交易,從而降低通信成本。那就是以太坊2.0 。
ETH2.0 簡介
以太坊2.0 就是新一代以太坊,我們甚至不該稱之為以太坊。以太坊2.0 是一個完全不同的項目,在區塊鏈的架構上採用了全新的思路。以太坊2.0 的目標是提高以太坊的可擴展性、安全性和可編程性。不同於以太坊1.0 只能達到15 TPS 的吞吐量,以太坊2.0 每秒可處理上千至上萬筆交易(甚至更多),同時不用降低其去中心化程度。實際上,以太坊2.0 想引入一種經濟安全性更強的共識機制,叫作權益證明(PoS),而不是沿用比特幣和以太坊1.0 所用的工作量證明(PoW)。
延伸閱讀:Vitalik 解釋權益證明的好處,並希望比特幣、萊特幣都能採用 POS (Proof-Of-Stake)
延伸閱讀:關於以太坊 2.0 (Ethereum2.0),有什麼值得期待的?
在傳統的PoW區塊鏈(如比特幣)中,一些個人和機構會充當礦工的角色,利用價格高昂的硬體來解決數學難題,從而鑄造新的比特幣,並處理交易。礦工通過維護網路安全性來獲得增發的比特幣和交易費。相比之下,在(以太坊2.0等)PoS區塊鏈中,
驗證者通過鎖定以太幣來為網路提供安全性,從而鑄造新的以太幣,並處理交易。
那麼實際上,驗證者提供的安全性取決於網路本身的價值。如果有驗證者作惡(例如,投票通過惡意交易),其鎖定的以太幣就會被罰沒。罰沒機制會激勵驗證者遵守協議規則。
PoS 之所以具有較高的安全性,一個很大的原因是PoW 系統容易遭受「蹲點(spawn camping)」 攻擊。如果作惡者所掌握的挖礦硬體足以攻擊比特幣等PoW 區塊鏈,比特幣便無力阻止後續攻擊,因為網路會不斷發生重組/分叉,然後又會被同一幫挖礦硬體攻擊,如此無休止地循環下去。相比之下,以太坊2.0 抵禦蹲點攻擊的能力要強得多——以太坊2.0 可以分叉併罰沒攻擊者的押金。這就好比摧毀了攻擊者的比特幣礦場。
此外,以太坊2.0 能讓開發者創建自己的交易處理方法,即,執行環境,以便其在以太坊網路內使用其它區塊鏈的規則。用極度簡化的說法來說明「執行環境」就是:
以太坊2.0可以讓人們使用比特幣、ZCash、以太坊1.0 的交易規則,以及其它想得到的規則集合,其規模比目前以太坊1.0所能達到的規模高出了幾個數量級,均由同一組繳納了押金的驗證者保護其安全性。
以太坊2.0通過分片實現了這一點:在以太坊2.0中,每一條分片鏈都有各自專屬的出塊者和驗證者,而且這些分片鏈彼此之間聯繫緊密,可以互相通信,因此形成了一個大型分片鏈網路。因此,以太坊2.0的驗證者無需處理整個網路內的所有交易,只需處理並驗證某條分片鏈上的交易。通過這一創新技術,使用消費級硬體的人也能夠參與以太坊2.0網路,為其做出貢獻。
延伸閱讀:Defi Top10 富豪的自白: 鏈上毫無隱私可言,我怕被人肉!—— 「混幣器 Mixer」深度研究心得
延伸閱讀:《產業特輯 I》「Defi 的崛起故事與未來發展」— 沛理科技 · 陳品|2020台灣區塊鏈產業圖鑑
要注意的是,在以太坊2.0 中,每條分片鏈都具備相同的安全性。要想破壞某條分片鏈的話,必須破壞整個系統。這一安全性模型相比Cosmos 等平台提供了更高的安全保障。在Cosmos 等平台的模型下,每條鏈都獨善其身,導致整個網路分片化,且容易遭受攻擊。因此,若想攻擊以太坊2.0 ,攻擊者必須購買並質押價值數十億美元的以太幣(如果以太幣的價格上漲,質押金的美元價值也會隨之上漲)。
下圖顯示了傳統區塊鏈網路的形態 —— 一條由數據區塊組成的「鏈」。不了解什麼是區塊頭(block header)和交易列表(transaction list)也沒關係,下圖僅作說明之用:
下圖顯示了以太坊2.0 的形態,區別在於不只有2 條分片鏈,而是有64 條分片鏈,均由信標鏈進行協調。再強調一遍,先不要考慮技術細節:
ETH2.0 開發團隊
以太坊2.0 由9 個不同的工程團隊構建。這些團隊均由以太坊基金會撥款資助,且獲得了以太坊社區的支持。這些團隊正在開發 戶端 —— 客戶端就類似於Chrom e和Firefox 瀏覽器,只不過不是用來訪問網站的,而是用來訪問並參與以太坊網路的。客戶端多樣性是以太坊的核心原則——如果有一個或兩個客戶端遭到破壞或是存在漏洞,整個網路不會因此而崩潰。每個客戶端都各有針對性的用例,但是它們都能完全參與到該網路中。例如,一個客戶端針對智能手機進行了優化,而另一個客戶端是專為企業構建的。工程團隊正在根據一個由高級研究人員(多數都是電機系博士及同等層次的人才)所創建的規範來開發客戶端。
此外,很多研究工作都是在一個叫作 ethresear.ch 的網站上以開源的方式進行的,全世界任何一個人都可以將自己的技術想法、建議或批評發佈到這個網站上。經過數年的迭代之後,以太坊2.0 的規範才達到了當前的狀態—— 研究人員有好幾次認為自己已經創建了一個合理的設計,但是之後會發現一些缺陷,必須要重新設計部分或整個系統才行。在整個區塊鏈領域,以太坊2.0 研究團隊是經驗最豐富且最有才華的協議設計團隊,這並非誇大其詞。
下面是參與開發以太坊2.0 的團隊名單(排名不分先後):
ChainSafe Systems
- 是一家位於安大略省多倫多的公司,員工人數達30 人以上,其中有5 位開發者從事以太坊2.0 客戶端的開發工作。
- 開發人員在多倫多舉辦的以太坊開發者聚會上面基
- 用JavaScript 語言開發著一個名為Lodestar 的客戶端
PegaSys
- 以太坊生態系統中最大的公司ConsenSys 旗下的一個50 人團隊,其成員分佈於世界各地
- 搭建了一個名為Pantheon 的企業友好型以太坊1.0 客戶端
- 有一個主攻以太坊2.0 規範的研究團隊
- 開發著一個名為Artemis 的Java 客戶端,針對企業使用進行了優化
Harmony
- 位於俄羅斯的4 人團隊
- 開發著一個Java 以太坊客戶端
- 尚無很多公開信息
- 有可能與PegaSys/Artemis 進行整合
Parity Technologies
- 位於柏林的公司,有一個超過60 人的大型遠端辦公團隊(並非所有人都在從事以太坊2.0 的相關工作)
- 從以太坊基金會獲得了500 萬美元的資金,來開發名為Substrate Shasper 的以太坊2.0 客戶端
- 也在開發支持互操作性的區塊鏈項目Polkadot 。該項目被認為是以太坊的勁敵。
- 開發並維護著第二流行的以太坊1.0 客戶端,同樣叫作Parity 。
Prysmatic Labs
- 一個6 人團隊,其成員分散於美國境內
- 會在部落格上主動發布更新,可以通過其博客來了解並跟進以太坊2.0 的進展
- 搭建了一個名為Prysm 的客戶端,與以太坊1.0 的Geth 類似,都是為了滿足主流應用的多樣場景
Sigma Prime
- 位於澳大利亞雪梨的4 人團隊
- 聚集了擁有很強學術/軟體開發背景的網路安全專家
- 搭建了一個名為Lighthouse 的客戶端,適應主要的使用場景
Status
- 一個8 人團隊,成員分散於歐洲各地
- 致力於打造名為Nimbus 的輕客戶端,即,可在智能手機等「輕」 環境下運行
Trinity
- 與以太坊基金會簽約的一個4 人團隊
- 搭建了一個輕客戶端,充當更高級實現的原型
Nethermind
- 位於倫敦和波蘭的7 人團隊
- 在.NET 上搭建了一個Windows 客戶端
分階段交付的ETH2.0
以太坊2.0 的發布被分為多個階段,但其中最重要的是前面三個階段。這幾個階段錯開推出以太坊2.0 的各種組件,一方面是因為需要很長時間才能開發完成,另一方面是因為採用循序漸進的方式會降低技術風險。對於這樣一個價值數十億美元的密碼學貨幣網路來說,「快速行動、打破常規」 的理念並不適用。
不同於可以快速修復問題的中心化科技公司,密碼學貨幣網路如果存在嚴重的客戶端漏洞,將造成遺患久遠的巨大破壞,因為該網路的參與者都要手動更新到新的客戶端版本。在最糟糕的情況下(例如,攻擊者成功發動雙花攻擊),必須回滾多個交易,才能保障網路的安全性。這會造成極大的聲譽影響,就像2016 年的The DAO 被黑事件那樣,一部分以太坊開發者和用戶分叉出了另一條名為Ethereum Classic 的鏈。
Phase 0可能在2020 年第二季度末或第三季度初交付。該階段會引入信標鏈,將其作為整個以太坊2.0 網路的「命令和控制」中心。信標鏈會將驗證者組織到一起,並將他們分配到不同的分片鏈上處理交易;一段時間之後,所有驗證者都會被重新「洗牌」並隨機分配到另一條分片鏈上。
「重新洗牌」是以太坊2.0安全性的關鍵部分,如果沒有這一設定的話,就有可能會出現一小部分驗證者受賄或干涉以太坊2.0運行的情況。信標鏈會驗證各分片鏈所生成的區塊的有效性,以便以太幣、代幣和數據在各分片鏈之間交換。用20世紀70年代加利福尼亞人的語氣來說:信標鏈就是一條可以管理其他區塊鏈的區塊鏈。(譯者註:這個“maaaaaan”應該就是拖長音的“man”,增強語氣的意思,作者想搞一個小幽默吧。)
如果說信標鍊是「命令和控制」中心,那麼驗證者就屬於實操人員。驗證者是PoS 網路上的參與者,負責處理該網路上的交易並對其進行排序,並將這些交易轉發給其他參與者。驗證者會因此獲得交易費和增發代幣(通膨)作為回報。驗證者在密碼學貨幣網路中發揮了最重要的作用,而以太坊2.0 正試圖解決的一大核心挑戰是,如何通過設計激勵機制來讓驗證者遵守協議並作出有利於網路的行動。信標鏈還將負責 「罰沒」 作惡驗證者的押金。
以太坊2.0 的Phase 1 預計於2021 年交付,將推出分片鏈,但是無法處理或結構化分片鏈上的數據。數據會以原始形式存在於分片鏈上(即,「數據Blob」),主要是為了確保分片鏈彼此之間以及與信標鏈之間能夠進行良好通信。分片鏈無法對數據進行任何計算。乍聽起來,Phase 1 像是一個功能有限的優化測試網,但這一說法並不完全正確。新的DApp 和現有DApp 可以利用該數據存儲來增強其可擴展性。例如,一個去中心化的Twitter DApp 可以將數據存儲在分片鏈上,並將大量計算工作放到鏈下完成、利用以太坊1.0 來提供高水平的安全保障。在Phase 1 期間,以太坊1.0 依然會正常運行,以太坊1.0 與以太坊2.0 這兩條鏈將並行。
在2019 年12 月末,Vitalik 提議加快將以太坊1.0 轉移到信標鏈的進程,以便以太坊實現PoS 的優點,並加快其與以太坊2.0 的整合進程。最開始的時候,以太坊1.0 將成為一條特殊的分片鏈(而非執行環境),但它最終將在Phase 2 轉變成執行環境。目前尚未提議具體的時間線,但是這一過程似乎會在Phase 1 發生。
Phase 2 預計於2021 或2022 年上線,將實現以太坊2.0 的真正願景。屆時,分片鏈就能處理交易,而以太坊2.0 網路上就能搭建真正的商業應用。在Phase 2,分片鏈上將引入智能合約,以及運行這些智能合約的執行環境。正如上文所述,執行環境能讓開發者任意創建規則集,以此規定交易的處理方式。這就意味著,協議開發者將能創建出執行環境,來模擬比特幣、Zcash、以太坊1.0 的規則,或是以幾乎任何可以想像得到的方法來計算區塊鏈交易。就像以太坊1.0 通過抽象化比特幣的方式在區塊鏈上實現智能合約那樣,以太坊2.0 將通過抽像以太坊1.0 來重新定義區塊鏈計算的本質。
關於以太坊2.0 的一些組成部分,依然存在一些研究問題還未得到最終解決。例如,如何以去中心化的方式提供並存儲數據(以免少部分數據提供商壟斷整個網路),跨分片交易如何運作,以及執行環境治理等問題。然而,關於這些方面的研究依然在迅速推進中。
下面再重申一下以太坊2.0 的三個階段:
Phase 0
- 估計於2020 年第二季度末/第三季度初交付
- 發布信標鏈並在信標鏈上實行PoS 驗證
- 以太坊1.0 將繼續正常運行
Phase 1
- 預計將於2021 年交付
- 發布分片鏈並允許數據存儲在這些分片鏈上,但是不在分片鏈上處理交易
- 以太坊1.0 可能會繼續正常運行,也可能會作為特殊的分片鏈整合進以太坊2.0
Phase 2
- 預計將於2021 年末/ 2022 年初交付
- 允許在分片鏈上處理交易
- 在一段時間之後,以太坊1.0 將作為執行環境過渡到以太坊2.0 上。
以太坊將在Phase 2 之後繼續發展,但是之後的發展藍圖尚不清晰……
從我的角度來看,以太坊的未來一片光明。沒有哪個智能合約區塊鏈像以太坊這樣擁有這麼多研究人員、開發人員、用戶和項目,現在正是加入以太坊的良機。以太坊即將迎來一場非常重要的大型升級,如果成功實現的話,將為這個世界創造巨大價值。
特別感謝來自ConsenSys R&D 的Robert Drost 、來自Prysmatic Labs 的Terence Tsao 、James Fickel 和Carrie Krabes 對本文的幫助。
?相關報導?
以太坊的價格簡史:浮浮沉沉的啟示錄 — 從 0.3 美元眾籌開始的瘋狂故事
武漢肺炎|吹哨人李文亮醫生今晨逝世,以太坊區塊鏈「立起紀念碑文」永遠留存鏈上
Ethereum 動態更新|基金會發布以太坊 2.0「最終規範」
以太坊2.0 更新|完成存款合約的審計和驗證;信標鏈優化的重要性
讓動區 Telegram 新聞頻道再次強大!!立即加入獲得第一手區塊鏈、加密貨幣新聞報導。