標(biāo)識密匙的生成方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明設(shè)及組合密匙管理技術(shù)領(lǐng)域,具體設(shè)及一種標(biāo)識密匙的生成方法。
【背景技術(shù)】
[0002] 在基于證書的公鑰基礎(chǔ)設(shè)施PKI(化blic K巧Infrastructure)中,用戶或設(shè)備和 密鑰之間的綁定是通過證書來完成的。在執(zhí)行密碼學(xué)操作之前,需要進行證書交換和證書 驗證。Shamir在1985年提出了基于身份的密碼體制IBC(Identity-Based Encryption)。在 IBC中,使用用戶唯一可標(biāo)識的身份信息作為公鑰,不再使用證書。2001年Don Boneh和 Matthew Franklinr提出了基于Weil對的I肥(Identit}f-based enciyption,基于身份的加 密體制)。2004年南湘浩和陳鐘共同提出組合公鑰密碼體制CPK。CPK是一種基于標(biāo)識的密鑰 管理體制,在CPK中標(biāo)識到標(biāo)識密鑰的映射是關(guān)鍵。
[0003] 在基于標(biāo)識的組合密鑰管理體制CPK中,CPK的主要思想在于從密鑰因子矩陣中根 據(jù)標(biāo)識選擇一個固定大小的子集復(fù)合而成組合密鑰,其組合密鑰作為后續(xù)的密碼學(xué)算法的 密鑰。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明克服了現(xiàn)有技術(shù)的不足,提供一種標(biāo)識密匙的生成方法。
[000引實現(xiàn)上述目的,本發(fā)明采用W下技術(shù)方案:
[0006] -種標(biāo)識密匙的生成方法,該方法應(yīng)用于基于標(biāo)識的組合密鑰管理系統(tǒng)中,它包 括W下步驟:
[0007] 步驟1,根據(jù)密匙所應(yīng)用的環(huán)境,確定系統(tǒng)參數(shù)化rams,如果密鑰是用于巧m上的楠 圓曲線密碼體制,那么化rams=(m,f,a,b,G,n,h);如果密鑰是用于Fp上的楠圓曲線密碼體 審|],那么化腳1113 = (口,曰,13,6,]1,11);
[0008] 步驟2,根據(jù)密匙所應(yīng)用的環(huán)境,確定系統(tǒng)主密匙集mkSet及其大小t,對主密匙集 進行有序化,并生成主密匙集址Set= {mki,mk2,...,址t},對應(yīng)的主密匙公匙集為MKSet = Imki ? G,mk2 ? G,... ,mkt ? G};
[0009] 步驟3,根據(jù)系統(tǒng)的安全強度,確定化Sh函數(shù)及其化Sh值的長度U,化Sh函數(shù)H。: {0, 1}*-〉{〇,1}。;
[0010] 步驟4,應(yīng)用化sh函數(shù)H。將標(biāo)識IDa和部分系統(tǒng)參數(shù)Params連接在一起,并且化sh函 數(shù)得到固定長度的化Sh值Za=化sh。!;IDLaI I IDaI Ia I Ib I IxgI Iyc);
[00川步驟5,將Za分成一些位束的集合與=社。,21,".&6);
[0012] 步驟6,從主密鑰集中選取一些子集復(fù)合構(gòu)成相應(yīng)的密鑰,該候選子集元在主密鑰 集中對應(yīng)元的下標(biāo)集記為1心-,…,Y_
[0013] 步驟7,通過候選子集復(fù)合構(gòu)成標(biāo)識相應(yīng)的標(biāo)識私鑰USk和標(biāo)識公鑰USK。
[0014] 更進一步的技術(shù)方案是,所述步驟4中化Sh值Za的計算如下:
[001引步驟4.1,設(shè)IDa是具有長度為idleriA比特的標(biāo)識,IDLa是由整數(shù)idleriA轉(zhuǎn)換而成的 字節(jié)串;
[0016] 步驟4.2,將系統(tǒng)參數(shù)化腳1113中的曰,13,6^及坐標(biāo)^,7〇的數(shù)據(jù)類型轉(zhuǎn)換成比特串;
[0017] 步驟4.3,將字符串IDLa,IDa,a,b,XG,yG依次連接在一起,連接后的串記為IDLa I IDaI Ia I Ib I IxgI Iyc;
[001引步驟4.4,根據(jù)所選化3]1函數(shù)計算24 =化311。(101^4||1〇4||曰||13||削||7〇)。
[0019] 更進一步的技術(shù)方案是,所述步驟5中各位束的計算如下:
[0020] 步驟5.1,ZO是位長度為IogU 2的位束,其指示所選子集的基數(shù);
[0021 ]步驟5.2,Z ' 0表示所選子集的基數(shù);
[002引步驟5.3,Zi是位長度為(V - log'; / 2) / zj)的位束,其中ie[l,Z'0-:[];
[002引步驟5.4,如果2O ! (v-l0g4/2)那么咬。是位長度為(V-log';/巧/ 的位束,否則Z '0 是位長度為(V - log:; / 2)%z0的位束。
[0024] 更進一步的技術(shù)方案是,所述步驟5.2中z'o的計算方法為,如果ZO = O, 1,那么Z'〇 =2,否則z'o = zo,其中位束ZO作為無符號整數(shù)。
[0025] 更進一步的技術(shù)方案是,所述步驟6中下標(biāo)集各項的計算如下,<'&,=l+((iZ,) IWd 0, ./=] 其中 iE[l,z'0]D
[0026] 更進一步的技術(shù)方案是,所述步驟7中標(biāo)識私鑰USk的計算為USk= modii,W M I 及相應(yīng)的標(biāo)識公鑰USK計算為IJSK . G
[0027] 更進一步的技術(shù)方案是,當(dāng)Usk = O時,標(biāo)識私鑰Usk= ;當(dāng)USK = O,標(biāo)識公鑰 US反=TM喪,曲1. ?技。
[0028] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
[0029] 本發(fā)明生成的標(biāo)識密匙大大增強了安全度,并允許個人定義簽名密鑰,從而廣泛 地用于可信接入、代碼認(rèn)證、電子銀行、可信交易、可信物流等領(lǐng)域。
【附圖說明】
[0030] 圖1為本發(fā)明一種實施例的方法流程圖。
[0031] 圖2為本發(fā)明另一種實施例的方法流程圖。
【具體實施方式】
[0032] 下面結(jié)合附圖對本發(fā)明作進一步闡述。
[0033] 設(shè)E是Fq上的楠圓曲線,G是E(Fq)上的元,其階為大素數(shù)n,h*n = #E(Fq)。當(dāng)q = 2m 時,公共參數(shù)化rams為(m,f ,a,b,G,n,h);當(dāng)q = p(p為大奇素數(shù))時,公共參數(shù)化rams為(P, a,b,G,n,h);設(shè)主密鑰集mkSet= {mki,mk2,. . . ,mkt}。設(shè)Hn: {0,1}。為安全的Hash函 數(shù),主要用于把任意長度的標(biāo)識變?yōu)楣潭ㄩL度的比特串,IDa是用戶A的具有長度為idleriA比 特的標(biāo)識。標(biāo)識密鑰由主密鑰集mkSet中至多選擇21心'W-I個元復(fù)合而成。
[0034] 本發(fā)明提供了一種標(biāo)識密鑰的生成方法,所述方法包括:根據(jù)化Sh函數(shù)把任意長 度的標(biāo)識和部分系統(tǒng)公共參數(shù)的組合化Sh到定長的比特串Za;根據(jù)主密鑰集的大小和標(biāo)識 間接決定與本標(biāo)識相應(yīng)的候選子集的大小z'o;將比特串Za的剩余位劃分成z'o個位束;計算 所選子集元在主密鑰集中對應(yīng)的下標(biāo)值集idx;根據(jù)下標(biāo)值集計算對應(yīng)的標(biāo)識密鑰。
[0035] 所述標(biāo)識可W是手機號碼,Email地址,設(shè)備標(biāo)識,用戶的生物特征數(shù)據(jù)等。
[0036] 在本發(fā)明實施例中,所設(shè)及的對象包括密鑰管理中屯、和標(biāo)識所對應(yīng)的用戶。密鑰 管理中屯、主要負(fù)責(zé)系統(tǒng)公共參數(shù)的選取和標(biāo)識私鑰的生成。
[0037] 系統(tǒng)建立
[0038] 在本實施例中,