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

用于有效密鑰長度控制的方法和設(shè)備的制作方法

文檔序號:2392176閱讀:202來源:國知局
專利名稱:用于有效密鑰長度控制的方法和設(shè)備的制作方法
背景本發(fā)明涉及加密,并特別涉及提供確定在加密算法中使用的一種加密密鑰的可控制和可靠的方式之方法和設(shè)備。
在通信系統(tǒng)中,數(shù)據(jù)往往在發(fā)送之前進行編碼以保證數(shù)據(jù)的保密和完整。數(shù)據(jù)的加密產(chǎn)生在一種加密算法中。此加密算法利用其他數(shù)據(jù)、數(shù)學運算和/或其他方式操縱或編碼發(fā)送的數(shù)據(jù)以便執(zhí)行這種加密。例如,此加密算法使用被稱為一種加密密鑰——這里在其初始化程序中被稱為變量K′c的一個數(shù)據(jù)參數(shù)。此加密密鑰部分地從在此被稱為Kc的密碼密鑰或秘密密鑰中產(chǎn)生,其中Kc是公知的用于加密和解密此數(shù)據(jù)的接收設(shè)備和發(fā)送設(shè)備兩者。
政府管理用于數(shù)據(jù)的加密和傳輸——包括而不是限于加密軟件和硬件——的出口通信部分和設(shè)備。這種出口條例在各國之間并不相同。具體地說,政府管理出口設(shè)備的密碼密鑰可用的最大容許密鑰長度。發(fā)送與接收編碼數(shù)據(jù)的用戶喜歡使用可能達到最好的,那就是說,能夠最長的密碼密鑰以使安全性達到最大;然而,這些用戶受政府規(guī)定的密碼密鑰所限制。
假定現(xiàn)代技術(shù)提供密碼密鑰的密鑰長度Kc是1到160字節(jié)之間(8和1280位)。政府通常限制最大容許的密碼密鑰長度到,例如7字節(jié)(56位)。
除了此密碼密鑰長度之外,制造商還要申請出口許可證。通信設(shè)備(例如蜂窩電話機)通常使用適當出口條例下的特定設(shè)備允許的最大密碼密鑰長度。最大密碼密鑰長度應(yīng)該以這種方式存儲以便防止用戶容易地操縱此參數(shù)以確保與政府的規(guī)章一致。例如,此參數(shù)可以存儲在只讀存儲器(ROM)中。然而,從制造觀點來看,希望產(chǎn)生能在許多不同國家工作的通信設(shè)備,從而避免定制并允許用戶在不同的地理位置使用相同的通信設(shè)備。制造商希望產(chǎn)生具有遵循各種政府設(shè)定的不同規(guī)章之標準化加密方法以及提供高級別的數(shù)據(jù)保密性。
通常地,一種加密密鑰K′c連同其它公共參數(shù)諸如主時鐘一起被用于一種加密算法的初始化中。加密密鑰K′c根據(jù)以下等式使用密碼密鑰Kc和表示為RAND的一個公共隨機數(shù) (等式1)其中L是1≤L≤min{LAmax,LBmax}個字節(jié);和其中RAND[L...15]表示RAND的L至15個字節(jié)。
雖然能使用不同的加密密鑰長度,但用于示例目的,假定最大可用的加密密鑰長度字節(jié)Lmax為16字節(jié)。
正如上述等式公開的,加密密鑰K′c是通過附加上一個隨機數(shù)到密碼密鑰Kc的末端創(chuàng)建的,以完成用于此加密密鑰長度的可用字節(jié)的全部數(shù)目,即在此情況中是16字節(jié)。
參數(shù)L表示在不同的政府管理下的第一通信設(shè)備A的LAmax和第二通信設(shè)備B的LBmax之間兩個密碼密鑰長度允許的較小密碼密鑰長度。換句話說,用于計算加密密鑰K′c的密碼密鑰長度小于第一和第二通信設(shè)備A和B使用的允許的兩個密碼密鑰長度。兩個設(shè)備都可以使用具有此較小密鑰長度的加密通信,但只有一個設(shè)備可以使用具有較大密鑰長度的加密通信。
用于產(chǎn)生加密密鑰K′c之上述等式的一個問題是難以保證實施此加密算法的硬件不被超過此Lmax預(yù)置值的軟件所改變。此外,公共的RAND參數(shù)可以被誤用以便獲得完全沒有限制的有效密鑰長度,即K′c具有有效密鑰位的最大數(shù)。
一種備用方案是把為加密密鑰K′c而設(shè)的間隔降低到通信設(shè)備存儲器中的L字節(jié)以便防止軟件修改這個長度。這可以通過″屏蔽″此密碼密鑰K′c的可用字節(jié)負數(shù)L字節(jié)的全部數(shù)量和忽略RAND來解決。例如,在這種情況下,因為最大加密密鑰長度假定為16,16-L字節(jié)將被″屏蔽″,或換句話說,由零或其它的固定信息串所取代。此產(chǎn)生的加密密鑰K′c于是將包含用于第一L字節(jié)的Kc和用于后續(xù)16-L字節(jié)的零或其它固定信息串(128-8L位)。
然而,對于小的L字節(jié)值來說,這種解決方案引起至少兩個不希望的結(jié)果。第一,在加密算法的初始化期間,此加密算法混合加密密鑰K′c,并確定此加密算法起點。為了獲得一穩(wěn)固的加密,由于此16-L字節(jié)中的較大固定信息串的非隨機性(其中L較小),則應(yīng)需增大此混合周期。因為加密密鑰″隨機″部分的長度減小,此加密算法應(yīng)理想地增大混合周期或在確定加密密鑰的起點執(zhí)行的迭代次數(shù),以便補償″隨機″位的較小長度以獲得良好的加密。然而,能執(zhí)行的迭代次數(shù)受設(shè)定在發(fā)送/接收轉(zhuǎn)換中的計時要求之嚴格限制。因此,這產(chǎn)生了不牢固的加密危險。
第二,試圖解密此編碼數(shù)據(jù)或執(zhí)行″密碼攻擊″的未授權(quán)人只須考慮或解析此密碼密鑰Kc的第一個L字節(jié)。換句話說,此未授權(quán)人應(yīng)只須解析L字節(jié)中可能的數(shù)據(jù)組合而不是此較大最高可用加密密鑰長度,在這種情況下對于較小L。值來說是16字節(jié)。這產(chǎn)生了未經(jīng)授權(quán)的譯碼之危險。
多種其他文獻描述了用于操作與加密技術(shù)有關(guān)的密鑰序列技術(shù)。例如,美國專利號為5278905的McNair描述了密鑰序列發(fā)生技術(shù),該技術(shù)適合于處理器應(yīng)用,例如通過每次復(fù)用具有加密出來本身的密鑰序列的產(chǎn)生和存儲。同樣,WO 97/05720描述了用于產(chǎn)生密鑰的技術(shù),其中首先減小了加密密鑰的分布空間,然后通過增加減少的空間密鑰的分布空間來產(chǎn)生一個密鑰。接著該減少的-增加的-空間密鑰被用于加密信息。接收已知減少和擴展程序的指定分布的加密信息的人們利用創(chuàng)建密鑰方式的最大減少的工作系數(shù)將能夠解密接收的信息。然而,這兩個文獻都沒有解決上述與加密酸法中的起點數(shù)有關(guān)的問題。
概括地說,一個好的加密算法接收作為輸入的例如二進制中的28L個可能的起點之一。當L是16字節(jié)時,一個好的加密算法應(yīng)接收二進制中的2128個可能的起點。每個8L K′c的可能的組合應(yīng)定義此28L起點中的一個起點。設(shè)法解密加密數(shù)據(jù)的未授權(quán)人得試圖達至28L個可能的組合來解密。當政府規(guī)章限制此密鑰長度時沒有幾個起點是可得到的。例如,如果政府限制密碼密鑰長度到最高5個字節(jié)(40位),則一種加密算法應(yīng)具有一個降低的起點編號,也就是說240個起點。另外,如果考慮間隔或存儲所有可能的28L個起點可用的存儲器,現(xiàn)代技術(shù)通常限制可用存儲器的總數(shù)到存儲器的指定區(qū)域以便存儲減少的起點編號并不使用存儲器的剩余部分。此剩余位置是恒定的。從而,設(shè)法解密加密數(shù)據(jù)的未授權(quán)人應(yīng)只得解析240個起點并且此未授權(quán)人應(yīng)知道這種起點在存儲器中所處的位置。
概要從而為克服上述問題,本發(fā)明描述了一種方法,利用該方法,當產(chǎn)生加密密鑰K′c時,可能的起點總數(shù)被限制在28L個起點之一個子集內(nèi),其中在可用存儲器或間隔總數(shù)內(nèi)每次產(chǎn)生新的K′c時該子集是不同的。因此,每個加密密鑰K′c產(chǎn)生之后,該起點不再存儲在相同的位置。
此外,本發(fā)明提供了在通信系統(tǒng)和使用加密數(shù)據(jù)中的密碼密鑰的密碼設(shè)備中密碼密鑰Kc發(fā)生器之間的一種接口。該接口通過在加密密鑰K′c的計算中包括一個加法器或模數(shù)功能塊,提供一種限制密鑰長度的可控制和可靠的方式以便符合政府規(guī)章設(shè)定的有效密鑰長度。
此外,本發(fā)明提供了設(shè)定不同最高密碼密鑰長度的不同政府管理的兩個設(shè)備之間的通信。
此外,本發(fā)明提供了一個加密密鑰K′c,其中″隨機性″擴展到所有可能的起點組合,以便輸入到密碼設(shè)備的加密算法之內(nèi)。
本發(fā)明上述和其他優(yōu)點是以通過通信設(shè)備確定使用在加密算法中的一個加密密鑰的形式執(zhí)行的。該通信設(shè)備包含用于存儲一個或多個多項式的存儲單元;多個開關(guān)單元,每個具有第一輸入端、第二輸入端和輸出端,其中該開關(guān)單元的第一輸入端連接到存儲單元;多個延遲單元,每個具有一個輸入端和一個輸出端,其中一個延遲單元的輸出端連接到開關(guān)單元的第二輸入端;和多個加法器或模塊功能,每個具有第一輸入端,第二輸入端和一個輸出端,其中該模塊第一輸入端連接到除該延遲單元輸出端之一以外的所有輸出端,其中該模塊第二輸入端連接到除該開關(guān)單元輸出端之一以外的所有輸出端,和其中模塊輸出端連接到除該延遲單元輸入端之一以外的所有輸入端。該延遲單元可以是以一種移位寄存器的形式。
本發(fā)明上述和其他優(yōu)點也以用于計算使用在加密算法中的加密密鑰K′c(x)的一種方法的另一種形式來執(zhí)行。該方法包含步驟獲得一個密碼密鑰Kc(x);確定最高密碼密鑰長度L;確定最大可用的加密密鑰長度Lmax,獲得多項式g1(x),其中最高等級等于Lmax;獲得多項式g2(x),用于擴展所述加密密鑰K′c(x)的起點;和計算該加密密鑰K′c(x),其中K′c(x)=g2(L)(x)[Kc(x)modg1(L)(x)]。
附圖簡要描述當結(jié)合附圖考慮時,通過參考詳細說明書和權(quán)利要求可以導(dǎo)出對本發(fā)明更加完整的理解,其中

