零知識證明在區(qū)塊鏈的安全和隱私問題課件_第1頁
零知識證明在區(qū)塊鏈的安全和隱私問題課件_第2頁
零知識證明在區(qū)塊鏈的安全和隱私問題課件_第3頁
零知識證明在區(qū)塊鏈的安全和隱私問題課件_第4頁
零知識證明在區(qū)塊鏈的安全和隱私問題課件_第5頁
已閱讀5頁,還剩44頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

零知識證明在區(qū)塊鏈應(yīng)用中的安全和隱私問題零知識證明在區(qū)塊鏈應(yīng)用中的安全和隱私問題1大綱區(qū)塊鏈和ZKP介紹零知識證明在區(qū)塊鏈應(yīng)用中的安全和隱私問題實(shí)現(xiàn)漏洞信任風(fēng)險(xiǎn)非屏蔽交易信息泄漏密碼方案風(fēng)險(xiǎn)其他風(fēng)險(xiǎn)總結(jié)大綱區(qū)塊鏈和ZKP介紹2比特幣的隱私問題比特幣:去中心化數(shù)字貨幣防止雙花:廣播交易到公開賬本(區(qū)塊鏈)比特幣不存在匿名性假名≠匿名隱私問題:個人交易記錄/賬戶余額/商家現(xiàn)金流錢的等價性:黑錢/收藏幣比特幣的隱私問題比特幣:去中心化數(shù)字貨幣3隱私

VS

可審計(jì)性保護(hù)隱私?

數(shù)據(jù)加密加密與公開可審計(jì)性存在沖突隱私VS可審計(jì)性保護(hù)隱私?→數(shù)據(jù)加密加密與公開可審計(jì)4零知識證明x∈R,w接受或拒絕x∈R……π完備性:如果論述是正確的,證明者可以說服驗(yàn)證者正確性:如果論述是錯誤的,證明者無法說服驗(yàn)證者(可忽略概率說服)零知識性:驗(yàn)證者除了論述是正確的之外,無法獲得任何其他信息非交互式零知識證明(NIZK)如果因式分解困難,對任意NP語言都存在NIZK零知識證明x∈R,w接受或拒絕x∈R……完備性:如果論述是5零知識證明加密全部交易證明π:非交互式零知識證明,證明加密的交易合法(滿足合法規(guī)則、未雙花)解決加密與公開可審計(jì)性的沖突零知識證明加密全部交易6zkSNARKs通用性零知識證明方案性能通常不高區(qū)塊鏈性能要求高zkSNARKsSuccintNon-interactiveArgumentofKnowledgeZero-knowledgezkSNARKs通用性零知識證明方案性能通常不高區(qū)塊鏈性能7zkSNARKs流程圖待證明問題電路R1CSQAP參數(shù)生成證明者驗(yàn)證者FlattenSynthesizeIfftSetupPKVKx’,

π’x∈R(x’,w’)∈RzkSNARKs流程圖待證明問題電路R1CSQAP參數(shù)生成證8區(qū)塊鏈上zkSNARKs的應(yīng)用流程待證明問題電路R1CSQAP項(xiàng)目方:參數(shù)生成交易生成全網(wǎng)驗(yàn)證FlattenSynthesizeIfftSetupPKVKx’,

π’x∈R(x’,w’)∈R1.驗(yàn)證邏輯2.等價轉(zhuǎn)換3.公鏈參數(shù)生成4.交易生成(c1,c2,c3,

π)5.全網(wǎng)驗(yàn)證區(qū)塊鏈上zkSNARKs的應(yīng)用流程待證明問題電路R1CSQA9全景圖全景圖10零知識證明在區(qū)塊鏈應(yīng)用中的安全和隱私問題實(shí)現(xiàn)漏洞信任風(fēng)險(xiǎn)非屏蔽交易信息泄漏密碼方案風(fēng)險(xiǎn)其他風(fēng)險(xiǎn)零知識證明在區(qū)塊鏈應(yīng)用中的安全和隱私問題實(shí)現(xiàn)漏洞信任風(fēng)險(xiǎn)11實(shí)現(xiàn)漏洞實(shí)現(xiàn)漏洞12實(shí)現(xiàn)漏洞內(nèi)存破壞漏洞內(nèi)存安全語言:

rust、java、golibSNARKs(C++),該場景中,內(nèi)存破壞相關(guān)漏洞難以利用邏輯漏洞電路設(shè)計(jì)問題應(yīng)用層邏輯問題密碼實(shí)現(xiàn)漏洞新的密碼原件實(shí)現(xiàn)容易出現(xiàn)漏洞實(shí)現(xiàn)漏洞內(nèi)存破壞漏洞13電路設(shè)計(jì)電路設(shè)計(jì)復(fù)雜大量密碼算法實(shí)現(xiàn)大量約束、優(yōu)化審計(jì)需要高超的密碼技巧以zcash為例電路設(shè)計(jì)電路設(shè)計(jì)復(fù)雜14輸入輸入輸出輸出…………綁定簽名輸入錨

rt唯一值

