国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SM2 數(shù)字簽名算法的環(huán)簽名方案*

2021-09-14 07:56:54何德彪黃欣沂李大為
密碼學(xué)報(bào) 2021年4期
關(guān)鍵詞:匿名性簽名者數(shù)字簽名

范 青, 何德彪, 羅 敏, 黃欣沂, 李大為

1. 武漢大學(xué) 數(shù)學(xué)與統(tǒng)計(jì)學(xué)院, 武漢430072

2. 武漢大學(xué) 國(guó)家網(wǎng)絡(luò)安全學(xué)院, 武漢430072

3. 福建師范大學(xué) 計(jì)算機(jī)與網(wǎng)絡(luò)空間安全學(xué)院, 福州350117

4. 深圳技術(shù)大學(xué) 大數(shù)據(jù)與互聯(lián)網(wǎng)學(xué)院, 深圳518118

1 引言

傳統(tǒng)數(shù)字簽名算法保證了數(shù)據(jù)完整性和簽名者抗抵賴性. 國(guó)家密碼管理局于2010 年12 月17 日發(fā)布了SM2 橢圓曲線公鑰密碼算法[1], 并于2012 年批準(zhǔn)為密碼行業(yè)標(biāo)準(zhǔn)(GM/T 0003-2012)[2], 2016年正式發(fā)布為中國(guó)國(guó)家密碼標(biāo)準(zhǔn)(GB/T32918-2016)[3]. SM2 數(shù)字簽名算法作為其中之一部分, 與基于有限域上困難問題的數(shù)字簽名算法相比, 在相同的安全強(qiáng)度下SM2 數(shù)字簽名具有存儲(chǔ)空間小、簽名速度快的優(yōu)勢(shì). 在商用密碼體系中, 該標(biāo)準(zhǔn)提供了電子認(rèn)證服務(wù)系統(tǒng)所需的安全性能, 替代了國(guó)外的ECDSA、Schnorr 等簽名算法, 推動(dòng)了密碼技術(shù)應(yīng)用發(fā)展的自主化和可控性, 豐富了國(guó)產(chǎn)密碼體系.

但是日益發(fā)展的信息安全技術(shù)對(duì)數(shù)字簽名提出了新的功能性需求, 如電子現(xiàn)金、電子投票、匿名通信等具體的應(yīng)用場(chǎng)景中, 要求用戶的身份和位置等隱私信息保密. 環(huán)簽名能夠隱藏真實(shí)簽名者的身份, 達(dá)到匿名性的效果. 2001 年, Rivest 等人首次提出了模糊簽名者身份的新型簽名概念——環(huán)簽名[4]. 環(huán)簽名是指簽名者自發(fā)選擇多個(gè)用戶, 然后利用自身公私鑰對(duì)和選取的用戶公鑰對(duì)文件進(jìn)行簽名. 簽名者及其選擇的用戶組成的群組稱為環(huán), 構(gòu)成環(huán)的成員由簽名者根據(jù)所需指定, 驗(yàn)證者只能知道簽名值出自環(huán)中某一成員, 但不能確定出真實(shí)的簽名者. 環(huán)簽名實(shí)現(xiàn)了將真實(shí)簽名者的身份隱藏在環(huán)中, 以保護(hù)用戶的身份隱私.

為深入理解環(huán)簽名的概念, 下面給出環(huán)簽名和群簽名之間的聯(lián)系與區(qū)別. 環(huán)簽名和群簽名均為個(gè)體代表群體簽名的體制, 都實(shí)現(xiàn)了簽名身份的匿名性. 但二者之間也存在著區(qū)別, 主要體現(xiàn)在以下三個(gè)方面[5–7]: (1) 管理系統(tǒng): 環(huán)簽名具有自發(fā)性, 環(huán)中每個(gè)成員地位平等; 群簽名中存在一個(gè)管理員負(fù)責(zé)群成員的加入和離開. (2) 匿名特征: 環(huán)簽名具有無(wú)條件匿名性, 即任何人在任何情況下都不能恢復(fù)出簽名者的真實(shí)身份; 群簽名的匿名性是有條件的, 群管理員能夠根據(jù)簽名得出簽名出自群體中哪一個(gè)成員. (3) 簽名密鑰: 環(huán)簽名的生成使用用戶的密鑰, 包括簽名者私鑰和環(huán)成員公鑰; 群簽名不僅需要用戶密鑰還需要群管理員的密鑰.

