Serenity 將帶來什麼?

買賣虛擬貨幣

作者 | Colin Schwarz

編譯 | Jhonny

前言

自2015年啟動以來,以太坊一直在朝著其最終目標邁進,即成為一臺去中心化的全球計算機,有朝一日可以取代我們日常生活中使用的許多中心化應用程式。

以太坊網路是世界上規模最大、應用最廣泛的區塊鏈網路之一,也是世界上最大的開源專案之一,其 Geth (go-ethereum) 是 Github 上最大的專案之一。自2015年啟動以來,以太坊一直在朝著其最終目標邁進,即成為一臺去中心化的全球計算機,有朝一日可以取代我們日常生活中使用的許多中心化應用程式。

然而,在實現這一目標之前,以太坊社羣和網路還有很多工作要做。本文將簡要介紹以太坊到目前為止的進展,然後討論該網路即將釋出的和備受期待的重大變革,即以太坊2.0 (Serenity),這將是以太坊社羣實現的最大、最全面的發展。

以太坊發展的四個階段

當以太坊網路於2015年啟動時,該專案的長期路線圖被設想為四個階段。每個階段都由一組以太坊改進提案 (EIPs) 界定。這些都是以太坊社羣提出和批准的提案。這些提案為各種以太坊客戶端和開發人員建立了需要遵循的指南。例如,以太坊當前處於第三階段的 Constantinople (君士坦丁堡) 版本,此版本是透過四個 EIP 建立的,旨在提高以太坊網路的安全性、隱私性和擴容性。[1]

以太坊的第一階段叫做 Frontier (邊疆)。2015年啟動之時,這是該網路的第一個實時版本。Frontier 允許使用者和開發人員進行 ETH 挖礦,搭建 Dapp (去中心化應用程式) 和工具等,以太坊的挖礦獎勵 (即礦工每挖出一個新區塊獲得的獎勵) 被設定為 5 ETH。

以太坊發展的第二階段是 Homestead (家園)。Homestead 於2016年3月釋出,是以太坊網路的第一個產品版本。它對協議進行了許多改進,這些改進為未來升級和提高交易速度奠定了基礎。

以太坊發展的第三個階段,也是目前的階段,被稱為 Metropolis (大都會)。Metropolis 分為兩個版本,即 Byzantium (拜占庭)Constantinople (君士坦丁堡)。Byzantium 版本於2017年10月釋出,比之前的版本更輕、更快、更安全。一些具體的升級包括更加可預測的 Gas 價格和更簡便的開發者程式設計。Byzantium 版本還允許以太坊開發人員對 zk-SNARKs (零知識簡潔非互動式知識證明) 執行有效的鏈上驗證,從而提高了隱私性。

乍一看,zk-SNARKs 似乎很複雜,但系統使用了一個相對簡單的概念,即零知識證明。零知識證明指的是證明者能夠在不向驗證者提供任何有用的資訊的情況下,使驗證者相信某個論斷是正確的[1]。比如,我可以向朋友證明我知道自己手機的密碼,並無需將密碼告訴他。

Byzantium 版本也對“挖礦難度”進行了調整,從而使以太坊網路挖礦會隨著時間的推移而更加困難,這主要是為了使網路在未來將按照預期過渡到 PoS 機制 (下文將深入討論這一點)。

Constantinople 版本旨在進一步對以太坊網路進行改進。儘管 Constantinople 版本最初設定的釋出日期是2018年11月,但以太坊的開發者們決定將釋出日期延遲至2019年 [1]。此次分叉升級最終在2019年2月28日當網路高度到達 7,280,000 時釋出 [2],主要是將以太坊網路的挖礦降低由 3 ETH 降為 2 ETH,並將挖礦“難度炸彈 (Difficulty Bomb)”延遲了12個月。

以太坊的第四階段,也是暫時的最後階段,是被稱為“以太坊2.0”或“Serenity”的階段。這是迄今為止最雄心勃勃的一次升級,預計將改善以太坊網路的幾乎所有方面。以太坊2.0計劃在2019年至2021年間分四個階段釋出,不過這個時間表可能會有所變化。為了充分理解以太坊2.0的重要性,我們首先需要研究當前以太坊網路所面臨的主要問題,即以太坊2.0試圖努力解決的問題。

當前以太坊網路面臨的問題

當前以太坊網路面臨的一個最重要的問題是擴容性 (scalability)。以太坊網路支援數百個去中心化應用程式,每秒需要處理大量交易。增加更多的節點並不會增加網路的擴容性,因為每個節點都需要驗證每筆交易。隨著以太坊網路的使用不斷增加 (包括建立了更多的 Dapp 和執行更多的交易),這導致交易的時間和成本不斷增加,進而使得以太坊網路速度變慢,使用起來也不那麼方便。

