自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

零知識證明在區(qū)塊鏈中找到了“新生命”

譯文
區(qū)塊鏈
零知識證明在計算機(jī)科學(xué)和密碼學(xué)領(lǐng)域已經(jīng)擁有數(shù)十年的應(yīng)用歷史,而如今它正在不斷發(fā)展以支持區(qū)塊鏈和Web3的去中心化身份驗(yàn)證。

?譯者 | 李睿

審校 | 孫淑娟

零知識證明(ZKP)也稱為ZKP協(xié)議,試圖以最小的信息交換量在雙方之間建立信任。在密碼學(xué)中,它旨在限制身份驗(yàn)證活動期間的信息傳輸。ZKP的創(chuàng)始人明確研究了計算機(jī)證明中信息或知識的移動。ZKP是當(dāng)時引入新的研究領(lǐng)域的一個重大進(jìn)步。如今在Web3和區(qū)塊鏈的背景下,將再次探討ZKP的含義。

1.證明系統(tǒng)中的知識復(fù)雜度

ZKP的更準(zhǔn)確名稱可能是知識感知證明。提出這一觀點(diǎn)的第一篇論文出現(xiàn)在20世紀(jì)80年代末發(fā)表的幾篇變體論文中。該論文提到了與證明系統(tǒng)相關(guān)的知識復(fù)雜性,并提出了一個問題:當(dāng)一方試圖向另一方證明一個陳述時,必須傳遞的最低信息是什么?

要記住的概念是,人們正在嘗試?yán)斫夂涂刂菩畔⒘?,同時支持有效的驗(yàn)證。 

2.ZKPvs.非對稱加密

ZKP的想法來自上世紀(jì)70年代和上世紀(jì)80年代探索密碼學(xué)新概念領(lǐng)域的時代。這與給人們帶來非對稱加密的環(huán)境相同。一些ZKP協(xié)議按照Diffie-Hellman密鑰交換或RSA加密算法使用素因子分解作為單向(或陷阱門)函數(shù)。

對于非對稱加密,主要目標(biāo)是雙方達(dá)成共享秘密。在ZKP中,其目標(biāo)是在不透露無關(guān)信息的情況下提出索賠。在非對稱加密中,雙方共享一個秘密數(shù)字;在ZKP中,證明者在不泄露該數(shù)字的情況下證明他們實(shí)際上擁有一個秘密數(shù)字。

而ZKP在區(qū)塊鏈中得到更多應(yīng)用并不足為奇。

3.區(qū)塊鏈和Web3中的ZKP

在不公開基礎(chǔ)證明數(shù)據(jù)的情況下證明陳述或聲明的能力具有令人興奮的用途。一方面,很可能將ZKP與現(xiàn)有的身份驗(yàn)證應(yīng)用程序結(jié)合使用。如果可以在不透露密碼情況下證明擁有密碼,那么就消除了所有的攻擊向量。

不過,使用ZKP進(jìn)行密碼驗(yàn)證只是一個小步驟,它并沒有真正改變?nèi)藗內(nèi)缃袷煜さ幕灸P?。要使這種身份驗(yàn)證機(jī)制起到作用,仍然需要將密碼傳輸?shù)脚c之交互的服務(wù)的中央服務(wù)器并存儲在那里。更具革命性的方法需要考慮如果將ZKP集成到應(yīng)用程序安全系統(tǒng)的設(shè)計中會發(fā)生什么。在這種情況下,開始看到現(xiàn)有身份驗(yàn)證的替代方案。如果政府部門和銀行機(jī)構(gòu)要承擔(dān)簽發(fā)加密密鑰以驗(yàn)證重要聲明的角色,用戶可以使用ZKP協(xié)議來驗(yàn)證聲明。

作為一個高級示例,如果政府部門將密鑰作為護(hù)照的一部分,則ZKP可用于證明公民身份,而無需透露護(hù)照號碼或公民姓名。通過采用哈希算法,公民可以使用ZKP來證明年齡等具體要求。

