硬核對話 Scroll 張燁:zkEVM 與 Scroll 及其未來
採訪者:Nickqiao & Faust,極客 Web3
受訪者:YeZhang,Scroll 聯創
編輯:Faust、Jomosis
來源:極客web3
6 月 17 日,極客 Web3 和 BTCEden 在 Scroll 的 DevRel——Vincent Jin 的幫助下,有幸邀請到了 Scroll 的聯創張燁,來解答關於 Scroll 和 zkEVM 的諸多問題。
期間雙方不但談到了很多技術話題,還談到了 Scroll 的一些趣事,以及其賦能亞非拉實體經濟的宏大愿景。本文是此次訪談的文字版記錄,超過 1 萬字,共包含至少 15 個話題: ZK 在傳統領域的應用空間 zkEVM 和 zkVM 在工程難度上的差異 Scroll 在實現 zkEVM 過程中遇到的難題 Scroll 對 Zcash 的 halo2 證明系統作出的改進 Scroll 是怎么和以太坊 PSE 小組展开合作的 在代碼審計層面 Scroll 如何確保自己的電路安全可靠 Scroll 對未來的新版 zkEVM 及證明系統的簡單規劃 Scroll 的 Multi Prover 設計以及其 Prover 生成網絡(zk 礦池)的搭建方式等。
除此之外,張燁老師在最後談到了Scroll 將扎根在非洲、土耳其、東南亞等金融系統落後地區,打算為該地區人民創造實體經濟場景以「脫虛入實」的宏大愿景。本文可能是讓更多人更好理解 Scroll 的絕佳資料之一,推薦大家仔細閱讀。
1.Faust: 請問張燁老師對於 ZK 在 Rollup 之外的應用怎么看?不少人習以為常地認為,ZK 的主要用處在混幣器、隱私轉账或 ZK Rollup 和 ZK 橋這些地方,但在 Web3 之外,比如傳統行業裏對 ZK 的應用還是很多的。您覺得未來 ZK 最有可能在哪些方向上被採用?
YeZhang:這是一個好問題,傳統行業裏做 ZK 的人,在五、六年前就在探索 ZK 的各種場景,區塊鏈中用到 ZK 的場景其實非常小,這也是為什么 Vitalik 覺得十年後,ZK 的場景會和 blockchain 一樣大。
我覺得在那些需要信任假設的場景中,ZK 會有很多用武之地。假設你現在需要處理一些繁重的計算任務,如果你在 AWS 上租服務器,運行自己的任務並得到結果,相當於你在自己控制的設備上做計算,然後你要支付租服務器的錢,但這筆錢往往並不便宜;
但如果我們搞計算外包的模式,很多人可以用自己闲置的設備或資源分擔你的計算任務,你付出的成本可能比自己租服務器更便宜。但這裏存在信任問題,你不知道別人返回給你的計算結果是否正確。現在假設說你在做一個很麻煩的計算,然後你把計算交給我來做,再給我錢。我過了半小時後隨便交給你一個結果,你也沒有辦法相信這個結果是有效的,因為我可以隨便編個結果。
但如果我能向你證明,交付的這個計算結果是對的,那你就可以放心了,並且也敢把更多計算任務外包給我來做。ZK 可以把很多不可信的數據來源變為可信的,這個功能非常強,通過 ZK,你可以把不可信但很便宜的第三方計算資源更高效的運用起來。
我覺得這個場景非常有意義,可以催生類似於外包計算的商業模式。在一些學術文獻裏,稱其為可信計算(verifiable computation),就是把一個計算變得值得信任。除此之外,ZK 可以應用到數據庫領域,假設在本地運行數據庫太貴了,你決定走外包的路子,恰好一個人有富余的數據庫資源,然後你把數據存儲在他那邊。你會擔心對方更改你托管在他那的數據,或者說你一個 SQL query 後得到的結果對不對?
對此,你可以讓對方生成一個 proof,如果這件事能做到,你可以把數據存儲也外包出去,並得到一個 trustworthy 的結果。這和前面的可信計算彼此都是一大類應用場景。
此外還有很多應用實例,我記得有篇論文講了 Verifiable ASIC,在生產芯片的時候,可以把 ZK 算法寫到你的芯片上,當你用芯片運行程序的時候,產生的結果默認會帶一個 Proof。這樣一來我覺得很多東西都能代理給任何一臺設備,生成可信的結果。
還有一個有點扯的東西,叫 Photo Proof 照片證明。比如說很多圖片,你不知道是不是 P 過的,但我們可以通過 ZK 去證明相片沒有被篡改過,比如可以在相機軟件中加一些設置,自動生成一些數字籤名,你拍完照片後,這個籤名相當於給照片蓋了章。如果有人把你拍的照片拿去 PS,搞「二次創作」,我們驗證下籤名就能識別出圖片是被改動過的。
這裏面我們可以引入 ZK,當你對原圖進行了些許改動後,你可以用 ZK Proof 向別人證明自己只是對照片做了旋轉、平移等簡單操作,並沒有篡改照片的原始內容,證明自己微調後的圖片和原版圖片基本一樣,也就是證明自己沒有篡改圖片的核心內容搞「二次創作」。
這個場景還可以拓展到視頻音頻上,通過 ZK,你不必告訴對方自己對原版視頻做了哪些改動,但可以證明自己沒有篡改原版的核心內容,證明自己只做了一些無傷大雅的調整。此外還有很多有意思的應用,都是 ZK 能插一腳的。
目前,我覺得ZK 的應用場景還沒有被廣泛接納的原因,在於其成本太高,現有的 ZK 證明生成方案,還不能做到對任意計算都實時生成證明,因為 ZK 的开銷一般是原始計算的 100 倍到 1000 倍,當然我說的數字已經是壓的比較低的了。
所以你想象一下,一個計算任務本來要算 1 小時,你現在給它生成個 ZK Proof,Overhead 可能是 100 倍,也就是要花 100 個小時來生成證明,雖然你可以用 GPU 或 ASIC 把這個耗時給縮短,但還是要付出巨大的計算开銷,如果你要求我算一個很麻煩的東西,還要求我為此生成 ZK Proof,我可以拒絕這么做,因為這要額外耗費 100 倍的計算資源,最後落實到經濟账上就很不劃算。所以對於一對一的場景來說,生成一次性的 ZK 證明很昂貴。
不過,這也是為什么對於 Blockchain 來說,非常適合用 ZK,原因是區塊鏈做的是冗余計算,有很多 1 對多的場景。區塊鏈網絡中不同節點做的是相同的計算任務,如果有 1 萬個節點,那么相同的任務要被執行 1 萬次。但如果你在鏈下完成任務,生成 ZK 證明,1 萬個節點只驗證 ZK 證明而不重跑任務,就不必再把原始計算重放 1 萬遍了,相當於你用自己 1 個人的計算成本,和 1 萬臺節點搞冗余計算的成本做了置換,從整體的角度看,可以讓更多人節約資源。
所以,其實鏈越去中心化越適合搭配 ZK,因為任何人都能近乎零成本的驗證 ZKP,我們只要在初始生成證明的時候付出一定成本,就可以換來對大多數人的解放,這就是為什么區塊鏈的公开可驗證性非常適合 ZK,因為區塊鏈裏有很多 1 對多的場景。
還有一個上面沒提到的點。現在區塊鏈領域用到的 Overhead 比較大的這種 ZK 證明,都是非交互式的,就是你給我一個東西,我給你證明,然後就結束,因為在區塊鏈中,你不可能反復的去跟鏈上交互。但有一種更高效、开銷更低的證明生成方式,也就是交互式證明。比如說,你給我發一個 Challenge,我給你發一個東西,你再給我發一個東西,我再給你發一個,通過這種雙方多次交互的方式,有可能把 ZK 的計算量級再降低下來。如果這種方式可以,就有可能解決大的 ZK 應用場景的證明生成問題。
Nickqiao:如何看待 zkML,也就是 ZK 和機器學習相結合的發展前景?
YeZhang:zkML 也是一個很有趣的方向,能把 Machine Learning 給 ZK 化,但我覺得這方面還是缺乏殺手級的應用場景。大家普遍認為隨着 ZK 系統的性能提升,未來能夠支持 ML 這個級別的應用,目前 zkML 的效率能夠支持 gpt2 這種級別的應用,在技術上能做到,但只能做 ML 中的推理。歸根結底,我覺得大家還是在摸索這塊的應用場景,也就是到底什么樣的東西才需要你證明其推理過程是對的,這個事情是挺刁鑽的。
2.Nickqiao: 想請教下張燁老師,zkEVM 和 zkVM 在工程實現難度上的差異具體有多大?
YeZhang:首先,無論是 zkEVM 還是 zkVM,本質都是為某個虛擬機的操作碼 / 指令集生成定制的 ZK 電路,而 zkEVM 的工程落地難度取決於你實現它的方式,在我們剛啓動項目時,因為 ZK 的效率還沒那么高,通過為 EVM 的每個操作碼都寫一個對應的電路,然後把電路組合起來,定制一個 zkEVM 是最高效的方式。
但這種方案的工程實現難度肯定很大,比 zkVM 大很多,畢竟 EVM 的指令集有超過 100 個操作碼,每個操作碼都要定制一套東西,然後組合起來,一旦有 EIP 為 EVM 增添新的操作碼,比如 EIP-4844,zkEVM 都要相應的加新東西。最後你要寫很長的電路並進行漫長的審計工作,所以开發難度和工作量要比 zkVM 大很多很多。
反之,zkVM 是自己定義了一套指令集 / 操作碼,它自定義的指令集可以做的很簡單,可以很 ZK friendly,你做出來一套 zkVM 後,不必頻繁的更改底層代碼,就能支持各種升級和預編譯。所以zkVM 的主要工作量和後續升級維護的難度,就放在了編譯器也就是把智能合約轉化為 zkVM 操作碼的那一步,這和 zkEVM 有很大不同。
所以,從工程難度來看,我覺得 zkVM 要比定制化的 zkEVM 更容易實現,但是如果要在 zkVM 上跑 EVM 的話,總體性能比定制化的 zkEVM 低很多,因為後者是專門定制的。但目前,Prover 生成證明的效率在過去兩年間有了至少 3~5 倍甚至 5~10 倍的飛躍,zkVM 的效率在隨之提升,現在用 zkVM 去跑 EVM,整體效率已經慢慢提上來了,未來 zkVM 在性能上的劣勢可能被它易於开發維護的優勢給掩蓋住。畢竟對於 zkVM 和 zkEVM 而言,除去性能外的最大瓶頸就在开發難度上,必須要有一個非常強大的工程團隊,才能維護好這樣一套復雜的系統。
3.Nickqiao: 能否講一下 Scroll 在 zkEVM 落地的過程中,是否遇到一些技術難題,又是怎么解決的?
YeZhang:一路走來的話,最大的挑战還是在於,最初啓動項目時的不確定性太大。我們剛啓動項目時,基本沒有其他人做 zkEVM,我們是最早探索 zkEVM 從不可能變成可能的一個團隊。在理論層面,項目剛开始的 6 個月就基本確定了一套可行的框架,而在後續實現的過程中,zkEVM 的工程量非常大,還有一些非常技術性的挑战,比如說你怎么動態的支持不同的 Pre-Compile(預編譯),怎么去更高效地聚合操作碼(opcode),這涉及到很多工程上的難題。
而且我們是唯一一個,也是最早支持 EC Pairing 橢圓曲线配對這個 Pre-Compile 的,像 Pairing 這種電路實現起來難度非常大,涉及到很多數學等錯綜復雜的難題,對寫電路的人的密碼學 / 數學功底,以及工程能力要求都很高。
然後在後期發展上,還要考慮技術棧的長期可維護性,以及要在什么樣的時間節點,升級到下一代的 zkEVM 2.0。我們有一個專門的研究團隊,一直在研究此類方案,比如通過 zkVM 的方式來支持 EVM,我們也有相關的論文去做這方面的一些討論。
總結下來,我覺得之前的難點在於把 zkEVM 從不可能變為可能,面臨的難題主要在工程落地和優化上。而下一階段,更大的難點是在什么時候、通過什么樣的具體方式,切換到一個更高效的 ZK 證明系統,以及我們怎么把目前的這套代碼庫過渡到下一代 zkEVM 身上,以及下一代的 zkEVM 能給我們提供什么樣的新 Feature,這裏面有大的探索空間。
4.Nickqiao: 聽起來是 Scroll 已經考慮切換到別的 ZK 證明系統上了。據我了解,目前 Scroll 用的是基於 PLONK+Lookup 的一套算法,那么這套算法在目前是否是最適合實現 zkEVM 的,以及未來 Scroll 打算換用什么證明系統?
YeZhang: 首先我來簡單回答下關於 PLONK 和 Lookup 的問題,目前這一套還是最適合實現 zkEVM 或者 zkVM 的系統,大部分的實現跟具體的 PLONK 和 Lookup 是綁定的。一般提到 PLONK 時,其實更多是用 PLONK 的 arithmetization,也就是電路的算術化表達方式去寫 zkVM 的電路。
Lookup 是寫電路時用到的一種方式,一種約束類型。所以當我們提到 PLONK + Lookup,指的是在寫 zkEVM 或 zkVM 電路時,使用 PLONK 的約束格式,這種方式目前是最常見的。
而在後端方面,PLONK 和 STARK 的界限已經變得模糊,它們只是用了不同的多項式承諾方式,但其實很類似。即使採用 STARK + Lookup 的組合,跟 PLONK + Lookup 也是類似的,大家看的只是算法,兩者的差別主要體現在 Prover 的效率、證明大小等方面。當然,就前端而言,Plonk + Lookup 來實現 zkEVM 還是最適合的。
關於第二個問題,就是 Scroll 未來打算切換到什么證明系統。因為 Scroll 的目的是永遠讓自己的技術和鏈的框架保持在 zk 領域裏最頂尖的位置,所以我們肯定會用最新的一些技術。我們一直以安全性、穩定性作為最優先的目標,所以不會過於激進地切換自己的 ZK 證明系統,可能先通過一些 Multi Prover 做過渡,一步一步的摸索遞進,來完成下一版的升級迭代。Anyway,要保證說這是一個平穩的過渡流程。
但就現在來說,切換到新的證明系統還很早,這其實是下一階段比如未來 6 個月到 1 年的發展方向。
5.Nickqiao: Scroll 在當前基於 PLONK 和 Lookup 的證明系統上,有沒有一些獨特的創新?
YeZhang: 目前在 Scroll 主網上運行的是 halo2,halo2 最早源於 Zcash 這個項目團隊,他們最早做了一個能支持 Lookup,支持靈活地寫電路格式的一套後端系統。然後,我們和以太坊的 PSE 小組一起改造了 halo2,把它採用的多項式承諾方案從 IPA 換到了 KZG,把 Proof Size 變小了,從而能在以太坊上更高效的驗證 ZK Proof。
然後我們在 GPU 硬件加速上做了很多工作,跟用 CPU 生成 ZKP 來對比的話,能讓 ZKP 生成速度快 5~10 倍。總體來說,我們把原版 halo2 的多項式承諾方案替換成了更易於被驗證的版本,並做了很多關於 Prover 的優化,在工程化落地上下了不少功夫。
6.Nickqiao: 所以 Scroll 現在是和以太坊 PSE 團隊共同維護 KZG 版本的 halo2。您能否給我們講一下,你們是怎樣和 PSE 團隊合作的?
YeZhang:Scroll 在啓動項目前,我們本來就認識一些 PSE 團隊的工程師,我們就有和他們聊,說自己想做 zkEVM,我們估計了一下這個效率是 ok 的。剛好在同一個時間節點,他們也想做同樣的事,然後大家一拍即合。
所以,我們是從以太坊社區,從 Ethereum Research 那邊認識了一起想做 zkEVM 的人,大家都想把 zkEVM 產品化落地,都有為以太坊服務的想法,所以很自然地开始了开源合作的模式。這種合作方式更像开源社區,而不是商業化的公司,比如我們每周都會通一次電話,同步一下進度,討論遇到了哪些問題。
我們以這種方式去开源地維護了這套代碼,從改進 halo2 到實現 zkEVM,這中間有很多探索的過程,我們相互會幫忙 Review 代碼。你從 Github 的代碼貢獻量能看出來,PSE 他們寫了一半,Scroll 這邊寫了一半,後續我們完成了代碼的審計,並實現了一版真正產品化落地並在主網上運行着的代碼。總結下來,我們和以太坊 PSE 的合作模式,更像是一個开源社區的路徑,是自發的形式。
7.Nickqiao: 您剛才提到,要編寫 zkEVM 的電路,對數學和密碼學的要求非常高,既然如此,能摸清楚 zkEVM 的人估計很少。那么 Scroll 怎么保證電路編寫的正確性以及少出 bug?
YeZhang:因為我們是开源的代碼,基本上每一個 PR 都會有我們的人和以太坊的一些人,以及一些社區成員去 Review,有比較嚴格的審計過程。同時我們在電路審計方面也花了很多錢,超過 100 萬美元,找了這個行業裏最專業的密碼學和電路審計機構,比如 Trail of Bits,Zellic 等。我們鏈上智能合約的部分也找了 openzepplin 來審計,基本上所有和安全相關的東西都動用了最高檔的審計資源。我們內部還有專門的安全團隊去做測試,持續提升 Scroll 的安全性。
Nickqiao: 除了這種審計方式,有沒有形式化驗證等在數學上比較嚴謹的方式?
YeZhang:我們其實很早就看過就 Formal Verification(形式化驗證)這個方向,包括以太坊最近也在思考,怎么給 zkEVM 做形式化驗證,這其實是一個很好的方向。但就目前來說,要給 zkEVM 做完整的形式化驗證還比較早,只能從一些小的模塊开始摸索,因為 Formal Verification 運行是有成本的,比如你要給一套代碼去運行 Formal Verification,你要給它先寫一個 spec,但寫 spec 並不容易,這套東西要完善需要很長時間。
所以我覺得目前還沒有到給 zkEVM 做完整的形式化驗證的階段,但我們會持續的跟以太坊在內的外部合作者去積極探索怎么做 zkEVM 的形式化證明。
目前來說,最好的方式其實還是人工審計,因為你就算有了 spec,有了 Formal Verification,如果 spec 寫錯了,那你還是會出問題。所以我覺得,目前最好還是先通過人工審計,然後通過开源和漏洞懸賞的方式,確保目前 Scroll 代碼的穩定性。
但是,在下一代 zkEVM 中,關於怎么去做形式化驗證,怎么去設計一個更好的 zkEVM 進而更容易的寫出來 spec,通過形式化驗證的方式去證明它的安全性,是以太坊的終極目標。就是說,當一個 zkEVM 被形式化驗證以後,他們就可以徹底放心地將其實施到以太坊主網上。
8.Nickqiao: 關於 Scroll 採用的 halo2,如果要支持 STARK 等新的證明系統,开發成本會不會很大。能否實現一種插件化的體系,同時支持多個證明系統?
YeZhang:halo2 是一個非常模塊化的 ZK 證明系統,你可以替換它的域、多項式承諾等,只要把它用的多項式承諾從 KZG 換成 FRI,基本就可以實現一個 halo2 版本的 STARK,這個事也確實有人做了,所以halo2 要支持 STARK,這種兼容是完全 ok 的。
然後在實際落地中會發現,如果你要追求極致效率的話,越模塊化的框架越可能導致一些效率問題,因為你為了模塊化犧牲了定制化的程度,會有付出一些代價。我們在持續關注一個問題,就是未來的發展方向該是模塊化的框架,還是非常定制化的框架,尤其像我們有足夠強的 ZK 开發團隊,可以維護一個獨立的證明體系,然後讓 zkEVM 變得更高效。當然上述問題需要做出一些權衡,但就 halo2 而言,它可以支持 FRI。
9.Nickqiao: 目前 Scroll 在 ZK 方面主要的迭代方向是什么?是優化目前的算法、增加一些新的 feature 之類的?
YeZhang:我們的工程團隊核心在做的事情,還是要把目前的 Prover 性能再提升一倍,然後 EVM 兼容性也要做到最好。在下一版升級中,我們會繼續保持自己在 ZK Rollup 裏最 EVM 兼容的這樣一個位置,現在其他所有的 zkEVM 應該都沒有我們的兼容性好。
所以這是 Scroll 工程團隊一方面在做的,就是繼續優化 Prover 和 Compatibility,並且要降低費用。我們現在已經投入了很多人力,去研究下一代 zkEVM,大概投入了一半的工程力量,以實現分鐘級甚至秒級的 ZK 證明生成,讓 Prover 的效率變得高起來。
同時,我們在探索新的 zkEVM 執行層,我們的節點之前用的是 go-ethereum,但現在有性能更好的 Rust 版本以太坊客戶端 Reth。所以我們在研究,怎么把下一代 zkEVM 跟 Reth 客戶端更好地結合,把整個鏈的性能給提升上來。我們會考察 zkEVM 如果圍繞着新的執行層,該用什么樣的實現方式和過渡形式最好。
10.Nickqiao: 那么像 Scroll 在考慮支持的多樣化證明系統,有沒有必要在鏈上實現多個 Verifier 合約呢?比如做交叉驗證
YeZhang:我覺得這是兩個問題,首先就是說,有沒有必要去做模塊化的證明系統和多樣化的 Prover,我覺得這么做是有意義的,因為我們從始至終,就是开源項目。你把开源出去的這套框架做的越通用化,會吸引來越多人幫你造輪子,你的社區也會因此壯大,後面在項目开發或者工具使用上,可以自然而然的引用外部力量。所以我覺得,如果能做一個不光給 Scroll 自己使用,還能給其他人用的 ZK 證明框架很有意義。
然後第二個事情,就是在主網上做交叉驗證這個事,這其實和證明系統本身是否是多樣化的,是否支持 STARK 或 PLONK 是正交的話題。一般很少有項目把同樣的 zkEVM 用 PLONK 驗證一遍,再用 STARK 驗證一遍,這是很少的,因為這么做對安全性的提升不大,反而會讓 Prover 付出更高成本,所以一般不會出現這種交叉驗證的情況。
我們其實在做一個東西叫 Multi Prover,可以有兩套 Prover 一起證明相同的一個 Block,但是會在鏈下把兩個 Proof 聚合到一起再放到鏈上去驗證。所以,並不會在鏈上做 STARK 和 SNARK 之間的交叉驗證。我們的多 Prover 方案,是為了保證在其中一套 Prover 的代碼出問題時,另一套代碼可以兜底,一套系統出了 bug 另一套能照常運行,所以這和交叉驗證是另一個話題。
11.Nickqiao: Scroll 的 Multi Prover,每個 Prover 運行的證明程序會有什么不同?
YeZhang:首先,假設我有一個正常的、用 halo2 寫的一套 zkEVM,有一個正常的 Prover 生成 ZKP 再去鏈上做驗證,但這裏有個問題,zkEVM 很復雜,有可能出現 bug。如果出現 bug,比如被黑客或者項目方拿去利用這個 bug 生成一個 Proof,最後能把大家的錢提走,這肯定是不好的。
Multi Prover 的核心思想,其實是 Vitalik 最初在 Bogota 活動上第一次提出的。意思是說,如果一個 zkEVM 可能出現 bug,那你可以同時跑不同種類的 Prover,比如說可以用 TEE 的基於 SGX 的 Prover(Scroll 目前用了這套),或是基於 OP,或用 zkVM 運行 EVM 的方式去跑一個 Prover。Anyway,這些 Prover 要同時去證明一個 L2 Block 的有效性。
假設有 3 個不同類型的 Prover,當且僅當它們生成的 3 個不同 Proof 都通過驗證,或者說 3 個 Proof 中至少 2 個通過驗證時,你才能在以太坊鏈上敲定 Layer2 的最終狀態。Multi Prover 可以保證在一個 Prover 出問題時,其他兩個 Prover 能夠頂替,最後整個 Prover 系統的穩定性會很好,使 ZK Rollup 的安全性得到提升。當然這也會引入其他缺點,比如 Prover 的整體運行成本會提高,我們有一篇專門的 Blog 介紹了這些概念。
12.Nickqiao: 那現在關於 Scroll 的 ZK 證明生成這塊,其證明生成網絡(ZK 礦池)是怎么建設的,是自建的,還是會把一些計算外包給如 Cysic 的第三方?
YeZhang:就我們目前來說,整個設計其實很容易,我們想讓更多的 GPU 持有者或者礦工參與進我們的這個證明網絡(ZK 礦池)裏,但目前來說,Scroll 的 Prover Market 還是我們自己運營的,我們會和第三方的一些有 GPU 集群的人合作,他們去運行 Prover,但這是為了主網的穩定性,因為你的 Prover 一旦去中心化後,會有很多問題。
比如說,你的激勵機制設計不好的話,如果沒有人給你產生 Proof,網絡會在性能上受到影響。前期我們選擇了相對中心化的方式,但是整個接口和框架的設計,非常容易切換到去中心化的模式。人們完全可以用我們的技術框架做一個去中心化的 Prover 網絡,再加一些激勵就行了。
但目前來說,為了 Scroll 的穩定性,我們的 Prover 生成網絡還是中心化的,未來我們會更大範圍的把 Prover 網絡給去中心化,每個人都可以去運行自己的 Prover 節點,包括我們也在跟諸如 Cysic,Snarkify network 等等第三方平臺合作,看一下如果有人想通過我們的技術棧去啓動自己的 Layer2,可以去接到第三方的 Prover Market 裏去直接調用對方的 Prover 服務。
13.Nickqiao: Scroll 在 ZK 硬件加速方面有沒有什么投入或者產出成果?
YeZhang:這其實就是我之前提到的,Scroll 最初做的兩大方向,第一個就是把 zkEVM 從不可能變成可能,第二個就是我們為什么能把它從不可能變成可能,是因為 ZK 硬件加速的效率提升了。
我其實在做 Scroll 之前的 3 年,就开始做 ZK 硬件加速方面的工作,我們也有關於 ASIC 或是 GPU 硬件加速的論文。我們對 zk 硬件這塊非常了解,無論從芯片還是從 GPU,無論是從學術還是從實踐上,都有非常強的 Credibility。
但是Scroll 自己會專注於 GPU 方面的硬件加速,因為我們沒有專門做 FPGA 或是做硬件的資源,也沒有流片的專門經驗。所以我們會選擇跟 Cysic 這類硬件公司合作,他們去專門做硬件這塊,我們就關注 GPU 加速這樣一個偏軟件的領域。我們自己的團隊會 GPU 硬件加速做優化,然後將成果开源,外部的合作夥伴可以去做專門的如 ASIC 等芯片,我們也會經常的討論交流一下彼此遇到的問題。
14.Nickqiao: 您剛才提到,Scroll 未來會切換到其他的證明系統。那像一些新的證明系統,比如說 Nova 或其他的一些算法,您能不能給我們科普一下?他們有什么優點?
YeZhang:對。我們目前正在內部探索的一種方向,是使用更小的域,能跟我們目前的這些證明系統結合,比如說像 PLONKy3 這樣的一些庫,它可以很快的實現小域上的一些運算。這是一個 Option,怎么能從我們原來的大域切換到小域,這是一種。
我們內部也在看一些方向,比如一個叫 GKR 的證明系統,它生成證明的耗時是线性級別的,在復雜度上面比其他的 Prover 要低很多,但目前沒有特別成熟的工程落地方式。這塊要做的話,要投入更多的人力物力。
但 GKR 的好處是,在處理重復計算時效率很高,比如說一個籤名計算了 1000 次,GKR 可以很高效的給這樣的東西生成證明。ZK 橋 Polyhedra 就是用 GKR 去證明籤名的,效率很高。然後,EVM 有很多重復的計算步驟,可以通過 GKR 更好的把生成 ZK 證明的成本降低下來。
然後還有一些好處,就是說GKR 這套證明系統,它需要的計算量確實要比其他系統小很多。比如說,你通過像 PLONK 或 STARK 這樣的方式,去證明一個 keccak 哈希函數的計算流程,你需要把中間所有的變量、keccak 整個計算過程中產生的所有東西,全部 Commit 一遍、全部算一遍。
但是 GKR 的話,你只需要 Commit 它很短的輸入那一層,它可以把中間的這些參數全部通過傳遞關系給表示出來,不需要你去 Commit 中間的這些變量,會讓計算成本降低很多。GKR 背後的這個 sum check 協議,也被 Jolt 或者 Lookup argument 或比較火的一些新框架所採用,所以這個方向是比較有潛力的,我們也在認真研究這個方向。
最後就是你提到的 Nova。感覺 Nova 在幾個月前大火了一陣,因為 Nova 也比較適合處理這種重復計算,比如你本來要證明 100 個任務,對此的 overhead 是 100。但 Nova 的做法是,我可以把這 100 待證明的任務一個疊一個,一個疊一個,每兩個隨機進行线性組合,最後組合出來一個最終要證明的東西,然後只要證明最終這個任務,就可以證明前面那 100 個任務都有效,這樣的話可以把原本為 100 的證明 overhead 大幅壓縮。
然後,後續的一些 Hyper Nova 之類的工作,可以把 Nova 擴展到除了 R1CS 以外的一些證明系統,一些其他的寫電路的格式,可以支持 lookup 或是別的東西,這樣才能讓一個 VM 更好的被 Nova 這類 ZK 證明系統給證明。但目前來說,Nova 和 GKR 的產品化完善程度不夠,目前市面上沒有很好的關於 Nova 的高效的庫。
並且因為 Nova 是這種折疊的方式,它的設計思路和其他的證明系統不太一樣。我覺得它還很不成熟,只是一個比較有潛力的備選方案。但目前來看,從 Production Ready 的角度來說,還是最常見的那幾套 ZK 證明系統更早被投入市場,但長期來看說不好說哪個最好。
15.Faust: 最後想聊一下價值觀的問題。記得您去年說去了一趟非洲後,覺得區塊鏈最有可能在非洲這種經濟落後的地方被大規模採用,可以談談這方面的想法么?
YeZhang:我其實一直有一個非常強的信念,就是區塊鏈在經濟落後的國家真的有應用空間。其實你現在看到,區塊鏈這個行業裏各種 Scam 比較多,讓很多人對行業的信心都動搖了,就是為什么要在一個沒有實際價值的行業裏工作,區塊鏈這個東西到底有沒有用。除了炒幣或者說賭博行為外,有沒有一些更實際的應用場景?
我覺得去一些經濟落後的地方,尤其像非洲,你更能感受到區塊鏈的潛力。因為在中國或西方國家生活的人,其貨幣體系、金融體系非常健全,比如中國人民用微信和支付寶就很开心,人民幣也相對穩定,你沒有必要通過區塊鏈的方式去做支付。
但在像非洲這樣的地方,他們是真的對區塊鏈和鏈上穩定幣有需求,因為他們的貨幣通脹真的非常嚴重,舉個例子,某些非洲國家的通脹率每半年就能達到 20%,這樣的話每次你隔半年买菜,價格就要提升 20%,如果是一年就可能提升更多。這樣的話它們的貨幣是一直在嚴重貶值的,資產也在貶值,所以很多人都希望拿美元拿穩定幣或是拿其他發達國家的穩定的貨幣。
但非洲人很難去申請發達國家的銀行账戶,穩定幣對於他們來說是一種剛需,就哪怕沒有區塊鏈,他們也想拿着美元這類東西。顯然,對於非洲人來說,持有美元最好的方式就是拿穩定幣,他們每次一發工資,就可以去幣安把這個錢趕緊換成 USDT、USDC,需要用錢的時候再把它取出來,這樣的話會導致他們有對區塊鏈的真實需求和實際應用。
其實你去了非洲後,會明顯感到像幣安很早就在非洲布局了,做的非常的扎實,在那裏很多非洲人真的對穩定幣有依賴,就是大家寧可信任交易所,都不一定信任自己本國的貨幣體系,因為很多非洲人在本地可能都申請不了貸款。假設你要借 100 塊錢,銀行會开出各種手續和條件,最後你可能搞不到貸款,但在交易所或者其他的一些鏈上平臺,對此要靈活的多,所以我覺得在非洲,人們對區塊鏈有更多更實際的應用和需求。
當然,我說的這些大多數人並不太了解,因為大多數用 Twitter 的人不關心這個,或者也不會在 Twitter 上看得到這些。像非洲這樣比較落後的地區有很多,包括在幣安的用戶量比較多的一些國家,如土耳其、一些東南亞國家、阿根廷,你會發現這些地區的人用交易所的次數非常多。所以我覺得,在這些地方,幣安的案例已經證明了人們對區塊鏈有非常強的需求。
所以我覺得這些地區的市場和社區是真的很有必要去做的,包括我們也有專門在土耳其的團隊,我們在土耳其有一個非常大的社區,然後我們要去慢慢的在前面提到的非洲、東南亞、阿根廷等國家去過渡。而且我覺得,在所有的 Layer2 裏面,Scroll 最有可能成功的在上述國家扎根,因為我們的團隊文化就相當多元,雖然三個創始人是華人,但我們整個 team 大概包含至少二三十個國家的人,雖然我們總共也就七八十人,每個地區基本上都有至少兩三個人,所以整體文化很多元。相比之下,你可以想到的其他 Layer2,基本都是西方人為主,像 OP、Base 和 Arbitrum 就是完全西方化的。
綜上,我們希望能在非洲這種經濟落後、對區塊鏈有實際剛需的地方,給這些地方的人做一套真的有實際應用場景的基礎設施,有點像「農村包圍城市」的感覺,去慢慢地把 Mass Adoption 給做起來。所以我覺得,我在非洲之行中的感觸還是很深的,但目前來說,Scroll 對於一些人而言使用成本還是有些貴,所以我還是挺希望能進一步地把成本降低,比如說十倍或者更多,然後通過一些其他的方式,把用戶帶到區塊鏈裏來。
其實還有一個前面沒提到的、可能有些不恰當的例子,就是波場 Tron。大家對它可能有一些不好的印象,但確實很多經濟落後的國家的人都在用它,因為 HTX 之前的交易所策略和很多其他的營銷策略,慢慢的讓波場真的有自己的網絡效應。我覺得,如果以太坊生態裏面能有一條鏈,能把這些用戶帶到以太坊生態裏,就是一個非常大的成就,而且也是在給這個行業做一些非常正面的事情,我覺得這是很有意義的。
現在很多以太坊二層在卷 TVL 數據,卷來卷去,你是 6 億美金,我們可能 7 億美金,它是 10 億美金,但我覺得相比於這些東西,更震撼的消息是,泰達突然說我在這個二層或者哪條鏈上又增發了 10 億枚 USDT,或者說發行了多少多少錢的穩定幣。一條鏈如果自然增長到了這樣一個程度,不需要通過空投預期來捕獲用戶需求,那個時候才算是比較成功的狀態,至少是我比較滿意的一個狀態,就是能讓用戶的真實需求大到一定程度,使得越來越多的人真的在日常使用你這條鏈。
最後我其實想插個題外話,接下來 Scroll 生態會有很多活動,希望大家多關注一下我們的後續進展,多參與一下我們的 defi 生態。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
動區週報:比特幣衝刺十萬大關、SEC 主席辭職、微策略再加倉BTC..
本週(11/17-11/23)重要大事速覽 比特幣動態 :比特幣價格接近 10 萬美元 ,市值「...
以太坊突破3400美元後蓄勢待發?分析師看法與ETH巨鯨動態整理
比 特幣今(23)日清晨持續發力最高來到 99,588 美元,雖然隨後賣壓湧現回落至 98,500...
IKEA:當前消費環境更像2008金融危機後,客戶錢包大幅縮水
美 國經濟目前消費者信心仍算穩定、勞動力市場甚至有一點加溫的跡象,葉倫也多次表示經濟正逐步走向「軟...