在最近的一次速度測試中,以太坊網路每秒只能處理約20筆交易 (各種來源的資料表明,在過去一年,每秒處理約12至45筆交易)。相比之下,PayPal、Visa 等中心化網路每秒通常能完成193筆交易和1,667筆交易,Visa 的最大容量接近2.4萬筆 [4]。

為了實現以太坊網路大規模應用,大規模地提升網路的擴容性是以太坊2.0開發的核心。在研究了其他幾個選項之後,以太坊團隊確定了一個稱為 sharding (分片) 的方式作為提升以太坊網路擴容性的最佳解決方案。諸如 Plasma 鏈和 state channels (狀態通道) 等鏈下解決方案也可能用於減輕以太坊主鏈的負載,並進一步提高擴容性。

以太坊2.0將解決的另一個主要問題是效率和環境可持續性。就像比特幣和許多其他區塊鏈網路一樣,當前的以太坊網路依賴於 PoW (工作量證明) 協議來確保其網路的安全性。

PoW 系統涉及到許多透過計算機硬體連線至區塊鏈網路的礦工。礦工們將他們的硬體投入到網路中以獲取回報。演算法為每個新區塊設定一個目標值,礦工們競相透過自己的硬體裝置使自己成為第一個計算出目標值並新增新區塊的人。為此,他們需要透過一個雜湊函式來執行被提議區塊的區塊頭資料和一個隨機的“nonce值”,該雜湊函式將返回一串固定長度的雜亂數字。如果這串數字與目標值不符,則更改 nonce 值並重新執行雜湊函式。

礦工們會一直重新執行雜湊函式,直到其中一個礦工生成的雜湊值與目標值相符。此時,新的區塊將被廣播至網路中的所有節點,該新區塊將被驗證並新增至區塊鏈賬本中,而成功挖出該有效新區塊的礦工將獲得一定的獎勵作為報酬。

PoW 系統的一個主要好處就是,驗證某個新區塊是否屬於該區塊鏈網路是非常快速且相對簡單的。但是,為了確保網路的安全並阻止欺詐,對於礦工來說,找到正確的雜湊輸入是需要投入高昂的計算成本的。由於只有一個礦工會找到正確的雜湊,因此實際上其他所有礦工投入的計算工作都是浪費了。其結果是,PoW 共識需要投入大量的計算能力和電力成本,且效率很低

在撰寫本文時,以太坊網路上的每筆交易大約使用消耗 29 Kwh (千瓦小時) 電量,足夠一個美國普通家庭24小時的供電!整個以太坊網路中的礦工每年消耗的電力可以為 652,669 個美國家庭提供電力 [5] 。每年以太坊挖礦所消耗的能源大約與玻利瓦爾整個國家差不多。這顯然是一個很大的問題。以太坊的 PoW 協議所需要的大量能源消耗降低了挖礦的盈利性,並對環境和系統的長期可持續性產生了嚴重的負面影響

PoW 協議非常重要,因為它們支撐了早期建立的區塊鏈網路,但是這些區塊鏈網路的效率非常低,也容易受到挖礦壟斷的影響,因為這種機制地賦予了擁有更多計算資源的參與者不公平的優勢。有錢有勢的個人和組織能夠負擔得起數量更多、速度更快、功能更強大的計算機硬體,這使他們有更大的機會成功地解決每一個加密難題並獲得獎勵。例如,大約65%的比特幣挖礦是由5家挖礦集團完成的,理論上他們可以聯合起來控制超過50%的算力市場。比特幣礦工使用昂貴的 ASIC (專用積體電路) 礦機,這導致了比特幣挖礦的工業化和部分集中化

由於以太坊挖礦通常使用普通家庭電腦就配備的 GPU (圖形處理器) 就可以進行,因此以太坊挖礦的集中化風險並沒有比特幣那麼高。然而,ASIC 最近釋出了針對以太坊的協議,而且由於 ETH 挖礦目前所依賴的 PoW 協議,因此以太坊挖礦仍然存在壟斷和集中化的風險。這就造成了比特幣、以太坊和其他區塊鏈網路不像最初設想的那樣去中心化,從而危及這些區塊鏈網路的獨立性和實用性

