柳 欣 張 波
1(山東青年政治學院信息工程學院 濟南 250103)2(山東省高校信息安全與智能控制重點實驗室(山東青年政治學院) 濟南 250103)3(濟南大學信息科學與工程學院 濟南 250022) (lxonne@163.com)
?
基于DAA-A的改進可授權電子現金系統
柳 欣1,2張 波3
1(山東青年政治學院信息工程學院 濟南 250103)2(山東省高校信息安全與智能控制重點實驗室(山東青年政治學院) 濟南 250103)3(濟南大學信息科學與工程學院 濟南 250022) (lxonne@163.com)
當前,已有的可授權電子現金系統通信效率不高,同時其公平交換子協議要求使用低效的cut-and-choose證明技術且集中式的可信第三方(trusted third party, TTP)容易遭受拒絕服務攻擊.此外,多個相關的公平支付系統或者要求使用cut-and-choose證明技術,或者使用了具有安全性缺陷的可驗證加密技術.利用基于屬性的自盲化證書系統構造了一個具有屬性的直接匿名證明(direct anonymous attestation with attributes, DAA-A)方案,然后基于該方案構造了滿足更強可開脫性的可授權電子現金系統.為了提高用戶端在支付過程中的運算效率,使用了Arfaoui等人的集合關系證明協議,同時利用預計算技術對用戶的知識簽名進行了效率優化.為了避免執行低效的cut-and-choose證明,設計了一個支持分布式TTP的樂觀公平交換子協議.通過與Golle-Mironov模型相結合,新系統可以應用于外包計算領域.與已有同類系統相比,新系統同時滿足允許多次支付、無需使用cut-and-choose技術和用戶無狀態性等多個理想性質.此外,新系統的公平交換子協議引入了分布式TTP,即考慮了拒絕服務攻擊的風險.
可授權電子現金;直接匿名證明;公平交換;cut-and-choose證明;外包計算

直接匿名證明(direct anonymous attestation, DAA)方案[4-6]是當前可信計算技術的一個重要分支.在此類方案中,嵌入了可信平臺模塊(trusted platform module, TPM)芯片的用戶主機平臺(Host)可以向驗證者證明自己掌握有效的認證令牌.本質上講,該令牌是由發布權威為TPM私鑰頒發的數字證書.認證過程的主要運算由Host承擔,且TPM僅執行少量關鍵性的運算.具有屬性的直接匿名證明(direct anonymous attestation with attributes, DAA-A)[5]是對DAA方案的擴展,即用戶的認證令牌是關于TPM私鑰k0和用戶屬性向量(k1,k2,…,kn)的數字證書.同時,在認證過程中,用戶可以靈活設置由“公開”屬性和“隱藏”屬性構成的集合,從而符合了隱私保護的最小信息泄露原則.本文認為,可以將DAA-A方案作為設計可授權電子現金系統的有效本原.具體原因包括4點:
1) 在DAA-A方案中,TPM與Host是2個不同的實體,只要TPM保持誠實,即使在Host被攻破的情況下,仍然可以保護用戶不受陷害;
2) 可授權電子現金系統的取款和支付協議分別對應于DAA-A方案的用戶注冊和簽名協議;
3) DAA-A方案允許用戶有選擇性地對個人敏感屬性進行隱藏,從而有利于將個人信息的泄露降低至最低程度;
4) DAA-A方案容易與其他的可信計算技術(如基于TPM的群托管協議[7])相結合,從而設計出效率更高的公平交換協議.
我們認為,Camenisch等人[1]的系統(簡稱原始系統)存在2個主要缺點:1)該系統是基于強RSA假設設計的,因此用戶在支付過程中的通信效率不高.2)背書元素end與數字商品之間的交換是基于Asokan等人[8]的樂觀公平交換協議實現的,從而繼承了后者的4個缺點,即:①要求用戶在交換過程中執行低效的cut-and-choose證明過程;②要求交換雙方在發生爭執的情況下向可信第三方(trusted third party, TTP)申請仲裁,即必須無條件地信任TTP;③TTP本身是集中式的,因此容易遭受拒絕服務攻擊;④交換雙方都可能成為爭議解決子協議的發起者,因此用戶必須保持狀態[9].
除了原始系統之外,相關的代表性文獻總結如下:在文獻[10]中,Blanton提出一個改進的有條件電子現金系統.此類系統將標準電子現金系統的支付協議替換為有條件的轉移協議.該協議要求付款方與收款方共同參與,且收款方最終將獲得一筆有條件的付款,即該付款僅能在某個公開條件R得到滿足后才能得到兌現.Blanton的系統[10]與可授權電子現金系統[1]的2個主要區別是:1)要求由TTP宣布條件R是否得到滿足;2)允許收款人將所得的有條件的付款轉移給他人.然而,Blanton的系統效率不高且要求付款方與收款方完全信任TTP.在文獻[11]中,Chen等人基于可授權電子現金技術[1]和Golle-Mironov外包計算模型[12]提出一個公平的有條件支付系統.該系統允許用戶將運算任務分為多項更小的任務,并將所得任務連同未經授權的電子貨幣coin′外包給志愿的計算機(稱為worker).每當worker完成任務并返回正確的運算結果,用戶會對事先支付的coin′提供授權.考慮到雙方相互并不信任,該系統還提供了借助TTP確保交換過程公平性的機制.然而,Chen等人的系統存在3個主要缺點:1)底層的可授權電子現金系統是基于Brands電子現金系統構造的.但是,后者的安全性尚未得到完全證明[13],而且不支持多次支付.因此,用戶需要在每次外包運算之前重新執行取款協議.2)TTP并非完全可信,即TTP有可能會與用戶或worker進行合謀.3)該系統的公平交換協議是基于Ateniese[9]的關于離散對數的可驗證加密方案實現的.需要指出的是,Ateniese的技術存在缺陷,因為其底層加密方案僅滿足較弱的語義安全性[14].在文獻[15]中,Carbunar等人提出一個適用于外包運算環境的公平支付系統.該系統存在3個主要缺點:1)底層電子現金系統不滿足匿名性,因此無法保護用戶的隱私;2)為了驗證用戶預先支付的電子貨幣是否有效,用戶需要與worker執行低效的cut-and-choose證明協議;3)并未引入爭議解決機制,即未考慮worker有可能不向用戶提供外包運算結果的情況.最近,Küpcü[16]提出一個新的公平支付系統.在外包運算開始之前,用戶與worker需要事先在同一家銀行開設賬戶.銀行負責對雙方賬戶余額進行托管,且worker需要為自己提供錯誤運算結果的惡意行為支付罰金.需要指出的是,為了實現對錯誤結果的檢測,該系統要求用戶將同一個任務外包給多個worker,因此顯著增加了用戶的通信和運算耗費.
本文著重研究了基于DAA-A技術設計可授權電子現金系統的問題以及如何利用所得系統解決外包運算環境下的公平支付問題.具體貢獻體現在4個方面:
1) 本文提出新的可授權電子現金系統安全模型.已有的安全模型[1]是基于模擬方式定義的.新的安全模型是基于游戲方式定義的,且考慮了用戶端Host被攻破而TPM芯片保持誠實的情況,即定義了更強的可開脫性.
2) 本文基于Ringers等人[17]的自盲化證書系統具體實現了文獻[5]中的DAA-A方案框架.然后,基于所得DAA-A方案構造了改進的可授權電子現金系統,使得用戶在支付階段只需執行雙線性群G1上的高效運算.
3) 本文提出與可授權電子現金系統緊密結合的公平交換協議.該協議支持用戶利用背書元素end購買商家的數字商品m,且允許雙方在發生爭執時向分布式的TTP申請仲裁.同時,用戶只是爭議解決子協議的被動參與方,因此無需保持狀態.
4) 本文提出新系統的具體應用實例,即構造了支持用戶購買外包運算結果的公平支付系統.



