999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

ACT:可審計的機密交易方案

2020-11-11 09:08:54姜軼涵
計算機研究與發展 2020年10期
關鍵詞:用戶

姜軼涵 李 勇 朱 巖

1(北京交通大學電子信息工程學院 北京 100044) 2(北京科技大學計算機與通信工程學院 北京 100083)

比特幣是中本聰在2009年提出的分布式密碼貨幣,其經過共識將交易信息(發送方、接收方、交易金額)打包公開存儲在區塊鏈上,因此可以不需要第三方中介而確認交易[1].在現代電子支付系統當中,用戶必須信任銀行不會篡改系統、不會濫用用戶的隱私,而比特幣采用化名地址給用戶提供了隱私保護.由于交易是公開存儲的,任何人都可以查看交易路徑,并可以向前追溯到該比特幣的起源.若交易與真實世界有關,則可能會追蹤到用戶真實身份,因此更多、更復雜的密碼學技術被應用在區塊鏈中以增強其隱私性.Zerocoin方案[2]通過非交互式零知識證明(non-interactive zero knowledge, NIZK)提供了發送方和接收方的不可關聯性,Zerocash方案[3]運用ZK-SNARKs提供了匿名性程度極高的密碼貨幣隱私保護方案[4],Monero方案[5]基于Crypto Note協議[6]、環狀機密交易Ring CT[7]來隱藏交易金額和交易雙方地址.然而,隱私保護程度的加強會帶來另一個問題:缺乏和難以審計,可能會讓地下錢莊洗錢、敲詐勒索等非法行為更加泛濫.文獻[8]中的機密交易方案,利用Pedersen承諾可隱藏交易金額,審計方無法確知區塊鏈中的交易情況,將導致網絡洗錢等違法交易行為難以控制.而若將交易數據直接對審計方公開,又與用戶隱私保護需求相悖,從而失去區塊鏈本身的意義.

本文針對機密交易中過度強調隱私保護所導致的對區塊鏈中的交易難以審計的問題,在保證用戶交易數據隱私的同時,授權審計方獲知某時間段內所有用戶的交易總額,提出可審計的機密交易方案.

1 相關工作

對于區塊鏈中隱私數據進行審計的嘗試目前主要有2類方法:1)在交易確認中加入中心方;2)利用密碼學工具.2016年英國央行和倫敦大學學院共同開發了數字貨幣框架RSCoin,由央行控制法定貨幣的發行,商業銀行存儲各交易賬本,最終再由央行確認放入鏈中[9].央行對交易享有最終確認權,以此達到監管審計的目的.2017年Cecchetti等人提出了Solidus協議,該協議由若干個銀行控制所有賬戶并代表用戶完成交易[10].通過引入可公開驗證的不經意RAM機為交易提供機密性.審計方通過2種方式進行審計:1)銀行能夠證明鏈上數據的正確性,審計方可以按需獲取交易日志并驗證其正確性和完整性;2)銀行共享其私有解密密鑰,審計方可以直接并主動監控銀行及其賬戶內的活動.