以太坊2.0旨在將網路從 PoW 協議過渡到一種稱為 Casper 的 PoS 協議,該協議旨在解決以太坊網路的效率和可持續性問題。這一轉變將變得越來越重要,因為2017年的拜占庭升級在當前的以太坊網路中引入了挖礦難度炸彈,該難度炸彈將使得以太坊挖礦變得越來越難,知道最後無礦可挖 [6] 。這一策略是為了實現將以太坊網路從 PoW 過渡到 PoS 而引入的,也是為何此次更新對於以太坊社羣來說如此重要

以太坊2.0將解決的最後一個主要問題是速度和可用性。這與 sharding (分片) 將解決的擴容性問題具有相關性,但並非完全一樣。分片的引入能夠消除交易速度和吞吐量的最大瓶頸--擴容性,但是以太坊虛擬機器 (EVM) 本身也對網路的速度和可用性造成影響

EVM 本質上是以太坊的底層結構,它執行程式碼並使網路正確地執行。EVM 負責以太坊網路的內部狀態及其所有計算;EVM 還確保了以下資訊的準確性:賬戶資訊 (如賬戶餘額)、當前的 gas 價格、地址和區塊資訊。此外,EVM 必須跟蹤以下元件:區塊資訊、儲存狀態、賬戶狀態和執行時間環境資訊 [7]。同時,EVM 也處理所有的以太坊智慧合約,這些智慧合約以 Solidity/Vyper 編寫並編譯成唯一的 EVM 位元組碼,之後這些合約由當前以太坊網路中的每個節點執行。[4]

由於 EVM 負責以太坊網路的許多重要方面,因此 EVM 在執行任務時的速度將對網路本身的整體速度和可用性造成很大的影響。[4] 以太坊2.0的解決方案就是使用全新的以太坊虛擬機器 eWASM (即 Ethereum wasm)。我們知道,Wasm 是一個 W3C 社羣團隊開放標準指令集,當前正由來自谷歌、Mozilla、微軟和蘋果的工程師們進行開發。除了提高速度和吞吐量,eWASM 還將提高以太坊網路的安全性和可用性,並帶來其他一些好處。我將在接下來的幾周內釋出一篇文章,探索 eWASM 的細節,請繼續關注!

以太坊2.0的其他目標

我們現在知道,以太坊2.0的設計是為了解決當前以太坊面臨的主要問題。然而,創新並不止步於此。正在搭建中的 Serenity 還將實現幾個更普遍的設計目標。

由於 Casper 和 sharding (分片) 的引入將產生許多全新的、複雜的體制,因此以太坊2.0的主要設計目標之一是儘可能地降低網路的複雜性,即使這會導致一些效率方面的損失

另一個主要的設計目標是使用密碼學和設計技術,從而允許大量的驗證者參與進來,不管是網路中的所有驗證者數量還是參與每筆交易的驗證者數量。

第三個設計目標是建立一個執行標準的膝上型電腦就可以對單個分片進行處理和驗證的系統

後兩個目標都是為了確保以太坊網路的安全性和去中心化。為什麼這麼說?

單純的 Layer 1 擴充套件可能會付出巨大的安全性代價,因為對區塊鏈進行分片會使得無法對交易進行全域性性驗證 (即網路中的所有礦工 (除了惡意攻擊者之外) 都會致力於對所有交易進行確認,所有礦工的算力保證了整條鏈的安全。而分片則意味著某條分片鏈中的交易只由整個網路中的一部分驗證者進行驗證 (因為整個網路中的驗證者會被分配到各個分片鏈中負責交易驗證),如此一來,單條分片鏈的安全性就比整條鏈的更低);當前的比特幣和以太坊就能夠對交易進行全域性性驗證,從而保證了整個網路的安全。

關鍵的問題是:我們如何在不犧牲去中心化和安全性的同時獲取擴充套件性呢?以太坊的很多競爭性區塊鏈平臺 (如 EOS) 選擇走中心化的路線來解決這一問題。而以太坊選擇了一種不同的方式,即將網路的狀態劃分到1024條並行執行的分片鏈之中,每條分片鏈都由統一由一條稱為信標鏈 (beacon chain) 的根鏈進行協調

信標鏈執行完全的 Casper PoS 機制,整個體統中不存在 EOS 那樣的代理或中心化的投票權。在這種方式中,每個節點只需要負責處理整個網路中所有交易的一部分,且很多區塊可以並行處理交易,這就線性增長了整個網路的吞吐量

以太坊2.0規範試圖回答以下問題:

如果沒有對交易進行全域性性驗證,那網路的安全性將會受到什麼影響呢?應該如何選擇驗證的參與者同時阻止驗證壟斷的出現呢?應該如何設計激勵措施,以最大限度地提高資料可用性和參與的積極性?