3) 屬性空間上的簽名方案以及基于屬性的自盲化證書系統.最近,Ringers等人[17]提出一個簽名方案,該方案由密鑰產生、簽名、驗證3個步驟構成:
Step1. 簽名者選取Q∈RG2,選取a,a0,a1,…,an,z∈R*p,設置A=Qa,A0=Qa0,A1=Qa1,A2,…,An=Qan,Z=Qz.簽名者設置公鑰為(Q,A,A0,A1,…,An,Z),私鑰為(a,a0,a1,…,an,z).
Step2. 給定屬性向量(k0,k1,…,kn),簽名者選取κ∈R*p,K∈RG1,計算.最后,輸出簽名(κ,K,S,S0,S1,…,Sn,T).
Step3. 給定屬性向量(k0,k1,…,kn)和對應的簽名(κ,K,S,S0,S1,…,Sn,T),驗證者驗證是否同時滿足:



此外,Ringers等人利用上述方案構造了基于屬性的自盲化證書系統.該系統允許用戶多次展示關于屬性向量(k0,k1,…,kn)的證書,并且根據需要定義向驗證者揭示的屬性集合.
4) 關于離散對數的可驗證加密技術.假設證明者P與驗證者V共享公開元素gm,且P額外掌握秘密元素m,使得(gm,m)滿足離散對數關系R.假設Enc表示Camenisch-Shoup公鑰加密方案[14]的加密算法,且pk表示TTP在該方案下的公鑰.在文獻[14]中,Camenisch等人提出關于離散對數的可驗證加密技術.利用該項技術,P可以向V提供Encp k(m),并且向V證明2項事實:①Encp k(m)是利用pk產生的關于秘密元素m的Camenisch-Shoup方案密文;②秘密元素m是元素gm關于底數g的離散對數.
5) 基于TPM的可驗證群托管協議.假設發送方P擁有公開元素cmt,且cmt滿足某個性質R.在文獻[7]中,Tate等人提出基于TPM的可驗證群托管協議.在該協議中,P向接收方V提供關于秘密證據end的托管密文escrow,并且能使得后者確信P掌握證據end,滿足(cmt,end)∈R.同時,當自己與某個符合特定訪問結構Γ的恢復代理集合進行合作時,就能得到證據end;相反,則無法獲得有關end的任何有用信息.Tate等人指出,可以利用(k,n)門限技術實現訪問結構Γ,并且提供了該協議在R為離散對數關系情況下的具體實例.此外,Tate等人強調,若end為P在公平交換過程中的秘密信息,則可以利用該協議取代低效的cut-and-choose證明技術和可驗證加密技術.該協議的顯著特點是,P利用TPM芯片產生托管密文escrow,并且使用存儲于TPM內部受保護區域中的證明身份密鑰(attestation identity key)AIK產生對escrow的簽名,從而利用V對TPM芯片本身的信任取代了經典cut-and-choose證明技術借助驗證雙方的多輪交互而實現的統計上的信任.

2.1 設計思想

