亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

基于可再現(xiàn)隨機序列的密碼系統(tǒng)的制作方法

文檔序號:11532259閱讀:400來源:國知局
基于可再現(xiàn)隨機序列的密碼系統(tǒng)的制造方法與工藝

發(fā)明背景

本發(fā)明屬于密碼過程和裝置的領(lǐng)域。密碼學(xué)是用于對數(shù)據(jù)進行加密(亦稱編碼)或者用于對加密數(shù)據(jù)進行解密(亦稱解碼)的技術(shù)。盡管此技術(shù)長期在軍事和外交領(lǐng)域中使用,但其今已擴展到公共領(lǐng)域和商界?,F(xiàn)如今在經(jīng)濟上至關(guān)重要的是具有強且安全的密碼系統(tǒng)以保護商業(yè)數(shù)據(jù)和銀行通信。

定義

在揭露現(xiàn)有技術(shù)之前,將給出我將在本文件中使用的一些技術(shù)術(shù)語的定義。這些定義將適用于整個文件(說明書、權(quán)利要求書、說明書摘要)。

所謂術(shù)語“數(shù)據(jù)”是指所有種類的信息、知識、文本、消息、文件、圖、數(shù)值結(jié)果、圖片、圖像、它們中的一些或全部的組合,或能夠通過字符的序列來表達(dá)、轉(zhuǎn)錄或者建模的項目。

所謂術(shù)語“字符的序列”是指以下各項的序列:指符號(字母、數(shù)值、標(biāo)點符號等)、所有種類的空間、象形符號、表意文字、數(shù)字、基于數(shù)個狀態(tài)的碼(例如摩斯碼、電傳碼、電子設(shè)備中的數(shù)字二進制碼等)、可能遵循編碼方案(例如ascii、ansi、unicode、baudot或其他)的數(shù)值碼(二進制、十進制、十六進制或無論什么基數(shù))、任何等同物的或它們中的一些或全部的組合。并且我因此將“字符”定義為從其做出字符的序列的元素。

所謂“隨機序列”是指這樣的字符序列,其中即使知道在序列中哪些是前一個字符(和/或接下來的字符)也無法預(yù)測哪一個字符將處于序列中的特定位置,并且這適用于序列中的每個位置。

現(xiàn)有技術(shù)

幾個世紀(jì)以來,vigenère密碼被認(rèn)為是最安全密碼系統(tǒng)之一。它基于每個字母用按字母表順序移位的另一個字母的取代,其中不同的移位適用于消息的每個字符。為了記住不同移位的序列,已創(chuàng)建了“密鑰”的系統(tǒng)。密鑰是單詞或句子,其中每個字母給出要應(yīng)用的移位,對于“a”考慮“0”,對于“b”考慮“1”,對于“c”考慮“2”,直到對于“z”考慮“25”為止。并且密鑰是循環(huán)的直到要加密的文本的結(jié)尾為止。

此技術(shù)已在第一次世界大戰(zhàn)期間被用于gilberts.vernam的“printingtelegraph”(電傳打字機)(美國專利1,310,719)。在此系統(tǒng)中,字符使用baudot碼被按照二進制編碼。這意味著存在僅兩個符號和兩個可能的移位:無或“移位到另一個符號”。并且因為密鑰被放在磁帶上,所以隨機序列開始被使用,因為不再需要記住密鑰。

針對vigenère密碼做出的首次成功的攻擊由friedrichkasiski完成,并且更高效的攻擊由williamfriedman設(shè)計出。兩個技術(shù)利用了密鑰被反復(fù)使用這一事實。

為了對抗這些技術(shù),已經(jīng)設(shè)計使用至少和要加密的文本一樣長的密鑰。找到此類密鑰的最好方式是使用書本(當(dāng)然,對位置而言是未知的)。然而,這種密碼仍然可被解密,因為密鑰承載含義。

美軍少校josepho.mauborgne找到了該問題的解決方案。了解了vernam系統(tǒng)及其隨機密鑰之后,他通過設(shè)定和要加密的文本一樣長的隨機密鑰并且通過規(guī)定每個隨機密鑰應(yīng)該被使用僅一次來使其完善。

這種系統(tǒng)被稱為一次一密(onetimepad),并且已正式地證明了這種密碼系統(tǒng)是完全不可被破解的。然而,使用密鑰僅一次的強加條件實際上是為什么這種充分證明的密碼系統(tǒng)很少被使用的原因:除必須生成大量的隨機密鑰之外,主要問題是通過安全信道將密鑰發(fā)送到接收方。這被稱作“密鑰分發(fā)問題”。似乎顯然的是,如果這種安全信道存在,則個人將使用該安全信道來通過它直接發(fā)送其消息而不是發(fā)送隨機密鑰并且然后發(fā)送加密消息。

解決此問題的一個嘗試是使用非常小的隨機密鑰并且根據(jù)它計算偽隨機序列(所有元素從先前的元素和/或從計算的先前狀態(tài)計算的序列),而不是使它循環(huán)。這個小隨機密鑰通常使用公開密鑰密碼學(xué)(參見下面)被發(fā)送到接收方,并且從它生成的偽隨機序列被用作加密密鑰。這種密碼系統(tǒng)被稱作“流密碼(streamcipher)”。

就像一次一密一樣,提供和文本一樣長的密鑰沒有意義。然而,與一次一密相反,密鑰的元素彼此相關(guān)的事實正在顯著性地消弱系統(tǒng),最終允許密碼分析者將其破解:在暴力破解攻擊(brute-forceattack)(其中每個可能的密鑰被依次嘗試)的情況下,將存在較少密鑰要嘗試(僅所有小隨機密鑰而不是全長密鑰)并且密鑰的計算字符之間的相關(guān)性不允許如此多的虛假密鑰(若有的話)。

還使用“短”隨機密鑰的另一系列密碼系統(tǒng)是“塊密碼”系列。這里,數(shù)據(jù)被按固定長度的塊截斷,所述塊被加密數(shù)次。每次(被稱作“輪”)塊使用數(shù)個技術(shù)(置換和取代)來加密時,每輪利用不同的密鑰,所有這些密鑰使用定義算法從短隨機密鑰計算。輪數(shù)被假定為防止使用傳統(tǒng)技術(shù)向后用密碼分析法破譯。然而,與一次一密相比,我們具有與針對暴力破解攻擊的流密碼相同的問題。

代替秘密密鑰,公開密鑰密碼學(xué)使用一個現(xiàn)未解決的數(shù)學(xué)問題(例如大數(shù)字的因式分解)以便對數(shù)據(jù)進行編碼。密碼系統(tǒng)的此系列的基本原理是使加密密鑰和解密密鑰分開,加密密鑰是公開的(因為它不能夠被用來對消息進行解密)并且被給予給潛在發(fā)送方,解密密鑰是秘密的并且由接收方保持,并且創(chuàng)建單向通信信道(因此,為了在兩個人之間具有雙向通信信道,一個人需要創(chuàng)建兩個單向通信信道,這做出兩個公開密鑰和兩個秘密密鑰)。