環(huán)簽名因其自發(fā)性和無(wú)條件匿名性得到廣泛應(yīng)用, 包括電子郵件、數(shù)據(jù)交換、電子交易和電子貨幣等領(lǐng)域[7]. 根據(jù)密鑰生成方式不同, 環(huán)簽名分為公鑰基礎(chǔ)設(shè)施(PKI) 體系下的環(huán)簽名[4,8–16]、基于身份(IBC) 的環(huán)簽名[17–23]以及無(wú)證書(CLC) 體系下的環(huán)簽名[24–29]. PKI 體系下經(jīng)典的環(huán)簽名包含基于RSA 簽名算法的RST 環(huán)簽名算法[4]和基于Schnorr 簽名的AOS 環(huán)簽名[8], 但是尚未有公開可查詢到的基于SM2 數(shù)字簽名算法的環(huán)簽名.

電子商務(wù)的廣泛深入發(fā)展對(duì)環(huán)簽名提出了多樣化的應(yīng)用需求, 根據(jù)不同的屬性特征, 環(huán)簽名分為可鏈接環(huán)簽名[30]、可否認(rèn)的環(huán)簽名[31]、門限環(huán)簽名[32]、可撤銷匿名性的環(huán)簽名[33]等等, 目前應(yīng)用較為廣泛的是可鏈接環(huán)簽名. Liu 等人在2004 年首次提出具有自發(fā)性的可鏈接環(huán)簽名概念[30], 并提出第一個(gè)可鏈接環(huán)簽名方案——LSAG. 在環(huán)簽名算法的基礎(chǔ)上, 用戶利用自身私鑰生成一個(gè)關(guān)聯(lián)此次簽名的標(biāo)簽, 該標(biāo)簽不可偽造且同一簽名者對(duì)不同消息生成的環(huán)簽名具有相同的鏈接標(biāo)簽, 實(shí)現(xiàn)了對(duì)同一簽名者所生成簽名的鏈接. 在Liu 等人的文章中, 利用LSAG 構(gòu)建的投票系統(tǒng)既能確保選民身份匿名性又能避免重復(fù)投票. 2013 年, Saberhagen 等人將可鏈接環(huán)簽名應(yīng)用于基于區(qū)塊鏈的數(shù)字貨幣協(xié)議[34], 提出了適用于門羅幣的CryptoNote 協(xié)議, 該協(xié)議有效保護(hù)了交易雙方的身份隱私; 在此基礎(chǔ)上, 出現(xiàn)了可鏈接環(huán)簽名在區(qū)塊鏈中的典型應(yīng)用——RingCT1.0[35], RingCT2.0[36]和RingCT3.0[37].

為了彌補(bǔ)SM2 數(shù)字簽名算法在環(huán)簽名研究中的空缺, 奠定國(guó)產(chǎn)SM2 數(shù)字簽名算法應(yīng)用于區(qū)塊鏈的基礎(chǔ), 進(jìn)而把握區(qū)塊鏈發(fā)展中密碼技術(shù)的自主可控權(quán), 本文基于SM2 數(shù)字簽名算法提出了SM2 環(huán)簽名方案, 并且通過嵌入安全的鏈接標(biāo)簽提出了SM2 可鏈接環(huán)簽名方案及其兩種變型方案.

本文結(jié)構(gòu)如下: 第2 節(jié)介紹了環(huán)簽名的預(yù)備知識(shí), 包括環(huán)簽名和可鏈接環(huán)簽名的定義, 正確性、不可偽造性、無(wú)條件匿名性以及鏈接性、不可誹謗性等安全性要求, 同時(shí)介紹了SM2 數(shù)字簽名算法; 第3 節(jié)提出了SM2 環(huán)簽名的系統(tǒng)參數(shù)生成、密鑰生成、(可鏈接) 環(huán)簽名、環(huán)簽名驗(yàn)證等4 個(gè)算法, 從系統(tǒng)參數(shù)生成、密鑰生成、可鏈接環(huán)簽名生成、可鏈接環(huán)簽名驗(yàn)證、鏈接等5 個(gè)方面介紹了SM2 可鏈接環(huán)簽名及其兩種變型方案; 第4 節(jié)證明了SM2 環(huán)簽名和可鏈接環(huán)簽名的安全性; 第5 節(jié)分析了其通信成本和計(jì)算成本與環(huán)成員數(shù)量的關(guān)系; 最后在第6 節(jié)給出了本文的總結(jié)和展望.

2 預(yù)備知識(shí)

2.1 環(huán)簽名定義與安全性

本節(jié)給出環(huán)簽名的定義、安全性需求[38]以及橢圓曲線上的困難問題假設(shè).

定義1 (環(huán)簽名) 環(huán)簽名包含4 個(gè)多項(xiàng)式時(shí)間算法: 系統(tǒng)初始化、密鑰生成、環(huán)簽名生成和環(huán)簽名驗(yàn)證.

