我們研究了ZK 的技術史發現下一個千億應用蘊藏其上

加密世界的焦點經歷了比特幣、以太坊、DeFi、NFT、元宇宙和Web3的多次變遷,唯獨缺少對加密技術本身的關注,除了比特幣的橢圓曲線加密算法(ECC)還算有一點大眾認知度,其他加密算法基本停留在研究員和開發者的自嗨中。

R3PO認為這不夠去中心化,會嚴重阻礙Web3的進一步擴展,密碼學是區塊鏈的基礎件,不應該被少數人掌握,而應走向更廣闊的領域。

R3PO希望能用新的書寫範式去闡述術語的含義,兼顧專業性和可讀性,致力於為機構投資者、項目方發現潛藏在發展中的投資機會、創業方向和切入點,尋找到未被發掘的α收益。

近期大熱的零知識證明技術仍是一個不斷發展、不斷革新的細分領域,但其技術本身又具備足夠廣闊的應用場景,因此對其進行全景梳理顯得十分重要。

零知識證明技術(Zero-Knowledge Proof)並非新概念,細細梳理可知,迄今已經經過40年的發展,誕生出多種模型和應用。

進入Web3時代,早在2017年,V神便已經註意到ZK技術在以太坊上的使用潛力,而最近Starkware獲得1億美元的融資使其總融資額度達2.25億,這代表機構是以公鏈級別的估值和潛力來看待ZK技術。這將是一個長期鏖戰的領域,會暴露出更多的投資機會。

向後推演20年,R3PO認為ZK發展至少具備一個甲子的生命長度,因此描繪整個ZK的發展歷程需要追本溯源,以更好地釐清其發展邏輯,尋找到下一步的潛在機會。

本系列首篇將會從零知識證明起步,超越ZK只能應用於L2領域的固有觀念,帶給大家全新的系統性認知。

零起步:ZK的組裝過程

1982:財不外露,便分高低

對於財富的追求自古有之,項羽就說過:“富貴不還鄉,如衣錦夜行”,但太多的財富會引人覬覦,有沒有一種辦法,在既不暴露財富數量的同時又比較出財富的多寡呢?

1982年,後來的圖靈獎得主姚期智便設想過這個問題,這就是著名的百萬富翁問題,省略其數學過程,其大致運作模式如下:

  • Alice和Bob選擇代表自己財富數量的數字i和j,取值區間在1-10之間;

  • Alice對i進行單向加密,並將加密後的結果k發送給Bob,Bob得到一個與i相關的新值;

  • Bob對k進行運算後會得到一個新值m,並將其傳遞回Alice此時,Alice可以判斷m和i的關係。

  • 這個過程可以繼續推演,雙方可在不完成信息暴露的前提下最終完成比較。

當然,以上過程並不全面,但足以說明一個問題,我們確實可以在兩方之間,並且在不暴露信息的前提下進行計算,如果將兩方擴展至多方,將區間擴展至更大範圍,那麼這就是典型的多方安全計算MPC (Secure Multi-party Computation) 問題。

百萬富翁問題是ZK討論的一個起點:

  1. 在不暴露財富信息的前提下,符合零知識的定義;

  2. 在不借助第三方進行評估的條件下,考察的是兩者或者參與方之間的直接交互。

1985:零知識證明面世

1985年,Goldwasser、Micali和Rackoff首次提出Zero-Knowledge Proof模型,準確而言是“交互式零知識證明”模型,簡單而言就是允許在多次交互的前提下,通過ZK技術來驗證真假、大小。

此處的零知識並不完全準確,以Alice和Bob的互動為例,Alice和Bob可以互為驗證者和證明者,但是兩者間傳遞的信息不能和財富數量本身有關,這裡的零知識是指相關性為零,而並非不傳遞信息。

而交互式指的是可以多次進行交互,這個過程可以反復進行,直至得出正確結果。

至此,目前所熟知的ZK技術邁出了成型的第一步,接下來的一切發展,都是在其上的刪減增改。

1991:非交互式零知識證明