所以,此方案解決“密鑰分發(fā)問題”,因為不再需要安全信道來交換和文本一樣長的秘密密鑰。然而,所述密碼系統(tǒng)通常是費時的,所以在實踐中,它被僅用來對非常短的數(shù)據(jù)(例如小真隨機密鑰)進行編碼,長數(shù)據(jù)使用先前描述的密碼系統(tǒng)(使用所發(fā)送的小隨機密鑰)來編碼。

然而,應(yīng)該知道,與一次一密相反,公開密鑰密碼學(xué)并非無條件安全的,因為不可能證明沒有人已(秘密地)解決了該密碼系統(tǒng)基于的數(shù)學(xué)問題。



技術(shù)實現(xiàn)要素:

技術(shù)問題

因此,為了具有能夠?qū)辜夹g(shù)演進的完全安全的密碼系統(tǒng)和密碼分析技術(shù),仍然在尋找比一次一密無條件安全但沒有“密鑰分發(fā)問題”的密碼系統(tǒng)。

解決方案

我正在公開的是一種用于使用一個或數(shù)個隨機序列作為密鑰來對數(shù)據(jù)進行加密(亦稱編碼)或者對加密數(shù)據(jù)進行解密(亦稱解碼)的新密碼方案(及其實施方式和實施例中的一些),所述密鑰至少和要處理的數(shù)據(jù)一樣長。所公開的密碼過程包括一個或數(shù)個隨機序列生成過程,一個加密過程和一個解密過程。加密過程和解密過程兩者使用來自隨機序列生成過程的隨機序列來(分別)對數(shù)據(jù)進行加密和解密。

以基本方式,一個隨機序列生成過程包括至少一個偽隨機生成過程和一個隨機映射過程。偽隨機生成過程向隨機映射過程發(fā)送偽隨機序列。隨機映射過程使用偽隨機序列來利用用于將偽隨機序列的元素轉(zhuǎn)換成隨機序列的隨機元素的隨機轉(zhuǎn)移圖來生成隨機序列。此隨機轉(zhuǎn)移圖實際上被僅提供給被允許對數(shù)據(jù)進行加密和解密的人。

以更復(fù)雜方式,一個隨機序列生成過程可以包括一個或數(shù)個偽隨機生成過程和數(shù)個隨機映射過程。一個偽隨機生成過程能夠?qū)⑵漭敵霭l(fā)送到一個或數(shù)個隨機映射過程。并且一個隨機映射過程還能夠接收一個或數(shù)個其他隨機映射過程的輸出以及甚至它自己的輸出的反饋作為輸入。另外,可能可以針對每個密碼會話對隨機轉(zhuǎn)移圖進行變換。

此公開的密碼過程能夠被以被稱作“隱結(jié)構(gòu)”的數(shù)個方式具體實現(xiàn):具有適當(dāng)軟件的計算機(臺式機、膝上型電腦、工作站或任何型式,包括平板計算機和移動電話),以及微控制器或嵌入式電子設(shè)備或?qū)S秒娮与娐坊蛑悄芸?,或目前存在或者將來開發(fā)的其等同物中的任一個(“隱結(jié)構(gòu)”的此定義將適用于整個文件,包括權(quán)利要求書)。

優(yōu)點

所公開的密碼過程使用一個或數(shù)個隨機序列作為密鑰。直到現(xiàn)在為止,此類隨機序列是以不可再現(xiàn)方式生成的,從而導(dǎo)致一次一密系統(tǒng)所面對的密鑰分發(fā)的問題。這是由于關(guān)于隨機性的誤解而導(dǎo)致的,從而防止人們做出能夠再現(xiàn)同一(真)隨機序列數(shù)次的隨機序列生成器,諸如我們在本文件中公開的生成器。

對于許多人來說,隨機性來自完全逃避任何規(guī)則的混雜現(xiàn)象,從而導(dǎo)致完全不可預(yù)測的結(jié)果。實際上,如果混雜現(xiàn)象將不遵循任何規(guī)則,則將不能夠使混雜系統(tǒng)同步,但實驗證明完全相反。

而且,如果一個人投擲骰子,或從不透明袋子中抽彩球,則結(jié)果被認(rèn)為是隨機的。但是如果袋子不是不透明的,或者如果骰子是以完全相同的方式投擲的,則使用相同的力和相同量的能量,結(jié)果將不再被認(rèn)為是隨機的,因為對過程存在完全控制,從而產(chǎn)生人可期望的結(jié)果。

因此,我們能夠?qū)㈦S機性定義為結(jié)果的不可預(yù)測性,并且也就是說,實際上為在密碼學(xué)中使用的隨機性的特有特性。為了獲得此不確定性,此結(jié)果必須來自一個人未完全控制的過程。結(jié)果,只要每個人對序列來自于的生成過程缺少某種控制,我們就能夠推斷任何序列是隨機的。

因此,能夠從受控和不受控過程的混合獲得隨機序列,不受控過程保證序列的隨機性。在這里所公開的密碼過程中,一些受控和不受控過程的組合被使用,以便生成呈現(xiàn)對具有來自不受控過程的結(jié)果數(shù)據(jù)的人們(以及僅那些人)來說可再現(xiàn)的特質(zhì)的隨機序列。因此,能夠使用這些隨機序列以便創(chuàng)建和一次一密一樣強的密碼系統(tǒng),但是不需要分發(fā)大量的密鑰,因為這些“一次密鑰”實際上在通信信道的兩側(cè)被生成(在消息傳送系統(tǒng)的情況下,在這里被用作示例)。

這里,僅來自不受控過程的結(jié)果數(shù)據(jù)需要被分發(fā)。事實上,將在所撰寫的說明書中看到,能夠使用此密碼過程來實現(xiàn)無條件安全的通信信道。如此因為我們能夠通過此信道(一旦被建立)來發(fā)送所述密鑰,所以“密鑰分發(fā)問題”得以解決。因此我們得到一個最強密碼系統(tǒng),其具有極少的密鑰分發(fā)事項(但沒有“密鑰分發(fā)問題”)并且是無條件安全的,從而可獲得一個最有用的密碼系統(tǒng)。

附圖說明

為了更容易地遵循完整描述,隨本文件提供了一些附圖。然而,尚不能夠?qū)⑺星闆r整合到一個附圖中。因此,詳細(xì)描述將呈現(xiàn)附圖中未明顯繪制的變型。附圖實際上是使基本原理形象化的輔助。

圖1是示出所公開的密碼過程的基本運算的流程圖。