這種功能與Web3非常吻合,因?yàn)閰^(qū)塊鏈用戶已經(jīng)持有加密密鑰,并且知道如何使用它們。此外,ZKP可以允許在區(qū)塊鏈去中心化身份的背景下進(jìn)行身份和其他數(shù)據(jù)認(rèn)證,無論是與現(xiàn)有的Web2應(yīng)用程序在一起使用還是分開。讓用戶能夠通過私鑰顯示其銀行對賬單或信用評分的零知識證據(jù),這將在金融鏈上實(shí)現(xiàn)新的金融功能。

歸根結(jié)底,ZKP力求最大程度地減少與當(dāng)前身份驗(yàn)證模型相關(guān)的缺點(diǎn):失去對用戶數(shù)據(jù)的控制、用戶數(shù)據(jù)暴露于黑客攻擊以及用戶數(shù)據(jù)的非自愿貨幣化。

4.ZKP的工作原理

在ZKP系統(tǒng)中,一方(證明者)向另一方(驗(yàn)證者)證明證明者擁有信息,在理想情況下除了這一事實(shí)之外不透露任何信息。有關(guān)ZKP的原始論文的作者使用了哈密頓圖的示例,這是一種訪問連通圖中每個節(jié)點(diǎn)的圖。

確定證明者擁有這樣一個圖的一種簡單方法是傳輸圖表本身。但這種方法可能泄漏大量信息,超出了證明者持有圖表的事實(shí)。用ZKP創(chuàng)始人的話來說,它比單比特哈密頓量/非哈密頓數(shù)包含更多的信息。

可以想象這樣一個場景,驗(yàn)證者改為重復(fù)查詢圖中特定線和點(diǎn)的信息,而證明者做出響應(yīng)。如果證明者提供了足夠多的有效響應(yīng),那么他們很可能確實(shí)持有哈密頓圖。而圖表本身永遠(yuǎn)不會被傳輸。

5.ZKP思想的實(shí)驗(yàn)

在公鑰加密中,參與者傳統(tǒng)上被稱為Alice、Bob和Eve。在ZKP中,證明者稱為Peggy,驗(yàn)證者稱為Victor。 

假設(shè)Peggy有一個帶有兩個不同按鈕的房間。她邀請Victor確認(rèn)這兩個按鈕如何工作。證明她可以知道何時按下了一個按鈕或另一個按鈕。為了以“零知識”的方式證明這一說法,Peggy與Victor分別在不同的房間,而Peggy看不到Victor在做什么,但她可以分辨出何時按下了不同的按鈕,并且可以將她看到的結(jié)果傳達(dá)給Victor。也許Peggy可以看到根據(jù)按下的按鈕發(fā)出不同顏色的燈光。圖1顯示了卡通形式的布局。 

圖片

圖1.Peggy的零知識房間和按鈕

Victor第一次按下按鈕時,Peggy提醒Victor有一個按鈕被按下。此時,Victor可以假設(shè)Peggy猜對了,或者她真的能夠看到其效果。任何一種可能性都同樣正確。

為了增加對Peggy作弊的幾率,兩人可以進(jìn)行多輪比賽。Victor可以每次按下相同的按鈕或不同的按鈕。如果她猜到了,Peggy的騙局很快就會被揭穿。每一輪正確猜測的概率都會變小。該過程可以重復(fù)多輪,以達(dá)到可接受的概率。

這個場景向Victor證明了Peggy知道什么時候按下按鈕以及按下按鈕的效果,——這就是Victor需要知道的全部內(nèi)容。該實(shí)驗(yàn)沒有揭示按鈕的效果或Peggy監(jiān)控它們的原理。它向Victor展示了按下這些按鈕具有不同的效果,但他不需要知道這些效果是什么。

6.證明和概率

