TWI751153B - 用於提供基於硬體之快速且安全的擴展和壓縮功能的系統和方法 - Google Patents

用於提供基於硬體之快速且安全的擴展和壓縮功能的系統和方法 Download PDF

Info

Publication number
TWI751153B
TWI751153B TW106112753A TW106112753A TWI751153B TW I751153 B TWI751153 B TW I751153B TW 106112753 A TW106112753 A TW 106112753A TW 106112753 A TW106112753 A TW 106112753A TW I751153 B TWI751153 B TW I751153B
Authority
TW
Taiwan
Prior art keywords
input
output
length
xor
input data
Prior art date
Application number
TW106112753A
Other languages
English (en)
Other versions
TW201803283A (zh
Inventor
拉茲羅 哈爾斯
Original Assignee
美商波音公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商波音公司 filed Critical 美商波音公司
Publication of TW201803283A publication Critical patent/TW201803283A/zh
Application granted granted Critical
Publication of TWI751153B publication Critical patent/TWI751153B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Storage Device Security (AREA)

Abstract

一種用於藉著針對隨意的輸入與輸出長度提供資料擴展和壓縮功能而對資料編碼之系統和方法。所述輸入被劃分成序列式位元群組。一子金鑰是針對每個輸入位元群組而從金鑰材料中被選出。一樹狀XOR閘在所述子金鑰(106a、106b、106c)之間採用XOR運算以產生輸出。XOR閘是按級別而被安排,並且在一級別中的全部XOR閘約在相同時間切換。若輸入長度大於或等於輸出長度,則履行一壓縮功能,並且若輸入長度小於或等於輸出長度,則履行一擴展功能。輸入和輸出之間沒有統計的相關性。一非線性函數可以被採用至輸出,例如一可逆S盒、一非可逆S盒和一連串的旋轉-加-互斥或運算。

Description

用於提供基於硬體之快速且安全的擴展和壓縮功能的系統和方法
本公開一般而言關於資料加密和驗證,特別是關於用於產生隨意的擴展和壓縮功能之經改良的系統和方法。
航空產業大量地依賴關鍵資訊科技(information technology,IT)基礎建設之可靠的運作。像其它產業一樣,航空產業遭到提供針對此類IT基礎建設適當的安全性以及減輕任何網路事件(cyber event)的效應之挑戰。網路事件的示例包含危及或企圖危及飛機網路操作之惡意或可疑的事件,所述網路操作包含資料連線、資料傳輸和計算系統。
在密碼學領域中,有許多已知的資料擴展和壓縮功能的應用,其具有不同的輸入及輸出長度,例如當一輸入是被徹底地混合時,其於是被增加或減少到一固定輸出大小。已知資料擴展功能的應用示例是用於記憶體加密的金鑰產生器、安全通訊的金鑰旋轉,以及長資料路徑上的不平衡費斯特密文(Feistel ciphers)。已知資料壓縮功能的應用示例則是安全雜湊函數的建立區塊、熵源與白色化(entropy sources and whitening)之隨機擴增(randomness amplification),以及短資料路徑上的不平衡費斯特密文。
一些針對資料擴展和壓縮功能期望的屬性是:(1)每一輸入 位元影響每一輸出位元;(2)針對輸入的簡單改變引起大約半數輸出位元翻轉(flip)(平均上);(3)此種簡單改變並不產生相對應輸出數值間的顯著相關性,所述相關性是依據標準統計隨機試驗。簡單改變的示例可以是同時翻轉少許位元(例如約少於25%),或是以約少於10個指令長度的電腦指令來對資料施加轉換(transformation)。
已知的資料擴展和壓縮功能可以依賴大量的秘密金鑰材料,這使得對無法存取秘密金鑰材料的觀察者而言,它們的行為是無法被預測。此類型資訊安全應用傳統上需求顯著的操作時間和消耗顯著數量的電力。此類型安全應用也傳統上缺少嚴格(stringent)的密碼學要求,特別是當擴展/壓縮功能之輸入或輸出中的一者或二著皆對觀察者而言是維持隱藏時。然而顯著的威脅仍餘留,即攻擊者仍可以收集在側通道(side channel)上洩漏的資訊,而此資訊是關於此功能的計算工作。特別是,在電子裝置正在處理資料的操作時期,一些關於秘密金鑰或敏感資訊可以洩漏在側通道中(意外信息傳播的實體來源),包含下列資訊:反應時間的變化,依賴於輸入資料和秘密金鑰之電力使用量,及/或超音波或電磁波的輻射。這可引領到發覺秘密金鑰材料,或是讓所述功能到達一定程度的可預測,而這會在IT安全應用中創造顯著的風險。
除了側通道洩漏外,已知的擴展和壓縮功能(例如密文和密碼學的雜湊函數)對於不可改變的(固定的)輸入和輸出緩衝器大小是無彈性的,非常地慢,而且是消耗很多的電力和能源。而且,此類先前技藝系統提供固定的安全等級,縱使一些在商業和軍事的航空器可能需要不同的安全等級,或是優於現存解決方案之表現。
因此,具有一用於隨意的擴展和壓縮資料的經改良系統與方法,且此系統與方法是快的、安全的且減少側通道洩漏,而不會顯著地增加當被實施在一電子裝置時之處理時間、系統複雜度、電子電路的大小或電力使用量,這是令人期望的。
基於前述先前技術的觀點,本公開的示例性實施例提供一種用於編碼資料的系統和方法。所述方法包含下列步驟:接收一輸入,其具有一第一長度的輸入資料位元;劃分所述輸入資料位元成輸入資料位元群組,每輸入資料位元群組包括至少一位元;針對所述輸入資料位元群組,從金鑰材料中選出子金鑰,使得針對每一輸入資料位元群組選出一子金鑰;以及在所述子金鑰之間施加至少一XOR運算以產生一輸出,所述輸出具有一第二長度的輸出資料位元。所述系統包含一輸入,其具有一第一長度的輸入資料位元;輸入資料位元群組,其是由所述輸入資料位元所劃分的,所述群組的各者包括至少一位元;子金鑰,其是針對所述輸入資料位元群組的各者而從金鑰材料中被選出,使得每一輸入資料位元群組對應一子金鑰;以及一輸出,其具有一第二長度的輸出資料位元,所述輸出是藉著在所述子金鑰之間施加至少一個XOR運算而被產生。
不同子金鑰可能共享所述金鑰材料的一些位元。所述安全金鑰材料是儲存在一儲存裝置中,例如一電子、磁學或光學儲存裝置,例如電子正反器、電子熔線(fuses)、快閃記憶體、動態隨機存取記憶體(DRAM),或是靜態隨機存取記憶體(SRAM)。所述至少一個XOR運算可能藉著一樹狀XOR閘而被實施。所述XOR閘是按級別而被對稱地安排,使得在每一 級別中的XOR閘從輸入起算,就其之前的XOR閘數量而言是等距離。在一級別中的XOR閘約在相同時間切換。
在所述第一長度資料和所述第二長度資料之間沒有統計的相關性。若所述第一長度小於或等於所述第二長度則履行一資料擴展功能。若所述第一長度大於或等於所述第二長度則履行一資料壓縮功能。在本公開的進一步實施例中,一非線性函數被施加至所述輸出,例如一可逆S盒、一非可逆S盒和一連串的旋轉-加-互斥或運算。
在此處所討論的特徵、功能和優點可能在各式的示例性實施例中而被獨立地達到,或可能在其它還有的示例性實施例中而被組合,參考接下來的說明書和圖式,更進一步細節可能被顯示。
102:輸入
104:金鑰材料
106a:子金鑰
106b:子金鑰
106c:子金鑰
108a:XOR閘
108b:XOR閘
110a:XOR閘
110b:XOR閘
112:XOR閘
114:輸出
202:方塊
204:方塊
206:方塊
208:方塊
210:方塊
500:方法
502:方塊
504:方塊
506:方塊
508:方塊
510:方塊
512:方塊
514:方塊
600:高階系統
602:飛機
604:動力系統
606:電力系統
608:液壓系統
610:環境系統
612:機體
614:內部
因此已經以一般的用語描述本公開的示例性實施例,現在將參考附圖,這些附圖不必然依比例繪製,其中:圖1是針對根據本公開的示例性實施例之隨意輸入和輸出大小的擴展和壓縮功能的邏輯圖;圖2是針對根據本公開的示例性實施例之隨意輸入和輸出大小的擴展和壓縮功能之方法的方塊圖;圖3是飛機之生產與服務方法論(methodology)的方塊圖;以及圖4是飛機之示意圖。
參考附圖,本公開的一些實施例將被更完全地描述至此及之後,其中,本公開的一些但非全部的實施例是被顯示的。的確,本公開的 不同實施例可能以許多不同的形式被具體化,而不應被解釋為限制成本文在此處所闡述的實施例;相對地,這些示例性實施例是被提供,使得本公開是徹底和完整的,並且完全地傳達本公開的範圍給所述技藝的通常知識者。例如,除非另外地指明,參考某物為一第一物、第二物或是類似物並不應被解釋為暗示特定的順序。而且,某物被描述為在其它物(除非另有指明)上面可能相反地在下面,反之亦然;相似的,某物被描述為在其它物左方可能相反地在右方,反之亦然。相同的參考編號徹底地參考到相同的元件。
本公開的示例性實施例將主要地描述成與航空應用結合。然而,這應了解到,示例性實施例可使用在與各種其它應用結合,在航空產業之中及航空產業之外的二者。
根據本公開的示例性實施例,一經改良的系統和方法提供具有隨意的輸入與輸出大小的資料擴展和壓縮功能。
如圖1(100)和圖2(200)所顯示的,一資料輸入102是被接收的(方塊202),且被劃分成為連貫的(consecutive)輸入資料位元群組(方塊204)。例如,資料輸入102的輸入資料位元可能被劃分成為輸入資料位元的序列式(sequential)群組。在顯示圖1的示例中,輸入102被劃分成為各具二位元的群組;然而,位元的群組可以是不同的大小,只要在每個群組中至少有一個位元。
針對每一位元群組,一子金鑰106a、106b、106c是藉著一多工器而從秘密金鑰材料104選出(方塊206)。所述金鑰材料104可以儲存在的不同類型的電子、磁學或光學儲存元件,例如電子正反器、電子熔線 (fuses)、快閃記憶體、動態隨機存取記憶體(DRAM),或是靜態隨機存取記憶體(SRAM)。當金鑰材料104儲存在電子正反器時,資料的實體安全是被增強的,因為電子設計流程的合成工具把正反器分散在常規閘之中,使得無大記憶體區塊容納秘密金鑰材料104。這是令人期望的,因為大記憶體區塊可藉著顯微鏡檢查而被識別,而容易遭受藉著刺探的攻擊,例如使用經聚焦的離子束。
從金鑰材料104所取得的子金鑰106a、106b、106c可共享一些位元,只要相同的位元不要出現在不同子金鑰106a、106b、106c的相同位元位置(因為在子金鑰106a、106b、106c上的XOR運算會取消此位元)。共享位元的一個示例是當一個子金鑰是另一個子金鑰的按位元旋轉(bitwise rotation)版本時。其它複雜的從金鑰材料104到子金鑰的映射是可行的。當用於金鑰材料104的儲存空間的大小是有限時,這特別是有用的。
再度參考圖1、2,子金鑰106a、106b、106c是按位元XOR運算(使用XOR閘108a、108b、110a、110b、112),用以產生輸出114(方塊208)。藉著樹狀之二輸入XOR閘108a、108b、110a、110b、112來可達到XOR運算之快速實施例;然而多重輸入之XOR閘亦可使用在另一實施例中。輸入102的大小和輸出114的大小間彼此無關。因此,假如輸入102的大小是小於輸出114的大小,則這是個擴展功能。相反地,假如輸入102的大小是大於輸出114的大小,則這是個壓縮功能。
如剛剛已參照圖1、2所描述的資料擴展和壓縮功能,它們是容易以電子硬體來實施,其中所述功能是安全、快速,並且消耗非常少許的電力和能源,還提供非常低的側通道洩漏。本公開的資料擴展和壓縮 功能亦滿足參考如上的期望屬性,其中:(1)假如金鑰材料104含有亂數資料,每個對一輸入102位元的改變,引起輸出114藉著亂數子金鑰106a、106b、106c而被改變,所以每個輸出114位元都被影響;(2)針對輸入102的簡單改變,例如翻轉位元,引起輸出114藉著相對應子金鑰106a、106b、106c的聚集(aggregate)而改變;(3)此種簡單改變並不產生輸入102數值與相對應輸出114數值間的顯著相關性,此相關性是依據標準統計隨機試驗。
憑著它們使用簡單的XOR閘108a、108b、110a、110b、112在電子硬體的實施例,本公開的資料擴展和壓縮功能額外地減少側通道洩漏。因此,不需要正反器或資料暫存器來儲存改變的資料,而這傳統上而言是側通道洩漏的主要來源。如圖1中所顯示,用於資料擴展和壓縮功能的閘結構是高度地對稱,而且XOR閘108a、108b、110a、110b、112是按級別而被安排,使得在每一級別中的XOR閘從輸入起算,就其之前的XOR閘數量而言是等距離。例如,在圖1所顯示的實施例中,XOR閘108a、108b是在級別1中排成直線,XOR閘110a、100b是在級別2中排成直線,以及XOR閘112是在級別3中。在每一特定級別(級別1、級別2、級別3)中的閘108a、108b、110a、110b、112約在相同時間切換。因為有數千個並行的切換事件,個別切換的瞬間是有效地被標記。並且XOR閘108a、108b、110a、110b、112具有它們的切換瞬間,其中所述切換瞬間在少許皮秒(picoseconds,ps)範圍內,所以計錄和分析它們會需求資料擷取系統具有THz範圍內的取樣頻率,而這是較現今可用技術快了數量級。因此,根據本公開的資料擴展和壓縮功能是更加的安全且不易攻擊。
如圖1所顯示之用於提供資料擴展和壓縮功能的系統是一線性構造(在一二元高氏場中(binary Galois field)),因為它僅使用位元選取和XOR運算。因此,一些複雜的四路相關性可存在某些輸出114的數值間,其相對應至簡單相關的輸入102數值。在大多數的應用中,這不是件重要的事,因為輸出114的數值對攻擊者仍是維持隱藏。然而,在期望加強安全的應用中,本公開的資料擴展和壓縮功能可進一步地用一非線性函數來處理(方塊210)。此類非線性函數可以例如是可逆替換盒(S盒)的平行收集(parallel collection)、一S盒(這會是可逆S盒)經與輸出114進行XOR運算後的收集結果,或是連串的旋轉-加-互斥或(Rotate-Add-XOR,RAX)運算。
使用如上文所描述之用於隨意的擴展和壓縮資料的系統與方法有數個優點。此類擴展和壓縮功能較先前技藝之密碼學方法快了數量級,當它們是以電子硬體來實施時消耗非常少的電力,而且它們是較先前技術方法更安全,因為他們在側通道上洩漏非常少的資訊,所述資訊是關於它們正在處理中的資料。因此,經部署的系統可以使用較慢的電子元件,因而藉此減少計算系統的費用與電力消耗,然而還改善速度(操作時間)。此類經改善的系統針對科學與工程計算是有用的,以及針對飛機電腦的安全子系統、軍事與太空計劃、團體的(corporate)網路、個人及筆記型電腦、智慧移動裝置,和安全通訊網路是有用的。
根據本公開的示例性實施例,本公開的用於擴展和壓縮資料的經改善系統和方法的各式元件,可能被不同的手段所實施,所述手段包含硬體,所述硬體是獨立的,或所述硬體是在一或多個來自於電腦可讀儲 存媒體的電腦程式代碼指令、程式指令或是可執行電腦可讀程式代碼指令的指揮下。
在一示例中,一或多個設備可能被提供,所述設備可被組態以運行為、或相反地實施顯示或描述於此之用於隨意的擴展和壓縮資料的系統與方法。在涉及多於一個設備的示例中,個別的設備可能以一些不同的方式連接到其它設備、或是相反地與其它設備溝通,例如直接或間接地經由有線、無線網路或類似物。
一般而言,針對本公開的系統與方法之示例性實施例的設備可能包含一或多個之一些元件,例如如上所描述之一處理器(例如處理器單元)連接到一記憶體(例如儲存裝置)。所述處理器一般是任何一塊能夠處理資訊的硬體,所述資訊例如(舉例而言)是資料、電腦可讀程式代碼、指令或類似物(一般而言,「電腦程式」,例如是軟體、韌體…等等),及/或其它適合的電子資訊。舉例而言,更特別地所述處理器可能被組態成執行電腦程式,所述電腦程式可能儲存在處理器的板上、或是相反地儲存在(相同或是另一個設備的)記憶體中。依賴特別的實施例,所述處理器可能是一些處理器、一多重處理器核心,或是一些其它類型的處理器。更進一步,所述處理器可能使用一些異質(heterogeneous)處理器系統來實施,在此,一主要處理器和一或多個次要處理器出現在一單一晶片上。作為另一個說明性的示例,所述處理器可能是一對稱的多重處理器系統,其含有相同類型的多重處理器。在還另一示例中,在所述處理器可被具體化為、或是相反地包含一或多個特殊應用積體電路(ASICs)、場域可程式閘陣列(FPGAs)或類似物。因此,雖然所述處理器可能能夠執行一電腦程式用以 履行一或多個功能,各式示例的處理器可能不用電腦程式的輔助而能夠運行一或多個功能。
所述記憶體一般是任何一塊能夠以臨時及/或永久準則儲存資訊的硬體,所述資訊例如(舉例而言)是資料、電腦程式,及/或其它適合的電子資訊。所述記憶體可能包含揮發及/或非揮發記憶體,並且可能是固定的或是可移除的。適合的記憶體示例包含隨機存取記憶體(RAM)、唯讀記憶體(ROM)、硬碟、快閃記憶體、拇指碟、可移除式電腦磁碟片、光碟、磁帶,或是上面的一些組合。光碟可能包含唯讀式光碟(CD-ROM)、可抹寫式光碟(CD-R/W)、DVD或類似物。在各式的示例中,所述記憶體可參考為一電腦可讀儲存媒體,其如同非暫時性裝置一樣能夠儲存資訊,而可能和電腦可讀傳送媒體區分,所述電腦可讀傳送媒體例如是能夠運載資訊由一位置到另一處之電子暫時性訊號。如此處所描述之電腦可讀媒體一般參考為電腦可讀儲存媒體或電腦可讀傳送媒體。
除了記憶體之外,所述處理器也可能連接到一或多個用於顯示、傳送及/或接收資訊的介面。所述介面可能包含通訊介面(例如通訊單元)及/或一或多個使用者介面。所述通訊介面可能被組態為傳送及/或接收資訊,例如到及/或從其它的設備、網路或類似物。所述通訊介面可能被組態為藉著實體(有線)及/或無線通訊鍵結來傳送及/或接收資訊。適合的通訊介面示例包含網路介面控制器(NIC)、無線NIC(WNIC)或類似物。
所述使用者介面可能包含一顯示器及/或一或多個使用者輸入介面(例如輸入/輸出單元)。所述顯示器可能被組態為呈現、或相反 地顯示給使用者之資訊,適合的顯示器示例包含液晶顯示器(LCD)、發光二極體顯示器(LED)、電漿顯示器(PDP)或類似物。所述使用者介面可能是有線或無線的,而且可能被組態為接收從設備到使用者之資訊,例如用於處理、儲存及/或顯示。適合的使用者輸入介面示例包含麥克風、影像或視訊擷取裝置、鍵盤或小鍵盤、搖桿、觸敏介面(和觸控營幕分離或是整合到觸控營幕)、生物辨識感測器或類似物。所述使用者介面可能進一步地包含一或多個和週邊設備通訊的介面,所述週邊設備例如是印表機、相機或類似物。
如上文所指明,程式代碼指令可能儲存在記憶體中和被處理器所執行,以便實施如此處所描述之用於隨意的擴展和壓縮資料的系統與方法之功能。這將被賞識的,任何適合的程式代碼可能從電腦可讀儲存媒體載入到電腦或是其它可程式化設備,用來生產特別的機器,使得所述特別的機器變成一種用於實施此處所具體說明之功能的手段。所述程式代碼指令也可能儲存在電腦可儲媒體中,其可以指揮電腦、處理器、或其它可程式設備,以使它們依特定方式運行,藉此產生特定的機器或特定的製品。儲存在電腦可讀儲存媒體中的指令可能生產製品,其中所述製品變成用於實施此處所描述之功能的手段。所述程式代碼指令可能從電腦儲存媒體中取回,並載入到電腦、處理器或其它可程式化設備中,用以組態電腦、處理器或其它可程式化設備以在電腦、處理器或其它可程式化設備上,或是藉著電腦、處理器或其它可程式化設備,執行將被履行的功能。
程式代碼指令的取回、載入與執行可能序列地履行,使得在一時刻一個指令是被取回、載入與執行。在一些示例性實施例中,取回、 載入及/或執行可能被平行地履行,使得多重指令是被一起地取回、載入及/或執行。程式代碼指令的執行可能生產一種電腦實施處理流程,使得被電腦、處理器或其它可程式化設備所執行的指令係提供用於實施此處所描述功能的操作。
藉著處理器之指令的執行,或是儲存指令在電腦可讀儲存媒體中,支援用於履行特定功能操作之組合。這將也是理解的,一或多個功能,或是功能的組合,可能被如下所述而實施:履行特定功能之特殊用途的硬體式電腦系統及/或處理器,或是特殊用途硬體與程式代碼指令的組合。
如上文所參考的,本公開的示例可能被描述在飛機製造與服務的文章脈絡。如圖3、4所顯示,在預生產時期,例證式方法500可能包含飛機602的規格和設計(方塊502),以及材料採購(方塊504)。在生產時期,元件和子組件的製造(方塊506),以及飛機602的系統整合(方塊508)可能發生。在此之後,飛機602可能通過認證和交付(方塊510)以投入服勤(方塊512)。當服勤中,飛機602可能被排程進行例行性的維護和服務(方塊514)。例行性的維護和服務可能包含飛機602的一或多個系統的修改、再組態、翻新…等等。
例證式方法500流程的各者可能被系統整合者、第三方及/或操作者(例如顧客)所履行或實行。針對本說明書的用途,系統整合者可能包含而不限制於飛機製造商和主要系統分包商的任何成員;第三方可能包含而不限制於供應商、分包商和供應者的任何成員;操作者可能是航空公司、租賃公司、軍事實體、服務機構…等等。
如圖4所顯示,藉著例證式方法500所生產的飛機602可能包含具有複數個高階系統600和內部614的機體612。高階系統600的示例包含一或多個動力系統604、電力系統606、液壓系統608和環境系統610。其它系統的任何成員可能被包含的。雖然顯示一航空航太示例,揭露於此處的定理可能被應用到其它產業,例如自動化產業。因此,除了應用至飛機602外,揭露於此處的定理可能被應用到其它載具,例如陸上載具、海上載具、太空載具…等等。
此處所顯示或描述的設備和方法可能在製造與服務方法500的任一或多個階段時期被採用。例如,對應至元件和子組件的製造506之元件或子組件可能以一種方式被組裝或製造,所述方式類似於當飛機602在服勤中所生產的元件或子組件。而且,設備、方法的一或多個示例或其組合可能使用在生產階段506和508,例如藉著實質上加速飛機602的組裝或是降低飛機602的成本。類似地,設備或方法之實現的一或多個示例或其組合可能使用於,舉例而非限制,當飛機602服勤中,例如維護和服務階段(方塊514)。
此處所揭露的設備與方法的不同示例包含各式元件、特徵和功能性。這應被理解,此處所揭露的設備與方法的不同示例,可能包含此處所揭露的設備與方法的其它示例之任一者的任何元件、特徵和功能性的任意組合,並且所有此類可能性係被預期會在本公開的精神和範圍內。
本技藝的技術人員將會想到此處所闡述的本公開的許多修改和其它實施例,而具有前述說明書和相關附圖中呈現的教示益處。因此,這是被理解的,本公開並不是限制在所揭露的特殊實施例,而且修改與其 它實施例係被預期會在所附加申請專利範圍的範圍中。更進一步,雖然前述說明書和相關附圖描述在元素及/或功能的一些示例組合之文章脈絡中的示例性實施例,但這應被賞識的,元素及/或功能的不同組合可能藉著替代的實施例而被提供,而不會背離所附加申請專利範圍的範圍。在這方面,例如,不同於上文所明確描述之元素及/或功能的組合,也被預期為可能被闡述於申請專利範圍的一些請求項中。雖然在此處採用特殊用語,但它們只是被使用於一般和描述的意義上,而非用於限制的用途。
102:輸入
104:金鑰材料
106a:子金鑰
106b:子金鑰
106c:子金鑰
108a:XOR閘
108b:XOR閘
110a:XOR閘
110b:XOR閘
112:XOR閘
114:輸出

Claims (12)

  1. 一種用於編碼資料的方法,包括下列步驟:接收一輸入,其具有一第一長度的輸入資料位元(102);劃分所述輸入資料位元(102)成輸入資料位元群組,每輸入資料位元群組包括至少一位元;針對所述輸入資料位元群組,從金鑰材料(104)中選出子金鑰(106a、106b、106c),使得針對每一輸入資料位元群組選出一子金鑰;以及在所述子金鑰(106a、106b、106c)之間施加至少一XOR運算以產生一輸出,所述輸出具有一第二長度的輸出資料位元(114),其中所述至少一XOR運算藉著一樹狀XOR閘(108a、108b、110a、110b、112)而被實施,且其中所述樹狀XOR閘(108a、108b、110a、110b、112)按級別而被對稱地安排,使得在每一級別中的XOR閘從所述輸入起算,就其之前的所述XOR閘的數量而言是等距離。
  2. 如請求項1的方法,其中所述輸入資料位元群組是序列式的。
  3. 如請求項1的方法,其中在所述第一長度資料和所述第二長度資料之間沒有統計的相關性。
  4. 如請求項1的方法,其中若所述第一長度小於所述第二長度則履行一資料擴展功能。
  5. 如請求項1的方法,其中若所述第一長度大於所述第二長度則履行一資料壓縮功能。
  6. 如請求項1的方法,其中所述子金鑰(106a、106b、106c)共享所述金鑰材料(104)的一些位元。
  7. 如請求項1的方法,其中所述金鑰材料(104)是儲存在一儲存裝置中的祕密材料,所述儲存裝置是選自於由一電子儲存裝置、一磁學儲存裝置和一光學儲存裝置所組成的群組。
  8. 如請求項7的方法,其中所述金鑰材料(104)是儲存在一電子正反器中。
  9. 如請求項1的方法,另包括對所述輸出(114)施加一非線性函數的步驟,所述非線性函數是選自於由一可逆S盒、一非可逆S盒和連串的旋轉-加-互斥或(Rotate-Add-XOR)運算所組成的群組。
  10. 一種用於編碼資料的系統,包括:一輸入,其具有一第一長度的輸入資料位元(102);輸入資料位元群組,其是由所述輸入資料位元(102)所劃分的,所述群組的各者包括至少一位元;子金鑰(106a、106b、106c),其是針對所述輸入資料位元群組的各者而從金鑰材料(104)中被選出,使得每一輸入資料位元群組對應一子金鑰;以及一輸出,其具有一第二長度的輸出資料位元(114),所述輸出是藉著在所述子金鑰(106a、106b、106c)之間施加至少一XOR運算而被產生,其中所述至少一XOR運算藉著一樹狀XOR閘(108a、108b、110a、110b、112)而被實施,且 其中所述樹狀XOR閘(108a、108b、110a、110b、112)按級別而被對稱地安排,使得在每一級別中的XOR閘從所述輸入起算,就其之前的所述XOR閘的數量而言是等距離。
  11. 如請求項10的系統,其中所述子金鑰(106a、106b、106c)共享所述金鑰材料(104)的位元。
  12. 如請求項10的系統,其中在一級別中的所述XOR閘約在相同時間切換。
TW106112753A 2016-06-10 2017-04-17 用於提供基於硬體之快速且安全的擴展和壓縮功能的系統和方法 TWI751153B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/178,973 2016-06-10
US15/178,973 US10797722B2 (en) 2016-06-10 2016-06-10 System and method for providing hardware based fast and secure expansion and compression functions

Publications (2)

Publication Number Publication Date
TW201803283A TW201803283A (zh) 2018-01-16
TWI751153B true TWI751153B (zh) 2022-01-01

Family

ID=58692329

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106112753A TWI751153B (zh) 2016-06-10 2017-04-17 用於提供基於硬體之快速且安全的擴展和壓縮功能的系統和方法

Country Status (6)

Country Link
US (1) US10797722B2 (zh)
EP (1) EP3255831B1 (zh)
JP (1) JP6969908B2 (zh)
CN (1) CN107491699B (zh)
SG (1) SG10201704647UA (zh)
TW (1) TWI751153B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11528124B2 (en) 2021-04-07 2022-12-13 Nxp B.V. Masked comparison circumventing compression in post-quantum schemes

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5614841A (en) * 1993-12-24 1997-03-25 Bull S.A. Frequency multiplier using XOR/NXOR gates which have equal propagation delays

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757913A (en) * 1993-04-23 1998-05-26 International Business Machines Corporation Method and apparatus for data authentication in a data communication environment
CN1157653C (zh) * 1994-04-22 2004-07-14 索尼公司 数据传输和接收装置及方法和数据记录和再现装置及方法
CN1102310C (zh) * 1994-07-14 2003-02-26 林仙坎 一种文件加密处理方法
JPH0993242A (ja) * 1995-09-27 1997-04-04 Nec Eng Ltd データ送受信装置
JPH09114373A (ja) * 1995-10-20 1997-05-02 Fujitsu Ltd 暗号化方式及び復号化方式並びにデータ処理装置
JPH10224341A (ja) * 1997-02-10 1998-08-21 Nec Eng Ltd 暗号化方法、復元方法、暗号化/復元方法、暗号化装置、復元装置、暗号化/復元装置および暗号化/復元システム
JP4238411B2 (ja) * 1999-04-12 2009-03-18 ソニー株式会社 情報処理システム
US6931543B1 (en) * 2000-11-28 2005-08-16 Xilinx, Inc. Programmable logic device with decryption algorithm and decryption key
US20060195402A1 (en) * 2002-02-27 2006-08-31 Imagineer Software, Inc. Secure data transmission using undiscoverable or black data
WO2004086622A1 (ja) * 2003-03-25 2004-10-07 Fujitsu Limited 遅延回路、および遅延回路の制御方法
US7913083B2 (en) * 2003-09-05 2011-03-22 Telecom Italia S.P.A. Secret-key-controlled reversible circuit and corresponding method of data processing
CN100367676C (zh) * 2004-05-27 2008-02-06 中国科学院计算技术研究所 一种卷积码的编码方法
EP1797504A2 (en) * 2004-09-29 2007-06-20 Koninklijke Philips Electronics N.V. Two-phase data transfer protocol
US7958436B2 (en) * 2005-12-23 2011-06-07 Intel Corporation Performing a cyclic redundancy checksum operation responsive to a user-level instruction
WO2007121035A2 (en) 2006-03-23 2007-10-25 Exegy Incorporated Method and system for high throughput blockwise independent encryption/decryption
FR2916871A1 (fr) 2007-06-01 2008-12-05 France Telecom Obtention de valeurs derivees dependant d'une valeur maitresse secrete.
CN101577621A (zh) * 2008-05-05 2009-11-11 姚锡根 基序列算法
US8094816B2 (en) * 2008-10-21 2012-01-10 Apple Inc. System and method for stream/block cipher with internal random states
US8238557B2 (en) 2008-12-16 2012-08-07 Exelis Inc. Method and apparatus for key expansion to encode data
CN101692636B (zh) * 2009-10-27 2011-10-05 中山爱科数字科技有限公司 一种基于数据元和坐标算法的混合型数据加密的方法和装置
FR2958057B1 (fr) * 2010-03-29 2016-04-01 Univ Nantes Generateur de sequences chaotiques, systeme de generation, procede de mesure d'orbite et programme d'ordinateur correspondants
CN101938350B (zh) * 2010-07-16 2012-06-06 黑龙江大学 一种基于组合编码的文件加密和解密的方法
CN102025484B (zh) * 2010-12-17 2012-07-04 北京航空航天大学 一种分组密码加解密方法
JP5682525B2 (ja) 2011-03-28 2015-03-11 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにプログラム
US8839001B2 (en) 2011-07-06 2014-09-16 The Boeing Company Infinite key memory transaction unit
US8843767B2 (en) 2011-07-06 2014-09-23 The Boeing Company Secure memory transaction unit
JP2013019744A (ja) * 2011-07-11 2013-01-31 Renesas Electronics Corp 故障箇所推定装置と方法並びにプログラム
CN103051935B (zh) * 2012-12-18 2015-06-10 深圳国微技术有限公司 一种密钥梯的实现方法及装置
CN103593618A (zh) * 2013-10-28 2014-02-19 北京实数科技有限公司 电子数据证据的可采用性验证方法及系统
US10313128B2 (en) 2014-08-29 2019-06-04 The Boeing Company Address-dependent key generator by XOR tree
KR102376506B1 (ko) 2014-10-20 2022-03-18 삼성전자주식회사 암복호화기, 암복호화기를 포함하는 전자 장치 및 암복호화기의 동작 방법
CN105187851A (zh) * 2015-07-31 2015-12-23 北京邮电大学 一种面向海量编码多媒体数据的速度可调节加密方法以及采用该方法的视频处理平台
US9794062B2 (en) 2015-10-08 2017-10-17 The Boeing Company Scrambled tweak mode of blockciphers for differential power analysis resistant encryption

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5614841A (en) * 1993-12-24 1997-03-25 Bull S.A. Frequency multiplier using XOR/NXOR gates which have equal propagation delays

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall1, and Niels Ferguson1,"On the Twofish Key Schedule", S. Tavares and H. Meijer (Eds.): SAC'98, LNCS 1556, pp. 27-42, 1999. *

Also Published As

Publication number Publication date
US10797722B2 (en) 2020-10-06
JP6969908B2 (ja) 2021-11-24
CN107491699B (zh) 2023-09-19
EP3255831A1 (en) 2017-12-13
EP3255831B1 (en) 2022-08-17
TW201803283A (zh) 2018-01-16
SG10201704647UA (en) 2018-01-30
CN107491699A (zh) 2017-12-19
JP2018026797A (ja) 2018-02-15
US20170359083A1 (en) 2017-12-14

Similar Documents

Publication Publication Date Title
KR102544298B1 (ko) 하드웨어 지원 빠른 의사 난수 생성 방법 및 시스템
EP3154217B1 (en) Scrambled tweak mode of block ciphers for differential power analysis resistant encryption
EP3468147B1 (en) Method for constructing secure hash functions from bit-mixers
TW201826162A (zh) 用於藉由位元混合器來產生保密器回合金鑰的方法和系統
Zhang et al. A Novel Chaotic Map and an Improved Chaos‐Based Image Encryption Scheme
US9729310B2 (en) Scrambled counter mode for differential power analysis resistant encryption
Gao et al. Digital image encryption scheme based on generalized Mandelbrot-Julia set
TWI751153B (zh) 用於提供基於硬體之快速且安全的擴展和壓縮功能的系統和方法
EP3154216B1 (en) Data dependent authentication keys for differential power analysis resistant authentication
Liu et al. Generating dynamic box by using an input string
Mahantesh et al. Design of secured block ciphers PRESENT and HIGHT algorithms and its FPGA implementation
Zheng et al. Implementation of high throughput XTS-SM4 module for data storage devices
Ayesha et al. FPGA implementation of PICO cipher
Modi et al. Multiplexer-based High-speed S-box Architecture for PRESENT Cipher in FPGA
Heera et al. Implementation of Photon Hash Function on FPGA
Anitha Kumari et al. Implementation of Present Cipher on FPGA for IoT Applications
Sao et al. Vulnerability of Dynamic Masking in Test Compression
Nastou et al. Dynamically modifiable ciphers using a reconfigurable CAST-128 based algorithm on AMTEL's FPSLIC rec
REKHA et al. Design and Implementation of Low Power, Light Weight Cryptographic Core using Hummingbird2 Algorithm
Emin et al. Chaos-based Image Encryption in Embedded Systems using Lorenz-Rossler System
Li et al. Design and implementation of AES key generator based on FPGA