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

流加密技術(shù)的制作方法

文檔序號:11455401閱讀:316來源:國知局
流加密技術(shù)的制造方法與工藝

本公開大體上涉及加密和/或解密。更具體地而非限制地提供了一種生成用于對數(shù)據(jù)流進(jìn)行加密或解密的密鑰流的方法和設(shè)備。此外,提供了一種用于對數(shù)據(jù)流進(jìn)行加密或解密的系統(tǒng)。



背景技術(shù):

無線通信需要有效和安全的加密(encryption),也稱為加密(cipher)。對于更高效的加密技術(shù)(也稱為密碼)的需求預(yù)期將隨新一代無線通信(例如,在5g系統(tǒng)中)而增加,原因在于預(yù)期所需的數(shù)據(jù)速率顯著增加。此外,例如交通、電子衛(wèi)生、智能城市管理和環(huán)境監(jiān)測等對于社會至關(guān)重要的服務(wù)需要提供高水平保證的安全機(jī)制。

為了加密的目的,存在兩種類型的密碼,即塊密碼和流密碼。已經(jīng)對塊密碼研究了50多年。收集的關(guān)于它們的函數(shù)定義和密碼分析的知識導(dǎo)致了被廣泛接受用于對于各種攻擊的強(qiáng)大抵抗的高級加密標(biāo)準(zhǔn)(aes)。塊密碼可以在允許它們作為流密碼操作的特殊模式中使用,其中塊密碼的數(shù)據(jù)速率是可由流密碼實(shí)現(xiàn)的數(shù)據(jù)速率的上限。3g和4g無線通信系統(tǒng)使用專用流密碼snow3g或基于塊密碼的流密碼。然而,在加密數(shù)據(jù)速率低于1gbps的情況下,現(xiàn)有密碼將在針對這種數(shù)據(jù)速率的最苛刻的lte-advanced和5g應(yīng)用中造成瓶頸。

雖然軍事應(yīng)用長期以來依賴于流密碼,但是對流密碼的積極公開調(diào)查僅開始于約30年前,其中已經(jīng)查詢了傳統(tǒng)流密碼的安全性。例如,在全球移動(dòng)通信系統(tǒng)(gsm)標(biāo)準(zhǔn)中使用的流行流密碼a5/1和a5/2以及在藍(lán)牙中使用的流密碼e0已被發(fā)現(xiàn)容易受到e.biham和o.dunkelman在″cryptanalysisofthea5/1gsmstreamcipher″,progressincryptology,indocrypt2000,pp.43-51,springer,2000中描述的多種攻擊。結(jié)果,流密碼a5/1由基于塊密碼的流密碼a5/3替代,并且隨后禁止使用流密碼a5/2。

根據(jù)e.tews、r.-p.weinmann和a.pychkine在“breaking104-bitwepinunderaminute”,cryptologyeprintarchive:report2007/120,2007(http://eprint.iacr.org/2007/120)中所述,如果不丟棄輸出密鑰流的開頭、如果使用非隨機(jī)或相關(guān)密鑰、或如果使用單個(gè)密鑰流兩次,那么用于根據(jù)原始ieee802.11標(biāo)準(zhǔn)來保障無線網(wǎng)絡(luò)的另一普遍使用的流密碼rc4是脆弱的。因此,ieee802.11i標(biāo)準(zhǔn)中aes取代了流密碼rc4。

盡管上述過去的安全問題,預(yù)期對于安全高效的流密碼的需求在未來幾代的無線通信中增加,原因在于5g無線通信被設(shè)想為提供比當(dāng)前l(fā)te部署高1000倍量級的業(yè)務(wù)量,同時(shí)改進(jìn)服務(wù)質(zhì)量(m.olsson等人,5green:“towardsgreen5gmobilenetworks”,wimob,pp.212-216,2013)。預(yù)期在一般場景下可用數(shù)百mbps的消費(fèi)者數(shù)據(jù)速率,以及在特定場景中可用若干gbps。此外,需要在針對加工業(yè)的安全或控制機(jī)制、針對配電網(wǎng)或針對交通的使用情況下支持幾毫秒或更短的低等待時(shí)間(愛立信白皮書“5g無線電接入”,2013年6月)。如果可以滿足必要的安全要求,可能由于它們的效率,專用流密碼可能在該發(fā)展中發(fā)揮重要作用。



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

因此,需要一種提供高水平的保證的有效的流加密技術(shù)。

關(guān)于一個(gè)方面,提供了一種生成用于對數(shù)據(jù)流進(jìn)行加密或解密的密鑰流的方法。該方法包括:第一步驟:操作以伽羅瓦配置實(shí)現(xiàn)的包括n個(gè)寄存器級的非線性反饋移位寄存器(nlfsr),其包括,其中實(shí)現(xiàn)的n個(gè)寄存器級中的至少一個(gè)寄存器級可由線性反饋移位寄存器(lfsr)中的至少一個(gè)寄存器級表示,以及其中實(shí)現(xiàn)的n個(gè)寄存器級的第一子集可由第二nlfsr的第二子集表示,其中在所述第二nlfsr中接收非線性反饋的寄存器級的數(shù)量大于1并且小于在實(shí)現(xiàn)的nlfsr中接收非線性反饋的寄存器級的數(shù)量;以及第二步驟:從非線性輸出函數(shù)輸出密鑰流,其中非線性輸出函數(shù)的輸入與實(shí)現(xiàn)的nlfsr的n個(gè)寄存器級中的至少兩個(gè)相耦合。

以伽羅瓦配置實(shí)現(xiàn)可以有助于例如在減小傳播延遲和/或等待時(shí)間方面提高效率。盡管伽羅瓦配置具有相互關(guān)聯(lián)的結(jié)構(gòu),憑借可表示性,用該技術(shù)的至少一些實(shí)施例可以實(shí)現(xiàn)高水平的保證。例如,通過證明對某些類別的攻擊的抵抗,nlfsr表示和lfsr表示可以建立高水平的保證。如果另一fsr的寄存器級或寄存器級的子集生成相同的序列(例如,針對一個(gè)fsr和另一fsr經(jīng)歷相同的初始化或等效初始化),一個(gè)反饋移位寄存器(fsr)的寄存器級或寄存器級的子集可由該另一fsr表示。

伽羅瓦配置可以涵蓋任何具有多于一個(gè)接收反饋的寄存器級的fsr。反饋可能包括任何非平凡(nontrival)更新函數(shù)。術(shù)語“非平凡”可以涉及除(例如,多于)單純移位函數(shù)之外的任何更新函數(shù)。除移位函數(shù)之外的更新函數(shù)的項(xiàng)可以被稱為反饋函數(shù)。反饋函數(shù)可以是位于接收反饋的寄存器級移位方向的下游的一個(gè)或多個(gè)寄存器級的任何函數(shù)。斐波納契配置可以包括任何具有不多于一個(gè)接收反饋的寄存器級的fsr。

一些或所有函數(shù)(例如,線性和非線性反饋函數(shù)和/或非線性輸出函數(shù))可以是布爾函數(shù)(即,提供布爾值)。每個(gè)寄存器級可以表示布爾值。函數(shù)可以包括一個(gè)或多個(gè)項(xiàng)。僅取決于一個(gè)寄存器級的項(xiàng)也可以被稱為線性項(xiàng)。函數(shù)的常數(shù)項(xiàng)和線性項(xiàng)可以被稱為函數(shù)的線性部分。僅包括常數(shù)和線性項(xiàng)的函數(shù)也可以被稱為線性函數(shù)。取決于多于一個(gè)寄存器級的項(xiàng)可以被稱為非線性項(xiàng)。包括至少一個(gè)非線性項(xiàng)的函數(shù)也可以被稱為非線性函數(shù)??梢酝ㄟ^函數(shù)內(nèi)的異或運(yùn)算來連接多個(gè)項(xiàng)。多于一個(gè)寄存器級的布爾值可以通過非線性項(xiàng)內(nèi)的與運(yùn)算來連接。

非線性輸出函數(shù)可以包括線性項(xiàng)。非線性輸出函數(shù)的線性項(xiàng)(即,非線性輸出函數(shù)的線性部分)可以僅取決于nlfsr的實(shí)現(xiàn)的n個(gè)寄存器級的第一子集。

備選地或此外,可以選擇非線性輸出函數(shù)和實(shí)現(xiàn)的nlfse,使得非線性輸出函數(shù)的所有偏差最大的線性近似僅取決于nlfsr的實(shí)現(xiàn)的n個(gè)寄存器級的第一子集。對于給定布爾函數(shù),即具有n個(gè)變量的z(x1,...,xn)和具有相同變量的線性函數(shù)a(x1,...,xn),可以根據(jù)下式計(jì)算針對z的近似a的偏差e:

pr[z(x1,...,xn)=a(x1,...,xn)]=(1+e)/2,

其中pr[“條件”]是假設(shè)變量(x1,...,xn)的均勻分布的情況下滿足“條件”的概率。

對于n個(gè)布爾變量(x1,...,xn),可能存在線性函數(shù)a(x1,...,xn)的有限集合。通過將非線性輸出函數(shù)z的真值表與集合中的每個(gè)線性函數(shù)a的真值表進(jìn)行比較,可以確定一個(gè)或多個(gè)偏差最大的線性近似,例如作為大多數(shù)情況下等于z的一個(gè)或多個(gè)線性函數(shù)a(或在大多數(shù)情況下不同,因?yàn)榭紤]到a的互補(bǔ)會給出相同的信息)。備選地,可以使用與比較所有真值表相比更高效的算法。