圖1示出根據(jù)本發(fā)明發(fā)送和接收數(shù)據(jù)的兩個移動通信設(shè)備;圖2示出根據(jù)本發(fā)明用于計算加密密鑰K′c的示意圖;圖3示出根據(jù)本發(fā)明按照圖2不同時段的示意圖的一個移位寄存器;和圖4示出計算根據(jù)本發(fā)明的一個加密密鑰K′c的方法的方框圖。
詳細描述在以下描述中,為解釋而不是限制目的來闡述指定細節(jié),諸如特定電路、電路元件、技術(shù)等,以便提供對本發(fā)明的完整理解。然而,對本領(lǐng)域技術(shù)人員來說明顯的是,本發(fā)明可以以不同于本發(fā)明規(guī)定細節(jié)的其他實施例實施。在其他例子中,省略了眾所周知的方法、設(shè)備和電路的詳細描述以便不模糊本發(fā)明說明書。
為確保與規(guī)定的密鑰長度一致和改善兩個設(shè)備之間數(shù)據(jù)傳輸?shù)募用埽_定或計算一個加密密鑰K′c并按以下等式輸入到根據(jù)本發(fā)明的一個加密算法中K′c(x)=g2(L)(x)[Kc(x)modg1(L)(x)] (等式2)其中L是字節(jié)中最大限制的加密密鑰長度,并且其中L是1≤L≤min{LAmax,LBmax};和deg(g1(x)+deg(g2(x)≤wL,對所有L字節(jié),其中w是字節(jié)中的一個文字長度。
用于示例目的,根據(jù)多項式表達式,把加密密鑰K′c寫在上面。
如等式2所述的,加密密鑰K′c部分基于密碼密鑰Kc。密碼密鑰Kc可以以已知或下述的任何適當方式獲得。例如,密碼密鑰Kc可以從第三設(shè)備中獨立地與設(shè)備A和設(shè)備B通信以便于加密和解密?;蛘?,設(shè)備A可以具有存儲的密碼密鑰Kc并能將它傳遞給設(shè)備B。假定當前技術(shù)允許密碼密鑰長度是在1和160字節(jié)(8和1280字節(jié))的長度。然而,出口設(shè)備A和設(shè)備B的政府已經(jīng)對該密碼密鑰的最大長度設(shè)置了某些限制。例如,假定設(shè)備A可以以最大字節(jié)(40位)的密鑰長度通信和設(shè)備B可以以最大7字節(jié)(56位)的密鑰長度通信。一旦確定設(shè)備A希望發(fā)送數(shù)據(jù)到設(shè)備B,A和設(shè)備B″商談″可以雙方通信的可接受的最大密鑰長度L。具體地說,設(shè)備A和設(shè)備B將向和從彼此發(fā)送和接收數(shù)據(jù),確定每個設(shè)備的最大密鑰長度。在此例子中,因為LAmax是40位而LBmax是56位,則設(shè)備將″同意″以該較小的密鑰長度的最大密碼密鑰長度L或40位通信。
因此,根據(jù)本發(fā)明,最大可能密鑰長度被限制在設(shè)備A和B之間最大值密鑰長度的較小值。此密鑰長度限制通過加法器或模塊功能和選擇多項式g1(x)在該加密中實施。
在一個示例實施例中,g1(x)可以是表示為以下多項式g1(x)=Σi=0wLgi(1)xi---gwL≠0]]>(等式3)其中w等于一字碼長度并且L等于密碼密鑰的多個字碼。
產(chǎn)生了該多項式g1(x),使得該多項式的最高級將是最大容許的密鑰長度位。例如如果字碼長度是8位并且字碼數(shù)目是5,那么該g1(x)多項式的最高級將是40。因此,多項式g1(x)應(yīng)當例如如下g1(x)=Ax40+Bx39+Cx38+...+Dx+E, A≠0(等式4)由于余項的最高級不能超過低于該分母的最高級,則加法器或模塊運算保證該密鑰長度是wL位。在此例子中,運算Kc(x)modg1(x)的計算會產(chǎn)生一種結(jié)果,其中可能的最高等級小于40,即39。此結(jié)果具有40位,這遵循最高容許的密鑰長度。
此多項式g1(x)可以是來自一種列表,例如,該列表識別用于一個給定L的合適的g1(x)多項式。此列表最好位于硬件中以便此可用的g1(x)多項式是安全的。此g1(x)多項式因此被保護以免受損害以便確保符合政府規(guī)章。應(yīng)承認列表是存入或獲得g1(x)多項式的一種方式,但也可以使用此技術(shù)中已知的其他方式。
如上所述,一個好的加密算法接收作為其輸入端的二進制中的28L個可能的起點之一,L是字節(jié)中可能的最大密碼密鑰長度。每個8L K′c位可能的組合應(yīng)定義此28L起點中的一個起點。設(shè)法解密加密數(shù)據(jù)的未授權(quán)人得試圖達至28L個可能的組合來解密。
例如,如果L等于16字節(jié),一個好的加密算法接收作為其輸入端二進制中的28L個可能的起點之一。每個8L K′c的可能的組合應(yīng)定義此28L起點中的一個起點。設(shè)法解密加密數(shù)據(jù)的未授權(quán)人得試圖達至2128個可能的組合來解密。
在上述具有設(shè)備A和設(shè)備B的例子中,由于較小的L值加密算法應(yīng)具有減少的起點數(shù)目,也就是說240個起點。現(xiàn)代技術(shù)通常限制可用存儲器總數(shù)(在這種情況下是240個可能的起點)到此存儲器的指定區(qū)域用于存儲此減少數(shù)目的起點并且不使用此存儲器的剩余部分。此剩余位置是恒定的。因此,在當前技術(shù)例子中,設(shè)法解密加密數(shù)據(jù)的未授權(quán)人應(yīng)只得解析240個起點并且此未授權(quán)人應(yīng)知道這種起點在存儲器中所處的位置。
換句話說,如果此加密密鑰K′c(x)唯一地從Kc(x)modg1(L)(x)中導(dǎo)致,則根據(jù)現(xiàn)代技術(shù)應(yīng)存儲在存儲器的一個專用部分。其他位應(yīng)為零或其它固定信息串。此起點于是將位于所有可能的起點的一個專用子集中。然而為提高加密的強度,具有擴展到所有可能位的起點是有益的。
漢明間距是反映在數(shù)據(jù)串中不同位的數(shù)量。在可能起點當中漢明間距越大,則加密越好。如果此起點總是位于位置的一個專用子集中,那么漢明間距和加密會是劣質(zhì)的。本發(fā)明提供了一種方法和設(shè)備,利用它們可以以其他類型的有效方式擴展起點而不是限制在位置的專用子集中,使得起點之間的最短距離變得較大。
此增大間距或″擴展″的概念在此技術(shù)中是已知的。例如糾錯編碼使用此概念用于不同的應(yīng)用程序中。因此,為在可能的比特范圍內(nèi)擴展此起點,Kc(x)modg1(L)(x)運算結(jié)果乘以一個多項式g2(x),其中示例g2(x)多項式如下g2(x)=Σj=0w(Lmax-L)gj(2)xj]]>(等式5)其中w等于一個字碼長度,L等于密碼密鑰的多個字碼和Lmax等于可用在此加密密鑰中的最大字碼數(shù)。g2(x)與Kc(x)modg1(L)(x)的結(jié)果相乘將在整個比特區(qū)域″擴展″Kc(x)modg1(L)(x)的結(jié)果。將基于現(xiàn)有技術(shù)通常已知的給定L選擇適當?shù)膅2(x)多項式。也就是說,對于不同的密鑰長度L,選擇不同的g2(x)多項式系數(shù)以便更有效地獲得希望的漢明間距。對于較小的L值,一組系數(shù)可以獲得希望的漢明間距,而對于大L值,不同組的系數(shù)將更加適合于獲得希望的漢明間距。在二進制情況下,g2(x)可以是作為BCH糾錯碼的生成多項式而查找。此g2(x)可以或者存儲在涉及給定L的適當?shù)膅2(x)多項式列表中。此列表可以是與存儲g1(x)相同的列表或另一種列表。此g2(x)多項式可以存儲在密碼設(shè)備的硬件或者軟件中。應(yīng)承認列表是存入一個檢索g2(x)多項式的一種方式,但也可以使用此技術(shù)中已知的其他方式。替換地,此g2(x)多項式可以是從其它位置的存儲器中,即,不位于此密碼設(shè)備之內(nèi)的存儲器中獲得的。
K′c(x)由此乘法產(chǎn)生。K′c(x)輸入到加密算法之內(nèi)以便用于加密數(shù)據(jù)。
圖1示出根據(jù)本發(fā)明從彼此發(fā)送和接收數(shù)據(jù)的移動通信設(shè)備100,102。設(shè)備100,102可以是任何類型的固定接線或無線電設(shè)備,包括(不限制)蜂窩式電話或計算機。
圖2表示通信設(shè)備200的更詳細示圖。
通信設(shè)備200包括一存儲單元202,多個開關(guān)單元,比如“與”門204,多個延遲單元206,和多個加法器或模數(shù)功能塊208。
存儲單元202存儲多項式g1(x)。存儲單元202可以是一檢查表或存儲信息的其它方案。存儲單元202還可以存儲多項式g2(x)。替換地,g2(x)可以存儲在通信設(shè)備200之內(nèi)的其它位置中或可以是從通信設(shè)備200外部(但能接入的)的其它位置中獲得。用于示例目的,存儲單元202這里被描述為存儲g1(x)和g2(x)兩者。函數(shù)g1(x)和g2(x)是具有例如,如上所述的確定系數(shù)的多項式。
開關(guān)單元或“與”門204每個具有第一輸入端,第二輸入端和一個輸出端。存儲單元202連接到“與”門204的第一輸入端。每個延遲單元206具有一個輸入端和一個輸出端。延遲單元206能夠被實施為移位寄存器。與門204a的一個輸出端連接到第一延遲單元206a的輸入端。模數(shù)功能塊208每個具有第一輸入端,第二輸入端和一個輸出端。剩余與門208的輸出端連接到模數(shù)功能塊208的第一輸入端。除最后的延遲單元206之外的所有延遲單元206的輸出端連接到模數(shù)功能塊208的第二輸入端。最后一個延遲單元206b的輸出端連接到與門204的第二輸入端。模數(shù)功能塊208的輸出端連接到除第一延遲單元206a之外的所有延遲單元206的輸入端。
用于示例目的,為簡明起見,假定采用二進制方案。然而,本領(lǐng)域技術(shù)人員將意識到本發(fā)明同樣適用于其他符號表述。
最初,如圖1所示的通信設(shè)備100,102將″商談″或彼此通信以便確定最大密碼密鑰長度L,此長度是兩個設(shè)備100、102能夠用來通信的長度,如上所述。例如設(shè)備100、102可以交換每個設(shè)備的相應(yīng)最大密碼密鑰長度。如果設(shè)備100、102的密碼密鑰長度L不同時,則通過選擇每個設(shè)備需要的兩個密碼密鑰長度中較小的一個來″承認″一個最大密碼密鑰長度L。
再參考圖2,與門204的第一輸入端是來自存儲器單元202的g1(x)二進制多項式。第一w(Lmax-L)系數(shù)是零而最后wL系數(shù)可以是非零數(shù)字。在這種情況下,對于所有W≠1的情況,w等于字碼長度,對于所有L≠1的情況,L等于″商談的″密碼密鑰字數(shù),對于所有Lmax≠1的情況,Lmax等于加密密鑰中最大可用字碼數(shù)目。與門204的第二輸入端被初始化為零。因此,與門204的輸出端對于相應(yīng)于第一w(Lmax-L)位的每個門是零。對于最后wL位,與門204的輸出端是g1(x)多項式對于相應(yīng)于最后wL系數(shù)的系數(shù)之功能。當g1(x)系數(shù)是0時,與門204將開啟。反之,當g1(x)系數(shù)是1時,與門204將關(guān)閉。
延遲單元206以密碼密鑰Kc(x)的系數(shù)進行初始化(如圖3的移位寄存器306a所示)。這些系數(shù)以及與門204的輸出端被輸入到異-或操作功能208之內(nèi)。(這是對于二進制情況來說的。對于非二進制來說,這些系數(shù)被輸入到另一種適當?shù)募臃ㄟ\算之內(nèi))。與門204的起始輸入是一串零和如上所述的g1(x)系數(shù)。異-或邏輯函數(shù)208的輸出端被輸入到除第一與門206a之外的所有與門206之內(nèi)。最后一個延遲單元206b的輸出端被反饋給所有與門204的第二輸入端之內(nèi)。隨著數(shù)據(jù)的移位,根據(jù)可用的循環(huán)數(shù)、時鐘脈沖或其他定時機構(gòu)接著重復(fù)此處理。
密碼密鑰Kc(x)最初位于延遲單元206(或圖3所示的一個移位寄存器)。如上所述,利用密碼密鑰Kc(x)執(zhí)行計算。密碼密鑰Kc(x)被移出延遲單元206。最后一個延遲單元206b的輸出端被輸入到與門204之內(nèi),在此位置與門204關(guān)閉。完成wL(Lmax-L)移位之后,延遲單元206包含最后波長間隔中的異-或操作Kc(x)modg1(L)(x)結(jié)果(如圖3移位寄存器306b所示)。如上所述,此計算保證密碼密鑰Kc(x)的最大密鑰長度不超過政府規(guī)定的最大允許密鑰長度。
完成wL(Lmax-L)移位之后g2(x)被輸入到與門204之內(nèi)。和g1(x)相反,g2(x)是其中第一wL(Lmax-L)系數(shù)可以是非零數(shù)而最后wL系數(shù)是零的一個多項式。對于wL更多的移位繼續(xù)進行上述處理。由異或操作產(chǎn)生的wL位現(xiàn)在已經(jīng)在區(qū)域內(nèi)″擴展″。延遲單元206(圖3中的移位寄存器210c所示)的結(jié)果是加密密鑰K′c(x),接著可以輸入到適宜的加密算法之內(nèi)用于加密數(shù)據(jù)。
用于示例目的,假定w等于8,L等于5,Lmax等于16。方便起見,再假定是二進制方案。
再參考圖2,與門204的第一輸入端是來自存儲器單元202的g1(x)二進制多項式。第一wL(Lmax-L)或88個系數(shù)是零而最后wL或40個系數(shù)可以是非零數(shù)字。與門204的第二輸入端被初始化為零。因此,與門204的輸出端對于相應(yīng)于第一88位的每個門是零。對于最后40位,與門204的輸出端是g1(x)多項式對于相應(yīng)于最后40位的每個門的系數(shù)之函數(shù)。當g1(x)系數(shù)是0時,與門將開啟。反之,當g1(x)系數(shù)是1時,與門將關(guān)閉。延遲單元206以密碼密鑰Kc(x)的系數(shù)進行初始化。這些系數(shù)和與門204的輸出被輸入到異或操作208中。(與門204的起始輸入是一串零和如上所述的g1(x)系數(shù))。異或操作208的輸出被輸入到除第一與門206a的所有與門206之內(nèi)。最后一個延遲單元206b的輸出被輸入到與門204,在此位置與門204關(guān)閉。此處理隨著數(shù)據(jù)的移位繼續(xù)進行。
密碼密鑰Kc(x)開始位于128延遲單元206內(nèi)(或在如圖3所示的128比特移位寄存器內(nèi))。如上所述,利用密碼密鑰Kc(x)執(zhí)行計算。密碼密鑰Kc(x)移出延遲單元206。最后一個延遲單元206b的輸出被輸入到與門204內(nèi)。完成128-40或88移位之后,延遲單元206包含在最后40個間隔內(nèi)的異或操作的結(jié)果Kc(x)modg1(L)(x)。
g2(x)系數(shù)接著被輸入到與門204。對于多于40或總共128個的移位繼續(xù)進行上述處理。從異或操作中產(chǎn)生的40位現(xiàn)在已經(jīng)在區(qū)域中“擴展”。延遲單元206(或如圖3所示的移位寄存器)的結(jié)果是加密密鑰K’c(x),該結(jié)果接著輸入到適當?shù)募用芩惴ㄖ幸詫?shù)據(jù)加密。
圖4表示用于計算加密密鑰K’c以便根據(jù)本發(fā)明加密數(shù)據(jù)的方法400的方框圖。方法400包括獲得密碼密鑰Kc(x)402的步驟。如上所述,密碼密鑰Kc(x)可以以任何已知的多種方法獲得。下一步,執(zhí)行確定最大密碼密鑰長度L404的步驟。此最大密鑰長度通常是字節(jié)中的一個值。希望通信的設(shè)備將交換信息或“商談”每個設(shè)備能夠通信的有關(guān)最大密碼密鑰長度。通常,最大密鑰長度將調(diào)整到設(shè)備可以通信的最大商談的可用密鑰長度。接著根據(jù)步驟406獲得多項式g1(x)。然后根據(jù)函數(shù)Kc(x)modg1(L)(x)以密碼密鑰Kc(x)對多項式g1(x)進行算術(shù)地操作以便獲得第一結(jié)果。接著根據(jù)步驟408獲得多項式g2(x)。
步驟408擴展其起點,或增加加密密鑰K′c(x)的漢明間距。根據(jù)步驟404的結(jié)果選擇一個適當?shù)亩囗検絞2(x)。最后,根據(jù)步驟410可以計算加密密鑰K′c(x),其中K′c(x)=g2(x)[Kc(x)modg1(L)(x)]。
已經(jīng)參考優(yōu)選實施例描述了本發(fā)明。然而,本領(lǐng)域技術(shù)人員將承認可以進行改變和修改而不脫離本發(fā)明的范圍。例如雖然本發(fā)明所述的方法和設(shè)備其最大長度L為5字節(jié),和最大可用的加密密鑰長度Lmax是16字節(jié),但應(yīng)意識到本發(fā)明沒有如此限于這些長度。此外,還將意識到收/發(fā)數(shù)據(jù)不局限于任何特定數(shù)據(jù)類型。它可以構(gòu)成語音,書寫的或其他數(shù)據(jù)??梢允嵌M制,ASCII或任何其他形式的數(shù)據(jù)。此外,這種數(shù)據(jù)可以通過目前已知的任何媒體諸如導(dǎo)線或無線電波或稍后發(fā)現(xiàn)的任何媒體進行發(fā)送。
權(quán)利要求
1.用于計算加密密鑰K′c(x)以便加密數(shù)據(jù)的方法,包含以下步驟獲得密碼密鑰Kc(x);確定密碼密鑰的最大長度L;確定可用的加密密鑰的最大長度Lmax;獲得多項式g1(x);根據(jù)L獲得多項式g2(x),用于擴展所述加密密鑰K′c(x)的起點;以及計算所述加密密鑰K′c(x),其中K′c(x)=g2(L)(x)[Kc(x)mod g1(L)(x)]。
2.根據(jù)權(quán)利要求1所述的方法,其中g(shù)1(x)=Σi=0wLgi(1)xi,swL≠0]]>其中所述多項式g1(x)的最高級等于wL。
3.根據(jù)權(quán)利要求2所述的方法,其中g(shù)2(x)=Σj=0w(Lmax-L)gj(2)xj]]>
4.根據(jù)權(quán)利要求3所述的方法,其中g(shù)1(x)的前w(Lmax-L)個系數(shù)等于一個固定的串。
5.根據(jù)權(quán)利要求4所述的方法,其中g(shù)2(x)的最后wL個系數(shù)等于一個固定的串。
6.根據(jù)權(quán)利要求1所述的方法,其中利用多個與門、多個延遲單元和多個加法器功能塊執(zhí)行所述計算步驟,其中每個與門具有第一輸入端、第二輸入端和輸出端。
7.根據(jù)權(quán)利要求6所述的方法,所述方法還包含步驟利用所述密碼密鑰Kc(x)初始化所述延遲單元;將所述與門的所述第一輸入端初始化為所述g1(x)多項式系數(shù);和將所述與門的所述第二輸入端初始化為零。
8.根據(jù)權(quán)利要求6所述的方法,其中所述延遲單元是移位寄存器。
9.用于在兩個通信設(shè)備之間傳遞加密的數(shù)據(jù)的系統(tǒng),包含第一通信設(shè)備,具有第一密碼密鑰長度LAmax,和第二通信設(shè)備,具有第二密碼密鑰長度LBmax,和用于確定密碼密鑰的最大長度L的裝置,其中1≤L≤min{LAmax,LBmax};所述第一設(shè)備包含用于獲得多項式g1(x)和g2(x)的裝置;用于獲得密碼函數(shù)Kc(x)的裝置;和用于計算加密密鑰K′c(x)的裝置,其中K′c(x)=g2(L)(x)[Kc(x) mod g1(L)(x)]。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其中所述用于計算所述加密密鑰K′c(x)的裝置包含多個與門,每個具有第一輸入端、第二輸入端和輸出端,其中所述門的第一輸入端連接到所述存儲單元;多個延遲單元,每個具有輸入端和輸出端,其中一個延遲單元的所述輸出端連接到所述門的第二輸入端;和多個加法器功能塊,每個具有第一輸入端、第二輸入端和輸出端,其中除一個所述延遲單元輸出端之外,其余延遲單元輸出端都連接到多個加法器功能塊之一的第一輸入端,其中除一個所述門輸出端之外,其余門輸出端都連接到多個加法器功能塊之一的第二輸入端,并且其中除一個所述延遲單元輸入端之外,其余延遲單元輸入端都連接到多個加法器功能塊之一的輸出端。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述延遲單元最初被載以所述密碼密鑰Kc(x)。
12.根據(jù)權(quán)利要求9所述的系統(tǒng),其中所述用于獲得多項式g1(x)和g2(x)的裝置包括從包含在所述第一通信設(shè)備之內(nèi)的存儲單元中檢索所述多項式。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其中g(shù)1(x)=Σi=0wLgi(1)xi,swL≠0]]>
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其中g(shù)2(x)=Σj=0w(Lmax-L)gj(2)xj]]>
15.根據(jù)權(quán)利要求14所述的系統(tǒng),其中在w(Lmax-L)移位之后,所述延遲單元的最后wL位存儲Kc(x)mod g1(x)的結(jié)果。
16.根據(jù)權(quán)利要求15所述的系統(tǒng),其中在附加wL移位之后,所述延遲單元存儲所述加密密鑰K′c(x)。
17.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述延遲單元是移位寄存器。
全文摘要
本發(fā)明包括用于計算加密密鑰K’c的方法和設(shè)備,以便用于加密算法的初始化。本發(fā)明公開了計算加密密鑰K’c(x)的方法獲得密碼密鑰Kc(x),根據(jù)兩個希望通信的設(shè)備的要求確定最大密碼密鑰長度L,并確定最大可用加密密鑰長度Lmax。然后通過與多項式g
文檔編號G09C1/00GK1558592SQ200410049318
公開日2004年12月29日 申請日期2000年4月11日 優(yōu)先權(quán)日1999年4月26日
發(fā)明者J·珀松, B·斯梅茨, M·漢松, J 珀松, 反 申請人:艾利森電話股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
凤凰县| 巴彦县| 微博| 酉阳| 龙门县| 阿拉善左旗| 临朐县| 神农架林区| 新津县| 堆龙德庆县| 兴文县| 大港区| 兴安盟| 嘉义市| 都匀市| 大田县| 鄂伦春自治旗| 麻江县| 光泽县| 武山县| 龙南县| 道孚县| 运城市| 高邮市| 亚东县| 伊金霍洛旗| 会理县| 西宁市| 马山县| 尼木县| 鄂托克前旗| 屏东市| 溆浦县| 天台县| 山丹县| 同德县| 大英县| 平塘县| 潍坊市| 阳新县| 祁门县|