作者:benlaw.eth
你之前是否閱讀過一些零知識證明的文章,但仍一頭霧水?這些文章可能:
只以故事和童話作例子來論述ZKP,無法深入其本質。
內含大量密碼學術語,數學公式,學術論文等,對初學者而言過于復雜。
本文提供了對ZKP簡明扼要的概述,并從數學、密碼學和編程角度進一步闡述ZKP的核心要素。
向色盲提供顏色證明
如何向色盲患者證明兩個球的顏色確實是不同的?這其實并不復雜:
讓他在手里握住兩個球,背到背后,然后隨機選擇交換或不交換兩個球的位置,再展示給你看,你告訴他這兩個球的位置是否有變化。
在他看來,你可以通過瞎蒙來完成一次證明。不過,如果成千上萬次地重復這個過程:如果你總是能說出正確答案,那么靠純蒙的方式來保持一直正確的概率,是小到可以忽略的。因此可以通過這種方式來向色盲患者證明:兩個球的顏色確實不一樣,并且我們也有感知和區分的能力。
《中國人民銀行業務領域數據安全管理辦法》納入數字人民幣業務:金色財經報道,中國人民銀行就《中國人民銀行業務領域數據安全管理辦法》公開征求意見,根據起草說明,《辦法》所約束的數據處理活動包括目前試點的數字人民幣業務,這對于數字人民幣的數據安全與行業規范有著重要意義,據悉本次征求意見反饋截止時間為2023年8月24日。[2023/7/25 15:57:09]
顏色證明
上述證明過程是典型的零知識證明:
驗證者無法在證明過程中獲得任何關于顏色的知識,因為經過驗證過程后他依然沒有區分顏色的能力。
該驗證過程是概率性的而非決定性的。
該過程是交互式的,需要多輪交互。不過,零知識證明中也有許多協議,通過高級技巧將證明過程轉化成了非互動式的。
掌握知識的證明
我們已經分享了一種現實世界中的零知識證明的例子,接下來再來看一下在二進制世界中如何實現零知識證明。
Arthur是Elon的朋友,并且知道對方的手機號。Betty不知道Elon的號碼。如果Arthur想要向Betty證明他知道,但又不想泄露號碼,應該怎么實現呢?
Doodles將于4月28日開放The Stoodio的早期測試版:金色財經報道,NFT項目Doodles將于4月28日開放新產品The Stoodio的早期測試版。[2023/4/27 14:29:39]
知識證明
一種不成熟的方案是,Elon發布自己電話號碼的哈希,Arthur通過一個程序輸入哈希的原像,程序進行運算并檢查結果。這個方法有一些致命的缺陷:
根據哈希,Betty可以通過暴力破解的方式得到原像,能破解出來的概率是不可忽略的,而且得到的結果幾乎是確定性的。
Arthur必須向該程序輸入原像。如果程序在Arthur的電腦上,Betty就會對此有疑問:我怎么知道你有沒有作弊,你的電腦也許會一直聲稱你的證明是對的?
如果程序在Betty的電腦上運行,Arthur也會擔心,自己輸入的信息會不會被竊取,即使程序肉眼可見的代碼中并沒有竊取信息的命令。
因為無法將程序分開在不同的環境中運行,這個信任問題是難以解決的。
印度板球明星Shikhar Dhawan將推出7500萬美元科技基金:12月10日消息,印度板球明星Shikhar Dhawan宣布將推出7500萬美元體育科技基金Global Investment Sports Tech Fund,旨在推動體育領域創新。
Shikhar Dhawan表示,該基金已經組建一支經驗豐富的創始團隊,他們將領導Global Investment Sports Tech Fund將電競、游戲和Web3技術引入體育投資領域。(Newsroomodisha)[2022/12/10 21:35:26]
常規的方法在這里碰壁了,是時候讓零知識證明出場了!
基于密碼學的零知識證明的實現方案
在此我會用零知識證明中的SigmaProtocol來解決問題,因為它比較簡單。并且,為了簡潔和易于理解,這里不會使用嚴格的密碼學和數學中的定義、術語及推導過程等。
核心流程
使用零知識證明證明一個人有特定的知識,我們采取如下辦法:
Nexo發布聲明:承諾費率是“個位數”,未提供高回報產品:金色財經報道,在被監管機構指控在未告知客戶風險的情況下提供高36%回報率產品之后,Nexo發布聲明稱其承諾費率是“個位數”,并沒有監管機構聲稱的那么高。Nexo補充稱,這些費率是為了“考慮到業務的基本可持續性和客戶資產的安全性”,屬于低風險產品,而且只有Axie Infinity一款產品提供了36%利率且該產品是個“例外”。不過,Nexo 是否為美國公民服務的問題也在討論中,該公司今日已表示不再讓新的美國客戶參與相關產品。(cryptobriefing)[2022/9/28 22:35:44]
Sigma協議
定義一個P階的有限群及其生成元g。我們可以暫時忽略這些奇怪的名詞具體什么意思。
根據上面的定義,某個擁有知識或能接觸到知識的第三方,將知識通過h=g^w(modP)的方式加密后,將h發布出去。
證明者啟動零知識證明流程。生成一個隨機數r,計算a=g^r,并將a發送給驗證者。
Zilliqa游戲開發團隊發布Unity SDK v3.0,以支持鏈上錢包功能和NFT交易:6月24日消息,Layer1 區塊鏈 Zilliqa 的游戲開發團隊發布 Unity SDK v3.0 版本,以支持用戶在 Zilliqa 區塊鏈上創建錢包,通過錢包登錄游戲以及在游戲內進行 NFT 交易。
據悉,Zilliqa 此前于 4 月份加入區塊鏈游戲聯盟(BGA),目的是推動該鏈的游戲開發和成長。[2022/6/24 1:28:58]
驗證者生成一個隨機數e并發送給證明者。
證明者計算z=r+ew并發送給驗證者。
驗證者檢查g^z==a·h^e(modP)。如果為真,則驗證者確實掌握其聲稱的知識。
好啦,該證明協議到此就結束了!非常簡短,但你仍可能對上面的一些數學運算感到困惑,但這不要緊,我們先有個大概印象再深入理解。
數學原理
這套流程背后的核心數學原理是離散對數難題:當P是一個很大的質數時,對于給定的h,很難找到滿足h=g^w(modP)的w。該原理適用于上面所有類似的式子。
我們來一步一步解析下:
經過加密的知識h=g^w(modP),是難以被暴力破解的。由于求余運算的特點,即使被破解了也不具備單一確定解。這意味著對證明者而言,通過暴力破解來作弊,欺騙驗證者,是不可行的。
然后我們將3,4,5步作為一個整體來看一下他們為什么要交換這些隨機數:
I.證明者并不想暴露其秘密,所以他必須用隨機數包裹一下將其隱藏起來。而驗證者也需要通過添加一些隨機數,讓該知識可被自己驗證的同時防止證明者作弊,而且不會窺探到證明者的秘密。
II.如果驗證者先發送了隨機數e,很明顯,證明者可以通過編造a=g^z·h^-e來在最終檢查中欺騙驗證者,即使沒有知識也可以通過。所以證明者必須先手發送一個承諾(a=g^r),但非r本身,來避免可作弊場景,同時不讓驗證者通過w=(z-r)/e提取到秘密。
III.在收到承諾后,驗證者向證明者發送隨機數e。由于其本身或者其衍生物無法泄露任何一方的信息,這個數不需要加密。之后證明者計算z=r+ew并將z發送給驗證者。驗證者最終通過檢查g^z=g^(r+ew)=g^r·(gw)^e=a·h^e來確定證明者是否掌握知識。
通過這種往返交錯的結構,我們收獲了三個性質:
完備性:當且僅當證明者輸入正確知識,驗證才能通過。
可靠性:當且僅當證明者輸入錯誤知識,驗證才會失敗。
零知識性:驗證者無法在驗證過程中獲取任何知識。
上述三點即零知識證明的核心特性。通過數學和密碼學,我們構建出了一套光怪陸離的證明體系。恭喜你一路走了這么遠,現在應該已經可以說正式邁入了富麗堂皇又奧妙無窮的ZKP圣殿。
Havefun!
進一步了解
模擬器和零知識性
我們現在來考慮一些魔幻場景。如果一個證明者具有預言或篡改驗證者生成的隨機數的超能力,我們稱其為模擬器。
模擬器vs驗證者
設想,模擬器在驗證者的隨機數e生成前就對其進行了篡改,確保其生成后是自己預設的值。根據上面II所說,這種能力使模擬器能編造承諾a來欺騙驗證者。不論模擬器的輸入是什么,驗證者總會得出結論模擬器具有知識,然而實際上他并沒有。
顯然,經過這種思想實驗我們可以得出結論,驗證者無法在該零知識證明協議中獲取任何知識,也即其零知識性是成立的:
零知識性<==?模擬器S,使得S(x)與真實的協議執行不可區分,其中S(x):選擇隨機的z和e,令a=g^z·h^-e,其中(a,e,z)的分布與真實的隨機數環境一致并滿足g^z=a·h^e。
抽取器和可靠性
再來想象一下另一種超能力者——抽取器,具有時光倒流的能力。不過這次是抽取器作為驗證者,面對一個正常的證明者。
當協議結束時,抽取器發起時間倒流,回到協議的起點,并持有上一輪得到的(z,e,a)。現在,協議重新執行一遍。由于證明者沒有超能力無法進行時間旅行只能在固定的時間線上做確定的事,他又生成了一個一模一樣的隨機數r以及承諾a=g^r,而抽取器則可以生成新的隨機數e'給證明者。
證明者vs抽取器
現在,抽取器獲得了:g^z=a·h^e,g^z'=a·h^e=>g^(z-z')=h(e-e')=>加密后的知識h=g^((z-z')/(e-e'))=>知識w=(z-z')/(e-e').
顯然,只要證明者真的掌握了知識,抽取器總是可以將其抽取出來,也即完備性成立:完備性<==?抽取器E,對給定的任何h,在掌握(a,e,z),(a,e',z')且e≠e'的情況下,都能輸出ws.t.(h,w)∈R.
完備性
完備性不需要任何特殊角色來證明,因為:g^z=g^r+ew=g^r·(g^w)^e=a·h^e.
Tags:ARTHRTHARTHURARTDarth FaderEarthcrypt TokenKing ArthurNFT-Art.Finance
原文標題:《BendDao——一種點對池的NFT流動性協議全新范式》 撰文:老雅痞 BendDAO 2022年4月22日,據BendDAO官方推特發文稱.
1900/1/1 0:00:00來源:ForesightVentures“可組合性是指一種能力,讓組件能夠重新組合成更大的結構.
1900/1/1 0:00:00鏈捕手消息,藝術和娛樂數字藏品市場LimeWire宣布在LMWR私募代幣銷售中籌集到逾1000萬美元,KrakenVentures、ArringtonCapital和GSR領投.
1900/1/1 0:00:00原作者:MarkPurdy原標題:《HowtheMetaverseCouldChangeWork》 編譯:胡韜,鏈捕手 想象一個世界,你可以與同事在海邊交談,在空間站周圍漂浮時做會議記錄.
1900/1/1 0:00:00來源:PeterWatts推文編譯:angelilu,ForesightNews?盡管從?@epolynya?最早的推文開始,我就密切關注模塊化區塊鏈.
1900/1/1 0:00:00整理:胡韜,鏈捕手 1、《在馬斯克收購推特之際,為什么去中心化社交網絡代表著必然的歷史趨勢?》每一代網絡都激發了網絡公民共享信息的創新和原生方式,但也有其自身的缺陷.
1900/1/1 0:00:00