1) 在Avoine等人的協議中,用戶需要在交換(Exchange)子協議中使用Stadler[24]的公開可驗證的秘密分享方案和基于離散對數的可驗證加密方案.然而,Stadler的可驗證加密方案因為使用了僅滿足語義安全性的ElGamal加密方案而存在安全隱患[14].同時,該方案要求用戶執行低效的cut-and-choose證明.為了提高用戶端運算效率,本文使用了基于TPM的可驗證群托管協議[7].
2) 在Avoine等人的協議中,商家同樣需要在恢復(Recovery)子協議中使用Stadler的可驗證加密方案.基于上述原因,本文使用了效率更高且滿足選擇密文攻擊(chosen-ciphertext attack, CCA)安全性的Camenisch-Shoup可驗證加密方案[14].
2.2 本文系統的參與方
本文系統的執行過程涉及以下參與方,即用戶U、銀行B、商家M以及TTPP1,P2,…,Pn,其中U的角色可以劃分為TPM芯片與主機Host.
2.3 本文系統的符號描述

1) 假設所有的參與方都利用安全信道進行通信[23].
2) 假設U的TPM芯片是由誠實制造廠商根據公開標準生產的,且滿足5個性質:①TPM本身具備抗篡改性;②TPM使用的公鑰加密算法滿足CCA安全性;③TPM使用的數字簽名算法在自適應選擇消息攻擊下滿足不可偽造性;④TPM利用抗碰撞的單向函數產生消息摘要;⑤可信CA已經為TPM的密鑰AIK頒發了數字證書cert(AIK)[7].
2.5 本文系統的詳細描述
2.5.1 系統建立(Setup)
可信算法執行以下步驟:

Step3. 定義抗碰撞的散列函數H1:{0,1}*→p,H2:{0,1}*→G1,H3:{0,1}*→p,H4:{0,1}*→{0,1}ω′;
基于彈性梁彎曲理論建立小麥莖稈在橫向受迫條件下的力學模型,如圖2為單株小麥莖稈在受橫向載荷F下發生彎曲時的示意圖,XL為單株小麥莖稈在橫向力F的作用下,麥穗頂端的撓度值。
2.5.2 銀行系統建立(Setup for Bank)
B執行以下步驟:
Step1. 選取a,a0,a1,a2,z∈R*p,設置A=Qa,Z=Qz,Ai=Qai,i=0,1,2;
Step2. 選取ξ∈R*p,設置Y=Q′ξ;
Step4. 初始化公開列表RL={};
Step5. 定義skB=(a,a0,a1,a2,z,ξ),pkB=(A,A0,A1,A2,Z,Y).
2.5.3 用戶系統建立(Setup for Bank)
U(TPM+Host)執行以下步驟:
Step3. 選取帶密鑰的散列函數Hash以及密鑰hk.
2.5.4 取款(Withdraw)
為了提取可支付的電子錢包,U(TPM+Host)與B執行以下步驟:
Step1.Host向B發送取款請求reqWithdraw,B選取nB∈Rp,K∈RG1,計算S=Ka,Si=Kai,i=0,1,2,并且向Host發送(ID,nB,K,S,S0,S1,S2).


Step4.B驗證π1是否有效,若是,則選取κ″∈R

2.5.5 現金分割(Splitcoin)
假設U(TPM+Host)希望向M支付一個電子貨幣,它需要與M共同執行以下步驟:
Step1.Host向M發送支付請求reqSpend.
Step2.M選取nM∈R*p,并且返回nM.

Step4.Host與TPM聯合產生知識簽名



2.5.6 支付(Spend)
在該協議中,U(TPM+Host)向M支付未經授權的電子貨幣,雙方的具體步驟如下:
Step1.Host向M發送cmt,coin′.

Step3. 對于i=1,2,…,|RL|,M驗證是否滿足t≠bki,0,其中ki,0∈RL.
Step4. 若上述檢查通過,則M保存cmt,coin′.
2.5.7 重構(Reconstruction)

2.5.8 存款(Deposit)
假設M獲得了U支付的coin.為了實現存款,M與B執行如下步驟:
Step1.M向B發送coin.

Step3. 若驗證通過,則B將coin作為已支付的電子貨幣進行保存,并且將相應金額存入M的賬戶,同時,B向M返回確認信息;否則,B向M返回失敗信息.
2.5.9 身份追蹤(Identify)

2.6 公平交換協議的詳細描述
2.6.1 交換(Exchange)
假設U(TPM+Host)希望向M購買數字商品m,且m可以編碼為ρ上的整數.為此,M已經向U提供了關于m的描述信息descr(m)=gm,其中g為ρ階循環群Υ的生成元,滿足×2-ω′-ω″-1[25]且參數ω′與ω″分別用于定義底層Camenisch-Shoup可驗證加密方案的知識證明協議的挑戰空間以及控制該協議的零知識性.而且,U已經利用支付協議向M提供了cmt,coin′.對于i=1,2,…,n,假設TTP中Pi已經公開了自己在某CCA安全的加密方案(Enc,Dec)下的公鑰pki.在當前協議中,U與M將實現關于end和m的公平交換.此外,符號Time表示交換交易的截止時間,且Timemax表示M在恢復子協議中發送給任何參與方的消息總是能在Timemax時間內送達.雙方具體交換過程如下:

Step1.1. 產生隨機數r,并將r保存在其內部受保護區域.

Step1.3. 產生r在(k,n)-Shamir門限方案下的秘密份額r1,r2,…,rn,即選取s1,s2,…,sk-1∈R*p,定義.對于i=1,2,…,n,計算ri=F(i).
Step1.4. 對于i=1,2,…,n,執行以下步驟:
Step1.4.1. 設置hCond=H3(ConditionU);

Step1.4.3. 利用AIK中的私鑰SKA產生關于ci的簽名SignSKA(ci),并且設置Ci=(ci,SignSKA(ci)).

Step2.1. 驗證由隱私CA頒發的證書cert(AIK)是否有效;
Step2.2. 對于i=1,2,…,n,將Ci分離為Ci=(ci,SignSKA(ci))的形式,并且驗證簽名SignSKA(ci)是否有效;

