新四季網

保密密鑰控制的可逆電路和相應的數據處理方法

2024-03-06 22:02:15

專利名稱:保密密鑰控制的可逆電路和相應的數據處理方法
技術領域:
本發明涉及一種數據處理方法和系統,特別地涉及一種用於加密和解密數據的密鑰控制的可逆電路。
由保密密鑰參數控制的可逆變換是這樣數學實體,其用於為了提供數據機密性而加密和解密敏感數據。所述變換應該使得在不知道所使用的保密密鑰的情況下,從變換的輸出數據恢復初始輸入數據在計算上是不可行的,特別地,應該是不可能從多個已知的輸入/輸出對中重構所述保密密鑰。另外,其應該能夠相對容易地以軟體和/或硬體實現。
背景技術:
塊密碼和流密碼是兩種普通類型的這種變換。塊密碼是對以連續符號的塊安排的數字數據進行操作的塊變換,而流密碼是對數字數據序列進行操作的順序變換,典型地在一個時間處理一個符號。分別作為在J.Daemen和V.Rijmen的Rijndael的設計AES—The AdvancedEncryption Standard,BerlinSpringer Verlag,2002,以及在1977年1月的National Bureau of Standards,「Data Encryption Standard」,Federal Information Processing Standard Publication 46中的AES和DES來說明塊密碼的例子。
通過諸如塊密碼或流密碼的保密密鑰或者信息鑑別碼來進行處理的加密功能可以在微電子數據處理設備上以軟體實現,所述設備諸如是集成電路晶片卡,其包含諸如微處理器的中央處理單元(CPU)、一個或多個諸如隨機存取存儲器(RAM)的易失性存儲器、以及一個或多個諸如電可擦除可編程只讀存儲器(EEPROM)、閃速存儲器和只讀存儲器(ROM)的非易失性存儲器。在所述加密函數執行期間,依靠所述保密密鑰的敏感數據在連接所述CPU和所述存儲器的數據總線上發送,以及被存儲在所述系統中的RAM中。在這個實施例中,除輸出數據外,所述敏感信息是保密密鑰本身和依靠所述保密密鑰的所有中間數據。即使對於反篡改(tamper-resistant)晶片,其中基礎的集成電路由特定物理手段保護,諸如保護層和各種傳感器與檢測器,所述敏感信息也可以通過各種邊信道(side channel)而被洩漏,所述邊信道諸如定時測量、功率分析測量、電磁輻射和微探測。
文獻US 5,850,452說明了一種用於通過在包括控制單元與數據總線的可編程電路中的數據比特的排列(permutation)來進行數字置亂(scrambling)的方法,其中數據總線在所述控制單元與幾個存儲器電路之間傳輸數據。
儘管,對於加密函數,從已知的輸入/輸出數據重構保密密鑰應當在計算上是不可行的,但是,這也不必是透露在執行期間產生的中間數據的情形。因此,需要通過使用有時被稱為數據置亂的專用加密/解密技術來保護在數據總線上與在存儲器中的敏感數據。這對於防止探測攻擊是尤其有效的。探測攻擊是入侵性的邊信道技術,包括把導體微探針引進反篡改晶片的某些點,以監控與分析在這些點的電信號,從而恢復關於保密密鑰的敏感信息。在這方面,潛在地最易受攻擊的點是那些對應於可能傳送或者包含保密信息的內部鏈路或者存儲器的點,所述內部鏈路或者存儲器的硬體實現具有規則的、可識別的結構,諸如是在數據處理設備中的數據總線與RAM。
文獻US 5,943,421包含對數據處理設備的描述,其中在存儲器(包括RAM)中存儲的數據是加密與壓縮的。所述設備使用用於加密/壓縮與解密/解壓縮的硬體單元,其對其它組件是透明的。
僅在數據或者指令總線上對數據進行加密/解密可以通過使用快速流密碼而實現,所述快速流密碼可能通過逐位異或(XOR)操作來組合數據序列與密鑰流序列,密鑰流序列是快速集中隨機或者偽隨機數發生器的輸出序列,例如US 2003/0005313與US 2003/0005314中說明的那樣。
回想如果兩個比特相等,則兩個比特的異或等於0,否則等於1。更確切地說,每次數據塊都是與密鑰流塊逐位異或的。應當注意,偽隨機數發生器是順序電路而不是組合電路。然而,這種解決方案不適合於分別對存儲在存儲器中的數據或者從存儲器中讀出的數據進行加密或者解密,因為相同密鑰流塊必須用於解密與加密在給定存儲器中特定位置的數據。所述可逆變換還可以依據所述存儲器位置的地址,然而也可以加密所述地址,以使數據有效地存儲在存儲器位置中,其地址是原始邏輯地址的加密版本。
對於在存儲器中數據的加密/解密,已經建議使用塊密碼的硬體實現,其需要大量的門以及引起長的延遲。文獻US 2002/0166058 A1包含對在集成電路晶片卡上實現的數據處理設備的描述,其中存儲在諸如RAM的存儲器中的地址與數據二者是由實現在可編程硬體中的16個循環的DES型的塊密碼來加密/解密的。
已經建議了經典的塊密碼的一些簡化,例如具有減少的循環次數以及減少的塊大小。原則上,所述簡化還可以用於加密/解密數據總線和地址總線。然而,這些簡化不能夠結合足夠多的保密密鑰比特以抵抗一些眾所周知的結構攻擊,諸如中間相遇(meet-in-the-middle)攻擊,尤其是在所述塊大小是相對小的情況下。應當注意,在經典的塊密碼中,保密密鑰比特典型地是與各個循環的輸出比特逐位異或的。為了增加保密密鑰比特的數量,還建議使用保密密鑰控制的比特排列,但是他們不提供滿意的保密等級,並且如果需要的塊大小是小的話,則保密密鑰比特的數量就是小的。
在E.Brier、H.Handschuh和C.Tymen的「Fast primitives forinternal data scrambling in tamper resistant hardware」Cryptographic Hardware and Embedded Systems——CHES 2001,Lecture Notes in Computer Science,vol.2162,pp.16-27,2001中建議了一些用於實現保密密鑰控制的比特排列的邏輯電路,用於數據置亂來防止對集成電路晶片卡的探測攻擊。
總之,對於加密/解密在存儲器中的數據的當前解決方案不是令人滿意的,尤其是在所述塊大小是小的,諸如16比特或者更少的情況下。
因此,需要對於依據保密密鑰的可逆邏輯電路的新設計,其適合於在門的數量方面為小規模的而在引起延遲的方面為高速的硬體實現。其應當能夠結合相對多的保密密鑰比特,以及對小的且可能變化的塊大小進行操作。