? 系統(tǒng)初始化算法(Setup(λ)→params): 一個(gè)概率多項(xiàng)式時(shí)間(PPT) 算法, 其輸入為安全參數(shù)λ,輸出系統(tǒng)參數(shù)Params.

? 密鑰生成算法(KeyGen(λ, params)→(PK, sk)): 一個(gè)PPT 算法, 輸入為安全參數(shù)λ和系統(tǒng)參數(shù)params, 輸出用戶的公鑰PK 和私鑰sk.

? 環(huán)簽名生成(RSign(M,n,S,skπ)→σ): 一個(gè)PPT 算法, 其輸入為待簽名消息M、n個(gè)成員公鑰組成的集合S={PK1,PK2,··· ,PKn}以及簽名者私鑰skπ(1≤π ≤n), 輸出簽名值σ.

? 環(huán)簽名驗(yàn)證(RVerify(M,S,σ)→accept/reject): 一個(gè)確定性算法, 其輸入為簽名消息M、公鑰集合S以及簽名值σ, 若σ是M的有效環(huán)簽名輸出accept, 否則輸出reject.

定義2 (可鏈接環(huán)簽名) 具有鏈接性的環(huán)簽名稱為可鏈接環(huán)簽名, 在環(huán)簽名的基礎(chǔ)上, 可鏈接環(huán)簽名不僅包含系統(tǒng)初始化、密鑰生成、可鏈接環(huán)簽名生成、可鏈接環(huán)簽名驗(yàn)證, 還包含鏈接算法.

? 系統(tǒng)初始化算法(Setup(λ)→params): 一個(gè)概率多項(xiàng)式時(shí)間(PPT) 的算法, 其輸入為安全參數(shù)λ, 輸出系統(tǒng)參數(shù)params.

? 密鑰生成算法(KeyGen(λ)→(PK, sk)): 一個(gè)PPT 算法, 其輸入為安全參數(shù)λ和系統(tǒng)參數(shù)params, 輸出用戶的公鑰PK 和私鑰sk.

? 可鏈接環(huán)簽名生成(LRSign(M,n,S,skπ)→(σ,Qπ)): 一個(gè)PPT 算法, 其輸入為消息M、n個(gè)成員組成的公鑰集合S={PK1,PK2,··· ,PKn}以及簽名者私鑰skπ(1≤π ≤n), 輸出簽名值σ和鏈接標(biāo)簽Qπ.

? 可鏈接環(huán)簽名驗(yàn)證(LRVerify(params,M,S,σ,Qπ)→accept/reject): 一個(gè)多項(xiàng)式時(shí)間的確定性算法, 其輸入為系統(tǒng)參數(shù)params、簽名消息M、環(huán)成員公鑰集合S、簽名值σ和鏈接標(biāo)簽Qπ, 若(σ,Qπ) 是關(guān)于M的有效簽名, 則輸出accept; 否則, 輸出reject.