一個(gè)或多個(gè)偏差最大的線性近似可以用作確定密鑰流是否易受攻擊的工具。由于近似值采用來自可由第二nlfsr中相應(yīng)寄存器級表示的寄存器級的輸入,可以確定使用密鑰流的密碼的安全性。

在實(shí)現(xiàn)的nlfsr和/或第二nlfsr中接收非線性反饋的寄存器級的數(shù)量可以是偶數(shù)。可由lfsr表示的至少一個(gè)寄存器級可以布置在實(shí)現(xiàn)的nlfsr中的所有非線性反饋的移位方向下游。

至少一個(gè)寄存器級可以包括移位方向上的最后一級(例如移位寄存器的輸出)。備選地或附加地,至少一個(gè)寄存器級可以是第一子集的子集,例如,第一子集的包括接收非線性反饋的最后一個(gè)寄存器級以及可選地在移位方向更下游的一個(gè)或多個(gè)級在內(nèi)的一部分。實(shí)現(xiàn)的n個(gè)寄存器級中的至少一個(gè)寄存器級還可由第二nlfsr中的至少一個(gè)寄存器級表示。

在第二nlfsr中接收非線性反饋的寄存器級中的每一個(gè)可以表示實(shí)現(xiàn)的nlfsr中的寄存器級??梢葬槍邮辗蔷€性反饋的寄存器級中的每一個(gè),根據(jù)與相應(yīng)寄存器級相對應(yīng)地移位的公共反饋函數(shù)計(jì)算第二nlfsr中的非線性反饋。

公共反饋函數(shù)的非線性可以大于500·n。公共反饋函數(shù)的彈性可以等于或大于5。公共反饋函數(shù)的代數(shù)次數(shù)可以等于或大于4。公共反饋函數(shù)可以包括小于0.15·n個(gè)二進(jìn)制布爾運(yùn)算。實(shí)現(xiàn)的nlfsr的周期可以是2n-1。

第二nlfsr和lfsr中的每一個(gè)可以包括n個(gè)寄存器級。第二nlfsr可以具有伽羅瓦配置。lfsr可以具有斐波納契配置。

第一子集可以是實(shí)現(xiàn)的n個(gè)寄存器級的真子集。第一子集可以包括實(shí)現(xiàn)的nlfsr的兩個(gè)以上連續(xù)寄存器級。

實(shí)現(xiàn)的n個(gè)寄存器級中的每一個(gè)可以表示一個(gè)比特。實(shí)現(xiàn)的nlfsr中的非線性反饋中的每一個(gè)可以提供根據(jù)異或(或互斥析取)由相應(yīng)寄存器級接收的布爾值作為移位的結(jié)果。

非線性輸出函數(shù)可以為實(shí)現(xiàn)的nlfsr的每個(gè)循環(huán)提供布爾值。密鑰流可以是比特流。非線性輸出函數(shù)可以是平衡布爾函數(shù)。非線性輸出函數(shù)的非線性可以大于2000·n。非線性輸出函數(shù)的彈性可以等于或大于5。非線性輸出函數(shù)的代數(shù)次數(shù)可以等于或大于6。非線性輸出函數(shù)的實(shí)現(xiàn)可以包括小于0.1·n個(gè)二進(jìn)制布爾運(yùn)算。例如,可以使用小于0.1·n個(gè)二進(jìn)制布爾運(yùn)算來計(jì)算非線性輸出函數(shù)。

非線性輸出函數(shù)所依賴的寄存器級中的一半以上可以從nlfsr的所實(shí)現(xiàn)的n個(gè)寄存器級的全正差集中選擇。如果其元素之間的所有正成對差不同,則集合可以被稱為全正差集。在″fastsoftwareencryption″,lecturenotesincomputerscience,vol.1039,pp.173-188,cambridge,1996中j.dj.golic的“onthesecurityofnonlinearfiltergenerators”中可以找到全正差集的附加屬性。備選地或附加地,非線性輸出函數(shù)所依賴的所有寄存器級在實(shí)現(xiàn)的nlfsr中可以是不連續(xù)的。

非線性輸出函數(shù)可以用二叉樹配置流水線化。二叉樹配置的組合電路深度可以至多為2。

可以對實(shí)現(xiàn)的nlfsr的n個(gè)寄存器進(jìn)行初始化。實(shí)現(xiàn)的n個(gè)寄存器級的第一子集可以至少部分地由密鑰來初始化。初始化還可以包括對實(shí)現(xiàn)的nlfsr計(jì)時(shí)n個(gè)循環(huán)。在對n個(gè)循環(huán)進(jìn)行初始化期間,可以將非線性輸出函數(shù)反饋給實(shí)現(xiàn)的nlfsr。在初始化之后,可以將數(shù)據(jù)流和從非線性輸出函數(shù)輸出的密鑰流相加,用于對數(shù)據(jù)流進(jìn)行加密或解密。

關(guān)于另一方面,提供了一種計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)程序產(chǎn)品包括:當(dāng)由一個(gè)或更多個(gè)計(jì)算設(shè)備執(zhí)行所述計(jì)算機(jī)程序產(chǎn)品時(shí),用于執(zhí)行本文所公開的方法方面的步驟中的任意一個(gè)步驟的程序代碼部分。計(jì)算機(jī)程序產(chǎn)品可以存儲在計(jì)算機(jī)可讀記錄媒體上。計(jì)算機(jī)程序產(chǎn)品還可以被提供用于經(jīng)由數(shù)據(jù)網(wǎng)絡(luò)(例如,提供數(shù)據(jù)流的無線通信網(wǎng)絡(luò)和/或互聯(lián)網(wǎng))下載。

關(guān)于硬件方面,提供了一種生成用于對數(shù)據(jù)流進(jìn)行加密或解密的密鑰流的設(shè)備。該設(shè)備包括以伽羅瓦配置實(shí)現(xiàn)的包括n個(gè)寄存器級的非線性反饋移位寄存器(nlfsr)。實(shí)現(xiàn)的n個(gè)寄存器級中的至少一個(gè)寄存器級可由線性反饋移位寄存器(lfsr)中的至少一個(gè)寄存器級表示,以及實(shí)現(xiàn)的n個(gè)寄存器級的第一子集可由第二nlfsr的第二子集表示,其中在第二nlfsr中接收非線性反饋的寄存器級的數(shù)量大于1并且小于在實(shí)現(xiàn)的nlfsr中接收非線性反饋的寄存器級的數(shù)量。該設(shè)備還包括用于輸出密鑰流的非線性輸出函數(shù),其中非線性輸出函數(shù)的輸入與實(shí)現(xiàn)的nlfsr的n個(gè)寄存器級中的至少兩個(gè)耦合。

關(guān)于另一硬件方面,提供了一種生成用于對數(shù)據(jù)流進(jìn)行加密或解密的系統(tǒng)。該系統(tǒng)包括:適于根據(jù)上述硬件方面生成密鑰流的生成設(shè)備;適于對生成設(shè)備進(jìn)行初始化的初始化設(shè)備;以及適于將數(shù)據(jù)流和由生成設(shè)備生成的所述密鑰流相加以對所述數(shù)據(jù)流進(jìn)行加密或解密的相加設(shè)備。

設(shè)備和/或系統(tǒng)還可以適于執(zhí)行方法方面步驟中的任何一個(gè)。設(shè)備和/或系統(tǒng)還可以包括在方法方面的上下文中公開的任何特征。

