- 區(qū)塊鏈應用開發(fā)指南:業(yè)務場景剖析與實戰(zhàn)
- 熊麗兵 董一凡等
- 567字
- 2022-07-28 20:18:07
3.2.2 場景二:洞穴
如圖3-2所示,R和S之間存在一道密門,并且只有知道咒語的人才能打開它。小明知道咒語并想向小麗證明,但證明過程中又不想泄露咒語。他該怎么辦呢?
(1)首先兩人都走到P,然后小明走到R或者S。
(2)小麗走到Q,然后讓小明從洞穴的一邊或者另一邊出來。
(3)如果小明知道咒語,就能正確地從小麗要求的那一邊出來。
小麗重復上述過程很多次,直到她相信小明確實知道打開密門的咒語為止。
在這里,小明是證明方,小麗是驗證方。小明通過上述方法證明了自己確實知道咒語,但是沒有跟小麗透露任何咒語的相關(guān)信息,這一過程也就是零知識證明。
這個例子似乎讓我們想到了什么——《阿里巴巴和四十大盜》。
阿里巴巴不幸遭遇四十大盜,他如果說出藏有財寶的山洞的咒語,他自然也就沒命了;但是,如果他不能證明自己知道山洞的開啟咒語,也會沒命。阿里巴巴靈機一動,想出了一個辦法,他對強盜們說:“你們必須保持距離我一箭之地,并用弓箭指著我,你們舉起右手我就念咒語打開石門,舉起左手我就念咒語關(guān)上石門,如果我做不到或逃跑,你們就用弓箭射死我”。這樣,阿里巴巴就能在距離大盜足夠遠的位置,說出咒語打開石門,同時,大盜們也無法獲知咒語。但是大盜們也眼見為實,看到石門的確被打開,驗證了阿里巴巴的確掌握咒語。這個過程阿里巴巴沒有直接把咒語透露給大盜們,咒語就是有用的信息。

圖3-2 洞穴游戲
推薦閱讀
- 云數(shù)據(jù)中心基礎(chǔ)
- Word 2010中文版完全自學手冊
- 文本挖掘:基于R語言的整潔工具
- Hadoop大數(shù)據(jù)實戰(zhàn)權(quán)威指南(第2版)
- 數(shù)據(jù)庫程序員面試筆試真題庫
- The Game Jam Survival Guide
- 大數(shù)據(jù)架構(gòu)商業(yè)之路:從業(yè)務需求到技術(shù)方案
- 大數(shù)據(jù)技術(shù)入門
- Flutter Projects
- 數(shù)據(jù)科學實戰(zhàn)指南
- 區(qū)塊鏈技術(shù)應用與實踐案例
- 大數(shù)據(jù)技術(shù)原理與應用:概念、存儲、處理、分析與應用
- AndEngine for Android Game Development Cookbook
- SQL進階教程(第2版)
- Hands-On Java Deep Learning for Computer Vision