? 鏈接算法(Link(S,M1,M2,σ1,Q1,σ2,Q2)→linked/unlinked: 一個(gè)確定性算法, 輸入用戶公鑰集合S、兩個(gè)不同的簽名消息M1,M2及其分別對(duì)應(yīng)的可鏈接環(huán)簽名(σ1,Q1),(σ2,Q2), 若σ1,σ2是有效的環(huán)簽名且有相同的鏈接標(biāo)簽Q1=Q2, 輸出linked, 否則輸出unlinked.一個(gè)安全的環(huán)簽名方案需要滿足以下3 個(gè)性質(zhì):

? 正確性: 由“環(huán)簽名生成” 算法輸出的簽名值作為“環(huán)簽名驗(yàn)證” 算法的輸入, 總是輸出accept.環(huán)簽名方案的不可偽造性和無(wú)條件匿名性通過模擬器S和敵手A之間的游戲定義, 下面首先介紹A可查詢的諭言機(jī)JO、CO、SO.

– 加入諭言機(jī)(JO(⊥)→PK): 通過此查詢, 一個(gè)新用戶被添加到系統(tǒng)并輸出新用戶的公鑰PK.

– 腐化諭言機(jī)(CO(PKi)→ski): 輸入用戶的公鑰PKi, 輸出對(duì)應(yīng)的私鑰ski.

– 簽名諭言機(jī) (SO(M,n,S,PKπ)→ σ): 輸入簽名消息M, 大小為n的公鑰集合S={PK1,PK2,··· ,PKn}, 簽名者公鑰PKπ(1≤n ≤π), 返回有效的環(huán)簽名σ.

Pointcheval 等人最早基于“諭言重放攻擊” 技術(shù)的分叉引理給出了數(shù)字簽名方案的安全性證明[39], 諭言重放攻擊是通過重放敵手一個(gè)有效的攻擊實(shí)現(xiàn), 該敵手是一個(gè)概率多項(xiàng)式時(shí)間的圖靈機(jī), 能夠使用不同的隨機(jī)諭言機(jī)獲得關(guān)于同一個(gè)消息m的兩個(gè)簽名(δ0,h0,σ0) 和(δ1,h1,δ1),其中σ0,σ1分別是攻擊者通查詢環(huán)簽名生成諭言機(jī)輸出的兩個(gè)簽名值, (δ0,h0),(δ1,h1) 分別是計(jì)算兩個(gè)簽名值過程中的中間值,h0,h1為隨機(jī)諭言機(jī)的輸出, 且有δ0=δ1,h ?=h′. 根據(jù)上述兩個(gè)簽名就可以得到一個(gè)困難問題的解.

在一般環(huán)簽名(generic ring signature) 的定義下, Herranz 等人使用基于“諭言重放攻擊” 技術(shù)的分叉引理證明了環(huán)簽名方案的不可偽造性[40]. 一般環(huán)簽名的定義如下:

定義3 (一般環(huán)簽名) 一般環(huán)簽名的定義與本文所定義的環(huán)簽名都包含4 個(gè)基本算法: 系統(tǒng)初始化算法、密鑰生成算法、環(huán)簽名生成以及環(huán)簽名驗(yàn)證. 關(guān)鍵之處在于一般環(huán)簽名對(duì)簽名值的生成過程提出了更具體的要求: 輸入消息M、n個(gè)成員的公鑰(A1,A2,··· ,An)、簽名者私鑰skπ(1≤π ≤n) 以及安全的哈希函數(shù), 通過產(chǎn)生一組r1,r2,··· ,rn,h1,h2,··· ,hn, 最終輸出簽名值σ. 其中ri ?=rj,i ?=j,hi(1≤i ≤n) 是由m,ri(1≤i ≤n) 以及環(huán)成員的公鑰確定的哈希值,簽名值σ完全由r1,r2,··· ,rn,h1,h2,··· ,hn和消息m決定.

下面給出在一般環(huán)簽名的定義下不可偽造性的概念.

? 不可偽造性: 環(huán)簽名的不可偽造性通過模擬器S和敵手A之間的下述游戲定義:

–S生成系統(tǒng)參數(shù)params 并將其發(fā)送給A;

–A適應(yīng)性查詢諭言機(jī)JO、CO、SO 以及隨機(jī)諭言機(jī)H;(2)S?中所有的公鑰均通過查詢加入諭言機(jī)JO 得到;

(3)S?中所有的公鑰都沒有被腐化查詢, 即敵手沒有得到S?中任意環(huán)成員的私鑰;

(4)σ?不是通過查詢簽名諭言機(jī)SO 得到.如果對(duì)任意PPT 的敵手A來(lái)說, 贏得上述游戲的概率是可忽略的, 則稱環(huán)簽名方案是不可偽造的.

? 無(wú)條件匿名性: 環(huán)簽名方案的無(wú)條件匿名性通過模擬器S和有無(wú)限計(jì)算力的敵手A之間的游戲

定義:

–S生成系統(tǒng)參數(shù)params 并將其發(fā)送給A.

–A可適應(yīng)性查詢加入諭言機(jī)JO.的基數(shù), 則稱環(huán)簽名滿足無(wú)條件匿名性.可鏈接環(huán)簽名不僅滿足上述正確性、不可偽造性和無(wú)條件匿名性, 還需要具備可鏈接性和不可誹謗性.

? 鏈接性: 鏈接性是可鏈接環(huán)簽名的必備性質(zhì), 即一個(gè)簽名者不能生成兩個(gè)有不同鏈接標(biāo)簽的簽名值. 鏈接性通過模擬器S和敵手A之間的下述游戲定義:

–S生成系統(tǒng)參數(shù)params 并將其發(fā)送給A;

–A可適應(yīng)性查詢諭言機(jī)JO、CO、SO;

–A輸出兩組可鏈接環(huán)簽名值(S,M1,σ1,Q1) 和(S,m2,σ2,Q2).稱A贏得了上述游戲如果滿足以下4 個(gè)條件:

(1) 集合S中的公鑰均是通過查詢加入諭言機(jī)JO 得到;

(2)A向腐化諭言機(jī)CO 查詢S中公鑰對(duì)應(yīng)的私鑰不超過兩次, 即敵手A最多獲取S中一個(gè)用戶的私鑰;

(3) (σ1,Q1),(σ2,Q2) 分別是關(guān)于消息M1,M2的有效環(huán)簽名, 即LRVerify(M1,S,σ1,Q1)→accept, LRVerify(M2,S,σ2,Q2)→accept, 并且σ1,σ2不是簽名諭言機(jī)SO 的輸出值;

(4) Link(S,M1,M2,σ1,σ2)→unlinked.

如果對(duì)任意PPT 的敵手A來(lái)說, 贏得上述游戲的概率是可忽略的, 則稱可鏈接環(huán)簽名滿足鏈接性.

? 不可誹謗性: 不可誹謗性指敵手A不能生成與真實(shí)簽名者簽名相同的簽名標(biāo)簽, 這一性質(zhì)保證了

A不能陷害真實(shí)簽名者. 不可誹謗性通過模擬器S和敵手A之間的下述游戲定義:

–S生成系統(tǒng)參數(shù)params 并將其發(fā)送給A.

–A可適應(yīng)性查詢加入諭言機(jī)JO.

–A將簽名消息M,n個(gè)用戶公鑰組成的集合S={PK1,PK2,··· ,PKn}以及隨機(jī)選擇的π ∈{1,2,··· ,n}發(fā)送給S, 其中用戶π的公鑰PKπ沒有被腐化查詢或沒有作為簽名查詢SO查詢中的輸入;S使用PKπ對(duì)應(yīng)的私鑰skπ執(zhí)行可鏈接環(huán)簽名生成算法LRSign(M,n,S,skπ),最后將生成的簽名值{σ,Q}發(fā)送給A.

–A適應(yīng)性查詢諭言機(jī)JO、CO、SO.

(1) LRVerify(params,M?,S,σ?,Q?)=accept;

(2)σ?不是簽名諭言機(jī)SO 的輸出;

(3)S?中的公鑰都是加入諭言機(jī)JO 的輸出;

(4) PKπ沒有被敵手腐化查詢;

(5) Link(S,M,M?,σ,Q,σ?,Q?)→linked.

如果對(duì)任意PPT 的敵手A來(lái)說, 贏得上述游戲的概率是可忽略的, 則稱可鏈接環(huán)簽名方案滿足不可誹謗性.

本小節(jié)最后給出橢圓曲線上的離散對(duì)數(shù)問題.

橢圓曲線離散對(duì)數(shù)問題(ECDLP): 給定橢圓曲線E(Fp) 上任意兩點(diǎn)P,Q, 求解滿足等式Q=x·P的值x是多項(xiàng)式時(shí)間內(nèi)不可解的.

2.2 SM2 數(shù)字簽名算法

本節(jié)介紹SM2 數(shù)字簽名算法的4 個(gè)階段: 系統(tǒng)參數(shù)生成、密鑰生成、簽名和驗(yàn)證.

3 基于SM2 數(shù)字簽名算法的環(huán)簽名方案

3.1 SM2 環(huán)簽名方案

環(huán)簽名方案因其“環(huán)簽名生成算法” 生成的某些值按一定規(guī)則構(gòu)成一個(gè)環(huán)狀而得名, 本文以Rivest 等人提出的環(huán)簽名概念為基準(zhǔn), 基于SM2 數(shù)字簽名算法設(shè)計(jì)了一個(gè)安全的環(huán)簽名方案, 下面給出SM2 環(huán)簽名方案的4 個(gè)算法.

算法1 SM2 環(huán)簽名生成算法Input: m,L = {P1,P2,··· ,Pn},dπ Output: 環(huán)簽名σL(m) = (c1,s1,s2,··· ,sn)1 產(chǎn)生隨機(jī)數(shù)kπ ∈Z?q, 計(jì)算cπ+1 = H1(L,m,kπ ·G);2 對(duì)i = π+1,··· ,n,1,··· ,π ?1,, 依次執(zhí)行以下運(yùn)算:3 隨機(jī)產(chǎn)生si ∈Z?q, 計(jì)算Zi = si·G+(si+ci)·Pi,ci+1 = H1(L,m,Zi), 其中記c1 = cn+1;4 計(jì)算sπ = ((1+dπ)?1 ·(kπ ?cπ ·dπ)) mod q;5 輸出在L 上關(guān)于m 的環(huán)簽名(c1,s1,s2,··· ,sn).

3.2 SM2 可鏈接環(huán)簽名

本節(jié)在SM2 環(huán)簽名方案的基礎(chǔ)上, 通過嵌入安全的簽名標(biāo)簽, 設(shè)計(jì)了基于SM2 數(shù)字簽名算法的可鏈接環(huán)簽名方案極其兩種變型方案, 下面介紹SM2 可鏈接環(huán)簽名方案的5 個(gè)算法: 系統(tǒng)初始化算法、密鑰生成算法、可鏈接環(huán)簽名生成、可鏈接環(huán)簽名驗(yàn)證和鏈接算法.

? 系統(tǒng)初始化算法: 該算法輸入安全參數(shù)λ,輸出系統(tǒng)參數(shù)params={p,Fp,E(Fp),G,G,q,H1,Hp},其中p是大素?cái)?shù),E(Fp) 是定義在有限域Fp上的橢圓曲線, G 表示橢圓曲線上的點(diǎn)構(gòu)成的加法循環(huán)群,G是循環(huán)群G 的生成元, 階為素?cái)?shù)q,H1:{0,1}?→Z?q,Hp:{0,1}?→G 是兩個(gè)安全的哈希函數(shù).