nf根節(jié)點(diǎn)rt使用簽名值承諾

cv證明輸出輸出承諾

cmu臨時密鑰

epk密文1密文2值承諾

cv證明Zcash屏蔽交易證明輸入的總額與輸出的總額相等輸入輸入輸出輸出…………綁定簽名輸入錨rt唯一值nf根節(jié)15輸出電路公開私有中間值摘自qedit的審計(jì)報(bào)告輸出電路公開摘自qedit的審計(jì)報(bào)告16輸入電路公開私有中間值摘自qedit的審計(jì)報(bào)告輸入電路公開摘自qedit的審計(jì)報(bào)告17電路常見問題電路設(shè)計(jì)漏洞:ZcashFaerie

Gold攻擊攻擊者可選擇相同的rho,造成接收者無法使用收到的錢。鏈接:

/zcash/zcash/issues/98電路與非電路實(shí)現(xiàn)不一致未在知名項(xiàng)目中發(fā)現(xiàn)標(biāo)準(zhǔn)與實(shí)現(xiàn)不一致ZcashVersion2019.0.1

[Overwinter+Sapling]Page

139:

cm^{old}

與cm未綁定,惡意攻擊者可對相同note選擇多個cm^{old}

,產(chǎn)生多個nf,造成雙花LibrustZcash中實(shí)現(xiàn)沒有該問題電路常見問題電路設(shè)計(jì)漏洞:18應(yīng)用邏輯安全問題應(yīng)用開發(fā)者調(diào)用ZKP庫來實(shí)現(xiàn)ZKP應(yīng)用對底層ZKP缺乏足夠理解,代碼容易產(chǎn)生安全漏洞應(yīng)用邏輯安全問題應(yīng)用開發(fā)者調(diào)用ZKP庫來實(shí)現(xiàn)ZKP應(yīng)用19Semaphore雙花問題未限定nullifier長度,造成雙花Semaphore雙花問題未限定nullifier長度,造成20Tron零知識參數(shù)未校驗(yàn)未校驗(yàn)參數(shù)直接使用Librustzcash,造成多種安全問題(如雙花)Tron零知識參數(shù)未校驗(yàn)未校驗(yàn)參數(shù)直接使用Librustzc21Tron

nullifier雙花未校驗(yàn)一筆交易多個輸入的nullifier是否不同,造成雙花Tronnullifier雙花未校驗(yàn)一筆交易多個輸入的nu22密碼實(shí)現(xiàn)安全問題新方案實(shí)現(xiàn)易帶來額外風(fēng)險(xiǎn)LibSNARKs:R1CS-to-QAP

規(guī)約漏洞只有QAP中多項(xiàng)式是線性獨(dú)立的,才能保證soundness增加冗余約束修復(fù)問題/2015/437.pdfZcash側(cè)信道漏洞Reject攻擊、Ping攻擊節(jié)點(diǎn)處理與自身地址相關(guān)的交易:信息泄漏打破節(jié)點(diǎn)匿名性/timings/pingreject.pdf密碼實(shí)現(xiàn)安全問題新方案實(shí)現(xiàn)易帶來額外風(fēng)險(xiǎn)23信任風(fēng)險(xiǎn)信任風(fēng)險(xiǎn)24setup信任問題zkSNARKs思路:提前生成驗(yàn)證者挑戰(zhàn):x保留加密的x,丟棄明文x驗(yàn)證過程:檢查證明(A,B,C)滿足:已知明文x,可偽造任意證明不可檢測的后門(x)任意創(chuàng)建證明,無法被發(fā)現(xiàn)

(零知識性)解決信任問題:MPC生成加密的xsetup信任問題zkSNARKs思路:25MPC1:Powerof

tauMPC生成參數(shù)