在經過多年的研究、探索和理解需要做出的權衡之後,以太坊探索著將 PoS 作為其共識演算法的選擇。出於文字中討論的原因,驗證者是一定能夠獲得獎勵的,同時驗證實體 (個人或企業) 在 Casper PoS 協議中享有平等的待遇,在參與到驗證者委員會並獲得獎勵/處罰方面有著均等的概率

交易的全域性性驗證轉變成了間接性驗證:每條分片鏈中的每筆交易都將首先由該分片中的驗證者進行驗證,該分片的驗證者會將檢查點 (checkpoints) 提交至信標鏈中,信標鏈在以太坊2.0中扮演著各分片鏈的“協調者”角色

除了解決特定的問題和更廣泛的擔憂,Serenity 還有兩個長期的設計目標,這兩個目標是針對未來可能出現的潛在問題而制定的。第一個目標就是設計出這樣一個網路,當大多數或者很大一部分節點同時離線時,網路依舊能夠保持執行

在參加2018年的 Devcon 4 會議期間,以太坊2.0研究者 Justin Drake 闡釋了以太坊2.0團隊如何希望以太坊2.0網路能夠在“第三次世界大戰”中倖存下來,或者當面臨超過80%的節點同時離線時倖存下來 [9]。這個目標在其他不那麼極端的情況下也很重要。比如,一場或多場與氣候變化有關的重大災害可能在數小時內摧毀大部分節點,或者像中國或美國這樣的大國可能決定禁止以太坊和其他區塊鏈網路,並試圖消除處於其國家的節點。

以太坊2.0預計的另一個目標是應對量子計算的出現。目前,美國、中國以及其他主要國家和公司之間正在進行一場技術競賽,希望成為第一個發明生產量子計算機的國家。現在的問題是量子計算機是否會出現,而是何時會出現。無論量子計算機什麼時候出現,它們的能力都將是對當前最為先進的傳統計算機的指數級增長。這將使大多數現有的網路安全 (包括加密技術和區塊鏈技術的安全性) 變得相對沒有防禦能力,容易遭受駭客攻擊。

因此,對於未來的區塊鏈網路來說,盡一切可能 (在傳統二進位制計算的限制範圍內) 來抵禦量子計算機是非常重要的。正如以太坊 GitHub 庫上所述,以太坊2.0的終極設計目標是“選擇的所有元件,要麼具備量子計算安全性,要麼在可行的時候能夠很輕鬆的替換為具備量子計算安全性的替代元件。”[8]

Serenity 將帶來什麼

這一切都非常令人興奮,但是以太坊2.0什麼時候才能真正投入使用呢?不幸的是,答案仍然是……我們不知道!然而,在 Devcon 2018 的一次演講中,Vitalik 表示 Serenity “真的離我們並不遙遠”,並解釋了“以太坊2.0是……一系列不同功能的結合,這些功能我們已經討論了好幾年,研究了好幾年,積極構建了好幾年,最終將成為一個具有凝聚力的整體。”[10] 

2019年6月30日,以太坊開發者 Danny Ryan 宣佈,以太坊 2.0的第一個階段 (信標鏈階段) 的規範已經凍結,這標著這一版本的規範將為實施人員們朝著信標鏈多客戶端測試網進發,為正在進行的形式化驗證、模糊測試和審計工作等方面提供一個穩定的目標。

在上週舉行的 Eth 2.0 AMA 第二期中,以太坊2.0 研究者 Carl Beekhuizen 表示在2019年1月3日推出階段0 (信標鏈) 是目標日期,並非信標鏈的正式釋出日期,但“現在看起來一切都將按時完成。”更多資訊請參與 Unitimes 此前釋出的文章:《Eth 2.0 AMA 第二期 | Vitalik:以太坊 2.0 已沒有未解決的研究挑戰

我們知道,Serenity 是獨立於當前的以太坊主鏈而正在被開發,其一開始將與當前的以太坊主鏈並行執行。在未來,當前的以太坊舊鏈將被整合到以太坊2.0新鏈之中。我們還知道,以太坊2.0將分四個階段陸續推出。階段0將推出信標鏈 PoS 網路,此階段尚不能支援智慧合約或 Dapp 開發,但將為接下來幾個階段打下基礎。

