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

?

格上無證書代理重簽名

2020-03-02 09:34歐海文
密碼學報 2020年1期
關鍵詞:敵手私鑰公鑰

范 禎, 歐海文, 裴 燾

1.中船重工集團公司第七二二研究所, 武漢430079

2.北京電子科技學院, 北京 100071

1 引言

1998 年Blaze、Bleumer 和Strauss 初次提出了代理重簽名的概念[1].代理重簽名中代理者 P 扮演了轉換兩個不同簽名者對相同消息簽名的角色, 即代理者P 在知道代理密鑰的情況下可以將受托者B 對某一個消息的簽名轉換成委托者A 對該消息的簽名, 并使得代理者P 對該消息的簽名和委托者A 對該消息的簽名是不可區(qū)分的, 但與受托者B 對該消息的簽名是可區(qū)分的.代理重簽名在數(shù)字版權管理、證書管理和構造跨域操作系統(tǒng)等方面有很好的應用前景.例如, 如今國家正在采用電子護照, 也就是在傳統(tǒng)的護照文件中存儲若干數(shù)目的數(shù)字簽名, 假設用戶C 擁有自己國家E (相當于受托者) 的良好身份簽名SigE,當C 去另一個國家F (相當于委托者) 時, 邊防警察(相當于代理者) 首先檢查SigE 是否為真, 如果是真的, 那么可以將 SigE 轉換成國家 F 對用戶 C 的良好公民身份的簽名 SigF, 通過邊防局的公鑰即可驗證該用戶是否通過邊防警察的驗收.2005 年Ateniese 和Honenberger[2]給出了代理重簽名更具體的定義,并給出了具體的代理重簽名方案.現(xiàn)有的代理重簽名方案大多是基于公鑰密碼體制提出的, 通常公鑰密碼系統(tǒng)可以分為三類: 基于證書、基于身份和基于無證書, 其中基于證書的公鑰密碼系統(tǒng)需要可信中心CA對用戶的公鑰進行認證, 并且需要管理系統(tǒng)來管理用戶的公鑰信息, 如果用戶過多, 那么很明顯存在證書的管理問題.1984 年Shamir 首次提出基于身份的公鑰密碼體制[3], 該體制中用戶的私鑰通過密鑰生成中心KGC 來產(chǎn)生, 公鑰可以通過用戶身份信息ID 生成, 解決了基于證書的證書管理問題, 但是如果 KGC被攻擊或者在傳送密鑰的途中被攻擊, 那么顯然又存在密鑰托管問題.2003 年Al-Riyami 和Paterson 首次提出無證書公鑰的概念[4].無證書公鑰密碼方案利用KGC 與用戶共同生成私鑰的方式, 解決了基于身份的數(shù)字簽名方案中存在的密鑰托管問題.2005 年Huang 提出一個無證書簽名方案[5], 并給出在隨機預言機模型下無證書簽名體制的安全模型, 2007 年又針對兩種攻擊者類型對該安全模型進行改進, 提出更完善的安全模型[6].

由于現(xiàn)在還沒有發(fā)現(xiàn)多項式時間量子算法能夠破解格上的困難問題, 所以目前認為格密碼能夠抵抗量子攻擊.基于格理論設計的公鑰密碼方案除了抗量子攻擊之外, 還有一些其他的優(yōu)勢: ①運算簡單.因為格是離散加法交換群的子群, 格上的代數(shù)運算通常都是矩陣的加法或者矩陣和向量之間乘法之類的線性運算, 所以相比雙線性對復雜的代數(shù)運算, 效率較高且運算更簡單; 而且特殊的格比如循環(huán)格[7]、理想格[8]等具有一般格所不具有的特殊結構, 能夠更好的提升密碼方案的效率或者減少密鑰存儲空間; ②安全程度高.文獻[9]已證明了格上困難問題在隨機實例下的困難程度等價于最壞實例下的困難程度, 所以格上密碼方案的安全性可以歸約到格上最壞情況下的某些困難問題.2012 年 Lyubashevsky 提出隨機預言機下高效的格上無陷門的簽名方案[10], 其安全性基于小整數(shù)解問題(small integer solution problem, SIS) 問題, 利用了無抽樣技術, 使得效率更高.在該簽名的基礎上, 2015 年 Tian M 等提出格上無證書簽名方案[11], 相比其他同類型方案密鑰尺寸更小、效率更高; 同年還構造了一個基于身份的雙向代理重簽名方案[12], 但是該方案的代理重密鑰需要委托者和受托者的私鑰才能生成.

