欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于密鑰加密通信系統(tǒng)中的加密密鑰交換方法

文檔序號(hào):7732448閱讀:234來源:國(guó)知局
專利名稱:用于密鑰加密通信系統(tǒng)中的加密密鑰交換方法
技術(shù)領(lǐng)域
本發(fā)明屬于通信安全領(lǐng)域,具體地講,涉及一種用于密鑰加密通信系統(tǒng)中的加密密鑰交換方法。
背景技術(shù)
隨著通信技術(shù)的發(fā)展,通信安全變得越來越重要。目前流行的兩種數(shù)據(jù)加密體系為對(duì)稱密鑰加密法和非對(duì)稱密鑰加密法。常用的對(duì)稱密鑰加密法如DES、AES。非對(duì)稱密鑰加密法又稱為公開密鑰方法,常用的非對(duì)稱密鑰加密法如RSA,ECC等。在使用對(duì)稱密鑰加密算法進(jìn)行通信的對(duì)稱密鑰加密通信系統(tǒng)中,通信雙方需要約定一個(gè)密鑰,其相對(duì)比較固定,并且稱密鑰加密算法是公開的,很容易受到攻擊,并且時(shí)間長(zhǎng)了該固定密鑰容易被攻擊方猜到導(dǎo)致整個(gè)系統(tǒng)崩潰。
因此,需要一種不依賴于固定密鑰的加密方法,其密鑰是隨機(jī)的并且可以公開一部分。第一個(gè)可實(shí)施的公開密鑰算法是RSA算法。該算法是基于數(shù)學(xué)NP問題(具體為數(shù)學(xué)中大數(shù)分解困難)的設(shè)定。但該算法有一個(gè)很大的缺陷,即,隨著技術(shù)進(jìn)步,大數(shù)分解越來越容易,為了提高破解難度不得不提高數(shù)學(xué)運(yùn)算的位數(shù),導(dǎo)致硬件成本越來越高,并且硬件壽命變短。此外,當(dāng)前也出現(xiàn)了一些RSA算法的破解方法。例如,在2010年3月10日的歐洲設(shè)計(jì)、自動(dòng)化和測(cè)試會(huì)議上的題為“Fault-based attack of RSA authentication”的論文公開了一種RSA算法的破解方法。另一取代RSA算法并能夠在通信中公開傳遞密鑰的方法是由戴費(fèi)和海爾曼提出的密鑰交換算法(簡(jiǎn)稱為DH密鑰交換體制),它不是加密算法,但可以在網(wǎng)絡(luò)中公開傳輸密鑰。這種密鑰交換技術(shù)的目的在于使得兩個(gè)用戶安全地交換一個(gè)密鑰以便用于以后的報(bào)文加密。以上提到的各種方法中都是基于數(shù)學(xué)難題來實(shí)現(xiàn)的,都是用了大數(shù)運(yùn)算。DH密鑰交換體制雖然目前來看是比較安全的,但其運(yùn)算量非常大。比如DH算法中,為了實(shí)現(xiàn)一個(gè)30位二進(jìn)制數(shù)的密鑰交換,可能需要計(jì)算2147483647(32位二進(jìn)制數(shù))的9223372036854775807 (64位二進(jìn)制數(shù))次方模除1073741824 (30位二進(jìn)制數(shù)),這樣的計(jì)算一般只能在大型機(jī)和小型機(jī)上實(shí)現(xiàn)。而攻擊方要破解這30位的密鑰如果用窮舉法暴力破解,以當(dāng)前的普通PC機(jī)幾分鐘內(nèi)可以完成。如果把密鑰長(zhǎng)度提高到64位,其計(jì)算量將是相當(dāng)大的。雖然現(xiàn)在有很多DH方法的優(yōu)化方法,使得可以在PC機(jī)上實(shí)現(xiàn)DH交換,但是運(yùn)算量也是非??捎^的。對(duì)于密鑰交換方法也有很多其它的方法(比如基于線性不定方程求解困難而設(shè)置的密鑰交換體制),雖然運(yùn)算量會(huì)比DH的運(yùn)算量小幾個(gè)數(shù)量級(jí),但是同樣都是基于數(shù)學(xué)NP問題的設(shè)定,其共同特點(diǎn)都是數(shù)學(xué)運(yùn)算量特別大,解該數(shù)學(xué)問題很困難。但是數(shù)學(xué)NP問題不是無解的問題,隨著技術(shù)進(jìn)步和研究的不斷深入,可能會(huì)找到一個(gè)比較有效的數(shù)學(xué)方法來解該NP問題,屆時(shí)這些方法將會(huì)失效。
因此,需要一種運(yùn)算量較小并且不易破解的密鑰交換方法。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種用于在使用密鑰進(jìn)行加密通信的通信系統(tǒng)中的密鑰交換方法,該密鑰交換方法僅需要較少的運(yùn)算量即可實(shí)現(xiàn)密鑰的交換,并且不易被破解。本發(fā)明的一方面提供一種用于密鑰加密通信系統(tǒng)中的加密密鑰交換方法,其特征在于包括第一通信節(jié)點(diǎn)生成隨機(jī)的矩陣A,計(jì)算矩陣A與方陣M的乘積,并將矩陣A與方陣M的乘積發(fā)送給第二通信節(jié)點(diǎn),其中,方陣M是由第一通信節(jié)點(diǎn)與第二通信節(jié)點(diǎn)預(yù)先確定的奇異方陣;第二通信節(jié)點(diǎn)生成隨機(jī)的矩陣B,計(jì)算方陣M與矩陣B的乘積,并將方陣M與矩陣B的乘積發(fā)送給第一通信節(jié)點(diǎn);第一通信節(jié)點(diǎn)計(jì)算矩陣A與從第二通信節(jié)點(diǎn)接收的方陣M與矩陣B的乘積的乘積,以生成加密密鑰;第二通信節(jié)點(diǎn)計(jì)算從第一通信節(jié)點(diǎn)接收的·矩陣A與方陣M的乘積與矩陣B的乘積,以生成加密密鑰,其中,方陣M的階數(shù)與矩陣A的列數(shù)相同,方陣M的階數(shù)與矩陣B的行數(shù)相同,矩陣A的行數(shù)與矩陣B的列數(shù)相同。優(yōu)選地,第一通信節(jié)點(diǎn)可將用于標(biāo)識(shí)方陣M的編號(hào)發(fā)送給第二通信節(jié)點(diǎn),第二通信節(jié)點(diǎn)基于所述編號(hào)從第一通信節(jié)點(diǎn)和第二通信節(jié)點(diǎn)預(yù)先確定的多個(gè)奇異方陣中選擇方陣M。優(yōu)選地,方陣M可以以無法從外部被訪問的形式被存儲(chǔ)在第一通信節(jié)點(diǎn)和第二通信節(jié)點(diǎn)中。優(yōu)選地,方陣M可被存儲(chǔ)在第一安全設(shè)備和第二安全設(shè)備中,第一安全設(shè)備僅能由第一通信節(jié)點(diǎn)訪問,第二安全設(shè)備僅能由第二通信節(jié)點(diǎn)訪問。優(yōu)選地,可以以明文或密文方式發(fā)送矩陣A與方陣M的乘積、方陣M與矩陣B的乘積。優(yōu)選地,方陣M的階數(shù)可大于矩陣A的行數(shù)。優(yōu)選地,方陣M的階數(shù)可大于等于3。根據(jù)本發(fā)明的密鑰交換方法,使用了簡(jiǎn)單的線性代數(shù)計(jì)算而非NP難題,極大了降低了計(jì)算量,并提高了密鑰交換速度。同時(shí),本發(fā)明的密鑰交換方法基于線性代數(shù)中“奇異矩陣方程的無確定解”的定理而設(shè)計(jì),因此攻擊者無法找到有效的數(shù)學(xué)解法,只能進(jìn)行窮舉破解,提高了加密安全性。將在接下來的描述中部分闡述本發(fā)明另外的方面和/或優(yōu)點(diǎn),還有一部分通過描述將是清楚的,或者可以經(jīng)過本發(fā)明的實(shí)施而得知。


