暴走時評:以太坊在2015年首次推出了四步路線圖,而如今以太坊區塊鏈已經走到了其路線圖的第三階段——Metropolis(大都市)。長久以來,這一直都是人們關注與爭論的焦點,然而以太坊開發者的態度都是寧求穩妥,這是明智的,但卻使得這一階段遲遲無法落地,甚至引發了社區的爭論與質疑。但暫且不論時間期限,這些計劃的內容也確實發生了一些變化,本文就具體介紹了到目前為止,以太坊的這一升級計劃做出了什麼樣的調整。
翻譯:Clover
更快、更輕、更安全。
這些就是以太坊區塊鏈的下一代升級Metropolis(大都市)承諾在其最終揭曉之時會帶來的幾點優勢。Metropolis是2015年首次亮相的以太坊四步路線圖中的第三階段,長久以來一直是人們關注與爭論的焦點,或許這也仍將會成為該平臺最重大的變革。
但對於新興技術來說,這不但不是一種福利,而且可能會帶來真正的風險。
以太坊協議開發者Vlad Zamfir在今年初發布的一則推文中強調:
「以太坊並不安全,也不可擴展。這還是一種並不成熟的試驗性技術。」
如果說存在一種升級將會揭露這一事實,或許Metropolis就可以。
由於對平臺的重大變革會使真正的貨幣處於危險之中,以太坊開發者也一直都傾向於一步一個腳印,選擇去衝抵用戶、企業以及渴望這項技術去獲得下一個重大進步的市場發出的牢騷。
Metropolis非正式發布管理人Hudson Jameson強調開發者「永遠都是寧求穩妥」——猶豫不決,雖然說這也是明智的,但是卻帶來了一連串延誤。(最近在聚集著最多這項技術全球愛好者的平臺r/ethereum上的一個話題甚至在質疑最開始承諾的準確最後期限是什麼——從而產生了相互矛盾的結論)。
但暫且不談時間期限,這些計劃也確實產生了很大的變化。
Metropolis一度曾被視作技術友好型技術終於要投入使用的一個階段,不過現在也已發生了些許變化,可能會大大改變最終代碼的推出。
而且雖然一度認為我們會迎來一個「抽象」時代(Vitalik Buterin在2015年提出這一概念並認為「這可以說是它存在的全部理由」),但是最終發布的可能會是一個比較保守的代碼。
因此,此次升級現在已被分為兩個階段:並分別命名為拜佔庭(Byzantium)和君士坦丁堡(Constantinople)。而儘管這兩個階段都還在逐步發展之中,但是兩者最終影響網絡的方式現正開始初具雛形。
拜佔庭(Byzantium)
就目前而言,拜佔庭共涉及9項以太坊改進協議(EIP),或網絡的單個代碼補丁。這些包括解決難度調整問題、「返回數據」操作、「靜態調用」操作、新的預編譯、困難延遲功能以及在收據中嵌入交易返回數據等更改。
所有這些都被設計為使網絡更有效運轉,同時最大限度地減少潛在的漏洞。大多數會糾正對於非開發者來說並不是很明顯的小細節。
然而,有一些也是相當重大的。
正在進行的更改將更好地在智能合約內處理錯誤代碼,這樣若編程中存在錯誤的話,就無法進行支付。此外,由於合約升級可以預先配置到原始代碼之中,因此這些更改將會對合約的生命周期產生變革性的影響。
而由於某些修改也旨在防止被稱為再進入攻擊的事件(不受信任的代碼進入合約來操縱合約),因此合約也將再度得到安全保護。
用於在收據中嵌入交易返回數據的新功能將使輕客戶端能夠確定交易是否成功,而無需在虛擬機中實際執行交易。這也將影響鏈外工具。
另一個升級則將延遲目前在整個網絡上引爆的難度炸彈,確保交易時間不會變得無法忍受。 (交易時間目前為25秒左右——高於以太坊的10秒標準。)
這一更新也將減少礦工挖掘區塊鏈所獲獎勵,這將意味著挖礦過程會變得更快更便宜。
另一個挖礦解決方案則消除了難度調整中的前一個錯誤,確保區塊時間更加穩定。
拜佔庭階段發布的新的預編譯功能也為zk-snarks(能夠在以太坊網絡上首次實現真正私人交易的加密程序)鋪平了道路。這是與z-cash(這項技術首次得到廣泛應用的以隱私為中心的加密貨幣)合作生成的。
君士坦丁堡(Constantipole)
那麼,缺少了什麼呢?遺憾的是,這些計劃並未設定Metropolis的第二次硬分叉Constantipole的發布日期。這是因為發現了某些編輯威脅到了設置在以太坊代碼深處的假設,而這就為許多潛在的漏洞敞開了大門。
不過,通過簡化交易的評估流程,計劃的一個EIP還是為輕客戶端實現鋪平了道路。目前,評估合約既需要區塊鏈的當前狀態,也需要最後256個區塊的哈希值。而對於輕型客戶端來說,就需要大幅減少這種大量信息的處理——而EIP 96就以一種簡潔巧妙的方式實現了這一點。
不過,主要的障礙似乎還在於該項目計劃的核心EIP 86,同時這也是所有EIP中最有趣(且最複雜)的一個環節。
EIP 86有望實現帳戶安全性的抽象化,使帳戶更靈活且更加可自定義,同時實現對新功能的詳細闡述。用戶可以定義自己的安全模型,將其加密規範寫入支付流程。
但是EIP 86所面臨的問題太過重大了,需要花費大量的時間和精力才能得到正確解決。
一方面,據透露,該協議改變了幾個變量,開啟了無盡的問題循環。而早在6月,就曾發現一個漏洞會讓惡意礦工重組區塊鏈來獲取錢包的所有權,或者反覆執行同一筆交易。
然而,在完成編碼之前,也可能會出現新的問題和潛在的改進。