圖1 環(huán)結(jié)構(gòu)Figure 1 Ring structure

? 可鏈接環(huán)簽名生成: 簽名者任意選取n?1 個(gè)用戶公鑰,加上自身公鑰構(gòu)成群組L={P1,P2,··· ,Pn}; 簽名者為其中第π(1≤π ≤r) 個(gè)用戶, 利用私鑰dπ和環(huán)成員公鑰L生成對(duì)消息m的可鏈接環(huán)簽名, 如算法2:

算法2 SM2 可鏈接環(huán)簽名生成算法Input: m,L = {P1,P2,··· ,Pn},dπ Output: 可鏈接環(huán)簽名σL(m) = (Qπ,c1,s1,s2,··· ,sn)1 計(jì)算簽名標(biāo)簽Qπ: R = Hp(L),Qπ = dπ ·R;2 隨機(jī)選取kπ ∈Z?q, 計(jì)算cπ+1 = H1(L,Qπ,m,kπ ·G,kπ ·R);3 對(duì)i = π+1,··· ,n,1,··· ,π ?1, 隨機(jī)產(chǎn)生si ∈Z?q, 并依次計(jì)算Vi = si·G+(si+ci)·Pi,Wi = si·R+(si+ci)·Qπ,ci+1 = H1(L,Qπ,m,Vi,Wi), 其中記c1 = cn+1;4 計(jì)算sπ = ((1+dπ)?1 ·(kπ ?cπ ·dπ)) mod q;5 輸出可鏈接環(huán)簽名(Qπ,c1,s1,s2,··· ,sn).