Step3. 在接收到m之后,Host驗證是否滿足gm=descr(m),若是,則向M發送end;否則,Host一直等待直至Time時刻,從而終止當前交換過程.


2.6.2 恢復(Recovery)
在Time-Timemax時刻之前,M與P1,P2,…,Pn共同執行以下步驟:




本節介紹知識簽名π1,π2的實現過程.在具體執行過程中,我們采用文獻[6]中的方式實現了TPM與Host間的運算任務分配.此外,π3的實現可以直接根據文獻[14,25]中的技術得出.
3.1 π1的具體實現過程
1)π1的產生過程如下:
Step1.Host選取κ′,k1,k2∈R*p,并且向TPM發送(ID,cntID,nB,S,S0,S1,S2,κ′,k1,k2).



Step5.Host輸出π1=(c,sκ′,sk0,sk1,sk2).
2)π1的驗證過程如下:
Step1. 將π1分離為π1=(c,sκ′,sk0,sk1,sk2)的形式;

3.2 π2的具體實現過程
1)π2的產生過程如下:

Step2.TPM計算私鑰k0=H1(DAASeed‖cntID‖ID),計算t=bk0.TPM選取rk0,rk0×(J+k2)∈R
Step3.Host選取rβ,rκ,rk1,rk2,rend,rJ,rend×(J+k1),rend×(J+k2),rl,rν∈Rp,計算:









然后,Host向TPM發送(R1,R2,R4,R5,…,R10,rβ,rκ,rk1,rk2,rend,rJ,rend×(J+k1),rend×(J+k2),rl,rν);

Step5.Host輸出π2=(c,sβ,sκ,sk0,sk1,sk2,send,sJ,send×(J+k1),sk0×(J+k2),send×(J+k2),sl,sν).
2)π2的驗證過程如下:
Step1. 將π2分離為π2=(c,sβ,sκ,sk0,sk1,sk2,send,sJ,send×(J+k1),sk0×(J+k2),send×(J+k2),sl,sν)的形式;
Step2. 計算:









3.3 π2實現過程的效率優化
為了進一步提高π2實現過程的效率,可以采用文獻[6]的方式將π2的實現過程劃分為預計算階段和在線計算階段.優化后的π2實現過程如下:
1) 在預計算階段

2) 在線計算階段


Step3.Host計算R6,R8,并且向TPM發送(R1,R2,R4,R5,…,R10,rβ,rκ,rk1,rk2,rend,rJ,rend×(J+k1),rend×(J+k2),rl,rν);
Step4.TPM計算并且向Host發送(c,sβ,sκ,sk0,sk1,sk2,send,sJ,send×(J+k1),sk0×(J+k2),send×(J+k2),sl,sν);
Step5.Host輸出π2=(c,sβ,sκ,sk0,sk1,sk2,send,sJ,send×(J+k1),sk0×(J+k2),send×(J+k2),sl,sν).
引理1. 在隨機預言模型下,可以在多項式時間內從知識簽名π2中提取出秘密知識,使得以下等式成立,即










(1)
(2)
(3)
(4)

(5)
(6)

(7)
(8)
(9)

(10)

(11)
(12)
(13)
(14)
(15)
(16)
(17)

(18)

(19)

(20)

(21)

(22)
根據式(17)、式(22)得出:

(23)

(24)
證畢.

Step1.選取J∈R{1,2,…,M},l∈R*p,并且設置;
Step2.選取α,β∈R*p,并且設置;

證畢.
4.1 新的可授權電子現金系統的安全模型

1) 正確性.首先,U通過與B執行取款協議而獲得電子貨幣coin.在交易之前,B利用現金分割協議將coin轉化為(end,cmt,coin′)的形式,使得end與cmt滿足單向群同態關系cmt=φ(end).然后,U利用支付協議向M支付(cmt,coin′).在完成交易后,M獲得end,滿足cmt=φ(end).此時,M可以利用重構算法將coin′轉換為coin.此后,當M利用coin與B執行存款協議時,該協議一定會取得成功.

① 初始化.B執行系統建立和銀行系統建立算法.然后,B向A提供params,pkB.
② 詢問.在該階段,B為A模擬預言機Hash(·),Withdraw(·),Spend(·)和Corrupt(·)的執行過程:
Ⅰ Hash詢問.當接收到A提供的(i,M),B在散列函數Hi(i=1,2)的值域上選取隨機元素,并將該元素返回給A.
ⅡWithdraw詢問.該詢問分2種情況:
情況2. 當接收到A提供的用戶身份U*,TPM私鑰k0和att,B代表B與A執行取款協議,并且將TPM私鑰k0加入列表RL.
ⅢSpend詢問.該詢問分2種情況:
情況1. 當接收到A提供的用戶身份U,B代表U與A執行現金分割和支付協議.


3) 匿名性.假設敵手A能攻破B*,M*和U*.對于A而言,它無法將U的取款、現金分割和支付操作關聯起來,也無法將U執行的2次取款操作關聯起來.在實驗執行過程中,A充當B*,M*和U*的角色,且B充當U的角色.詳細步驟如下:
① 初始化.B執行系統建立和銀行系統建立算法.然后,B向A提供params,pkB,skB.
② 詢問階段1.在該階段,B為A模擬預言機Hash(·),Withdraw(·),Spend(·)和Corrupt(·)的執行過程:
Ⅰ Hash詢問.模擬過程與平衡性實驗相同.
ⅡWithdraw詢問.當接收到A提供的用戶身份U和att,B代表U與A執行取款協議.
ⅢSpend詢問.當接收到A提供的用戶身份U,B代表U與A執行現金分割和支付協議.
ⅣCorrupt詢問.當接收到A提供的用戶身份U,B返回該用戶的TPM私鑰k0,att和電子錢包,并將k0加入列表RL.



