零知識身份認證

2022-03-24 20:19:12 字數 2241 閱讀 8296

零知識證明(zero-knowledge proof)的思想是:證明者peggy擁有某些知識(如某些長期沒有解決的難問題的解決方法),零知識證明就是在不將該知識的內容洩露給驗證者victor的前提下,peggy向victor證明自己擁有該知識。首先,我們看下面peggy和victor之間的一段對話:

peggy:「我可以對密文為c的訊息進行解密。」

victor:「我不相信。請證明。」

peggy(糟糕的回答):「金鑰是k,您可以看到訊息解密成了m。」

victor:「哈哈!現在我也知道了金鑰和訊息。」

這裡,peggy雖然證明了自己擁有某些知識(金鑰k及明文m),卻向victor洩露了這些知識。乙個更好的對話是:

peggy:「我可以對加密為c的訊息進行解密。」

victor:「我不相信。請證明。」

peggy(好的回答):「讓我們使用乙個零知識協議,我將以任意高的概率證明我的知識(但是不會將關於訊息的任何情況洩露給您)。」

victor:「好」。

peggy 和 victor 通過該協議……

可以使用洞穴例子來解釋零知識,c和d之間存在乙個密門,並且只有知道咒語的人才能開啟。peggy知道咒語並想對victor證明,但證明過程中不想洩露咒語。

圖7.13 零知識洞穴

步驟如下:

(1)victor站在a點;

(2)peggy一直走進洞穴,到達c點或者d點;

(3)在peggy消失在洞穴中之後,victor走到b點;

(4)victor隨機選擇左通道或者右通道,要求peggy從該通道出來;

(5)peggy從victor要求的通道出來,如果有必要就用咒語開啟密門;

(6)peggy和victor重複步驟(1)至(5)n次。

如果peggy不知道這個咒語,那麼只能從進去的路出來,如果在協議的每一輪中peggy都能按victor要求的通道出來,那麼peggy所有n次都猜中的概率是1/2n。經過16輪後,peggy只有65536分之一的機會猜中。於是victor可以假定,如果所有16次peggy的證明都是有效的,那麼她一定知道開啟c點和d點間的密門的咒語。

我們來看乙個零知識證明的例子。圖是否同構是np完全問題,對於乙個非常大的圖,判斷兩個圖是否同構是非常困難的。對於圖g1和g2,如果存在乙個一一對應的函式f:

f的定義域是g1的頂點集。f的值域是g2的頂點集。當且僅當[g1,g2]是g1中的一條邊,[f(g1),f(g2)]才是g2中的一條邊,稱g1和g2同構的。

假設peggy知道圖g1和g2之間同構,peggy使用下面的協議將使victor相信g1和g2同構:

(1)peggy隨機置換g1產生另乙個圖h,並且h和g1同構。因為peggy知道g1和h同構,也就知道了h和g2同構。

(2)peggy把h送給victor。

(3)對如下兩個問題victor選擇其中的乙個,要求peggy證明。但是,victor不要求兩者都證明。

證明g1和h同構,或者

證明g2和h同構。

(4)peggy按victor的要求證明。

(5)peggy和victor重複步驟(1)至(4)n次。

如果peggy不知道g1和g2之間的同構性,peggy就只能創造乙個圖或者與g1同構或者與g2同構。每一輪中peggy只有50%的機會猜中victor的選擇。又因為peggy在協議的每一輪都產生乙個新圖h,故不管經過多少輪協議victor也得不到任何資訊,他不能從peggy的答案中了解g1和g2的同構性。

圖同構的零知識證明只具有理論意義,從實現來看,是不實用的。

這裡我們介紹著名的feige-fiat-shamir零知識身份認證協議的乙個簡化方案。

可信賴仲裁選定乙個隨機模數n,n為兩個大素數乘積,實際中至少為為512位或長達1024位。仲裁方產生隨機數v,使x2=v mod n,即v為模n的平方剩餘,且有v-1mod n存在。以v作為peggy的公鑰,而後計算最小的整數s:

s=sqrt(v-1) mod n作為peggy的私鑰。實施身份證明的協議如下:

(1)使用者peggy取隨機數r,這裡r<m,計算x= r2 mod m,把x送給victor;

(2)victor把乙個隨機位b送給peggy;

(3)若b=0,則peggy將r送給victor;若b=1,則peggy將y=rs 送給victor;

(4)若b=0,則victor驗證x=r2 mod m ,從而證實peggy知道sqrt(x);若b=1,則victor驗證x= mod m,從而證實peggy知道s。

這是一輪鑑定,peggy和victor可將此協議重複t 次,直到victor相信peggy知道s為止。

零售藥店GSP認證申報

xx市零售藥店gsp認證申報資料示範文字 xx區xx大藥房 gsp認證申請資料 二xx年x月x日 gsp認證申報資料目錄 受理編號 藥品經營質量管理規範認證申請表 申請單位 xx市xx區xx大藥房 公章 申報日期 20xx 年 x 月 x 日 受理日期 年月日 xx省食品藥品監督管理局印製 gsp認...

CE認證知識

ce小知識 ce 標誌是一種安全認證標誌,被視為製造商開啟並進入歐洲市場的護照。凡是貼有 ce 標誌的產品就可在歐盟各成員國內銷售,無須符合每個成員國的要求,從而實現了商品在歐盟成員國範圍內的自由流通。在歐盟市場 ce 標誌屬強制性認證標誌,不論是歐盟內部企業生產的產品,還是其他國家生產的產品,要想...

終端准入實施中常用的幾種身份認證方案

portal認證的方式基於ip,認證做在portal裝置上,與終端接入裝置的型號 版本都沒有關係,適合於接入交換機品牌複雜 對802.1x及radius支援情況不穩定的場景中。802.1x認證方案 有些情況下使用者的接入層交換機雖然不是h3c品牌,但對802.1x及radius也有較好的支援。這時除...