我們正在過渡到一個時代,在這個時代中,曾經(jīng)被視為不可動搖的中心化機構(gòu)越來越受到懷疑。盡管像谷歌、Twitter和Meta這樣的中心化巨頭擁有策劃和審查的權(quán)力,但明顯變革的風潮正在醞釀中。
零知識的本質(zhì)
中本聰(Satoshi)精心構(gòu)建了一種巧妙的解決方案,來解決古老的拜占庭將軍問題,這個問題本質(zhì)上是關(guān)于分散式的實體如何達成共識或真相的。這一突破是什么呢?它就是工作證明(PoW)共識算法。全球的礦工們現(xiàn)在可以調(diào)整他們的經(jīng)濟利益,從而誕生了一個全球性的共識系統(tǒng)。比特幣還使用戶能夠控制他們的私鑰并獨立驗證交易,引領(lǐng)了一個真正去中心化的托管生態(tài)系統(tǒng)。
以太坊則通過權(quán)益證明(PoS)共識機制為這一領(lǐng)域帶來了一個新的變革,該機制依賴于驗證者的激勵和處罰來維護網(wǎng)絡(luò)的安全和和諧。
分布式賬本通過在每個網(wǎng)絡(luò)節(jié)點上重新執(zhí)行計算來強制執(zhí)行正確性,這就好比為了驗證一個單詞而閱讀整本書。這種方法導致了一種計算效率低下的體系結(jié)構(gòu),其中每個節(jié)點都必須下載最新的區(qū)塊并執(zhí)行完整的交易集以驗證其與區(qū)塊的一致性。
開放計算不僅資源密集,還暴露出一個軟肋:缺乏隱私。這個漏洞被MEV剝削者所利用,他們操縱交易順序以謀取個人利益。
認識到這些挑戰(zhàn),區(qū)塊鏈社區(qū)將注意力轉(zhuǎn)向提升可擴展性和隱私性。這導致了zk-密碼學的探索,特別是像zk-SNARK(零知識簡潔非交互知識證明)和zk-STARK(零知識可擴展透明知識證明)這樣的技術(shù)。雖然這些技術(shù)在細節(jié)上有所不同,但讓我們將其留待以后,看一個簡化的解釋。
從本質(zhì)上講,零知識證明允許某人(證明者)向一個不信任的方(驗證者)證明他們擁有特定的知識,而不泄露有關(guān)這一知識的任何細節(jié)。
零知識證明具有兩個基本特性:
1. 簡潔的數(shù)據(jù)和省時:驗證證明的效率高于直接檢查原始數(shù)據(jù)。
2. 隱私:沒有把正在被驗證的數(shù)據(jù)、內(nèi)容,透露給驗證者。
盡管這項技術(shù)誕生于1990年代,但最初的應(yīng)用主要局限于隱私解決方案。IBM于2010年利用ZK創(chuàng)建了其身份混合器Bluemix,而微軟的選舉保護工具則利用ZKP(零知識證明)來實現(xiàn)可驗證的私人選舉。
ZKP的能力可以緊湊地驗證鏈下計算,已經(jīng)激發(fā)了針對像以太坊這樣的平臺擴展的研究。去年,超過7.25億美元的資金流入了用于區(qū)塊鏈的ZK技術(shù),突顯了其日益重要的地位。
雖然ZKP的數(shù)學復(fù)雜,但開發(fā)人員可以像使用公鑰密碼一樣將ZK密碼學整合到應(yīng)用程序中。持續(xù)的研究側(cè)重于開發(fā)最先進的證明者和驗證者,強調(diào)高效生成證明和快速驗證它們。
區(qū)塊鏈依賴于關(guān)鍵的鏈下數(shù)據(jù),如資產(chǎn)價格或來自其他區(qū)塊鏈的信息。傳統(tǒng)上,鏈外數(shù)據(jù)源(或acles)如Chainlink扮演了可信賴的數(shù)據(jù)傳輸角色,利用一組在經(jīng)濟上受激勵的驗證者來確保數(shù)據(jù)的準確性和完整性。
ZKP為加密經(jīng)濟學領(lǐng)域增加了新的信任維度。使用ZKP,這些應(yīng)用程序可以無可辯駁地證明鏈下數(shù)據(jù)和計算的合法性,充當了區(qū)塊鏈之外的警惕 “ 監(jiān)督者 ” 。
ZK格局:擴展
通用Rollups
隨著以太坊的快速增長,ERC20代幣和ERC721 NFT的交易成本經(jīng)常飆升至5到15美元的范圍,這促使我們需要重新考慮在不影響去中心化的前提下如何實現(xiàn)可擴展性。
進入Rollups時代:以太坊戰(zhàn)略性地轉(zhuǎn)向了一個模塊化、以Rollup為中心的框架,包括三個不同的層次:1)數(shù)據(jù)可用性(DA)層、2)執(zhí)行層、3)結(jié)算層。
目前有兩種類型的Rollup正在研發(fā)中:Optimistic Rollup(樂觀匯總)和ZK Rollup(零知識證明匯總),它們提供了Layer 2的擴展解決方案,可以在以太坊鏈外執(zhí)行交易并在以太坊鏈上結(jié)算,繼承了其安全性。
這兩種類型都依賴于序列化程序來接收用戶交易,將它們匯總成批次(每批交易可以包含100筆交易),并生成證明以承諾到以太坊主網(wǎng)。樂觀匯總(Optimistic Rollup)依賴于監(jiān)視程序來在爭議解決窗口內(nèi)發(fā)現(xiàn)欺詐交易,而ZK Rollup使用有效性證明來確保交易的有效性,無需在鏈上進行驗證。
執(zhí)行層:執(zhí)行和狀態(tài)存儲發(fā)生在與Rollup特定的虛擬機(VM)中。每個ZK Rollup都有一個排序器,用于編排交易,以及證明者,用于制作驗證中間計算的證明。這些“有效性證明”和使用最少的數(shù)據(jù),然后被提交到以太坊主網(wǎng)上驗證智能合約。
大多數(shù)ZK Rollup兼容以太坊虛擬機(EVM),以支持以太坊的智能合同。這種靈活性允許開發(fā)人員將基于以太坊的應(yīng)用程序順利遷移到第2層(L2)平臺。然而,仍然存在挑戰(zhàn),包括證明效率、區(qū)塊鏈性能和操作碼兼容性。
存儲層面:就存儲而言,大多數(shù)Rollups,包括Polygon的zkEVM、Scroll、zkSync Era和Linea等,更傾向于將數(shù)據(jù)以壓縮格式推送到以太坊calldata中。這種方法保證了活躍性,使用戶能夠從以太坊重新創(chuàng)建狀態(tài)并在需要時繞過Rollup。
Block unicorn注釋:"calldata" 是以太坊智能合同中的一種數(shù)據(jù)區(qū)域。它是一個特殊的用于存儲輸入數(shù)據(jù)的區(qū)域,包括在調(diào)用合同函數(shù)時傳遞的參數(shù)。這些數(shù)據(jù)通常是只讀的,意味著它們不能被修改,而只能用于讀取。在以太坊上,開發(fā)者通常使用 "calldata" 區(qū)域來處理合同函數(shù)的輸入?yún)?shù),而 "storage" 區(qū)域用于存儲合同狀態(tài)。
然而,一些zk-Rollups,如Starknet的Validium、Matter Lab的zkPorter和Polygon的Miden,將它們的數(shù)據(jù)存儲在由數(shù)據(jù)可用性委員會(DAC)保護的不同DA層上。EigenDA和Avail等解決方案體現(xiàn)了這種方法,旨在提高吞吐量,同時仍然享受以太坊區(qū)塊鏈的安全保障。
EigenDA計劃將吞吐量擴展到每秒10兆比特(Mbps)
結(jié)算層:ZK Rollups將新的Rollup狀態(tài)以及“有效性證明”提交到以太坊上的驗證智能合同。這些驗證器檢查有效性證明,以確保離線虛擬機中的狀態(tài)轉(zhuǎn)換的正確性,并記錄新的狀態(tài)轉(zhuǎn)換。
驗證過程可能需要大量資源,單個證明的Gas成本在30萬到500萬之間。驗證時間也可能較長,大約10秒。Rollups(匯總)通常會定期將證明發(fā)布到第1層以通過批次處理交易來降低每筆交易的成本。
ZK證明無法用于Rollup內(nèi)部的共識或交易排序。通常,根據(jù)它們的個人規(guī)則集,序列生成器會做出共識決策,其中許多遵循首次見到的原則。正在努力去中心化序列生成器,其中一些正在實施,像Espresso這樣的共享排序生成器。
基于MEV的Rollup
正如我們之前討論的,與L2 EVM(二層虛擬機)一起工作時存在一些挑戰(zhàn),這可能會限制計算效率。以太坊的本機函數(shù),如哈希函數(shù),通常與ZK技術(shù)不兼容,因為它們具有資源密集型的特性。ZKSync移除了對其中一些操作碼的支持,因為他們意識到其中大多數(shù)成本都來自這些昂貴的操作。
與專注于以太坊指令集的EVM不同,基于zkVM的Rollup(匯總)提供了運行廣泛的與不同計算機架構(gòu)兼容的軟件的靈活性。這些虛擬機具有更廣泛的能力,可以運行不同的計算機指令,比如RISC-V和WebAssembly,并生成用于計算的ZKP。
Starknet是zkVM-based rollup領(lǐng)域的先驅(qū)。它開發(fā)了Cairo,一種專門的低級編程語言,更接近匯編語言。Polygon的Miden使用自己的匯編語言,更接近Move,而Delphinus和Fluent則致力于基于WASM語言的rollups。Fluent和ZKM允許開發(fā)人員使用通用編程語言,如Rust、TypeScript、C/C++、Go等構(gòu)建應(yīng)用程序。
zkVM-based rollups通過促進構(gòu)建應(yīng)用程序,重新定義了Ethereum的能力,這些應(yīng)用程序在傳統(tǒng)賬戶系統(tǒng)(以太坊賬戶系統(tǒng))中很難開發(fā)。使用zkVM-based rollup的解決方案,可以更加輕易的開發(fā)應(yīng)用程序。
例如,Miden采用了一種基于客戶端的證明模型,其中每個賬戶充當智能合同,用戶負責在其客戶端設(shè)備上創(chuàng)建ZKP。然后,這些ZKP被提交到Miden rollup以更新全局狀態(tài)。這種方法允許事務(wù)的并行執(zhí)行并增強隱私,因為諸如代幣轉(zhuǎn)賬和NFT交換等操作可以在不影響公共狀態(tài)的情況下進行。
Rollup框架
多個團隊已經(jīng)著手簡化零知識(ZK)Rollup的開發(fā),為更多的開發(fā)者敞開了大門。這些創(chuàng)新的框架為開發(fā)者提供了一套全面的組件,包括排序器、驗證者、數(shù)據(jù)可用性(DA)層、共識層。
利用這些框架的開發(fā)者能夠獲得一個重要的優(yōu)勢,繼承以太坊的強大安全性,同時保留了自主選擇的自由。他們可以選擇部署本機代幣或利用以太幣(ETH),并具有靈活性,可以與外部驗證者互動或?qū)嵤┳远x驗證者規(guī)則。
Sovereign Labs和Polygon正在積極開發(fā)軟件開發(fā)工具包(SDK),使任何人都能創(chuàng)建具有預(yù)定義規(guī)則集和強大流動性互操作性的ZK第2層(L2)Rollup。
Lumoz采用全面的方法,通過專用的工作證明(PoW)共識、專用的證明網(wǎng)絡(luò)和與其他Rollup的通信渠道,為開發(fā)團隊賦予對其Rollup的完全主權(quán)。
LayerN采用混合的zk-OP(OP Rollup-ZK Rollup)架構(gòu),承諾交易費用比以太坊便宜一千倍。
Eclipse最近發(fā)布了一個通用的L2,作為一個示范,結(jié)合了不同的模塊化元素——Solana的執(zhí)行機器將DA發(fā)布到Celestia,并使用Risc0生成ZK證明以在以太坊上結(jié)算。這些實驗推動了模塊化論點的發(fā)展,旨在將Solana的高性能以太坊虛擬機(EVM)與以太坊的安全性相結(jié)合。
匯總即服務(wù)
Rollups-as-a-Service (RaaS)簡化了Rollup框架和軟件開發(fā)工具包(SDK)的情況,提供了一個抽象層,便于輕松部署、維護和創(chuàng)建定制的、適用于生產(chǎn)的應(yīng)用特定的Rollup。
RaaS將開發(fā)人員從基礎(chǔ)設(shè)施管理和監(jiān)控網(wǎng)絡(luò)性能的復(fù)雜性中解放出來,使他們能夠?qū)W⒂跇?gòu)建應(yīng)用程序?qū)印T?jīng)需要大量工程時間的任務(wù)現(xiàn)在變成了一個簡單的10分鐘、無代碼部署過程。
可以將它們視為Rollup的AWS(亞馬遜云服務(wù)),簡化了Rollup的部署和開發(fā)過程。
借助Vistara和Gateway等平臺,用戶可以自由組合各種模塊化組件,僅需幾秒鐘即可創(chuàng)建符合其需求的個性化Rollup(Vistara和Gateway可以被作為創(chuàng)建Rollup公鏈的機會)。
這種模塊化方法使開發(fā)人員能夠精確地打造與其獨特目標完全一致的ZK Rollup。從執(zhí)行虛擬機(VM)和數(shù)據(jù)可用性(DA)層到排序器、橋接器和證明器,開發(fā)人員可以靈活選擇適合其需求的組件。
專用Rollup
盡管通用Rollup技術(shù)有了很大發(fā)展,但由于競爭L2區(qū)塊空間和不斷上升的L1批量發(fā)布成本,擴展存在限制。特定的dApp需要定制功能,比如DeFi需要快速最終性,游戲需要低延遲,企業(yè)區(qū)塊鏈需要隱私,這需要應(yīng)用特定的Rollup技術(shù)。
在這方面,Starknet的生態(tài)系統(tǒng)走在前列,已處理了超過4.18億筆交易,應(yīng)用如dYdX、Sorare和Immutable利用了基于Starkware的Starkex技術(shù)構(gòu)建的特定應(yīng)用Rollup。Starknet的操作員聚合交易,將它們分批處理,并向以太坊主鏈提供ZK證明,以確保安全性和降低成本。
Loopring,一種ZK Rollup技術(shù),專注于DeFi用例,提供了類似Block Trade的功能,可以實現(xiàn)CEX級別的流動性即時執(zhí)行。Myria,另一種ZK Rollup技術(shù),專注于游戲應(yīng)用,強調(diào)低交易成本。最近,Canto宣布正在遷移到一個專注于使用Polygon的鏈開發(fā)工具包的L2,用于處理現(xiàn)實世界資產(chǎn)。
隱私
隨著Web3技術(shù)迅速擴展,吸引了數(shù)百萬用戶,隱私問題仍然存在,特別是對于機構(gòu)、銀行和企業(yè),它們經(jīng)常發(fā)現(xiàn)自己受法律要求的約束,必須保護其金融交易。
ZK證明增加了一種保護機制,這是最早由zCash推廣的初始用例。Zcash使用zk-SNARK來證明交易有效,而不揭示有關(guān)發(fā)送方、接收方或交易金額的任何信息。錢包余額不以明文形式存儲,而是存儲為“承諾注釋”。
這種加密技術(shù)允許用戶隱藏其交易的詳細信息,同時仍然證明他們擁有足夠的資金并遵循協(xié)議的規(guī)則:
價值隱私:它確認了進入交易(輸入)的總硬幣數(shù)量等于離開交易(輸出)的總硬幣數(shù)量,而不揭示實際數(shù)量。
支出權(quán)限:它通過一種密碼學方法證明了發(fā)送方有權(quán)使用他們擁有的特定輸入,這樣就確認他們有權(quán)限花費這些代幣,這有助于防止未經(jīng)授權(quán)的人消費這些代幣。
防止雙重支付:它證明了代幣以前沒有被花費,從而防止雙重支付。
隱私導向的L1協(xié)議
許多協(xié)議,如Aleo、Aleph Zero、Ironfish和Mina,正在進一步拓展界限,專注于重視隱私的第一層解決方案。與以太坊的基于賬戶的框架不同,這些協(xié)議采用了比特幣的未花費交易輸出(UTXO)模型的修改版本。
共識模型:這些以隱私為中心的協(xié)議都采用不同的共識模型。例如,Aleo采用可持續(xù)的工作證明(SPoW)機制,其中“工作”涉及生成zk證明,而不是資源密集型的挖礦。Ironfish采用類似比特幣的工作證明(PoW)模型,僅通過挖礦生成代幣,沒有首次代幣發(fā)售(ICO)。最初設(shè)計為第一層(L1)解決方案的Aztec已過渡到第二層(L2)框架,定居在以太坊網(wǎng)絡(luò)上。
重新定義網(wǎng)絡(luò)層:除了共識,這些協(xié)議重新構(gòu)想了網(wǎng)絡(luò)層,倡導點對點數(shù)據(jù)交換以最大程度保護隱私。例如,Ironfish使用WebRTC和WebSockets的組合與節(jié)點建立連接。用戶可以建立直接連接,進行交易,創(chuàng)建用于驗證規(guī)則遵守的zk證明,然后在區(qū)塊鏈上結(jié)算交易,同時保護他們的隱私。
專注隱私的L2解決方案
與此同時,諸如Aztec和Ola等項目致力于通過啟用具有私人賬戶和加密交易的ZK Rollups來增強以太坊網(wǎng)絡(luò)的隱私保護。這兩個項目都在開發(fā)自己的zkVM,非常注重管理私人賬戶,而不僅僅關(guān)注以太坊的兼容性。
ZK應(yīng)用程序
應(yīng)用程序利用ZKP的隱私能力,將信任引入到鏈下數(shù)據(jù)和計算中。我們可以將大多數(shù)用例總結(jié)為以下幾類:
a. 保密的秘密分享:ZK技術(shù)賦予用戶通過無需信任的結(jié)算層機密地分享秘密的能力。知名的應(yīng)用程序,如zkMail和zkVoting協(xié)議,促進端到端的加密數(shù)據(jù)共享,確保強大的隱私。
b. 鏈上保密身份:ZK應(yīng)用程序使用戶能夠以可組合的方式創(chuàng)建鏈上的保密身份,超越了傳統(tǒng)數(shù)據(jù)混淆方法(如混合)的限制。
c. 鏈下安全保證:利用ZK技術(shù)提供了強大的鏈下安全保證,確保了大量鏈下數(shù)據(jù)和計算的完整性和預(yù)期狀態(tài)。
d. 互操作性信任:由ZK技術(shù)支持的預(yù)言機和橋梁在將鏈下數(shù)據(jù)橋接到區(qū)塊鏈網(wǎng)絡(luò)時起著關(guān)鍵作用,維護了加密完整性。
隱私中間件
與創(chuàng)建具有本機隱私功能的全新區(qū)塊鏈不同,隱私中間件協(xié)議將隱私機制引入現(xiàn)有的區(qū)塊鏈網(wǎng)絡(luò)中。這些平臺引入了一個隱私層,充當用戶地址和匿名或“隱身”地址之間的中介,提供了一種實際的隱私增強方法。
Tornado Cash受到Zcash隱私模型的啟發(fā),部署了一個基于以太坊的智能合同,用于管理存儲在隱身地址中的用戶余額。使用零知識證明,該協(xié)議驗證每筆交易的完整性,確保用戶不能在混合資金后提取超出其帳戶余額的資金。然而,Tornado Cash面臨了法規(guī)挑戰(zhàn),因為惡意行為者濫用其隱私功能進行非法活動。
為了遵守法規(guī),行業(yè)領(lǐng)袖如Vitalik Buterin和Ameen Soleimani正在推動下一代隱私池模型,平衡了強大的隱私和法規(guī)遵從性。這些模型探索了各種方法:
黑名單篩查:能夠禁止來自FATF(金融行動特別工作組)黑名單上地址的存款,確保協(xié)議只用于增強隱私的合法活動。
用戶控制的查看密鑰:用戶保留只讀密鑰,可以選擇性地與監(jiān)管機構(gòu)共享。這些密鑰驗證資金來源和稅收義務(wù),同時確認資金不來自黑名單地址。
服務(wù)器控制的查看密鑰:在這種設(shè)置中,協(xié)議保留查看所有用戶資金和交易的能力,為了增強合規(guī)性,向監(jiān)管機構(gòu)提供選擇性的披露。
像Panther和Railgun這樣的平臺提供了被保護的代幣,這些代幣是通過將資金存入這些平臺來獲得的,以獲得可以在以太坊、BSC、Polygon、Solana等區(qū)塊鏈上使用的被保護資產(chǎn)。
Nocturne利用多方計算(MPC)和賬戶聚合器(AA)來創(chuàng)建一個隱形地址層。與鑄造zk資產(chǎn)不同,這些地址是用于與協(xié)議進行交互的。用戶將資金存入存款管理器,該管理器混合所有用戶資金并為每個應(yīng)用程序交互提供隱形地址。DApp永遠無法訪問這些地址的來源,從而增強了隱私。
Nocturne的存款篩選器在批準交易之前檢查合規(guī)性
DEX
為了滿足機構(gòu)領(lǐng)域?qū)Π踩碗[私資產(chǎn)交易日益增長的需求,開發(fā)團隊正在積極探索基于零知識技術(shù)的去中心化交易所(DEX)。與自動做市商(AMM)不同,基于零知識技術(shù)的DEX采用訂單簿,提供了一系列優(yōu)勢,包括增強的流動性、免費的交易、無限的交易對、多樣的訂單類型和用戶友好的界面。
讓我們以Brine為例,Brine采用了一種混合模型,有效地將其運營分為鏈下和鏈上兩個部分:
鏈下部分:在鏈下部分,Brine管理錢包數(shù)據(jù)和所有訂單和交易的實時狀態(tài),這個鏈下組件在高效執(zhí)行訂單和維護最新訂單簿方面發(fā)揮著關(guān)鍵作用。
鏈上部分:鏈上部分處理狀態(tài)承諾和系統(tǒng)資產(chǎn)。為確保交易的安全性和完整性,Brine利用STARK prover,并隨后通過專用的StarkEx合同在以太坊網(wǎng)絡(luò)上驗證這些證明,以確保狀態(tài)轉(zhuǎn)換的準確性。
Brine的去中心化交易所(DEX)平臺使用StarkEx服務(wù)來批量處理證明
由于Brine的訂單存儲在鏈下,該平臺可以容納各種訂單類型,包括限價單和止損單。做市商可以提供流動性,獲得類似于中心化交易所(CEX)上看到的費用。
Brine的撮合引擎擁有出色的可擴展性,能夠處理高達60萬筆每秒的交易。這超越了通常與AMMs相關(guān)的限制。重要的是,由于只有加密證明被發(fā)布到鏈上,交易者在其頭寸方面可以享受100%的隱私。
除了Brine之外,像Zkex和Satori這樣的平臺也通過使用類似的機制,使衍生品和永續(xù)合同的交易在市場中引起轟動。
互操作性
在兩個區(qū)塊鏈之間架設(shè)數(shù)據(jù)和資產(chǎn)的橋梁通常依賴于受信任的驗證者組或受信任的多重簽名保管人,以確保數(shù)據(jù)的準確傳輸。這種依賴于外部驗證已經(jīng)導致了重大的安全漏洞,就像Nomad、Wormhole和Ronin等橋梁的遭受的入侵一樣,累計造成了超過15億美元的損失。這些傳統(tǒng)的橋梁通常依賴于外部委員會,在將資產(chǎn)鎖定在原始鏈上后,在目標鏈上鑄造相應(yīng)的資產(chǎn)。
基于零知識(ZK)的輕量級客戶端的引入提供了一個革命性的進展,這些輕客戶端使用ZK證明來驗證源鏈上的共識變化。運行整個區(qū)塊鏈的輕客戶端將需要大量計算,因此ZK橋梁將zkSNARK共識變化的證明發(fā)送到目標鏈的執(zhí)行層,目標鏈通過驗證ZK證明來驗證共識變化的正確性。這種方法顯著降低了運行節(jié)點的計算成本,實現(xiàn)了互操作性,而不依賴于信任假設(shè)。
例如,Succinct正在開發(fā)一款名為Telepathy的輕客戶端,它可以在EVM鏈上以僅30萬燃氣的消耗驗證以太坊的共識。這些輕客戶端可以支持目標鏈上的各種功能,包括:
使用Zero-Knowledge(ZK)技術(shù)允許在不同區(qū)塊鏈之間發(fā)送任意消息,這些消息可以用于協(xié)調(diào)或管理不同區(qū)塊鏈上的跨鏈部署。
讀取以太坊驗證者的權(quán)益和余額,用于Layer 2解決方案和再質(zhì)押協(xié)議。
在不依賴鎖定/鑄幣協(xié)議的情況下,在鏈之間提供流動性橋接。
從以太坊跨越目標鏈訪問Chainlink的預(yù)言機數(shù)據(jù),供Layer 2自動做市商(AMM)和DeFi協(xié)議使用。
Polyhedra和zkLink專注于在多個區(qū)塊鏈之間構(gòu)建流動性橋接。與在每個連接的網(wǎng)絡(luò)上維護自己的流動性池不同,zkLink的目標是匯總流動性并合并所有使用zkLink基礎(chǔ)架構(gòu)的dApp的代幣。這有助于提高不同區(qū)塊鏈上的流動性,使代幣能夠在各種應(yīng)用程序之間自由流通。
Oracles(預(yù)言機)和協(xié)處理器
Oracles可以分為兩種主要類型
1. 輸入Oracles- 將鏈下數(shù)據(jù)帶到鏈上環(huán)境(例如:Chainlink價格數(shù)據(jù)源)
2. 輸出Oracles- 將鏈上數(shù)據(jù)傳遞到鏈下環(huán)境,用于高級計算(The Graph)
智能合同具有固有的局限性,特別是在處理復(fù)雜的計算方面,如浮點運算、密集計算或統(tǒng)計分析。這就是輸出Oracle受到關(guān)注的地方,通過將這些計算任務(wù)卸載到外部系統(tǒng)來解決這些計算挑戰(zhàn)。
像Chainlink和The Graph這樣基于抵押的Oracle運行一組驗證者,他們會獲得獎勵,以便導入來自現(xiàn)實世界(例如CEX上的價格或天氣數(shù)據(jù))的數(shù)據(jù)并對這些數(shù)據(jù)進行計算。然而,當?shù)盅嚎傤~低于潛在的被盜價值時,會存在安全問題。黑客可以利用這種不平衡來操縱Oracle數(shù)據(jù),從而導致頻繁的攻擊和套利機會的利用。
這就是ZK Oracle發(fā)揮作用的地方,特別是在輸出Oracle領(lǐng)域。它們通過提供zk證明來驗證在鏈下執(zhí)行的計算是否按預(yù)期進行。這催生了一個新的類別,稱之為:協(xié)處理器。
HyperOracle正在通過利用專門的Oracle節(jié)點,這些節(jié)點生成了與傳輸?shù)臄?shù)據(jù)一起發(fā)送到以太坊區(qū)塊鏈上的驗證器合同的零知識(zk)證明,從而推動“無信任”O(jiān)racles的發(fā)展。
這種方法將安全模型轉(zhuǎn)變?yōu)椤?對N”的模型,即使一個節(jié)點提交了正確的數(shù)據(jù),驗證器合同也可以檢測到任何差異。這種設(shè)置保證了鏈下計算的100%計算完整性,同時將最終性降低到僅12秒,與以太坊的區(qū)塊時間相匹配。
另一個挑戰(zhàn)是Axiom提供了一種無信任的機制,用于訪問以太坊上的歷史狀態(tài)數(shù)據(jù)。由于以太坊的狀態(tài)機性質(zhì),智能合同只能訪問當前狀態(tài),并依賴于中心化的鏈下Oracle來訪問歷史狀態(tài)數(shù)據(jù)。
Axiom通過提供零知識證明來解決了這個問題,以驗證來自以太坊過去區(qū)塊的塊頭、狀態(tài)、交易和收據(jù)的真實性。
Herodotus專門提供存儲證明,這些證明本質(zhì)上是ZK證明,用于確認數(shù)據(jù)包含在L1(一層)和L2(二層)的狀態(tài)根中。開發(fā)人員可以構(gòu)建跨鏈應(yīng)用程序,例如通過在另一條鏈上提供抵押品來為另一條鏈上的貸款提供抵押品的借貸應(yīng)用,以及可以利用另一條鏈上的NFT資產(chǎn)的游戲應(yīng)用程序。
身份/個人身份證明
ZKP的隱私保證為設(shè)計身份各個方面的新加密原語創(chuàng)造了機會:位置證明、所有權(quán)證明、語音證明、教育、經(jīng)驗、醫(yī)療數(shù)據(jù)、KYC。
Sismo是這個領(lǐng)域ZKP的一個很好的例子。該團隊正在開發(fā)ZK徽章,使用戶能夠有選擇地與Web3應(yīng)用程序和其他用戶共享他們的個人數(shù)據(jù)。ZK徽章是一種與靈魂綁定的令牌,根據(jù)用戶的個人數(shù)據(jù)將其分類到特定群組。例如,用戶可以通過生成驗證條件的ZK證明來證明他們是長期以太坊用戶、某個GitHub倉庫的貢獻者或美國公民。在驗證證明后,Sismo授予用戶與其個人數(shù)據(jù)相對應(yīng)的徽章?;照聵擞浟擞脩舻纳矸?,而不實際透露任何敏感信息。
Worldcoin代表了ZKP的另一個創(chuàng)新應(yīng)用,建立了World ID作為一個開放和無需許可的身份驗證協(xié)議。該協(xié)議利用虹膜生物識別技術(shù)進行精確的身份驗證,通過卷積神經(jīng)網(wǎng)絡(luò)將高分辨率的虹膜掃描轉(zhuǎn)換為壓縮形式。這些數(shù)據(jù)被插入到它們的Semaphore ZKP實現(xiàn)中,以生成一個身份承諾,該承諾存儲在World ID合同中。
為了證明他們的身份,用戶提供他的World ID,然后對整個列表進行檢查以驗證會員資格,從而獲得訪問有用功能的權(quán)限,例如投票和一次性空投。
Worldcoin聲稱在計算哈希后銷毀虹膜圖像,但沒有百分之百可靠的方法來驗證圖像的銷毀
可驗證計算
計算證明是一種密碼技術(shù),允許一方向另一方證明特定的計算已正確進行,而不披露有關(guān)輸入、輸出或計算本身的任何敏感信息。
Risczero的虛擬機在其機器上運行代碼時生成ZKP計算收據(jù),這個“執(zhí)行跟蹤”使任何人都能驗證計算每個時鐘周期時機器狀態(tài)的記錄,同時保持數(shù)據(jù)隱私,這就像在RISC-V架構(gòu)上進行計算時有一個數(shù)字公證員。
這打開了許多可能性,例如:
1. 驗證已發(fā)生的計算而不披露所有細節(jié):利用ZK Proof of Exploit,白帽黑客可以報告智能合同中的實時漏洞,而不披露漏洞的機密細節(jié)。此外,F(xiàn)ilecoin使用的ZK Proof of Storage可確保礦工在任何給定時間存儲數(shù)據(jù)的副本。
2. 驗證媒體的真實性:區(qū)分真實圖像和篡改圖像已成為不斷升級的挑戰(zhàn),助長了假新聞的蔓延。內(nèi)容真實性和出處聯(lián)盟(C2PA)提出了一項驗證圖像來源的標準,以確保這些圖像確實是真實的,并且是在所宣稱的上下文中拍攝的。該標準要求相機對每張照片進行“數(shù)字簽名”,并附上一系列關(guān)于照片的聲明(例如位置、時間戳)。然而,在這些圖像發(fā)布到互聯(lián)網(wǎng)之前,它們可能會經(jīng)過調(diào)整大小、裁剪和增強,這可能會改變這些聲明。Boneh及其團隊已經(jīng)實施了用于各種照片編輯的ZKP,包括裁剪、轉(zhuǎn)置、翻轉(zhuǎn)、旋轉(zhuǎn)以及調(diào)整對比度/亮度。因此,任何用戶都可以輕松檢查證據(jù),以驗證新聞報道是否真實,而無需依賴“社區(qū)注釋”。
3. 驗證財務(wù)信息:通過利用ZK證明,個人可以將其KYC數(shù)據(jù)轉(zhuǎn)化為客戶端設(shè)備上的ZK證明,并在不披露敏感信息的情況下與Dapp共享,以滿足合規(guī)要求。此外,銀行可以簽署ZK證明,以確認信用評分的完整性。雖然金融科技應(yīng)用程序依賴于Plaid來驗證此類數(shù)據(jù),但需要從銀行獲得權(quán)限來設(shè)置此類集成。
Reclaim、zkPass和Chainlink的DECO等協(xié)議繞過這些許可要求,將金融數(shù)據(jù)存儲為可由任何Dapp使用的可組合的ZK證明。這些協(xié)議的工作原理是充當網(wǎng)站服務(wù)器和客戶端設(shè)備之間的代理,生成TLS(Block unicorn注釋:TLS是一種用于保護互聯(lián)網(wǎng)通信安全的加密協(xié)議)收據(jù)以確保數(shù)據(jù)的準確性。它們允許無需信任地導入各種數(shù)據(jù),例如Github存儲庫、Facebook帖子、銀行余額、土地記錄、稅收文件和游戲成就,所有這些都記錄為鏈上的ZK證明。這些協(xié)議將Web2數(shù)據(jù)從中心化的、經(jīng)過許可的服務(wù)器中解放出來,并將它們轉(zhuǎn)化為可組合的Web3憑據(jù)。
4. 驗證大型模型的真實性:Giza、Space and Time 和 Modulus Labs 正在致力于可驗證的算法完整性 - 重點關(guān)注零知識機器學習(ZKML)。算法在我們的日常生活中具有巨大的影響,驅(qū)動著一切,從在線搜索和社交媒體到個性化推薦,控制我們的注意力,塑造我們的信仰。鑒于它們的重要性,這些算法的透明性和開放性至關(guān)重要,因為用戶有權(quán)知道這些算法的工作原理以及它們的使用方式。
ZKML 技術(shù)允許用戶驗證像 Twitter 這樣的平臺是否真正使用它們聲稱的算法,通過為單個帖子的最終輸出分數(shù)提供加密證明。零知識證明為追究科技公司的責任提供了一個有希望的途徑,其應(yīng)用不僅限于社交媒體,還涵蓋了人工智能和醫(yī)療保健等各個領(lǐng)域。
隱私計算
(ZKP)本身非常強大,但當與其他加密技術(shù)如多方計算(MPC)、全同態(tài)加密(FHE)和可信執(zhí)行環(huán)境(TEE)結(jié)合使用時,它們開啟了新的安全和隱私設(shè)計領(lǐng)域。
Renegade 正在開發(fā)一個鏈上黑暗池,確保交易者在執(zhí)行交易前后都能享有完全隱私。在傳統(tǒng)的設(shè)置中,當兩方希望交換信息和資產(chǎn)時,它們必須依賴中央服務(wù)器來解密和處理數(shù)據(jù)。然而,如果任何一方獲悉輸出并在代幣交換之前中止連接,這可能導致信息泄漏和市場操縱。
為了解決這個問題,Renegade 引入了一個具有多個中繼的點對點八卦網(wǎng)絡(luò)。當交易者尋求進行交易時,中繼會識別交易對手并建立多方計算連接,保護交易信息免受第三方曝光。
多方計算(MPC)是一種加密技術(shù),它允許多方協(xié)作計算一個函數(shù)的輸出,而不需要揭示他們的輸入。交易者可以交換資產(chǎn)而不需要披露他們的全部余額,這一核心功能構(gòu)成了一個完整的黑暗池的基礎(chǔ),消除了對受信任操作者的需求。然而,MPC 協(xié)議本身無法保證輸入數(shù)據(jù)的有效性。Renegade 在MPC 計算中生成一個 zk-SNARK 證明,確保交易者的余額與其聲稱的一致。
交易員可以在Renegade上運行中繼節(jié)點以保持完全的隱私
全同態(tài)加密賦予云端對加密數(shù)據(jù)的計算能力,保護敏感信息免受第三方訪問。與此同時,ZKP提供了一種通過簡潔的可驗證證明來證明計算正確性的手段。
MPC、FHE 和 ZKP的融合開辟了新應(yīng)用的大門。zkHoldem 通過為每一次洗牌和發(fā)牌生成 ZK 證明,徹底改變了鏈上撲克游戲,確保了可證明的公平游戲。通過還實施 MPC 技術(shù),即使對于他們的服務(wù)器來說,也能隱藏玩家的牌,zkHoldem 提高了鏈上游戲的誠信水平。
ZK工具
證明系統(tǒng)
證明系統(tǒng)是一種涉及一套規(guī)則和程序的雙方協(xié)議,使證明者能夠說服驗證者某個陳述的真實性。開發(fā)人員可以使用多種ZKP系統(tǒng),每種系統(tǒng)都有其獨特的優(yōu)勢和挑戰(zhàn):
zk-SNARK(零知識簡明非交互式知識論證):
優(yōu)點:緊湊的證明大??;快速的驗證。
缺點:需要“信任設(shè)置” - 一次性的初始化,如果處理不當,可能會啟用偽證明。
zk-STARK(零知識可擴展透明知識論證):
優(yōu)點:無需信任設(shè)置;能夠抵御量子威脅。
缺點:較大的證明大??;較高的計算需求。
Bulletproof:
優(yōu)點:避免了需要信任設(shè)置;相對較小的證明大小。
缺點:驗證和創(chuàng)建比zk-SNARK更耗時。
PLONK:
優(yōu)點:具有高效的算術(shù)運算和簡化的設(shè)置。
缺點:仍在研究中,尚未得到充分驗證。
軟件
領(lǐng)域特定語言(DSL)將抽象邏輯轉(zhuǎn)化為電路表示,這些電路表示可以被證明系統(tǒng)使用。DSL用一種非常接近匯編語言的形式來表達更高級的邏輯。例如,Aztec的Noir兼容多個證明系統(tǒng),因此它對開發(fā)人員來說是一個很好的選擇。然而,這些語言的復(fù)雜性也構(gòu)成了一種障礙,使大多數(shù)開發(fā)人員難以進行電路設(shè)計。
一股創(chuàng)新浪潮席卷了ZKP領(lǐng)域,許多團隊正在開發(fā)更高級的語言,以抽象掉匯編語言的復(fù)雜性。
其中兩個示例是SnarkyJS,這是一種專為Mina區(qū)塊鏈量身定制的TypeScript框架,以及Polylang,這是由Polybase Labs開發(fā)的另一種TypeScript框架,與Miden的虛擬機合作。
總的來說,ZK工具主要追求三個核心目標:多功能性、用戶友好性和性能。Solidity不適合生成ZK表示,因此Starknet團隊創(chuàng)建了Cairo,專門用于創(chuàng)建基于STARK的智能合同。
以太坊的抱負包括通過類型0的zkEVM將ZK-EVM集成到其核心協(xié)議中。然而,這一抱負伴隨著一系列挑戰(zhàn),因為以太坊并未設(shè)計為友好于零知識證明,而為以太坊區(qū)塊生成證明在計算上是昂貴的。RiscZero最近宣布了他們的項目Zeth,它可以證明以太坊的各個方面,包括每個EVM操作碼和EIP,以及區(qū)塊構(gòu)建,但在將ZK正式納入以太坊之前還有很長的路要走。
硬件
隨著游戲行業(yè)的崛起,催生了軟件和硬件開發(fā)方面的重大進步,改變了個人電腦和游戲機。1993年,Nvidia進入了市場,專注于為3D加速定制的GPU,迎合蓬勃發(fā)展的游戲市場。隨著人工智能和機器學習(ML)的風潮逐漸興起,Nvidia認識到其GPU在加速這些領(lǐng)域的復(fù)雜計算方面有巨大潛力。因此,他們轉(zhuǎn)向重新定位GPU,以提高AI和ML任務(wù)的效率,最終占據(jù)了AI芯片市場95%的份額。
類似地,我們預(yù)計零知識(ZK)技術(shù)將開啟一種新的專門硅硬件時代。這些硬件 - 包括GPU、FPGA和ASIC - 將被設(shè)計用于加速證明的生成和驗證,同時保持成本效益。
在用戶硬件上生成ZK證明速度非常慢但維護隱私是必要的。在移動設(shè)備上使用SHA2對10KB數(shù)據(jù)進行哈希運算只需幾毫秒,但生成這個數(shù)據(jù)的ZK證明將需要至少2分鐘。
硬件加速團隊,如Ingoyama和Cysic,可以通過專用硬件在云端生成證明并將證明返回給用戶。
需要大量zk計算的協(xié)議還可以與專用硬件提供商合作,以確保最佳性能和有競爭力的價格。例如,Ulvetenna運營FPGA集群,專為ZKP Rollup計算而構(gòu)建。
這些初創(chuàng)公司提供了多種選擇,從在線軟件即服務(wù)(SaaS)模式到向組織銷售專用硬件。有些還提供咨詢服務(wù),為應(yīng)用程序的特定需求設(shè)計定制電路。
證明市場
對于需要ZK證明的新興開發(fā)者,與專門的硬件供應(yīng)商建立合同并尋找經(jīng)濟高效的解決方案可能面臨重大挑戰(zhàn)。
諸如RiscZero的Bonsai、Nil的Proof Market和Marlin的Kalypso等證明市場充當橋梁,連接需要ZKP生成器的初創(chuàng)企業(yè)與提供證明生成服務(wù)的企業(yè)。在這些市場中,重點關(guān)注證明生成的兩個關(guān)鍵方面:相關(guān)成本和生成證明所需的時間。
Broady,有兩類用戶群體:注重隱私的消費者和追求效率的初創(chuàng)公司
1. 客戶端證明:個人希望生成ZKP以保護隱私,旨在將他們的敏感信息免受集中實體的干擾。他們最好的選擇是在移動設(shè)備或筆記本電腦上生成ZKP,但由于這需要時間,他們正在尋求將這些任務(wù)卸載到專用加速器上。研究人員正在積極探索使用諸如DIZK之類的協(xié)議的私人委托方法,旨在確保沒有單一的工作人員可以訪問完整的秘密,以最大程度地提高隱私和安全性。
2. 服務(wù)器端證明:初創(chuàng)公司需要大規(guī)模的證明能力,例如一個分散式交易所(DEX),它為其系統(tǒng)中流動的所有交易生成證明,并需要迅速的處理能力以消除其應(yīng)用性能中的延遲。
在Polygon Venture,我們有幸密切關(guān)注ZK技術(shù)的發(fā)展。這一旅程使我們得以與像Jordi和Daniel這樣的先驅(qū)者合作,深入研究這一變革性技術(shù)的內(nèi)部運作。
在熊市和牛市的循環(huán)舞臺中,基礎(chǔ)設(shè)施往往在低谷期中嶄露頭角,為接下來的復(fù)蘇做好準備?;仡櫼郧暗呐J校琙K技術(shù)僅處于萌芽階段??爝M到今天,真的令人鼓舞的是看到ZK應(yīng)用的指數(shù)增長,ZK擴展的重大進展,以及一個已經(jīng)顯著擴展的無需信任的計算范式的發(fā)展。
“ ZK技術(shù)的發(fā)展速度令人難以置信;幾年前看似不切實際的應(yīng)用現(xiàn)在已成為現(xiàn)實。新的ZK項目可以從各種庫、DSL(領(lǐng)域特定語言)、zkVM和其他工具中進行選擇?!?——Daniel Lubarov,PLONKY2
我們正在過渡到一個時代,在這個時代中,曾經(jīng)被視為不可動搖的中心化機構(gòu)越來越受到懷疑。盡管像谷歌、Twitter和Meta這樣的中心化巨頭擁有策劃和審查的權(quán)力,但明顯變革的風潮正在醞釀中。
與任何有前途的技術(shù)一樣,ZK也面臨著挑戰(zhàn)。確保ZKP的安全性將需要時間,這讓人回想起以太坊早期的智能合約漏洞。盡管存在這些障礙,但ZK內(nèi)在地承載著一種承諾——一種根本性地改變我們相互交往和建立信任方式的承諾。