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

五分鐘技術(shù)趣談 | 淺談零知識(shí)證明及應(yīng)用

區(qū)塊鏈
隨著NFT市場(chǎng)的火熱,區(qū)塊鏈應(yīng)用層被進(jìn)一步打開,性能問題和隱私問題成為了區(qū)塊鏈領(lǐng)域極受關(guān)注的兩個(gè)方向。零知識(shí)證明技術(shù)因在區(qū)塊鏈隱私保護(hù)和擴(kuò)容方面的優(yōu)勢(shì)逐漸進(jìn)入大眾視野。

Part 01

什么是零知識(shí)證明 

零知識(shí)證明,指的是證明者能夠在不向驗(yàn)證者提供任何超出陳述本身有效性的信息,使驗(yàn)證者相信某個(gè)論斷是正確的,它實(shí)質(zhì)上是一種涉及兩方或更多方的協(xié)議,即兩方或更多方完成一項(xiàng)任務(wù)所需采取的一系列步驟。

證明者向驗(yàn)證者證明并使其相信自己知道或擁有某一消息,但證明過程不能向驗(yàn)證者泄漏任何關(guān)于被證明消息的信息。例如,給定一個(gè)隨機(jī)數(shù)的哈希值,證明者可以使驗(yàn)證者相信確實(shí)存在具有該哈希值的數(shù)字,但不能透露它是什么。

Part 02

技術(shù)原理 

零知識(shí)證明的技術(shù)原理包括零知識(shí)證明在密碼學(xué)上需要滿足的基本屬性,以及以經(jīng)典的Schnorr協(xié)議為例說明交互式零知識(shí)證明協(xié)議到非交互零知識(shí)證明協(xié)議的轉(zhuǎn)化。

2.1 基本屬性

零知識(shí)證明涉及的密碼學(xué)與數(shù)學(xué)理論較多,包括計(jì)算/統(tǒng)計(jì)不可區(qū)分性(Computationally/Statistically Indistinguishiable)、模擬器(Simulator)、隨機(jī)預(yù)言機(jī)(Random Oracle)模型等計(jì)算復(fù)雜性理論內(nèi)容,用較為通俗的語言描述即為:

(1)完備性(Completeness):只要證明者P擁有相應(yīng)正確知識(shí),就能夠通過驗(yàn)證者V的驗(yàn)證,即P有足夠大的概率使V確信。

(2)可靠性(Soundness):如果證明者P沒有相應(yīng)正確知識(shí),則無法通過驗(yàn)證者V的驗(yàn)證,即P成功欺騙V的概率可忽略。

(3)零知識(shí)性(Zero-Knowledge):證明者P在交互的過程中僅向驗(yàn)證者V揭露其是否擁有相應(yīng)正確知識(shí),而不會(huì)泄露任何關(guān)于知識(shí)的額外信息。

2.2 交互式零知識(shí)證明

零知識(shí)證明起源于交互式證明協(xié)議,本文以Schnorr協(xié)議為例分析交互式零知識(shí)證明的原理和特點(diǎn)。Schnorr協(xié)議是一種身份認(rèn)證協(xié)議,也是如今許多PKI數(shù)字簽名方案。

PKI是Public Key Infrastructure的首字母縮寫,直譯為公鑰基礎(chǔ)設(shè)施;PKI是一種遵循標(biāo)準(zhǔn)的利用公鑰加密技術(shù)為電子商務(wù)的開展提供一套安全基礎(chǔ)平臺(tái)的技術(shù)和規(guī)范。

在Schnorr協(xié)議中,證明者A通過和驗(yàn)證者B進(jìn)行三次交互的方式證明了其擁有公鑰pk對(duì)應(yīng)的私鑰sk,而驗(yàn)證者B無法在整個(gè)過程中獲取私鑰sk的信息。

圖片圖片

2.3 非交互式零知識(shí)證明