在鏈中引入中心方干預交易的確認很難兼容現有帶隱私保護的區塊鏈應用,研究人員逐漸引入密碼學工具以達到鏈外審計的目標.2016年,Garman等人擴展了Zerocash協議,通過引入追蹤密鑰追溯幣的交易歷史[11],為去中心化匿名支付提供追責功能.隨后,Naganuma等人提出可審計的Zerocoin方案,發送者在交易生成中嵌入審計信息,允許指定審計方獲得交易中的關聯信息[12].以上2類方案都是對逐條交易進行審計,需要較大的審計成本;同時方案更改了交易結構,使交易尺寸增大,導致區塊的傳輸性能降低.2018年,Narula等人提出即支持隱私保護又可審計的分布式賬本zkLedger[13].zkLedger采用多欄總分類賬結構,將銀行間所有交易保存在一個賬本上,一行代表一個交易,一列代表一個銀行的所有交易.由交易發送方產生交易(一行),使用Pedersen承諾隱藏金額,而對于未參與交易的銀行,發送方產生對金額值0的承諾,則可使交易參與方不被第三方知道[14].審計方通過賬本中的一列對銀行進行查詢,得到一個銀行的某些交易統計信息如交易和、均值等.zkLedger通過Schnorr型[15]非交互式零知識證明提供審計功能.與Zerocash方案不同,zkLedger方案不依賴可信第三方進行參數設置.與zkLedger粗粒度監管方式不同,Wüst等人提出了既支持隱私保護又可監管的密碼貨幣方案PRCash[16],其監管粒度較細,針對的是各節點之間的交易.PRCash改進Mimblewimble方案來產生交易[17],每個輸出均需要范圍證明和監管證明,監管方作為第三方驗證監管證明.PRCash方案監管的是交易額度,若超過限額,則通過監管證明解密部分信息獲得接收方身份;若未超出限額,可通過監管證明驗證其交易額在額度之內[14].但其只能監管到交易額的范圍,如何設置一個通用的閾值進行監管是一個難點,若頻繁采用小額度交易進行洗錢,可能會監管不當.2019年Li等人提出了可追溯的Monero方案[18].付款人在產生收款人一次性密鑰對時,同時產生標簽用于在收款人充當惡意付款人時追溯收款人的長期公鑰.審計方通過使用自己的私鑰解密標簽中密文即可獲得付款人的長期公鑰,而通過對交易中的密文進行解密則可找到相應的一次性公鑰,由此導致該方案的隱私性較弱.同年,Chen等人提出可審計追責的機密交易方案PGC[19],其將承諾形式的交易轉換成Elgamal加密的形式,無需對隨機數與金額保持追蹤來獲取信息;利用零知識證明確保其有效正確性;采用簽名證明賬戶所有權.對于有爭議的交易,PGC通過用戶對該交易金額的正確性進行零知識證明來達到審計問責的目的.但該方案的研究限于理論層面,在實際應用中的性能有待考究.

2 系統框架

本方案中交易的創建過程類似機密交易,輸入、輸出形式均為對金額的Pedersen承諾,同時輸入需要附帶發送方地址.以圖1為例介紹一個區塊的結構,該區塊中有2個交易:交易1為兩輸入單輸出,同時附帶一個范圍證明range proof(Out1);交易2為單輸入兩輸出,同時附帶2個輸出的聚合范圍證明range proof(Out2,Out3).通過Bulletproofs生成聚合的范圍證明,其具體構建見文獻[20].

Fig. 1 Block structure圖1 區塊結構

該系統由3種角色組成:審計方、區塊驗證者(Leader)、用戶.

1) 審計方.區塊鏈外具有審計功能的參與方,可以查看所有區塊以及審計多個區塊中所有交易的和.

2) 區塊驗證者.審計方、用戶相交互的媒介,設置為前一個區塊的記賬者,由共識協議(如PBFT共識)選出.

3) 用戶.產生交易發送至區塊鏈網絡的參與方,分為發送方與接收方.

圖2為例闡述審計過程[14]:

Fig. 2 Audit framework圖2 審計框架

1) 審計方想審計區塊鏈中多個區塊中所有交易的和,先產生審計請求發送給上一個區塊驗證者;

2) 區塊驗證者收到請求后驗證請求來源為審計方,則進行下一步與用戶進行交互,否則為非法請求,丟棄該請求;

3) 區塊驗證者轉發審計請求給各用戶,每個用戶驗證收到的審計請求,驗證通過后開始計算審計令牌;

4) 各用戶將令牌發送給驗證者,區塊驗證者根據令牌進行驗證,將每個用戶的結果計算、整合,得到最終結果發送給審計方;

5) 審計方將收到的結果解密得到所有交易的總和,并驗證其正確性.

3 ACT方案和安全模型定義

3.1 可審計機密交易方案(ACT)定義

ACT(auditable confidential transaction)方案由(Setup,Request,Verify_Request,Response,LDec,Add,Audit,Verify)8個算法組成[14]:

1)Setup(1λ)→(pubpara,secpara).參數生成算法,輸入安全參數λ,輸出公共參數pubpara、私有參數secpara.

2)Request(pubpara,req,ssk)→(req,sig).請求算法,由審計方執行,輸入公共參數pubpara、請求消息req與簽名私鑰ssk,輸出審計請求req及簽名sig.

3)Verify_Request(pubpara,req,sig)→{0,1}.驗證請求算法,由驗證者和用戶執行,輸入公共參數pubpara、審計請求req、簽名sig,輸出1代表審計請求驗證通過,可以進行后續步驟,0表示審計請求非法,丟棄該請求.

4)Response(pubpara,si,sri)→(Tokeni).響應算法,由用戶i執行,輸入公共參數pubpara、用戶i的交易和si、隨機數之和sri,輸出用戶i的審計令牌Tokeni.