圖2是示出具有可選特征的隨機序列生成過程的內(nèi)部運算的流程圖。可選流程用虛線表示。

詳述

我們現(xiàn)在將描述不同的實施例。我們將集中于所公開的密碼過程及其實施例的特質(zhì)。因此,將不提及本領(lǐng)域的技術(shù)人員所知道的用于改進密碼過程的強度的所有技術(shù)(諸如對數(shù)據(jù)進行壓縮以便將冗語減至最少、使用順序地填充并且偽隨機挑選的緩沖器表來增強序列隨機性等),但涵蓋它們對所公開的密碼過程及其實施例的可用性。

密碼過程

裝置實施例(通常)遵循本文所公開的原始密碼過程實現(xiàn)密碼系統(tǒng)以便對數(shù)據(jù)進行加密,或者以便對加密數(shù)據(jù)進行解密。這個密碼過程使用一個或數(shù)個隨機序列生成過程1(參見圖1)、加密過程2和解密過程3。隨機序列生成過程1基于一個或數(shù)個偽隨機序列生成過程6(參見圖2),并且基于一個或數(shù)個隨機映射過程7。

偽隨機序列生成過程能夠使用線性同余數(shù)生成器算法(或其系列中的一些)、逆同余數(shù)生成器算法(或其系列中的一些)、線性反饋移位寄存器算法(或廣義反饋移位寄存器)、blumblumshub偽隨機生成器算法、基于一個或數(shù)個混雜方程(例如,logistic差分方程;參見美國專利5,048,086)的算法、基于一個或數(shù)個混雜方程系統(tǒng)(例如,洛倫茲系統(tǒng);參見美國專利6,078,665)的算法、基于分形方程(例如,朱莉婭集(juliaset)或曼德勃羅集(mandelbrotset))的算法,或其輸出被散列函數(shù)弄亂的這些和其他偽隨機生成算法中的任一個,或由實施者所期望的任何偽隨機生成算法,或它們中的一些的任何組合(對來自數(shù)個輸出的字符使用混合運算(稍后說明)或無論什么運算)。

“隨機映射過程”是使用字符的隨機序列(被稱作“隨機轉(zhuǎn)移圖”4)以便使用圖挑選協(xié)議將來自傳入序列的每個字符映射成傳出序列的隨機字符的過程。“圖挑選協(xié)議”是用于在來自輸入數(shù)據(jù)的序列中選擇元素的方式,諸如模數(shù)索引、歸一化索引、n維表索引、經(jīng)調(diào)整的n維表索引,或使用一個或數(shù)個字符作為輸入以便確定要從序列(這里,隨機轉(zhuǎn)移圖)中挑選哪一個字符的任何算法。

模數(shù)索引協(xié)議在于將輸入字符用作數(shù)字,并且此數(shù)字將指示將從中挑選輸出字符的序列的排名。如果輸入字符不是數(shù)字,則能夠?qū)⑵湓谝恍┚幋a方案(例如,ascii、ansi或unicode)中的編碼數(shù)字認(rèn)為是輸入數(shù)字。如果輸入數(shù)字大于序列的大小(其是序列的元素的數(shù)目),則使用排名數(shù)字與序列的大小的歐幾里德除法的余數(shù)(因此,為“模數(shù)”,因為它是模運算)。

歸一化索引協(xié)議例如是模索引協(xié)議,除了代替模運算,排名被歸一化為序列的大小。這意味著將排名除以可能的最高排名,然后,將結(jié)果乘以序列的大小。結(jié)果在排名編號從一開始的情況下被向上取整,或者在它從零開始的情況下被向下取整。

在n維表索引協(xié)議中,序列被認(rèn)為是來自具有n個維度的表的行的連續(xù)。這意味著序列的大小必須是表在每個維度上的大小的乘積。此協(xié)議使用被認(rèn)為是數(shù)字的傳入字符作為要在表中挑選的字符的坐標(biāo)。

除了在計算要挑選的字符的坐標(biāo)的方式上,經(jīng)調(diào)整的n維表索引協(xié)議例如是n維表索引協(xié)議。這里,對輸入字符做出的任何運算將適合,只要它將給出表的維度內(nèi)的坐標(biāo)即可。例如,它可以是模算術(shù)、像“異或”這樣的邏輯運算,或形成數(shù)字(例如,des的s-盒)的選定比特的挑選。

通常,實施例提供數(shù)個圖挑選協(xié)議,從而讓用戶選擇要使用的協(xié)議。然而,應(yīng)該注意的是,用來通過圖挑選協(xié)議來挑選字符的字符索引方法可能與在制作隨機轉(zhuǎn)移圖期間使用的字符索引方法不同。例如,一個人能夠創(chuàng)建ansi字符的隨機序列,然后,在圖挑選協(xié)議中,將它認(rèn)為是比特的序列,或者反之亦然。實際上,這允許使隨機圖制作過程與輸出隨機序列所需的字符的鍵入完全分開。

隨機映射過程7的傳入序列可以是來自偽隨機生成過程6的偽隨機序列(應(yīng)該注意的是,使用它們的輸出的“混合運算”(在下面定義)作為輸出的數(shù)個偽隨機序列生成過程的組合實際上被認(rèn)為是一個偽隨機序列生成過程),或來自先前的隨機映射過程8的隨機序列,或來自數(shù)個先前的隨機映射過程8的數(shù)個隨機序列的組合(使用它們的字符的“混合運算”),或這些可能性中的一些的組合(使用它們的字符的“混合運算”)。

所謂“混合運算”是指對實現(xiàn)者所需的輸入字符進行“異或”、模加法、模減法、級聯(lián)、vigenère加密、beaufort加密、代換密碼、模線性組合或無論什么運算或這些運算的序列,這個計算給出一個字符或數(shù)個字符的序列作為結(jié)果。這個定義將適用于整個文件(說明書、權(quán)利要求書,說明書摘要)。

在一些替代實施方式中,傳入序列既來自如上所述的傳入序列又來自作為反饋的特有隨機映射過程7的傳出序列。在這些替代實施方式中的一些中,反饋在其他傳入序列的下一個字符被處理之前在循環(huán)中(通過隨機映射過程)被處理了預(yù)定義次數(shù)。在這些替代實施方式中的其他實施方式中,反饋的字符使用“混合運算”與其他傳入序列的字符組合。在這些其他替代實施方式中的一些中,反饋被延遲了預(yù)定義數(shù)目的字符。在一些其他實施方式中,提供先前描述的配置中的一些或全部,包括數(shù)個可能的“電路”,從而讓用戶選擇哪一個配置將被使用。并且在一些實施方式中,用戶甚至能夠設(shè)計此電路。

所謂“電路”是指隨機序列生成過程的內(nèi)過程(偽隨機序列生成過程和隨機映射過程)彼此連接的方式。電路還指定哪一個隨機映射過程輸出將被用作隨機序列生成過程輸出。