發明內容
考慮到上述內容,本發明的目的是提供一種用於設計保密密鑰控制的可逆邏輯電路的新方法與設備,其適合於對在數據處理設備的總線上與存儲器中的數據進行加密/解密。
根據本發明,所述目的是藉助於具有在後面的權利要求中闡述的特徵的組合的網絡(network)來實現的。本發明還涉及相應的加密/解密數字數據的方法。
所建議的解決方案具有迭代的與粒狀(granular)的結構,即包含多個層,其中每個層包括多個對很小的塊大小進行操作的基本構建(building)塊。
通用構建塊作用於小數量的輸入數據比特,其被分成分別為m和n比特的兩個組。原樣傳送到輸出的m個輸入比特被用來由多路復用器電路從2mk個密鑰比特中選擇k個比特;所述k個比特接著用於選擇(n×n)比特的可逆變換Rk,其作用於剩餘的n個輸入比特,以產生相應的n個輸出比特。在所述構建塊中的密鑰比特的總數因此是2mk,其可以容易地被構造得比m+n大。除了所述可逆變換Rk由其反函數Rk-1代替之外,逆的構建塊是相同的。
每個塊因此能夠結合大數量的保密密鑰比特,具有少量的門與短的延遲。構建塊以層而被安排,所述層可以通過固定比特排列而被連接。


