作者:Preethi Kasireddy,DappCamp創始人;翻譯:金色財經cryptonaitive
ZKP(零知識證明)在加密貨幣大爆發后受到歡迎,但它們的悠久歷史可以追溯到 1980 年代。本文探討 ZKP 這些年來的起源和發展。
ZKP的基本前提是,一方(prover)可以向另一方(verifier)證明他們了解特定信息,而無需實際透露該信息是什么。通過這樣做,Prover可以證明他們對特定事實或數據的了解,而無需透露任何其他信息。
現在,讓我們開始探索ZKP的歷史和發展。
ZKP 在加密貨幣爆發后獲得了關注,因為它們允許在兩方之間進行無需信任和匿名的交換,但這個概念本身并不新鮮。ZKP 的歷史其實可以追溯到 20 世紀 80 年代后期,當時 Shafi Goldwasser、Silvio Micali 和 Charles Rackoff 在一篇題為“The Knowledge Complexity of Interactive Proof-Systems”(交互式證明系統的知識復雜性)的論文中引入這個概念。
作者描述的初始概念涉及稱為“交互式協議”的東西,其中prover和verifier將來回通信(反復交互)以使verifier相信prover知道正確的信息。這種方法雖然有其自身突破,但被證明是耗時且資源密集型的,尤其是在涉及大量數據時。為了使ZKP具有可擴展性,它們需要是非交互式的。
zkSync針對Gemholic項目資金被卡問題發布更新:4月8日消息,針對昨日Gemholic項目資金被卡的問題,zkSync發布推文稱:“我們想分享有關更好地支持遺留Solidity功能的更新,transfer()和.send()將可完全像在EVM中一樣工作。該解決方案不涉及任何類型的重組或再生。這將是一個正常的協議升級。”[2023/4/8 13:52:06]
Peggy(證明者)和 Victor(驗證者)
1986 年,Fiat 和 Shamir 發明了 Fiat-Shamir heuristic(Fiat-Shamir 啟發式,一種采用交互式知識證明并據此創建數字簽名的技術),成功地將交互式零知識證明轉變為非交互式零知識證明。現在,這使得 ZKP 成為非交互式的,并為 ZKP 的廣泛、可擴展使用奠定了基礎。
交互式與非交互式ZKP
ZKP 的下一次重大推動發生在 2011 年,Nir Bitansky、Ran Canetti和Alessandro Chiesa在密碼學理論國際研討會上發表了一篇名為“From Extractable Collision Resistance to SNARKs and Back Again" (從可提取的抗碰撞性到 SNARKs,然后再反向操作 )的論文。
ZK Rollup 訂單簿 DEX ZigZag 疑似已在以太坊上部署“ZZ”代幣合約,總量 1 億枚:6月20日消息,ZK Rollup 訂單簿 DEX ZigZag 疑似已在以太坊上部署代幣“ZZ”的智能合約,總量 1 億枚。此前 ZigZag 發推“24th June”,疑似暗示代幣發行的相關時間節點。
此前報道,6 月 14 日 ZigZag 在 GitHub 上提交代幣源代碼。[2022/6/20 4:39:45]
zkSNARK如何工作?
這篇論文表明,我們可以使用一種稱為可提取抗碰撞 (ECR) 哈希函數的東西來創建 SNARKS(簡潔的非交互式知識論證)。SNARKS 基本上是“簡潔”的 ZKP,這意味著它們體積小,可以在幾秒鐘內得到驗證。
ZKP、NIZKP 和 zkSNARK 的比較
從這里開始,ZKP 的進程加快了,并促成了 2013 年Pinocchio的誕生。
Pinocchio是零知識簡潔非交互式知識論證 (zk-SNARK) 證明系統的第一個概念驗證實現之一,被認為是該領域的突破。它在幾年前一直被使用,但隨后被更新、更高效版本的zk-SNARKs所取代。
當時 zkSNARKS 的兩個主要缺點是:
● 可信設置的要求
zkSNARKs 需要prover和verifier之間的“可信設置”。此設置階段用于創建一組初始參數,然后用于生成和驗證 zk 證明。
跨鏈互操作性協議Poly Network宣布支持Layer2網絡zkSync:官方消息,跨鏈互操作性協議Poly Network宣布支持Layer2網絡zkSync,用戶將能夠通過Poly Bridge以更低的成本和更快的速度zkSync和其他超過18條鏈之間轉移資產。[2022/2/17 9:58:25]
生成這些參數需要一些秘密信息。一群人通常生成這些秘密,然后使用這些秘密來生成參數。一旦生成參數,秘密就被丟棄。然而,由于秘密輸入需要由一組人生成,因此需要我們“信任”這些人。
在區塊鏈中,我們希望最小化信任,這就是為什么“可信設置”通常不受青睞的原因。
zk-SNARK 證明依賴于prover和verifier之間的初始“可信設置”,這意味著需要一組公共參數來構建零知識證明,從而構建隱私交易。這些參數幾乎就像游戲規則一樣,它們被編碼到協議中,是證明交易有效的必要因素之一。這會產生潛在的中心化問題,因為參數通常由非常小的團隊制定。
多參與者可信設置的工作流程 來源
● 非后量子安全
zkSNARKS 不是后量子安全的,因為它們依賴于公鑰加密。公鑰密碼學依賴于解決特定數組的離散對數問題的難度。但隨著量子計算機的誕生,公鑰密碼學面臨風險,因為計算機可以將大數分解為素數,這意味著解決離散對數問題不再困難。
ZK行業正在努力構建解決這兩個問題的協議。
接下來是Groth。Groth 于 2016 年推出,是使 zkSnarks 高效且極其實用的首批協議之一。這是一個巨大的突破,并立即得到采用。事實上,由于它的性能和簡單性,它今天仍在許多協議中使用,并且圍繞它構建了許多工具。
LBank支持ZKSwap主網上線前4000萬個ZKS免費空投:據官方消息,LBank將支持4000萬 ZKS空投計劃。用戶只需將資產存放于LBank,無需任何操作,即可根據ZKS官方規則,獲取對應數量的ZKS。掛單及參與活動均不影響此次空投。
具體規則如下:LBank將在2021 年 1 月 29 日 22:00 起,截止到主網上線前每日對用戶持倉進行快照,待官方空投后,LBank將根據具體數量,以最接近時間的快照數據,對用戶進行ZKS空投。[2021/1/29 14:22:09]
ZKP的下一個重要里程碑是 2017 年 Bulletproofs 的推出。我記得 Bulletproofs 在 2017 年大肆宣傳。Bulletproofs 是簡短的非交互式零知識證明,可以證明某個加密值在給定的“范圍內”不透露任何有關數據的信息(例如,我可以在不透露金額的情況下向你證明交易價值在一定范圍內)。這些“范圍證明”可以聚合成一個簡短的證明。Bulletproof協議變得如此流行的原因是因為它們使比特幣的機密交易不僅成為可能,而且變得高效。Bulletproof技術最大的區別在于它不需要可信設置。這在區塊鏈行業非常重要,因為我們專注于構建無需信任的網絡,正如你可以想象的那樣,行業很快就采用了Bulletproof技術。
SNARKs、STARKs 和 Bulletproofs 的Runtime比較
2018 年,STARKS(Zero-Knowledge Scalable Transparent ARguments of Knowledge——零知識可擴展透明知識論證——的縮寫)通過緩解 zkSNARKS 的兩個缺點在業界引起了轟動:
V神:ERC20項目應積極研究ZK-Rollup L2擴容解決方案:金色財經報道,Education Ecosystem今日發推稱,過去幾周,以太坊gas價格高昂,每筆交易價格為0.40至0.88美元,這使得ERC20項目無法在以太坊上進行任何微交易支付,這挫敗了使用以太坊網絡進行支付的想法。對此,以太坊創始人V神表示,ERC20項目應該積極研究ZK-Rollup L2擴容解決方案,這些解決方案目前已在主網上運行。[2020/7/10]
● STARKS 是“后量子安全”的,這意味著它們依賴于哈希函數而不是橢圓曲線作為證明機制。
● STARKS 不需要可信設置。相反,zk-STARKS 使用可公開驗證的隨機源作為初始參數。
zkSTARKS 的最大缺點是它們的證明很大。這使得它不適合區塊鏈,因為鏈上存儲需要花錢。然而,STARKS 超過 SNARKS 脫穎而出,并讓行業擺脫可信設置。
zkSNARKs 和 zkSTARKs 在各種參數上的比較
2019 年對 zkSNARKS 來說是重要的一年,該領域有 3 項重大創新:
● SONIC
Sonic 做出的最大貢獻是支持“通用”且可不斷升級的參考字符串。這意味著你不需要進行可信設置來為每個程序生成初始參數。相反,你只需執行一次可信設置,然后對所有程序使用相同的參數。雖然這并不能完全減輕可信設置的缺點,但它確實使它變得更好了。
Sonic 還具有恒定的證明大小(這很好,因為證明大小不會隨著程序的復雜性而增加)并引入了批量驗證,從而減少了驗證時間。但是,當你不進行批處理時,驗證時間非常長。
● MARLIN
Marlin 是 Sonic 的顯著改進版本,證明時間減少了 10 倍。它還提供了更快的驗證而無需批處理,并將驗證時間縮短了 3 倍。
● PLONK
PLONK 是“Permutations over Lagrange-bases for Oecumenical Non Interactive Arguments of Knowledge ”(普遍用途的非交互式知識論證的拉格朗日基排列)的縮寫,是 SONIC 的另一個改進版本,它的一個特性是,它的證明時間減少了 5 倍。這里的重大創新是 PLONK 允許自定義門(gate)而不是通常的加法/乘法,這意味著你可以為更復雜的程序構建 zk 證明。
PlonK 和 Marlin 都用通用設置替換了 Groth16 中電路特定的可信設置。隨著 PLONK 的推出,加密社區也意識到他們甚至可以構建“zkEVM”,這將使我們能夠在以太坊上獲取任何智能合約代碼并將其轉換為零知識證明。Vitalik 曾經寫過一篇精彩文章,解釋了它背后的數學原理。
這標志著ZKP亂戰的結束,但也僅僅只是個開始!
各協議證明大小和安全假設圖,來源
HALO2
2020 年,Zcash 團隊推出了 HALO 2(HALO 的繼后繼者),它結合了 PLONK 和 Bulletproofs 的優點,然后允許在沒有可信設置的情況下進行快速驗證。
HALO vs HALO 2,來源
快進到 2022 年,我們開始再次看到新協議開發的加速。
HYPERPLONK
HYPERPLONK 于 2022 年推出,是一種 zkp系統,證明是完全線性時間的并支持高度和查找自定義門。它試圖提高 PLONK 的靈活性,提高其速度并提供更多好處。
雖然 PLONK 本身非常強大,但它有一定的局限性,尤其是在證明大型聲明或嘗試使用高度并行的硬件時。在證明諸如rollup和 zkEVM 等大型復雜命令時,這些限制尤為重要。HyperPlonk 旨在解決這個問題。
PLONKY2
最近,Polygon 于 2022 年 1 月發布的 Plonky2 是 ZKP 世界中最新的。它是一種遞歸 SNARK,比現有其他方案快 100 倍。它結合了 PLONK 和 FRI,以獲得最好的 STARK(即快速證明和無可信設置)和最好的 SNARK(即支持遞歸和以太坊上的低驗證成本)。
這將我們帶到了今天。這就是 ZKP生態今天的樣子:
ZKP生態
雖然沒有哪個“協議”被認為是最好的,但了解所有這些協議、它們的優點和局限性有助于我們為特定用例和設置選擇最好的一個。我的團隊收集了我今天介紹的所有協議的信息,并在此處為你總結:
各ZKP特性全匯總
ZKP 有著悠久而豐富的歷史,每個協議都在突破極限,提高速度并擴展這項技術的限制。從需要prover和verifier來回交換信息的第一次迭代,我們已經走了很長一段路。
在我看來,我們才剛剛開始。你認為 ZKP 領域的下一個重大創新是什么?
Beosin
金色薦讀
曼昆區塊鏈法律
探索貓
Block unicorn
白澤研究院
veDAO研究院
深潮TechFlow
Biteye
本文將深入探討 Buterin 所指出的三個主要原因,這些原因可能導致以太坊失敗。在我們穿越區塊鏈技術的轉型迷宮時,審視以太坊的發展軌跡至關重要.
1900/1/1 0:00:00作者:Teng Yan, Delphi Digital NFT研究主管;翻譯:金色財經0xxz我們上周末經歷了NFT 的“黑色周末”.
1900/1/1 0:00:00牛市炒幣,熊市做事 在下一次比特幣減半行情或將伴隨的牛市來之前,聰明的朋友們已經開始做相關的布局,最明顯的,莫過于過來向曼昆團隊咨詢項目融資事宜的朋友們變多了.
1900/1/1 0:00:00為了解決區塊鏈Layer 1網絡的擴容問題,Rollup方案應運而生。結合ZK技術,ZK Rollup成為Layer 2賽道的新寵兒.
1900/1/1 0:00:001、美國 SEC 指控幣安?法招攬美國投資者購買、出售和交易加密貨幣,以及提供賺幣計劃 BNB Vault 和 Simple Earn、質押投資計劃。此外 SEC 指控幣安有意逃避美國監管.
1900/1/1 0:00:00出品:深潮 TechFlow 撰文:0xmin如果要問加密貨幣領域最厲害的VC有哪些,Paradigm 一定榜上有名,熊市All in 比特幣,深度孵化Uniswap一戰成名.
1900/1/1 0:00:00