在現實生活和數字世界中,我們經常想向他人證明一些事情。 在進入辦公樓之前,員工通常會在進入之前提供某種類型的身份證件。
當用戶嘗試登錄 Facebook 或 Twitter 等應用程序時,這些服務必須首先要求用戶使用密碼登錄,有時會將一次性密碼 (OTP) 發送到他們的移動設備。
提供證據的一個缺點是我們經常洩露其他類型的信息。 向網站提供密碼仍然意味著網站本身在其服務器中保留散列密碼的副本。 如果有人破解了辦公樓的員工 ID 掃描儀,他們也許能夠獲取每個人的私鑰。
零知識證明或 ZKP 提供了一種無需提供額外信息即可驗證身份或交易的方法。 由於其在密碼學中的應用,ZKP 已被採用 blockchains 創建安全且可擴展的驗證協議。
什麼是零知識證明?
零知識證明最初由麻省理工學院的研究人員 Silvio Micali、Charles Rackoff 和 Shafi Goldwasser 於 1985 年在他們的論文中提出 “交互式證明系統的知識複雜性”
本文引入了知識複雜度的概念。 這是指從證明者轉移到驗證者的有關證明的知識量。 零知識證明旨在允許一方證明特定陳述對另一方是真實的,而無需披露任何其他信息。
ZKP 可以用作當前身份驗證系統的安全替代方案,也可以添加到區塊鏈協議中以保持交易的私密性。
ZKP 如何運作?
真實世界的例子
為了說明零知識證明的工作原理,讓我們看一下 ZKP 的抽象示例。
假設您有一個朋友是紅綠色盲。 你有兩個相同的球,只是顏色不同:一個紅色,一個綠色。 對於您的朋友來說,它們看起來很相似,但作為一個沒有色盲的人,您可以輕鬆區分它們。
您是否可以向您的朋友證明它們是不同的顏色而不透露哪個球是紅色或綠色?
事實上,有一種方法可以在不透露球顏色的情況下證明這一點。 首先,你必須讓你的朋友把兩個球都放在背後,並告訴他展示任何一個球並再次隱藏它。 接下來,您告訴您的朋友,他可以選擇再次展示同一個球或與另一個球交換。
每次顯示一個新球時,您都可以告訴他是否換了球。 如果您不斷猜測正確的結果,球的顏色就越有可能不同。 您的朋友現在應該確信這些球有不同的顏色,而不必告訴他哪些球有哪種顏色。
實際應用
零知識證明的大多數實際例子分為兩種類型。
首先,ZKP 可以在設計協議時使用。 我們可以確保各方無法欺騙或利用該協議。 其次,ZKP 可用於身份識別。
例如,我們可以使用 ZKP 安全地登錄 Web 應用程序,而無需洩露密碼本身。
讓我們看一些如何使用零知識證明的示例。
電子投票
ZKP 的一種常見應用是它們在在線投票中可能發揮的作用。 假設我們即將舉行全民投票,用戶可以對擬議的政策進行投票。 每個符合資格的選民都可以在選票上投 1 票或 0 票。
使用零知識證明,選民可以在不透露身份的情況下證明自己投票的權利。 這確保了每次投票都是真正匿名的。 額外的 ZKP 還將用於證明特定用戶的投票是最終計票的一部分。
關於選票本身的內容,投票系統還可以生成一個零知識證明,證明每張選票包含 1 或 0。這是在不需要知道選票本身的內容的情況下完成的。
區塊鏈隱私
比特幣和以太坊等區塊鏈本身並不支持私人交易。 只要您的比特幣錢包是公開的,任何人都可以訪問區塊瀏覽器,例如 Blockstream 查看錢包所屬的所有交易。
同時,使用銀行等服務或 Cash App 或 Venmo 等支付服務使您能夠進行私下交易。 然而,這種便利是以向集中服務洩露您的信息為代價的。
通過將 ZKP 添加到區塊鏈協議中,我們可以將匿名性與去中心化結合起來。 ZCash 等加密貨幣使用 ZKP 來創建私人交易,使硬幣持有者能夠保持匿名。 其中一些加密貨幣使用一種稱為 zk-SNARK 的 ZKP。
這些 ZKP 不需要證明者和驗證者之間進行交互。
零知識匯總
ZK-rollups 是一種可擴展性解決方案,允許立即驗證鏈外交易並以最低的 Gas 費用進行驗證。 它們是一種組合大量第 2 層交易並將其提交到第 1 層協議的方法。
除了提供隱私之外,ZKP 還允許擴展複雜系統。 區塊鏈協議可以使用 ZKP 來證明用戶已經結算了正確的交易、擁有適當的餘額等等。 這些安全且可擴展的解決方案只有通過 ZKP 中鏈下完成的數學證明才能實現。
路印協議等協議使用零知識證明來幫助處理鏈下交易,而無需犧牲安全性。
零知識證明的好處
- ZKP 取代了不太可靠的身份驗證形式,例如 PIN 或身份證
- ZKPS 提高了區塊鏈的可擴展性
- ZKP的實現需要簡單的加密方法
- 使用 ZKPS 不需要在系統中存儲不必要的信息,可以使系統更加安全。
結論
數據隱私已經成為中心化和去中心化系統中的一個主要問題。 零知識證明為各方提供了一種證明或驗證交易和身份的方法,而無需透露所述交易或身份。
隨著區塊鏈技術得到更廣泛的應用,採用 ZKP 來安全地處理驗證將成為解決可擴展性問題的關鍵。
發表評論