5)LDec(pubpara,secpara,Tokeni)→(ci,msri).解密算法,由驗證者執行,輸入公共參數pubpara、secpara、審計令牌Tokeni,輸出每個用戶的交易和的密文ci以及每個用戶的隨機數和msri.

6)Add(pubpara,ci,msri)→(audit_data).求和算法,驗證者輸入公共參數pubpara、每個用戶交易和的密文ci、每個用戶的隨機數和msri,輸出審計數據audit_data.

7)Audit(pubpara,ask,audit_data)→sum.審計算法,審計方輸入公共參數pubpara、審計私鑰ask、審計數據audit_data,輸出交易和sum.

8)Verify(pubpara,sum,audit_data)→{0,1}.驗證算法,審計方輸入公共參數pubpara、上一步算法產生的交易和sum、審計數據audit_data,輸出0或1.1表示審計結果正確,用戶和驗證者均誠實;0表示驗證者不誠實.

3.2 安全模型定義

本節介紹ACT方案所滿足的安全性質,分別為可審計性、審計可靠性以及交易金額隱私性[14].

定義1.可審計性.對于ACT方案,如果滿足如下條件,則審計方可以審計到所有用戶的交易總額.

Verify(pubpara,sum,audit_data)=1]≥1-v(λ),

其中,υ(λ)為可忽略函數.

即對于誠實按照操作進行交互的用戶和驗證者,審計方可以正確審計到一段時間內該網絡總的交易額.

定義2.審計可靠性.對于ACT方案,如果滿足條件,則該方案具有審計可靠性.

Verify(pubpara,sum,audit_data)=0]≥1-v(λ),

其中,RD指真實數據,?RD表示偽造的數據,enc_sum表示所有用戶交易總和的密文.即審計方可以檢測到偽造數據,假數據無法通過審計驗證.

4 ACT方案設計

ACT方案基本設計思想如下:利用數字簽名算法生成審計請求,確保只有審計方有權審計.用戶對個人交易總額進行雙重加密生成審計令牌:第1重加密采用同態加密,使得審計方和區塊驗證者無法獲知各用戶各自的交易和;第2重加密附帶零知識證明,可檢測不誠實用戶偽造數據,同時保證交易數據隱私和審計數據準確性.審計令牌包含交易輸入承諾中的隨機數總和以及零知識證明.區塊驗證者根據令牌解密外層密文,驗證零知識證明有效性;隨后將各用戶的內層密文相乘、以及將隨機數的和相加,同時發給審計方.審計方解密得到所有用戶的交易額總和,并利用Pedersen承諾的同態性可驗證其正確性.

4.1 ACT方案具體構建

ACT方案具體構造為:

1)Setup(1λ)→(apk,ask,lpk,lsk,spk,ssk).輸入安全參數λ,產生審計方公鑰apk=(N,g1),私鑰ask=μ;驗證者私鑰為lsk,公鑰lpk=(f,g2),Elgamal加密體制模數k以及審計方簽名私鑰ssk,簽名公鑰spk.輸出pubpara=(k,apk,lpk,spk),secpara=(ask,lsk,ssk).

2)Request(pubpara,req,ssk)→(req,sig).請求信息req=(h_first,h_end)表示審計區塊高度從h_first到h_end的區塊交易和;對req生成數字簽名,簽名記作sig=(Ω,s),輸出審計請求req和簽名sig.

3)Verify_Request(pubpara,req,(Ω,s))→{0,1}.驗證簽名sig,輸出1代表審計請求驗證通過,可以進行后續步驟,0表示審計請求非法,丟棄該請求.

4)Response(pubpara,si,sri)→(csumi,π1i,sri,csri,π2i).對于交易總額進行雙重加密及證明,具體過程由3步組成:

π1i=NIZK{Enc(lpk,hsri)明文是hsri∧公鑰為lpk};

輸出Token=(csumi,sri,csri,π1i,π2i).

5)LDec(pubpara,secpara,csumi,sri,csri,π1i,π2i)→(ci,msri).驗證者驗證π1i,π2i的有效性后,將csumi和csri進行解密.csumi的明文ci=cp2(cp1lsk)-1modk,csri的明文msri=ct2(ct1lsk)-1modk,計算hsri是否等于msri,相等則證明用戶誠實,所發隨機數之和數據正確.

7)Audit(pubpara,ask,enc_sum)→sum.審計方利用私鑰ask=μ將驗證者發來的密文enc_sum進行解密,得到交易和sum=Dec[enc_sum]=L(enc_sumμmodN2)L(gμmodN2) modN,其中L(x)=(x-1)N.

4.2 零知識證明的構建

