a16z 推出 Lattice Jolt:具後量子安全性的證明速度提升 3 倍

iconTechFlow
分享
AI summary icon精華摘要
a16z crypto 已推出 Lattice Jolt,這是一款新的開源零知識證明(ZKP)虛擬機,採用晶格密碼學而非橢圓曲線方法。此升級提升了區塊鏈的安全性,並使證明生成速度加快高達三倍。現在證明大小低於 100KB,使 Lattice Jolt 成為適用於 CPU 和 GPU 的最快、最緊湊的後量子 zkVM。

作者:a16z crypto

編譯:深潮 TechFlow

深潮導讀:zkVM 一直被批評「證明速度太慢、體積太大」,a16z 此次以格密碼取代橢圓曲線,直接將證明速度提升 3 倍,並將證明體積壓至 100KB 以下。這是目前唯一能在速度上超越傳統橢圓曲線方案的後量子方案,對驗證上鏈成本和隱私應用均有直接影響。

我們今天正式發布 Lattice Jolt,這是我們開源 zkVM(零知識虛擬機)的最新版本。Jolt 本來就是目前最快、最簡單的 zkVM,其架構不變。但底層密碼學已更換:從橢圓曲線改為格密碼。這一項更改同時帶來三項改變:

  • Jolt 變成後量子安全的。
  • Prover 和 verifier 的速度提升 2-3 倍。
  • Lattice Jolt 成為所有後量子 zkVM 中證明最短的:目前小於 100 KB,今後還可進一步壓縮。證明需上鏈並跨網路傳輸,證明越小,驗證成本越低。

這些特性涵蓋了 zkVM 的所有使用場景。同一個 prover,在 GPU 上能處理數十億個 CPU 周期,在手機上也能證明數百萬個周期。兩種情況下,開發者編寫的都是普通程式,無需手寫需要專門知識才能完成的電路。這就是我們稱 Jolt 為「全能 SNARK」的原因。

但更大的故事在於 Lattice Jolt 對 SNARK 設計與採用的意義。目前市面上幾乎所有已投入生產的後量子 SNARK 都基於哈希。Lattice Jolt 證明了基於格的 SNARK 可以更快、更緊湊。數位簽名正經歷同樣的轉變:哈希方案是保守選擇,但格方案才是世界正在大規模部署的。我們預計 SNARK 也會走上這條路,這篇博文的後半部分將解釋原因。

用格取代橢圓曲線

Jolt 之前的多項式承諾方案稱為 Dory,它是整個系統中唯一依賴橢圓曲線密碼學的組件。Lattice Jolt 以 Akita 取代了 Dory,Akita 是一種基於 Module-SIS 格假設的全新多項式承諾方案。Lattice Jolt 基於這一標準且研究充分的假設,達到完整的 128 位安全標準。

Module-SIS 與其兄弟 Module-LWE 屬於同一族假設,全球數位基礎設施正逐步遷移至這族假設。這些假設不僅支撐數位簽名標準 ML-DSA,也支撐密鑰建立標準 ML-KEM,而 ML-KEM 已是全球部署最廣泛的後量子原語。

Akita 的開發與實現由 LayerZero 的研究員和工程師主導,卡內基梅隆大學、南加州大學的研究員,以及我們在 a16z crypto 的工程和研究團隊共同參與。

為什麼 Lattice Jolt 更快

Lattice Jolt 不只是後量子安全的,它比被取代的橢圓曲線版本更快。

加速主要來自一個簡單的原因。橢圓曲線迫使 Jolt 在 256 位域上運作,而格密碼只需在 128 位域上就能達到同等級別的安全性。Jolt prover 的主要工作是域元素乘法(本質上是超大數字的乘法),因此數字大小減半,每次乘法就快了好幾倍。

搭配 Dory 的 Jolt 已經很快了:我們上次的性能更新顯示,Jolt 在筆記型電腦上每秒大約能證明 70 萬個 RISC-V(RV64IMAC)週期,後續的優化更將曲線版 Jolt 推升至每秒超過 100 萬個週期。

Lattice Jolt 每秒可在同一台機器上證明超過 200 萬個週期。

在過去六個月的大部分時間裡,我們不僅致力於開發 Akita 並整合至 Jolt,還從頭重寫了 Jolt 的程式碼庫。Jolt 之前已在 GPU 上表現出色,但這次重寫讓 GPU 的實現更易於構建和優化。