上述方面中的任何一個(gè)可以在無線通信系統(tǒng)的接入點(diǎn)(例如,無線電基站)和/或用戶設(shè)備中實(shí)現(xiàn)。

附圖說明

下面,參考附圖中示出的示意性實(shí)施例更詳細(xì)地描述本公開,其中:

圖1示意性示出了用于對數(shù)據(jù)流進(jìn)行加密或解密的示例性系統(tǒng)的框圖,其包括生成用于對數(shù)據(jù)流進(jìn)行加密或解密的密鑰流的設(shè)備;

圖2示出了在圖1的設(shè)備中可實(shí)現(xiàn)的用于生成對數(shù)據(jù)流進(jìn)行加密或解密的密鑰流的方法的流程圖;

圖3示意性示出了可以在圖1的設(shè)備中實(shí)現(xiàn)的具有伽羅瓦配置的示例性非線性反饋移位寄存器(nlfsr)的框圖;

圖4示意性示出了表示圖3的實(shí)現(xiàn)的nlfsr的寄存器級的子集的示例性第二nlfsr的框圖;

圖5示意性示出了表示圖3的實(shí)現(xiàn)的nlfsr的至少一個(gè)寄存器級的示例性線性反饋移位寄存器(lfsr)的框圖;

圖6示意性示出了圖1的設(shè)備中可實(shí)現(xiàn)的非線性輸出函數(shù)的框圖;

圖7示意性示出了可以針對圖3的實(shí)現(xiàn)的nlfsr的初始化和運(yùn)算切換的非線性反饋函數(shù)的框圖;

圖8示出了對于給定單項(xiàng)式次數(shù)沒有通過最大次數(shù)單項(xiàng)式測試的最大數(shù)量的初始化循環(huán)的示例示意圖;

圖9示意性示出了實(shí)現(xiàn)圖1的設(shè)備的集成電路;以及

圖10示意性示出了包括圖9的集成電路的移動(dòng)終端。

具體實(shí)施方式

在以下描述中,為了解釋而非限制的目的,闡述了具體細(xì)節(jié)(例如,具體設(shè)備環(huán)境),以提供對本文公開技術(shù)的透徹理解。然而,對本領(lǐng)域技術(shù)人員將顯而易見的是,該技術(shù)可在脫離這些特定細(xì)節(jié)的其它實(shí)施例中實(shí)踐。此外,盡管主要針對諸如長期演進(jìn)(lte)的后繼者的無線通信網(wǎng)絡(luò)描述了以下實(shí)施例,但將顯而易見的是,本文描述的技術(shù)也可以在包括第三代合作伙伴計(jì)劃(3gpp)網(wǎng)絡(luò)、非3gpp網(wǎng)絡(luò)(例如,根據(jù)ieee802.3或ieee802.11標(biāo)準(zhǔn)系列)及其組合在內(nèi)的其他移動(dòng)和固定通信網(wǎng)絡(luò)、無線或有線的中實(shí)現(xiàn)。此外,所描述的技術(shù)可以在協(xié)議棧的一個(gè)或多個(gè)層上實(shí)現(xiàn),例如包括媒體訪問控制(mac)層、分組數(shù)據(jù)融合(pdcp)層、網(wǎng)絡(luò)層(例如根據(jù)互聯(lián)網(wǎng)協(xié)議或ip)、傳輸層(例如根據(jù)傳輸控制協(xié)議或tcp)和/或應(yīng)用層。

雖然在對數(shù)據(jù)流進(jìn)行加密的上下文中描述了該技術(shù),但該技術(shù)不限于處理數(shù)據(jù)流,具體地不限于處理無界數(shù)據(jù)流。該技術(shù)適用于可以被視為固定長度的流或消息序列(例如,數(shù)據(jù)分組)的單個(gè)數(shù)據(jù)項(xiàng)(例如,消息)。此外,該技術(shù)具體適用于易受竊聽的任何通信系統(tǒng),包括無線通信、有線通信和光纖通信。

此外,本領(lǐng)域技術(shù)人員將理解:本文解釋的服務(wù)、功能和步驟可以使用軟件功能結(jié)合編程微處理器、專用集成電路(asic)、現(xiàn)場可編程門陣列(fpga)、數(shù)字信號處理器(dsp)或例如包括先進(jìn)risc機(jī)器(arm)在內(nèi)的通用計(jì)算機(jī)來實(shí)現(xiàn)。還將理解:盡管以下實(shí)施例主要在方法和設(shè)備的上下文中描述,本發(fā)明可以體現(xiàn)在計(jì)算機(jī)程序產(chǎn)品中,以及體現(xiàn)在包括計(jì)算機(jī)處理器和耦合到該處理器的存儲器在內(nèi)的集中式或分布式系統(tǒng)中,其中,存儲器編碼有可以執(zhí)行本文公開的服務(wù)、功能和步驟的一個(gè)或更多個(gè)程序。

圖1示意性示出了用于對數(shù)據(jù)流進(jìn)行加密或解密的系統(tǒng)100。系統(tǒng)100包括初始化設(shè)備102、用于生成密鑰流的設(shè)備110和相加設(shè)備120。生成設(shè)備110包括以伽羅瓦配置實(shí)現(xiàn)的非線性反饋移位寄存器(nlfsr)112。生成設(shè)備110還包括與nlfsr112耦合的輸出函數(shù)118。在生成密鑰流128之前,實(shí)現(xiàn)的nlfsr112由初始化設(shè)備102基于密鑰126、以及可選地由固定的初始值(iv)進(jìn)行初始化。輸出函數(shù)將密鑰流128輸出到相加設(shè)備120。相加設(shè)備120將來自數(shù)據(jù)源的數(shù)據(jù)流122與密鑰流128組合。將得到的加密或解密的數(shù)據(jù)流提供給數(shù)據(jù)目的地124。

可以通過外部機(jī)制、可選地與現(xiàn)有技術(shù)組合來提供密鑰和/或iv。例如,密鑰可由密鑰管理機(jī)制(例如,根據(jù)3gppts33.401的lteaka或根據(jù)ietfrfc4306的ikev2)來提供。iv可以通過一些外部控制機(jī)制、同步機(jī)制或信令機(jī)制來提供,例如將iv與正在處理的流相關(guān)聯(lián)。例如,如果正在處理的流包括或是數(shù)據(jù)分組,iv可以包括分組標(biāo)識符、序列號、分組的發(fā)送者的標(biāo)識符、密碼隨機(jī)數(shù)等中的至少一個(gè)。

系統(tǒng)100也被稱為流密碼。系統(tǒng)100可以被實(shí)現(xiàn)為二進(jìn)制加法流密碼,其中密鑰流128、明文122和密文124是二進(jìn)制序列。由生成設(shè)備110作為密鑰流生成器采用秘密密鑰126和初始值(iv)作為種子生成密鑰流128。生成設(shè)備110生成作為0和1的長偽隨機(jī)序列的密鑰流128。然后通過密鑰流128和明文122的逐比特模2加法獲得密文。系統(tǒng)100對于無線應(yīng)用是有利的,原因在于消息大小沒有擴(kuò)展,并且不傳播傳輸比特錯(cuò)誤(例如,不擴(kuò)散到密文124中的稍后比特位置)。

在eufp7研究項(xiàng)目“estream”中,許多流密碼(包括grain和trivium)被設(shè)計(jì)為遵循以下信念:流密碼可以比塊密碼更快和更小。然而,近年來,已經(jīng)提出了若干其大小與grain和trivium相當(dāng)?shù)膲K密碼。一些熟知的示例包括:katan、led、klein、present、piccolo和twine。通常針對100khz時(shí)鐘頻率給出密碼的吞吐量以便可比,原因在于這是rfid標(biāo)簽的典型時(shí)鐘頻率,盡管更高的時(shí)鐘頻率通常是可能的。例如,j.borghoff等人,″prince,alow-latencyblockcipherforgeneralvasivecomputingapplications“,advancesincryptologyasiacrypt,vol.7658”lecturenotesincomputerscience“,pp.208-225,springer2012報(bào)告了使用稍微超過3000等效門(ge)和90nmcmos技術(shù)達(dá)到約1gbps的實(shí)施方式。

設(shè)備110在更緊湊的設(shè)計(jì)(例如,具有小于3000ge)中定義了一類用于更高數(shù)據(jù)速率的流密碼。該類中的流密碼作為主要組成部分包括:具有伽羅瓦配置的n比特nlfsr112和采用來自nlfsr112的級的輸入的非線性輸出布爾函數(shù)118。