以NIZK-π1i為例展示響應算法Response(pubpara,si,sri)→(csumi,π1i,sri,csri,π2i)中零知識證明的具體構建.NIZK-π1i=NIZK{Enc(lpk,hsri)中明文是hsri且公鑰為lpk},即證明用戶發給驗證者的隨機數之和sri正確,與承諾中對應隨機數之和相匹配.設群G=f=g=h,公鑰lpk=flsk,A,B,C∈G,用戶(證明者)使得驗證者相信他知道使得A=fx,B=

5 安全性分析

本節對ACT方案的安全性進行證明.

定理1.在用戶和驗證者都是誠實的前提下,審計方能夠審計到一段時間內所有交易的總消費額.

證明. 假設用戶和驗證者均誠實,則審計方收到的數據信息是正確的.審計方收到enc_sum后,根據Pailliar加密同態性,

證畢.

定理2.如果零知識證明滿足可靠性,且承諾方案滿足綁定性,則ACT方案滿足審計可靠性.

證明. 可靠性指若審計方收到虛假數據,則其通過驗證算法的可能性極小.虛假數據來源于2方面:①用戶;②驗證者.

情況2.假設存在不誠實的驗證者對審計方進行欺騙,即在Add(ci,msri)→(enc_sum,r_sum)算法產生輸出后,編造假數據通過審計方驗證的概率不可忽略,則存在enc_sum′≠enc_sum,r_sum≠r_sum′,使得Pr{Dec[enc_sum′]=sum′:gsum′hr_sum′=gsumhr_sum}≥1-v(λ),v(λ)為可忽略函數.與承諾方案的綁定性相矛盾,所以不誠實的驗證者無法欺騙審計方.綜上,該方案具有可靠性.

證畢.

定理3.如果零知識證明是零知識的,且判定復合剩余問題是困難的,則該方案滿足交易金額隱私性.

證明. 通過游戲序列來證明本定理.

證畢.

證畢.

證明. 考慮圖5所示的區分算法D:

c=(1+N)sb×rNmodN2.

Pr[D(N,r)=1]=12.

因此,

由判定復合剩余假設,可得:

|Pr[D(N,[rNmodN2])=1]-
Pr[D(N,r)=1]|≤v(λ).

因此,如果零知識證明是計算零知識的,且判定復合剩余問題是困難的,則該方案滿足交易金額隱私性.

證畢.

6 性能分析

本節通過仿真實驗對交易中范圍證明與審計中各算法進行性能評估.實驗環境配置為Mac OS操作系統,8 GB RAM,CPU為Intel Core i5 2.3 GHz.實驗程序采用C語言編寫,調用pbc,libsecp256k1等密碼學庫進行雙線性映射、點乘等運算.如圖6、圖7所示為PRCash與Bulletproofs范圍證明的生成與驗證時間對比,PRCash范圍證明采用的是文獻[23]中基為4的證明形式,由于其采用了效率較低的雙線性映射,因此時間較長,隨著范圍的增加,使用Bulletproofs生成證明的效率可以提高3倍以上,而驗證效率則可以提高8倍以上.

Fig. 6 Generation time for range proof圖6 范圍證明生成時間

Fig. 7 Verification time for range proof圖7 范圍證明驗證時間

圖8所示為ACT方案中各算法在不同密鑰長度下的執行時間折線圖.實驗中對Paillier密碼體制中的N分別應用了4種長度:512 b,1 024 b,2 048 b,3 072 b,在4種長度下模擬得到了Response(分為encrypt與NIZK兩步)、LDec(分為decrypt與NIZK兩步)、Audit算法的執行時間.結果顯示,算法中NIZK的生成時間約為加密的2倍,而驗證者驗證NIZK的時間則達到解密的10倍左右,占據了算法執行的大部分時間.在2 048 b下,用戶生成審計令牌的時間大約需要0.66 s,驗證者對于一個用戶發來的一個響應執行LDec算法大約需要0.6×2=1.2 s,若用戶數為100個,則每次審計時驗證者需要大約2 min.

Fig. 8 Execution time for ACT algorithm圖8 ACT算法的執行時間

圖9所示為交易個數在10萬~100萬時審計方執行Verify算法的時間.實驗中模擬單個交易金額均為100密碼幣,由于運行Verify算法需要將審計的區塊內所有交易輸入承諾相乘,因此圖9中實線顯示交易數越多,算法執行時間越長.若采取預先計算的形式,將交易乘積緩存,則審計時無需做大量的乘法運算,如圖9中虛線所示,采用緩存形式的算法執行時間基本獨立于交易個數,且時間很短,約為3 ms.

