BLS 簽名和 Eth2.0 的故事

買賣虛擬貨幣
自 ETH 2.0 採用 BLS 簽名技術以來已有 2.5 年左右,以下是一些里程碑事件。2018 年 5 月,我在 ethresear.ch 上發表了一篇文章,指出 BLS 簽名可以讓 ETH 2.0 實現 32 ETH 的最低質押機制,以及 1024 個分片,可以將去中心化程度和可擴充套件性提高几個數量級。2018 年 10 月,我寫信告訴 Dan Boneh(以太坊基金會的密碼學顧問)說:“我們正在考慮效仿 Zcash 和 Chia,在 ETH 2.0 中使用 BLS12-381 曲線。” 對此,他回覆道:“(以我們的現有知識來看)BLS12-381 曲線是正確的選擇。” 當時的背景是,一篇 2016 年的論文將 BN254 的安全等級從大約 128 位降至 110 位。鑑於區塊鏈基礎設施的設計目標是能夠沿用數十年,為此我們採取密碼學保守主義,而且 ETH 2.0 研究團隊確實不滿意 BN254 的現狀。(使用 BLS 簽名的另一個原因是,在密碼學生產系統中使用曲線配對本身就很激進了。)在 2019 年 3 月和 4 月,我們做了一些號召工作。我聯絡了很多區塊鏈專案(Chia、Filecoin、Dfinity、Cosmos 和 Ledger 等),旨在讓所有專案都採用同樣的密碼學原語,以便實現互操作性、庫重用、共享安全審計等。具體來說,我們的目標是號召人們參與 IETF BLS 標準化工作。這項工作是獨立啟動的,當時仍處於萌芽狀態。有數十個人參與這項工作,建立了 Telegram 群組,並定期舉行電話會議。還是在 2019 年 4 月,Riad Wahby 在這篇文章中提議了針對 BLS12-381 的常量時間曲線雜湊。常量時間雜湊的用處很大,可以簡化 SNARKs 的算術化,簡化區塊鏈操作碼的 gas 計量,為特定應用解決時序和 DoS 攻擊問題,也就自然而然地成為了 IETF 標準的一部分。實際上,剩餘標準化工作(例如,選擇生成器和點序列化)很多都是由 Zcash 完成的。2019 年 9 月, Carl Beekhuizen 寫了三個 EIP(2333、2334、2335),從除 IEFT 標準以外的方面對 BLS 進行標準化,例如,量子安全備份、HD 錢包(分層確定性錢包)和金鑰庫等。
2019 年 11 月,我們正在研究效能最好的 BLS12-381 實現。我自己開始學習更復雜的 BLS 最佳化,並在 Prysm 的 Raul 的介紹下認識了 Shigeo Mitsunari(目前最快的實現 Herumi 庫的作者)。幾周後,以太坊基金會給了 Shigeo 一筆資金,讓他跟進 IETF 標準的草案,為 ETH 2.0 客戶端寫一些 binding,並提升 Herumi 庫的效能。雖然 Herumi 庫的效能是最好的,但是這個庫非常複雜,很難進行形式化驗證。2020 年 1 月,Supranational【該團隊由三名 Intel 前資深員工組成,負責 VDF(可驗證延遲函式)專案的所有硬體工作,我每週都會與他們進行電話會議】告訴我,他們相信自己能夠建立一個庫,不僅在效能上優於 Herumi 庫,而且對形式化驗證更友好。為此,他們還專門找來了 Andy Polyakov。Andy Polyakov 是一名專門研究高效能密碼學的工程師,具備形式化驗證的經驗。2020 年 4 月,以太坊基金會和 ProtocolLabs 給了 Supranational 一筆資金,用於構建生產級庫,並讓彙編實現透過 Galois 團隊的形式化驗證。2020 年 6 月,第一版 BLST 上線,效能驚人。接下來的幾個月,由於建立了繫結,並得到了整合支援,ETH 2.0 客戶端整合了 BLST。ETH 2.0 客戶端在效能上得到了巨大提升(關於具體的例子,請檢視這裡和這裡)。在 2020 年,我們必須應對的複雜因素之一是,IEFT 標準草案的修改。這些修改在很大程度上是我們所無法控制的。雖然這些修改從技術層面上來看很小,但是在操作層面上很難,因為需要多個參與方之間進行協調。這些修改造成了很大的摩擦,有時需要花費數小時來討論具體細節(細節決定成敗)。2020 年 9 月,BLST 庫被移交給了 Galois 團隊。同時,形式驗證取得了重大發展。同樣在 9 月,Danny(又與 ProtocolLabs 一起)寫了一篇徵求意見書,要求審計 BLST 的 binding(這部分不屬於形式化驗證)和彙編(未經過 100% 的形式化驗證)。審計工作由 NCC 公司負責,並於 10 月開始。NCC 有望在幾周內完成繫結的審計工作。總而言之,這無疑是一個漫長而曲折的過程,涉及早期研究、密碼分析安全性、標準化、效能、形式化驗證和審計。我們所走的每一步都是在努力朝著正確的方向前進,而不是為了走捷徑。正如我在這條推特中所言,我們在增加以太坊 2.0 的實現難度,放棄了原本可走的捷徑,追求長期的質量。
我希望上述內容可以讓大家明白,為了向正確的方向邁進,我們投入了大量工作,比我在 2018 年預期的還要多。我想,每個關注 ETH 2.0 的人都致力於推動 ETH 2.0 在 2020 年如期創世。準備好你的質押品吧 :)

免責聲明:

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

推荐阅读

;