nlfsr112包括以伽羅瓦配置實(shí)現(xiàn)的n個(gè)寄存器級。實(shí)現(xiàn)的n個(gè)寄存器級中的至少一個(gè)寄存器級可由線性反饋移位寄存器(lfsr)中的至少一個(gè)寄存器級表示。實(shí)現(xiàn)的n個(gè)寄存器級的第一子集可由第二nlfsr的第二子集表示,其中在第二nlfsr中接收非線性反饋的寄存器級的數(shù)量大于1而小于實(shí)現(xiàn)的nlfsr中接收非線性反饋的寄存器級的數(shù)量。非線性輸出函數(shù)118的輸入與實(shí)現(xiàn)的nlfsr112的n個(gè)寄存器級中的至少兩個(gè)耦合。

圖2示出了操作生成設(shè)備110的方法的流程圖。在步驟202中,nlfsr112根據(jù)其反饋函數(shù)來操作。在方法200的步驟204中,非線性輸出函數(shù)118輸出密鑰流128。

設(shè)備110的以下實(shí)施例是這類流密碼的示例。圖3示意性示出了設(shè)備110中的nlfsr112的實(shí)施例。nlfsr112包括n個(gè)寄存器級302,例如n=256。在附圖標(biāo)記304處示出了寄存器級302的示例性指數(shù)i=0...n-1。

任何反饋移位寄存器(fsr)的狀態(tài)是其狀態(tài)變量xi的值的向量x。在每個(gè)時(shí)鐘循環(huán)中,針對{0,1,...,n-1}中的每個(gè)i,通過(例如,同時(shí)地)將每個(gè)寄存器級i的值更新為相應(yīng)反饋函數(shù)fi的值來根據(jù)fsr的當(dāng)前狀態(tài)確定fsr的下一狀態(tài)。

第i個(gè)寄存器級302的比特值xi在每個(gè)周期中根據(jù)平凡移位函數(shù)

fi(x)=xi+1

移位一個(gè)三角形包括從移位方向的最后一個(gè)寄存器級x0(也稱為輸出級)到第一寄存器級xn-1(也稱為輸入級)的循環(huán)移位303。

加法被實(shí)現(xiàn)為逐比特“異或”運(yùn)算。乘法“·”被實(shí)現(xiàn)為逐比特“與”運(yùn)算。用于實(shí)現(xiàn)nlfsr112中的反饋和用于定義非線性輸出函數(shù)118的布爾函數(shù)gf(2n)→gf(2)使用代數(shù)范式(anf)(即具有以下類型的伽羅瓦域gf(2)的多項(xiàng)式)來表示

其中ci∈{0,1},(i0,i1,...,in-1)是多指數(shù)i的二進(jìn)制擴(kuò)展,并且x=(x0,x1,...,xn-1)。

更具體地,實(shí)現(xiàn)的nlfsr112包括以下更新函數(shù):

所有未提及的更新函數(shù)都是平凡移位函數(shù)。上述更新函數(shù)(1.1)和(1.2)中也包括平凡移位函數(shù)作為更新函數(shù)的第一項(xiàng)。

更新函數(shù)(1.1)和(1.2)還包括與反饋函數(shù)306、308和310相對應(yīng)的一個(gè)或多個(gè)項(xiàng)。反饋函數(shù)(1.1)包括由標(biāo)識的線性部分306和由標(biāo)識的非線性部分308。例如,更新函數(shù)f255包括在附圖標(biāo)記309處所示的非線性部分x41·x70。

反饋函數(shù)(1.2)包括移位k=38的非線性部分其由標(biāo)識并在附圖標(biāo)記310處示出。反饋函數(shù)(1.2)不包括線性部分。

線性部分和非線性部分被反饋給引導(dǎo)至接收非線性反饋函數(shù)(1.1)的寄存器級n-1至n-b-1中的一些的相加點(diǎn)312至314。反饋(1.1)的寄存器寬度(breadth)在圖3所示的實(shí)施例中例如等于b=24。

移位的非線性部分被反饋給引導(dǎo)至接收非線性反饋函數(shù)(1.2)的寄存器級n-1至n-b-1中的一些的相加點(diǎn)316至318。作為并行移位的結(jié)果,反饋(1.2)的寄存器寬度等于反饋(1.1)的寄存器寬度,例如等于b=24。

實(shí)現(xiàn)的nlfsr112包括接收非平凡反饋的14個(gè)寄存器級,即nlfsr112具有伽羅瓦配置(簡稱為伽羅瓦nlfsr)。此外,反饋函數(shù)的組(1.1)和(1.2)中的每一個(gè)包括7個(gè)非平凡反饋函數(shù),并且因此可以被認(rèn)為是伽羅瓦子配置。

僅包括一個(gè)接收非平凡反饋的寄存器級的反饋移位寄存器被稱為斐波納契配置。對于給定的伽羅瓦nlfsr,伽羅瓦-斐波納契變換是明確定義的和唯一的。伽羅瓦-斐波納契變換可以被實(shí)現(xiàn)為與e.dubrova在“atransformationfromthefibonaccitothegaloisnlfsrs”,ieeetransactionsoninformationtheory,vol.55,2009,pp.5263-527所描述的斐波納契-伽羅瓦變換的反過程。

簡單地說明伽羅瓦-斐波納契變換,以提供對技術(shù)的透徹理解。用g標(biāo)識以伽羅瓦配置實(shí)現(xiàn)的n比特nlfsr112的(至少部分非線性的)反饋函數(shù)fi的非平凡部分,nlfsr112包括根據(jù)以下各式的反饋函數(shù)fi:

以及

其中通過異或運(yùn)算實(shí)現(xiàn)加法

通過將i<n-1的所有函數(shù)gi(x)移動(dòng)至反饋函數(shù)fn-1(x)并將每個(gè)gi(x)的所有變量的指數(shù)增加(n-1)-i來完成伽羅瓦-斐波納契變換。令gi(x<<(n-1)-i)標(biāo)識其中所有變量的指數(shù)增加(n-1)-i的函數(shù)gi(x)。伽羅瓦-斐波納契變換的結(jié)果是以下nlfsr:

fn-2(x)=xn-1,

f1(x)=x2,以及

f0(x)=x1

如果滿足以下與具有伽羅瓦配置的函數(shù)gi(x)的變量的指數(shù)相關(guān)的條件,變換結(jié)果通常使得在另一nlfsr中在輸出級處生成與原始nlfsr相同的序列集合:針對每個(gè)i∈{t,t+1,...,n-1},具有伽羅瓦配置的相應(yīng)函數(shù)gi(x)的最大變量指數(shù)小于或等于t,其中t是最大指數(shù),使得對于所有j{0,1,...,t-1},gj(x)=0。

nlfsr112具有可以通過應(yīng)用伽羅瓦-斐波那契變換為(并且因此特別地可表示為)生成與nlfsr112的輸出級x0的輸出序列相同集合的n比特lfsr的屬性。該屬性也被稱為lfsr可表示性??偤椭械姆蔷€性項(xiàng)

抵消。

伽羅瓦-斐波納契變換是唯一的并可以很容易地計(jì)算它。因此,該變換允許容易地確定包括nlfsr的給定流密碼是否是設(shè)備110的實(shí)現(xiàn)。如果給定的nlfsr可簡化為lfsr116,則給定的nlfsr是實(shí)現(xiàn)的nlfsr112。圖5中示出了示例lfsr116。

此外,nlfsr112具有可變換為(并且因此具體地可表示為)包括少于實(shí)現(xiàn)的nlfsr112中的反饋函數(shù)的偶數(shù)個(gè)非平凡反饋函數(shù)的第二n比特nlfsr的屬性。換言之,寄存器寬度b可以在第二nlfsr中簡化為1。該屬性也被稱為nlfsr可表示性。圖4中示出了示例性第二nlfsr114。

在針對圖3所示的實(shí)現(xiàn)的nlfsr112和表示實(shí)現(xiàn)的nlfsr112的第二nlfsr114的實(shí)施例中,在第二nlfsr114中接收非線性反饋的寄存器級217和255的數(shù)量是2,即大于1且小于在實(shí)現(xiàn)的nlfsr112中接收非線性反饋的14個(gè)寄存器級193、197、201、205、209、213、217、231、235、239、243、247、251、255的數(shù)量。

可以實(shí)現(xiàn)nlfsr可表示性,原因在于實(shí)現(xiàn)的nlfsr112可變換為n比特nlfsr114,其僅具有如附圖標(biāo)記406和408所示的

