魔術實際上是零知識證明,零知識證明與魔術沒有區別。本文源自 a16z 所著文章《Secrets, and how to prove them: A magician’s guide to zero-knowledge proofs》,由 Foresight News 整理、編譯及撰稿。
(前情提要: zkSync提出「鏈上法院」,能解決Layer2潛在的中心化風險嗎?)
(背景補充: V神新論文:基於ZK的「隱私池」,可望解決隱私、監管合規難題)
科幻小說家 C. Clarke 有句名言,任何先進的技術都與魔法無異。類似科幻小說的領域之一就是零知識證明(ZKP),這是一種密碼學工具,可以解決 Web3 中的兩個關鍵挑戰:可擴充套件性和隱私性。特別是,ZKP 可能是降低交易費用、設計新的隱私保護應用程式的關鍵,有望開啟迎接十億加密使用者的大門。在加密貨幣之外,ZKP 有一天也可能在幫助安全傳輸敏感資料、打擊非法金融或打擊虛假資訊等領域發揮作用。
但什麼是 ZKP?對於工程師、研究人員和加密社群來說,有很多巧妙的解釋,但它們並不總是適合在加密貨幣或電腦科學方面經驗較少的受眾。即使有大量的類比 —— 從沃爾多到阿里巴巴的洞穴 —— 要找到一個準確、易於理解的 ZKP 解釋來充分體現其強大能力並不容易。
在這篇文章中,我結合了我在加密貨幣和魔術方面的背景來探索一個新的類比:將 ZKP 視為一個偉大的魔術。檢視演示視訊 ,並繼續閱讀關於 ZKP 定義屬性的概述,你會了解所有這一切如何使用魔法發揮作用。
背景知識:什麼是零知識證明?
我將首先分享 ZKP(特別是 zk-SNARK)的定義及其各種屬性,然後將這些屬性反射到魔法類比之中。
a16z 加密研究合夥人 Justin Thaler 這樣定義 SNARK: 「zk-SNARK 讓某人(稱為證明者)向不信任方(稱為驗證者)證明他們知道一些資料,而無需透露有關資料本身的任何資訊。 」 或者,正如 MIT AIP ZK 課程所說,「零知識協議允許我向你證明我知道一個事實,而無需告訴你事實本身。」
這在公共區塊鏈的背景下是令人興奮的,因為 ZKP 可以同時保護隱私資訊,同時允許任何人驗證資訊的真實性。zk-SNARK 簡潔且省力:「簡潔」意味著證明的資料大小小於所需證明的資料。「省力」意味著驗證者驗證證明比分析原始資料更快(在以太坊上,這意味著智慧合約處理的資料更少,因此使用者的 Gas 成本更低)。Layer2 區塊鏈可以利用 zk-SNARK 的簡潔性和節省工作量的特性,讓去中心化應用程式以更低的成本處理更多資料。
綜上所述,zk-SNARKs 有兩個主要屬性:
- 隱私:您所證明的資料的任何內容都不會透露給驗證者。
- 簡潔省力:驗證證明比直接檢查原始資料本身效率更高。
即使是這個高階描述聽起來也有點像一個謎語:一個人如何能在不分享自己知識的情況下證明自己知道某件事?
讓我們再次回顧一下這個定義…… 但這一次,使用一些魔法。
零知識證明魔術
簡單來說,魔術就是零知識證明。在魔術表演中,魔術師聲稱知道一個祕密,可以讓他們表演戲法。但他們不想向觀眾透露這個祕密 —— 那會毀掉這個戲法。
將其擴充套件到 ZKP:將魔術師視為「證明者」,將他們的觀眾視為「驗證者」。魔術表演的成功(希望接下來會引起難以置信的喘息和熱烈的掌聲)類似於「有效」的證明:魔術奏效了,所以魔術師必須知道表演的祕密。當然,如果幻覺不起作用,那麼證明就「無效」:觀眾會感到失望,魔術師可能實際上並不知道所謂的祕密。
因此,魔術展示了 ZKP 的一個屬性:隱私。但是簡潔和省力的特性又如何體現呢?讓我們回到這個類比……
觀眾可以完全跳過表演,只要求魔術師分享魔術背後的祕密。但魔法的祕密可能是非常複雜的。即使只是解釋一個技巧的方法,及其所有的微妙之處,也可能需要很長時間,更不用說理解了。有時,當被要求透露他們的祕密時,魔術師可能會故意向觀眾透露一個「錯誤」的解決方案,以引導他們走上錯誤的道路。如果不自己掌握這個技巧,觀眾就無法明確地確定這個祕密方法是否真的有效 —— 掌握它可能需要幾天、幾個月甚至幾年的時間。
因此,就像直接檢查祕密方法的正確性實際上是時間和工作密集型的一樣,ZKP 的情況也是如此。對於觀眾來說,通過簡單地欣賞表演來驗證祕密方法是否有效要快得多。
洗牌
舉個簡單的例子,在上面的視訊中,我聲稱知道一種祕密方法,可以讓我立即洗一副牌。我想向你證明我有這個能力,但不透露它是如何運作的。在戲法結束時展示一副有組織的牌,這就有力地證明了我必須知道一種「洗牌」的祕密方法。而且,當我展示整理好的牌組時,你可以立即驗證我的說法,這比你自己學習技巧要快得多。
我希望這個類比有助於揭開零知識證明的神祕面紗。即使對於那些不是密碼學研究人員或工程師的人來說,隱藏祕密的魔術和魔術師也可以作為理解 ZKP 關鍵屬性的有用心理模型。
再次強調:魔術實際上是零知識證明,零知識證明與魔術沒有什麼區別。
📍相關報導📍
zkSync半年默默賺了2000多萬美金!Layer2是如何盈利的?