一種抗入侵的基於身份籤名方法
2023-06-03 11:13:36
一種抗入侵的基於身份籤名方法
【專利摘要】本發明提供了一種抗入侵的基於身份籤名的方法,其包括,第一步,系統建立步驟;第二步,私鑰提取步驟;第三步,基地密鑰更新步驟;第四步,用戶密鑰更新步驟;第五步,基地密鑰刷新步驟;第六步,用戶密鑰刷新步驟;第七步,籤名步驟;第八步,驗證步驟。在該方法中,基地和用戶在不同的時間段使用不同的密鑰,即使在同一時間段,基地和用戶的密鑰也刷新多次。只要入侵者不是在同一時間段的同一子時間段同時得到用戶私鑰和基地密鑰,就不能計算其他時間段的用戶密鑰,偽造用戶的籤名。另外,即使入侵者同時侵入基地和用戶設備,他也不能偽造用戶在此之前所有時間段的籤名。從而大大增強了系統抵禦密鑰洩露的能力,具有很高的安全性。
【專利說明】一種抗入侵的基於身份籤名方法
【技術領域】
[0001]本發明涉及信息安全【技術領域】,尤其涉及一種抗入侵的基於身份籤名方法。
【背景技術】
[0002]密鑰洩露問題嚴重影響數字籤名的安全性,一旦密鑰發生洩露,所有由此密鑰形成籤名都將不再可信。在現代社會,越來越多的籤名算法應用到便攜、安全性低的行動裝置中,這使得密鑰洩露在所難免。攻擊者入侵安全性低的行動裝置要比攻破實際的密碼假設更加容易。
[0003]在基於身份的籤名中,籤名者的身份就是他的公鑰,驗證者可以通過籤名者的身份驗證籤名。基於身份的籤名體制簡化了公鑰基礎設施PKI對公鑰的管理體制。在基於身份的籤名方案中,一旦密鑰發生洩露,將不得不撤銷用戶的身份和相對應的密鑰,另外再補發一個新的身份和密鑰。由於用戶的身份不容易改變,因此怎樣減少基於身份的籤名中密鑰洩露帶來的危害成為研究焦點。
[0004]密鑰隔離在基於身份的籤名方案中的應用,很大程度上減少了因密鑰洩露問題造成的危害。在基於身份籤名的基礎上,增加一個物理安全的設備——基地。將整個籤名系統的生命周期分為若干時間段,每個時間段用戶在基地的幫助下完成私鑰更新,在保持用戶公鑰不變的情況下,用戶在不同的時間段使用不同的密鑰進行籤名。在基地設備安全的情況下,即使入侵者得到用戶當前的私鑰,他也不能偽造密鑰洩露之前和之後時間段此用戶的籤名。但是,如果有入侵者同時侵入基地和用戶,整個籤名方案的安全性將完全喪失。
[0005]本發明提出的抗入侵的基於身份籤名比密鑰隔離的基於身份籤名具有更高的安全性。和密鑰隔離的基於身份籤名相同的是,用戶用自己的私鑰生成籤名,在基地的幫助下更新自己的私鑰,不同的是用戶私鑰和基地密鑰在同一時間段內會刷新很多次。因而,只要入侵者不是在同一時間段的同一子時間段同時得到用戶私鑰和基地密鑰,就不能偽造其他時間段用戶的籤名。另外,即使入侵者同時侵入基地和用戶設備,他也不能偽造用戶在此之前所有時間段的籤名。
[0006]本發明提出的抗入侵的基於身份籤名方案,利用深度為I的完全二叉樹來表示T=21個時間片段,將每個時間段與二叉樹的葉子結點從左至右一一對應,因此每個時間片段可以表示為一個二進位字符串。
[0007]另外,本發明具有很好的平均性能,所有的費用參數包括:系統建立、私鑰提取、基地和用戶密鑰更新、基地和用戶密鑰刷新、籤名、驗證時間的複雜性和公共參數、私鑰和籤名長度的複雜性都不超過O(1g2T),其中T是此系統中總的時間段數。
【發明內容】
[0008]本發明所要解決的技術問題是基於身份的籤名系統中密鑰洩露的問題,提出一種抗入侵的基於身份籤名方法,在該方法中,基地和用戶在不同的時間段使用不同的密鑰,即使在同一時間段,基地和用戶的密鑰也刷新多次。只要入侵者不是在同一時間段的同一子時間段同時得到用戶私鑰和基地密鑰,就不能計算其他時間段的用戶密鑰。另外,即使入侵者同時侵入基地和用戶設備,他也不能得到用戶在此之前所有時間段的密鑰。從而大大增強了系統抵禦密鑰洩露的能力,具有很高的安全性。
[0009]為解決上述技術問題,本發明提供了一種抗入侵的基於身份籤名方法,其包括如下步驟:
[0010]第一步,系統建立步驟,輸入安全參數λ和總的時間段數Τ,該算法生成公共參數PM和主密鑰MK ;
[0011 ] 第二步,私鑰提取步驟,輸入公共參數PM,主密鑰MK和用戶的身份ID,該算法輸出初始基地密鑰和初始用戶密鑰SK=;
[0012]第三步,基地密鑰更新步驟,輸入當前時間片段j,用戶身份ID和基地密鑰匕該算法生成下一時間段新的基地密鑰和密鑰更新消息WCiZf ;
[0013]第四步,用戶密鑰更新步驟,輸入當前時間片段j,用戶身份ID,密鑰更新消息 和用戶密鑰》Cf,.,該算法生成下一時間段新的用戶密鑰訊匕,;
[0014]第五步,基地密鑰刷新步驟,輸入當前時間片段j,刷新數字r,用戶的身份ID和基地密鑰SKBf r該算法生成下一個子時間段新的基地密鑰SXSf和密鑰刷新消息;
[0015]第六步,用戶密鑰刷新步驟,輸入當前時間片段j,刷新數字r,用戶的身份ID,用戶的密鑰s/if和刷新消息SKR%,該算法生成下一個子時間段新的用戶密鑰;
[0016]第七步,籤名步驟,輸入當前時間片段j,用戶身份ID,用戶密鑰SKf,.和消息m該算法生成籤名<j,sign〉;
[0017]第八步,驗證步驟,輸入消息m,待驗證的籤名<j,sign〉和用戶身份ID,當籤名有效時,該算法輸出1,否則輸出O。
[0018]其中,籤名有效是指,如果是由籤名算法IRIBS.sign生成的關於消息m和身份ID的籤名,則驗證算法返回I。
[0019]所述第一步進一步具體為:
[0020]第a步,生成階為素數P的群G1和G2,並生成雙線性映射: G1 xG1 4 G2;
[0021]第b步,隨機選取群G1的生成元g和中的元素α (其中,),
令 gl = ga,隨機選擇群 G1 中的 nu+nm+l+4 個元素Λ ?,Λ V,MifMtlm (其中,
nu是用戶身份的二進位表示序列長度,nm是待籤名消息的二進位表示序列長度,I是二叉樹深度),並計算Z =
[0022]第c 步,選擇兩個密碼哈希函數//,#,$ 4 (O,If , 1/,:{0,1 4 {O,If.;
[0023]第d步,定義以下三個函數:
【權利要求】
1.一種抗入侵的基於身份籤名方法,其特徵在於:包括, 第一步,系統建立步驟,輸入安全參數λ和總的時間段數Τ,該算法生成公共參數PM和主密鑰MK ; 第二步,私鑰提取步驟,輸入公共參數PM,主密鑰MK和用戶的身份ID,該算法輸出初始基地密鑰SlB=和初始用戶密鑰; 第三步,基地密鑰更新步驟,輸入當前時間片段j,用戶身份ID和基地密鑰SOf,Λ亥算法生成下一時間段新的基地密鑰密鑰更新消息SCC/f ; 第四步,用戶密鑰更新步驟,輸入當前時間片段j,用戶身份ID,密鑰更新消息Ι?/f和用戶密鑰?該算法生成下一時間段新的用戶密鑰; 第五步,基地密鑰刷新步驟,輸入當前時間片段j,刷新數字r,用戶的身份ID和基地密鑰匕該算法生成下一個子時間段新的基地密鑰SiBf,.+1和密鑰刷新消息50;:; 第六步,用戶密鑰刷新步驟,輸入當前時間片段j,刷新數字r,用戶的身份ID,用戶的密鑰和刷新消息.》CRf),該算法生成下一個子時間段新的用戶密鑰SWf _ ; 第七步,籤名步驟,輸入當前時間片段j,用戶身份ID,用戶密鑰If,.和消息m該算法生成籤名〈j,sign); 第八步,驗證步驟,輸入消息m,待驗證的籤名〈j,sign〉和用戶身份ID,當籤名有效時,該算法輸出1,否則輸出O。
2.如權利要求1所述的抗入侵的基於身份籤名的方法,其特徵在於: 所述第一步進一步具體為: 第a步,生成階為素數P的群G1和G2,並生成雙線性映射七A XG1 第b步,隨機選取群G1的生成元g和Z:中的元素(其中,
3.如權利要求1或2所述的抗入侵的基於身份籤名的方法,其特徵在於:所述第二步進一步具體為,第a,步,計算用戶身份ID的哈希函數//,(/£>)== U,...Ullii,從*ζ中隨機選擇7個元素r' u,r' uQ,r' ul,α ',r" u,r" u(l,r" ul,並計算用戶的密鑰和基地密鑰,ski = (gf * Fi ((/, )r':.,g'1:,g,in, v?.',..」 vf*),
4.如權利要求1至3所述的抗入侵的基於身份籤名的方法,其特徵在於:所述第三步進一步具體為, 令時間段j的二進位序列表示 = ?...jjjo = ε是空串),計算用戶身份ID的哈希函數戌UD) == UwUkm ,令第j時間段中第r個子時間段的基地密鑰 SKB1Il.= Wl0Lli l%h一 Mkii,若 ji = O,新的基地密鑰= UihlIij1-OMM1? 更新消息=丨(在這種情況下,j+i時間段的二進位序列表示為=j0...jl-ll),若= I,找到時間段j的二進位序列表示 = j0Jl...j'l中,最後一個i使得ji = O,令V1...Vi = j0...U,從k = i+1到I執行Ι-1次以下循環,令
5.如權利要求1至4所述的抗入侵的基於身份籤名的方法,其特徵在於:所述第四步進一步具體為,令時間段j的二進位序列表示 = joJ'1...ji(j0 = ε是空串),計算用戶身份ID的哈希函數ZZ1 (?H= U,...U,,,令第j時間段中第r子時間段的用戶私鑰
6.如權利要求1至5所述的抗入侵的基於身份籤名的方法,其特徵在於:所述第五步進一步具體為,令第j時間段中r子時間段的基地密鑰
7.如權利要求1至6所述的抗入侵的基於身份籤名的方法,其特徵在於:所述第六步進一步具體為令j時間段中r子時間段的基地密鑰
8.如權利要求1至7所述的抗入侵的基於身份籤名的方法,其特徵在於:所述第七步進一步具體為,第a」步,令時間段j的二進位序列表示〈j> = Vc1...V1 (Vci = ε是空串),計算用戶身份ID的哈希函數
9.如權利要求1至8所述的抗入侵的基於身份籤名的方法,其特徵在於:第八步進一步具體為,令時間段j的二進位序列表示〈j〉= ^..V1M= ε是空串),計算用戶身份ID的哈希函數為(l0)==U1-M?t J寺籤名消息m的哈希函數拓_)==s待驗證籤名,驗證以下等式,
10.本發明還提供一種用於抗入侵的基於身份籤名的系統,其特徵在於:包括, 系統建立步驟模塊,輸入安全參數λ和總的時間段數Τ,該算法生成公共參數PM和主密鑰MK ; 私鑰提取模塊,輸入公共參數PM,主密鑰MK和用戶的身份ID,該算法輸出初始基地密鑰5--=和初始用戶密鑰:基地密鑰更新模塊,輸入當前時間片段j,用戶身份ID和基地密鑰該算法生成下一時間段新的基地密鑰密鑰更新消息SOTZf ; 用戶密鑰更新模塊,輸入當前時間片段j,用戶身份ID,密鑰更新消息SKZf和用戶密鑰I二,該算法生成下一時間段新的用戶密鑰; 基地密鑰刷新模塊,輸入當前時間片段j,刷新數字r,用戶的身份ID和基地密鑰SKBf r該算法生成下一個子時間段新的基地密鑰和密鑰刷新消息SAT?=; 用戶密鑰刷新模塊,輸入當前時間片段j,刷新數字r,用戶的身份ID,用戶的密鑰 和刷新消息》,該算法生成下一個子時間段新的用戶密鑰狐f,.+l; 籤名模塊,輸入當前時間片段j,用戶身份ID,用戶密鑰和消息m該算法生成籤名〈j, sign); 驗證模塊,輸入消息m,待驗證的籤名〈j,sign)和用戶身份ID,當籤名有效時,該算法輸出1,否則 輸出O。
【文檔編號】H04L29/06GK104022880SQ201410245257
【公開日】2014年9月3日 申請日期:2014年6月4日 優先權日:2014年6月4日
【發明者】於佳, 郝蓉 申請人:青島大學