專利名稱:基于聚合簽名的多方合同簽署方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種多方合同簽署方法,特別涉及一種基于聚合簽名的多方合同簽署 方法。
背景技術(shù):
隨著計算機及其網(wǎng)絡(luò)技術(shù)的不斷進步,電子商務(wù)、移動商務(wù)已成為基于網(wǎng)絡(luò)的現(xiàn) 代經(jīng)濟活動的主要形式之一。如何在互不信任的各方之間以公平的方式通過網(wǎng)絡(luò)進行電子 數(shù)據(jù)的交換受到廣泛關(guān)注,而公平交換協(xié)議是電子商務(wù)、移動商務(wù)的關(guān)鍵。所謂公平是指當(dāng) 允許兩方或多方(兩方以上)在利用協(xié)議交換信息時,能保證所有參與者或者得到期望的 電子數(shù)據(jù)信息或者得不到任何有價值信息。公平性是大多數(shù)交換協(xié)議所必須解決的關(guān)鍵問 題。要實現(xiàn)嚴(yán)格的公平性,協(xié)議必須引入可信第三方(Trusted Third Party, TTP),以 此來保證協(xié)議運行的公平性。根據(jù)TTP在協(xié)議中的介入程度可將TTP分為線上(In-line) TTP、在線(On-line) TTP和離線(Off-line) TTP?;贠ff-line TTP的公平交換協(xié)議,又稱 為樂觀公平交換協(xié)議,即假定多數(shù)情況下所有用戶都誠實可信且信道及時送達消息,協(xié)議 不引入TTP就能完成(對于合同簽署協(xié)議而言,就是合同可以成功簽署)。僅當(dāng)協(xié)議運行出 現(xiàn)爭議時,TTP才介入,幫助參與者恢復(fù)應(yīng)得的電子數(shù)據(jù)或保證參與者的公平性的條件下完 成協(xié)議的運行。有此可以看出,樂觀公平交換協(xié)議中TTP的介入程度最低,這也避免了 TTP 稱為協(xié)議性能的瓶頸。本發(fā)明屬于這一類方法。關(guān)于樂觀公平交換方法,已有專利有專利CN1688123A涉及一種基于標(biāo)準(zhǔn)RSA算法的優(yōu)化公平的數(shù)字簽名交換方法,其 特征在于,參與公平交換的雙方使用基于標(biāo)準(zhǔn)的RSA算法的概率簽名來完成正常的公平交 換步驟,當(dāng)任一方對其交換行為抵賴時,則由可信第三方執(zhí)行仲裁。專利CN1877627A涉及一種由買方、賣方、銀行和可信第三方(TTP)在計算機網(wǎng)絡(luò) 上共同實現(xiàn)的在線公平、安全的在線交易電子支付系統(tǒng)和方法。其特征在于,在任意兩個互 不信任的交易方之間進行的交易步驟可調(diào)用基于RSA的公平交換模塊,可信第三方在任一 交易方抵賴時執(zhí)行仲裁。專利CN101567788涉及一種抗擴環(huán)攻擊的簽名數(shù)據(jù)公平交換方法。其特征在于, 解決了專利CN1688123A中基于RSA的簽名數(shù)據(jù)的公平交易易受擴環(huán)攻擊的技術(shù)問題,提供 了一種抗擴環(huán)攻擊的簽名數(shù)據(jù)公平交換方法??紤]下述情況如三個及其以上用戶想通過網(wǎng)絡(luò)共同簽署某個電子合同文件,上 述專利方法則不適用,原因在于上述專利涉及的協(xié)議用戶只能有兩個。本發(fā)明基于聚合簽 名的多方合同簽署方法可以為多個用戶提供安全、高效、公平的環(huán)境確保合同簽署順利的 進行。作為公平交換協(xié)議的一種形式,多方合同簽署方法是η個簽署者通過網(wǎng)絡(luò)共同簽 署某個合同,要求要么所有用戶得到最終的有效合同,要么得不到任何有價值的信息。根據(jù)現(xiàn)有的技術(shù),國際上尚沒有一個基于聚合簽名方案的安全、高效、公平的多方合同簽署方 法。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于聚合簽名的多方合同簽署方法。該方法利用廣播 協(xié)議實現(xiàn)用戶之間的消息分發(fā),利用無限制的聚合簽名方案實現(xiàn)用戶之間的合同簽署,具 有較少的消息發(fā)送次數(shù)和交互輪數(shù),且具有可證安全性 。本發(fā)明所提供的基于聚合簽名的多方合同簽署方法是基于以下的構(gòu)思假設(shè)η個簽署者分別為P1,P2,-,Pn, TTP為η個簽署者協(xié)商選定的離線可信第三 方。TTP選擇抗碰撞密碼學(xué)單向哈希函數(shù)H (0,1廣一G1,雙線性映射e =G1XG1 — G2,其中 GijG2分別為具有相同素數(shù)階q的加法和乘法循環(huán)群,離散對數(shù)問題在G1和G2上是難解的。 TTP為每個合同簽署者Pi指定一個數(shù)Ni,且Ni與Nj互素,Vz_本j。(xT,Yt = χτΡ)為TTP的簽 名驗證用密鑰對,其中P為加法循環(huán)群G1的生成元,階為q。TTP選擇兩個有效期T1與T2, 且T1 <T2,T2之后協(xié)議自動終止。TTP為每個參與者生成一個憑證Vi e {ο,Π 即如果某 一簽署者未履行其義務(wù),則此憑證可用于爭端發(fā)生時的解決授權(quán)),對每個憑證Vi計算其簽 名為 =X7J/代!|/||TJT2),其中憑證簽名有效期為Τι,1表示一次性合同簽署方法標(biāo)簽(例 如,可以是簽署者身份、TTP身份、有效期等相關(guān)信息的哈希值)。同時TTP選擇η個隨機數(shù) {rM^ Zl,計算 Si = Γ Ρ,Σ, +^rr,! = 1,2,…,!!。!"^公開㈦,巧,八仏/^不,諷};^^^.)}, 其中ΕΡΚ( ·)為非對稱加密算法,然后TTP通過安全信道分別發(fā)送消息{Si; Σ T1, T2, Vi, 1,NJ給每個參與者Pi。參與者Pi從TTP處獲得消息枳,627辦//,7;,7^,};,風(fēng)};1=,,£^_)}后,首先隨機選擇 A 作為簽名用密鑰,并計算驗證用密鑰Y1 = XiP,同時根據(jù)EPK( ·)為非對稱加密算法選 擇密鑰對(SKi, PKi),并公開驗證用密鑰和解密用密鑰(YyPKi)。然后利用從TTP處接收到 的消息(Si, Σ i,T1, T2, Vi, 1)計算% =Σ‘ -硝恢復(fù)TTP對憑證Vi的簽名 ,然后通過計算 等式,P) = e(H(V, Il / Il 7; || T2),Fr)是否成立來驗證%.的有效性。基于上述內(nèi)容,本發(fā)明的基于聚合簽名的多方合同簽署協(xié)議方法可以通過下述步 驟實現(xiàn)第一步對于η個簽署者通過協(xié)商的具有相同意義的兩個合同消息M,M' e {0,1}*, H(M)興H(M'),簽署者Pi首先計算合同M的簽名Qi = XiHaiI |M),然后利用聚合簽名方法 計算消息_憑證聚合簽名呎=+ ^。簽署者Pi分別利用其他η-1個參與者的公鑰 對消息_憑證聚合簽名Wi和憑證Vi進行加密得。簽署者者Pi利用中國剩
余定理求解η-1個同余方程X = E^CfVi WVXmodNl),...X = EpkJWlWVXmodN^),X = Epkm (W, Il F)(modNm),
...Χ = ΕΡΚβν,\\ν){τηο Νη).由于Ni, Ν」,ν/~·兩兩互素,則n-1個同余方程組必有唯一解,記作巧化),其中 巧表示除去簽署者Pi之外的Π-1個參與者組成的集合。之后,簽署者Pi把加密消息巧丨…) 通過廣播信道廣播發(fā)送給其他n-1個簽署者,記作Ml Pi ^ P1-.Ep(WiWVl)此步中對η個簽署者廣播發(fā)送加密消息的次序沒有要求,因為任意簽署者Pi在沒 有收到其他n-1個簽署者的消息_憑證聚合簽名之前,都不會廣播發(fā)送自己的消息簽名,否 則將會處于不利的情形。當(dāng)簽署者Pi接收到來自其他n-1個簽名者的加密消息{、(% Il Otu 之后,Pi對 每個& (Wj Il F,)利用大素數(shù) Ni 計算{、(Wj WVj) = Efj (Wj || V^odN^^E^ (Wj || Vj)]'^,, 然后利用密鑰SKi解密WVjWj-^1,從而得到其他n-1個簽名者的消息_憑證聚合簽 名與憑證{^/Ark-,然后驗證這n-1消息_憑證聚合簽名是否有效,即驗證以下n-1個等 式是否成立e(ffi;P) = e(H(Yj Μ), Y^e (H (V1 1 T1 T2),Υτ),...e (Wi^1,P) = e(H (Yi^11 | M),YiJ e (H (Vi^11 111 | T11 | T2),Yt),e (ffi+1,P) = e(H (Yi+11 | M),Yi+1) e (H (Vi+11 111 | T11 | T2),Yt),...e (Wn, P) = e (Η(Υη| Μ),Yn) e (H (Vn 111 | T11 | T2),Yt) ·只要有一個不成立,簽署者Pi將不發(fā)送消息簽名,且在時間T2之后安全退出協(xié)議。 否則,第二步簽署者PJ+算合同M' e {0,1}*的簽名,即計算σ ‘ i = XiH(Yi) |Μ'),然后與 第一步相同,簽署者Pi分別利用其他n-1個簽署者的公鑰{^0丨;0,對ο ‘ i進行加密得 {ΕΡΚΧσ))}"Μ^。簽署者Pi利用中國剩余定理求解n-1個同余方程^ = ΕΡΚι (σ \ )(mod N1),.
..I = ΕΡΚι_χ (σ ’, )(mod N1^ ),I = Epk^ (σ ’, )(modNm ),
...X = EPK^\\moANn).由于Ni, Nj, Wy兩兩互素,則n-1個同余方程組必有唯一解,記作巧(O。簽署者 Pi通過廣播信道廣播發(fā)送(<)給其他η-1個簽署者,記作Μ2 Pi^ Pt-.EpXa1i)當(dāng)簽署者Pi接收到來自其他η-1個簽署者的加密合同簽名{^(°"’,)};0,后,簽署 者?丨利用Ni對每個計算口=戔(<)(m。dAg}k,4導(dǎo)(…)仏丨,片,然后利用密 鑰SKi解密KmU^1,,從而得到其他η-1個簽名者的合同簽名扮’,然后驗證其他 η-1參與者對合同的簽名是否有效,即驗證以下η-1個等式是否成立e(o ‘ 17Ρ) = e(H(Yj |M' ),Yt),..·e(o ‘ h,P) = θ(Η(ΥΗ| |Μ' ),Υτ),e(o ‘ i+l,p) = e(H(Yi+1| |M' ),YT),··.e(o ‘ n, P) = e(H(Yn| |M' ),Yt) ·如果n-1個等式全部成立,則合同簽署成功,任一簽署者Pi利用聚合簽名方法計 算最終合同簽名為^ = °否則,如果簽署者Pi在Ti之前未收到來自其他η-1個簽署者的全部簽名消息,或 者驗證上述η-1個等式不全部成立,則簽署者Pi可以要求TTP執(zhí)行爭端解決子協(xié)議。任何人可以通過驗證等式e(o ,P) = e(H(Yj |M' ),Yt) e (H(Y21 |M' ),Yt)…e (H(Yn| |M' ),Yt)來驗證合同簽名σ是否是由指定的η個簽署者簽署的合同。以上描述了本發(fā)明提供的基于聚合簽名的多方合同簽署協(xié)議方法,本領(lǐng)域的技術(shù) 人員可以理解,TTP雖然沒有參與正常協(xié)議的交換步驟,但作為公平性和不可抵賴性的保 證,TTP仍然是本發(fā)明提供的完整技術(shù)的一部分。以下描述在基于聚合簽名的多方合同簽 署協(xié)議方法中,在加密或簽名消息交換之后,可能發(fā)生的抵賴行為以及離線的TTP執(zhí)行爭 端解決子協(xié)議的具體步驟
第一種當(dāng)某個簽署者Pi完成廣播發(fā)送第一次數(shù)據(jù)之后,即簽署者Pi廣播發(fā)送加密的合 同_憑證聚合簽名Wi與憑證Vi之后,由聚合簽名算法的安全性可知,簽署者Pi無法否認(rèn)自 己的合同-憑證聚合簽名W”此時,最壞情況其他η-1個簽署者不誠實,否認(rèn)收到簽署者Pi的合同_憑證聚合簽名Wi與憑證V”即使如此,其他n-1個簽署者也無法得到除Wi為簽署 者Pi有效的合同_憑證聚合簽名之外任何有價值的消息,在沒有簽署者Pi或TTP幫助的情 況下,無法從I中提取出合同簽名。如果Pi在時間之前沒有收到來自其他n-1個簽署 者的合同-憑證聚合簽名,只需等到時間T2之后便可安全退出協(xié)議,因此,在正常邏輯下, 此時參與合同簽署協(xié)議的n個簽署者不需要TTP執(zhí)行爭端解決方法。第二種當(dāng)?shù)谝淮螖?shù)據(jù)交換完成,簽署者Pi廣播發(fā)送加密合同簽名 (…,)之后,說明簽署 者?1確認(rèn)其他n-1個簽名者的合同-憑證聚合簽名為有效簽名。最壞情況,其他 n-1個簽署者合謀,此情況下,n-1個簽署者在無需發(fā)送各自合同簽名的情況下即可獲得最 終合同簽名,此時n-1個簽署者可抵賴聲稱并未收到過來自簽署者Pi的合同簽名o ‘ i。 此時,簽署者Pi可以通過發(fā)送全部n個簽署者的合同_憑證聚合簽名《%,#《)}〗=,給TTP, 要求TTP執(zhí)行爭端解決子協(xié)議。TTP執(zhí)行爭端解決子協(xié)議的過程如下TTP首先確定簽署者Pi是否在A之前發(fā)送 請求,檢查{^^是否是簽署者{巧}^當(dāng)前的憑證且是否在有效期內(nèi),其次驗證簽署者Pi發(fā)送 的n個簽署者的合同_憑證聚合簽名{(%,〃<)};=,是否有效,即通過驗證以下n個等式是否 成立ed^P) = e(H(Yj M),YDeOKVj 1 T I\),YT),e (ff2, P) = e (H(Y21 M),Y2) e (H(V2 111 | T | 11\),YT),.
..e (ffn, P) = e (H(Yn| M),Yn) e (H(Vn 111 | T | ,YT) 如果有一等式不成立,TTP拒絕恢復(fù)簽署者的合同簽名;如果以上等式全部成立, 則TTP恢復(fù)n個簽署者各自的合同簽名。其過程如下TTP利用自己的私鑰xT計算= ff1-xAdJH(V1| |1| |Tj |T2),o2 = ff2-xAdJH(V2| |1| |Tj |T2),. .on = ffn-xAdJH(Vn| |1| |Tj |T2),恢復(fù)n個簽署者各自的合同簽名0l,o2,…,o n,并在之后T2之前發(fā)送給n 個簽署者,記作M3: TTP —《{。};片.
圖1表示基于聚合簽名的多方合同簽署協(xié)議方法的流程圖;圖2表示可信第三方執(zhí)行爭端解決方法的流程圖。
具體實施例方式以下參照附圖詳細(xì)說明本發(fā)明提供的基于聚合簽名的多方合同簽署方法。圖1表示基于聚合簽名的多方合同簽署方法的完整過程。具體實現(xiàn)步驟如下步驟101表示簽署者Pi向其他n_l個簽署者通過廣播信道廣播發(fā)送其自身的合 同-憑證聚合簽名。同樣其他簽署者(dw,也需要廣播發(fā)送其自身的合同-憑證聚合簽 名。發(fā)送順序無要求。步驟102表示檢查簽署者Pi是否收到來自其他簽署者化的全部n-1有效合 同_憑證聚合簽名。如果沒有收到其他n-1合同-憑證聚合簽名,或者收到的合同_憑證 聚合簽名有驗證不通過的,轉(zhuǎn)步驟107。否則轉(zhuǎn)步驟103。步驟103表示簽署者Pi向其他n-l個簽署者通過廣播信道廣播發(fā)送其自身的合 同簽名。同樣其他簽署者^}〗^,也需要廣播發(fā)送其自身的合同簽名。發(fā)送順序無要求。步驟104表示檢查簽署者Pi是否收到來自其他簽署者{巧Ko,的全部n-1有效合同 簽名。如果沒有收到其他n-1合同簽名,或者收到的合同簽名有驗證不通過的,轉(zhuǎn)步驟105。 否則轉(zhuǎn)步驟107。步驟105表示如果某個簽署者Pi未收到來自其他簽署者^}〗=$,的全部n-1有效 合同簽名,或收到的合同簽名有驗證不通過的,則簽署者Pi要求TTP執(zhí)行爭端解決方法,來 解決爭端。以保證簽署者在發(fā)送合同簽名后的公平性。步驟106表示TTP通過收到的某個簽署者Pi的執(zhí)行爭端的請求,并驗證消息有效 性,執(zhí)行爭端解決方法,以保證簽署者的公平性。步驟107表示基于聚合簽名的多方合同簽署方法執(zhí)行完畢,簽署者或者得到合同 簽名,或者得不到任何有價值的消息。圖2表示TTP執(zhí)行爭端解決方法,其具體步驟如下步驟201表示簽署者Pi提交相關(guān)信息要求TTP執(zhí)行爭端解決方法。步驟202表示TTP驗證來自簽署者Pi提交相關(guān)信息的有效性和合法性。如果有 某個驗證不成立,則轉(zhuǎn)步驟205。否則,轉(zhuǎn)步驟203。步驟203表示TTP利用收到的有關(guān)信息和其自身的私鑰,從所有簽署者的合 同_憑證聚合簽名中恢復(fù)出簽署者各自的合同簽名。步驟204表示TTP將所有簽署者的合同簽名通過安全信道發(fā)送給各個簽署者,幫 助其解決爭端,以保證簽署者公平性。步驟205表示TTP完成爭端協(xié)議,保證簽署者得到其他簽署者的合同簽名,或者得 不到有效的信息。
權(quán)利要求
一種基于聚合簽名的多方合同簽署方法,其特征在于,參與合同簽署的多個(≥3)簽署者使用無限制的聚合簽名方法和公鑰密碼系統(tǒng)廣播方法分別實現(xiàn)合同的簽署和消息的廣播發(fā)送,當(dāng)任一簽署者對其簽名行為抵賴時,則由可信第三方執(zhí)行爭端解決方法。
2.如權(quán)利1所述的基于聚合簽名的多方合同簽署方法,其特征在于,所述的可信第三 方執(zhí)行爭端解決的方法為利用密鑰從合同_憑證聚合簽名中恢復(fù)出簽署者的合同簽名。
3.如權(quán)利2所述的基于聚合簽名的多方合同簽署方法,其特征在于,所述的合同_憑證 的聚合簽名的產(chǎn)生方法為可信第三方生成簽署者的憑證以及對憑證的簽名,簽名者利用 聚合簽名方法產(chǎn)生合同簽名和憑證簽名的合同-憑證聚合簽名。
4.如權(quán)利1所述的基于聚合簽名的多方合同簽署方法,其特征在于,所述的多方合同 簽署的實現(xiàn)方法為利用聚合簽名方法把所有簽署者的合同簽名聚合產(chǎn)生最終合同簽名。
5.如權(quán)利1所述的基于聚合簽名的多方合同簽署方法,其特征在于,所述的消息分發(fā) 的實現(xiàn)方法為利用公鑰密碼系統(tǒng)逐個對消息進行加密,利用中國剩余定理產(chǎn)生唯一值,實 現(xiàn)消息的廣播發(fā)送。
6.如權(quán)利4所述的基于聚合簽名的多方合同簽署方法,其特征在于,所述的正常的多 方合同簽署方法包括以下步驟發(fā)送合同_憑證聚合簽名所有簽署者無序廣播發(fā)送合同_憑證聚合簽名;驗證合同-憑證聚合簽名簽署者驗證其他簽署者的合同-憑證聚合簽名,如果驗證失 敗則在規(guī)定時間之后退出;發(fā)送簽署者合同簽名所有簽署者無序廣播發(fā)送其合同簽名;驗證簽署者合同簽名簽署者驗證其他簽署者的合同簽名,如果驗證失敗,可以向可信 第三方申請,執(zhí)行爭端解決方法。
7.如權(quán)利6所述的基于聚合簽名的多方合同簽署方法,其特征在于,所述的可信第三 方解決爭端的步驟如下簽署者向可信第三方提交解決爭端所需信息;可信第三方驗證簽署者提交的信息的合法性和有效性,如果失敗,則仲裁終止;可信第三方使用自己的密鑰恢復(fù)出所有簽署者的合同簽名;可信第三方將恢復(fù)出的合同簽名發(fā)送給所有簽署者。
全文摘要
本發(fā)明涉及一種基于聚合簽名的多方合同簽署協(xié)議方法,其特征在于,參與合同簽署的簽署者利用聚合簽名和公鑰密碼系統(tǒng)廣播方法完成簽署過程,當(dāng)任一方對其簽署行為抵賴時,則由可信第三方介入解決爭端。該方法需要一個離線的可信第三方的支持,且可信第三方生成憑證簽名作為爭端發(fā)生時恢復(fù)合同簽名的授權(quán)簽名。其主要步驟包括簽署者利用憑證簽名生成合同-憑證聚合簽名,并廣播發(fā)送給其他簽署者,完成承諾交換;當(dāng)簽署者收到其他簽署者的有效合同-憑證聚合簽名之后,廣播發(fā)送其合同簽名,完成合同簽名交換;交換過程中發(fā)生爭議時,簽署者請求可信第三方執(zhí)行爭端解決方法。該方法僅需要兩輪無序消息交互,方法執(zhí)行效率較高,具有可證安全性。
文檔編號H04L29/06GK101873328SQ201010210849
公開日2010年10月27日 申請日期2010年6月28日 優(yōu)先權(quán)日2010年6月28日
發(fā)明者孫斌, 孫艷賓, 楊義先, 谷利澤, 鄭世慧 申請人:北京郵電大學(xué)