fn-1(x0,x1,...,xn-1)=x0+fl(x1,...,xn-1)+fn(x1,...,xn-1),

以及如附圖標(biāo)記410所示的

fn-1-k(x0,x1,...,xn-1)=xn-k+fn(x1-k,...,xn-1-k),

兩種類型的非平凡反饋函數(shù),其中“-”是減法模n。例如,伽羅瓦-斐波納契變換分別應(yīng)用于反饋函數(shù)的組(1.1)和(1.2)。由于數(shù)量為2的非平凡反饋函數(shù),所得到的第二nlfsr114具有伽羅瓦配置。更具體地,第二nlfsr114可以被稱為由k個(gè)寄存器級相對于彼此移位的2個(gè)斐波納契配置的級聯(lián)。

實(shí)現(xiàn)的nlfsr112的寄存器級n-b-1至n-k生成與第二nlfsr114在寄存器級n-1至n-k處相同的序列集合,并且實(shí)現(xiàn)的nlfsr112的寄存器級n-b-k-1至0生成與第二nlfsr114在寄存器級n-k-1到0處相同的序列集合。

在實(shí)現(xiàn)的nlfsr112和表示實(shí)現(xiàn)的nlfsr112的第二nlfsr114的實(shí)施例中,包括實(shí)現(xiàn)的n個(gè)寄存器級的指數(shù)i=0,...,193和218,...,231的第一子集可由第二nlfsr114的第二子集i=24,...,217和242,...,255表示。

nlfsr可表示性(實(shí)現(xiàn)的nlfsr112到第二nlfsr114的變換性)和普通非線性反饋函數(shù)的k移位暗示lfsr可表示性(實(shí)現(xiàn)的nlfsr112到lfsr116的變換性),例如,由于fn(x1-k,...,xn-1-k)可移動(dòng)至fn-1(x0,x1,...,xn-1)使得非線性反饋函數(shù)彼此抵消。

在具體實(shí)施例中,從反饋函數(shù)組(1.1)開始,應(yīng)用伽羅瓦-斐波納契變換生成:

f255(x)的線性部分fl(x)包括6個(gè)變量,并與以下次數(shù)為256的本原多項(xiàng)式相對應(yīng)

1+x12+x48+x115+x133+x213+x256(3)

線性部分fl(x)的6個(gè)變量的指數(shù)形成全正差集

{0,12,48,115,133,213}。

非線性部分fn(x)是12個(gè)變量的彎曲函數(shù)(bentfunction)。因此,非線性反饋函數(shù)f255(x)是平衡的,具有非線性26·(211-25)=129024、彈性5和代數(shù)次數(shù)4。由于實(shí)施的nlfsr112和第二nlfsr114是等效的(即,生成第一子集中的相同的序列),實(shí)現(xiàn)的nlfsr112的函數(shù)f231(x)具有相同的屬性。

非線性部分fn(x)的12個(gè)變量的指數(shù)形成全正差集

。{41,46,52,55,62,70,74,87,110,130,157,183}

類似地,從反饋函數(shù)組(1.2)開始,應(yīng)用伽羅瓦-斐波納契變換生成f255(x)的非線性部分fn(x)的附圖標(biāo)記410處所示的移位版本fns(x):

如圖4中所示,fn(x)的“移位”版本fns(x)(其中每個(gè)變量xi被xi-k替換)與第二nlfsr114的寄存器級f217相加以消除非線性影響。結(jié)果,第二nlfsr114的寄存器級n-k-1至0生成由生成多項(xiàng)式(3)導(dǎo)出的線性序列。

已知以這種方式構(gòu)造的nlfsr具有周期2n-1,其中n是寄存器的大小(e.dubrova,“ascalablemethodforconstructinggaloisnlfsrswithperiod2n-1usingcross-jointpairs”,ieeetransactionsoninformationtheory,vol.1,no.59,pp.703-709,2013)。因此,第二nlfsr114具有周期2256-1。由于實(shí)現(xiàn)的nlfsr112與第二nlfsr114等效,實(shí)現(xiàn)的nlfsr112也具有周期2256-1。

lfsr可表示性(實(shí)現(xiàn)的nlfsr112至lfsr116的變換性)暴露了技術(shù)限制,原因在于大多數(shù)nlfsr不能變換為lfsr。作為示例,nlfsr112可以通過(例如,隨機(jī)地)生成指數(shù)并快速驗(yàn)證lfsr可表示性來構(gòu)造,其可以被重復(fù)直到滿足lfsr可表示性為止。

除要求從實(shí)現(xiàn)的nlfsr112到第二nlfsr114的變換性的nlfsr可表示性之外,伽羅瓦-斐波納契變換允許驗(yàn)證lfsr可表示性(即,向lfsr116的變換性)。

作為說明,假定具有以下反饋函數(shù)的4比特nlfsr112

f1(x)=x2,以及

f0(x)=x1.

伽羅瓦-斐波納契變換生成

f2(x)=x3

f1(x)=x2

f0(x)=x1.

因?yàn)?imgfile="bda0001319091320000154.gif"wi="454"he="59"img-content="drawing"img-format="gif"orientation="portrait"inline="no"/>nlfsr112簡化為lfsr116。僅當(dāng)所有非線性項(xiàng)在變換之后彼此抵消(僅當(dāng)每個(gè)項(xiàng)在fn-1(x)中出現(xiàn)偶數(shù)次時(shí),才會發(fā)生),nlfsr112將簡化為lfsr116。

根據(jù)當(dāng)前技術(shù)驗(yàn)證滿足生成設(shè)備110的條件的示例性方法可以包括:第一步驟,檢查是否滿足對于伽羅瓦到斐波納契變換、與函數(shù)gi(x)的變量的指數(shù)相關(guān)的條件。如果滿足條件,則該方法進(jìn)行至第二步驟。否則,候選nlfsr不能被變換為lfsr116,并且生成的指數(shù)例如被丟棄。

在第二步驟中,執(zhí)行伽羅瓦-斐波納契變換。如果變換得到lfsr116,針對nlfsr112選擇指數(shù)。否則,丟棄指數(shù)并且可選地重復(fù)該方法。

圖6示意性示出了生成設(shè)備110中非線性輸出函數(shù)118的實(shí)施例。輸出布爾函數(shù)118的所有偏差最大的線性近似值應(yīng)僅從實(shí)現(xiàn)的nlfsr112的寄存器級302中獲得輸入,該nlfsr112在變換的第二nlfsr114中具有等效的寄存器級。

在圖6所示的實(shí)施例中,非線性輸出函數(shù)118被指定如下:

非線性輸出函數(shù)z(x)包括6個(gè)變量的線性部分和14個(gè)變量的彎曲函數(shù)。因此,z(x)是平衡的并具有非線性26·(213-26)=520192、彈性5和代數(shù)次數(shù)6。

在非線性輸出函數(shù)118中,變量的20個(gè)指數(shù)中的15個(gè)取自以下全正差集:

{255,247,243,227,222,213,187,181,174,164,137,99,80,44,29}。

在非線性輸出函數(shù)118的七個(gè)雙積中,變量的第一和第二指數(shù)之間的差取自以下全正差集:

{26,16,22,4,58,130,135}。

獨(dú)立于非線性輸出函數(shù)118及其硬件實(shí)現(xiàn)的細(xì)節(jié),非線性輸出函數(shù)118的可并行計(jì)算步驟的最小數(shù)量可以小于或等于3。例如,在圖6示意性示出的非線性輸出函數(shù)118的實(shí)現(xiàn)包括兩個(gè)中間級602和604,分別用于計(jì)算級聯(lián)函數(shù)的組z1至z6和z7至z8:

z6(x)=x255x247x243x213x181x174,以及(5.1)

級604的結(jié)果與輸出值z組合:

因此,如附圖標(biāo)記606所示,可以并行執(zhí)行引導(dǎo)至級602的邏輯操作(5.1)。類似地,如附圖標(biāo)記608所示,可以并行地執(zhí)行引導(dǎo)至級604的邏輯操作(5.2)。

作為流水線化的二叉樹配置的結(jié)果,非線性輸出函數(shù)118的計(jì)算僅延遲兩個(gè)時(shí)鐘循環(huán)。雖然流水線使面積增加了8個(gè)觸發(fā)器,它允許增加吞吐量1.7倍。在許多應(yīng)用中,吞吐量的實(shí)質(zhì)增長比面積和等待時(shí)間的微小增加更重要。