交互式零知識(shí)證明協(xié)議依賴于驗(yàn)證者的隨機(jī)嘗試,需要證明者和驗(yàn)證者進(jìn)行多次交互才能完成。非交互式零知識(shí)證明(Non-Interactive Zero-Knowledge, NIZK)將交互次數(shù)減少到一次,可實(shí)現(xiàn)離線證明和公開驗(yàn)證。例如,在區(qū)塊鏈等零知識(shí)證明應(yīng)用場(chǎng)景中,通常需要將證明進(jìn)行直接發(fā)布,而非依賴于交互實(shí)現(xiàn),且需要支持多方的公開離線驗(yàn)證。

Part 03

 理論發(fā)展  

零知識(shí)證明體系最早來源于 Goldwasser、Micali 和 Rackoff 于1985年合作提出并發(fā)表的論文《The Knowledge Complexity of Interactive Proof Systems》,這篇論文闡釋了在一個(gè)交互系統(tǒng)中,經(jīng)過 K 輪交互,需要多少知識(shí)被交換,從而證明一個(gè)證言是正確的,如果需要交換的知識(shí)為零,則稱之為零知識(shí)證明。

早期的零知識(shí)證明技術(shù)在可用性和效率方面都有所欠缺,一直停留在理論層面,直到2015 年 Zcash 使用零知識(shí)證明系統(tǒng),實(shí)現(xiàn)了對(duì)交易及金額隱私的保護(hù),推動(dòng)零知識(shí)證明技術(shù)快速發(fā)展。

目前零知識(shí)證明技術(shù)主流的算法有3種:

(1)zk-SNARK(Zero-Knowledge Succinct Non-interactive Arguments of Knowledge,零知識(shí)簡(jiǎn)明非交互式知識(shí)論證)是一類應(yīng)用廣泛的通用零知識(shí)證明方案,通過將任意的計(jì)算過程轉(zhuǎn)化為若干門電路的形式,并利用多項(xiàng)式的一系列數(shù)學(xué)性質(zhì)將門電路轉(zhuǎn)化為多項(xiàng)式,進(jìn)而生成非交互式的證明,可實(shí)現(xiàn)各類復(fù)雜的業(yè)務(wù)場(chǎng)景的應(yīng)用。目前,zk-SNARK已在數(shù)字貨幣、區(qū)塊鏈金融等區(qū)塊鏈領(lǐng)域?qū)嶋H落地,是目前最為成熟的通用零知識(shí)證明方案之一。

zk-SNARK的啟動(dòng)需要可信設(shè)置,可信設(shè)置是指在受信任的設(shè)置中,多方各自生成一個(gè)部分密鑰來啟動(dòng)網(wǎng)絡(luò),然后銷毀該密鑰。如果用于創(chuàng)建信任設(shè)置的密鑰的保密信息沒有被銷毀,那么這些保密信息可能會(huì)被利用通過虛假驗(yàn)證來偽造交易。

(2)zk-STARK (Zero-Knowledge Succinct Transparent Arguments of Knowledge,代表零知識(shí)簡(jiǎn)潔透明的知識(shí)論證),zk-STARK是zk-SNARK算法的一種技術(shù)演變,解決了SNARK依賴可信設(shè)置的弱點(diǎn),可以不依賴任何信任設(shè)置來完成區(qū)塊鏈驗(yàn)證,從而降低啟動(dòng)網(wǎng)絡(luò)的復(fù)雜性并消除任何串通風(fēng)險(xiǎn)。

(3)Bulletproofs(Short Non-interactive Zero-knowledge Proofs,簡(jiǎn)短的非交互式零知識(shí)證明協(xié)議),Bulletproofs兼顧了SNARKs和 STARKs的優(yōu)點(diǎn),無需可信設(shè)置即可運(yùn)行,并且可以將加密證明的大小從超過 10kB 縮小到不到 1kB,壓縮比率達(dá)到80%以上,同時(shí)降低80%的交易費(fèi)用,因相對(duì)較低的交易費(fèi)用、算法體積和無需信任在領(lǐng)域內(nèi)受到極大關(guān)注。

經(jīng)試驗(yàn)對(duì)比,三類算法的性能如下:

圖片圖片

Part 04

實(shí)踐應(yīng)用 