圖I示出根據(jù)本發(fā)明的示例性實(shí)施例的用于對(duì)稱密鑰通信系統(tǒng)中的密鑰交換方法的流程圖。
具體實(shí)施例方式現(xiàn)在,將參照附圖更充分地描述不同的示例實(shí)施例,其中,一些示例性實(shí)施例在附圖中示出。圖I示出根據(jù)本發(fā)明的示例性實(shí)施例的用于對(duì)稱密鑰系統(tǒng)中的密鑰交換方法的流程圖。在圖I示出的對(duì)稱密鑰通信系統(tǒng)中,存在作為通信雙方的第一通信節(jié)點(diǎn)100和第二通信節(jié)點(diǎn)200。第一通信節(jié)點(diǎn)100和第二通信節(jié)點(diǎn)200可以是各種通信設(shè)備。在步驟101,第一通信節(jié)點(diǎn)100生成隨機(jī)的矩陣A,計(jì)算矩陣A與N階方陣M的乘積Ca = AXM,并將矩陣Ca發(fā)送給第二通信節(jié)點(diǎn)200。這里,N階方陣M是由第一通信節(jié)點(diǎn)100與第二通信節(jié)點(diǎn)200預(yù)先確定的奇異矩陣。在步驟102,第二通信節(jié)點(diǎn)200生成隨機(jī)的矩陣B,計(jì)算N階方陣M與矩陣B的乘積Cb = MXB,并將矩陣Cb發(fā)送給第一通信節(jié)點(diǎn)100。這里,N階方陣M是由第一通信節(jié)點(diǎn)100與第二通信節(jié)點(diǎn)200預(yù)先確定的奇異矩陣。在步驟103,第一通信節(jié)點(diǎn)100使用從第二通信節(jié)點(diǎn)200接收的矩陣CB,計(jì)算Ka =
axcb。 在步驟104,第二通信節(jié)點(diǎn)200使用從第一通信節(jié)點(diǎn)100接收的矩陣CA,計(jì)算Kb =
caxb。這里,方陣M的階數(shù)N與矩陣A的列數(shù)相同,方陣M的階數(shù)N與矩陣B的行數(shù)相同,矩陣A的行數(shù)與矩陣B的列數(shù)相同。根據(jù)線性代數(shù)的知識(shí)可知,Ka = KB。這樣,第一通信節(jié)點(diǎn)100和第二通信節(jié)點(diǎn)200獲得了相同的加密密鑰,從而實(shí)現(xiàn)了密鑰的交換。優(yōu)選地,方陣M的階數(shù)大于矩陣A的行數(shù)。與方陣M的階數(shù)等于矩陣A的行數(shù)的情況相比,當(dāng)方陣M的階數(shù)大于矩陣A的行數(shù)時(shí),在不影響破解難度的同時(shí)降低了信息傳輸量。此外,應(yīng)該理解,方陣M的階數(shù)小于等于矩陣A的行數(shù)的情況也是可行的。隨后,可使用獲得的加密密鑰進(jìn)行第一通信節(jié)點(diǎn)100和第二通信節(jié)點(diǎn)200之間的數(shù)據(jù)通信。在步驟105,第一通信節(jié)點(diǎn)100使用在步驟103生成的密鑰Ka對(duì)將被發(fā)送到第二通信節(jié)點(diǎn)200的內(nèi)容進(jìn)行加密,并將加密后的內(nèi)容發(fā)送到第二通信節(jié)點(diǎn)200。在步驟106,第二通信節(jié)點(diǎn)200從第一通信節(jié)點(diǎn)100接收所述加密的內(nèi)容,并使用在步驟104生成的密鑰Kb對(duì)所述加密的內(nèi)容進(jìn)行解密。同理,第一通信節(jié)點(diǎn)100可使用密鑰Ka對(duì)第二通信節(jié)點(diǎn)200使用密鑰Kb加密的內(nèi)容進(jìn)行解密。安全性分析在開始進(jìn)行數(shù)據(jù)通信之前,第一通信節(jié)點(diǎn)100和第二通信節(jié)點(diǎn)200相互交換了各自生成的矩陣,并且將生成的矩陣Ca和Cb進(jìn)行明文傳輸。這樣,矩陣Ca和Cb可能被攻擊者截獲,并且第一通信節(jié)點(diǎn)100和第二通信節(jié)點(diǎn)200約定的方陣M也有可能被攻擊者通過其它方法獲得。此時(shí),攻擊者為了獲取用作加密密鑰的KA、Kb,必須要得到矩陣A和B,而為了得到矩陣A和B,則需要解以下兩個(gè)方程Ca = AXM ^A = CaXM-1 (I)Cb = MX B — B = IT1X Cb (2)由于約定的方陣M是個(gè)奇異矩陣,因此方陣M的行列式|M| = O。矩陣存在逆矩陣的必要條件是行列式不等于零。因此,方陣M不存在逆矩陣M'因此,根據(jù)上面的方程(I)和(2),通過數(shù)學(xué)的方法由CA、CB、M解出A和B是不可能的。
為了對(duì)方程(I)和(2)求解,只能使用窮舉的方法。但是如果矩陣的階數(shù)足夠大,則基本上無法通過窮舉的方式進(jìn)行求解。計(jì)算量分析對(duì)于矩陣方程C = AXB,方陣C的計(jì)算方法為
YlCij = Yj a,kbkj
k = \由此可見,如果矩陣A和B的元素均為整數(shù),則運(yùn)算僅限于整數(shù)乘法和加法的運(yùn) 算,沒有乘方和取模運(yùn)算。如果矩陣A和B的每一個(gè)元素取值范圍比較小,并且η適當(dāng)?shù)販p少,則cu的值也不會(huì)很大,從而避免了大整數(shù)運(yùn)算。例如,A和B的每一個(gè)元素取值范圍為0 16777215 (24位二進(jìn)制整數(shù)最大值),η取12,M為12階魔方陣,則K = Ka = Kb = AXMXB中K的每一個(gè)元素最大值不超過264,即不超過8字節(jié)整數(shù)的最大值。當(dāng)前的32位普通PC機(jī)都支持8字節(jié)整數(shù)運(yùn)算,可見這種方法的運(yùn)算量比DH和RSA算法的計(jì)算量小很多個(gè)數(shù)量級(jí),速度非常之快。破解難度分析從上面的描述來看,矩陣方程(I)和(2)不能用數(shù)學(xué)方法求解,如果通過計(jì)算機(jī)暴力破解,方法如下如果N = 2,設(shè) A= [A11 A12 ;A21 A22] M = [M11 M12 ;M21 M22],矩陣方程 Ca = AXM 等價(jià)于方程組(I)Cau = ΑηΧΜη+Α12ΧΜ21Ca22 — A11X Μ21+Α12 X M22
(2) CA21 = A21X M1 !+A22 X M12CA22 — A21X M21+A22 X M22在上述方程組中,已知Ca和1求A,實(shí)際上方程組(I)可以求出A11和A12,方程組
(2)可以求出A21和A22,然后把它們組合起來便可以得到所有A的解。用窮舉法求解方程組
(I)只需要枚舉所有A11和A12的取值,不需要枚舉A所有的元素,因此破解難度取決于N和A所有的元素的取值范圍。如果N= 12,矩陣A、B的每一個(gè)元素取值為3個(gè)字節(jié)的整數(shù),則相當(dāng)于密鑰長(zhǎng)度為12X3 = 36字節(jié),288位。這表明,攻擊者至少要解2288個(gè)方程才能獲得第一組Au的所有可能的解,要獲得所有Au的解則需要解12 X 2288個(gè)方程。當(dāng)所有的方程解完以后可以得到Ca的解的個(gè)數(shù)可能有I億個(gè),而在這I億個(gè)解當(dāng)中只有一個(gè)是正確的。攻擊者還需要再驗(yàn)證I億次才能得到正確的解。一般情況下密鑰長(zhǎng)度為128位已經(jīng)可以抵擋住當(dāng)前的計(jì)算機(jī)的暴力破解。2128 =3. 4e38,而當(dāng)前計(jì)算機(jī)最快的運(yùn)算能力只有每秒2. 5el6次運(yùn)算,若每次運(yùn)算就能解一個(gè)12元I次方程組,則需要I. 36e22秒。而宇宙的年齡只有9. 2el8秒。優(yōu)選地,方陣M的階數(shù)N大于等于3。在另一實(shí)施例中,第一通信節(jié)點(diǎn)100和第二通信節(jié)點(diǎn)200預(yù)先確定多個(gè)奇異方陣。第一通信節(jié)點(diǎn)100從所述多個(gè)奇異方陣中選擇一個(gè)奇異方陣M來計(jì)算CA,并且將奇異方陣M的編號(hào)連同Ca發(fā)送給第二通信節(jié)點(diǎn)200。第二通信節(jié)點(diǎn)200基于所述編號(hào)從所述多個(gè)奇異方陣中選擇出奇異方陣M來計(jì)算CB。這樣,通過設(shè)置多個(gè)奇異方陣,可以進(jìn)一步增強(qiáng)通信的安全性。
在本發(fā)明中,奇異方陣可被保存在通信節(jié)點(diǎn)中,從通信節(jié)點(diǎn)的外部無法訪問奇異方陣。例如,奇異方陣可以以配置文件的形式加載或直接編譯到在通信節(jié)點(diǎn)運(yùn)行的通信程序中。此外,也可將奇異方陣保存在單獨(dú)一個(gè)安全設(shè)備中。該安全設(shè)備可以設(shè)置在每個(gè)通信節(jié)點(diǎn)中,或者被配置為獨(dú)立于通信節(jié)點(diǎn)并僅能由與之對(duì)應(yīng)的通信節(jié)點(diǎn)訪問。此外,計(jì)算密鑰K的處理也可由該安全設(shè)備執(zhí)行,通信節(jié)點(diǎn)只需將隨機(jī)的N階矩陣A或B (以及奇異方陣的編號(hào))輸入到該安全設(shè)備,由該安全設(shè)備(根據(jù)編號(hào)確定使用的奇異方陣M并)計(jì)算密鑰K,并輸出給通信節(jié)點(diǎn)。 在前面的實(shí)施例中,將生成的矩陣Ca和Cb進(jìn)行明文傳輸即可實(shí)現(xiàn)難以被破解的效果。然而,應(yīng)該理解,也可以對(duì)矩陣Ca和/或Cb進(jìn)行加密之后進(jìn)行傳輸。根據(jù)本發(fā)明的密鑰交換方法,使用了簡(jiǎn)單的線性代數(shù)計(jì)算而非NP難題,極大了降 低了計(jì)算量,并提高了密鑰交換速度。同時(shí),本發(fā)明的密鑰交換方法基于線性代數(shù)定理,而不是NP難題,因此攻擊者無法找到有效的數(shù)學(xué)解法,只能進(jìn)行窮舉破解,提高了加密安全性。盡管已經(jīng)參照其示例性實(shí)施例具體顯示和描述了本發(fā)明,但是本領(lǐng)域的技術(shù)人員應(yīng)該理解,在不脫離權(quán)利要求所限定的本發(fā)明的精神和范圍的情況下,以上的實(shí)施方式僅用于說明本發(fā)明的技術(shù)方案而非限制性的,本領(lǐng)域的技術(shù)人員可根據(jù)本發(fā)明做出各種相應(yīng)的改變、或選取以上的實(shí)施例的組合。這些改變都應(yīng)被認(rèn)為屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種用于密鑰加密通信系統(tǒng)中的加密密鑰交換方法,其特征在于包括 第一通信節(jié)點(diǎn)生成隨機(jī)的矩陣A,計(jì)算矩陣A與方陣M的乘積,并將矩陣A與方陣M的乘積發(fā)送給第二通信節(jié)點(diǎn),其中,方陣M是由第一通信節(jié)點(diǎn)與第二通信節(jié)點(diǎn)預(yù)先確定的奇異方陣; 第二通信節(jié)點(diǎn)生成隨機(jī)的矩陣B,計(jì)算方陣M與矩陣B的乘積,并將方陣M與矩陣B的乘積發(fā)送給第一通信節(jié)點(diǎn); 第一通信節(jié)點(diǎn)計(jì)算矩陣A與從第二通信節(jié)點(diǎn)接收的方陣M與矩陣B的乘積的乘積,以生成加密密鑰; 第二通信節(jié)點(diǎn)計(jì)算從第一通信節(jié)點(diǎn)接收的矩陣A與方陣M的乘積與矩陣B的乘積,以生成加密密鑰, 其中,方陣M的階數(shù)與矩陣A的列數(shù)相同,方陣M的階數(shù)與矩陣B的行數(shù)相同,矩陣A的行數(shù)與矩陣B的列數(shù)相同。
2.根據(jù)權(quán)利要求I所述的加密密鑰交換方法,其特征在于第一通信節(jié)點(diǎn)將用于標(biāo)識(shí)方陣M的編號(hào)發(fā)送給第二通信節(jié)點(diǎn),第二通信節(jié)點(diǎn)基于所述編號(hào)從第一通信節(jié)點(diǎn)和第二通信節(jié)點(diǎn)預(yù)先確定的多個(gè)奇異方陣中選擇方陣M。
3.根據(jù)權(quán)利要求I所述的加密密鑰交換方法,其特征在于方陣M以無法從外部被訪問的形式被存儲(chǔ)在第一通信節(jié)點(diǎn)和第二通信節(jié)點(diǎn)中。
4.根據(jù)權(quán)利要求I所述的加密密鑰交換方法,其特征在于方陣M被存儲(chǔ)在第一安全設(shè)備和第二安全設(shè)備中,第一安全設(shè)備僅能由第一通信節(jié)點(diǎn)訪問,第二安全設(shè)備僅能由第二通信節(jié)點(diǎn)訪問。
5.根據(jù)權(quán)利要求I所述的加密密鑰交換方法,其特征在于以明文或密文方式發(fā)送矩陣A與方陣M的乘積、方陣M與矩陣B的乘積。
6.根據(jù)權(quán)利要求I所述的加密密鑰交換方法,其特征在于方陣M的階數(shù)大于矩陣A的行數(shù)。
7.根據(jù)權(quán)利要求6所述的加密密鑰交換方法,其特征在于方陣M的階數(shù)大于等于3。
全文摘要
一種用于密鑰加密通信系統(tǒng)中的加密密鑰交換方法,包括第一通信節(jié)點(diǎn)生成隨機(jī)的矩陣A,計(jì)算矩陣A與方陣M的乘積,并將矩陣A與方陣M的乘積發(fā)送給第二通信節(jié)點(diǎn),其中,方陣M是由第一通信節(jié)點(diǎn)與第二通信節(jié)點(diǎn)預(yù)先確定的奇異方陣;第二通信節(jié)點(diǎn)生成隨機(jī)的矩陣B,計(jì)算方陣M與矩陣B的乘積,并將方陣M與矩陣B的乘積發(fā)送給第一通信節(jié)點(diǎn);第一通信節(jié)點(diǎn)計(jì)算矩陣A與從第二通信節(jié)點(diǎn)接收的方陣M與矩陣B的乘積的乘積,以生成加密密鑰;第二通信節(jié)點(diǎn)計(jì)算從第一通信節(jié)點(diǎn)接收的矩陣A與方陣M的乘積與矩陣B的乘積,以生成加密密鑰,其中,方陣M的階數(shù)與矩陣A的列數(shù)相同,方陣M的階數(shù)與矩陣B的行數(shù)相同,矩陣的行數(shù)與矩陣B的列數(shù)相同。
文檔編號(hào)H04L9/08GK102904714SQ201110208459
公開日2013年1月30日 申請(qǐng)日期2011年7月25日 優(yōu)先權(quán)日2011年7月25日
發(fā)明者王政, 吳恒志, 鄧忠平 申請(qǐng)人:深圳市金溢科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
扎鲁特旗| 霍林郭勒市| 建始县| 荆州市| 临江市| 竹山县| 乌兰县| 吉林省| 通辽市| 磴口县| 民勤县| 琼结县| 陆良县| 东宁县| 宽城| 咸丰县| 潮州市| 高碑店市| 留坝县| 景宁| 阿克| 伊春市| 霍山县| 兰溪市| 农安县| 江都市| 安溪县| 磐安县| 什邡市| 绍兴县| 梓潼县| 双鸭山市| 金山区| 古蔺县| 扎鲁特旗| 商水县| 修武县| 光山县| 哈巴河县| 和龙市| 开化县|