? 可鏈接環(huán)簽名驗(yàn)證: 為了檢驗(yàn)收到的消息m′及其可鏈接環(huán)簽名(c′1,s′1,s′2,··· ,s′n,Q′π), 驗(yàn)證者實(shí)現(xiàn)以下步驟:

– 計(jì)算R=Hp(L);

下面給出SM2 可鏈接環(huán)簽名方案的兩種變型.

算法3 SM2 可鏈接環(huán)簽名變型一Input: m,L = {P1,P2,··· ,Pn},dπ Output: 可鏈接環(huán)簽名σL(m) = (Qπ,c1,s1,s2,··· ,sn)1 計(jì)算簽名標(biāo)簽Qπ: R = Hp(L),Qπ = dπ ·R;2 隨機(jī)選取kπ ∈Z?q, 計(jì)算cπ+1 = H1(L,Qπ,m,kπ ·(G+R));3 對(duì)i = π+1,··· ,n,1,··· ,π ?1, 隨機(jī)產(chǎn)生si ∈Z?q, 并依次計(jì)算Zi = (si +ci)·(Pi +Qπ)+si ·(G+R),4 ci+1 = H1(L,Qπ,m,Zi), 其中記c1 = cn+1;5 計(jì)算sπ = ((1+dπ)?1 ·(kπ ?cπ ·dπ)) mod q;6 輸出可鏈接環(huán)簽名(Qπ,c1,s1,s2,··· ,sn).

算法4 SM2 可鏈接環(huán)簽名變型二Input: m,L = {P1,P2,··· ,Pn},dπ Output: 可鏈接環(huán)簽名σL(m) = (Qπ,c1,s1,s2,··· ,sn)1 計(jì)算簽名標(biāo)簽Qπ: R = Hp(L),Qπ = dπ ·R;2 隨機(jī)選取kπ ∈Z?q, 計(jì)算(xπ,yπ) = kπ ·(G+R),cπ+1 = (H1(L,Qπ,m)+xπ) mod q;3 對(duì)i = π+1,··· ,n,1,··· ,π ?1, 隨機(jī)產(chǎn)生si ∈Z?q, 并依次計(jì)算Zi = (xi,yi) = (si +ci)·(Pi +Qπ)+si ·(G+R),4 ci+1 = (H1(L,Qπ,m)+xi) mod q, 其中記c1 = cn+1;5 計(jì)算sπ = ((1+dπ)?1 ·(kπ ?cπ ·dπ)) mod q;6 輸出可鏈接環(huán)簽名(Qπ,c1,s1,s2,··· ,sn).