第一個成果是 Apple Metal 實現,為蘋果硬體帶來了巨大的加速。(Metal 是蘋果的框架,用於在 MacBook 和 iPhone 等設備內置的 GPU 上執行代碼。)

  • GPU 加速的 Lattice Jolt 在 MacBook 上每秒能證明超過 10,000,000 個 RV64IMAC 周期。
  • 純 CPU 的 Lattice Jolt 在同一台機器上每秒能證明超過 200 萬週期。
  • 甚至帶有 Metal 的 MacBook 上,曲線版 Jolt 現在也能達到每秒約 400 萬週期。

也就是說,一次發佈讓 MacBook 上的 Jolt 從每秒約 100 萬週期(曲線版,純 CPU)提升至超過 1000 萬週期(格版,帶 Metal)。

從大背景來看這些數字:四年前,我們首次撰寫 SNARK prover 開銷時,證明一個計算的代價比直接運行它高出數百萬倍。Lattice Jolt 將此開銷降低至約一萬倍。這還不是終點,工程和協議層面仍有優化空間。

證明大小和 prover 速度同樣重要。不到 100 KB,Lattice Jolt 的證明已經比其他後量子 zkVM 小得多,其他方案的證明從 200 KB 以上到大約 600 KB 或更多不等。

換成格後,Jolt 原本就很優異的記憶體佔用進一步改善:prover 的空間使用從每週期約 300 字節降至 200 字節。這意味著你可以在手機上證明數百萬個 RISC-V 周期。

一篇配套論文即將發布,將為 Lattice Jolt 增加零知識性,這是隱私應用所需的屬性。

為什麼選擇格而不是哈希

多年來,SNARK 社區的注意力(以及基本上所有的生產部署)都放在哈希基 SNARK 上,把它當作通往後量子安全的路線。

但也一直存在一條持續的格 SNARK 和格承諾研究線,涵蓋 LaBRADOR、Greyhound、LatticeFold、SuperNeo,以及 Akita 的直接前身 Hachi。Lattice Jolt 建立在這些研究之上,將格承諾層引入高性能 zkVM 架構,同時證明基於格的 SNARK 在速度和緊湊性上無與倫比。

這不該讓人意外。如前所述,同樣的模式已於數位簽名上發生過一次。

密碼學家曾基於許多假設構造過簽名。雜湊簽名通常被視為最保守的選擇:它們的安全假設簡單而古老。但世界正主要走向格簽名,因為它們更短更快:

  • ML-DSA 簽名約為幾 KB。
  • NIST 標準化的雜湊替代方案 SLH-DSA 要大好幾倍。
  • 對於加密和密鑰交換,情況更明確:根本沒有可選的哈希方案(已證明這不可能),後量子部署 overwhelmingly 基於格。ML-KEM(NIST 於 2024 年確定的主要密鑰建立標準)已被主流瀏覽器和通訊應用預設部署,並在大量網路 TLS 連接中使用。

SNARK 與簽名之間的類比並非表面功夫。數位簽名本質上就是對授權訊息的私鑰知識證明。SNARK 將這一範式從一條狹窄的陳述擴展至任意計算。因此,如果 SNARK 的長期密碼學版圖與簽名、加密的版圖完全不同,那才奇怪。

這裡也有一個誤解值得澄清:哈希 SNARK 常被稱為保守的後量子選擇,因為「它們僅依賴哈希函數」。這僅在底層哈希函數是非代數時才成立。

如今,大多數基於哈希的 SNARK 部署都依賴 SNARK 友好的代數哈希結構(如 Poseidon),以低成本證明哈希被正確求值。這對於遞歸尤其重要(此處的遞歸指證明你持有有效的 SNARK 證明)。這些結構比標準哈希函數具有更多結構,而其密碼分析尚不成熟。

簡而言之,我們對代數哈希函數的安全性缺乏信心。儘管如此,它們目前仍被廣泛用於生產級 SNARK 系統。(不過出現了一個進步信號:以太坊基金會最近宣布將放棄使用它們。)

代數哈希並非已部署的基於哈希的 SNARK 中唯一的隱藏假設:許多系統歷史上會使用推測性的 proximity-gap 界限來設定具體安全級別,而非使用完全經過證明的界限。其中一些被認為最強的界限後來被證明是錯誤的。

即使避開上述基於哈希的 SNARK,其安全目標通常也低於 128 位,因為完整的 128 位安全會帶來顯著的性能開銷。為何如此?基於哈希的 SNARK 無法在 128 位域上達到 128 位安全,因為其可靠性誤差按 n/|F| 縮放,其中 n 大致是被證明語句的規模,|F| 是域大小。因此在 128 位域上證明十億步的語句會損失約 30 位安全,使其低於 100 位。相比之下,Lattice Jolt 的可靠性誤差按 log(n)/|F| 縮放,在同一個域上幾乎保留完整的 128 位安全(少量 log(n) 損失可透過標準技術恢復)。

