eth2需要eth1什麼?

買賣虛擬貨幣
前言:本文的主要目的是支援EIP-2537。它希望在eth2成為eth2分片之前,可以將eth2上使用的新加密原語整合到EVM中,從可以讓eth2利用新系統的功能,可以為實現互操作性奠定基礎。本文作者Alex Stokes,由“藍狐筆記”的“DR”翻譯。新前沿隨著eth2.0主網的第一階段(“信標鏈”)預計在今年晚些時候啟動,現在是時候問問現存的網路是否可以做些什麼來促進新系統的順利生成。我們可以想象一些利用兩個網路之間互操作性(eht1合併到eth2之前)的讓人激動的用例,但結果證明,這些應用程式會無法實施,需要修改EVM以理解在eth2上使用的新加密原語。我想提供新密碼學的高層級概述,並說明在將eth2狀態遷移到新系統之前,將其整合到EVM中會為在eth2中利用新系統的功能奠定基礎。eth2缺少什麼?

考慮到在以太坊區塊鏈上的所有資料都是公開的,需要加密簽名確保特定的交易可以反映相關方的需求。以太坊上使用的簽名方案是基於“橢圓曲線”的數學物件,其中使用的特定曲線稱為secp256k1。該曲線上的點用於特定簽名方案ECDSA,它提供我們期望的加密簽名屬性。

https://en.wikipedia.org/wiki/Elliptic_curve_point_multiplication,這一數學運算屬性提升了ECDSA作為簽名方案的安全性。

儘管secp256k1的ECDSA已經經歷多年的實踐,但定義它們的標準分別有20年和10年的歷史。eth2使用新的結構,新結構利用了從那時以來的加密技術的進步。eth2上的驗證者(類似eth2的礦工)使用BLS簽名機制,它基於另外一種稱為BLS12-381的橢圓曲線。(請注意,名稱中的“BLS”都是縮寫,表示“B”、“L”、“S”的不同集合!)

使用這堆疊的主要原因是,它允許將很多簽名有效地聚合到一個簽名中,這對eth2的安全性的可擴充套件有直接幫助。關於eth2中籤名聚合重要性的更多資訊,可以參考Carl Beekhuizen的文章。

雖然這些進步對eth2非常有用,但是,由於eth2並不原生支援這種新加密技術,並且基礎數學的計算需求性質使我們無法在EVM中執行BLS簽名,因此我們立即就遇到了問題。幸運的是,我們可以透過將計算新增為“預編譯”來規避EVM的效能限制,這是硬編碼演算法,當智慧合約呼叫時,它會在EVM直譯器外遵循本地實現。

我們如何得到它

以太坊上的預編譯是稀缺資源,因此僅保留給社羣認為是重要的計算。此外,它們需要為部署進行硬分叉(因為它們改變了EVM語義),因此協調成本很高。幸運的是,關於這些BLS預編譯,目前的EIP-2537草案已經提出來了。

這個EIP包括基於BLS12381曲線進行操作的幾種預編譯,並且將包括另外一種稱為“曲線對映”(用於BLS簽名方案)的昂貴操作。如果你深入研究BLS簽名方案本身的數學原理,則會發現需要一些機制才能將特定資訊轉化為曲線上點的表示,它有助於“對映到曲線”。

它對於我們有什麼幫助?

透過提高儲存合約的使用者體驗和為在eth2中構建eth2輕客戶端奠定基礎,EIP-2537預編譯將可以立即幫助到eth2。BLS12-381曲線本身可用於構建zk-SNARKs,且在其他區塊鏈中BLS的使用可以為這些網路間的互操作性鋪平道路。

· 儲存合約使用者體驗

要成為eth2信標鏈的驗證者,最初的方法是透過將ETH存入eth2上的智慧合約(“儲存合約”)。為了節省gas成本或最小化複雜性,這個智慧合約只是對特定存款進行加密承諾(在Merkle tree上),它是可在信標鏈上消費的證明,除此之外,沒有做更多其他的事情。

重要的是,驗證儲存所需的BLS簽名並沒在eth2鏈上驗證。當由於bug,一系列的BLS簽名未得到正確計算時,這一事實導致測試網ETH的丟失。透過在eth2鏈上支援BLS簽名的驗證(EIP-2537),我們可以編寫“轉發”智慧合約,這樣的智慧合約接收存款資料,驗證簽名,然後傳送存款資料到存款合約。不要求存款合約以安全方式工作,但確實為跟存款合約對接的開發者新增一些額外的安心。

· EVM內的eth2輕客戶端

我們也希望eth2可以理解eth2加密技術,並將其作為在eth2鏈上構建eth2輕客戶端的前提條件。這個能力使得在智慧合約中BTC中繼方式的輕客戶端成為可能。這樣的輕客戶端是讓人興奮的,因為它形成了eth2和eth2網路之間的“橋樑”。這樣的雙向橋接可以解鎖在eth2和eth2之間轉移ETH的能力,而且它也允許將eth2分片用作為大規模可擴充套件資料層,以支援在eth2上進行Layer 2的構建(例如Optimistic Rollups,zk-rollups等。關於Rollup可以參考藍狐筆記之前的文章《一文讀懂ZK Rollup和Optimistic Rollup:以太坊重要的擴充套件方向》)

令人興奮的是,在EVM內構建輕客戶端(作為智慧合約)可能不是向eth2新增eth2意識的最佳方法(在eth2客戶端層面替代實現輕客戶端),並且關於“雙向橋接”的最新研究表明,考慮到每個網路的其他安全引數,這是不可行的。(相反,只需將eth2狀態放入eth2分片中會更合理)。話雖如此,今天奠定基礎並沒有什麼壞處,且eth2-eth2合併策略未來有可能會改變。

· zk-SNARKs

建立BLS12-381曲線是為了支援在Zcash中使用的更高效的zk-SNARKs,並將曲線新增到EVM中,這會讓以太坊驗證此SNARKs,從而允許零知識協議在隱私應用中使用且實現可擴充套件性。

· 其他網路

還有很多“下一代”的區塊鏈(Filecoin、Chia、Cosmos......)都打算在某種程度上使用BLS簽名機制,以便於擁有在EVM中本地驗證這些簽名的能力,並解鎖類似於eth2和eth2之間類似的互操作性用例。

這有多緊急?

EIP-2537支援的所有用例都沒有阻礙eth2的啟動。但是,這對存款合約的提升很好,且不久之後,我們越早為互操作性奠定基礎,就越早可以對這些應用進行原型設計。這似乎確實有利於推動這一EIP進入代號為柏林的下一次以太坊硬分叉。你可以透過在你喜歡的客戶端中支援這個EIP的實現來推進這些努力。

免責聲明:

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

推荐阅读

;