4 安全性分析

本節(jié)主要證明SM2 (可鏈接) 環(huán)簽名方案的正確性、不可偽造性、無(wú)條件匿名性以及SM2 可鏈接環(huán)簽名方案的鏈接性、不可誹謗性.

定理1 SM2 環(huán)簽名方案滿足正確性.

證明: 假定簽名σL(m) = (c1,s1,s2,··· ,sn) 按照算法1 產(chǎn)生, 驗(yàn)證者根據(jù)環(huán)簽名驗(yàn)證算法進(jìn)行驗(yàn)證, 則有:

因此滿足c1=cn+1, 正確性得證.

為了證明本文中的方案在隨機(jī)諭言模型下抵抗適應(yīng)性選擇消息攻擊, 首先分析本文的方案滿足一般環(huán)簽名的概念, 然后證明在橢圓曲線離散對(duì)數(shù)問題困難的假設(shè)下, 本文提出的方案滿足不可偽造性.

分析: 在SM2 環(huán)簽名方案中,算法1 展示了簽名值的生成過程: 輸入為消息m、公鑰L={P1,P2,···,Pn}、私鑰skπ以及哈希函數(shù)H1, 中間值為(Z1,Z2,··· ,Zn,c1,c2,··· ,cn), 輸出的簽名值為σ=(c1,s1,s2,··· ,sn). 其中,ci+1=H1(L,m,Zi) 顯然是由L,m,Zi確定的哈希值, 從而SM2 環(huán)簽名是文獻(xiàn)[40] 定義的一般環(huán)簽名的一個(gè)實(shí)例, 因此分叉引理適用. 同理可分析SM2 可鏈接環(huán)簽名方案也滿足一般環(huán)簽名的定義. 下面主要介紹SM2 環(huán)簽名方案的不可偽造性.

定理2 若橢圓曲線離散對(duì)數(shù)問題(DLP) 是困難的, 則SM2 環(huán)簽名具有不可偽造性.

(G,Q) 問題可解, 與假設(shè)矛盾, 定理得證.

定理3 SM2 環(huán)簽名方案滿足無(wú)條件匿名性.

可鏈接環(huán)簽名方案的正確性、不可偽造性、無(wú)條件匿名性證明過程與環(huán)簽名方案相似, 下面主要證明SM2 可鏈接環(huán)簽名的可鏈接性和不可誹謗性.

定理4 假設(shè)離散對(duì)數(shù)問題(DLP) 是困難的, 則在隨機(jī)諭言機(jī)模型下SM2 可鏈接環(huán)簽名具有鏈接性.

定理5 SM2 可鏈接環(huán)簽名滿足不可誹謗性.

5 效率分析

5.1 通信量

5.2 計(jì)算量

本節(jié)分別統(tǒng)計(jì)SM2 環(huán)簽名方案和SM2 可鏈接環(huán)簽名方案的計(jì)算量與環(huán)成員數(shù)量的關(guān)系, 如表1 所示.

表1 SM2 環(huán)簽名方案的計(jì)算量Table 1 Computation quantity for SM2 ring signature schemes

圖2 通信量與環(huán)成員數(shù)量關(guān)系Figure 2 Relationship between communication cost and number of ring members

針對(duì)SM2 環(huán)簽名方案, 假設(shè)環(huán)成員數(shù)量為n, 以循環(huán)群G 上的點(diǎn)乘、點(diǎn)加、H1運(yùn)算以及Zq上逆運(yùn)算的計(jì)算量統(tǒng)計(jì)計(jì)算復(fù)雜度. SM2 環(huán)簽名過程中, 生成cπ+1時(shí)包含一次G 上點(diǎn)乘運(yùn)算、一次H1運(yùn)算,生成與其他n ?1 個(gè)ci(1≤i ≤n,i ?=n) 時(shí)包含2n ?2 次G 上點(diǎn)乘、n ?1 次G 上點(diǎn)加和n ?1 次H1運(yùn)算, 最后生成sπ時(shí)包含一次Zq上逆運(yùn)算; 驗(yàn)證過程包含n次G 上點(diǎn)加、2n次G 上點(diǎn)乘和n次H1運(yùn)算.

