- 區(qū)塊鏈應(yīng)用開發(fā)指南:業(yè)務(wù)場景剖析與實(shí)戰(zhàn)
- 熊麗兵 董一凡等
- 703字
- 2022-07-28 20:18:06
3.2 零知識證明使用場景案例
3.2.1 場景一:萬圣節(jié)糖果
故事是這樣的:一年一度的萬圣節(jié)到來,小麗和小明分別領(lǐng)取到了一定數(shù)量的糖果。他們想知道他們是否收到了相同數(shù)量的糖果,卻不想透露糖果的數(shù)量,因?yàn)樗麄儾幌氡舜朔窒怼?/p>
現(xiàn)在我們假設(shè),他們袋子里可能裝有10、20、30個(gè)或40個(gè)糖果,如圖3-1所示。

圖3-1 萬圣節(jié)糖果
這時(shí)小明想了個(gè)辦法,為了比較他們擁有的糖果數(shù)量,小明拿到4把鑰匙和盒子,盒子上分別寫上10、20、30、40,分別對應(yīng)糖果的數(shù)量。小明最后只保留了自己糖果數(shù)量跟盒子數(shù)字一樣的鑰匙,其他3把鑰匙就丟棄了(假設(shè)小明只保留了寫著20的盒子的鑰匙)。
然后,小麗在4張紙條上,其中一張寫上“+”,另外三張寫上“-”。然后,把寫有“+”的紙條放到跟自己糖果數(shù)量是相同數(shù)字的盒子里,其余紙條放到其他盒子(假設(shè)小麗把“+”放到寫著30的盒子)。
這時(shí),小明回來后打開他有鑰匙的那個(gè)盒子(寫著20),然后看它是否包含“+”或“-”的紙條。
(1)如果紙條上寫著“+”,說明兩個(gè)人的糖果數(shù)量一致。
(2)如果紙條上寫著“-”,說明兩個(gè)人糖果數(shù)量不一致,但是并不知道對方糖果的具體數(shù)量。
(3)這里小明看到紙條上寫著“-”,意味著兩人的糖果數(shù)量不一樣,但是小明無法知道小麗的糖果數(shù)量。這時(shí)候,小麗看到小明手上拿著一張寫“-”的紙條,那她也知道兩人的糖果數(shù)量不一樣,但是也無法知道對方擁有糖果的確切數(shù)量。
上面這個(gè)過程,就是一個(gè)零知識證明。
ZKP(“零知識證明”的英文縮寫)允許我們證明自己在通信的另一“端”知道某個(gè)人的某個(gè)秘密(或許多秘密),而沒有實(shí)際透露出秘密。術(shù)語“零知識”源于以下事實(shí):第一方?jīng)]有透露有關(guān)機(jī)密的信息(“零”),但是第二方(被稱為“驗(yàn)證者”)確信第一方(被稱為“證明者”)知道有關(guān)機(jī)密。
- 數(shù)據(jù)庫原理及應(yīng)用教程(第4版)(微課版)
- 數(shù)據(jù)可視化:從小白到數(shù)據(jù)工程師的成長之路
- Google Visualization API Essentials
- Python廣告數(shù)據(jù)挖掘與分析實(shí)戰(zhàn)
- Live Longer with AI
- Lean Mobile App Development
- Ceph源碼分析
- 大話Oracle Grid:云時(shí)代的RAC
- 智能數(shù)據(jù)分析:入門、實(shí)戰(zhàn)與平臺構(gòu)建
- Hadoop 3.x大數(shù)據(jù)開發(fā)實(shí)戰(zhàn)
- MATLAB Graphics and Data Visualization Cookbook
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)教程上機(jī)指導(dǎo)與習(xí)題集(微課版)
- 信息學(xué)競賽寶典:數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)
- 大數(shù)據(jù)分析:數(shù)據(jù)倉庫項(xiàng)目實(shí)戰(zhàn)
- 深入理解InfluxDB:時(shí)序數(shù)據(jù)庫詳解與實(shí)踐