⑤ 結束.A輸出挑戰用戶下標b′.最終,A獲勝的條件是b′=b.

① 初始化.B執行系統建立算法.然后,B向A提供params,并且接受后者提供的pkB.
② 詢問.在該階段,B為A模擬預言機Hash(·),Withdraw(·),Spend(·)和Corrupt(·)的執行過程:
Ⅰ Hash詢問.模擬過程與平衡性實驗相同.

ⅢSpend詢問.該詢問分2種情況:
情況1. 當接收到A提供的用戶身份U,B代表U與A執行現金分割和支付協議.

③ 結束.A輸出coin1與coin2.最終,A的獲勝條件是同時滿足:
Ⅰcoin1與coin2均能通過存款協議的驗證過程;
Ⅱcoin1與coin2含有相同的貨幣序列號;
Ⅲ 當利用coin1與coin2執行身份追蹤算法時,將揭示某個誠實用戶的身份.
定理1. 在隨機預言模型下,只要XKEA假設、XDH假設和離散對數假設成立,則新的可授權電子現金系統滿足正確性、平衡性、匿名性和可開脫性.
證明. 假設B在各安全性質實驗之前自行創建列表HU,CU,RL,Swallet,分別用于存放誠實TPM的私鑰、被攻破的TPM的私鑰、被廢除的TPM的私鑰以及用戶提取的電子錢包.
1) 正確性.該性質容易觀察得出.限于篇幅,省略了具體過程.
2) 平衡性.B以底層屬性空間上的簽名方案公鑰(Q,A,A0,A1,A2,Z)作為輸入.B利用系統建立算法中的方式產生params中的剩余參數.B選取ξ∈R*p,設置Y=Q′ξ,并且定義集合}.B初始化列表RL.B設置pkB=(Q,A,A0,A1,A2,Z),skB=(*,*,*,*,*,ξ),其中,*表示未知元素.最后,B向A提供params,pkB.在當前實驗中,B為A提供以下的預言服務:
① Hash詢問.當接收到A提出的關于Hi(i=1,2)的散列詢問,B分別返回在p(或G1)上選取的隨機元素.同時,B需要確保所提供的回答滿足一致性.
②Withdraw詢問.對該詢問的回答分為2種情況:
③Spend詢問.對該詢問的回答分為2種情況:
情況1. B以誠實用戶Uj的身份與A執行現金分割和支付協議.



Ⅰcoin*可以通過存款協議的有效性驗證過程;
Ⅱ 對于每個kj,0∈CU,滿足kj,0∈RL;
Ⅲcoin*并非通過向B提出Spend詢問而產生的.
① Hash詢問.模擬方式同平衡性實驗.
②Withdraw詢問.當接收到A的詢問內容Uj,att,B與A執行取款協議.在該過程中,B充當Uj的角色,且A充當B*的角色.最后,B設置HU←HU∪{kj,0},Swallet←Swallet∪{((kj,0,kj,1,kj,2),κj,Sj,0,Sj,1,Sj,2,Tj,Jj=0)}.
③Spend詢問.當接收到A的詢問內容Uj,B分為3種情況進行處理:
情況1. 滿足j?{j0,j1}.B利用所掌握的Uj的TPM私鑰和電子錢包誠實地與A執行現金分割和支付協議.
情況2. 滿足j=j0.B選取r∈R*p,設置r.B丟棄在取款協議中產生的TPM私鑰.B借助對隨機預言機輸出的控制能力模擬產生cmt,coin′,并且將它們提供給A.coin′中的知識簽名

情況3. 滿足j=j1.B選取r∈R*p,設置r.剩余的模擬過程與情況2相同.
④Corrupt詢問.當A請求攻破Uj,若j?{j0,j1},則B將對應的TPM私鑰kj,0和電子錢包返回給A,并且設置CU←CU∪{kj,0},RL←RL∪{kj,0}.否則,B模擬失敗.


① Hash詢問.模擬方式同平衡性實驗.

情況1. 滿足j≠j*,B在取款協議中選取kj,0,并且以誠實方式與A合作產生知識簽名π1.最后,B設置HU←HU∪{kj,0},Swallet←Swallet∪{((kj,0,kj,1,kj,2),κj,Sj,0,Sj,1,Sj,2,Tj,Jj=0)}.

Ⅲ B設置HU←HU∪{kj*,0},Swallet←Swallet∪{((kj*,0,kj*,1,kj*,2),κj*,Sj*,0,Sj*,1,Sj*,2,Tj*,Jj*=0)},其中kj*,0為未知元素.
③Spend詢問.B分為2種情況進行處理:
情況1. B以誠實用戶Uj的身份與A執行現金分割和支付協議.此時,若滿足j≠j*,則B利用所掌握的TPM私鑰和電子錢包以誠實方式產生cmt,coin′,并將它們提供給A.若滿足j=j*,則B模擬產生cmt,coin′,并將它們提供給A.

④Corrupt詢問.當A請求攻破Uj,若j≠j*,則B將對應的TPM私鑰kj,0,att和電子錢包返回給A,并且設置CU←CU∪{kj,0},RL←RL∪{kj,0}.否則,B模擬失敗.
證畢.