(可通用給任何電路)公開可驗(yàn)證安全前提:至少一人誠實(shí)MPC1:PoweroftauMPC生成參數(shù)(可通用26MPC2:Sapling

MPC針對特定電路生成參數(shù)兩個MPC階段缺一不可MPC2:SaplingMPC針對特定電路生成參數(shù)兩個27MPC問題Ethereum、Tron都在進(jìn)行MPC仍有很多項(xiàng)目沒有可信的setupMPC過程完全人為控制一些MPC參與經(jīng)歷如果你沒有參與,你不能100%確認(rèn)安全還沒有考慮軟件實(shí)現(xiàn)問題MPC問題Ethereum、Tron都在進(jìn)行MPC28例子:ZoKratesZoKrates:

零知識證明智能合約編譯器將驗(yàn)證邏輯編譯為零知識驗(yàn)證合約參數(shù)生成由合約方控制合約生成者:證明偽造例子:ZoKratesZoKrates:零知識證明智能合約29非屏蔽交易信息泄漏非屏蔽交易信息泄漏30Zcash

交易分類85%14%1%tto

ttto

ssto

ssto

t2019-09透明交易 部分頻閉交易 完全頻閉交易大多數(shù)的交易可被追溯Zcash交易分類85%14%1%ttotttos31Zcash

貨幣池95%3%2%透明池

sapling池sprout池2019-09Zcash貨幣池95%3%2%透明池 sapling池sp32零知識證明在區(qū)塊鏈的安全和隱私問題課件33經(jīng)驗(yàn)式分析非屏蔽交易信息泄漏相似的使用習(xí)慣相關(guān)的地址:

地址聚類分析相關(guān)的金額:

金額匹配分析相關(guān)的時間:

時間相關(guān)分析案例分析:Shadowbrokers地址A地址C地址B1.1111

Zec5.4321

Zec6.5432

Zec屏蔽池USD1天后經(jīng)驗(yàn)式分析非屏蔽交易信息泄漏地址A地址C地址B1.111134輕節(jié)點(diǎn)隱私問題大多數(shù)參與者是輕節(jié)點(diǎn)解密后才能知道交易歸屬輕節(jié)點(diǎn)無區(qū)塊數(shù)據(jù)解密交易:輕節(jié)點(diǎn)需將解密密鑰交給全節(jié)點(diǎn)屏蔽交易對輕節(jié)點(diǎn)不友好:計(jì)算開銷大輕節(jié)點(diǎn)隱私無法得到保障目前ZKP數(shù)字貨幣項(xiàng)目主要為全節(jié)點(diǎn)設(shè)計(jì):市場上未見有好的輕節(jié)點(diǎn)解決方案輕節(jié)點(diǎn)隱私問題大多數(shù)參與者是輕節(jié)點(diǎn)35Tron交易掃描RPC服務(wù)Tron交易掃描RPC服務(wù)36非屏蔽交易信息泄漏信息泄漏原因:輕節(jié)點(diǎn)對屏蔽交易支持不足交易所僅支持透明交易經(jīng)驗(yàn)式對抗方法:使用屏蔽交易每次使用新地址金額不要相同等待足夠長的時間最佳方案:只使用屏蔽交易非屏蔽交易信息泄漏信息泄漏原因:37密碼方案風(fēng)險(xiǎn)密碼方案風(fēng)險(xiǎn)38密碼方案風(fēng)險(xiǎn)ZKP技術(shù)相對較新16年論文,17年大規(guī)模使用有待時間考驗(yàn)參數(shù)選擇和優(yōu)化比較激進(jìn)可證明安全有的困難問題并不標(biāo)準(zhǔn)依賴太多安全問題缺乏足夠的審計(jì)密碼方案風(fēng)險(xiǎn)ZKP技術(shù)相對較新39Zcash偽造漏洞CVE-2019-71672018年3月1日發(fā)現(xiàn)(Ariel

Gabizon),2019年公開零知識證明密碼方案[BCTV14]漏洞任意人可偽造證明,憑空創(chuàng)造Zcash影響多個Zcash的分叉項(xiàng)目大概8個月時間才完成修復(fù)改變整個證明方案,升級全網(wǎng)沒人知道漏洞是否被利用,因?yàn)槭橇阒R的Zcash官方認(rèn)為漏洞沒有被利用:很少有人擁有的高水平密碼技術(shù)發(fā)現(xiàn)該漏洞未發(fā)現(xiàn)zcash總額出現(xiàn)明顯問題Zcash偽造漏洞CVE-2019-716740Zcash偽造漏洞CVE-2019-7167[BCTV14]并不存在可證明安全[BCTV14]參數(shù)生成存在冗余元素可被利用生成偽造證明原理并不復(fù)雜[BCTV14]升級為[Groth16]可證明安全并非第一次出現(xiàn)漏洞BryanParno發(fā)現(xiàn)過另一個漏洞是否會是最后一次?Zcash偽造漏洞CVE-2019-716741Zcash承諾和哈希方案復(fù)雜僅承諾與哈希就涉及多個方案多個安全證明有待時間考驗(yàn)摘自qedit的審計(jì)報(bào)告Zcash承諾和哈希方案復(fù)雜摘自qedit的審計(jì)報(bào)告42其他風(fēng)險(xiǎn)其他風(fēng)險(xiǎn)43完美的零知識?數(shù)學(xué)上完美的零知識方案[Groth16]實(shí)際應(yīng)用會有額外的信息泄漏zcash的例子:證明是統(tǒng)計(jì)上零知識的密文安全性:依賴于困難問題打破了完美的零知識性完美的零知識性

≠ 完美的隱私保護(hù)輸出輸出輸出承諾

cmu臨時密鑰

epk密文1密文2值承諾

cv證明加密給ivk,ovk完美的零知識?數(shù)學(xué)上完美的零知識方案實(shí)際應(yīng)用會有額外的信息泄44屏蔽地址不可鏈接性屏蔽地址不可鏈接性:安全性依賴于Jubjub群上的DDH問題Jubjub群并非常用的ECC群,而是為了ZKP性能特制的DDH可能會被攻破交易信息在鏈上不可被抹去目前不可鏈接,不代表未來不可鏈接屏蔽地址不可鏈接性屏蔽地址不可鏈接性:45隱私與側(cè)信道側(cè)信道通常不被重視利用困難不直接造成安全問題隱

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論