在該實施例中隨機轉(zhuǎn)移圖4是通過“隨機性生成”9創(chuàng)建并且提供給隨機映射過程7的字符的隨機序列。此隨機轉(zhuǎn)移圖是我們的隨機序列生成器的隨機性(還被本領(lǐng)域的技術(shù)人員稱為“熵”)的來源。我們已看到隨機性暗示兩個事項:不可預(yù)測性和缺少控制。不可預(yù)測性暗示隨機轉(zhuǎn)移圖必須保密并且對“敵方”不可訪問(它還被設(shè)計為使它保持對用戶不可訪問)。并且缺少控制暗示允許我們定義隨機性生成的條件。

“隨機性生成”是不(或者不完全)使用數(shù)學(xué)或計算但是使用一個或數(shù)個不受控現(xiàn)象以便生成字符的創(chuàng)建的過程。此過程的最明顯的實施例中的一些是硬件“真”隨機生成器。這種硬件使用例如電子噪聲作為隨機值的來源,所述隨機值由算法后處理(被稱為“隨機性提取”)。另一示例是測量放射性物質(zhì)的各個衰變之間的時間的更罕見硬件。

實施例的另一系列使用在沒有任何理性選擇的情況下挑選的文本10(或編譯程序二進制或無論什么文件)作為隨機性的來源。事實上,在隱藏文本中,沒有人將能夠知道哪一個字母將在確定的位置中。但是通常,文本使用“取代運算”被后處理一次或數(shù)次。后處理通常應(yīng)該是可再現(xiàn)的,因為該實施例本身應(yīng)該完成它。眾所周知的后處理即使不是取代運算,也將數(shù)據(jù)劃分成比特的塊并且使用散列函數(shù)(能夠容易地計算確定大小的比特的結(jié)果但是其條目不能夠在合理時間中根據(jù)它被確定的所謂的“單向函數(shù)”)對這些塊進行處理。

取代運算是使用指定協(xié)議以及通常外部數(shù)據(jù)來用另一字符取代一字符的過程。外部數(shù)據(jù)可以是來自另一文本的字符或在循環(huán)中使用的隨機鍵入的字符或數(shù)據(jù)的任何其他來源。指定協(xié)議可以是文本的字符與外部數(shù)據(jù)之間的一個或數(shù)個“混合運算”(如上面所定義的)或使用外部數(shù)據(jù)作為密鑰的文本的加密(利用塊密碼、流密碼或無論什么),但是它還可以是更復(fù)雜的協(xié)議或它們中的一些的組合。建議指定協(xié)議符合上面所給出的可再現(xiàn)性條件。

在一些實施例中,隨機序列生成過程1還包括隨機轉(zhuǎn)移圖變換過程11。此過程使用提供的參數(shù)(隨機鍵入的字符、隨機生成的字符或無論什么數(shù)據(jù))和一個或數(shù)個混合運算來將所提供的隨機轉(zhuǎn)移圖(我們將稱作“初級隨機轉(zhuǎn)移圖”)變換成另一隨機轉(zhuǎn)移圖(我們將稱作“次級隨機轉(zhuǎn)移圖”)。次級隨機轉(zhuǎn)移圖將(通過與參數(shù)的每個字符一起對初級隨機轉(zhuǎn)移圖的每個字符應(yīng)用混合運算、使參數(shù)循環(huán)直到所有初級隨機轉(zhuǎn)移圖被處理為止)被生成并且代替初級隨機轉(zhuǎn)移圖被隨機映射過程使用。這種特征通常被與針對每個加密會話的不同提供的參數(shù)以及針對一個會話的每個隨機轉(zhuǎn)移圖變換的通常不同的參數(shù)一起使用。

在一些替代實施例中,可能為專用單獨的一個或者由加密過程和/或解密過程使用的一個的一部分(或整體)的隨機序列生成過程(就像本文件中所公開的隨機序列生成過程1一樣)被用來將初級隨機轉(zhuǎn)移圖變換成次級隨機轉(zhuǎn)移圖。在此配置中,所提供的參數(shù)被用來建立隨機序列生成過程,并且所生成的隨機序列被用來使用混合運算對初級隨機轉(zhuǎn)移圖進行變換。在一些替代實施例中,所生成的隨機輸出被直接用作次級隨機轉(zhuǎn)移圖,而不是對初級隨機轉(zhuǎn)移圖進行變換。

在一些實施例中,隨機序列生成過程1還包括種子生成過程12,其為偽隨機生成過程6計算種子5(其是偽隨機序列生成器為了開始計算序列所需的開始數(shù)據(jù),這些所述數(shù)據(jù)的值影響序列的字符)。種子生成過程12對提供的或挑選的字符(諸如可能來自計算機存儲器或一個或數(shù)個隨機轉(zhuǎn)移圖4的一部分的挑選字符)使用“種子計算算法”。“種子計算算法”是對輸入字符使用算術(shù)、混合或無論什么運算或它們中的一些(或全部)的組合以便輸出要用做種子的某個或一些值的算法。

最后,加密過程2和解密過程3皆可能在相同的密碼裝置中或者在單獨的密碼裝置中發(fā)生。它能夠使用任何密碼方案:vigenère密碼、beaufort密碼、塊密碼、流密碼,或由實施者想要的無論什么密碼方案。它還能夠使用它從隨機序列生成過程需要的任何數(shù)目的密鑰。事實上,加密過程和解密過程兩者能夠使用數(shù)個密鑰(通常為不同的密鑰)來對數(shù)據(jù)進行處理數(shù)次。

密碼裝置

在實施例的一個系列中,一個或數(shù)個計算機或平板計算機或移動電話(獨立的或者連接到網(wǎng)絡(luò))使用軟件以便遵循上面所公開的密碼過程對數(shù)據(jù)進行加密,或者對加密數(shù)據(jù)進行解密,加密過程2和解密過程3皆在相同的計算機(在下文中,單詞“計算機”還將包括平板和移動電話)上或者在不同的計算機(具有隨機序列生成過程的兩個計算機)上。密碼過程的軟件實現(xiàn)是顯然的。

在裝置實施例的第二系列中,專用電子電路實現(xiàn)上面所公開的密碼過程。這種電路包括數(shù)個部分,每個部分實現(xiàn)上面所描述的密碼過程的步驟中的一個(用于實現(xiàn)用于生成隨機序列的過程1的隨機序列生成器、用于實現(xiàn)用于對數(shù)據(jù)進行加密的過程2的加密器、用于實現(xiàn)用于對加密數(shù)據(jù)進行解密的過程3的解密器,所述隨機序列生成器中的每一個包括實現(xiàn)偽隨機序列生成過程6的一個或數(shù)個偽隨機生成器以及實現(xiàn)隨機映射過程7的一個或數(shù)個隨機映射器單元)。