定理2. 假設k表示底層Shamir門限方案的門限值,在滿足|B2| 證明. 1) 完備性.該性質表明,當U與M均保持誠實時,U會在交換協議結束后獲得所期望的數字商品m.同時,M會獲得U的秘密元素end.觀察得出,在U與M保持誠實的情況下,該性質一定會得到滿足.若由于通信延遲而導致U的消息message3無法在Time-Timemax之前及時送達,M將執行恢復子協議.根據條件|B2| 2) 公平性.該性質表明,當在U與M中至少有一方保持誠實時,在交換協議結束后,或者是U得到m且M得到end,或者U與M均未獲得有關m與end的任何信息.公平性的證明過程分2種情況: ①U保持誠實且M*是惡意的.需要指出的是,由于U是誠實的,因此消息message1是采用正確方式產生的.此時,分為2種子情況: ⅠM*提供的消息message2是錯誤的.此時,U可以借助驗證等式gm=descr(m)而發覺這一點,此時它不再向M*發送消息message3,而是一直等待直至Time時刻.若M*選擇不運行恢復子協議,則任何參與方都無法獲得有關商品m的任何有用信息.顯然,此時整個交換過程是公平的.若M*選擇在Time-Timemax時刻之后執行恢復子協議,由于只有Pi∈B2才會為M*提供關于Ci的解密服務.根據條件|B2| ②U*是惡意的且M是誠實的.此時,分為2種子情況: ⅠU*提供的消息message1是錯誤的(或已經丟失).顯然,M能借助底層可驗證群托管協議的SigVerifier算法發覺這一點,因此它決定不向U*提供message2.此時,整個交換過程將在Time時刻后終止.顯然,此時整個交換過程是公平的. 3) 時效性.該性質表明,整個交換過程最終一定會終止.由于設置了超時時間Time,因此本文協議滿足該性質. 4) 保密性.該性質表明,任何其他的參與方都無法獲得有關m與end的任何有用信息.若恢復子協議并未得到執行,則表明信息交換僅發生在U與M之間.此時,被動參與方Pi∈(B1∪B2∪B3∪B4)無法獲得有關m與end的任何有用信息.若恢復子協議得到執行,則某些Pi∈(B1∪B2∪B3∪B4)會獲得Ci∈message1的解密結果.盡管k個合謀的Pi能恢復r,但由于它們不掌握d,因此無法恢復end.顯然,根據π3的零知識性和底層Camenisch-Shoup加密方案的安全性,它們也無法揭示m. 證畢. 在本節,我們基于第2節的可授權電子現金系統提出改進的有條件的公平支付系統.與可授權電子現金系統相比,新的支付系統需要增加運算任務產生算法,且該算法使用了Golle等人[11-12]的技術.同時,需要對原有的現金分割、支付和公平交換協議做出修改.限于篇幅,我們僅著重描述本節公平支付系統與第2節電子現金系統的主要差別: 2) 現金分割協議.在該協議中,除了向workeri提供cmt,coin′,Host還需要提供運算任務Fi=(f,Di,Mi)以及輔助程序Si. 在本節,我們以實現外包計算環境下的公平支付為應用目標,對本文系統與已有的相關系統[1,10-11,15-16]進行了比較.首先,我們在表1中提供了它們在7個重要性質方面的比較結果.在運算平臺方面,本文系統要求部署在可信計算平臺上,而其他系統都是針對PC機平臺設計的.在文獻[1,16]和本文系統中,用戶通過執行取款協議而獲得可以多次支付的電子錢包,而其他系統則僅支持單次支付.文獻[1]系統的公平交換過程以及文獻[10,15]系統的支付過程均要求用戶與worker執行低效的cut-and-choose證明.為了避免執行該項證明,文獻[11,16]系統使用了可驗證加密技術,而本文系統則采用了基于TPM的群托管技術.文獻[11,15]和本文系統都使用了Golle-Mironov外包計算模型,其他系統則未采用該模型.為了保護用戶隱私,多數系統都滿足取款和支付過程的匿名性,但文獻[15]系統除外.文獻[10,15]系統均未提供用戶與worker間的公平交換機制,其余系統均借助TTP實現了公平交換過程.然而,僅有本文系統考慮了拒絕服務攻擊的風險.最后,本文系統與文獻[11]系統的一個優勢是,用戶無需在公平交換過程中保持狀態,從而有利于在移動設備上進行部署. Table 1 Main Properties Comparison of the Related Systems 在表2中,我們提供了本文系統與已有系統的通信耗費比較結果,且比較過程中假定以80 b安全性為目標.文獻[1,11,15-16]系統是在p階橢圓曲線群G和RSA群N上構造的,而文獻[10]和本文系統是在雙線性群(G1,G2)和RSA群N上構造的.對于文獻[1,11,15-16]系統,選取|p|=160 b,且N上的元素長度為1024 b.對于文獻[10]和本文系統,假設(G1,G2)是采用MNT曲線實現的,群G1上的元素長度為171 b[26].對于文獻[1,10-11,15-16]系統,散列函數的輸出長度為160 b.對于本文系統,散列函數H1,H2,H3,H4的輸出長度分別為160 b,171 b,160 b,512 b.文獻[1,10,15]系統使用了cut-and-choose證明技術,根據文獻[8]結論,該項證明要求至少迭代執行40輪.需要指出的是,文獻[11,15]和本文系統的外包運算過程都使用了Golle-Mironov模型,因此要求用戶在公平交換過程中向worker提供由檢查點構成的集合.在表2中,我們采用了文獻[15]的估算方法,即假設該集合中檢查點的數量為10.為了獲得具體的通信耗費估算結果,我們采用了文獻[12]中的外包運算任務實例,即給定80 b對稱加密方案下的密文CT和明文PT,要求尋找與PT相匹配的密鑰.此外,符號Sol表示worker提供的外包運算結果,其通信耗費設為|Sol|.正如引言中所述,文獻[16]系統要求用戶將同一個運算任務外包給多個worker,因此用戶在支付和公平交換過程中的通信耗費需要乘以一個為θ>1的因子. Table 2 Communication Cost Comparison of the Related Systems 在表3中,我們提供了本文系統與已有系統的運算耗費比較結果.在比較中,我們僅統計代價較高的指數運算和對運算,而且不再區分單指數運算和多指數運算.我們采用如下方式將所有運算都估算為RSA群上的指數運算:在使用MNT曲線的情況下,1次群G1和群GT上的指數運算分別相當于0.1次和1次RSA群的指數運算[26].1次對運算相當于10次RSA群的指數運算[26].1次群G上的指數運算相當于 0.1次RSA群的指數運算.文獻[1,10,15]系統的cut-and-choose證明過程和本文系統的公平交換過程都要求使用CCA安全的公鑰加密系統.在比較過程中,我們統一采用了RSA-OAEP加密方案.該方案解密過程的運算耗費相當于1次RSA群的指數運算,而加密過程高效得多(其效率約為前者的18~19倍[27]).此外,本文系統的公平交換過程要求TPM利用AIK中的私鑰部分產生數字簽名,我們使用了RSA簽名方案.同時,TPM需要利用(k,n)-Shamir方案對背書元素end進行秘密分享.采用文獻[7]的估算方法,我們選取n=2.如上所述,對于文獻[16]系統,用戶在支付和公平交換過程中的運算耗費需要乘以一個為θ的因子.最后,我們在表3中用上標*和 **分別指示本文系統中TPM和Host的運算耗費.同時,上標+指示采用預計算技術后的運算耗費. Table 3 Computation Cost Comparison of the Related Systems (Number of Exponential Operations) Note: *indicates the computation cost of TPM;**indicates the computation cost of Host; +indicates the computation cost by using the technique of pre-computation. 針對已有的可授權電子現金系統通信效率不高且要求使用低效cut-and-choose證明技術的問題,本文基于DAA-A技術提出一個改進的可授權電子現金系統,并利用所得系統解決了外包運算環境下的公平支付問題.與已有同類系統相比,本文系統的優勢是可以部署于可信計算平臺,而且同時滿足允許多次支付、無需使用cut-and-choose技術和用戶匿名性等實用性質.此外,本文系統的公平交換子協議可以有效抵抗拒絕服務攻擊,且無需要求用戶保持狀態.效率分析表明,在支付和公平交換階段,本文系統用戶端的運算和通信耗費接近于高效的文獻[11]系統.在采用預計算技術后,用戶端在支付階段的運算性能顯著優于其他系統. [1]Camenisch J, Lysyanskaya A, Meyerovich M. Endorsed e-cash[C] //Proc of IEEE S&P 2007. Piscataway, NJ: IEEE, 2007: 101-115 [2]Camenisch J, Hohenberger S, Lysyanskaya A. Compact e-cash[G] //LNCS 3494: Proc of EUROCRYPT 2005. Berlin: Springer, 2005: 302-321 [3]Yu Yulei, Dong Xiaolei, Cao Zhenfu. A trustee-based and efficient divisible e-cash scheme[J]. Journal of Computer Research and Development, 2015, 52(10): 2304-2312 (in Chinese)(虞郁磊, 董曉蕾, 曹珍富. 基于可信第三方的高效可分電子現金方案[J]. 計算機研究與發展, 2015, 52(10): 2304-2312) [4]Yang Bo, Feng Dengguo, Qin Yu, et al. Research on direct anonymous attestation scheme based on trusted mobile platform[J]. Journal of Computer Research and Development, 2014, 51(7): 1436-1445 (in Chinese)(楊波, 馮登國, 秦宇, 等. 基于可信移動平臺的直接匿名證明方案研究[J]. 計算機研究與發展, 2014, 51(7): 1436-1445) [5]Chen L, Urian R. DAA-A: Direct anonymous attestation with attributes[G] //LNCS 9229: Proc of TRUST 2015. Berlin: Springer, 2015: 228-245 [6]Desmoulins N, Lescuyer R, Sanders O. Direct anonymous attestations with dependent basename opening[G] //LNCS 8813: Proc of CANS 2014. Berlin: Springer, 2014: 206-221 [7]Tate S R, Vishwanathan R. Efficient verifiable escrow and fair exchange with trusted hardware[EB/OL]. (2013-05-29) [2015-11-01]. http://eprint.iacr.org/2013/427 [8]Asokan M, Shoup V, Waidner M. Optimistic fair exchange of digital signatures[J]. IEEE Journal on Selected Areas in Communications, 2000, 18(4): 593-610 [9]Ateniese G. Verifiable encryption of digital signatures and applications[J]. ACM Trans on Information and System Security, 2004, 7(1): 1-20 [10]Blanton M. Improved conditional e-payments[G] //LNCS 5037: Proc of ACNS 2008. Berlin: Springer, 2008: 188-206 [11]Chen Xiaofeng, Li Jin, Susilo W. Efficient fair conditional payments for outsourcing computations[J]. IEEE Trans on Information Forensics and Security, 2012, 7(6): 1687-1694 [12]Golle P, Mironov I. Uncheatable distributed computations[G] //LNCS 2020: Proc of CT-RSA 2001. Berlin: Springer, 2001: 425-440 [13]Baldimts F, Lysyanskaya A. On the security of one-witness blind signature schemes[G] //LNCS 8270: Proc of ASIACRYPT 2013. Berlin: Springer, 2013: 82-99 [14]Camenisch J, Shoup V. Practical verifiable encryption and decryption of discrete logarithms[G] //LNCS 2729: Proc of CRYPTO 2003. Berlin: Springer, 2003: 126-144 [15]Carbunar B, Tripunitara M V. Payments for outsourced computations[J]. IEEE Trans on Parallel and Distributed Systems, 2012, 23(2): 313-320 [16]Küpcü A. Incentivized outsourced computation resistant to malicious contractors[EB/OL]. (2014-12-12) [2016-03-01]. http://eprint.iacr.org/2014/992 [17]Ringers S, Verheul E, Hoepman J H. An effcient self-blindable attribute-based credentials[EB/OL]. [2016-01-03]. https://sietseringers.net/files/abc.pdf [18]Hwang J Y, Chen L, Cho H S, et al. Short dynamic group signature scheme supporting controllable linkability[J]. IEEE Trans on Information Forensics and Security, 2015, 10(6): 1109-1124 [19]Camenisch J, Chaabouni R, Shelat A. Efficient protocols for set membership and range proofs[G] //LNCS 5350: Proc of ASIACRYPT 2008. Berlin: Springer, 2008: 234-252 [20]Boneh D, Boyen X. Short signatures without random oracles and the SDH assumption in bilinear groups[J]. Journal of Cryptology, 2008, 21(2): 149-177 [21]Arfaoui G, Lalande J F, Traoré J, et al. A practical set-membership proof for privacy-preserving NFC mobile ticketing [C]//Proc of PETS 2015. Berlin: De Gruyter Press, 2015: 25-45 [22]Boudot F. Efficient proofs that a committed number lies in an interval[G] //LNCS 1807: Proc of EUROCRYPT 2000. Berlin: Springer, 2000: 431-444 [23]Avoine G, Vaudena S. Optimistic fair exchange based on publicly verifiable secret sharing[G] //LNCS 3108: Proc of ACISP 2004. Berlin: Springer, 2004: 74-85 [24]Stadler M. Publicly verifiable secret sharing[G] //LNCS 1070: Proc of EUROCRYPT 1996. Berlin: Springer, 1996: 190-199 [25]Liu J K, Tsang P P, Wong D S, et al. Universal custodian-hiding verifiable encryption for discrete logarithms[G] //LNCS 3935: Proc of ICISC 2005. Berlin: Springer, 2006: 389-409 [26]Boyen X. A tapestry of identity-based encryption: Practical frameworks compared[J]. International Journal of Applied Cryptography, 2008, 1(1): 3-21 [27]Lauter K. The advantages of elliptic curve cryptography for wireless security[J]. IEEE Wireless Communications, 2004, 11(1): 62-67 Liu Xin, born in 1978. PhD and associate professor. Member of China Computer Federation. His main research interests include cryptography and information security. Zhang Bo, born in 1981. PhD and Lecturer. His main research interests include cryptography and information security (zbsdu@126.com). 附錄A. 知識簽名π3的具體實現過程 1)π3的產生過程如下: R4=grm, Step3.M在上計算sr′=rr′+cr,sm=rm+cm,ss=rs+cs. Step4.M輸出π3=(c,sr′,sm,ss). 2)π3的驗證過程如下: Step1. 將π3分離為π3=(c,sr′,sm,ss)的形式. Step2. 計算 Improved Endorsed E-Cash System with DAA-A Liu Xin1,2and Zhang Bo3 1(SchoolofInformationEngineering,ShandongYouthUniversityofPoliticalScience,Jinan250103)2(KeyLaboratoryofInformationSecurityandIntelligentControlinUniversitiesofShandong(ShandongYouthUniversityofPoliticalScience),Jinan250103)3(SchoolofInformationScienceandEngineering,UniversityofJinan,Jinan250022) At present, the existing endorsed e-cash system has a low communication efficiency, and its fair exchange protocol employs inefficient cut-and-choose proofs. In addition, the centralized TTP (trusted third party) is vulnerable to denial-of-service attacks. So far, several related fair payment systems have been proposed. Unfortunately, some of them use cut-and-choose proofs, and the others adopt verifiable encryption schemes with security flaw. Inspired by the idea of self-blindable attribute-based credentials, a concrete DAA-A (direct anonymous attestation with attributes) scheme is constructed. Based on the new DAA-A scheme, an improved endorsed e-cash system is proposed, which achieves a high level of exculpability. In order to improve users’ computational efficiency in the spending process, the set-membership proof by Arfaoui et al’s is adopted, and the efficiency of user’s signature of knowledge is also optimized with the technique of pre-computation. In order to bypass the expensive cut-and-choose proof, a new optimistic fair exchange sub-protocol supporting distributed TTPs is provided. Furthermore, if combined with the Golle-Mironov model, the new system also suits for the environment of outsourcing computing. Compared with the previous similar ones, the new system meets several desirable properties simultaneously, i.e., it supports multiple payments, and does not depend on cut-and-choose proofs and allows users to be stateless, etc. What’s more, the fair exchange protocol of the new system considers the risk of denial-of-service attacks. endorsed e-cash; direct anonymous attestation; fair exchange; cut-and-choose proofs; outsourced computation 2016-06-14; 2016-08-10 山東省自然科學基金項目(ZR2015FL023,ZR2014FL011);山東省高等學??萍加媱濏椖?J14LN61);山東青年政治學院博士科研啟動經費資助項目(14A007) TP309 This work was supported by the Natural Science Foundation of Shandong Province of China (ZR2015FL023,ZR2014FL011), the Project of Shandong Province Higher Educational Science and Technology Program (J14LN61), and the Doctoral Research Start-up Funding Project of Shandong Youth University of Political Science (14A007).

5 改進的有條件的公平支付系統


6 本文系統的性能分析



7 總 結











