在香港區塊鏈高峰會上,Vitalik探討了ZK-SNARKs在以太坊Danksharding中的潛力,強調ASIC晶片對ZK加速的重要性。 ZK技術不僅適用於Web3,在可信任運算和可驗證硬體等傳統領域有需求。 Cysic等新興計畫致力於降低ZKP生成成本,推動ZK礦池與SaaS平台的發展。 Cysic透過GPU、FPGA和ASIC開發硬體加速方案,以滿足市場需求。 ZK技術日益成為熱點,Cysic的產品包括ZK Air和ZK Pro,預計將推動ZK運算市場的快速成長。
作者:Nickqiao & 霧月,極客web3
今年4月,Vitalik造訪香港區塊鏈峰會,發表了題為《Reaching the Limits of Protocol Design》的演講,其中再次提到了ZK-SNARKs在以太坊Danksharding路線中軀體出的潛力,並展望了ASIC晶片對ZK加速的巨大幫助。
泰勒Scroll聯創張燁也曾指出,ZK在傳統領域的應用空間可能比Web3內的還大,可信賴運算、資料庫、可驗證性硬體、內容防偽及zkML等領域都有對ZK的龐大需求,如果ZK證明即時生成能夠落地,Web3和傳統產業都將迎來令人振奮的範級變革,但從效率和經濟成本角度來看,目前要讓ZK投入大規模採用尚且遙遠。
其實,早在2022年,頂級創投機構a16z和Paradigm就公開發表報告,明確表達了對ZK硬體加速的重視,Paradigm甚至斷言:未來ZK礦工的收入可能比肩比特幣或以太礦工,基於GPU和FPGA 、ASIC的硬體加速方案將具備龐大的市場空間。此後,隨著Scroll和Starknet等主流ZK Rollup的火熱,硬體加速一度成為市場追捧的熱點概念,這種熱度隨著Cysic等項目的第三方上線而變得愈發濃重。
我們有理由認為,基於ZK龐大的需求空間,ZK礦池及即時ZKP生成的SaaS模式可以開發出黑客的產業鏈,在這片頗具潛力的新大陸中,有實力支撐且具備先發優勢的ZK硬件廠商可能會成為下一代的比特大陸,雄踞硬體加速的沃土。
在硬體加速領域中,Cysic可能是最受關注的勁旅之一,該團隊曾獲得ZKP技術競賽平台和ZPrize的重要獎項,並於2023年開始擔任ZPrize的導師;其路線以囊括的ToB端ZK礦池與ToC ZK-Depin硬體更是吸引了Polychain、ABCDE、OKX Ventures和Hashkey等頂級VC的垂青,總計完成了近2000萬美元的大筆融資。
隨著7月底Cysic測試網即將上線,以及其ZK礦池的開放同時,各大社區中關於Cysic的討論逐漸熱鬧起來,本文旨在讓更多人了解Cysic的產品原理與業務模式,書面ZK硬件加速原理進行簡單科普。在接下來的中,我們將Cysic的相關知識進行了簡要的普及,幫助更多的人降低了生育率。
從工作流程理解ZK證明系統
ZK證明系統其實是很複雜的,但如果要對其大體構造一個簡單理解,可以從工作和工作角度來劃分。對於一個把普通計算ZK化的系統的流程而言,其核心流程如下:
首先我們要透過前端與ZK系統交互,向待提交論證的內容,前端將這些內容進行格式轉換,進而被ZK論證系統處理。之後,系統會透過特定的論證系統或框架(如Halo2、Plonk)等)產生ZK Proof。這個過程可以解釋為以下錯誤:
1. 問題設定:首先我們要確定待論證的內容是什麼。例如,論證者聲明自己掌握/知道某樣數據,“我方程式知道F(x)=w的一個解N”,但他又不想讓人看到N個數值。
2.算術化與CSP:論證者提交待論證的內容後,系統會建立專門的數學模型/程序,等價的表達出待論證內容,然後進行格式轉換,即可被論證系統處理。具體來說,第三句聲明「我知道方程式F(x)=w的一個解N」則原始的數學等式,轉化為邏輯閘電路和插圖式的形態。
3. 之後,系統將選擇適當的證明系統如Halo、Plonk等,將前面產生的內容編譯為可用的ZKP程式。證明者使用此ZKP程式產生證明,交由驗證者做驗證。
像zkEVM等在以太坊二層被採用的ZK系統,本質上是先將智能合約編譯為EVM的底層操作碼,然後對每個操作碼進行格式轉換,轉化為邏輯閘電路/顯示式約束的形式,再交由桌面的ZK論證系統做進一步處理。
值得一提的是,目前在區塊鏈中被廣泛使用的ZKP 技術方案主要是zk-SNARK(零知識簡潔性非消耗知識交易所),而ZK Rollup 大多數利用了SNARK 的簡潔性而非零知識簡潔性意味著ZKP佔用的空間很小,可以把大量的內容壓縮到幾個十字節,驗證成本非常低。
這樣一來,Prover和Verifier之間的工作量是不便宜的,Prover生成ZKP的成本很高,Verifier的驗證成本卻很低,只需利用這種不便宜的性,在“單一Prover,多個Verifier」 」的場景下採用ZK,可以將整體的成本中心化在Prover側,極大程度地降低Verifier的成本,這種模式對去中心化驗證有效有利,坊間二層的思路就是如此。
但這種將驗證成本轉嫁到ZK生成端的模式並不是銀彈,對於ZK Rollup專案方而言,生成ZKP的損失成本最終必然會再次轉嫁到UX和手續費上,這並不利於ZK Rollup的長期發展。
縱使ZK在去信任和中心化去驗證的場景下有很大的用武之地,但確定在生成時間上的極限,無論是zkEVM還是zkVM還是ZK Rollup和ZK橋,目前都不具備大規模運用的經濟基礎。
為此,以Cysic、Ingonyama、Irreducible等為代表的ZK加速計畫應運而生,分別從不同的方向嘗試降低ZKP的生成成本。接下來中,我們去中心化技術角度簡要介紹ZKP生成的主要頭部與加速方式,為何以及Cysic在ZK加速上具備巨大的潛力。
新加坡貨幣:MSM和NTT
很多人都知道,ZKP的Prover產生證明的時間花費非常大。在ZK-SNARK協議中經常會出現這樣一種情況:驗證者只需要一秒鐘就可以驗證證明,但是證明的生成可能需要花費Prover半天甚至一天的時間。為了高效率的使用ZKP證明計算,有必要將計算格式從經典程式轉換為ZK公式。
目前有兩種方法可以實現這一點:一種是使用一些證明系統框架編寫的電路,例如Halo2;另一種是使用領域特定語言(DSL),例如Cairo或Circom,將計算轉換為中間表達形式,以便後續提交給證明系統。證明系統會根據所寫的電路或DSL編譯的中間表達形式來產生ZK證明。
程式操作比較複雜,產生證明所需的時間比較長。另外,操作某些本質上對ZK不友好,實現它們需要額外的工作。例如,SHA或Keccak雜湊函數是ZKP不友善的,使用這些函數將導致生成時間延長。而即使在經典計算機上執行成本較低的操作,也可能是ZKP 不友善的。
而拋開ZK不習慣的計算任務不說,雖然ZK證明生成過程可能因使用的證明系統而異,但其瓶頸本質上都是類似的。在ZK證明的生成中,有兩種計算任務最耗時計算資源:MSM(Multi-Scalar Multiplication)和NTT(Number Theoretic Transform)。這兩種計算任務可以佔據證明產生時間的80-95%,取決於ZKP的承諾方案和具體實現。
MSM主要處理橢圓形上的多標量乘法,而NTT則在有限域上的FFT(快速傅立葉變換),用於加速處理波形式乘法。使用不同的方案組合將帶來不同的FFT/MSM負載比例。
以Stark為例,其PCS(Polynomial Commitment Scheme,成果式承諾方案)使用的是FRI,一種基於哈希的承諾,而不是像KZG或IPA所使用的橢圓形,因此完全沒有MSM的計算。表中越靠上意味著需要越多的FFT攻擊,越靠下則需要越多的MSM攻擊。
最佳化方案
由於MSM侵犯涉及可預測的記憶體訪問,雖然可以大量的玩具化,但需要消耗大量的記憶體資源。另外,MSM還存在可擴展性的挑戰,即使在玩具化的前提下,也可能很慢,因此,雖然MSM硬體可能會加速,但它們需要龐大的記憶體和硬體運算資源。
NTT往往涉及隨機內存訪問,這使得它們對硬體不友好,並且在循環基礎設施上難以處理,這是因為NTT隨機訪問的特點,其如果在循環環境下運行,首先要訪問其他節點的數據,一旦涉及到網路交互,效能就會大幅下跌。
因此,儲存的資料存取和資料移動成為主要瓶頸,限制了NTT 的攻擊核心化能力,加速了NTT 的大部分工作,都中心化在管理運算如何與記憶體互動上。
其實,解決MSM和NTT效率瓶頸最簡單的方法,就是要徹底消除這些操作。一些新提出的演算法,例如Hyperplonk,對Plonk進行了修改,消除了NTT操作。這使得Hyperplonk更容易加速,但引入了新的瓶頸;再如計算成本較高的sumcheck協議。還有STARK演算法,它不需要MSM,但其FRI協定引入了嚴重的雜湊計算。
ZK硬體加速與Cysic的終極目標
儘管軟體和演算法層面的最佳化非常重要且具有價值,但存在明顯的限制。為了充分優化ZKP 的生成效率,必須使用硬體加速,這就像ASIC 和GPU 最終稱霸BTC 和ETH 挖礦市場。
問題是:加速ZKP產生的最佳硬體是什麼?目前有多種硬體可以實現ZK加速,如GPU、FPGA或ASIC,當然他們各有優劣。
我們可以比較一下這幾種硬體:
首先我們透過一個簡單的例子來說明它們在開發層面的差異。例如,現在我們要實作一個簡單的毛絨乘法:
在GPU上,利用CUDA SDK提供的API,我們可以像編寫原始程式碼一樣開發,從而獲得高精度運算的能力; 在FPGA上,我們重新需要這種學習硬體描述,使用語言來控制硬體層級的連接,以實現硬體語言演算法; 在ASIC上,晶片設計階段硬體層面通常直接固定好電晶體的連接排布,之後無法再進行修改。
這幾種方案各有優劣,適用於ZK的不同發展階段。而Cysic致力於成為ZK硬體加速的終極解決方案,逐步策略為:
基於GPU開發SDK為ZK應用提供解決方案,並整合全網GPU資源; 利用FPGA的靈活與各項平衡的特點,快速實現客製化的ZK硬體加速。 基於ASIC的ZK Depin硬體的自主開發而Cysic Network則將以SAAS平台/礦池的身份,整合ZK Depin與GPU的所有算力,為整個ZK產業提供算力與驗證解決方案
以下讓我們透過對多次精細解讀,來充分理解ZK加速方案的精細差異與Cysic的發展思路。
ZK礦池與SaaS平台:Cysic Network
其實,無論是Scroll或Polygon zkEVM等知名ZK Rollup,都曾在其佈局上明確提出了「去中心化證明者」的概念,而這實際上就是建構ZK礦池。這種市場化的方式可以讓ZK Rollup專案方帶著包袱,激勵礦工和礦池營運方不斷對ZK加速方案進行優化。
在Cysic的路線圖中,已明確提出名為Cysic Network的ZK礦池與SaaS平台計畫。而它不僅會整合Cysic自有算力,透過挖礦激勵的方式吸收第三方算力資源,包括閒散的GPU和一般用戶手上的zk DePIN設備。
其整個驗證工作流程示意圖如下:
zk項目方將證明生成任務提交給代理人(代理人),今晚的工作將證明任務轉發至驗證網路。這些代理人開始將由Cysic官方運行,後續將引入資產質押,讓任何人成為成為代理人; Prover接受證明任務,並使用硬件生成ZK證明,證明者需要質押Token來參與證明任務的承包,完成證明任務後將獲得獎勵; 驗證者委員會負責檢查Prover生成證明的有效性並進行投票,當達到一定的票數後,證明將被認為有效。驗證者透過質押Token加入委員會,參與投票並獲得獎勵,這個過程可以結合EigenLayer的AVS概念,復用現有的重新測試設施。
其詳細交互過程如下:
其實無論是上面的流程中的某個點,是資產質押還是激勵分配,以及計算任務的提交等動作都依賴於某個特定平台,這就需要有區塊鏈作為專用設施。
為此Cysic Network搭建了一條獨特的公鏈,採用了一種獨特的認知演算法,稱為計算證明(PoC),其基本原理是基於VRF函數和Prover的歷史表現,例如設備的可用性、提交證明次數、證明正確率等等,來選擇出塊人負責出塊(註:這裡的區塊應該是用來記錄各台設備的資訊並分發Token激勵)。
當然,在ZK礦池和SaaS平台之外,Cysic基於不同硬體的ZK加速方案上都進行了大量佈局。接下來讓我們分別了解在GPU、FPGA和ASIC三條路線上的成果。
GPU、FPGA和ASIC
ZK硬體加速的核心將提供一些關鍵的配件配件化。而從硬體的功能特性來看,CPU為了實現最大的靈活性和通用性,晶片中很大一部分都用於提供控制功能和初始緩存,這導致其運算能力較弱。
在GPU佔用方面,首先磨損的晶片面積比例大幅提高,這使得能夠支援大規模的晶片處理。現在GPU已經非常普及,例如Nvidia Cuda等庫可以幫助開發人員利用GPU的晶片性,而消耗了解底層硬件,透過CUDA SDK可以封裝CUDA ZK庫加速MSM和NTT裝甲。
FPGA則由大量小型處理單元組成,要對FPGA進行編程,需要使用專門的硬體描述語言,再編譯為電晶體電路組合。所以FPGA其實是直接用電晶體電路實作特定演算法,而不是需要經過指令系統的編譯。這種客製化性和靈活性遠勝於GPU。
目前FPGA價格大約只有GPU的三分之一,且能源效率可以比GPU高出十倍以上。這種顯著的能源效率優勢部分原因在於GPU需要連接到主機設備,而主機設備通常消耗大量電力。可以說,FPGA可以在不增加晶片的情況下,增加更多的磨損模組來滿足MSM和NTT的需求。這使得FPGA特別適合計算密集、需要高資料吞吐量和低迴應時間的ZK演示場景。
然而,FPGA 最大的問題是鮮少有開發人員具備程式設計經驗,對於ZK專案方而言,組織一個既擁有密碼學專業知識、同時擁有FPGA 工程專業知識的團隊面臨著巨大的困難。
而ASIC實際上是用硬體來實現某個程序,一旦設計完畢,硬體就無法更改,相應地,ASIC能夠執行的程序自然也無法更改,只能使用特定任務。 上述的FPGA在MSM和NTT方面的硬體加速優點,ASIC也同樣配備。而由於專用的電路設計,ASIC在所有方案裡都是滿足最高、功耗最小的。
對於目前主流的ZK電路,Cysic希望論證時間能夠達到1 – 5秒的速度,想要達到這個目標,只有ASIC能夠實現。
雖然這些優點聽起來非常吸引人,但ZK 技術正在快速發展,而ASIC 的設計和生產週期通常需要1-2 年,成本高達1000-2000 萬美元。因此,必須等到ZK 技術足夠穩定,才能開始大規模的生產,群體生產出的晶片很快就過時了。
為此,在GPU和FPGA、ASIC這三個領域,Cysic都做了充分的佈局;
在GPU加速方案層面,隨著各種新型ZK證明系統的誕生,Cysic基於自研的CUDA加速SDK對它們進行了改裝,並透過聚攏社區資源的方式,在Cysic的GPU算力網絡中鏈接了數十萬張頂級算力顯示卡,同時Cysic CUDA SDK比最新的開源框架提速了50%-80%甚至以上。
在FPGA上,Cysic透過自研方案,完成了全球最快的MSM、NTT、Poseidon Merkle tree等模組的實現,涵蓋了ZK計算結構的部分,並且該方案經過了多個頂級ZK專案的原型驗證。
Cysic自研的SolarMSM可以在0.195秒內完成2^30規模的MSM計算,而SolarNTT可以在0.218秒內完成2^30規模的NTT計算,是目前所有公開的FPGA硬體加速結果中性能最高的。
而在ASIC領域,雖然距離ZK ASIC的大規模應用還有一定的距離,但Cysic已經提前佈局了這種幅度,並推出了自主研發的ZK DePIN晶片和設備。
為了吸引C端用戶,並滿足不同ZK專案方面對效能和成本的要求,Cysic將推出兩款ZK硬體產品:ZK Air和ZK Pro。
ZK Air 的大小與充電寶、筆記型電腦電源相近,普通用戶可以直接透過Type-C 介面將其連接到筆記型電腦、iPad 甚至手機上,為特定的ZK專案提供算力支援並獲得獎學金。 目前ZK Air 算力仍超越消費級顯示卡,可以加速小規模的ZK證明生成任務。
ZK Pro則源自於傳統礦機,力算達到了多塊頂級消費級顯示卡互聯GPU伺服器的效果,能夠大幅加速ZK證明的生成,適用於大型ZK項目,如ZK-Rollup和ZKML(零知識機器學習) )。
透過這兩台設備,Cysic最終將建立一個穩定可靠的ZK-DePIN網路。目前這兩台設備仍在研發中,預計2025年上市。
另外,透過Cysic Network,C端用戶能夠以非常低的存款加入到zk硬體加速市場,加上ZK專案方對算力的大量需求,這可能使市場再次掀起一波類似於比特幣挖礦一樣的熱潮,ZK計算領域的市場規模可能將再次爆發式成長。
參考
https://medium.com/amber-group/need-for-speed-zero-knowledge-1e29d4a82fcd
https://figmentcapital.medium.com/acceleating-zero-knowledge-proofs-cfc806de611b
資訊來源:0x資訊編譯自網際網路。版權歸作者極客Web3所有,未經許可,不得轉載