為進(jìn)一步減少生成設(shè)備110的傳播延遲,如下所示,應(yīng)用de-morgan規(guī)則分別修改實(shí)現(xiàn)的nlfsr112的反饋函數(shù)f235和f197的anf(1.1)和(1.2):

其中x′表示x的布爾互補(bǔ)(定義為),并且“+”表示布爾“或”操作。下表顯示在cmos技術(shù)中,nand操作或nor操作比and操作要小得多和快得多。因此,如級606(圖6中的底部兩個(gè)門)中所示,通過替換4輸入and可以進(jìn)一步減小面積和延遲二者。

初始化設(shè)備102對生成設(shè)備110(以及因此對密碼)進(jìn)行初始化。令ki標(biāo)識密鑰ki的比特,0≤i≤127,并且初始值ivi標(biāo)識初始化值iv的比特,0≤i≤95。如下,將密鑰和iv比特加載到nlfsr112中:

xi=ki,0≤i≤127

xi=ivi-128,128≤i≤223

xi=1,224≤i≤254

xi=0,i=255

初始化階段進(jìn)一步包括:對生成設(shè)備110計(jì)時(shí)n次,并將密鑰流124的生成的輸出比特與寄存器級xn-1和xn-k-1(例如,x255和x217)進(jìn)行異或。因此,在初始化階段,由下式給出反饋函數(shù)f255(x)和f217(x):

如參考圖7所解釋的,在初始化之后,由于使非線性輸出函數(shù)118流水線化,并可選地用于在初始化階段和密鑰流生成階段之間切換所需附加邏輯,對生成設(shè)備110計(jì)時(shí)附加的三個(gè)周期。然后,生成密鑰流128。

圖7示出了用于可以針對f255實(shí)現(xiàn)的初始化階段與密鑰流生成階段之間的切換、而不增加關(guān)鍵路徑的邏輯700。函數(shù)f217的電路是相似的。非線性輸出函數(shù)118被多路復(fù)用和流水線化。盡管描述常規(guī)多路復(fù)用器(mux)的函數(shù)是

a·b+a′·c,

其中一個(gè)輸入固定為0的多路復(fù)用器702可以被實(shí)現(xiàn)為

a·b+a′·0=a·b。

因此,mux702的延遲等于and的延遲,and的延遲小于xor的延遲。因此,修改的切換方案使等待時(shí)間增加了僅一個(gè)附加時(shí)鐘循環(huán)。

在這些修改之后,nlfsr112需要12個(gè)2輸入and、4個(gè)2輸入nand、2個(gè)2輸入nor、19個(gè)2輸入異或和256個(gè)觸發(fā)器。非線性輸出函數(shù)118需要8個(gè)2輸入and、2個(gè)3輸入and、13個(gè)2輸入異或和8個(gè)觸發(fā)器。在初始化和密鑰流生成階段之間切換的附加邏輯需要2個(gè)and、2個(gè)異或和2個(gè)觸發(fā)器。

如果使用用于實(shí)現(xiàn)該nlfsr112的90nmcmos技術(shù)(參見上表中的門參數(shù)),nlfsr112的面積和傳播延遲可以基于以下面積

(22×2個(gè)inputand+2×3個(gè)inputand+4×2個(gè)inputnand+2×2個(gè)inputnor+34個(gè)xor+266個(gè)觸發(fā)器)=5540μm2=1497ge

以及以下延遲

(2個(gè)xor+觸發(fā)器)=451ps來計(jì)算。

因此,設(shè)備110的實(shí)施例在低于1500ge的情況下支持高至2.22g比特/秒的數(shù)據(jù)速率。其等待時(shí)間為232ns(估計(jì)為(256+256+3)時(shí)鐘循環(huán)×451ps)。它可以并行化,每個(gè)時(shí)鐘循環(huán)產(chǎn)生高達(dá)4比特,原因在于使用反饋(1.1)和(1.2)更新的每個(gè)級之后的三個(gè)比特既不被用作狀態(tài)變量也不用在輸出函數(shù)118中。在下表中,k是并行度(即,每一個(gè)時(shí)鐘循環(huán)生成的比特?cái)?shù))。

為了比較,流密碼grain-128的面積和傳播延遲由(m.hell等人,“thegrainfamilyofstreamciphers″,newstreamcipherdesigns:estreamfinalists,lncs4986,pp.179-190,2008)給出:

(22個(gè)and+34個(gè)xor+258個(gè)觸發(fā)器)的面積=5352μm2=1446ge

(and+4個(gè)xor+觸發(fā)器)的延遲=768ps。

這里,假設(shè)與邏輯700類似的邏輯用于在初始化階段和操作階段之間切換。否則,grain-128的延遲相當(dāng)高。grain-128可以并行化,以每時(shí)鐘循環(huán)生成產(chǎn)生32比特。針對并行度1,其等待時(shí)間為296ns(計(jì)算為(128+256+1)時(shí)鐘循環(huán)×768ps)。

流密碼trivium的性能參數(shù)包括(c.cannière和b.preneel,“trivium”,newstreamcipherdesigns:theestreamfinalists,lncs4986,pp.244-266,2008年):

(3個(gè)and+11個(gè)xor+288個(gè)觸發(fā)器)的面積=5597μm2=1513ge

(and+2個(gè)xor+觸發(fā)器)的延遲=538ps。

trivium可以并行化,以每時(shí)鐘循環(huán)生成高達(dá)64比特。針對并行度288,其等待時(shí)間為663ns(計(jì)算為(80+4×288)時(shí)鐘循環(huán)×538ps)。

上表總結(jié)了與并行度1、2和4相比設(shè)備110和兩個(gè)常規(guī)密碼grain-128和trivium的實(shí)施例的面積和吞吐量。對于并行度1,設(shè)備110的實(shí)施例比grain-128大3.4%且快71%。其等待時(shí)間比grain-128的等待時(shí)間少22%。與trivium相比,設(shè)備110的實(shí)施例小1.1%、快19%、并且等待時(shí)間少65%。

總體來說,設(shè)備110的實(shí)施例在1500ge下的設(shè)計(jì)中是最快的。

如下所示,根據(jù)本技術(shù)的這類密碼也是上述三種密碼中最安全的。

為此,給出了設(shè)備110的實(shí)施例的安全性分析。討論了對運(yùn)行密鑰流128的攻擊和對初始化過程的攻擊二者。

使用線性近似的攻擊成功地對付grain的初始版本,導(dǎo)致密鑰恢復(fù)攻擊。作為具有非線性輸出函數(shù)的nlfsr,本技術(shù)與grain具有相似性。因此,確定針對這些攻擊的抵抗。

使用實(shí)現(xiàn)的nlfsr112的等效斐波那契配置lfsr116分析相對于線性攻擊的安全性。在配置112和116中均不具有等效的任何移位寄存器級302中都沒有線性項(xiàng),因此分析對于以伽羅瓦配置實(shí)現(xiàn)的nlfsr112也是有效的。

為了表達(dá)清楚,將寄存器分為兩個(gè)分離的部分。非線性部分(圖3中的寄存器級n-1至n-k)中的狀態(tài)變量由b標(biāo)識,而線性部分(圖3中的寄存器級n-k-1至)中的狀態(tài)變量由s標(biāo)識。此外,令b和s分別標(biāo)識移位寄存器的非線性部分和線性部分的大小。因此,

bi=si+s0≤i<b(6)

線性級si,0≤i<s滿足線性遞歸關(guān)系

si+256=si+si+43+si+123+si+141+si+208+si+244

這是由多項(xiàng)式(3)導(dǎo)出的。將近似的偏差ε定義為

ε=2·pr(a=b)-1,

這被簡寫為

可以用線性函數(shù)來近似非線性輸出函數(shù)118,使得

輸出函數(shù)118中的b變量的數(shù)量由wb(z)標(biāo)識,即(7)中的0≤i<wb(z)。

類似地,非線性反饋函數(shù)可由s中的比特的線性函數(shù)來近似,原因在于反饋中沒有b變量以使得ss-1的非線性補(bǔ)償正常工作。

因此,

組合等式(7)和(8),輸出可以寫成僅來自移位寄存器的線性部分b的變量之和:

其中堆積引理已被用于對線性近似進(jìn)行組合。

因此,輸出變量可以總是被寫為s變量的偏差和,這進(jìn)而滿足線性遞歸關(guān)系。由w(lr)標(biāo)識該遞歸關(guān)系的權(quán)重,區(qū)分攻擊的具有等于下式的總偏差

