零知識證明,有時也被稱為 ZK 協議,是壹種在“證明者”與“驗證者”之間進行的驗證方式。那麽,什麽是零知識證明?又有哪些構成零知識證明的標準呢?請通過閱讀下文來了解詳情。
什麽是零知識證明?
零知識證明(Zero-Knowledge Proof, 簡稱 ZKP)或零知識協議是壹種方式,使“證明者”能夠在不泄露某項秘密信息本身的前提下,使“驗證者”相信該信息所對應的某個陳述為真。此類證明協議可以是交互式的,也可以是非交互式的。
舉例說明:驗證者向證明者提供壹個哈希值 H,並要求證明者提供證明,表明其擁有與 H 對應的原始秘密數據。證明者生成壹個零知識證明,用以說服驗證者其確實擁有該數據,並且數據哈希值為 H,但整個過程中不會向驗證者透露任何該數據本身的信息。
構成零知識證明的標準是什麽?
壹種零知識證明方法必須滿足以下幾個條件:
完整性:若證明者所提供的信息為真,則該 ZKP 方法必須能使驗證者驗證出證明者所言為實。
可靠性:若證明者所提供的信息為假,則該 ZKP 方法必須能使驗證者識別出證明者所言為虛。
零知識性:ZKP 方法在驗證過程中不得泄露除陳述真實性之外的任何信息,即驗證者只能知道證明者所言真假,而不能獲得該秘密的任何內容。
零知識證明有哪些類型?
零知識證明主要有以下兩種類型:
交互式零知識證明:在這種類型的 ZKP 中,證明者與驗證者需進行多輪交互。驗證者會不斷向證明者發出挑戰,證明者則提供相應的回應,直至驗證者確信其所言為真。
非交互式零知識證明:在這種類型的 ZKP 中,證明者只需壹次性提交壹個證明,驗證者在任意時間可獨立完成驗證過程。這種 ZKP 相較於交互式方式計算要求更高,但由於用戶體驗簡潔便利,因此成為當前最受歡迎的壹種方式。
希望本文能幫助妳了解零知識證明的本質以及其構成標準。所謂“零知識計算證明”(Zero-Knowledge Proof-of-Computation),也稱“零知識工作量證明”,是指證明者在不泄露秘密數據本身的前提下,向驗證者證明其已對該秘密數據進行了正確的計算。


