遵循所公開的密碼過程,偽隨機生成器和隨機映射器單元在一電路中被連接在一起。此電路通常是硬件,但是我們將稍后看到該電路是邏輯上或軟件開關(guān)的一些實施例。在硬件情況下,可推薦一個或數(shù)個電路。它們可為可切換的,或者它們能夠并行工作。

每個隨機映射器單元正在使用存儲在隨機映射器單元內(nèi)部的存儲單元(例如,存儲器或閃存卡)中的提供的隨機轉(zhuǎn)移圖4(如先前所定義的),此隨機轉(zhuǎn)移圖通過隨機性生成9(如先前所定義和描述的)來生成。

在替代實施例中,隨機序列生成器中的每一個還包括實現(xiàn)隨機轉(zhuǎn)移圖變換過程11的隨機轉(zhuǎn)移圖變換器。

在一些實施例中,電子電路還嵌入一些微控制器,其能夠?qū)崿F(xiàn)一些可編程復(fù)用器(在其他事項之間),從而允許對每個隨機序列生成器1內(nèi)部的電路進行編程,以選擇加密電路(或者以實現(xiàn)其計算算法)以便選擇加密方案,這同樣適用于解密,以選擇偽隨機生成器(或者以實現(xiàn)其計算算法)以便選擇生成算法等。

在一些實施例中,種子生成過程12由種子生成器來實現(xiàn)。實施方式通常是硬件,但是它可能是(部分地或完全)軟件實現(xiàn)的,以便由微控制器執(zhí)行。另外,隨機性生成9在一些實施例中通常利用微控制器被實現(xiàn)在軟件中,但是它可處于硬件中。

還存在實現(xiàn)本文件中所描述的密碼過程的數(shù)個其他種類的裝置實施例。所實現(xiàn)的特征的量取決于用于該實施例的結(jié)構(gòu)的容量和計算能力。

一類實施例是密碼系統(tǒng)被實現(xiàn)在微控制器上的那些。它是實施例的第一系列的某種袖珍實施方式。密碼過程通常用微控制器上的軟件加以實現(xiàn),所述微控制器在小型電子電路上與用于數(shù)據(jù)輸入的按鈕、滾輪和其他裝置以及用于usb數(shù)據(jù)存儲或互聯(lián)網(wǎng)接入的一些插口連接(但是wi-fi可以是嵌入式的)。至于運算,用戶使用數(shù)據(jù)輸入的裝置來與微控制器上的軟件交互。

另一種實施例是在智能卡上。密碼過程用具有有限容量和計算能力的芯片上的軟件加以實現(xiàn)。實施者應(yīng)該仔細(xì)地選擇它將在其上實現(xiàn)哪些特征(取決于范圍聲明需要什么)。例如,這些所述實施例能夠被用于標(biāo)識,或者用于銀行交易或取款。這些所述實施例被運算就像我們使用智能卡一樣。

先前兩種實施例的組合是在某種usb鑰匙而不是閃速存儲器上,它已被嵌入通常具有像智能卡這樣的小芯片的一些電子設(shè)備。它實際上是用于密碼目的的計算機的usb即插即用裝置。其運算是顯然的。

一種特殊實施例是密碼系統(tǒng)制作器,其是存儲計算機程序代碼的存儲單元,所述計算機程序代碼當(dāng)被加載在計算機存儲器中時,將此計算機配置成執(zhí)行所公開的密碼過程。這種存儲單元使用被稱作“存儲介質(zhì)”:硬盤、usb鑰匙、cd-rom、dvd-rom、閃存卡或能夠存儲計算機程序代碼并且計算機系統(tǒng)能夠訪問以便將此程序代碼加載到其存儲器(“存儲介質(zhì)”的此定義將適用于整個文件,包括權(quán)利要求書)中的任何元件來制成。

實施例運算

至于裝置實施例的第一系列的運算,計算機(包括平板和移動電話)的設(shè)定顯然被本領(lǐng)域的技術(shù)人員知道:適當(dāng)?shù)能浖⒈惶峁┙o計算機并且該計算機將會將它加載到其存儲器中。然后,此程序?qū)⒃撚嬎銠C配置成使它執(zhí)行所公開的密碼過程。

在計算機設(shè)定之后,隨機轉(zhuǎn)移圖被提供給隨機序列生成過程。這些隨機轉(zhuǎn)移圖應(yīng)該被僅提供給被允許訪問數(shù)據(jù)的用戶的計算機。如果實施例實現(xiàn)隨機轉(zhuǎn)移圖生成過程,則用于處理會話的參數(shù)被提供給它,并且它從隨機轉(zhuǎn)移圖生成次級隨機轉(zhuǎn)移圖;然后在隨機序列生成過程中隨機轉(zhuǎn)移圖被用它們對應(yīng)的次級隨機轉(zhuǎn)移圖取代。初級隨機轉(zhuǎn)移圖可以被存儲在某處,以便能夠被用來(在其他新會話期間從其他會話參數(shù))生成其他次級隨機轉(zhuǎn)移圖。

想要運算的數(shù)據(jù)被提供給計算機。它們可能已經(jīng)在硬盤驅(qū)動器(或任何其他驅(qū)動器)上,或者從網(wǎng)絡(luò)接收,但是它們被加載到計算機的存儲器中。一個或數(shù)個隨機序列生成過程(取決于實施方式)生成與要處理的數(shù)據(jù)比相同長度的字符的一個或數(shù)個隨機序列(取決于加密/解密過程所需的密鑰的數(shù)目)。

對于此任務(wù),一個或數(shù)個種子被提供給偽隨機序列生成過程(取決于它需要的種子的數(shù)目),其傳出偽隨機序列被發(fā)送到隨機映射過程,其傳出隨機序列遵循所實現(xiàn)的“電路”直到最終傳出隨機序列通過隨機序列生成過程被發(fā)送到加密(或解密,取決于任務(wù))過程為止。

此過程從存儲器取數(shù)據(jù),使用它實現(xiàn)的算法來對它們進行加密(分別解密),并且將它們發(fā)送回到存儲器。遵循什么取決于想要對數(shù)據(jù)進行何種運算(將它們存儲在硬盤驅(qū)動器或任何其他驅(qū)動器上,或者在網(wǎng)絡(luò)上向遠(yuǎn)方接收方發(fā)送它們,諸如此類)。

