專利名稱:加密與鑒別的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種至少在兩個(gè)裝置之間通過(guò)不安全的通信信道安全加密傳送或鑒別的方法和系統(tǒng)。
背景技術(shù):
通常它很難通過(guò)不安全的通信信道例如公共電話線、數(shù)據(jù)網(wǎng)絡(luò)、無(wú)線電傳送操作等實(shí)現(xiàn)安全加密傳送。傳統(tǒng)的加密算法要求將以專用密鑰或公用密鑰形式的密鑰在裝置之間發(fā)送。然而這種密鑰傳送帶來(lái)幾個(gè)實(shí)際問(wèn)題??梢詫⒃摲N密鑰在獨(dú)立的安全信道上發(fā)送,但是這種解決方法是麻煩的、昂貴的和費(fèi)時(shí)的。或者,可以將該種密鑰通過(guò)不安全的信道發(fā)送,隨后加密消息在不安全的信道上發(fā)送。但是,這個(gè)過(guò)程涉及安全風(fēng)險(xiǎn),并且當(dāng)帶有通常所說(shuō)的公共密鑰的加密系統(tǒng)例如RSA系統(tǒng)被使用時(shí),為了確保加密傳送是充分安全的,需要更大的和更復(fù)雜密鑰的密鑰裝置的傳送以及加密的算法,其必然牽涉到增加的麻煩和費(fèi)用。
為了通過(guò)不安全的通信信道提供裝置的安全驗(yàn)證(通常所說(shuō)的鑒別),會(huì)碰到同樣的問(wèn)題。這種鑒別是以基于特有密鑰的裝置間的數(shù)據(jù)傳送為基礎(chǔ)。例如,該密鑰可以根據(jù)發(fā)送或接收的信息用來(lái)加密檢查和,并且在這種情況下就裝置間密鑰的傳送而論其面臨著與在其他加密的傳送中那些發(fā)現(xiàn)的相同的問(wèn)題。
發(fā)明目的因此,本發(fā)明的一個(gè)目的是提供一種通過(guò)一個(gè)不安全的通信信道加密傳送和鑒別的方法和系統(tǒng),完全或至少部分地解決在現(xiàn)有技術(shù)中發(fā)現(xiàn)的上述問(wèn)題。
這個(gè)目的通過(guò)所附權(quán)利要求中所限定的一種方法和系統(tǒng)實(shí)現(xiàn)。
下面將通過(guò)一個(gè)實(shí)施例并參照所附權(quán)利要求更具體描述本發(fā)明,其中圖1是根據(jù)本發(fā)明的一個(gè)實(shí)施例顯示密鑰生成裝置的示意圖;圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例執(zhí)行加密傳送或鑒別的流程圖。
具體實(shí)施例方式
本發(fā)明涉及一種至少在兩個(gè)裝置之間通過(guò)一個(gè)不安全通信信道安全加密傳送/鑒別的系統(tǒng)。該通信信道可以是通過(guò)其能夠發(fā)送數(shù)據(jù)的任何信道,并且更具體地說(shuō),該信道可以是固定的(stationary)及無(wú)線的。如圖1中所示每一個(gè)這種裝置包含密鑰生成裝置1。這種密鑰生成裝置包含存儲(chǔ)器10,其中最好已經(jīng)按動(dòng)態(tài)以及/相互/可交換的方式存儲(chǔ)相同的原始數(shù)值U(通常所說(shuō)的種子值(seed))。原始數(shù)值的存儲(chǔ)最好與裝置的初始啟動(dòng)相關(guān)來(lái)實(shí)現(xiàn),并且它能夠通過(guò)安全信道實(shí)現(xiàn)。但是,不必實(shí)際地發(fā)送原始數(shù)值,而有關(guān)裝置的用戶可以自己輸入商定數(shù)值。此外,可以將原始數(shù)值交換,或者當(dāng)需要時(shí),將相同的原始數(shù)值用于密鑰生成裝置的整個(gè)壽命的周期。在這種情況下,不必將原始數(shù)值存儲(chǔ)在動(dòng)態(tài)存儲(chǔ)器,而可以使用永久性存儲(chǔ)器。
此外,密鑰生成裝置包含周期地改變計(jì)算數(shù)值R的計(jì)數(shù)器和在各自和每一個(gè)裝置而不依賴其他裝置適于根據(jù)原始數(shù)值和通過(guò)計(jì)數(shù)器得出的計(jì)算數(shù)值生成密鑰的計(jì)算裝置。但是,計(jì)數(shù)器和計(jì)算裝置可以被有利地結(jié)合到可以是微處理器例如能大批供應(yīng)的中央處理單元(CPU)的相同裝置11中。可以通過(guò)振蕩器或時(shí)鐘有利地控制計(jì)數(shù)器,同樣可以將其結(jié)合到裝置11中。最好使用和CPU11結(jié)合的基于實(shí)時(shí)的時(shí)鐘。此外,按整數(shù)將計(jì)數(shù)器逐步增大,從而較易于使裝置相互同相(同步的)。
假設(shè)相同的原始數(shù)值存儲(chǔ)在存儲(chǔ)器10并且計(jì)數(shù)器被同步提供相同的計(jì)算數(shù)值,相同的密鑰可以相互無(wú)關(guān)地在幾個(gè)密鑰生成裝置中生成。因此這些密鑰能夠在裝置間用于加密或鑒別目的。
此外,密鑰生成裝置最好適于檢測(cè)它們是否是同步的,并且在它們不同步的情況下實(shí)現(xiàn)這個(gè)同步。檢測(cè)可以通過(guò)特定的在密鑰生成以前進(jìn)行的同步測(cè)定來(lái)完成。但是當(dāng)使用不同的密鑰時(shí),或者可以識(shí)別對(duì)同步的需要,并且僅據(jù)此可以實(shí)現(xiàn)同步重新設(shè)置。例如通過(guò)裝置之間計(jì)算數(shù)值的交換可以實(shí)現(xiàn)同步。
計(jì)算裝置包含計(jì)算算法F,其利用原始數(shù)值和計(jì)算數(shù)值做為輸入?yún)?shù)即F=f(R,U)。最好將這個(gè)計(jì)算算法在計(jì)算裝置的硬件中實(shí)現(xiàn),或者將它存儲(chǔ)在非動(dòng)態(tài)和不可變的存儲(chǔ)器中。該計(jì)算算法最好生成128位的密鑰,當(dāng)然其他長(zhǎng)度的密鑰也是可能的。每次對(duì)密鑰產(chǎn)生器發(fā)出指令以產(chǎn)生一個(gè)新的密鑰,因此新的偽隨機(jī)的128位字產(chǎn)生,其是在種子值”和計(jì)算數(shù)值的基礎(chǔ)上計(jì)算的。
密鑰生成裝置1還包含能夠在通信裝置和密鑰生成裝置間用來(lái)通信的接口部件12。這個(gè)通信最好包含向密鑰生成裝置發(fā)生指令生成密鑰和將這種生成的密鑰返回到通信裝置。
密鑰生成裝置以硬件實(shí)現(xiàn),并且以集成電路的形式實(shí)現(xiàn),從而使其更加難以干預(yù)。因此可以將該電路加到并可以和實(shí)質(zhì)上任何類型的通信裝置一起使用。例如可以將根據(jù)本發(fā)明的該密鑰生成裝置連同充值卡(通常所說(shuō)的智能卡)在便攜式計(jì)算機(jī)或固定計(jì)算機(jī)、移動(dòng)電話、電子日程表和類似的通信電子設(shè)備中使用。
然而,同樣可以例如在傳統(tǒng)的計(jì)算機(jī)中以軟件實(shí)現(xiàn)密鑰生成裝置并利用現(xiàn)有的存儲(chǔ)器等。這個(gè)選擇對(duì)在固定裝置特別是被用作中央裝置的裝置中的實(shí)現(xiàn)是特別有利的。
根據(jù)本發(fā)明的密鑰生成裝置可以用于點(diǎn)對(duì)點(diǎn)通信或用于鑒別,即在兩個(gè)裝置之間,或中央裝置、服務(wù)器或幾個(gè)用戶、客戶之間。這種中央裝置最好包含多個(gè)不同的密鑰生成裝置,其每個(gè)用于與中央裝置通信的每一個(gè)客戶機(jī)?;蛘呙荑€裝置可以包含幾個(gè)不同的原始數(shù)值,在這種情況下,對(duì)密鑰生成裝置生成密鑰的指令還包含有關(guān)應(yīng)當(dāng)使用哪個(gè)原始數(shù)值的信息。幾個(gè)裝置可以與具有相同的密鑰生成裝置的中央裝置通信,使它們能夠與中央裝置中相同的密鑰生成裝置通信。
就適于與幾個(gè)其他裝置通信的中央裝置來(lái)說(shuō),鑒于客戶機(jī)具有硬件實(shí)現(xiàn)的裝置,中央裝置最好包含用于密鑰生成裝置的軟件實(shí)現(xiàn)的裝置。例如,客戶機(jī)可以是智能卡或移動(dòng)電話、計(jì)算機(jī)等。所以根據(jù)本發(fā)明的系統(tǒng)可以在銀行和它的客戶、企業(yè)和他們的雇員、公司和它的子公司等之間使用。另外,該系統(tǒng)可以用來(lái)控制通過(guò)互聯(lián)網(wǎng)等對(duì)主頁(yè)的訪問(wèn),例如通過(guò)將它的智能卡連接到為那個(gè)目的而提供的讀取器,并且以此方式也可以控制對(duì)例如通過(guò)藍(lán)牙無(wú)線通信的電子設(shè)備的訪問(wèn)。
此外,為了通過(guò)幾個(gè)獨(dú)立的信道通信,在相同的密鑰生成裝置或在獨(dú)立的裝置中,不是中央裝置的裝置也可以包含幾個(gè)原始數(shù)值。這樣該裝置可以用于與幾個(gè)不同的中央裝置通信。例如,智能卡可以用于與幾個(gè)不同的銀行或其他機(jī)構(gòu)通信。
下面將參照?qǐng)D2描述借助于本發(fā)明的系統(tǒng)的加密傳送或鑒別。在第一步驟S1中,將準(zhǔn)備用作未來(lái)相互通信的裝置啟動(dòng),其中給它們提供相同的原始數(shù)值并且其操作過(guò)程最好也是同步的。該系統(tǒng)現(xiàn)在隨時(shí)可以使用,并且在以后的時(shí)刻,即在啟動(dòng)后經(jīng)過(guò)任意期間后。將裝置通過(guò)不安全的通信信道相互連接(步驟S2),并且至少裝置的一個(gè)對(duì)另一個(gè)裝置標(biāo)識(shí)其自身(步驟S3)。在步驟S4中,另一個(gè)裝置確定是否已知給定的身份并確定它是否具有相應(yīng)的密鑰生成電路即上述所限定的密鑰生成電路和是否具有相應(yīng)的原始數(shù)值。如果是這種情況,該操作過(guò)程轉(zhuǎn)到步驟S5,否則該過(guò)程被中斷。
然后,裝置同意執(zhí)行加密的傳送或鑒別,從而每一個(gè)在各自的密鑰生成裝置中獨(dú)立地計(jì)算密鑰(步驟S8)。同步檢測(cè)(S6)可能在這個(gè)步驟發(fā)生之前已被進(jìn)行,以探查計(jì)數(shù)器在各自的密鑰生成裝置中是否是同步的。如果是同步的情況,該操作過(guò)程直接繼續(xù)到步驟S8,否則同步步驟(S7)首先被執(zhí)行以重新設(shè)定裝置間同步?;蛘呖梢允∪ゲ襟ES7并且識(shí)別裝置不再同步的過(guò)程可以通過(guò)推斷相同密鑰沒(méi)有使用來(lái)實(shí)現(xiàn)。在這種情況下,為了在各自的裝置中再計(jì)算密鑰,該過(guò)程執(zhí)行同步步驟S7,然后返回到步驟S8。
然后,所計(jì)算的密鑰用來(lái)實(shí)現(xiàn)加密傳送或鑒別。但應(yīng)當(dāng)理解加密傳送和鑒別當(dāng)然可以同時(shí)和在相同過(guò)程中實(shí)現(xiàn)。實(shí)質(zhì)上可以借助于任何使用密鑰的加密算法實(shí)現(xiàn)加密和鑒別,如眾所周知的RFSM和RSA算法。
本發(fā)明可以用于鑒別即驗(yàn)證與該裝置通信的裝置是要求的那個(gè)裝置以及用于為加密傳送目的的密鑰生成。然而本發(fā)明使用的裝置例如智能卡、電話等可以裝有用以確保裝置用戶是正確的即用戶和通信裝置之間的鑒別是正確的設(shè)備。這種鑒別可以借助于代碼、指紋標(biāo)識(shí)等的輸入來(lái)完成。
根據(jù)本發(fā)明的該系統(tǒng)和方法提供一種簡(jiǎn)單而花費(fèi)不多的實(shí)現(xiàn)在加密傳送和鑒別中高安全度的方法,由于本發(fā)明能夠在兩個(gè)不同的位置上同步地產(chǎn)生相同的密鑰并且沒(méi)有信息的交換,或者可能有關(guān)于排序中的哪個(gè)密鑰將被產(chǎn)生的信息即計(jì)算值的交換。因此不必交換密鑰來(lái)實(shí)現(xiàn)兩個(gè)裝置間的鑒別或加密傳送,例如服務(wù)器和客戶機(jī)間,反之亦然。這使得也可以使用較短的密鑰,其提供較少的花費(fèi)和更高效的傳送,而同時(shí)與傳統(tǒng)的系統(tǒng)相比保持其安全性或者甚至提高其安全性。由于本發(fā)明大部分安全裝置在很大程度上可以是硬件集成,其更提高了安全性。因?yàn)樵谶@種情況下,最好僅種子值是可交換的并且通常僅生成的密鑰從外部是可以訪問(wèn)的。
上述的各種系統(tǒng)和方法的變化是可能的。例如該方法和該系統(tǒng)不依靠所用的加密或鑒別方法而是能夠以簡(jiǎn)單和安全方式用來(lái)生產(chǎn)密鑰,因此可以將它和最熟知的這種方法一起使用。另外,密鑰生成裝置最好以硬件實(shí)現(xiàn),它使該密鑰生成過(guò)程對(duì)用戶完全地隱蔽。但是以普通計(jì)算機(jī)的軟件實(shí)現(xiàn)密鑰生成裝置也是可能的。此外,系統(tǒng)中的裝置實(shí)質(zhì)上可以是任何通信電子裝置。用于生成密鑰生成裝置的計(jì)算數(shù)值的計(jì)數(shù)器也可以是任何類型,只要他們生成隨時(shí)間而變的計(jì)算數(shù)值。在一個(gè)或幾個(gè)裝置中省略計(jì)數(shù)器也是可能的,并且在這種情況下,計(jì)數(shù)器同步步驟被涉及在每一個(gè)密鑰生成操作之前裝置間計(jì)算數(shù)值的交換即使計(jì)算數(shù)值同步的步驟替代。應(yīng)該認(rèn)為這種和其它顯而易見(jiàn)的變化是在如后面所附的權(quán)利要求中所限定的本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種用于至少在兩個(gè)裝置之間通過(guò)不安全的通信信道加密傳送或鑒別的方法,其包含以下步驟;在初始過(guò)程中獲取一個(gè)用于各自的裝置的公共原始數(shù)值;同步每一個(gè)裝置中的計(jì)算數(shù)值;根據(jù)原始數(shù)值和計(jì)算數(shù)值在每一個(gè)裝置中而與其它裝置無(wú)關(guān)地生成密鑰;以及在后續(xù)加密傳送或鑒別操作中使用這樣生成的密鑰。
2.一種如權(quán)利要求1中所述的方法,其中至少在裝置的其中之一中并且最好在所有的裝置中以動(dòng)態(tài)和可交換的方式將原始數(shù)值保存。
3.一種如權(quán)利要求1或2中所述的方法,其中計(jì)算數(shù)值在每一個(gè)裝置的計(jì)數(shù)器中生成,該計(jì)算數(shù)值的同步涉及計(jì)數(shù)器的同步。
4.一種如權(quán)利要求3中所述的方法,其中在計(jì)數(shù)器初始同步后,僅當(dāng)需要時(shí),裝置執(zhí)行補(bǔ)充的同步步驟。
5.一種如上述權(quán)利要求其中的任何一個(gè)中所述的方法,其中根據(jù)原始數(shù)值和計(jì)算數(shù)值的所述的密鑰生成操作至少在裝置的其中之一中通過(guò)以非動(dòng)態(tài)和不可變方式存儲(chǔ)的計(jì)算算法實(shí)現(xiàn)。
6.一種如上述權(quán)利要求其中的任何一個(gè)中所述的方法,其中至少裝置的其中一個(gè)是可移動(dòng)裝置,例如智能卡或移動(dòng)電話。
7.一種如上述權(quán)利要求其中的任何一個(gè)中所述的方法,其中裝置的其中一個(gè)是中央裝置,該中央裝置包含多個(gè)用于與每一個(gè)具有一個(gè)原始數(shù)值的幾個(gè)不同裝置相關(guān)的安全加密傳送或鑒別的原始數(shù)值。
8.一種用于至少在兩個(gè)裝置之間通過(guò)不安全的通信信道加密傳送/鑒別的系統(tǒng),其中每一個(gè)裝置包含密鑰生成裝置,所述的密鑰生成裝置包含一個(gè)存儲(chǔ)器,其中相同的原始數(shù)值被存儲(chǔ),周期地改變計(jì)算數(shù)值的計(jì)數(shù)器,以及適于根據(jù)由計(jì)數(shù)器給出的原始數(shù)值和計(jì)算數(shù)值在每一個(gè)裝置中而與其他裝置無(wú)關(guān)地生成密鑰的計(jì)算裝置,所述的密鑰用于在裝置之間加密傳送或鑒別。
9.一種如權(quán)利要求8中所述的系統(tǒng),其中用于至少在裝置的其中一個(gè)中存儲(chǔ)原始數(shù)值的存儲(chǔ)器是以動(dòng)態(tài)和可交換的方式存儲(chǔ)原始數(shù)值的動(dòng)態(tài)存儲(chǔ)器。
10.一種如權(quán)利要求8或9中所述的系統(tǒng),其中當(dāng)裝置不同步時(shí),將對(duì)裝置進(jìn)行檢測(cè),然后重新設(shè)置同步。
11.一種如權(quán)利要求8-10其中的任何一個(gè)中所述的系統(tǒng),其中至少裝置的其中一個(gè)的計(jì)算裝置包含計(jì)算算法,所述計(jì)算算法以非動(dòng)態(tài)和不可變方式存儲(chǔ),并且其最好是由硬件實(shí)現(xiàn)。
12.一種如權(quán)利要求8-11其中的任何一個(gè)中所述的系統(tǒng),其中至少裝置的其中一個(gè)是可移動(dòng)裝置,例如智能卡或移動(dòng)電話。
13.一種如權(quán)利要求8-12其中的任何一個(gè)中所述的系統(tǒng),其中裝置的其中一個(gè)是中央裝置,該中央裝置包含多個(gè)用于涉及每一個(gè)具有一個(gè)原始數(shù)值的幾個(gè)不同裝置的安全加密傳送或鑒別的原始數(shù)值。
全文摘要
一種用于至少在兩個(gè)裝置之間通過(guò)不安全通信信道加密傳送或鑒別的方法和系統(tǒng),其包含下述步驟(a)在初始過(guò)程中產(chǎn)生一個(gè)用于各自的裝置的公共原始數(shù)值;(b)在每一個(gè)裝置中同步計(jì)算數(shù)值;(c)根據(jù)原始數(shù)值和計(jì)算數(shù)值在每一個(gè)裝置中與其他裝置無(wú)關(guān)地生成密鑰;以及(d)在后續(xù)加密傳送或鑒別操作中使用這樣生成的密鑰。
文檔編號(hào)H04L9/32GK1426646SQ01808550
公開(kāi)日2003年6月25日 申請(qǐng)日期2001年3月26日 優(yōu)先權(quán)日2000年3月24日
發(fā)明者馬蒂爾斯·韋德曼 申請(qǐng)人:英普塞斯股份公司