當時間來到1991年,Manuel Blum、Alfredo Santis、Silvio Micali和Giuseppe Persiano提出非交互式零知識證明,聞名即可知,此次升級重點是進行非交互式的證明過程,也就是在雙方之間不進行交互的同時,驗證一個定理、假說的真偽性,這看似很反直覺,但是有一個絕妙的例子可以說明:

  • Alice和Bob財富自由後變身數學家。 Alice離開web2去環遊web3,期間Alice繼續ZK研究。

  • 我們假設Alice能夠在發現一個新定理的證明時,給Bob寫一張明信片,證明她在研究中取得了新進展。

  • 這是一個非交互式的過程,準確的說,它是一個單方向的互動:只從Alice到Bob。即使Bob想回答,他也不可能。因為Alice沒有穩定的(或可預測的)地址,在任何郵件能到達她之前就會搬走。

  • 我們約定,只要Bob收到郵件,我們不需要查看郵件內容,就可以確定“Alice取得了研究上的新進展”這個命題為真。

非交互式零知識證明將交互次數減少到最多一次,可實現線下驗證和公開驗證,前者為Rollups奠定了有效性基礎,後者耦合區塊鏈的廣播機制,可避免多次計算帶來的資源浪費。

至此,我們目前見到的ZK便已經成為成熟理論模型,但此時的ZK更多是數學和密碼學領域的研究對象,和區塊鏈並無太多關聯,而在比特幣出現後,加密技術+區塊鏈才成為研究的方向,而ZK無疑是其中的佼佼者。

值得注意的是,中本聰本人並不排斥ZK技術在比特幣網絡的使用,更多的是當時的ZK技術不成熟,因此最終選擇了較為安全的ECC算法,而ZK本身可以直接應用到Layer1區塊鏈上,Zcash、Mina,以及以太坊的伊斯坦布爾升級都涉及到了零知識證明的相關領域。

一相逢:SNARK介入區塊鏈

2010-2014 Zcash: SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) 實用化場景

在比特幣網絡出現後,安全和隱私成為人們對區塊鏈的最初認知。市場上出現了一系列基於隱私的公鍊和應用,如Zerocash/Zcash使用的SNARKs,以及在Monero中使用的子彈證明Bulletproofs(BP)等。

2010年,Groth實現了首個基於ECC算法的,O(1)常數級的ZK。也即ZK-SNARKs或者ZK-SNARGs。

  • SNARGs: Succinct Non-Interactive Arguments

  • SNARKs: Succinct Non-Interactive Arguments of Knowledge

從應用角度來說,此次改進在於“簡潔”Succinct功能上,具體而言,SNARK致力於壓縮信息本身的大小,在ZCash中,程序電路是固定的,因此多項式驗證也是固定的,這使得設置只需執行一次,交易後續只需改變輸入便可複用。

在2013年,Pinocchio協議提升效率至分鐘級別證明,以及毫秒級別的驗證時間,開銷控制在300字節以內,這也是ZK-SNARKs技術真正首次落地到區塊鏈領域。

這證明了ZK技術可以在隱私場景上發揮作用,R3PO判斷後續的隱私路線會具備脫離L2單獨存在的潛力,Aztec證明了隱私DeFi路線的可行性,而在tornado被制裁後,鏈上金融隱私仍舊是強烈的剛需,這個方向的投資機會仍未被廣泛發掘,值得後續期待。

此外,隱私幣項目Zerocash進一步改進了相關算法,使用的是SCIPR Lab優化後的zk-SNARKs算法,在理論條件下,可以做到既隱藏付款來源、接受者和金額,並且交易可以控制在1KB以內,驗證時間在6ms之內。

Mina:遞歸ZK壓縮數據

Mina不同於以太坊L2,其是一條L1級別的高性能公鏈,其運行節點只有22KB,而之所以能做到如此之小,在於其大幅度利用遞歸來證明ZK確認的有效性,即每一條信息都帶有之前的確認結果。

  • Step1:zk-SNARKs證明節點有效性,只需要保存其證明結果;

  • Step2:通過遞歸調用,確保節點有效性的正確傳遞和檢索,不需要保留所有歷史數據,實現極致壓縮數據的效果;

