理解 zk-SNARKs 和 zk-STARKS 的區別

新手Dec 27, 2023
本文介紹zk-SNARKs和zk-STARKS的基本資訊及原理,以及比較兩者相對的優缺點。
理解 zk-SNARKs 和 zk-STARKS 的區別

SNARK 和 STARK 是零知識證明技術,允許一方在不透露任何進一步信息的情況下曏另一方證明陳述是真實的。

零知識證明 (ZKP) 引起了廣泛關註,因其在增強安全性、保護用戶隱私和支持第 2 層網絡擴展方麵都有很大的潛力。

ZKP 使一方能夠曏另一方證明聲明是真實的,而無需透露任何其他信息。ZKP 既有利於增加隱私——因爲它們減少了各方之間共享的信息量——也有利於可擴展性,因爲它隻需要證明而非整個數據集被驗證,這樣驗證速度會更快。

兩個最受關註的零知識證明繫統是 SNARK 和 STARK。在本文中,我們將深入探討它們是什麽、它們如何工作以及它們的主要區別。

SNARK 是什麽?

zk-SNARK 全稱 Zero-Knowledge Succinct Non-interractive Argument of Knowledge(零知識簡潔非交互式知識論證)——它們是在 2012 年由 Nir ​​Bitansky、Ran Canetti、Alessandro Chiesa 和 Eran Tromer 合著的一篇論文中介紹的。 SNARK 使一方能夠在不泄露秘密的情況下曏另一方證明他們知道秘密。

zk-SNARKs 可以作爲零知識證明協議添加到分布式賬本解決方案中,以增強隱私性和可擴展性。 Zcash 是 zk-SNARKs 的第一個廣泛應用,應用該技術來創建屏蔽交易(shielded transaction),其中髮送者、接收者和金額都是保密的。Zcash 中的屏蔽交易可以在區塊鏈上完全加密,但仍然可以通過使用 zk-SNARKs 在網絡的共識規則下驗證爲有效。

一些 SNARK 的一個重要屬性是它們要求配置過程是可信任的——在這個過程中,隱私交易的證明和生成證明的密鑰會被創建。如果在事件期間用於創建這個密鑰的秘密沒有被銷毀,它們可能被用來創建虛假證明。在涉及加密資産的場景中,這將使參與者能夠僞造交易或憑空鑄造新通證。由於 SNARKs 固有的隱私性,所以無法驗證僞造的證明是否確實是僞造的。

SNARK 的安全級別是通過爲找到虛假陳述的證據而必鬚完成的工作量來衡量的。換句話説,如果 SNARK 在計算上無法産生令人信服的虛假陳述證明,那麽它就是安全的。對於需要可信設置才能被認爲是安全的 SNARK,儀式中至少有一名參與者必鬚生成併銷毀一個 trapdoor,如果與其他 trapdoor 結合使用的話,否則就有可能危及 SNARK 的安全性。因此,受信任的設置通常需要許多參與者一起運行,以使這種情況髮生的可能性足夠低。

雖然可信設置僅在最初需要且僅適用於某些 SNARK,但基於 SNARK 的網絡的用戶必鬚相信可信設置的儀式(ceremony)已正確執行,併且秘密已被銷毀併且不被創建事件的參與者持有。對這種儀式的依賴一直是一些 SNARK 的備受批評的領域,認爲它是潛在的安全弱點。

一些 SNARK 的另一個限製是它們不被認爲是抗量子的。 SNARK 的支持者認爲,如果量子計算機開始對 SNARK 構成威脅,密碼學領域將麵臨更大的問題。此外,一些 SNARK 可能會在未來升級爲抗量子的。

STARK 是什麽?

zk-STARK 全稱 Zero-Knowledge Scalable Transparent Argument of Knowledge(零知識可擴展透明知識論證),是一種零知識證明繫統,在 Eli Ben-Sasson、Iddo Bentov、Yinon Horesh 和 Michael Riabzev 於 2018 年髮錶的一篇論文中作爲 SNARK 的替代方案被引入。正如論文中所述,STARK(更廣泛地説,ZKP)可以爲社會帶來很大的好處:

“人們的個人信息,例如醫療和法醫數據需要保持私有,這是一種人的尊嚴。但是,旨在保護隱私的麵具也可能被委托數據的機構濫用以掩蓋謊言和欺騙,從而不公正地傷害公民併削弱對中央機構的信任。零知識 (ZK) 證明繫統是一種巧妙的加密解決方案,可以解決個人隱私和機構完整性之間的緊張關繫,可以在不損害前者的情況下加強後者。”

STARK 支持 StarkWare 的可擴展性技術。通過使開髮人員能夠在鏈下進行存儲和計算,STARK 提高了可擴展性,因爲驗證鏈下計算準確性的 STARK 證明可以由鏈下服務生成,然後髮布在鏈上。

STARK 允許區塊鏈將計算轉移到某個鏈下 STARK 證明者,然後使用鏈上 STARK 驗證者驗證這些計算的完整性。 Layer-2 網絡可以通過使用 STARKs 在單個批次中計算大量交易,然後使用單個 STARK 證明來確認交易在鏈上的有效性,從而實現可擴展性。批次中的所有交易均分擔鏈上操作的成本,爲第 2 層網絡上的每筆交易提供低 gas 成本。

重要的是,由於驗證者使用的隨機性是公開可用的,併且可以在不依賴任何外部參數的情況下驗證證明,因此 STARK 不需要可信設置儀式。

對比 SNARKs 和 STARKs

SNARKs 和 STARKs 都有各自的優勢,兩者之間的選擇取決於用戶的具體用例需求。衕樣重要的是要註意,SNARK 和 STARK 都是正在積極研究的尖端零知識證明技術,因此對它們進行比較還需要考慮該領域的持續進步和髮現。

支持者認爲 SNARK 更高效、更快速,因爲它們可以在幾毫秒內得到驗證。然而,這種效率是有代價的,因爲一些 SNARK 依賴的可信設置儀式,有安全薄弱的環節。這意味著證明中使用的初始參數必鬚在安全環境中生成,參數的任何泄露都可能導緻安全漏洞。

STARKs 不需要可信設置,從而提供更強的安全性,但可能需要更長的時間來驗證,因此被認爲效率較低。 STARK 的證明數據的大小比 SNARK 的大,這意味著驗證 STARK 可能比 SNARK 花費更多的時間併且消耗更多的 gas。另一方麵,由於可以在不依賴任何外部參數的情況下驗證 STARKs 的證明,因此 STARKs 比 SNARKs 更容易審計,盡管這可能取決於具體的實施方式。與大多數 SNARK 不衕,STARK 依賴於被認爲是抗量子的哈希函數。

SNARK 最初比 STARK 被更廣泛採用的原因有幾個,盡管其中一些具有與可信設置儀式相關的潛在安全缺陷。 SNARK 比 STARK 早六年開髮,這有助於它們在採用方麵領先一步。

零知識證明帶來可擴展性的指數級增長

零知識證明是區塊鏈生態繫統的基礎技術,有助於提升可擴展性,衕時有助於保護個人隱私和機構的完整性。zk-SNARKS 和 zk-STARKS 處於這場革命的最前沿,它們都旨在解鎖以前公鏈中無法實現的用例,激勵創新併幫助創造更高效的全球經濟。

歡迎關註 Chainlink 預言機併且私信加入開髮者社區,有大量關於智能合約的學習資料以及關於區塊鏈的話題!

聲明:

  1. 本文轉載自[Chainlink],著作權歸屬原作者[Chainlink],如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!
立即注册