專(zhuān)利名稱(chēng):一種基于身份的分布式系統(tǒng)中信息加密與解密的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于信息網(wǎng)絡(luò)、特別分布式系統(tǒng)的基于身份的信息加密解密方 法,屬于計(jì)算機(jī)網(wǎng)絡(luò)與信息安全技術(shù)領(lǐng)域。
背景技術(shù):
一個(gè)網(wǎng)絡(luò)系統(tǒng)可以由多個(gè)子系統(tǒng)組成(見(jiàn)圖1),一種全局性的密鑰系統(tǒng)可以實(shí)現(xiàn) 傳輸信息的加密解密,以達(dá)到保證信息安全的目的。但在密鑰的管理上顯得不夠靈活,如基 于身份的加密解密算法,其主密鑰此時(shí)只有一個(gè),全網(wǎng)共用,一旦主密鑰泄漏,全網(wǎng)的安全 性受到威脅。所以,人們希望設(shè)計(jì)分布式系統(tǒng)的基于身份加密解密方法,在這種情況下,即 使一個(gè)子系統(tǒng)的主密鑰遭到了攻擊,系統(tǒng)中的其他子系統(tǒng)的主密鑰仍然是安全的,提高了 整個(gè)系統(tǒng)的安全性。
發(fā)明內(nèi)容
發(fā)明目的本發(fā)明目的是為了解決以上背景技術(shù)中的技術(shù)問(wèn)題,為分布式網(wǎng)絡(luò)系統(tǒng)提供一種 分布式的信息加密解密方法。技術(shù)方案本發(fā)明為實(shí)現(xiàn)上述發(fā)明目的,采用如下技術(shù)方案—種基于身份的分布式系統(tǒng)中信息加密與解密的方法,該方法包括以下步驟步驟一,建立分布式系統(tǒng)中公用參數(shù);Step 1 隨機(jī)選取一個(gè)正整數(shù)q,分別選取兩個(gè)q階群Gp G2,以及雙線(xiàn)性映射 ^G1XG1G2,隨機(jī)選擇G1的生成元P e G1 ;Step 2 隨機(jī)選擇兩個(gè)散列函數(shù)巧{0,1廣G; , H2 =G2 — {0,1}η ;Step 3 輸出系統(tǒng)公用參數(shù);T= W,G7, G2, 4 ,Λ歷,歷}; η為密文空間的大?。徊襟E二,建立分布式系統(tǒng)中所有子系統(tǒng)的公鑰與私鑰;從0到q中隨機(jī)選取一個(gè)正整數(shù)Si,計(jì)算Si與P的乘積,記為Ppubi,即是公鑰,設(shè)子 系統(tǒng)中的某用戶(hù)身份為ID,計(jì)算ID的散列函數(shù)值Qid,計(jì)算Si與P的乘積,記為dID,則該用 戶(hù)的私鑰密鑰為dID;步驟三,對(duì)欲發(fā)送的數(shù)據(jù)進(jìn)行加密當(dāng)要向某子系統(tǒng)中身份標(biāo)識(shí)為ID的用戶(hù)發(fā)送數(shù)據(jù)M,則采用步驟二所述該用戶(hù)的 公鑰Ppubi進(jìn)行加密,得到密文;步驟四,接收者對(duì)接收的數(shù)據(jù)進(jìn)行解密對(duì)子系統(tǒng)中身份標(biāo)識(shí)為ID的接收者,采用步驟二中所述的私鑰密鑰dID進(jìn)行解密, 得到明文M。進(jìn)一步,本發(fā)明的基于身份的分布式系統(tǒng)中信息加密與解密的方法的步驟三中對(duì) 欲發(fā)送的數(shù)據(jù)進(jìn)行加密的步驟為
3
Step A 計(jì)算ID的散列函數(shù)值H1 (ID),記為Qid ;Step B 隨機(jī)從1到q正整數(shù)中選擇一個(gè)數(shù)r ;Step C 計(jì)算Qid和Ppubi的雙線(xiàn)性映射函數(shù)值,記為gID,即“ =Upubl),計(jì)算 gID的散列函數(shù)值H2(Wd),將此結(jié)果與明文M進(jìn)行與或運(yùn)算,結(jié)果記為V ;再計(jì)算r與P的 乘積,結(jié)果記為U,密文為U和V兩部分組成,記為C =〈U,V〉。進(jìn)一步,本發(fā)明的基于身份的分布式系統(tǒng)中信息加密與解密的方法的步驟四所述 接收者對(duì)接收的數(shù)據(jù)進(jìn)行解密的步驟為對(duì)身份標(biāo)識(shí)為ID的接收者,根據(jù)加密步驟,其接受到的密文為 C=<U,V >=< rP,M十孖2(g;0) >,其中t/ = rP,V = M十孖2(g;D),Step D 根據(jù)雙線(xiàn)性影射 的性質(zhì),有g(shù)r1D = KQm,Ppubl Y = KrQm,Ρ—)=e(rQID,s,P) =e(s ,Qll^rPy ;=e(dID,U)Step E 同樣,根據(jù)與或運(yùn)算的性質(zhì),有V 十 HMdID,UJ) = M 十 H2(grm)十 H1 (e(dID,U)= M 十 H2(Hd1D,U))十 /Z2 (e(dID,U))=M即得到明文Μ。有益效果本發(fā)明設(shè)計(jì)出一種適用于分布式系統(tǒng)、基于身份的加密解密方法。其特點(diǎn)是各個(gè) 子系統(tǒng)的主密鑰各不相同,可以實(shí)現(xiàn)不同子系統(tǒng)之間的傳輸信息的加密解密,同時(shí)不增加 加密解密的運(yùn)算量。本發(fā)明采用基于身份的加密解密算法,是一種橢圓曲線(xiàn)類(lèi)的加密方法,具有較高 的安全強(qiáng)度,提高了整個(gè)系統(tǒng)的安全性。
圖1是多個(gè)子系統(tǒng)組成網(wǎng)絡(luò)系統(tǒng)傳輸信息的示意圖。圖2是本發(fā)明的信息加密解密方法的流程圖。
具體實(shí)施方案下面結(jié)合附圖對(duì)技術(shù)方案的實(shí)施作進(jìn)一步的詳細(xì)描述如圖1所示,為多個(gè)子系統(tǒng)組成網(wǎng)絡(luò)系統(tǒng)傳輸信息的示意圖。此時(shí)主密鑰只有一 個(gè),全網(wǎng)共用,一旦主密鑰泄漏,全網(wǎng)的安全性受到威脅。如圖2所示,本發(fā)明的加密方案安全性是基于數(shù)學(xué)中的計(jì)算橢圓曲線(xiàn)雙線(xiàn)性映射 的復(fù)雜性,已經(jīng)證明了其數(shù)學(xué)上的安全性。對(duì)由多個(gè)子系統(tǒng)組成的分布式網(wǎng)絡(luò),在每個(gè)子系 統(tǒng)中采用基于身份的加密解密算法,從而在每個(gè)子系統(tǒng)中生成了一個(gè)主密鑰,同時(shí)也生成 每個(gè)子系統(tǒng)的公鑰,子系統(tǒng)的公鑰對(duì)全網(wǎng)是公開(kāi)的。一個(gè)發(fā)送者需要發(fā)送信息時(shí),首先通過(guò) 廣播信息獲取接收者所在子系統(tǒng)的公鑰,然后用此公鑰進(jìn)行加密,加密后的數(shù)據(jù)經(jīng)網(wǎng)絡(luò)傳輸后到達(dá)接收者的子系統(tǒng),接收者應(yīng)用自己的私鑰進(jìn)行解密,從而達(dá)到要傳輸?shù)臄?shù)據(jù)的安 全性。(1)步驟一公用參數(shù)建立Step 1 隨機(jī)選取一個(gè)素?cái)?shù)q,選取兩個(gè)q階群G1, G2,以及雙線(xiàn)性映射^rG1XG1 ->G2。隨機(jī)選擇 G1 的生成元 P e G1 ;Step 2 隨機(jī)選擇兩個(gè)散列函數(shù)Zi1 :{0,1}* —G;,H2 =G2 — {0,1}η ;Step 3 輸出系統(tǒng)公用參數(shù)雙={q, G1, G2, e, η, P, H1, H2)。(2)步驟二 子系統(tǒng)公鑰與密鑰的建立對(duì)所有的子系統(tǒng)建立它們的密鑰與公鑰,不訪(fǎng)設(shè)第i個(gè)子系統(tǒng)Oi為例從0到q中隨機(jī)選取一個(gè)正整數(shù)Si,計(jì)算Si與P的乘積,記為Ppubi,即是公鑰。設(shè) 子系統(tǒng)中的某用戶(hù)身份為ID,計(jì)算ID的散列函數(shù)值Qid,計(jì)算Si與P的乘積,記為dID,則該 用戶(hù)的私鑰為dID。(3)步驟三數(shù)據(jù)加密方法若要向子系統(tǒng)(不訪(fǎng)設(shè)為第i個(gè)子系統(tǒng)Oi為例)中身份標(biāo)識(shí)為ID的用戶(hù)發(fā)送 數(shù)據(jù)M,加密方法為Step 1 計(jì)算ID的散列函數(shù)值H1 (ID),記為Qid ;Step 2 隨機(jī)從1到q正整數(shù)中選擇一個(gè)數(shù)r ;Step 3 計(jì)算Qid和Ppubi的雙線(xiàn)性映射函數(shù)值,記為gID,即仏D = Upubi),計(jì)算 gID的散列函數(shù)值H2(^o),將此結(jié)果與明文M進(jìn)行與或運(yùn)算,結(jié)果記為V。再計(jì)算r與P的 乘積,結(jié)果記為U,密文為U和V兩部分組成,記為C =〈U,V〉。(4)步驟四數(shù)據(jù)解密方法對(duì)身份標(biāo)識(shí)為ID的接收者,根據(jù)加密步驟,其接受到的密文為 C=< U, V >=< rP,M H>,其中[/二 rP,V = M H2(grID)。Step 1 根據(jù)雙線(xiàn)性影射 的性質(zhì),有g(shù)rID = KQid,Ppubi Y = KrQ10, Ppubi)=e(rQ1D,s,P) = CisiQm,rP Y ;=e(d1D,U)Step 2 同樣,根據(jù)與或運(yùn)算的性質(zhì),有 V 十 H2(i(d1D,Uy) = M 十 H2(grID)十 H1 (e(d1D,U)= M 十 H1(^dmJJy)十 /Z2 (e(dID,U))= M即得到明文Μ。本發(fā)明中未具體說(shuō)明和解釋的內(nèi)容均為本領(lǐng)域內(nèi)的公知方法。
權(quán)利要求
一種基于身份的分布式系統(tǒng)中信息加密與解密的方法,其特征在于該方法包括以下步驟步驟一,建立分布式系統(tǒng)中公用參數(shù);Step 1隨機(jī)選取一個(gè)正整數(shù)q,分別選取兩個(gè)q階群G1、G2,以及雙線(xiàn)性映射隨機(jī)選擇G1的生成元P∈G1;Step 2隨機(jī)選擇兩個(gè)散列函數(shù)H2G2→{0,1}n;Step 3輸出系統(tǒng)公用參數(shù)n為密文空間的大??;步驟二,建立分布式系統(tǒng)中所有子系統(tǒng)的公鑰與私鑰;從0到q中隨機(jī)選取一個(gè)正整數(shù)si,計(jì)算si與P的乘積,記為Ppubi,即是公鑰,設(shè)子系統(tǒng)中的某用戶(hù)身份為ID,計(jì)算ID的散列函數(shù)值QID,計(jì)算si與P的乘積,記為dID,則該用戶(hù)的私鑰密鑰為dID;步驟三,對(duì)欲發(fā)送的數(shù)據(jù)進(jìn)行加密當(dāng)要向某子系統(tǒng)中身份標(biāo)識(shí)為ID的用戶(hù)發(fā)送數(shù)據(jù)M,則采用步驟二所述該用戶(hù)的公鑰Ppubi進(jìn)行加密,得到密文;步驟四,接收者對(duì)接收的數(shù)據(jù)進(jìn)行解密對(duì)子系統(tǒng)中身份標(biāo)識(shí)為ID的接收者,采用步驟二中所述的私鑰密鑰dID進(jìn)行解密,得到明文M。FSA00000139823700011.tif,FSA00000139823700012.tif,FSA00000139823700013.tif
2.根據(jù)權(quán)利要求1所述的基于身份的分布式系統(tǒng)中信息加密與解密的方法,其特征在 于步驟三中對(duì)欲發(fā)送的數(shù)據(jù)進(jìn)行加密的步驟為Step A 計(jì)算ID的散列函數(shù)值H1 (ID),記為Qid ; Step B 隨機(jī)從1到q正整數(shù)中選擇一個(gè)數(shù)r ;Step C 計(jì)算Qid和Ppubi的雙線(xiàn)性映射函數(shù)值,記為gID,即Ad = KQiD^Ppub,),計(jì)算gID的 散列函數(shù)值盡(gL),將此結(jié)果與明文M進(jìn)行與或運(yùn)算,結(jié)果記為V ;再計(jì)算r與P的乘積, 結(jié)果記為U,密文為U和V兩部分組成,記為C =〈U,V〉。
3.根據(jù)權(quán)利要求1所述的基于身份的分布式系統(tǒng)中信息加密與解密的方法,其特征在 于步驟四所述接收者對(duì)接收的數(shù)據(jù)進(jìn)行解密的步驟為對(duì)身份標(biāo)識(shí)為ID的接收者,根據(jù)加密步驟,其接受到的密文為 C=<U,V >=< 十i/2(g;D) >,其中 C/ = rP,廠(chǎng)=M H2(grID),Step D 根據(jù)雙線(xiàn)性影射 的性質(zhì),有 giD = e(QID, PpubiY = e{rQID,Ppubi)= e(rQ1D,SiP) =e(SiQID,rP)r ; = e{d1D,U)Step E 同樣,根據(jù)與或運(yùn)算的性質(zhì),有 V 十 H2d(dID,U)) = M 十 Hjgr10)十 /Z2 (e(dID,U) =M 十 H1(OdmiUy)十 H1 (e(dID,U)) =M即得到明文Μ。
全文摘要
本發(fā)明提供一種基于身份的分布式系統(tǒng)中信息加密與解密的方法,屬于計(jì)算機(jī)網(wǎng)絡(luò)與信息安全技術(shù)領(lǐng)域。本發(fā)明對(duì)由多個(gè)子系統(tǒng)組成的分布式網(wǎng)絡(luò),在每個(gè)子系統(tǒng)中采用基于身份的加密解密算法,從而在每個(gè)子系統(tǒng)中生成了一個(gè)主密鑰,同時(shí)也生成每個(gè)子系統(tǒng)的公鑰,子系統(tǒng)的公鑰對(duì)全網(wǎng)是公開(kāi)的。當(dāng)發(fā)送者需要發(fā)送信息時(shí),首先通過(guò)廣播信息獲取接收者所在的子系統(tǒng)的公鑰,然后用此公鑰進(jìn)行加密,加密后的數(shù)據(jù)經(jīng)網(wǎng)絡(luò)傳輸后到達(dá)接收者的子系統(tǒng),接受者應(yīng)用自己的私鑰進(jìn)行解密。本發(fā)明采用基于身份的加密解密算法,是一種橢圓曲線(xiàn)類(lèi)的加密方法,具有較高的安全強(qiáng)度,提高了整個(gè)系統(tǒng)的安全性。
文檔編號(hào)H04L9/30GK101882996SQ20101018585
公開(kāi)日2010年11月10日 申請(qǐng)日期2010年5月28日 優(yōu)先權(quán)日2010年5月28日
發(fā)明者徐勁松, 李大偉, 楊庚, 王卉, 祁正華, 陳燕俐 申請(qǐng)人:南京郵電大學(xué)