摘 要:在拍賣過程中如何保護投標者隱私和身份以及防止中標者反悔是設計安全電子拍賣系統的關鍵技術。基于環簽名思想的類群簽名方案及同態公鑰加密體制,設計了一個新的密封投標的電子拍賣協議。所給協議具有如下特點:安全性好,能夠滿足投標者匿名、投標價保密、不可否認性以及不可偽造等密封電子拍賣的所有安全性要求;對可信賴第三方的依賴小;安全性高、步驟簡略。
關鍵詞:密封式電子拍賣;環簽名;同態加密;-隱藏假設
中圖分類號:TP309 文獻標志碼:A 文章編號:1001-3695(2008)08-2441-03
Sealed-bid electronic auction protocol based on ring signature
XIONG Hu,QIN Zhi-guang,LAN Tian
(College of Computer Science Engineering, University of Electronic Science Technology of China, Chengdu610054, China )
Abstract: Electronic auction is one of the basic businesses in electronic commerce. The protection of bidder anonymity and the prevention of bidder default are the keys in the designing of secure electronic auction scheme.This paper proposed fair electronic auction protocol, which was based on the combination of an efficient group signature scheme relying on the ring signature idea and a public-key cryptosystem of the homomorphic encryption. This scheme has the following advantages:It has high quality of security and can satisfy all the secure requirements of sealed-bid auction,namely,bidder anonymity,bid undeniability,bid unforgeability,bid secrecy and bid confidentiality. It requires almost no participation of TTP.It is more efficient and safer than others.
Key words: sealed auction; ring signature; homomorphic encryption;-hiding assumption
電子拍賣是電子商務的一項基本業務,是現實拍賣的電子化。電子拍賣系統按標價是否公開可分為公開式拍賣系統和密封式拍賣系統。開放式拍賣允許多次競標,標價公開。而密封式拍賣要求在規定時間前,每個投標者秘密地提交一個投標價,在規定時間后才能打開投標并按一定的確定性規則選出中標者。目前,網上拍賣系統由于缺乏必要的安全機制等原因,降低了這些系統的可信性。安全的電子拍賣系統應滿足下列安全性需求:a)匿名性。投標參與者不想泄漏自己的身份。b)不可否認性,投標者投標后不能否認其投標。c)不可偽造性。投標者的投標不能被偽造。d)投標價保密。投標者的投標價保密。e)不可跟蹤性。其他參與者無法斷定哪些投標是同一個投標者投的。f)公平性。指投標者地位一樣。
本文的主要貢獻是保證投標者匿名性的密封拍賣。它能夠在任何勾結的情況下保證投標者標價的秘密性,并在注冊服務器和拍賣服務器不合謀的情況下保證投標者身份的匿名性。同時可通過注冊服務器和拍賣服務器聯合對投標者身份進行追蹤,從而防止投標者抵賴。
1 預備知識
1.1 環簽名及其安全性
環簽名的定義由Rivest等人在文獻[1]中給出:某數字簽名的簽名者來自于一個指定的簽名者集合,但驗證人不能指出誰是具體的簽名人。環簽名沒有管理者,沒有相互間的配合。簽名者選取的成員數目越多,則環簽名的匿名性就越好。假定有n個投標者,每一個投標者Bi擁有一個公鑰yi和與之對應的私鑰si。簽名是一個能實現簽名者無條件匿名的簽名方案,它由下述算法組成:
a)簽名sign(·)。一個概率算法在輸入消息m0和n個環成員的公鑰L={y1,y2,…,yn}以及其中的一個成員的私鑰si后,對消息m0產生一個簽名σ=(m0,L,c1,e1…,en)。其中:ci(i=1,2,…,n)作為初始值和結果值根據一定的規則首尾相接呈環狀。
b)驗證verify(·)。一個確定性算法,在輸入(m0,σ)后,若σ為m0的環簽名,則返回true;否則為1。
在文獻[2]中,通過讓管理員和簽名接收者分別產生一個秘密數匿名傳送給簽名者,簽名者利用這些秘密數和自己的一個秘密數產生環簽名的方式實現了環簽名和群簽名思想的折中:環簽名被改造為可控制的匿名簽名,若簽名者進行抵賴,則其身份會被管理員和簽名接收方共同揭示,但管理員權限也受到了限制,他必須與簽名接收方合作才能追蹤簽名者身份。
1.2 同態公鑰加密體制與-隱藏假設
定義1 同態公鑰加密體制。設S為公鑰密碼體制,k為其安全參數,M為消息空間,Ek:{0,1}k×X→C為公開加密函數,Ek(u,x)∈C,u∈{0,1}k為隨機串,C為密文空間;Dk:C→X為秘密的解密函數。其中:X為交換加群;C為交換乘群。對任意的消息x0,x1∈X及隨機串u0,u1∈{0,1}k,存在u使得
Ek(u,x0+x1)=Ek(u1,x1)×Ek(u0,x0)
則稱S為語義安全的同態公鑰加密體制。
定義2 -隱藏假設(-HA)。設p,q是兩個大素數,m=pq,p0是一個較小的素數,m隱藏了p0,即p0|(m)。
定義3 單向映射λ。{0,1}k′→Z,λ把一個k′比特的數映射到一個k′比特的素數。
2 基于環簽名的安全密封電子拍賣方案
2.1 系統參數
考慮一個基于離散對數的密碼系統,設p、q是兩個大素數,〈g〉為一個生成元為g的Zp的q階子群,假定有n個投標者,第i個用戶Bi的私鑰為si,對應的公鑰yi=gsimod p,Public為一個發布公鑰的公告牌,所有的用戶公鑰都在其上發布。
設RM為注冊服務器,管理上述的密碼系統和公告牌Public,其私鑰為sRM,對應的公鑰為yRM,RM生成并在公告牌上發布同態加密公私密鑰對(ERM,DRM)中的公鑰ERM。設AM為拍賣服務器,它管理每場拍賣的報價是否有效,與RM一起對密封的競價進行比較,并在投標者抵賴時與RM一起揭示投標者的身份。其私鑰為sRM,對應的公鑰為yAM。用{x}yi表示使用yi對消息x進行公鑰加密,用{x}si表示使用si對消息x進行簽名,L={y1,y2,…,yn}為n個環成員的公鑰,SEk()表示某種對稱加密,encode(x,L)=ex=[{x}y1,{x}y2,…,{x}yd],decode(ex,sk,L)=x={exi}sk。
2.2 方案設計
1)注冊 投標者Bi選擇并記住一個ri,計算pi=grimod p,向AM提交(yi,pi),并向AM證明他知道對應的si和ri。AM在其公告牌上發布以下參數:p、q、g,成員Bi及其對應的(yi,pi);對稱的加密方案SEk();一個可公開獲得的hash函數:H:{0,1}→Zq。投標者Bi首先在RM發布的公鑰中任選一些(包括他自己的)公鑰,構成本次簽名的匿名群L={y1,y2…,yd},與AM建立一個匿名連接(匿名連接的建立可采用mix、洋蔥路由等技術),然后為對稱加密方案SEk()任選一個密鑰h,將{h,L}yAM發送給AM。AM解密h和L后將{h,L}yRM發送給RM。RM解密h和L,為本次拍賣隨機生成rRM∈Zq,并記錄(h,rRM),把SEh[{encode(rRM,L)}SRM,{prRM1,prRM2,…,prRMd}SRM]發送給AM;AM為本次拍賣隨機生成rRM∈Zq并記錄(h,rRM),將SEh[{encode(rAM,L)}SRM,{encode(rRM,L)}SRM]發送給Bi,Bi分別用decode(erAM,sK,L)和分別用decode(erRM,sK,L)解密出rAM和rRM。
2)投標者對投標價進行同態加密 RM生成并發布Δ-通用hash函數H和它的密鑰κ(H:κ×{0,1}→{0,1}k′)。設投標者Bi的競價ai的二進制表示為ai,l,ai,l-l…ai,0。
AM隨機選取ki∈κ、tAi∈{0,1}k′、xi, j,xi,l,vi,j∈X,及v1,j=v2,j=…vn,j,生成k′-比特的素數pAi,使λ(tAi)=pAi,并確定mAi∈{0,1}k″。其中:mAi隱藏了pAi,計算δAi,j=Hk(κi,xi,j+vi, j)tAi,并通過匿名連接將該數據發送給Bi。Bi計算yAi,j=ERM(ui,j,xi,j-xi,j+1+ai,jvi,j),yBi,j=ERM(u′i,j,-ai,jvi,j)。
3)投標者進行匿名簽名以及AM驗證簽名 投標者Bi使用在步驟1)中生成的pi以及分別從AM和RM處獲得的rAM和rRM對消息m0=yAi,j‖yBi,j進行簽名,簽名過程sign(Bi,pi,rAM,rRM)如下所示:
(a)αRZq,ck+1=H(m0,gαk mod p);(b)for j=k+1,…,d,l,…,k-1,do ejRZq ,and cj+1H(m0,gejj(prAMrRMiyj)cj mod p);(c)ekα-(rirAMrRM+si)ci mod q;(d)return σ=(h,m0,L,pirAMrRM,c1,e1,…, ed)
投標者Bi將簽名σ和m0=yAi,j‖yBi,j發送給AM。AM通過以下算法計算cj是否構成一個環狀結構判斷簽名是否合法。
a)pirAMrRM檢查。對RM給出的SEh[{encode(rRM,L)}srRM,{p1rRM,p2rRM,…pdrRM}sRM],找出{p1rRM,p2rRM,…,pdrRM},計算其中每一項的rAM次方,檢查pirAMrRM是否在其中,如在,執行下一步;否則,拒絕;
b)環檢查。for j=1,2,…,d,cj+1H(m0,gejj(prAMrRMiyj)cj mod p),ifcd+1=c1 then return “accept” else return “reject”。
4)拍賣結果的計算 AM選擇n個隨機置換π1,π2,…,πn,令imax=1,fori=2,…,n,AM計算zπi,πimax,j=yAπi,j×yBπimax,j,zπimax,πi, j=yAπimax, j×yBπi, j。其中:j∈[0,l-1],并將kπil、kπimaxl、xπi,l、xπimaxl、zπi,πimax, j、zπimax,πi, j、δAπimax, j、δAπi, j、mAπi、mAπimax發送給RM。
RM令xπi,l=dπi,l,xπimax,l=dπimax,l隨機選取gAπi和gAπimax,對j∈[0,l-1],計算:(a)dπi j=dπij+l+DRM(zπi,πimax, j),dπimaxj=dπimaxj+1+DRM(zπimax,πi, j);(b)qAπi,j=λ(Hk(κπi,dπi, j)δAπi, j),gAπi, j=CgAπi, j+1)qAπi,j mod mAπi;(c)qAπimax,j=λ(Hk(kπimax,dπimax)δAπimax,j),gAπimax,j=(gAπimax,j+1)qAπimax, j modmAπimax。
RM選擇rAπi∈ZAmπi,rAπimax∈ZAmπimax,計算hAπi=(gAπi,0)rAπi mod mAπi,hAπimax=(gAπimax,0)rAπimax mod mAπimax,并將它們發送給AM。AM檢驗hAπi是否含有PAπi次方根,(hAπi)φ(mAπi)/pAπi=1 mod mAπi若成立,則aπi>aπimax,令imax=i,i=i+1;否則,AM檢驗hAπimax是否含有pAπimax次方根,若成立,則aπimax>aπi,imax不變,令i=i+1。最后的獲勝方為Bπimax。
3 安全性分析
a)競價的正確性 協議要反復比較Bπi和Bπimax的競價。若aπi>aπimax,設j是aπi和aπimax由高位起第一個不相等的比特位(即aπi,j=1,aπimaxj=0),注意到vπi, j=vπimaxj,則當j=l,…,j+1時,有dπi, j,對j,RM得到dπi, j=xπij+vπij及qAπi,j=pAπi,而當j=j-1,…,0時,又有dπij=vπij*+xπij+j*-1j′=j πij′v(aπ”i,j-aπimax,j′)。因此,gAπi,j*必含有pAπi次方,此時hAπi必含有pAπi次方。同理可證aπi<aπimax的情形。
若RM進行欺騙,他只能從δAπi,j,δAπimax,j處獲得xπi,j、xπimax,j、vπi,j的相關信息,這與H無碰撞性矛盾;而從hAπi,hAπimax獲得信息要知道pAπi,pAπimax,由mAπi、mAπimax得到pAπi、pAπimax與-隱藏假設矛盾,所以RM不能獲得競價信息。若AM進行欺騙,AM只能從yAi,j、yBi,j,獲得競價信息,這與同態公鑰的語義安全性矛盾。
2)投標者不能否認簽名是其所為 RM和AM可以根據h分別提供rRM和rAM,然后可以通過計算L中每個用戶Bi對應的pi的rRMrAM次冪,找出對應pirRMrAM的pi,從而可有RM和AM合作的情況下確定投標者的身份。
3)在無法建立prAMrRMi和pi對應的情況下,上述拍賣方案滿足競價的無條件匿名性 在方案中除了投標者Bi的ei外,其他的ek都是在Zq上隨機選取的。對于固定的m0和PrAMrRMi,e1,e2,…,ed有qd種等可能的取值,而c1完全由m0和e1,e2,…,ed惟一確定。因此,從(c1,e1,e2,…,ed)本身判斷出具體是哪個投標者的簽名是不可能的。在無法建立pirAMrRM和pi對應的情況下,由于簽名呈環狀,即便所有人的私鑰泄露也無法確定具體投標者。
4)pirAMrRM和pi對應關系的建立 只有靠拍賣服務器AM和注冊服務器RM合作才能實現。由于rAM和rRM的隨機性,在不知道rAM和rRM的前提下,直接通過pirAMrRM找到對應的pi是不可能的,因為這必須求解離散對數問題。在尋找prAMrRMi對應的pi上,AM和RM任何一人無法單獨建立prAMrRMi和pi的對應。在RM和AM不勾結的情況下,上述方案可以保證投標者的匿名性。
5)在AM不與偽造者串通的情況下,本拍賣協議方案滿足競價的不可偽造性 一個攻擊者要偽造上述標價,他必須要獲取rAM和rRM,但AM和RM傳送的rAM和rRM只有L中成員才能解密, 而L中的內部攻擊者Bi要偽造Bk的標價,他必須使用Bk對應的pk來簽名。為使簽名中的ci按照規則構成環狀結構,他最終需要知道pk對應的rAM,但在AM不與偽造者串通的情況下,這也是不可能的。
4 結束語
本文在現有電子拍賣方案的基礎上,結合環簽名思想和同態公鑰加密體制設計了保護標價的秘密性和投標者匿名性的第1價位拍賣,并防止了中標者進行抵賴的情況,在重大的商業拍賣中具有重要的應用價值。本方案具有以下特點:a)在任何情況下保證標價的秘密性;b)在注冊服務器(茫然第三方)和拍賣服務器不相互勾結的情況下保證投標者的匿名性;c)而投標價格使用環簽名進行簽名可以保證協議的不可否認性、不可偽造性,且其他投標者具有不可跟蹤性。本方案先使用同態加密對投標價進行加密,然后利用環簽名對投標價進行簽名,思想簡單,用戶易于接受,有較好的應用前景。
參考文獻:
[1] RONALD L R, ADI S, YAEL T. How to leak a secret[C]//Proc of Asiacrypt 2001. [S.l.]: Springer-Verlag, 2001:552-565.
[2] 王繼林, 張鍵紅, 王育民. 基于環簽名思想的一種類群簽名方案[J]. 電子學報, 2004,32(3): 408-410.
[3] 秦靜, 張振峰, 馮登國. 無信息泄漏的比較協議[J]. 軟件學報, 2004,15(3):421-427.
[4]吳可力. 一個基于環簽名的英式電子拍賣協議[J]. 計算機工程與應用, 2006,42(31):219-222.
[5]秦波, 秦慧, 王尚平,等. 一種保護標價安全的電子拍賣方案[J]計算機研究與發展, 2006,43(1):28-32.
[6] NAOR M,PINKAS B,SUMNER R. Privacy preserving auctions and mechanism design[C]//Proc of ACM Conference on Electronic Commerce.1999:120-127.
[7] HELGER L, ASOKAN N, VALTTERI N. Secure vickrey auctions without threshold trust[C]//Proc of 6th Annual Conf Financial Cryptography. [S.l.]: Springer-Verlag, 2002:87-101.
[8] DAVID H, BURKHARD S.PEER M.The technology for a distributed:auction-based market for peer-to-peer services[C]//Proc of the 40th IEEE International Conference on Communications (ICC 2005). 2005: 1583-1587.
[9]BRANDT F.How to obtain full privacy in auctions[J]. International Journal of Information Security, 2006,5(4):201-216.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文