針對(duì)SM2 可鏈接環(huán)簽名方案, 假設(shè)環(huán)成員數(shù)量為n, 以循環(huán)群G 上的點(diǎn)乘、點(diǎn)加、H1運(yùn)算以及Zq上逆運(yùn)算的計(jì)算量統(tǒng)計(jì)計(jì)算復(fù)雜度.SM2 可鏈接環(huán)簽名生成過程中, 首先計(jì)算鏈接標(biāo)簽Qπ需要1 次Hp運(yùn)算、1 次G 上點(diǎn)乘運(yùn)算; 然后計(jì)算cπ+1包含2 次點(diǎn)乘運(yùn)算、1 次H1運(yùn)算, 計(jì)算其他n ?1 個(gè)ci(1≤i ≤n,i ?=n) 時(shí)總共包含4n ?4 次點(diǎn)乘、2n ?2 次點(diǎn)加和n ?1 次H1運(yùn)算, 最后生成sπ時(shí)包含一次Zq上的逆運(yùn)算; 可鏈接環(huán)簽名驗(yàn)證過程包含1 次Hp運(yùn)算、4n次G 上點(diǎn)乘、2n次點(diǎn)加和n次H1運(yùn)算.

6 結(jié)束語(yǔ)

環(huán)簽名是一種特殊的數(shù)字簽名, 它允許一個(gè)成員代表一組人進(jìn)行簽名而不泄漏簽名者的信息, 實(shí)現(xiàn)了簽名的無(wú)條件匿名性, 可以保護(hù)用戶的隱私; 可鏈接環(huán)簽名是一種具有簽名人關(guān)聯(lián)性的環(huán)簽名, 實(shí)現(xiàn)了簽名的無(wú)條件匿名性和可鏈接性, 即保護(hù)用戶隱私的同時(shí)保證了簽名的可鏈接性. 環(huán)簽名/可鏈接環(huán)簽名在電子投票、數(shù)字貨幣等多個(gè)領(lǐng)域有著廣泛應(yīng)用. 科研人員已經(jīng)提出了多種不同形式和不同特性的環(huán)簽名算法, 但沒有基于SM2 數(shù)字簽名算法的環(huán)簽名. 為了推廣SM2 數(shù)字簽名算法在這些領(lǐng)域的應(yīng)用, 本文提出了基于SM2 數(shù)字簽名算法的環(huán)簽名/可鏈接環(huán)簽名, 并證明了其安全性, 具有安全性高、實(shí)現(xiàn)簡(jiǎn)單、易驗(yàn)證的特點(diǎn). 下一步的工作重點(diǎn)是減弱環(huán)簽名通信量、計(jì)算量與環(huán)成員數(shù)量的關(guān)系, 如對(duì)數(shù)關(guān)系甚至與環(huán)成員數(shù)量無(wú)關(guān).

猜你喜歡
匿名性簽名者數(shù)字簽名
基于離散對(duì)數(shù)新的多重代理多重盲簽名方案
淺談高校網(wǎng)絡(luò)心理咨詢的困境與對(duì)策
淺析計(jì)算機(jī)安全防護(hù)中數(shù)字簽名技術(shù)的應(yīng)用
勞動(dòng)者代簽名 用人單位應(yīng)否支付雙倍工資
去個(gè)體化心理分析
山東青年(2016年10期)2017-02-13 16:29:16
基于變形ElGamal簽名體制的強(qiáng)盲簽名方案
商情(2016年45期)2017-01-17 21:04:39
基于數(shù)字簽名的QR碼水印認(rèn)證系統(tǒng)
一種有效的授權(quán)部分委托代理簽名方案
基于概率論的發(fā)送者匿名性度量模型
河南科技(2014年5期)2014-02-27 14:08:47
基于數(shù)字簽名和HSM的數(shù)據(jù)庫(kù)篡改檢測(cè)機(jī)制
运城市| 襄樊市| 白朗县| 呈贡县| 石狮市| 高尔夫| 监利县| 麟游县| 大庆市| 比如县| 崇信县| 右玉县| 莒南县| 万盛区| 丘北县| 墨竹工卡县| 孝昌县| 黔西县| 新津县| 文成县| 宁波市| 盱眙县| 多伦县| 榆中县| 美姑县| 株洲市| 五家渠市| 安岳县| 安平县| 大悟县| 庆阳市| 万荣县| 万年县| 姚安县| 新竹市| 汉沽区| 仙居县| 宁都县| 连云港市| 达拉特旗| 元氏县|