menu-icon
anue logo
熱門時事鉅亨號鉅亨買幣
search icon

區塊鏈

關於zkRollup硬體加速與zkPOW的思考

BlockBeats 律動財經 2023-01-19 00:00

cover image of news article
律動財經圖片



零知識證明能夠提供隱私保護、擴容、構建信任等關鍵作用,與 Web3.0 的精神相互契合,因此其應用場景如雨後春筍大量湧現。目前,ZK 的小型應用開發難度小、成本低,有較多較成熟應用;ZK 的中型應用初見雛型,現今的技術也足以滿足其性能需求;而對於大型應用而言,目前仍處於較早期的階段,仍存存在部分技術瓶頸,距離成為成熟的產品還需要一些時間。我們首先簡單盤點各類的應用場景:

小型應用場景




獨立的 ZK DAPP 是零知識證明最直接的應用場景,這類應用要證明的事項簡單、種類少、量不大,因此也較容易開發。例如: 單純的隱私支付協議、ZK 橋、身份解決方案等。




中型應用場景



這類應用較小型應用場景相對複雜一些,需要證明的情況較多,但相對於小型應用而言只是倍數的增加,這類應用如: 在數據儲存網路中證明正確性、基於 ZK 的遊戲等。

大型應用場景



zkRollup 的 Layer2 和 zkEVM 是零知識證明在 Web3 中的終極應用,用於處理一個 VM 或 EVM 中的各種可能性帶來的狀態變化。相對於小型應用的複雜程度是指數量級的增加,它們對於技術、開發工作量的要求都較高,距離達到理想中的用戶體驗還差一次技術跳躍。

零知識證明無疑是 Web3 領域中最具創新性的技術之一,零知識證明也提供了構建 Trustless 產品的絕佳技術手段。然而像人工智慧剛從學界走向業界一樣,現今的各類應用場景仍有相當多的問題與挑戰。慶幸的是,越來越多學界與業界的力量正投入這個領域。下面我們將深入探討 zk 科技樹的不同枝葉。

高效算法與成熟的開發棧是核心枝幹



一套完整的零知識算法從研究走到應用需要經過理論研究、開發工具構建與具體應用開發等階段。而其中效率問題是零知識證明應用進入下一個階段最大的瓶頸之一,這其中包含算法的效率與開發的效率。

在算法效率方面,不同零知識證明使用不同的方法表達要證明的電路、且背後基於不同的數學困難問題,這些因素都會影響算法的各項效率。具體而言,一個零知識證明算法重要的效率指標包含證明大小、證明時間、驗證時間等等,而在目前,大量的算法都能實現較短的驗證時間,各式的聚合技術也可以壓縮證明大小,而證明時間則是主要的瓶頸。

因此項目方的設計與選擇對算法效率表現顯得至關重要。不同零知識證明算法在複雜度方面會形成巨大的差異。複雜度的差異在輸入的數量級大的時候會充分反映到具體的性能差異上。



圖 1: 各種零知識證明算法

預期未來將有更多團隊在零知識證明的算法上投入更多研究精力以找到最符合項目需求特性的算法。例如 FOX 這樣的 Layer2 項目堅持設計在證明時間這項關鍵指標上達到理論下界,線性複雜度 O(C),且是對數驗證時間、無需可信設制的算法。這種算法非常適合支持一個沒有容量上限的擴容網路。

在開發方面,開發效率低下的主要原因是相關的開發棧缺失嚴重,將應用場景轉換為電路語言最終付諸算法證明的過程相當複雜:需要將前述漫長過程中的某個 (些) 部份抽象化、形成模塊化的開發工具或語言,並保持彼此之間的兼容性。完整、豐富的 ZK 開發棧便是破局的關鍵,這讓開發者能只專注於各自關注的環節,一起合作完成一個完整的 ZK 應用。



表 1: 零知識證明硬體加速面臨的問題



硬體加速助力開枝散葉



硬體加速是使零知識證明效率進一步提高、讓大型應用更接近成熟落地的關鍵。而這便涉及兩個問題: 首先是哪些運算可以加速,其次是哪些硬體可以用來加速。

對於第一個問題,不同的零知識證明主要的差異在於多項式承諾的方法,Matter Labs 採用的 Plonk、Scroll 採用的 Ultra-Plonk 等算法多項式承諾基於 KZG,因此其中的 Prover 涉及大量的 FFT 計算和 ECC 點乘 MSM 的運算用以產生多項式和承諾,這兩類計算都會帶來大量計算負擔。具體而言,MSM 有通過在多個線程上運行來加速的可能,但是需要大量內存並且即使在高度並行化時仍然很慢,而 FFT 嚴重依賴算法運行時數據的頻繁洗牌,這使得它們很難通過跨計算集群分配負載來加速。因此目前對這些運算加速都意味著高昂的成本。