存在用于將隨機轉(zhuǎn)移圖提供給隨機序列生成器的數(shù)個方式:它能夠被以物理方式轉(zhuǎn)移到例如具有usb鑰匙或連續(xù)編號cd-rom的密碼裝置(計算機等),它們能夠利用使用所公開的密碼過程所編碼的安全信道(通過例如網(wǎng)絡(luò))來發(fā)送,或者能夠在密碼裝置上生成它們。在以物理方式轉(zhuǎn)移的圖的情況下,隨機轉(zhuǎn)移圖(使用例如硬件“真”隨機生成器)在某處被生成,然后被帶給“授權(quán)的”用戶的密碼裝置(例如在驅(qū)動器、cd-rom上或者在usb鑰匙上)并且轉(zhuǎn)移到正確的位置進入裝置。對于關(guān)鍵應(yīng)用,此位置將最好地對用戶不可訪問,但是僅對認(rèn)可管理員可訪問。

利用這種方法以及我們將稍后看到的其他設(shè)定,實現(xiàn)編碼信道(例如通過網(wǎng)絡(luò),或通信的任何裝置)變得可能,所述加密信道意指數(shù)據(jù)被編碼的雙向通信(術(shù)語“安全信道”也由本領(lǐng)域的技術(shù)人員使用)。因為這種信道是無條件安全的(對抗僅密文攻擊),所以它因此能夠被用來在需要時轉(zhuǎn)移新的隨機轉(zhuǎn)移圖代替物理轉(zhuǎn)移。

在隨機轉(zhuǎn)移圖未被轉(zhuǎn)移到計算機的情況下,文件被挑選,并且通常,使用板上取代運算來變換。對于想要對他的數(shù)據(jù)中的一些進行編碼的單個用戶來說,它可以是在他的驅(qū)動器上或在互聯(lián)網(wǎng)上可能的每個文件;其只必須記住他使用了哪些文件和哪些外部數(shù)據(jù)以便能夠?qū)⑺臄?shù)據(jù)解碼回來。對于使用并交換公共數(shù)據(jù)的數(shù)個用戶的網(wǎng)絡(luò),每個人應(yīng)該具有相同的數(shù)據(jù)以便能夠生成相同的隨機轉(zhuǎn)移圖。這通常通過使用公開密鑰密碼學(xué)或例如稍后所描述的無條件安全的信道向其他人中的一個或全部發(fā)送要挑選的文件的地址(互聯(lián)網(wǎng)url或文件系統(tǒng)路徑)并且可能保持外部數(shù)據(jù)來完成。因此,接收方中的每一個使他們的計算機計算他們適當(dāng)?shù)碾S機轉(zhuǎn)移圖。

如果特征被實現(xiàn)在該實施例中,則用于在計算機上生成隨機轉(zhuǎn)移圖的相同過程被用于生成次級隨機轉(zhuǎn)移圖所需的參數(shù)。在這種情況下,電路、文件或外部數(shù)據(jù)(隨機鍵入的字符、隨機生成的字符或無論什么數(shù)據(jù))被隨機轉(zhuǎn)移圖變換過程使用以便為每個加密會話創(chuàng)建新的隨機轉(zhuǎn)移圖(次級隨機轉(zhuǎn)移圖),而不必(使用上面所看到的方式)發(fā)送整個隨機轉(zhuǎn)移圖。

對此特征的關(guān)注點是文件或外部數(shù)據(jù)通常具有比隨機轉(zhuǎn)移圖小得多的大小,并且一堆外部數(shù)據(jù)可以被用于所有隨機轉(zhuǎn)移圖的變換,這使用于改變隨機轉(zhuǎn)移圖的通信變得更短。事實上,隨機轉(zhuǎn)移圖通常在偽隨機序列生成過程返回之前改變,以便防止它生成已經(jīng)輸出的序列。因此,為了在每個加密會話允許簡化偽隨機序列生成的管理之前改變隨機轉(zhuǎn)移圖,因為一個人僅必須檢查數(shù)據(jù)處理的所需長度不超過偽隨機序列的最大長度(實際上是在使用隨機映射反饋的情況下隨機序列的最大長度)。

為了提供偽隨機序列生成過程所需的種子,數(shù)個方式是可能的。例如,對于想要對其數(shù)據(jù)進行編碼的單個用戶來說,軟件可能要求他鍵入其想要使用(他必須正確地記住)的種子,或者向其要求第一字符、最后的字符或(由實施者)預(yù)定義的字符被用作種子的文件(文本文件-壓縮的或未壓縮的-或二進制文件)。但是另一方式是保留將未由其數(shù)據(jù)將被用作種子的隨機映射過程所使用的一個或數(shù)個隨機轉(zhuǎn)移圖的一小部分(通常是圖的結(jié)尾),或者(使用具有這些值的種子生成過程)計算種子。這個最后方式的優(yōu)點是用戶不必關(guān)心種子。還能夠看到,如果隨機轉(zhuǎn)移圖變換過程被實現(xiàn),則種子針對每個會話被改變,因為隨機轉(zhuǎn)移圖的保留部分還通過取代運算來變換。

在多用戶配置中,還能夠?qū)崿F(xiàn)上面所描述的用于生成種子的隨機轉(zhuǎn)移圖中的保留部分的方法。事實上,與隨機轉(zhuǎn)移圖變換過程的實施方式并且與隨機轉(zhuǎn)移圖的物理轉(zhuǎn)移組合的此方法(用于將種子提供給偽隨機序列生成過程)的使用允許通過網(wǎng)絡(luò)實現(xiàn)無條件安全的通信信道(如早先撰寫的)。因為隨機轉(zhuǎn)移圖被隨機地生成(所以它可能是字符的所有可能組合中的任一個)并且可能具有任何大小,因為偽隨機序列生成算法可能是許多中的一個并且種子是未知的,因為由隨機序列生成過程在內(nèi)部使用的“電路”是相當(dāng)多中的一個,所以“敵方”沒有在密碼過程內(nèi)部發(fā)生什么的線索,并且對于他來說,字符的任何組合具有相同的概率成為加密密鑰,就像一次一密一樣。

并且看到由于隨機轉(zhuǎn)移圖的隨機性和未知大小、未知偽隨機序列生成算法、未知變化種子、已被選擇的隨機序列生成過程的未知內(nèi)部電路、由隨機轉(zhuǎn)移圖變換過程使用的未知混合運算、使用的未知加密協(xié)議以及一些其他未知參數(shù),用于隨機轉(zhuǎn)移圖變換過程的參數(shù)將對他來說沒有幫助。因此,在我們的特定案例中,用于隨機轉(zhuǎn)移圖變換過程的所述參數(shù)能夠在無需被加密的情況下被發(fā)送到其他用戶。

并且,仍然在我們的特定案例中,所述參數(shù)是開始通信會話所需的唯一數(shù)據(jù),所以系統(tǒng)是無條件安全的,并且所有其他需要的數(shù)據(jù)(例如新的隨機轉(zhuǎn)移圖)能夠通過安全信道來發(fā)送。因此,物理轉(zhuǎn)移僅是系統(tǒng)的設(shè)定所需的。此轉(zhuǎn)移能夠例如使用包含隨機轉(zhuǎn)移圖(以及可能種子)的連續(xù)編號cd-rom來完成,所以用戶只必須將序列號作為參數(shù)來發(fā)送以便建立編碼信道。