傳遞結果的有效性,而非保存全節點數據,這是Mina證明行之有效的手段,而在以太坊L2,ZK-Rollup可以通過打包多次交易數據,結算一次的方式完成有效性證明,而進一步推演,L2之上可以疊加L3,或者Dapp應用,這些都是ZK可以發展的細分賽道,比如dYdX目前運行在Starkex之上,以及架構在Starkware之上的L2 ImmutableX,都證明ZK的使用潛力,這個賽道的價值目前仍未被全部挖掘,仍留有長期的投資價值。

至此,ZK-Rollup涉及所有的技術要件就已經基本齊備了,我們已經裝備好足夠的ZK基礎知識,並且可以總結ZK的以下特點:

  1. 非交互式:不需要多次驗證,只需一次驗證就可以廣播至全網;

  2. 零知識:不需要透露信息本身的特徵,可在全網進行公開傳播;

  3. 知識:知識不是公開、易得的信息,必須具備獨特的價值,比如經濟價值、隱私價值等;

  4. 證明:證明由數學手段確認,安全性經過多年研究和實踐檢驗;

如果將這些技術特點組合起來,我們可以發現,ZK天然適合L2擴容,並且又不局限於L2,ZK技術的其他應用會在後文中持續發表,歡迎大家繼續關注。

雙龍會:STARK終將取SNARK而代之

ZK-STARK:開發難度以10年計的種子選手

對比二者的差異,主要在於STARK中的S是Scalability之意,面向的是更加大型數據的複雜使用場景,但其整體上仍舊是一個正在發展中的技術路線。

本文不過多涉及具體L2之間的區別,但有一點很明顯,除StarkWare之外,其他的L2項目,包括zkSync、Aztec、Loopring、Scroll等都採用的是SNARKs技術路線。

究其原因,在於STARK的開發難度過大,目前只有StarkWare有能力進行自研,但其好處也十分明顯,相較於SNARK,其可承載的運算量也會更大,在運行大型數據時,其安全性會更高,比如游戲、社交、NFT等方向。

其次,STARK路線具備抗量子攻擊的特性,這在未來十年具備顛覆行業格局能力的可能,比特幣採用的ECC算法並不能完全具備抗量子破解的可能,如果加入zk-STARKs技術,其安全性會顯著提高。

可以總結以太坊L2的格局,短期Optimistic Rollup,5年後zk-SNARKs路線,10年後zk-STARK路線終將會勝出。

ZK-Rollup:數據的上探,信息的下鑽

介紹完zk-STARKs之後,L2擴容的全部技術特徵便已完備,只缺少對Rollup的介紹,實際上,Rollup利用的是ZK的驗證機制,而擺脫其對數據量的需求:在L1負責共識和結算的前提下,由L2負責應用的具體日常運營,用戶不需要和L1直接交互,其體驗會高度接近於目前的App。

更進一步的說,Rollup在完成信息的打包後,會將驗證後的信息加密成知識,隨後傳遞給L1,以攻破安全性、去中心化和擴展性的不可能三角。

總結

我們從百萬富翁問題出發,由MPC問題過渡到零知識證明領域,出於經濟原因,交互式的零知識證明不完全適用於鏈上活動,而非交互零知識證明逐漸成為主流。

隨著Zcash的發展,SNARKs技術日漸應用到其中,使ZK技術從單純的密碼學研究對像變身為區塊鏈領域中使用的工程手段,在隱私、安全、效率方面發揮自己的作用。

以太坊擴容場景,則使ZK成就了L2,Rollup技術路線戰勝其他競爭對手,zk-STARKs也逐漸發展起來,有望激活挖礦、GameFi、NFT等更為普遍的使用場景。

在以太坊之外,越來越多的新模式已經逐步湧現,比如可定制模塊化Rollup路線,又如剛完成1500萬美元融資的Eclipse,其路線圖會支持Move語言和Solona網絡,以及完成3000萬美元融資的Scroll,其希望建立EVM等效的ZK-Rollup。

新故事背後的驅動力是對ZK技術的認可,廣泛來說,ZK是一個“大而全,長而遠”的領域,大額融資消息的不斷傳出也說明市場對其接受度在逐步走高。但總體而言,這還是一個新領域,即使僅論其技術路線,也有“內捲”的流派,而其中的投資機會則長期存在,無論是內嵌入底層基礎設施,還是落地於具體應用場景,需要我們不斷去發掘。

作者:R3PO

來源:鏈捕手

Total
0
Shares
Related Posts