這里的關(guān)鍵是,Victor可以控制按下哪個按鈕,但他不知道按下之后的效果。他依賴Peggy來完成反饋循環(huán)。與此同時,他保留了以很高的概率來判斷Peggy是否能夠看到按下哪個按鈕的能力。這就是為什么說ZKP是概率證明而不是確定性證明的原因。

關(guān)于Peggy和Victor的實(shí)驗(yàn)場景,還有一點(diǎn)需要注意的是,這就是所謂的交互式證明。在這個模型中,驗(yàn)證者可以隨意詢問證明者。這與非交互式證明形成對比,在非交互式證明中,證明者自己進(jìn)行驗(yàn)證,其過程并不在與驗(yàn)證者交互的情況下傳輸證明。任何一種風(fēng)格都可以使用ZKP應(yīng)用。

7.進(jìn)一步使用ZKP

ZKP是一個不斷擴(kuò)展的領(lǐng)域,它為開發(fā)人員探索令人興奮和不確定的領(lǐng)域創(chuàng)造了條件。最常見的通用協(xié)議是零知識簡潔非交互式知識論證(zk-SNARK)。

以下是進(jìn)一步研究ZKP的一些建議:

  • 有關(guān)ZKP在區(qū)塊鏈中的實(shí)際應(yīng)用,可以查看Mina項(xiàng)目。 
  • ZKP在以優(yōu)化性能為核心的以太坊2級中也發(fā)揮著重要作用。對于空間中的特定項(xiàng)目,需要參考Polygon的Nightfall項(xiàng)目。 
  • 對于工作代碼和庫,可以參考Zilch項(xiàng)目。 
  • 有關(guān)主流公司如何在這一領(lǐng)域開展工作,可以參考Auth0與MATTR項(xiàng)目的合作。 

了解ZKP協(xié)議的一個很好的方法仍然是閱讀原始ZKP白皮書。這可以使人們了解實(shí)際的精神,在設(shè)想如何將計算時間的因素引入證明系統(tǒng),以限制攻擊者在NP時間內(nèi)欺騙證明的能力。一切都源于此,而實(shí)施代碼和基礎(chǔ)設(shè)施以實(shí)現(xiàn)這些想法的承諾就是現(xiàn)在所處的位置。

原文鏈接:https://www.infoworld.com/article/3668549/zero-knowledge-proof-finds-new-life-in-the-blockchain.html

責(zé)任編輯:武曉燕 來源: 51CTO技術(shù)棧
相關(guān)推薦

2019-06-24 16:30:33

區(qū)塊鏈零知識證明比特幣

2024-06-27 13:31:56

2024-04-03 09:00:00

人工智能神經(jīng)矩陣

2021-04-09 06:25:41

區(qū)塊鏈區(qū)塊鏈技術(shù)

2021-08-09 08:40:33

零知識證明零信任網(wǎng)絡(luò)安全

2017-02-17 09:14:14

Hadoop

2021-04-16 20:43:18

Go區(qū)塊鏈編程

2020-02-10 11:32:11

區(qū)塊鏈blockchain智能合約

2019-12-04 18:30:44

區(qū)塊鏈JavaJavaScript

2018-10-23 10:55:07

2019-03-13 11:23:29

區(qū)塊鏈區(qū)塊鏈技術(shù)身份驗(yàn)證

2019-11-22 11:10:26

區(qū)塊鏈技術(shù)

2021-02-02 10:40:10

區(qū)塊鏈版權(quán)保護(hù)技術(shù)

2018-05-19 23:51:28

2018HTML5區(qū)塊

2018-04-11 08:00:47

AI運(yùn)維生命力

2022-08-08 11:53:02

區(qū)塊鏈CIO

2022-12-09 07:57:15

2025-02-13 08:00:00

AI罕見病患者人工智能

2022-06-09 15:06:34

區(qū)塊鏈零知識隱私

2019-09-29 19:12:13

區(qū)塊鏈密碼學(xué)技術(shù)零知識證明
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號