除了無條件安全的通信信道的這種情況,用于提供偽隨機序列生成過程所需的種子的其他方式可以是公開密鑰密碼學(xué)或由實施者所期望的任何方法。

針對單用戶配置和多用戶配置兩者,如果隨機轉(zhuǎn)移圖變換過程不可用,則建議每隨機轉(zhuǎn)移圖將需要種子僅一次,最后值被存儲在寄存器中以便下一次被用作種子,直到達(dá)到偽隨機序列的最大長度為止。然后將建議在那時之前改變隨機轉(zhuǎn)移圖以便不重復(fù)隨機序列。

針對關(guān)鍵應(yīng)用,存在感興趣配置:密碼裝置在“星形網(wǎng)絡(luò)”中與中心處的網(wǎng)絡(luò)服務(wù)器以及(至少)僅連接到它的其他裝置連接(可能以無線方式)。每個裝置僅具有要與服務(wù)器進行通信的數(shù)據(jù)(隨機轉(zhuǎn)移圖等),同時服務(wù)器具有要與所有裝置進行通信的數(shù)據(jù)。如果一個裝置想要在安全信道上與其他裝置進行通信,則它對消息進行加密并且將它發(fā)送到服務(wù)器,服務(wù)器對它進行解密,針對另一裝置利用該數(shù)據(jù)對它進行重新加密,并且將消息發(fā)送到能夠?qū)λM行解密的另一裝置。這種配置的優(yōu)點是,如果裝置(除服務(wù)器之外)被敵方俘獲,則他不能夠利用所俘獲的裝置的數(shù)據(jù)對其其通信進行解密。

至于裝置實施例的第二系列的運算,其完全像實施例的第一系列那樣工作。通常,專用電子電路只是更大電子機器的一部分。有時,它是連接到計算機以便代替cpu做專門計算的電子部分。所以,通常,實施例的此系列包括要由“主”電路控制的“從”電路。

最佳模式

考慮到所公開的密碼過程可以數(shù)個方式實現(xiàn),表明不同的應(yīng)用有不同的需求,因此難以評估最佳模式,因為相反的需求導(dǎo)致相反的準(zhǔn)則。

權(quán)利要求書(按照條約第19條的修改)

1.一種生成字符的隨機序列以在要由一個或數(shù)個處理器執(zhí)行的密碼運算中使用的計算機實現(xiàn)的方法,所述方法包括:

(a)根據(jù)需要通過隨機性生成來生成一個或數(shù)個隨機轉(zhuǎn)移圖,所述隨機性生成不是通過偽隨機生成器來完成;

(b)將所述生成的隨機轉(zhuǎn)移圖提供給將生成隨機序列的所述計算機;

(c)向?qū)⑸呻S機序列的所述計算機提供偽隨機序列生成器種子;

(d)通過對數(shù)個輸入運算一個或數(shù)個處理器來生成字符的隨機序列,所述輸入是:

i.在所述及的隨機轉(zhuǎn)移圖提供步驟期間提供的隨機轉(zhuǎn)移圖,

ii.在所述及的偽隨機序列生成器種子提供步驟期間提供的偽隨機序列生成器種子;

每個要生成的隨機序列使用一個隨機映射運算,所述隨機映射運算中的每一個包括以下步驟:

i.利用種子初始化偽隨機序列生成器,若有的話在所考慮的隨機映射運算期間被使用,所述種子被:

a.提供給所考慮的將生成隨機序列的計算機,

b.或在提供給所考慮的將生成隨機序列的計算機的一個或數(shù)個隨機轉(zhuǎn)移圖的一部分中挑選;

ii.使用混合運算來使所述隨機映射運算的輸入混合,所述隨機映射運算的輸入是:

a.來自另一隨機映射運算的輸出,

b.或數(shù)個其他隨機映射運算的輸出的通過混合運算進行的組合,

c.或來自由所考慮的隨機映射運算所使用的偽隨機序列生成器的輸出,

d.或來自由所考慮的隨機映射運算所使用的偽隨機序列生成器的輸出的以及一個或數(shù)個其他隨機映射運算的輸出的通過混合運算進行的組合,

e.或來自由所考慮的隨機映射運算所使用的偽隨機序列生成器的輸出的以及被用作反饋的由所考慮的隨機映射運算先前生成的輸出的通過混合運算進行的組合,

f.或與被用作反饋的通過所考慮的隨機映射運算先前生成的數(shù)據(jù)交替的來自由所考慮的隨機映射運算所使用的偽隨機序列生成器的輸出,

g.或來自由所考慮的隨機映射運算所使用的偽隨機序列生成器的輸出的、一個或數(shù)個其他隨機映射運算的輸出的以及被用作反饋的通過所考慮的隨機映射運算先前生成的輸出的通過混合運算進行的組合,

h.或來自由所考慮的隨機映射運算所使用的偽隨機序列生成器的輸出的以及一個或數(shù)個其他隨機映射運算的輸出的通過混合運算進行的組合,所述組合與被用作反饋的由所考慮的隨機映射運算先前生成的輸出交替;

iii.使用來自前一步驟的結(jié)果來使用圖挑選協(xié)議從歸因于所考慮的隨機映射運算的所述隨機轉(zhuǎn)移圖中挑選字符;

iv.輸出前一步驟中所挑選的所述字符;

v.開始回到所述隨機映射運算的輸入混合步驟以便生成下一個輸出字符,直到字符的整個隨機序列已被生成為止;

所述隨機映射運算的輸出到其他隨機映射運算的輸入的分派以及被認(rèn)為是結(jié)果的所述隨機映射運算的輸出在應(yīng)用所要求保護的方法之前被定義;

(e)輸出所生成的被認(rèn)為是結(jié)果的字符的隨機序列。

2.一種用于將明文字符的序列變換成密文字符的序列并且反之亦然的對稱密鑰編碼和解碼密碼設(shè)備系統(tǒng),包括:

(a)用于對字符的序列進行加密的裝置,

(b)用于在解密方案與加密方案不同的情況下對字符的加密序列進行解密的裝置,

(c)用于生成一個或數(shù)個隨機序列的裝置;

所有所述裝置是隱結(jié)構(gòu),并且所述隨機序列生成器中的每一個被實現(xiàn)在所述裝置中以生成一個或數(shù)個隨機序列,所述生成器為先前述及的用于對字符的序列進行加密或者解密的裝置生成秘密密鑰,包括:

(a)一個或數(shù)個偽隨機序列生成模塊,