此外,Starkware 研發的 STARK、FOX 研發的 FOAKS 都在 FRI 的過程中主要涉及哈希運算。雖然也有 FFT,但量不大。因此這兩種算法可以使用硬體加速來提升運算的效率。



在硬體層面主要有 GPU、FPGA、ASIC 三種選擇,各有不同的特性:



-GPU:GPU 能夠通過一定的算法,加速並行計算。使用 GPU 加速的效果取決於具體的算法,例如在 FOX 的使用的 FOAKS 算法沒有大量的 FFT 和 MSM 運算,且其 ZKEVM 設計中本身就包含大量可以並行計算的部分,便能通過 GPU 獲得較大的效率提升。



-FPGA:FPGA 是可編程的集成電路,因此開發者能夠通過針對於 ZK 算法定製化優化礦機。



-ASIC:ASIC 是為特定用途專門定製的集成電路晶片。但是 ASIC 由於過於定製化,需要的時間和成本也會更多,也許硬體的迭代伴隨著行業規模的增大,逐漸朝着 ASIC 方向發展,但是不會一步到位。在比特大陸等專業硬體廠商進入這個領域之後,ASIC 或成為主流選項。



這三種硬體不同的特性也使其有不同的機會。短期看 GPU,中期看 FPGA,長期看 ASIC。以太坊轉為 PoS 後,GPU 算力將會流向可以吸納這些算力的網路,而沒有大量 FFT 和 MSM 運算且對並行運算友好的網路將會成為他們的首選。FPGA 的可編程性在中期具備一定的優勢,尤其是在算法更迭快速、技術路線還不穩定的時期。ASIC 路線意味著更高昂的成本,但能帶來更高的效率提升。從長遠看大型硬體廠商勢必進入這個賽道並毫無疑問會選擇 ASIC 作為其主打晶片類型。

 

zkPOW 機制設計錦上添花

最後,有了完整的軟硬體,機制設計便是使其穩定運行與進步的最後一步。各個 zkRollup 項目在初期的 Prover 通常都會更接近傳統的中心化服務:部署在雲上,並由項目方獨享這部分的收益。但是在 Web3 的敘事下,未來 Prover 的工作勢必往去中心化的方向發展,而這樣的發展也有以下的優點:

將有更多人可以分享證明生成算力,分享收益與項目利益綁定。這種激勵機制將出現更加本地化的算力,從而與項目方和基金會共同建造並壯大生態系統。



一個好的去中心化的機制會帶動更大的力量推動技術進步,讓更多各方的專家投入精力研究讓系統效率不斷進步,讓用戶獲得更好的體驗。



去中心化的機制將能更好的適應需求的動態變化。



但是證明過程的去中心化有相當多的挑戰,例如去中心化後各方該通過甚麼樣的共識合作、應該在證明過程中的哪個層面分配去中心化的任務、如何保持通信的效率與避免可能的攻擊行為等等。



儘管如此,一些理想的可能解決方案已經被刻畫在部分項目的願景中,例如在 FOX 的設計中便包含了一個 zkPOW 的方案,這個方案能夠達成以下目標:



通過引入隨機性實現算力提升: 生成零知識證明的計算和傳統 POW 的計算不一樣,在沒有引入隨機性的場景下,具有最高算力的一方將永遠都能獲得生成證明的獎勵,從而導致其他各方退出,而獲得壟斷後這個算力提供者也不再有動機提升算力,失去去中心化的初衷。

通過引入算力收益算法實現分配公平: 一個公平分配的方案將使得長期而言,各個算力提供者的期望收益與其算力成正比,這意味著這個方案將讓 zkMiner 如 PoW 機制下一樣,可以通過投入算力以獲取收益,並難以通過非法手段獲取超額激勵收益。長期而言,公平的算力收益算法也能保證系統中算力提供者數量的穩定性,同時也意味著更高的抗攻擊能力。



FOX 的 zkPOW 設計中,在第一個證明被提交隨後的一個時間窗口內提交證明的參與者都可以獲得不年增率例的激勵,同時,通過引入隨機性使得每次證明的提交內容都不相同,這意味著每次證明的提交背後都必須經過完整的證明計算。而通過仔細設計的比例分配,將使得各個參與者的期望收益與其算力成比例,對各個參與者提高計算效率產生正向激勵,最終使得項目的用戶都將因此受惠,享受更安全、更快、成本更加低廉的 zkRollup 服務。

 

原文連結

暢行幣圈交易全攻略,專家駐群實戰交流

▌立即加入鉅亨買幣實戰交流 LINE 社群(點此入群
不管是新手發問,還是老手交流,只要你想參與虛擬貨幣現貨交易、合約跟單、合約網格、量化交易、理財產品的投資,都歡迎入群討論學習!

前往鉅亨買幣找交易所優惠

文章標籤


Empty