Fig. 9 Execution time for Verify algorithm圖9 運行Verify算法的執行時間

7 總 結

針對機密交易金額隱私性強導致審計缺失和審計困難的問題,本文提出可審計交易總額的機密交易方案ACT,利用簽名對審計請求來源進行身份認證,確保審計方的合法身份.該方案在審計中引入Paillier同態加密,可以保護單個交易以及單個用戶的金額隱私,同時采用零知識證明在保證交易隱私性的同時可有效檢測到不誠實用戶偽造數據,從而保障審計數據的準確性.通過安全性分析及性能分析,該方案可以實現一段時間內區塊鏈網絡中交易總額的審計,同時可以有效保護交易金額隱私.且交易創建過程中利用Bulletproofs范圍證明技術,使得交易創建與驗證的效率提高.應指出:由于交易和范圍有限,當交易和較小時,驗證者有可能通過窮舉獲取到單個用戶的交易和,可通過調整審計區塊范圍提高金額總和,從而增加驗證者通過窮舉獲知用戶交易和的時間成本.同時計算審計令牌時涉及的零知識證明占據了大部分時間,因此如何進一步優化審計策略、提高審計效率是下一步研究的方向.

致謝感謝審稿專家的寶貴意見讓本文更完善,比如指出驗證者可能窮舉獲得單個用戶的交易和問題.

猜你喜歡
用戶
雅閣國內用戶交付突破300萬輛
車主之友(2022年4期)2022-08-27 00:58:26
您撥打的用戶已戀愛,請稍后再哭
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年5期)2016-11-28 09:55:15
兩新黨建新媒體用戶與全網新媒體用戶之間有何差別
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
挖掘用戶需求尖端科技應用
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 国产屁屁影院| 国产区福利小视频在线观看尤物| 5388国产亚洲欧美在线观看| 免费在线不卡视频| 亚洲日本精品一区二区| 91黄视频在线观看| 国产91视频免费观看| 亚洲AV成人一区二区三区AV| 国产福利拍拍拍| 亚洲精品成人福利在线电影| 青青国产视频| 谁有在线观看日韩亚洲最新视频| а∨天堂一区中文字幕| 人妻丝袜无码视频| 日本成人不卡视频| 一级毛片视频免费| 亚洲水蜜桃久久综合网站 | 精品天海翼一区二区| 国模极品一区二区三区| 日韩精品久久久久久久电影蜜臀| 区国产精品搜索视频| 丰满少妇αⅴ无码区| 欧美不卡二区| 99热这里只有精品久久免费| 无码高潮喷水专区久久| 中文字幕乱码中文乱码51精品| 亚洲男女天堂| 欧美在线中文字幕| 国内精品91| 黄色网在线| 亚洲成a人片77777在线播放| 国产亚洲高清在线精品99| 国产精品免费电影| 欧美视频在线播放观看免费福利资源 | 欧美日韩一区二区在线免费观看| 毛片在线播放a| 亚洲国产在一区二区三区| 国产欧美日韩在线一区| www.亚洲天堂| 精品国产中文一级毛片在线看| 亚洲成人动漫在线观看| 欧美日韩中文国产| 亚洲欧美成aⅴ人在线观看| 女人天堂av免费| 伊人蕉久影院| 四虎永久免费网站| 日本在线免费网站| 亚洲有码在线播放| 在线国产你懂的| 日韩在线网址| 欧美福利在线播放| 91啦中文字幕| 精品无码专区亚洲| 精品国产成人三级在线观看| 免费国产黄线在线观看| 国产菊爆视频在线观看| 日韩一区二区在线电影| 77777亚洲午夜久久多人| 国产免费怡红院视频| 国产精品一线天| 国产中文在线亚洲精品官网| 五月婷婷中文字幕| 成年片色大黄全免费网站久久| 国国产a国产片免费麻豆| 日韩无码真实干出血视频| 国产综合欧美| Jizz国产色系免费| 久久www视频| 国产成人综合网| 国产乱子伦视频在线播放| 91丝袜乱伦| 久热这里只有精品6| 呦视频在线一区二区三区| 激情无码字幕综合| 国产AV无码专区亚洲A∨毛片| 国产色婷婷| 高潮毛片免费观看| 成人综合在线观看| 婷婷六月天激情| 亚洲人成在线免费观看| 无码一区中文字幕| 亚洲成人77777|