階段1將引入基本的分片結構,網路資料將被分割到各個分片中,但網路狀態將繼續儲存在當前的以太坊舊鏈之中。階段2將實現完全的分片,此階段將實現狀態執行和智慧合約功能。此時,以太坊2.0將具備上文中討論的所有主要特性。階段3及以後將包括迭代、改進和其他技術 [10]。有關以太坊2.0各階段的具體資訊,請參閱 Unitimes 此前釋出的文章:《ETH 2.0: 以太坊的未來之路

當這些階段都實現了,以太坊2.0預計將具備以下特性:成為完全分片的區塊鏈、執行 PoS 共識機制、更快的同步確認時間 (約8-16秒) 和 “經濟上的確定性 (economic finality)”時間 (約10-20分鐘) [4] 。Vitalik 將 Serenity 視為“真正意義上的世界計算機”

特別感謝 Aidan Hyman、Greg Markou 和 Cayman Nava 審閱本文並提出許多有價值的建議。感謝 Michael Karnjanaprakorn, Darren Langley, William Suberg, Bisade Asolo, Justin Drake,當然還有 Vitalik Buterin。還要感謝 Digiconomist 和 Cryptofacts 的編輯和內容建立者。

參考連結:

  1. The Beginner’s Guide to Ethereum’s Roadmap: 

    https://hackernoon.com/the-beginners-guide-to-ethereum-s-2020-roadmap-2ac5d2dd4881

  2. EtherScan:https://etherscan.io

  3. Eth 2.0 Explained:

    https://cryptocurrencyfacts.com/ethereum-2-0-explained

  4. Ethereum 2.0:

    https://medium.com/rocket-pool/ethereum-2-0-76d0c8a76605

  5. Ethereum Energy Consumption Index:

    https://digiconomist.net/ethereum-energy-consumption

  6. Eth 2.0 Explained:

    https://cryptocurrencyfacts.com/ethereum-2-0-explained

  7. Ethereum Virtual Machine Explained:

    https://www.mycryptopedia.com/ethereum-virtual-machine-explained

  8. Eth 2.0 Specs:

    https://github.com/ethereum/eth2.0-specs

  9. Eth 2.0 Randomness Talk:

    https://www.youtube.com/watch?v=zqL_cMlPjOI

  10. “Devcon Keynote Talk.” :

    https://www.youtube.com/watch?v=Km9BaxRm1wA

  11. “Ethereum 2.0 Launch Really Not So Far Away.” :

    https://cointelegraph.com/news/ethereum-20-launch-really-not-so-far-away-says-vitalik-buterin-in-devcon4-keynote

參考文獻及連結:

  • Asolo, Bisade. “Ethereum Virtual Machine Explained.” Mycryptopedia. November 1, 2018:

    https://www.mycryptopedia.com/ethereum-virtual-machine-explained/

  • Buterin, Vitalik. “Keynote Talk.” Filmed November 2018 at Devcon, Prague, Czech Republic. Video:

    https://www.youtube.com/watch?v=Km9BaxRm1wA

  • Cryptofacts. “Eth 2.0 Explained.” CryptoCurrency Facts. Accessed November 10, 2018:

    https://cryptocurrencyfacts.com/ethereum-2-0-explained/

  • “Eth 2.0 Specs.” Github. Accessed November 14, 2018:

    https://github.com/ethereum/eth2.0-specs

  • “Ethereum Energy Consumption Index.” Digiconomist. Accessed February 18, 2019:

    https://digiconomist.net/ethereum-energy-consumption

  • “EtherScan.” Homepage. Accessed Jan 5, 2019:

    https://etherscan.io/

  • Drake, Justin. “Eth 2.0 Randomness Talk.” Filmed November 2018 at Devcon, Prague, Czech Republic. Video:

    https://www.youtube.com/watch?v=zqL_cMlPjOI

  • Langley, Darren. “Ethereum 2.0.” Medium. August 7, 2018:

    https://medium.com/rocket-pool/ethereum-2-0-76d0c8a76605

  • Langley, Darren. “Ethereum 2.0 — Who’s Building It?” Medium. September 6, 2018:

    https://medium.com/rocket-pool/ethereum-2-0-whos-building-it-54a735442e

  • Karnjanaprakorn, Michael. “The Beginner’s Guide to Ethereum’s Roadmap.” Hackernoon. December 7, 2017:

    https://hackernoon.com/the-beginners-guide-to-ethereum-s-2020-roadmap-2ac5d2dd4881

  • Suberg, William. “Ethereum 2.0 Launch Really Not So Far Away.” Cointelegraph. November 1, 2018:

    https://cointelegraph.com/news/ethereum-20-launch-really-not-so-far-away-says-vitalik-buterin-in-devcon4-keynote

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;