本文對文獻[11]的無證書方案中的密鑰尺寸進行改進, 并對文獻 [12]的代理重簽名方案中基于身份和代理密鑰生成的不足進行改進, 提出格上無證書代理重簽名方案, 該方案相比已有的方案效率較高且密鑰尺寸較小.

2 基礎知識

本節(jié)將介紹基于格的公鑰密碼方案常用的一些相關的格基礎知識, 包括格的定義、SIS 問題、格上的離散高斯分布、陷門和無抽樣技術.

2.1 格

在幾何學中, 格是 n 維空間中一組有著周期排列結構點的集合; 在代數(shù)學中, 格是集合 Rn的一個子群.

定義 1(格) 設 b1,b2,··· ,bm是 Rn上 m 個線性無關的向量, 則 b1,b2,··· ,bm的所有整系數(shù)倍的線性組合構成的集合稱為格, 記作:

任意一組可以生成格的線性無關向量都可以稱為該格的基, 例如, 在上述定義中 b1,b2,··· ,bm為格的一組基.另一方面, 如果一個 n 行 m 列的矩陣 B =(b1,b2,··· ,bm) 是一組格基, 那么可以將該格定義為Λ = L(B) = {Bx|x ∈Zm}.顯而易見, 任意格的基都存在且不唯一, 例如當矩陣 B 是一組格基時, 則該格必定至少還存在另一個基矩陣?B.

定義 2(q-模格) 兩種特殊的模 q 整數(shù)格:

2.2 SIS問題

格上的困難問題有很多種, 但這里主要介紹以下幾個問題.

定義 3(SISq,n,m,β) 設 q 是一個整數(shù), 矩陣β 是一個正實數(shù), 找到一個非零向量 e ∈是 Ax=0 mod q 的解, 其中 ||e|| ≤ β.

定義 4(ISISq,n,m,β) 給定正整數(shù)參數(shù)m、n、非零實數(shù)β, 矩陣均勻隨機選取, 以及任意均勻隨機向量找到非零向量 v, 滿足 Av ≡u(modq), 并且其范數(shù) ||v||≤ β.

SIS 和ISIS 問題的困難程度是一樣的.

2.3 格上的離散高斯分布

定義 5(統(tǒng)計距離) 某個集合? 上的兩個分布X,Y 之間的統(tǒng)計距離被定義為:

若X,Y 的統(tǒng)計距離是可忽略的, 那么我們就說這兩個變量是統(tǒng)計接近的, 即兩個統(tǒng)計分布是不可區(qū)分的.

定義 6在線性空間 Rn中, 以向量 c ∈Rn為中心, 方差參數(shù)是s>0 的 n 維高斯函數(shù)為

其中 ?x ∈ Rn.

定義 7假設 Λ ∈Rn為一個格, 在線性空間 Rn中, 以向量 c ∈Rn為中心, 實參數(shù)為 s > 0, 可以定義 n 維格 Λ 的離散高斯分布為

其中 ?x ∈ Λ, ρs,c(Λ)= ∑x∈A ρs,c(x).

2.4 格上的陷門