諷刺的是,一些被宣傳為「保守」後量子選擇的系統,實際上同時依賴代數哈希函數、推測性 proximity-gap 界限,以及低於 128 位的目標安全級別。因此,雖然基於哈希的 SNARK 是一個重要方向,但它們並不會自動成為許多人所認為的低風險選項。

一個 Jolt,三種基礎:曲線、格和哈希

我們一直認為,Jolt 不應被綁定於單一密碼學基礎。我們應擁有基於曲線、哈希和格的成熟且高性能的 SNARK。不同的假設與性能特徵將適用於不同場景。

但如果以數位簽名為參照,基於格的 SNARK 將成為部署最廣泛的後量子選擇。

Jolt 在這場轉變中處於非同尋常的優勢位置。最初的 Jolt 設計利用了橢圓曲線對承諾特別有用的特性,包括對稀疏向量進行快速承諾。格承諾具有同樣的特性:當向量大多數條目為零或較小時,對向量承諾的成本很低,而 Jolt 幾乎只對這類向量進行承諾。這一特性使我們能夠將 Dory 替換為 Akita,同時保持 Jolt 其餘部分不變。

我們將構建基於哈希的 Jolt 版本。但與基於曲線和基於格的 Jolt 相比,基於哈希的版本在空間效率上更差,證明更大,並存在各種複雜問題。這是因為最有前景的基於哈希的 SNARK 工作在二進制域上。這種數制便於證明哈希求值,但與 CPU 的算術方式不匹配。這種不匹配使得證明普通的 CPU 乘法變得昂貴。即便如此,生態也應在每個主要假設族下都有 zkVM,正如數字簽名領域那樣。

全能 SNARK

Lattice Jolt 一次性滿足了構建者對 zkVM 的所有需求:後量子、透明、快速、緊湊且空間高效。它將從 LaBRADOR 到 Hachi 的格 SNARK 研究路線帶入生產級 zkVM,同時沒有放棄最初讓 Jolt 變得快速的任何優勢。

我們的目標不僅是將性能最強的 zkVM 開源供任何人使用,更在於大幅消除為特定應用手工調優 SNARK 的必要性。這並不要求 Jolt 與手工調優的證明器一樣快。那是一個不可能的目標,好比要求 CPU 在每項任務上都匹敵專用 ASIC。它只要求 Jolt 快到足以提供可接受的使用者體驗。

對於與客戶端證明相關的「小」語句(如今手工優化電路在這些場景中佔主導),關鍵標準是在手機上以大約一秒內的時間生成證明。Jolt 已經接近實現這一點,且還有大量加速方案正在推進中。

SNARK 的時代已經到來。

本內容僅供參考,不應作為法律、商業、投資或稅務建議依賴。關於這些事項,您應諮詢自己的顧問。對任何證券或數位資產的提及僅供說明之用,不構成投資建議或提供投資顧問服務的要約。此外,本內容不面向任何投資者或潛在投資者,亦不得在任何情況下作為投資於 a16z 管理的任何基金的決策依據。(投資 a16z 基金的要約僅透過該基金的私募備忘錄、認購協議及其他相關文件進行,且應完整閱讀這些文件。)所提及、引用或描述的任何投資或組合公司並不代表 a16z 管理工具中的全部投資,且無法保證這些投資將會盈利,亦無法保證未來進行的其他投資將具有類似特徵或結果。由 Andreessen Horowitz 管理的基金所作投資的清單(不包括發行人未允許 a16z 公開披露的投資,以及未公開的上市數位資產投資)可於 https://a16z.com/investments/ 取得。

文中提供的圖表僅供參考,不應作為任何投資決策的依據。過往表現不代表未來結果。本內容僅代表所述日期的情況。這些材料中表達的任何預測、估計、前瞻性陳述、目標、前景和/或意見均可能隨時變更,恕不另行通知,並可能與他人表達的意見不同或相反。更多重要資訊請參見 https://a16z.com/disclosures。

免責聲明:本頁面資訊可能來自第三方,不一定反映KuCoin的觀點或意見。本內容僅供一般參考之用,不構成任何形式的陳述或保證,也不應被解釋為財務或投資建議。 KuCoin 對任何錯誤或遺漏,或因使用該資訊而導致的任何結果不承擔任何責任。 虛擬資產投資可能存在風險。請您根據自身的財務狀況仔細評估產品的風險以及您的風險承受能力。如需了解更多信息,請參閱我們的使用條款風險披露