零知識(shí)證明能夠保障數(shù)據(jù)的安全性,能夠解決很多隱私問題,而且證明過程計(jì)算量小、雙方交換的信息量大大減少,具備安全和高效的優(yōu)點(diǎn)。零知識(shí)證明最初經(jīng)常被應(yīng)用于身份驗(yàn)證,數(shù)字簽名,認(rèn)證協(xié)議等,區(qū)塊鏈的出現(xiàn)給零知識(shí)證明的應(yīng)用提供了更多新的方向。

4.1 擴(kuò)容

區(qū)塊鏈由于自身的性能問題導(dǎo)致其難以滿足當(dāng)下需求,基于零知識(shí)的擴(kuò)容方案將有望解決區(qū)塊鏈性能瓶頸。擴(kuò)容是指在不犧牲去中心化和安全性的前提下提高交易速度和交易吞吐量。ZK-Rollups是基于零知識(shí)證明的Layer2擴(kuò)容方案,通過將計(jì)算轉(zhuǎn)移到鏈下來提高區(qū)塊鏈的吞吐量,即將大量交易打包到一個(gè)Rollup 區(qū)塊內(nèi),并在鏈下為該區(qū)塊生成一個(gè)有效性證明,Layer 1 上的智能合約只需驗(yàn)證該證明即可直接應(yīng)用新的狀態(tài),可以實(shí)現(xiàn)更低的 Gas 和更高的鏈上安全性。

4.2 隱私保護(hù)

在區(qū)塊鏈背景下,零知識(shí)證明可以用于驗(yàn)證交易的有效性而不會(huì)泄露交易中的發(fā)送者、接受者、涉及金額及其他敏感數(shù)據(jù)。因此零知識(shí)證明在保護(hù)鏈上數(shù)據(jù)隱私方面發(fā)揮著巨大作用,典型應(yīng)用包括隱私L2、隱私公鏈、隱私幣和隱私KYC。

4.2.1 隱私L2

Aztec Network是以太坊上第一個(gè)Layer2隱私區(qū)塊鏈項(xiàng)目,旨在為中心化應(yīng)用程序提供隱私和擴(kuò)展能力。

Aztec采用類似比特幣賬戶原理的UTXO模型。在該模型中,票據(jù)note是協(xié)議運(yùn)算的基礎(chǔ)單元,資產(chǎn)交易時(shí),票據(jù)的值被加密,票據(jù)所有權(quán)變更,票據(jù)登記所將會(huì)記錄每個(gè)票據(jù)的狀態(tài),用戶的AZTEC資產(chǎn)即票據(jù)登記所里所有被該用戶地址所擁有的有效票據(jù)之和。與以太坊的賬戶模型不同,基于UTXO模型的資產(chǎn)交易可以看作是note的所有權(quán)變更,而不是交易雙方賬戶的余額狀態(tài)更新,且只有進(jìn)行交易的雙方才知道所有權(quán)已經(jīng)變更。

4.2.2 隱私公鏈

Aleo是第一個(gè)提供完全隱私保護(hù)應(yīng)用程序的平臺(tái),是基于零知識(shí)證明隱私保護(hù)的公鏈。Aleo的核心是ZEXE,即去中心化隱私計(jì)算DPC(decentralized private computation),將計(jì)算和共識(shí)分開,提供zkCloud在鏈下執(zhí)行交易,執(zhí)行交易結(jié)束后將證明提交到鏈上。由于只有證明被提交到鏈上,從技術(shù)上來講任何人都不可能看到或利用任何交易細(xì)節(jié)的知識(shí),從而實(shí)現(xiàn)交易隱私。

Partisia Blockchain是一條半許可隱私公鏈,專為信任、透明、隱私和高速而構(gòu)建,用于公共和私人信息的通用協(xié)調(diào)。Partisia在區(qū)塊鏈上提供額外的數(shù)據(jù)保護(hù)層,用戶可以通過零知識(shí)計(jì)算(ZK Computations )控制對(duì)其數(shù)據(jù)的訪問。零知識(shí)計(jì)算即融合零知識(shí)證明、安全多方計(jì)算、全同態(tài)加密等技術(shù),為區(qū)塊鏈增加隱私和保密性。

4.2.3 隱私幣