因此,很明顯,攻擊的復(fù)雜度依賴于兩個(gè)近似的偏差以及在輸出函數(shù)的線性近似中使用的b變量的數(shù)量。通過檢查:對于所有偏差的線性近似,ε1=2-7且ε2=2-6并且wb(z)=6。

由此得出,近似(10)具有偏差2-43,這使得它低效地對付與由c.berbain等人在“cryptanalysisofgrain”,fastsoftwareencryption2006[m.robshaw,ed.],vol.4047oflecturenotesincomputerscience,pp.15-29,springer,2006中所描述的攻擊相類似的攻擊。

此外,如果使用權(quán)重3倍數(shù)的線性遞歸關(guān)系,所需的樣本數(shù)將是在1/ε2tot=243·3·2=2172的數(shù)量級,每個(gè)樣本中第一和最后的密鑰流比特之間距離2218/2=2109(d.wagner,″ageneralizedbirthdayproblem″,inadvancesincryptology-crypto2002[m.yung,ed.),vol.2442oflecturenotesincomputerscience,pp.288-303,springer,2002以及j.d.golic,″computationoflow-weightparitycheckpolynomials″,electronicletters,vol.32,no.21,pp.1981-1982,1996)。

已經(jīng)證明代數(shù)攻擊對具有或不具有存儲器的非線性組合器是非常有效的。攻擊的成功是由于移位寄存器的線性度和輸出函數(shù)是寄存器僅有的非線性部分的事實(shí)。總是可以使用初始狀態(tài)比特寫出描述輸出比特的等式。由于移位寄存器的線性度,這些等式的代數(shù)次數(shù)將不會超過輸出函數(shù)的次數(shù)。在具有足夠等式的情況下,可以使用線性化或其他更先進(jìn)的方法來恢復(fù)內(nèi)部狀態(tài)。此外,零化子(annihilator)可以用于進(jìn)一步降低函數(shù)的次數(shù)。由于對部分狀態(tài)進(jìn)行了非線性更新,這些攻擊不再適用,原因在于在輸出函數(shù)中使用了若干非線性寄存器級。初始狀態(tài)比特中等式的次數(shù)將會增加,并且不受輸出函數(shù)的次數(shù)限制。

對流密碼的時(shí)間存儲數(shù)據(jù)折中(tmto)攻擊可以分為兩類,即嘗試重建內(nèi)部狀態(tài)的攻擊和嘗試恢復(fù)密鑰的攻擊。后一種攻擊中使用的算法與前者中的算法相同,僅使用不同的單向函數(shù)作為攻擊目標(biāo)。在j.golic,″cryptanalysisofallegeda5streamcipher″inadvancesincryptology-eurocrypt1997[w.fumy,ed.],vol.1233oflecturenotesincomputerscience,pp.239-255,springer,1997以及s.babbage,″aspace/timetradeoffinexhaustivesearchattacksonstreamciphers″ineuropeanconventiononsecurityanddetection,no.408inieeeconferencepublication,1995中使用的算法記錄輸入/輸出組合并使用足夠的數(shù)據(jù)以與記錄值沖突。折中曲線由tm=n、t=d和p=m=n/d給出。

a.biryukov和a.shamir在“cryptanalytictime/memory/datatradeoffsforstreamciphers″,advancesincryptology-asiacrypt2000[t.okamoto,ed.],vol.1976oflecturenotesincomputerscience,pp.1-13,springer,2000中使用的算法相反地創(chuàng)建了與m.hellman在“acryptanalytictime-memorytrade-off″,ieeetransactionsoninformationtheory,vol.it-26,pp.401-406,july1980中所使用的表格相類似的表格,并具有由tm2d2=n2,1≤d2≤t和p=n/d給出的折中。

兩種算法均使用增加數(shù)據(jù)量可以降低預(yù)計(jì)算時(shí)間的觀察結(jié)果。由于內(nèi)部狀態(tài)的大小是22k,很明顯,使用任何一種算法用t<2k和m<2k都不可能恢復(fù)內(nèi)部狀態(tài)。另一方面,使用例如t=2112、m=2112和d=256將有可能恢復(fù)密鑰,但將需要p=2168的預(yù)計(jì)算時(shí)間,如果密鑰長度是128比特這無疑過大而不足以引起關(guān)注。

還可以考慮對tmto攻擊的adhoc改進(jìn),其中恢復(fù)比特的子集也將允許使用輸出函數(shù)中的代數(shù)關(guān)系恢復(fù)其他比特。這些攻擊的成功特定于設(shè)計(jì),具體地是設(shè)計(jì)中選擇的輸出函數(shù)118。該想法由m.j.mihaljevic等人在″internalstaterecoveryofgrain-vlemployingnormalityorderofthefilterfunction″,ietinformationsecurity,vol.6,no.2,pp.55-64,2012、以及m.j.mihaljevic等人在“genericcryptographicweaknessofk-normalbooleanfunctionsincertainstreamciphersandcryptanalysisofgrain-128″,periodicamathematicahungarica,vol.65,no.2,pp.205-227,2012中提出,并且在流密碼的grain族上演示,用于標(biāo)識狀態(tài)比特的子集,其可以與一些輸出比特一起用于確定剩余的狀態(tài)比特。

使用這種觀察,可以通過僅考慮恢復(fù)其余部分所需的狀態(tài)比特的子集來改進(jìn)tmto攻擊。輸出布爾函數(shù)的正態(tài)性在這里將起重要作用,原因在于它確定多少移位寄存器比特需要是固定的,以恢復(fù)剩余狀態(tài)比特。設(shè)計(jì)中這個(gè)函數(shù)的正態(tài)性階數(shù)為7,這意味著14-7=7個(gè)變量需要是固定的才能得到用于恢復(fù)的線性方程。移位寄存器的伽羅瓦配置以及并非所有比特都在斐波納契等效配置中具有相應(yīng)比特的事實(shí)使該攻擊更加復(fù)雜。并且即使使用該方法可以對通用的tmto攻擊進(jìn)行假設(shè)改進(jìn),這種攻擊所需的內(nèi)存復(fù)雜度將遠(yuǎn)遠(yuǎn)超過暴風(fēng)(bruteforce),并行化的暴風(fēng)可能會更有效(d.j.bernstein,″understandingbruteforce.″e(cuò)stream,ecryptstreamcipherproject,report2005/036,2005)。

初始化函數(shù)的復(fù)雜度不會影響tmto攻擊中的攻擊復(fù)雜度。所謂的“選擇的iv”攻擊包括取決于初始化函數(shù)的攻擊。在“選擇的iv”場景中,對手可以選擇初始化步驟中使用的初始化向量。這是“cubeattack”(i.dinur等人,″cubeattacksontweakableblackboxpolynomials″,advancesincryptology-eurocrypt2009[a.joux,ed.],vol.5479oflecturenotesincomputerscience,pp.278-299,springer,2009)和aida攻擊(m.vielhaber,″breakingone.fiviumbyaida,analgebraicivdifferentialattack″,http://eprint.iacr.org/2007/413/)的基礎(chǔ),并且如果沒有對初始化進(jìn)行仔細(xì)設(shè)計(jì),會導(dǎo)致密鑰恢復(fù)。

應(yīng)選擇初始化中的迭代次數(shù),使得所有密鑰和iv比特以復(fù)雜的方式影響密鑰流比特。

為確定對這些類型的攻擊的抵抗,已經(jīng)執(zhí)行了最大次數(shù)單項(xiàng)式測試。任何密鑰流比特可以寫為密鑰和iv比特的函數(shù)

zi=fi(k0,...,k127,iv0,...,iv95)。(12)

所有密鑰比特都固定為零,并且iv比特的子集也是固定的。因此,通過非固定比特的所有可能組合,獲得函數(shù)fi的真值表,函數(shù)fi的真值表可以進(jìn)而用于計(jì)算anf。這將導(dǎo)致d-單項(xiàng)式測試,其中可以檢查次數(shù)d的單項(xiàng)式的存在,并與隨機(jī)布爾函數(shù)的預(yù)期數(shù)進(jìn)行比較。

直觀地,僅當(dāng)所有比特都被初始化函數(shù)適當(dāng)?shù)鼗旌?,最大次?shù)單項(xiàng)式才存在。因此,討論集中于該單項(xiàng)式上??墒褂玫谋忍氐目倲?shù)是96,需要296復(fù)雜度以確定單項(xiàng)式iv0,...,iv95的存在。由于這是不可行的,采用這種測試,以找到具有可實(shí)現(xiàn)次數(shù)、并且將針對盡可能多的初始化循環(huán)不存在的單項(xiàng)式。