(b)一個或數(shù)個隨機映射模塊;

所述隨機映射模塊的每一個將來自傳入序列的字符映射成傳出序列的隨機字符,所述傳入序列是:

(a)另一隨機映射模塊的傳出序列,

(b)或數(shù)個其他隨機映射模塊的傳出序列的通過混合運算進行的組合,

(c)或一個偽隨機序列生成模塊的傳出序列,

(d)或一個偽隨機序列生成模塊的傳出序列的以及一個或數(shù)個其他隨機映射模塊的傳出序列的通過混合運算進行的組合,

(e)或一個偽隨機序列生成模塊的傳出序列的以及反饋隨機序列的通過混合運算進行的組合,所述反饋隨機序列是所考慮的隨機映射模塊的傳出序列,

(f)或與所述反饋隨機序列交替的一個偽隨機序列生成模塊的傳出序列,所述反饋隨機序列是所考慮的隨機映射模塊的傳出序列,

(g)或一個偽隨機序列生成模塊的傳出序列的、一個或數(shù)個其他隨機映射模塊的傳出序列的以及所述反饋隨機序列的通過混合運算進行的組合,所述反饋隨機序列是所考慮的隨機映射模塊的傳出序列,

(h)或一個偽隨機序列生成模塊的傳出序列的以及一個或數(shù)個其他隨機映射模塊的傳出序列的通過混合運算進行的組合,所述組合與所述反饋隨機序列交替,所述反饋隨機序列是所考慮的隨機映射模塊的傳出序列;

所述及的隨機映射模塊中的每一個按圖挑選協(xié)議使用隨機轉(zhuǎn)移圖,以便將它們的傳入序列的每個字符映射成用于做出一個傳出隨機序列,所述隨機轉(zhuǎn)移圖是通過隨機性生成而生成的,所述隨機性生成不是利用偽隨機生成器做出的,并且被提供給隨機映射模塊,每個隨機映射模塊有一個隨機轉(zhuǎn)移圖。

3.根據(jù)權(quán)利要求5所述的密碼系統(tǒng),還包括:

用于對隨機轉(zhuǎn)移圖進行變換的裝置;

所述裝置是隱結(jié)構(gòu),并且來自用于對隨機轉(zhuǎn)移圖進行變換的所述裝置的隨機轉(zhuǎn)移圖變換模塊輸入:

(a)來自述及的隨機映射模塊的隨機轉(zhuǎn)移圖,所述隨機轉(zhuǎn)移圖必須針對所述隨機映射模塊進行改變,

(b)變換隨機字符;

所述變換隨機字符是:

(a)提供的參數(shù),其是反復(fù)迭代直到達(dá)到已被輸入的所述隨機轉(zhuǎn)移圖的長度為止的隨機字符,

(b)或另一隨機序列生成模塊的輸出;

所述及的隨機轉(zhuǎn)移圖變換模塊在其輸入之間做混合運算,以便生成要代替已被輸入到所述及的隨機轉(zhuǎn)移圖變換模塊的所述隨機轉(zhuǎn)移圖而被發(fā)送回到所述隨機映射模塊的次級隨機轉(zhuǎn)移圖,所述隨機轉(zhuǎn)移圖必須根據(jù)所述隨機映射模塊進行改變。

4.根據(jù)權(quán)利要求6所述的密碼系統(tǒng),還包括:

用于生成偽隨機序列生成器種子的裝置;

所述裝置是隱結(jié)構(gòu),并且來自用于生成種子的所述裝置的所述種子生成模塊使用種子計算算法由所提供的或挑選的字符為所述及的用于生成一個或數(shù)個隨機序列的裝置的所述偽隨機序列生成模塊計算種子。

5.根據(jù)權(quán)利要求7所述的密碼系統(tǒng),其中提供給所述的種子生成模塊的所述挑選的字符在由所述及的用于生成一個或數(shù)個隨機序列的裝置所存儲的一個或數(shù)個隨機轉(zhuǎn)移圖的一部分中挑選。

6.根據(jù)權(quán)利要求1所述的方法,其中所述生成的隨機轉(zhuǎn)移圖提供步驟使用以下步驟來執(zhí)行:

(a)在第一時間,使用非暫時性計算機可讀介質(zhì)將所述隨機轉(zhuǎn)移圖轉(zhuǎn)移到所述及的將生成隨機字符序列的計算機;

(b)在接下來的時間,通過經(jīng)由以下密碼安全的通信信道創(chuàng)建步驟所創(chuàng)建的密碼安全的通信信道將新的隨機轉(zhuǎn)移圖轉(zhuǎn)移到所考慮的將生成字符的隨機序列的計算機:

按加密方案和解密方案使用所輸出生成的被認(rèn)為是結(jié)果的字符的隨機序列以便創(chuàng)建密碼安全的通信信道。

7.一種上面存儲有用于使一個或數(shù)個計算機充當(dāng)根據(jù)權(quán)利要求5的密碼系統(tǒng)的程序的非暫時性計算機可讀存儲介質(zhì),其中充當(dāng)所要求保護的密碼系統(tǒng)的所述計算機均包括被實現(xiàn)在所述及的用于生成一個或數(shù)個隨機序列的裝置中的一個或數(shù)個記載的隨機序列生成器的功能性。

8.一種使用要求保護的密碼系統(tǒng)的方法,所述方法包括以下步驟:

(a)在第一時間,使用非暫時性計算機可讀介質(zhì)將所考慮的密碼系統(tǒng)所需的隨機轉(zhuǎn)移圖轉(zhuǎn)移到其述及的用于生成一個或數(shù)個隨機序列的裝置;

(b)在接下來的時間,通過使用所考慮的密碼系統(tǒng)所創(chuàng)建的密碼安全的信道將新的隨機轉(zhuǎn)移圖轉(zhuǎn)移到所述密碼系統(tǒng)的述及的用于生成一個或數(shù)個隨機序列的裝置。

說明或聲明(按照條約第19條的修改)

進行這些修改是為了解決一些模糊性問題并更正表格。

人們似乎可以在權(quán)利要求書中讀取關(guān)于所公開的流密碼的說明。因此,由于獨創(chuàng)性來自隨機密鑰生成,我們已將方法權(quán)利要求集中于該方面(設(shè)備權(quán)利要求保留其加密/解密部件)。

此外,即使已在說明書中做出了規(guī)定,我們?nèi)栽跈?quán)利要求書中規(guī)定了不使用偽隨機性的隨機性生成,這與所公開的流密碼區(qū)別開來。這應(yīng)當(dāng)使得不能在權(quán)利要求書中讀取此類所公開的流密碼。

另外,許多權(quán)利要求已按新的形式重寫,以便更能被一些國家/地區(qū)接受。該重寫可以使得文本更加準(zhǔn)確并更正錄入錯誤。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1