Zcash被戲稱為隱私幣鼻祖,保密交易的隱私依賴于標(biāo)準(zhǔn)密碼學(xué)中的哈希函數(shù)和流密碼,在鏈上將交易記錄中的發(fā)送人、接收人、交易量進(jìn)行加密,用戶可裁量選擇是否向其他人提供查看密鑰(擁有此密鑰的人才能看到交易的內(nèi)容),在鏈下使用zk-SNARKs 對(duì)交易的有效性進(jìn)行驗(yàn)證。

4.2.4 隱私KYC

KYC 是Know Your Customer的簡(jiǎn)稱,可以理解為實(shí)名認(rèn)證。zkPass是基于安全多方計(jì)算和零知識(shí)證明的去中心化KYC 解決方案,允許用戶通過Web2 身份憑據(jù)向第三方匿名證明他們的身份聲明。如Ufile Chain誠信檔案聯(lián)盟鏈平臺(tái),一個(gè)專注于個(gè)人信息的認(rèn)證、儲(chǔ)存、流通、確權(quán)和隱私保護(hù)的聯(lián)盟區(qū)塊鏈平臺(tái),以高校、企業(yè)、政府部門等這些權(quán)威機(jī)構(gòu)為核心節(jié)點(diǎn)的聯(lián)盟鏈體系,Ufile Chain運(yùn)用零知識(shí)證明技術(shù)來保證個(gè)人信息的隱私安全。數(shù)據(jù)使用者只能獲取到與其業(yè)務(wù)相關(guān)的有限信息,確保數(shù)據(jù)使用者難以獲取完整有效的明文用戶信息,包括UfileChain官方在內(nèi),都無法獲取有效的用戶個(gè)人信息。

4.3 上層應(yīng)用

基于上述基礎(chǔ)設(shè)施,零知識(shí)證明技術(shù)在游戲、去中心化金融DeFi、NFT(非同質(zhì)化代幣)、數(shù)字身份、數(shù)字錢包等方向的上層應(yīng)用中也展現(xiàn)了其擴(kuò)容和隱私保護(hù)的能力,部分應(yīng)用如下表所示:

圖片圖片

Part 05

總結(jié)

零知識(shí)證明技術(shù)在理論研究和工程實(shí)現(xiàn)層面都取得了較好的發(fā)展,零知識(shí)證明技術(shù)已然成為區(qū)塊鏈領(lǐng)域一項(xiàng)重要的底層技術(shù),尤其是為以太坊等底層鏈正面臨的擴(kuò)容和隱私保護(hù)相關(guān)問題提供了解決方案。隨著區(qū)塊鏈等新興技術(shù)的發(fā)展以及隱私計(jì)算需求的興起,零知識(shí)證明技術(shù)在安全多方計(jì)算、金融領(lǐng)域、共性連金融領(lǐng)域等場(chǎng)景中都有著一定的應(yīng)用潛力。

責(zé)任編輯:龐桂玉 來源: 移動(dòng)Labs
相關(guān)推薦

2023-07-23 18:47:59

Docker開源

2023-04-15 20:25:23

微前端

2023-07-02 16:34:06

GPU虛擬化深度學(xué)習(xí)

2023-08-06 07:05:25

Android優(yōu)化

2024-12-18 14:10:33

2023-09-02 20:22:42

自動(dòng)化測(cè)試軟件開發(fā)

2023-07-16 18:49:42

HTTP網(wǎng)絡(luò)

2023-06-03 21:06:05

2023-07-02 16:17:31

VR虛擬現(xiàn)實(shí)

2023-07-02 16:09:57

人工智能人臉識(shí)別

2023-09-12 07:10:13

Nacos架構(gòu)

2023-09-03 19:21:07

大數(shù)據(jù)架構(gòu)

2023-08-23 07:21:44

JsonSchema測(cè)試

2023-08-07 06:39:03

網(wǎng)絡(luò)傳輸

2023-07-31 08:55:15

AI技術(shù)網(wǎng)絡(luò)暴力

2023-08-29 06:55:43

2023-07-12 15:50:29

機(jī)器學(xué)習(xí)人工智能

2023-08-29 06:50:01

Javamaven

2023-08-06 07:00:59

Openstack網(wǎng)絡(luò)

2023-08-15 14:46:03

點(diǎn)贊
收藏

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