該算法僅用幾個(gè)比特開始,并且窮盡地找到針對最大循環(huán)數(shù)不存在的單項(xiàng)式。然后,它貪婪地向集合再添加一個(gè)比特并繼續(xù)。將所有未使用的密鑰和iv比特都設(shè)置為零。為了保守估計(jì),還允許算法使用密鑰比特。這將使“選擇的iv”攻擊變成較不強(qiáng)大的非隨機(jī)檢測器,原因在于假設(shè)攻擊者不能夠選擇密鑰比特。

圖8中的示意圖800示出了針對單項(xiàng)式使用特定次數(shù)(比特集合大小)可以破壞的初始化循環(huán)的次數(shù)。通過使用專用硬件,可以測試更多數(shù)量的iv比特,即較大次數(shù)的單項(xiàng)式。然而,根據(jù)示意圖800中的結(jié)果,推導(dǎo)的初始化步驟的數(shù)量足以抵抗這些類型的“選擇的iv”攻擊。在159個(gè)循環(huán)未通過非隨機(jī)測試的情況下,提議的256個(gè)循環(huán)提供足夠的安全保障。為了比較,應(yīng)用于grain-128的相同測試可以使用23的比特集合大小在約240個(gè)初始化循環(huán)中發(fā)現(xiàn)非隨機(jī)性。使用40的比特集合大小,使用256的完整grain-128初始化顯示非隨機(jī)性。

盡管上述討論集中于設(shè)備110的實(shí)施例,設(shè)備110可實(shí)現(xiàn)的安全性通常不在很大程度上取決于包括其反饋函數(shù)在內(nèi)的用于實(shí)現(xiàn)的nlfsr112和非線性輸出函數(shù)118的指數(shù)。相反,選擇的指數(shù)使得它們形成大體實(shí)現(xiàn)了有利水平的保證的全正差集(j.d.golic,″onthesecurityofnonlinearfiltergenerators″,fastsoftwareencryption,lecturenotesincomputerscience,vol.1039,1996,pp.173-188)。

由于安全性取決于函數(shù)的屬性,即非線性和彈性(其確定線性近似的攻擊復(fù)雜度)和代數(shù)次數(shù)(其確定代數(shù)攻擊和上述“選擇的iv”攻擊的復(fù)雜度),由設(shè)備110的實(shí)施例實(shí)現(xiàn)的保證級別是可控的。

以上等式(11)給出線性近似的總偏差,其取決于布爾函數(shù)的非線性以及輸出函數(shù)118的彈性。構(gòu)成設(shè)備110的實(shí)施例的直接方式包括:隨機(jī)抽取可使用o(n)門實(shí)現(xiàn)的2個(gè)布爾函數(shù)(一個(gè)反饋函數(shù)和一個(gè)輸出函數(shù));并根據(jù)等式(11)檢查總偏差。如果偏差足夠小,可以使用這些函數(shù)??梢愿鶕?jù)應(yīng)用選擇什么是“足夠小”。例如,由于區(qū)分器隨后將需要2k個(gè)樣本,合理值為2k/2。也優(yōu)選一些安全保障余量并被認(rèn)為是良好做法。如上所述,附加步驟檢查密碼是否能夠?qū)埂斑x擇的iv”攻擊。這些函數(shù)然后用于實(shí)現(xiàn)設(shè)備110,并且可以被攻擊的初始化循環(huán)的最大數(shù)量應(yīng)該遠(yuǎn)低于在設(shè)備110中使用的循環(huán)。因此,抵抗該攻擊的抵抗取決于初始化循環(huán)數(shù)、如何執(zhí)行初始化和布爾函數(shù)(包括函數(shù)的次數(shù))。

基本上的tmto攻擊取決于狀態(tài)大小n。即使一些指標(biāo)會比其他指標(biāo)好一些,因此所造成的攻擊并不受關(guān)注,原因在于所需的存儲器將會變得太大,而且改進(jìn)是微不足道的。

因此,可以容易地改變這些指標(biāo)而不會對安全性產(chǎn)生很大影響。即使挑選隨機(jī)指數(shù)也很大長度上導(dǎo)致可接受的保證,具體地如果指標(biāo)使得非線性輸出函數(shù)118的所有偏差最大的線性近似在寄存器級具有等價(jià)于第二nlfsr116的指數(shù)。函數(shù)選擇通常允許控制保證級別。確定有效地實(shí)現(xiàn)布爾函數(shù)fn中的所有偏差最大的線性近似,例如,使用布爾函數(shù)fn的沃爾什變換。

設(shè)備110或系統(tǒng)100可以在圖9中示意性示出的集成電路(ic)900中實(shí)現(xiàn),例如作為芯片組的部分902。

備選地或附加地,設(shè)備110或系統(tǒng)100可以在圖10中示意性示出的移動(dòng)終端1000中實(shí)現(xiàn)。作為示例,ic900可以包括在移動(dòng)終端1000中。移動(dòng)終端1000可以是移動(dòng)電話、用戶設(shè)備(ue)、智能電話、平板電腦、計(jì)算機(jī)或機(jī)器對機(jī)器(m2m)設(shè)備(例如傳感器)。

此外,設(shè)備110或系統(tǒng)100可以包括在無線電接入網(wǎng)絡(luò)的接入節(jié)點(diǎn)中。接入節(jié)點(diǎn)可以是根據(jù)ieee802.11標(biāo)準(zhǔn)族的無線電基站、bts、rbs、nodeb、enodeb或wlan的接入點(diǎn)。

從上面對示例性實(shí)施例的描述已經(jīng)變得顯而易見,提供了(例如,適用于5g無線通信系統(tǒng))的一類安全流密碼。根據(jù)上述評估,所提供的密碼是1500ge以下密碼(包括現(xiàn)有技術(shù)算法grain-128和trivium在內(nèi))中最快、最安全的。該技術(shù)的實(shí)施例實(shí)現(xiàn)2256-1的保證長時(shí)段。

該技術(shù)允許為小規(guī)模和節(jié)能的5g系統(tǒng)實(shí)施加密系統(tǒng),例如,以便在新一代產(chǎn)品和應(yīng)用中滿足電池供電移動(dòng)設(shè)備的嚴(yán)格限制。相同或其他實(shí)施例為重要的社會服務(wù)(例如交通、電子衛(wèi)生、智能城市管理和環(huán)境監(jiān)測)提供高水平的保證。

流密碼的置信度較高,如果它們由可以從形式上分析(例如,如上所述)其安全性的組件構(gòu)建,則其接受速度更快。反饋函數(shù)和輸出函數(shù)(例如,輸入的數(shù)量和位置、非線性、彈性、代數(shù)次數(shù)等)允許控制保證級別,使得所得到的生成設(shè)備用足夠的安全保障余量來抵抗已知攻擊。

流密碼的至少一些實(shí)施例包括生成設(shè)備的1比特/周期版本并占用小于1500ge,實(shí)現(xiàn)2.22gbits/秒的吞吐量和232ns的等待時(shí)間。

該技術(shù)結(jié)合了nlfsr的伽羅瓦配置的優(yōu)點(diǎn),例如短路深度(意味著小的傳播時(shí)間和高吞吐量),以及針對其可以從形式上分析安全性的變換后的nlfsr版本的優(yōu)點(diǎn)。此外,可以最小化硬件占地面積。

由前述描述,本發(fā)明的很多優(yōu)點(diǎn)將被完全理解,并且將顯而易見的是,可以在單元和設(shè)備的示例性形式、結(jié)構(gòu)和布置中進(jìn)行各種修改,而不背離本發(fā)明的范圍和/或不犧牲其所有優(yōu)點(diǎn)。因?yàn)榭梢酝ㄟ^很多方式來改變本發(fā)明,將意識到,本發(fā)明應(yīng)該僅由所附權(quán)利要求的范圍來限定。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
佛坪县| 株洲市| 会泽县| 旺苍县| 台安县| 东乡县| 铅山县| 洪泽县| 梧州市| 类乌齐县| 武定县| 石景山区| 金乡县| 吉木乃县| 响水县| 延长县| 青阳县| 宣化县| 琼海市| 丰宁| 兖州市| 郧西县| 中超| 通道| 平潭县| 奇台县| 岱山县| 张家川| 罗平县| 凤凰县| 延寿县| 高阳县| 濮阳市| 怀来县| 大埔区| 广东省| 松滋市| 汽车| 汨罗市| 清原| 永宁县|