公鑰密碼體制可以歸結為設計一個陷門單向函數(shù).單向函數(shù)是正向容易計算, 反向計算不可行的函數(shù); 而在知道某些信息的情況下, 單向函數(shù)的反向計算是容易的函數(shù)則稱為陷門單向函數(shù).函數(shù) f(x) =Ax(modq) 是一個單向函數(shù) (其中因為該函數(shù)的原像不唯一, 所以求解原像較為困難.而基于SIS 問題的困難性, 當規(guī)定原像x 是范數(shù)較小的向量時, 可以將其看作一個陷門單向函數(shù).

文獻[13]中給出該陷門的生成算法TrapGen 和原像取樣算法SamplePre 見算法1 和算法2.

利用上述生成算法得到的陷門可以通過調(diào)用以下算法得到上述單向函數(shù)的范數(shù)較小的原像, 具體算法如算法2.

利用原像取樣算法可以得到小矩陣的算法如算法3.

2.5 無抽樣技術

文獻 [10]設計的簽名方案中沒有用到上述的原像抽樣算法進行簽名, 而是基于隨機預言機利用無抽樣技術設計了一種無陷門簽名的方案.因為無抽樣技術效率較高, 所以現(xiàn)在已有的較多格上高效率的簽名方案都是利用該技術來設計的.

引理1[9]Rm上的離散高斯分布上, 有

其中 σ >0, x ∈Rm.

由文獻[10]中可得, 在上述引理的基礎上, 其中c ∈Zm, a 是實數(shù), 可以得出以下結論:

3 格上無證書代理重簽名

3.1 格上無證書代理重簽名方案

(1) 系統(tǒng)初始化

①輸入安全參數(shù)n, 運行TrapGen(n,m,q), 輸出中一個服從隨機均勻分布的矩陣A 和格Λ⊥(A) 的一組基

②選取兩個哈希函數(shù)

③公共參數(shù)param={A,H1,H2}, 主私鑰是sk=B.

(2) 部分密鑰提取

假設KGC 要生成身份為ID 的用戶的部分密鑰值, 具體步驟如下:

①計算F =H1(ID);

②KGC 運行算法SampleMat(A,B,s,F), 輸出矩陣DID∈Zm×k, 然后將DID發(fā)送給該用戶, 其中

③DID為該用戶的部分密鑰, 并將其發(fā)送給該用戶.

(3) 密鑰生成

對于需要生成密鑰的用戶(身份為ID), 密鑰生成的步驟如下:

①從{?d,··· ,0,··· ,d}m×k中選擇一個服從隨機均勻分布的矩陣CID, 將矩陣CID設置為該用戶的秘密值, 其中

③該用戶的公鑰為(A,TID=T), 私鑰為SID=S.

(4) 代理重密鑰的生成

假設委托者 I 的身份是 IDI, 受托者 M 的身份是 IDM, 那么這兩個用戶的公鑰分別表示為 (A,TIDI)和(A,TIDM), 私鑰分別表示為SIDI和SIDM.那么該代理重密鑰的生成步驟如下:

①受托者M 從Zm×k中選擇的一個服從隨機均勻分布的矩陣R;

②受托者M 利用他的私鑰SIDM和矩陣R 計算代理重密鑰KM→I=SIDM+R;

③受托者M 將矩陣R 秘密分享給委托者I, 將代理重密鑰KM→I通過秘密信道發(fā)送給代理簽名者P;

④委托者I 利用自己的私鑰SIDI和矩陣R 計算KI→M= SIDI+R, 然后將KI→M通過秘密信道發(fā)送給代理簽名者P;

(5) 簽名

假設需要對消息 μ 進行簽名, 簽名者的身份是 ID, 則簽名者的公鑰是 (A,TID), 私鑰是 SID.那么該簽名者對消息μ 的簽名步驟如下:

②計算c=H2(Ay,μ);

③計算zID=SIDc+y;

(6) 代理重簽名

代理簽名者P 利用受托者M 的對消息μ 的簽名sig=(zIDM,c) 和代理重密鑰進行以下步驟:

①代理簽名者P 首先驗證受托者M 的簽名sig=(zIDM,c), 驗證步驟見下述(7), 如果驗證通過, 則繼續(xù)進行②, 否則停止;

②代理簽名者P 利用sig=(zIDM,c), KI→M和KM→I計算

③代理者P 代替委托者I 對消息μ 的簽名為sig=(zIDI,c).

(7) 驗證

假設需要驗證身份為ID 用戶的簽名sig=(zID,c), 那么驗證者V 進行驗證的步驟如下:

②利用該簽名用戶的公鑰(A,TID), 計算c′=H2(AzID?(H1(ID)+TID)c,μ);

③判斷(c′=c), 如果相等, 則驗證通過; 否則驗證不通過, 輸出“Reject”.

3.2 方案分析

3.2.1 正確性分析

由于該代理重簽名的驗證用戶 ID 對消息 μ 的簽名時, 需要滿足的兩點分別是 c =分析如下:

(1) 關于第一點的正確性分析分為以下兩點:

①當簽名為身份為ID 的用戶的直接簽名時, 因為

所以 H2(Ay,μ)=H2(AzID? (H1(ID)+TID)c,μ).

②當簽名為代理者P 利用代理簽名密鑰和受托者M 對消息μ 的簽名得到委托者I 的簽名時,

緊接著類似①的正確性分析, 可以驗證AzIDI?(H1(IDI)+TIDI)c=Ay, 因此可得

(2) 關于第二點的正確性分析如下.

因為zID= SIDc+y, 其中y 服從分布, 由拒絕采樣算法[10]和離散高斯分布的性質(zhì)可以知道, 以概率輸出的SIDc+y 滿足的分布與分布統(tǒng)計上接近(且統(tǒng)計距離為2?ω(logm)/M, 其中 M ≈ e), 所以由引理1 可知, 簽名 zID以 1 ? 2?m的概率滿足

綜上所述, 該代理重簽名方案是正確的.

3.2.2 安全性分析

一般情況下, 無證書簽名方案的安全性通常需要從兩方面證明, 一方面需要證明簽名方案對外部攻擊(第一類攻擊) 是安全的, 此時的敵手僅僅能替換用戶的公鑰, 而不能夠得到任意用戶的部分密鑰值; 另一方面需要證明簽名方案對內(nèi)部 KGC 的攻擊 (第二類攻擊) 是安全的, 此時的敵手僅僅能獲得 KGC 的私鑰, 而不能替換用戶的公鑰.接下來針對這兩類敵手攻擊對上述簽名無證書代理重簽名方案進行安全性的證明.

第一類攻擊:

命題 1假設哈希函數(shù)可以被看作是隨機預言機, 且小整數(shù)解問題 SISq,n,m,β是困難的 (其中 β =那么該無證書代理重簽名方案中任一用戶ID 對任意消息μ 的簽名, 如果被第一類攻擊的敵手 A 在多項式時間內(nèi)成功偽造, 則存在一個算法以不可忽略的概率破解 SISq,n,m,β問題.也就是說, 在隨機預言機模型和 SISq,n,m,β問題難解的情況下, 該無證書簽名方案對第一類攻擊在選擇消息攻擊下是存在不可偽造的.

證明:這里利用第一類攻擊敵手A 和挑戰(zhàn)者C 兩者之間進行的一個游戲來證明該簽名方案是不可偽造的.假設敵手A 能夠在多項式時間內(nèi)以不可忽略的概率偽造簽名, 那么挑戰(zhàn)者C 可以利用敵手A 偽造的簽名以不可忽略的概率解決SIS 問題.

挑戰(zhàn)者C 首先建立四個列表, 第一個列表T1存儲的分別是(用戶身份ID, F =H1(ID), 部分密鑰值D, 秘密值C, 公鑰P, 私鑰S), 第二個列表T2存儲的分別是(消息μ, 隨機值y ←, c=H1(Ay,μ)),第三個列表T3存儲的分別是(用戶身份ID, 消息μ, 簽名sig=(c,z)), 第四個列表T4存儲的分別是(委托者身份IDI, 受托者身份IDM, 代理重密鑰KI→M, 代理重密鑰KM→I).當系統(tǒng)初始化已經(jīng)進行后, 挑戰(zhàn)者C 可以調(diào)用創(chuàng)建用戶的算法l: 輸入系統(tǒng)的公共參數(shù)param、主私鑰B 和用戶的身份ID 后, 首先查詢列表 T1, 如果表中存在身份 ID, 則退出; 否則, 在和 {?d,··· ,0,··· ,d} 中分別隨機抽取 F 和秘密值 C, 調(diào)用算法 SampleMat(A,B,s,F) 得到部分密鑰值 D, 再分別計算公鑰 P = AC mod q ∈和私鑰 S =C+D, 最后將 (ID,F,D,C,P,S) 存入列表T1后退出.

敵手A和挑戰(zhàn)者C進行游戲的步驟如下:

(1) 系統(tǒng)建立

挑戰(zhàn)者 C 首先選擇安全參數(shù) n, 素數(shù) q ≥3, m ≥5n log q, 運行算法 TrapGen (1n), 輸出一個服從隨機均勻分布的矩陣 A 和格 Λ⊥(A) 的一組基其中

(2) 詢問(敵手A 根據(jù)自己的需求對挑戰(zhàn)者C 進行以下詢問)

①哈希詢問

a.H1詢問: 敵手 A 向挑戰(zhàn)者 C 發(fā)送 IDi, 希望得到對應的哈希值 Fi= H1(IDi).C 首先查詢列表T1, 如果列表中已經(jīng)存在該用戶, 則發(fā)送對應的Fi給A; 否則C 調(diào)用算法l, 輸入用戶的身份IDi, 當算法運行完成后, C 查詢列表 T1, 將 IDi對應的 Fi直接發(fā)送給 A.

b.H2詢問: 敵手 A 向挑戰(zhàn)者 C 發(fā)送消息 μi, 希望得到對應的哈希值.C 首先查詢列表 T2, 如果列表中已經(jīng)存在該消息 μi, 那么直接發(fā)送對應的 ci給 A; 否則在 {c:c ∈{?1,0,1}κ,||c||1≤ κ} 中隨機抽取ci發(fā)送給A, 再隨機選擇y ←, 最后再將(μi,yi,ci) 存入列表T2.

②部分密鑰提取詢問

敵手A 向挑戰(zhàn)者C 發(fā)送IDi, 希望能夠得到該用戶的部分密鑰值Di.C 首先查詢列表T1, 如果列表中已經(jīng)存在該用戶, 那么直接發(fā)送對應的部分密鑰值 Di給 A; 否則 C 調(diào)用算法 l, 輸入用戶的身份 IDi,當算法運行完成后, C 查詢列表T1, 將IDi對應的部分密鑰值Di直接發(fā)送給A.

③用戶密鑰提取詢問

由于第一類敵手可替換用戶公鑰, 所以敵手A 可以進行如下兩種密鑰提取詢問.

a.不替換用戶公鑰

敵手A 向挑戰(zhàn)者C 發(fā)送IDi, 希望得到該用戶的公私鑰(Pi,Si).C 首先查詢列表T1, 如果列表中已經(jīng)存在該用戶, 那么發(fā)送對應公私鑰 (Pi,Si) 給 A; 否則 C 調(diào)用算法 l, 輸入身份 IDi后, l 運行完成后, C查詢列表 T1, 將 IDi對應的公私鑰 (Pi,Si) 發(fā)送給 A.

b.替換用戶公鑰

敵手 A 向挑戰(zhàn)者 C 發(fā)送 (IDi,Pi,Ci), 希望得到該用戶的的私鑰 (其中 Pi和 Ci分別是 A 替換該用戶的公鑰和秘密值).C 首先查詢列表T1, 然后分情況進行以下幾種操作:

i.如果列表T1中存在IDi, 并且對應的公鑰等于Pi, 那么C 直接將該用戶對應的私鑰Si發(fā)送給A;

ii.如果列表T1中存在該用戶IDi, 但是該用戶的公鑰不等于Pi, 那么C 利用表T1中的部分密鑰值Di, 重新計算私鑰Si= Ci+Di, 然后將T1中 IDi對應的秘密值和私鑰分別修改為 Ci和 Si, 同時將Si發(fā)送給A.

iii.如果列表 T1中不存在 IDi, C 在中隨機抽取 Fi, 調(diào)用算法 SampleMat(A,B,σ,Fi) 得到部分密鑰值Di, 再計算私鑰 Si=Ci+Di, 最后將(IDi,Fi,Di,Ci,Pi,Si) 存入列表 T1, 同時將私鑰Si發(fā)送給A.

④代理重密鑰詢問

敵手A 向挑戰(zhàn)者C 發(fā)送(IDi,IDj).C 查詢列表T4將對應的代理重密鑰發(fā)送給A.

⑤簽名詢問

敵手 A 向挑戰(zhàn)者 C 發(fā)送 (IDi,μi), 希望得到該用戶對消息 μi的簽名.C 首先查詢列表 T3, 如果列表中已經(jīng)存在該用戶對消息μi的簽名, 則將對應的簽名sigi發(fā)送給A; 否則C 調(diào)用算法l (因為如果T1中已經(jīng)存在該用戶, 那么算法l 將直接退出), 輸入IDi, 當該算法運行完成后, C 查詢列表T1和T2, 利用T1中用戶IDi所對應的 Si和T2中消息μi所對應的(yi,ci), 計算zi=Sici+yi, 最后將(IDi,μi,(ci,zi))存入列表 T3, 同時將 (ci,zi) 發(fā)送給 A.

⑥重簽名詢問

敵手 A 向挑戰(zhàn)者 C 發(fā)送 (IDi,IDj,μj,sigj= (zj,cj)), 希望 C 利用用戶 IDj對消息 μj的簽名sigj= (zj,cj) 得到用戶 IDi對該消息的簽名.挑戰(zhàn)者C 首先對 sigj= (zj,cj) 簽名進行驗證, 若通過則對(IDi,μj) 進行簽名詢問的過程, 將結果返回給A; 否則終止詢問.

(3) 偽造

當上述詢問進行完成后, 敵手A 根據(jù)已有的經(jīng)驗輸出任一用戶的身份ID?和公鑰P?(ID?在上述密鑰詢問中沒有詢問過), 能夠在多項式時間內(nèi)偽造該用戶 ID?對任意消息 μ?的簽名sig?= (z?,c?) (這里的消息 μ?可以被認為在前邊的H2詢問中已經(jīng)詢問過了), 并且使得驗證算法Verify 以不可忽略的概率輸出為 “Accept”.

此時挑戰(zhàn)者 C 得到用戶 ID?對消息μ?的偽造簽名后, 根據(jù)一般分叉引理[10]可知, 當挑戰(zhàn)者 C 重新選取消息μ?所對應的H2詢問值時, 敵手A 還可以以不可忽略的概率偽造出用戶ID?對消息μ?的簽名另一個簽名 sig′=(z′,c′), 使得

又因為H1(ID?)=ABID?, TID?=ACID?(其中BID?是用戶ID?的部分密鑰值, CID?是用戶ID?的秘密值) 所以

第二類攻擊

命題 2假設哈希函數(shù)可以被看作是隨機預言機, 且小整數(shù)解問題 SISq,n,m,β是困難的 (其中 β =那么該無證書代理重簽名方案中任一用戶ID 對任意消息μ 的簽名, 如果被第二類攻擊的敵手 A 在多項式時間內(nèi)成功偽造, 則存在一個算法以不可忽略的概率破解 SISq,n,m,β問題.也就是說, 在隨機預言機模型和 SISq,n,m,β問題難解的情況下, 該無證書簽名方案對第二類攻擊在選擇消息攻擊下是存在不可偽造的.

證明:類似于命題1 的證明, 依然利用敵手A (第二類攻擊) 和挑戰(zhàn)者C 兩者之間進行的一個游戲來證明該簽名方案是不可偽造的.假設敵手A 能夠在多項式時間內(nèi)以不可忽略的概率偽造簽名, 那么挑戰(zhàn)者C 可以利用敵手A 偽造的簽名以不可忽略的概率解決SIS 問題.

敵手 A 首先對挑戰(zhàn)者 C 進行相應的詢問, 但是與命題 1 不同的是第二類攻擊者是可以知道系統(tǒng)中用的主私鑰而不能替換用戶的公鑰.當A 相應的詢問進行完成后, A 根據(jù)已有的經(jīng)驗輸出任一用戶的身份 ID?(ID?在上述密鑰詢問中沒有詢問過能夠在多項式時間內(nèi)偽造該用戶 ID?對任意消息 μ?的簽名sig?=(z?,c?), 并且使得驗證算法以不可忽略的概率輸出為 “Accept”.

此時挑戰(zhàn)者 C 得到用戶 ID?對消息 μ?的簽名后, 根據(jù)一般分叉引理[10]可知, 當挑戰(zhàn)者 C 重新選取消息μ?所對應的H2詢問值時, 敵手A 還可以以不可忽略的概率偽造出用戶ID?對消息μ?的另一個簽名 sig′=(z′,c′), 使得

又因為 H1(ID?)=ABID?, TID?=ACID?(其中 BID?是用戶 ID?的部分密鑰值, CID?是用戶 ID?的秘密值) 所以

3.2.3 效率分析

文獻[14]提出了一個格上無證書加密方案, 文獻[11,15,16]分別提出了格上無證書的簽名方案, 將本文的無證書簽名方案與它們進行對比得出表1.其中 TSamM,TSamP,TBas,TTrap,TRand,TExt,THash,Tmul,分別是算法 SampleMat、SamplePar、BasicDel、TrapGen、RandBasis、ExtBasis、Hash 函數(shù)和數(shù)乘運算所需要的時間.

表1 中顯示本文和文獻 [11]中的無證書簽名方案的公鑰、私鑰和簽名長度相同, 只是 m 值的取值范圍不同, 本文中 m>5n log q, 文獻[11]中5n log q >64+n log q/(2d+1) 和文獻 [15,16]中的無證書簽名方案相比, 公鑰、私鑰和簽名尺寸都有所減小(由于m>k).文獻[14]是無證書公鑰加密方案, 相比之下本文的公鑰長度有所減少, 但是私鑰長度相對更大.本文采用了無抽樣技術, 具有較高的效率.

表1 一些無證書簽名方案的比較Table 1 Comparison of some certificateless signature schemes

又本文代理重簽名方案是基于無證書, 防止密鑰托管問題.改進后的代理重密鑰生成能夠抵抗中間人攻擊, 僅僅需要矩陣之間的加運算, 代理重簽名需要矩陣和向量之間的乘法運算以及向量之間的加減運算,運算復雜度較低.表2 將新方案與已有的方案在安全性、代理重簽名密鑰和簽名尺寸作對比, 從而得出新方案相比已有的兩種代理重簽名方案在效率不變的情況下安全性方面更好一些.

表2 一些代理重簽名方案的比較Table 2 Comparison of some proxy re-signature schemes

4 結語

我們首先改進了文獻[11]中的無證書簽名方案, 使得密鑰長度有所減小, 然后在此基礎上對文獻[12]中的格上基于身份的代理重簽名方案中兩個不足之處進行改進, 提出了第一個格上的無證書代理重簽名方案, 新方案具有更好的安全性和較好的運行效率.但是該代理重簽名方不能夠抵抗受托者和代理者的合謀攻擊, 下一步應該研究抵抗合謀攻擊的代理重簽名方案.

猜你喜歡
敵手私鑰公鑰
比特幣的安全性到底有多高
與“敵”共舞
Spatially defined single-cell transcriptional profiling characterizes diverse chondrocyte subtypes and nucleus pulposus progenitors in human intervertebral discs
程序員把7500枚比特幣扔掉損失巨大
不帶著怒氣做任何事
神奇的公鑰密碼
一種基于虛擬私鑰的OpenSSL與CSP交互方案
國密SM2密碼算法的C語言實現(xiàn)
基于身份的聚合簽名體制研究
不帶著怒氣作戰(zhàn)
广昌县| 和林格尔县| 乌兰浩特市| 海南省| 六盘水市| 从江县| 延津县| 霸州市| 汉川市| 区。| 宁阳县| 黎平县| 门头沟区| 黔西县| 军事| 大连市| 尉氏县| 钟祥市| 治县。| 凭祥市| 天柱县| 象州县| 丘北县| 钟祥市| 壶关县| 鸡泽县| 惠水县| 庆元县| 旬阳县| 新安县| 墨脱县| 瑞昌市| 礼泉县| 兴城市| 浠水县| 延安市| 湖州市| 三穗县| 大悟县| 花垣县| 阿坝县|