圖1是根據本發明實現的保密密鑰控制的邏輯電路的通用構建塊的方框圖;圖2是根據本發明實現的保密密鑰控制的邏輯電路的陣列結構的框圖;圖3是連接相鄰的層的塊的第一實施例的框圖;圖4是連接相鄰的層的塊的第二實施例的框圖;圖5是根據本發明實現的構建塊的特定實施例的框圖;和圖6是根據本發明實現的構建塊的簡化實施例的框圖。
具體實施例方式
根據本發明的保密密鑰控制的可逆邏輯電路是組合的網絡,其包括多個層,每個層包括多個基本構建塊,每個塊實現依據密鑰的可逆變換。
圖1中示出了通用構建塊2。其作用於小數量的輸入數據比特,所述輸入數據比特被分成分別為m個控制比特和n個變換的比特的兩個組,例如m+n<=16。由輸出19原樣採用的m個控制比特14被用於由多路復用器電路4從2mk個保密密鑰比特中選擇k個比特,多路復用器電路4具有m個控制比特12、2m個k比特的輸入8和一個k比特輸出10。所述多路復用器電路4可以被實現為m×k的查找表,即k個(二進位)m×1的查找表,其內容是由所述保密密鑰定義的。
所選擇的k個比特(即所述多路復用器4的輸出10)被用於選擇(n×n)比特的可逆變換Rk(圖1的塊6),其作用於剩餘n個輸入比特16,因此稱為變換的比特,以產生相應的n個輸出比特18。用於通用塊的所述可逆變換Rk的集合可以是任意的,並且優選地其必須是由具有n+k個輸入比特與n個輸出比特的邏輯電路容易實現的。應當注意,在構建塊中的保密密鑰比特的總數因此是2mk,其可以容易地被構造得(遠)大於塊大小m+n。
除了可逆變換Rk由其反函數Rk-1所代替之外,逆的構建塊具有相同的電路結構。
圖2示出了組合的網絡46,其包括多個層48,每個層包括多個基本構建塊2。
所述網絡46對N個輸入比特42進行操作,在每個層48中,N個比特被分為小的塊,以及每個塊由基本構建塊2所變換。每個層48由此是多個構建塊的並行組合。在均勻的(uniform)設計中,所有的構建塊是相同類型的,不過,構建塊的不同實現可以用在單個組合的網絡中。
所述層48是由固定的比特排列塊40連接的,為了獲得更高的安全性,其優選地滿足以下兩個擴散(diffusion)特性。在逆的組合的網絡中,必須使用逆的比特排列。如果m=n,那麼所使用的比特排列可以是與其逆排列相等的。
第一屬性是在每個層中的控制比特被用作在下一個層中的變換的比特。在每個層中,所述控制比特的數量因此不能超過變換的比特的數量,這樣,在均勻的設計中,m<=n。
第二屬性是,對於每個構建塊,控制比特與變換的比特二者是從在先前層中的最大可能數量的構建塊中提取的。在均勻的設計中,所述數量等於控制比特的min(m,N/(m+n))與變換的比特的min(n,N/(m+n))。
作為選擇,僅部分地滿足第二屬性的要求,也就是,控制比特與變換的比特是從先前層中的大數量(不是最大可能的數量)的構建塊中提取的,這是可以接受的。
圖3示出了固定的比特排列塊40的可能的實施例,其中N=8以及每個層兩個塊,並且參數m=n=2。所述第一和第二屬性在圖3示出的實施例中被驗證。
在均勻的設計中,連接相鄰的層48的所有塊40是相同類型的,然而,在單個組合的網絡46中可以實現塊40的不同實施例。
對於數據置亂,即,對於數據處理設備中的總線和存儲器的加密/解密,相對小的層數可以是足夠的,例如3個到5個。
為了加密安全性,還建議了多個理想的附加準則。
首先,每個層48的構建塊2的數量應該至少是2個。
第二,所述可逆變換Rk應該是這樣的,以使得Rk的每個輸出比特是n個輸入數據比特和k個密鑰比特的非線性函數,具有包括至少一個涉及輸入數據和密鑰比特二者的二進位乘積的代數範數形式(algebraic norm form)。例如,這是由圖5示出的可逆變換滿足的,這將之後被詳細說明。
更確切地說,對於圖5的方案,對於輸出比特y1和y2的代數範數形式是y1=k1k1·k3k2·k3x1k3·x1k3·x2y2=k2k2·k3k1·k3x2k3·x2k3·x1其中,密鑰比特k1和k2用於異或門26、28,密鑰比特k3用於控制交換器(switch)30。這裡「」表示異或操作,以及「·」表示二進位乘積操作。
在每個層中的變換的比特與控制輸入比特由此非線性地結合在一起。
所述第二準則意味著,n>=2,因為一個二進位變量的僅有的可逆函數是單位矩陣(identity)和二進位補函數(complement function),這樣,單個密鑰比特必須與輸入比特進行異或,以獲得輸出比特。如果k=n,並且所述密鑰比特與n個輸入數據比特進行逐位異或,如用於DES的通常的Feistel結構中的那樣,則所述準則是不被滿足的。
第三,可逆變換Rk應該滿足香農類型準則,即,在已知n個輸出比特時由均勻使用的隨機的k個密鑰比特所提供的n個輸入比特的不確定性是最大可能的,即,n個比特。對於此,k>=n是必要的。通過將n個密鑰比特的子集與n個輸入數據比特進行逐位異或,可以容易地滿足第三準則,如圖5中實現的那樣。
實現所述依據密鑰的可逆變換Rk的簡單類型的邏輯電路僅包括兩個輸入比特的XOR和(受控的)交換器,其中交換器具有兩個輸入比特、兩個輸出比特以及用於確定所述輸入比特是否被交換的一個控制比特。明顯地,可以通過使用兩個並行的多路復用器來實現交換器,然而僅一個多路復用器足以實現XOR。在這裡以及在本說明書的全文中,除非特別規定,多路復用器具有2個輸入比特、1個控制比特和1個輸出比特。對於每個XOR,兩個輸入比特的其中一個是密鑰比特,然而對於每個交換器,控制比特是密鑰比特。
密鑰比特通過下面的方式合併到所述電路中,所述方式即,沒有等同的密鑰,也就是說,密鑰比特的不同組合產生不同的可逆變換。由於所述參數n和k是小的,因此,進行檢查不成問題。對於每個固定的密鑰,這種可逆變換是仿射的(affine),以及非線性是由所述密鑰比特依據控制輸入數據比特來實現的。對於n=3,應當注意,2個輸入比特的所有24個可逆變換必須是仿射的。
如果所述電路僅包含密鑰控制的交換器,則不滿足香農類型準則。
圖5示出了根據上面所述類型的構建塊20的基本的具體例子,具有參數(m,n,k)=(2,2,3)。
兩個輸入比特x3、x4用於控制多路復用器24,並且原樣傳送到輸出y3,y4。輸入比特x3、x4藉助於多路復用器電路24從十二個密鑰比特中選擇三個比特,多路復用器電路24具有兩個控制比特36、四個3比特輸入32和一個3比特輸出34。
3比特輸出34用於控制塊38,塊38實現可逆變換Rk的,把輸入比特x1和x2變換為置亂的輸出比特y1與y2。塊38包括兩個異或門26和28,每個門具有兩個輸入比特和一個輸出比特,並且具有一個控制交換器30,控制交換器30具有2個輸入比特、2個輸出比特和用於確定所述輸入比特是否被交換的1個控制比特。
受控制的交換器30可以通過使用兩個並行的多路復用器而被實現,然而僅一個多路復用器足以實現所述兩個異或門26、28的每一個。
圖5示出的構建塊20可以通過使用深度為4的13個多路復用器電路而被實現,其中深度被定義為從輸入到輸出的最長路徑上的門的數量。所結合的保密密鑰比特的總數是12。
所述構建塊20可以容易地用於定義具體的均勻類型的數據置亂函數。例如,對於N=16的輸入比特,每個層包含4個這種塊,由此具有總共52個多路復用器和結合有48個密鑰比特。因此,五個這種層結合有240個密鑰比特,並且可以由具有210個多路復用器和深度20的電路來實現。所產生的網絡結合有相對大量的密鑰比特,而具有很小的大小和深度,對於諸如N<=16的相對小的N來說,這不可能由從簡化的經典塊密碼和密鑰控制的比特排列所產生的網絡來實現。另外,顯著地改善了其密碼安全性。
為了進一步增加安全性,用於數據置亂的保密密鑰對於在數據處理設備上加密函數的每次新的執行而被刷新。這樣,用於數據置亂的保密密鑰本身很少暴露於諸如功率分析攻擊的邊信道攻擊。如此,還對功率分析攻擊提供了某種程度的抵抗。
保密密鑰優選地是由在相同設備上實現的隨機數發生器產生的。可選地,但是較不安全地,其可以由偽隨機數發生器根據保密種子以及無需是保密的或者是隨機的某些附加信息而被產生,但是時常被刷新。
所建議的構建塊還可以用於設計通常適合於硬體實現的高速的和小的塊密碼。為此目的,優選地使用例如N≥64的較大的塊大小,以及增加層數,即循環的數量。由於每個層的大小與延遲顯著地小於塊密碼的通常的迭代結構,因此,所述循環數量可以大幾倍。例如,對於圖5的構建塊以及N=128,循環數量可以大約是32乃至更大。
不同於數據置亂函數,對於塊密碼的加密或者解密函數不必僅在一個微處理器周期中執行,這樣,其可以由邏輯電路與寄存器的組合來實現。例如,組合的幾個層可以由邏輯電路實現。由於每個層的小的延遲,因此,流水線(pipelined)架構是非常快速的。
對於加密安全性,所述層應該滿足如上所述的三個所希望的附加準則。與此無關的是,建議了關於在層之間的連接的兩個附加要求。
首先,除了稱作循環密鑰的用於各個循環中的保密密鑰之外,還應該有大小為N的兩個附加的輸入和輸出保密密鑰分別與輸入和輸出比特進行逐位異或。
第二,考慮到諸如塊密碼的線性密碼分析的統計學密碼分析方法,建議在層之間使用非常簡單的可逆線性函數,代替僅使用比特排列。特別地,如果每個層的變換的比特與控制數據比特的總數相等,則建議使用如上面說明的那樣所設計的比特排列,以及然後把到每個層的輸入的每個變換的數據比特與來自先前層的不同的變換的數據比特進行異或。這通常不增加層的延遲。圖4示出了用於連接相鄰的層、實現可逆線性函數的塊40′的實施例。對於m=n=2與N=8的情況,示出的塊40′實現了8比特可逆線性變換。
在根據本發明實現的組合的網絡中,每個循環的密鑰比特的數量,即所述循環密鑰的比特大小典型地大於塊大小。這對於數據置亂應用是很大的優點,在所述應用中,塊大小與循環數量二者都是相對小的。
例如,圖5示出的構建塊對於每個輸入比特需要有三個密鑰比特。由於對於塊密碼應用增加了循環數量,因此,需要的密鑰比特的總數大於通常的塊密碼設計。這些密鑰比特可以由密鑰擴展算法從存儲在RAM中的較少數量的保密密鑰比特中產生,所述算法可以是基於修改的構建塊的,以下將進行說明。
密鑰擴展算法迭代地產生循環密鑰,其本身可以通過邏輯電路與寄存器的組合而以硬體被實現,這樣,並非所有的循環密鑰都必須存儲在RAM中。
實現密鑰擴展算法的修改的構建塊如下操作。讓K與K′分別表示保密密鑰與循環密鑰的比特大小。K個保密密鑰比特首先通過使用適當的線性碼由線性變換擴展成K′個密鑰比特中,以使得K″個擴展的密鑰比特的任何子集是線性無關的,其中K″不是小的(K″<=K)。在糾錯碼的術語中,這兩個線性碼的最短距離應該至少是K″+1。
所獲得的擴展的密鑰然後用作對塊大小為K′的組合的網絡的輸入,所述網絡是由滿足以下附加條件的固定的隨機生成的密鑰所參數化的,所述附加條件是,在所述網絡中的每個多路復用器塊實現平衡的二進位查找表,即二進位查找表包含相等數量的0和1。在所述組合的網絡的每兩個層之後產生的K′個比特與所述K′個輸入比特一起連續地用作循環密鑰。由於當和用於塊密碼本身的組合的網絡相比時所述層數由此加倍,因此,可以簡化用於密鑰擴展的構建塊。
圖6示出了簡化的構建塊50的可能實施例,其中參數(m,n,k)=(1,2,1)。這種構建塊是通過從圖5示出的構建塊中刪除2個異或塊與1個控制輸入而獲得的。
一個輸入比特x3用於控制多路復用器54,以及原樣被傳送到輸出y3。輸入比特x3藉助於多路復用器電路54從兩個密鑰比特中選擇一個比特,所述多路復用器電路54具有一個控制比特58、兩個1比特輸入52與一個1比特輸出60。
所述1比特輸出60用於控制塊56,塊56實現簡單的可逆變換Rk,把輸入比特x1和x2變換為輸出比特y1與y2。塊56包括一個受控交換器,其具有兩個輸入比特、兩個輸出比特與用於確定所述輸入比特是否被交換的一個控制比特。
可選地,如果允許連續的循環密鑰的各部分是彼此比特排列的,則K′個循環密鑰比特可以在所述組合的網絡的每個層之後產生。在所述迭代算法中,每個循環是可逆的變換,這樣,滿足這樣的理想準則,即,如果到第一循環的輸入是均勻隨機的,則每個循環密鑰是均勻隨機的。
密鑰擴展算法可以用下列方式通過僅使用線性變換而被簡化。K個保密密鑰比特首先通過使用適當的線性碼由線性變換擴展成2K′個密鑰比特,如上所述,以使得不存在線性相關擴展的密鑰比特的小的子集。所述擴展的2K ′個比特然後被用作用於開始兩個循環的循環密鑰,而之後的連續循環密鑰對是通過把固定的比特排列應用於擴展的密鑰比特而產生的。
所建議的塊密碼的設計的一個實施例是對存儲在存儲器中的版權數字數據的加密/解密,例如用於多媒體應用,其中所述存儲器諸如是EEPROM或者快閃記憶體。
權利要求
1.一種組合的依據密鑰的網絡(46),用於把字大小為N的輸入數字數據(42)加密/解密為相同字大小的輸出數字數據(44),其包括至少兩個層(48),每個層至少包括基本構建塊(2),每個構建塊(2)對具有字大小n+m的輸入比特塊(14,16)進行操作,用於產生輸出比特塊(18,19),所述字大小n+m小於或等於所述字大小N,其特徵在於,所述構建塊(2)包括-多路復用器電路(4),其在控制輸入(12)上接收所述比特塊的第一部分m(14),用於在所述多路復用器電路(4)的k比特輸出(10)上從2mk個密鑰比特中選擇k個比特,所述第一部分(14)的比特被原樣傳送到所述構建塊(2)的輸出(19);和-變換電路(6),用於根據藉助於所述選擇的k個比特(10)而在所述變換電路(6)中實現的多個可逆變換(Rk)之中選擇的可逆變換(Rk),把所述輸入比特塊的剩餘部分n(16)變換為變換的比特(18)。
2.根據權利要求1的網絡,其中相鄰的層(48)是藉助於固定的比特排列塊(40)而被連接的。
3.根據權利要求2的網絡,包括多個相同類型的固定比特排列塊(40)。
4.根據權利要求2的網絡,包括至少兩個不同類型的固定比特排列塊(40)。
5.根據權利要求2的網絡,其中在所述比特塊的所述第一部分(19)中的比特在下一層中被用作要變換的比特(16)。
6.根據權利要求2的網絡,其中對於每個構建塊(2),如果m>=2,則所述比特塊的所述第一部分(14)是從先前層中的至少兩個構建塊中提取的。
7.根據權利要求2的網絡,其中對於每個構建塊(2),如果n>=2,則所述比特塊的所述第二部分(16)是從先前層中的至少兩個構建塊中提取的。
8.根據權利要求1的網絡,其中每個層(48)包括至少兩個構建塊(2)。
9.根據權利要求8的網絡,其中所述可逆變換(Rk)是這樣的,以使得所述變換的比特(18)的每個輸出比特是所述比特塊的所述第一部分(19)和所述k個密鑰比特的非線性函數,具有包括至少一個包含所述比特塊的所述第一部分(19)與所述密鑰比特的二進位乘積的代數範數形式。
10.根據權利要求9的網絡,其中所述可逆變換(Rk)滿足以下準則,在已知n個輸出比特時由均勻隨機的k個密鑰比特提供的n個輸入比特的不確定性等於n個比特。
11.根據權利要求1的網絡,其中所述多路復用器電路(4)包括查找表,其內容由所述密鑰定義。
12.根據權利要求1的網絡,其中所述變換電路(6)包括異或門與受控交換器。
13.根據權利要求12的網絡,其中每個異或門具有兩個輸入比特與一個輸出比特,所述兩個輸入比特中的一個是密鑰比特,以及每個受控交換器具有兩個輸入比特、兩個輸出比特以及用於確定所述輸入比特是否被交換的一個控制比特,所述控制比特是密鑰比特。
14.根據權利要求13的網絡,其中所述多路復用器電路(4)具有兩個控制比特(36)、四個3比特輸入(32)以及一個3比特輸出(34),以及所述變換電路(6)包括兩個異或門(26,28)與一個受控交換器(30)。
15.根據權利要求14的網絡,其中所述3比特輸出(34)的三個比特分別被連接到每個異或門(26,28)的第一輸入比特以及所述受控交換器(30)的控制比特。
16.根據權利要求15的網絡,其中每個異或門(26,28)的第二輸入比特被連接到所述比特塊的所述第二部分(16)的一個比特。
17.根據權利要求16的網絡,其中所述異或門(26,28)的輸出比特被連接到所述受控交換器(30)的兩個輸入比特。
18.根據權利要求17的網絡,其中所述受控交換器(30)的兩個輸出比特產生所述變換電路(6)的變換的比特(18)。
19.根據權利要求1的網絡,包括多個相同類型的構建塊(2)。
20.根據權利要求1的網絡,包括至少兩個不同類型的構建塊(2)。
21.根據權利要求1的網絡,其中相鄰的層(48)是藉助於實現可逆線性函數的塊(40′)而被連接的。
22.根據權利要求1的網絡,其中字大小為N的兩個附加的輸入和輸出密鑰分別與所述輸入數字數據(42)和所述輸出數字數據(44)進行逐位異或。
23.根據權利要求1的網絡,其中在每個層中具有比特大小K′的所述密鑰比特是藉助於密鑰擴展算法從具有比特大小K的較小數量的保密密鑰比特中產生的。
24.根據權利要求23的網絡,其中所述K個保密密鑰比特首先通過使用線性碼、藉助於線性變換而被擴展為K′個密鑰比特,以使得K″個擴展的密鑰比特的任何子集是線性無關的,其中K″<=K。
25.根據權利要求24的網絡,其中具有比特大小K′的所述擴展的密鑰被用作對塊大小為K′的另一組合的依據密鑰的網絡的輸入,所述另一組合的依據密鑰的網絡是由滿足以下條件的固定的隨機產生的密鑰所參數化的,所述條件是每個多路復用器實現平衡的二進位查找表。
26.根據權利要求25的網絡,其中在所述另一組合的依據密鑰的網絡的每兩個層之後產生的K′個比特被用作來自在所述組合的網絡(46)的層內的多路復用器電路的所述密鑰比特。
27.根據權利要求25的網絡,其中所述另一組合的依據密鑰的網絡包括多個層,每個層包括多個簡化的構建塊(50),每個構建塊(50)包括-具有一個輸入(58)的多路復用器(54),其接收被原樣傳遞到輸出(y3)的一個控制比特(X3),用於在1比特輸出(60)上從兩個密鑰比特(52)中選擇一個比特;-受控交換器(56),其具有兩個輸入比特(x1,x2)、兩個輸出比特(y1,y2)以及被連接到所述多路復用器(60)的輸出的一個控制比特,所述控制比特確定所述輸入比特(x1,x2)是否被交換。
28.一種被用於保密密鑰控制的加密函數的塊(2),其對輸入比特塊(14,16)進行操作,用於產生輸出比特塊(18,19),其特徵在於,所述塊包括-多路復用器電路(4),其在控制輸入(12)上接收所述比特塊的m個比特的第一部分(14),用於在所述多路復用器電路(4)的k比特輸出(10)上從2mk個密鑰比特中選擇k個比特,所述第一部分(14)的比特被原樣傳送到所述構建塊(2)的輸出(19);和-變換電路(6),用於根據藉助於所述選擇的k個比特(10)而在所述變換電路(6)中實現的多個可逆變換(Rk)之中選擇的可逆變換(Rk),把所述輸入比特塊的剩餘部分(16)變換為變換的比特(18)。
29.根據權利要求28的塊,其中所述變換電路(6)包括異或門與受控交換器。
30.根據權利要求29的塊,其中每個異或門具有兩個輸入比特與一個輸出比特,所述兩個輸入比特中的一個是密鑰比特,以及每個受控交換器具有兩個輸入比特、兩個輸出比特以及用於確定所述輸入比特是否被交換的一個控制比特,所述控制比特是密鑰比特。
31.根據權利要求30的塊,其中所述多路復用器電路(4)具有兩個控制比特(36)、四個3比特輸入(32)與一個3比特輸出(34),以及所述變換電路(6)包括兩個異或門(26,28)與一個受控交換器(30)。
32.根據權利要求31的塊,其中所述3比特輸出(34)的三個比特分別被連接到每個異或門(26,28)的第一輸入比特以及所述受控交換器(30)的控制比特。
33.根據權利要求32的塊,其中每個異或門(26,28)的第二輸入比特被連接到所述比特塊的所述第二部分(16)的一個比特。
34.根據權利要求33的塊,其中所述異或門(26,28)的輸出比特被連接到所述受控交換器(30)的兩個輸入比特。
35.根據權利要求34的塊,其中所述受控交換器(30)的兩個輸出比特產生所述變換電路(6)的變換的比特(18)。
36.一種用於把字大小為N的輸入數字數據(42)加密/解密為相同字大小的輸出數字數據(44)的方法,包括a)把所述輸入數字數據(42)劃分為比特塊(14,16),每個比特塊具有小於所述字大小N的字大小n+m,每個比特塊被分成第一部分m(14)與第二部分n(16);b)對於每個比特塊b1)藉助於所述第一部分m(14)的比特訪問包含2mk個密鑰比特的查找表(4),用於從2mk個密鑰比特中選擇k個比特,把所述第一部分m(14)的比特原樣傳送到第一部分的變換的比特(19);b2)藉助於所述選擇的k個比特(10),從多個可逆變換(Rk)之中選擇可逆變換(Rk);b3)把所述可逆變換(Rk)應用於所述第二部分n(16)的比特,由此產生第二部分的變換的比特(18);c)把來自每個塊的變換的比特聚集成所述輸出數字數據(44)。
37.根據權利要求36的方法,其中對包括所述第一部分(19)與第二部分(18)的先前變換的比特的比特塊重複所述步驟b)。
38.根據權利要求37的方法,其中在步驟b)的每次重複之前,將固定的比特排列(40)應用於所述先前變換的比特。
39.根據權利要求37的方法,其中在步驟b)的每次重複之前,將可逆線性函數(40′)應用於所述先前變換的比特。
40.一種數據處理設備,包括中央處理單元(CPU)、易失性或者非易失性存儲器和至少的數據、指令或地址總線,其特徵在於,所述設備至少包括根據權利要求1至27中的任何一個所實現的組合的依據密鑰的網絡(46),用於對所述數據、指令或者地址總線上的數字數據和/或所述存儲器中的數字數據進行加密/解密。
41.一種用於存儲和播放版權數字數據的多媒體設備,其特徵在於,所述設備至少包括根據權利要求1至27中的任何一個所實現的組合的依據密鑰的網絡(46),用於對所述版權數字數據進行加密/解密。
全文摘要
一種組合的依據密鑰的網絡(46),適合於對數據處理設備的總線上和存儲器中的數據進行加密/解密,其包括多個層,其中每個層包括多個對很小的塊大小進行操作的基本構建塊(2)。通用構建塊(2)作用於小數量的輸入數據比特,該輸入數據比特被分成分別為m和n個比特的兩個組。原樣傳送到輸出的m個輸入比特被用來由多路復用器電路從文檔編號H04L9/06GK1826753SQ03827033
公開日2006年8月30日 申請日期2003年9月5日 優先權日2003年9月5日
發明者喬萬·戈利克 申請人:義大利電信股份公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