JP5551065B2 - 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化方法およびデバイス - Google Patents
擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化方法およびデバイス Download PDFInfo
- Publication number
- JP5551065B2 JP5551065B2 JP2010510778A JP2010510778A JP5551065B2 JP 5551065 B2 JP5551065 B2 JP 5551065B2 JP 2010510778 A JP2010510778 A JP 2010510778A JP 2010510778 A JP2010510778 A JP 2010510778A JP 5551065 B2 JP5551065 B2 JP 5551065B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- state vector
- vector
- pseudo
- encryption
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/125—Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Description
・鍵のそれぞれのビットについて、P0およびP1のそれぞれの構成によって得られる転置ならびにP1およびP0のそれぞれの構成によって得られる転置は、全ての点で異なること、
・全ての点で異なる転置P0およびP1の同一の対が、1方向関数のdのステージ(転置の適用に相当するステージ)のそれぞれで使用されること、
・全ての点で恒等転置と個々に異なる転置P0およびP1の対が、1方向関数のdのステージのそれぞれで使用され、こうして、転置鍵のそれぞれのビットが、転置される入力データの全てのビットに影響を及ぼすこと
である。
・それぞれの反復についての現在出力ワードが、現在入力ワード、および、直前の反復で生成される状態ベクトルの上記直前の値に依存する可逆的アプリケーションによって計算される暗号化ステップと、
・上記それぞれの反復について状態ベクトルの現在値が、少なくとも状態ベクトルの上記直前の値に依存する非可逆的アプリケーションによって計算される擬似ランダム生成ステップと、を含み、
上記方法は、
・上記可逆的アプリケーションが、少なくとも第1および第2の秘密鍵関数を含み、上記秘密鍵が、状態ベクトルの直前の値の少なくとも1つのセクションから生成され、
・上記非可逆的アプリケーションが、さらに、状態ベクトルの直前の値および現在入力ワードに依存し、かつ、それぞれ上記第1の秘密鍵関数、上記第2の秘密鍵関数によって、それぞれ、入力ワード、出力ワードから隔離される現在中間値に依存することを特徴とする。
・入力、状態ベクトル、および出力を特徴とするシステムは、状態ベクトルが、有限な入力シーケンスの適用によって所定の値になりえない場合、駆使可能でない、
・入力、状態ベクトル、および出力を特徴とするシステムは、所与の時刻の状態ベクトルの値が、出力シーケンスの有限回の観測から推論されえない場合、観測可能でない。
・擬似ランダム生成ステップは、第1の状態ベクトルの現在値を形成する第1の擬似ランダム生成ステップであり、
・上記第1の擬似ランダム生成ステップは、第2の状態ベクトルの現在値を形成する少なくとも1つの第2の擬似ランダム生成ステップと並列に結合され、
・状態ベクトルの現在値は、第1の状態ベクトルの現在値および少なくとも第2の状態ベクトルの現在値に対して排他的論理和演算を適用することの結果である。
・第1の現在入力ワードおよび状態ベクトルの直前の値の少なくとも1つの第1のセクションに依存する第1の可逆的アプリケーションによって第1の現在出力ワードが、また、
・第1の現在中間値が計算される。
・第2の現在入力ワードおよび状態ベクトルの直前の値の少なくとも1つの第2のセクションに依存する第2の可逆的アプリケーションによって第2の現在出力ワードが、また、
・第2の現在中間値が計算され、
・擬似ランダム生成ステップ中に使用される現在中間値は、第1の現在中間値および少なくとも第2の現在中間値を含む。
・入力ベクトルのビットから別個のdビットを選択することによって、所定のサイズdの転置鍵を形成する手段と、
・転置鍵のそれぞれのビットに、少なくともそれぞれのビットの値の関数として選択されるサイズk1の転置を関連付ける手段と、
・上記出力ビットベクトルを得るために、転置鍵のdビットに関連付けられたサイズk1のdの転置を、入力ベクトルに連続して適用する手段と、を含む。
・上述した暗号論的モジュールであって、直前の反復で生成される状態ベクトルの直前の値の少なくとも1つのセクションから形成されるサイズkの少なくとも1つの第1の中間ベクトルを含む、k以上のサイズk1の仮ベクトルから結果ベクトルを生成するようになっており、上記転置鍵はk以下のサイズdである、上述した暗号論的モジュールと、
・結果ベクトルの少なくとも1つのセクションから上記状態ベクトルの現在値を得る手段と
を使用する手段を含む。
・状態ベクトルの直前の値および入力データブロックから計算される現在中間値を得る手段と、
・セクションが現在中間値によって置換えられた状態ベクトルの直前の値から上記第1の中間ベクトルを形成する手段と
を使用する。
・現在入力ワードおよび直前の反復で生成された状態ベクトルの直前の値に依存する可逆的アプリケーションによって、上記それぞれの反復について現在出力ワードを計算するようになっている暗号化手段と、
・状態ベクトルの直前の値に少なくとも依存する非可逆的アプリケーションによって、上記それぞれの反復について状態ベクトルの現在値を計算するようになっている擬似ランダム生成器と、を使用する。
・可逆的アプリケーションが、少なくとも第1および第2の秘密鍵関数を含み、秘密鍵が、状態ベクトルの直前の値の少なくとも1つのセクションから生成され、
・非可逆的アプリケーションが、状態ベクトルの直前の値および現在入力ワードに依存し、かつ、上記第1の秘密鍵関数または上記第2の秘密鍵関数によって、入力ワードまたは出力ワードから隔離される現在中間値にさらに依存する、
といったものである。
・Mの連続する反復において状態ベクトルの一連のMの値を生成する、上述した本発明による暗号論的生成器と、
・Mの連続する反復のそれぞれの反復において、
・メッセージの現在データブロック、および、暗号論的生成器によって生成された状態ベクトルの直前の値から、それぞれの反復について現在中間値を計算し、
・現在中間値を暗号論的生成器に供給する
手段と、
・上記生成器によって生成された状態ベクトルの最新の値からメッセージのダイジェストを得る手段と、を含む。
特に有利である方法で、本発明は、構成可能な(または、パラメータ化可能な)転置関数P、すなわち、セットされうるパラメータを有する関数であって、以下で説明する様々な暗号論的アプリケーションで、特に、擬似ランダム生成のため、暗号化/復号化データのため、およびメッセージを暗号論的にハッシングするために使用されうる、セットされうるパラメータを有する関数を提案する。
S=P(E,C)
が使用されて、転置鍵Cによってセットされたパラメータを有する転置関数Pが、出力データSを得るために入力データEに適用されることが指定される。
図1は、擬似ランダムデータシーケンス3を生成するための、本発明の擬似ランダム生成器1の例を線図で表す。図1Bは、この擬似ランダム生成器の1つの特定の実施形態を示す。図1Aおよび1Bはまた、擬似ランダムデータシーケンスを生成する本発明の方法の原理的なステップを示すことに留意されたい。
図2〜12は、図1A(その特定の実施態様が、図1Bに例として示される)で線図で示す擬似ランダム生成器1が、一連の入力ワードを暗号化する、かつ/または、復号化するために、暗号化/復号化モジュールと結合して使用されうることを示す。図2〜12はまた、入力データシーケンスを暗号化する方法の主要なステップを示すことに留意されたい。この状況では、現在中間値Xαは、擬似ランダム生成器の適用と独立の適用によって、暗号化/復号化モジュールによって計算されうる。
Vn=(…(Xn=(xn1…xnm))…(An=(an1…anm))…(Bn=(bn1…bnm))…)
であるように構築されうる。
・第1の全単射的転置手段39aは、第2の状態ベクトルAn-1の直前の値に等しい転置鍵によってセットされたパラメータを有する転置関数Pに相当する第1の全単射的転置を実施し、
・第2の全単射的転置手段39bは、第1の状態ベクトルXn-1の直前の値に等しい転置鍵によってセットされたパラメータを有する転置関数Pに相当する第2の全単射的転置を実施し、
・第3の全単射的転置手段39cは、第1の状態ベクトルXn-1の直前の値に等しい転置鍵によってセットされたパラメータを有する転置関数Pに相当する第3の全単射的転置を実施し、
・第4の全単射的転置手段39dは、第3の状態ベクトルBn-1の直前の値に等しい転置鍵によってセットされたパラメータを有する転置関数Pに相当する第4の全単射的転置を実施する。
Vn=(Xn'An'Bn'Xn''An''Bn''…)
である。
さらに、本発明の1つの特定の実施形態では、同じ暗号化/復号化モジュールについて並列の複数の生成器を使用することが可能であることに留意されたい。
上記例では、状態ベクトルは、特定数kのビットを含み、それぞれの出力ワードまたは入力ワードは、状態ベクトルのビットの特定数kより小さい特定数mのビットを含む。
本発明の暗号化方法およびデバイスの種々の実施形態は、高ビットレートストリーム暗号化アプリケーション(電気通信、保護されたマルチメディアコンテンツ放送、サーバにおけるデータのオンザフライ暗号化、パーソナルコンピュータ、およびソフトウェアアプリケーション)について使用されうる。さらに、暗号化プロセスの構造そのものが、暗号化プロセスを暗号論的多重化の分野のアプリケーションに適合させる。
Vn=(…X1n,A1n,B1n,E1n,…,X2n,A2n,B2n,E2n,…,XMn,AMn,BMn,EMn,…)
をとる。
図14は、図1Aに線図で示す擬似ランダム生成器1が同様に、メッセージのダイジェストを生成するために、本発明の暗号論的ハッシング(またはhash)デバイス内のプレコンディショニングモジュールと結合して使用されうることを示す。
Vn=(…(Xn=(xn1…xnm))…(An=(an1…anm))…)
である方法で構築されうる。
・第1の全単射的転置手段439aは、第2の状態変数An-1の直前の値に等しい転置鍵によってセットされたパラメータを有する転置関数Pに相当する第1の全単射的転置を使用し、
・第2の全単射的転置手段439bは、第1の状態変数Xn-1の直前のちに等しい転置鍵によってセットされたパラメータを有する転置関数Pに相当する第2の全単射的転置を使用する。
・第1の転置手段439aは、第1の全単射的転置を、現在入力ブロックZnに適用することによって第1の中間ワードJ1nを計算し、その転置は、第2の状態変数の直前の値An-1によってセットされたパラメータを有する:J1n=P(Zn,An-1)。
・第1の排他的論理和ゲート441aは、排他的論理和演算を第1の中間ワードJ1nおよび第2の状態変数の直前の値An-1に適用することによって第2の中間ワードJ2nを計算する:
・第2の排他的論理和ゲート441bは、排他的論理和演算を、第3の中間ワードJ3nおよび第1の状態変数の直前の値Xn-1に適用することによって現在中間値Xαを計算する:
上記例で使用される転置関数Pがどのように働くかは、図9A〜9Eを参照して以下でより詳細に述べられる。
・転置鍵が入力データから生成される(たとえば、鍵=入力データである)場合、1方向関数であり、したがって、非可逆的(非反転可能)であり、これらの1方向関数特性が、擬似ランダム生成器1によって実行される演算および本発明の暗号論的モジュールにおいて利用される、または、
・全単射的関数(全単射的鍵転置)であり、全単射的関数は、したがって、転置鍵の値がわかっており、転置鍵が入力データに対して独立であるまたは固定される場合に限り可逆的であり、これらの全単射的関数特性は、暗号論的ハッシングデバイスの暗号化/復号化モジュール17またはプレコンディショニングモジュール417の隔離関数または手段において利用されうる。
・鍵のそれぞれのビットについて、P0およびP1をそれぞれ構成することによって得られる転置ならびにP1およびP0をそれぞれ構成することによって得られる転置は、全ての点で異なること、
・全ての点で異なる転置P0およびP1の同一の対が、転置関数のpのステージ(転置の適用に相当するステージ)のそれぞれで使用される、すなわち、任意のtについて、第1の転置についての出力におけるビットtの位置は、第2の転置についての出力におけるビットtの位置と異なること、
・それぞれのステージで転置の対(P0,P1)が使用され、それにより、転置P0およびP1が、全ての点で恒等転置と個々に異なる、すなわち、転置P0またはP1の適用前の位置tにあるビットは、転置P0または転置P1によって、出口に関してtと異なる位置に位置すること
である。
・第1ステップでは、それぞれサイズeの2つの転置(P0,P1)のp列で構成されたサイズ(p,2e)のテーブルであって、ハードウェア実施態様において経路指定マトリクスの役もする、サイズ(p,2e)のテーブルが前もって計算され、
・第2ステップで、かつ、転置関数Pを使用するとき、このテーブルのそれぞれの列iは、2つの考えられる転置を提供し、これらの転置の一方または他方は、使用される転置鍵のi番目のビットの値vkey(i)の関数として選択される。
Output data = recursive function (input data, key, permutation table, i)
If i=1; then
If Vkey(1) = 0; then
Output data = Permutation(1)_Vkey_0 (input data)
Else,
Output data = Permutation(1)_Vkey_1 (input data)
Endif
Else,
If Vkey(i) = 0; then
Output data = Permutation(i)_Vkey_0 (recursive function (input data, key, permutation table, i-1))
Else,
Output data = Permutation(1)_Vkey_1 (recursive function (input data, key, permutation table, i-1))
Endif
Endif
End of function
3、13 擬似ランダムデータシーケンス
5 暗号論的モジュールと状態ベクトルの現在値を得る手段とを使用する手段
7 入力データシーケンスを暗号化するデバイス
17 暗号化手段
25、325a 第1の中間ベクトルを形成する手段
27a、41a、41c、131、327a 排他的論理和演算
35a、35c 秘密鍵関数
45 状態ベクトルの新しい現在値を計算する手段
323 現在中間値を得る手段
326 暗号論的モジュール
326a 入力ベクトルに転置を連続して適用する手段
326b 転置鍵を形成する手段
407 暗号論的ハッシングデバイス
C サイズdの転置鍵
hash ダイジェスト
Mess メッセージ
V サイズkの状態ベクトル
V0 状態ベクトルの初期値
Vn 状態ベクトルの現在値
Vn-1 状態ベクトルの直前の値
VM 状態ベクトルから生成される最新の値
Vprov サイズkの仮ベクトル
Vint1 サイズkの第1の中間ベクトル
Vint2 適用ステップの結果ベクトルのセクション
Vres 適用ステップの結果ベクトル
Vtmp 状態ベクトルの新しい現在値
Xα 状態ベクトルの直前の値から計算される現在中間値
Xn-1、An-1、Bn-1 状態ベクトルの直前の値のセクション
Un、Yn、Zn 入力データブロック
w 可変のビット数
V1 第1の状態ベクトル
V2 第2の状態ベクトル
V1n 第1の状態ベクトルの現在値
V2n 第2の状態ベクトルの現在値
Y1n、U1n 第1の現在出力ワード
Y2n、U2n 第2の現在出力ワード
U2n、Y2n 第2の現在入力ワード
X1α 第1の現在中間値
X2α 第2の現在中間値
Claims (19)
- 状態ベクトルの初期値(V0)から反復的に生成される、サイズkの状態ベクトル(V)の一連の値によって形成される擬似ランダムデータシーケンス(3,13)を疑似ランダム生成器により生成する暗号化方法であって、それぞれの反復中に、前記それぞれの反復について前記状態ベクトルの現在値(Vn)を生成するために、前記方法は、
・前記疑似ランダム生成器による適用ステップであって、k以上のサイズk1の転置の所定の数dからなる複数の転置は、直前の反復で生成された状態ベクトルの直前の値(Vn-1)の少なくとも1つのセクションから形成されるサイズkの少なくとも1つの第1の中間ベクトル(Vint1)を含むサイズk1の仮ベクトル(Vprov)に対して連続して適用され、それぞれの転置は、サイズdの転置鍵(C)のビットに関連し、かつ、少なくとも前記ビットの値の関数として選択され、前記転置鍵は、前記第1の中間ベクトル(Vint1)のkビットからdビットを選択することの結果であるステップと、
・前記疑似ランダム生成器により前記状態ベクトルの前記現在値(Vn)を、前記適用ステップの結果ベクトル(Vres)の少なくとも1つのセクション(Vint2)から得るステップと、
を含むことを特徴とする擬似ランダムデータシーケンスを生成する暗号化方法。 - 前記仮ベクトルは、前記第1の中間ベクトルのそれぞれのビットの1の補数を求めることによって得られるベクトルをさらに含むことを特徴とする請求項1に記載の擬似ランダムデータシーケンスを生成する暗号化方法。
- 前記状態ベクトルの前記現在値は、前記適用ステップの前記結果ベクトルの前記セクション(Vint2)および前記状態ベクトルの前記直前の値に対して排他的論理和演算(327a,27a)を適用することの結果であることを特徴とする請求項1または請求項2に記載の擬似ランダムデータシーケンスを生成する暗号化方法。
- 仮ベクトル(Vprov)および前記転置鍵(C)は、同じサイズであり、前記第1の中間ベクトル(Vint1)のサイズに等しいことを特徴とする請求項1または請求項3に記載の擬似ランダムデータシーケンスを生成する暗号化方法。
- それぞれの反復は、前記適用ステップの前に、前記状態ベクトルの前記直前の値(Vn-1)および入力データブロック(Un,Yn,Zn)からアプリケーション(AT)により計算される現在の中間値(Xα)を得るステップをさらに含み、
前記第1の中間ベクトルは、前記状態ベクトルの前記直前の値によって形成され、
セクション(Xn-1)は、前記現在の中間値(Xα)によって置換えられていることを特徴とする請求項1から4のいずれか1項に記載の擬似ランダムデータシーケンスを生成する暗号化方法。 - ハッシングデバイスにより、メッセージのダイジェスト(hash)を生成するために、擬似ランダムデータシーケンスを生成する請求項5に記載の暗号化方法を使用して、前記メッセージ(Mess)を暗号化ハッシングする方法であって、
前記メッセージは、所定の数Mのデータブロックを含み、
それぞれのデータブロックは、前記状態ベクトル(V)のMの値を生成するように擬似ランダムデータシーケンスを生成する暗号化方法の連続する反復中に、入力ブロック(Zn)として順番に使用され、
前記メッセージの前記ダイジェストは、前記状態ベクトルの生成された最新の値(VM)から得られることを特徴とする方法。 - 暗号化デバイスによる、入力データシーケンスの暗号化方法であって、
状態ベクトル(V)の初期値(V0)および前記入力データシーケンスを形成する一連の入力ワード(Un,Yn)から、前記状態ベクトルの一連の値(Vn)および一連の出力ワード(Yn,Un)が反復的に生成され、それぞれの反復は、
・前記暗号化デバイスにより、前記それぞれの反復についての現在出力ワード(Yn, Un)が、現在入力ワード(Un,Yn)、および、直前の反復で生成された前記状態ベクトルの直前の値(Vn-1)に依存する可逆的アプリケーションによって計算される暗号化ステップと、
・前記暗号化デバイスにより、前記それぞれの反復について前記状態ベクトルの現在値(Vn)が、前記状態ベクトルの前記直前の値(Vn-1)に少なくとも依存する非可逆的アプリケーションによって計算される擬似ランダム生成ステップと、を含み、
前記可逆的アプリケーションは、少なくとも第1および第2の秘密鍵関数(35a、35c)を含み、秘密鍵は、前記状態ベクトルの前記直前の値の少なくとも1つのセクション(Xn-1,An-1,Bn-1)から生成され、
前記非可逆的アプリケーションは、前記状態ベクトルの前記直前の値(Vn-1)および前記現在入力ワード(Un,Yn)に依存し、かつ、前記第1の秘密鍵関数(35a)または前記第2の秘密鍵関数(35c)によって、前記入力ワード(Un,Yn)または前記出力ワード(Yn, Un)から隔離される現在中間値(Xα)にさらに依存することを特徴とする暗号化方法。 - 前記第1および第2の秘密鍵関数の一方または両方は、前記関数の前記秘密鍵の少なくとも1つのセクション(An-1,Bn-1)によってセットされたパラメータを有する少なくとも1つの排他的論理和演算(41a,41c)を含むことを特徴とする請求項7に記載の暗号化方法。
- 前記状態ベクトルは、サイズkであり、前記擬似ランダム生成ステップは、前記状態ベクトルの前記現在値を計算するために、
・適用ステップであって、前記状態ベクトルの前記直前の値のセクションおよび非可逆的アプリケーションに依存する現在中間値から形成されるサイズkの少なくとも1つの第1の中間ベクトルを含むk以上のサイズk1の仮ベクトルに対して、サイズk1の転置の所定の数dからなる複数の転置が連続して適用され、それぞれの転置は、それぞれ、サイズdの転置鍵のそれぞれの別個のビットに関連し、かつ、少なくとも前記転置鍵のビットの値の関数として選択され、前記鍵は、前記第1の中間ベクトルのkビットから別個のdビットを選択することによって得られるステップと、
・前記状態ベクトルの前記現在値(Vn)を、前記適用ステップの結果ベクトルの少なくとも1つのセクションから得るステップと、
を含むことを特徴とする請求項7または請求項8に記載の暗号化方法。 - 前記仮ベクトルは、前記第1の中間ベクトルのそれぞれのビットの1の補数を求めることによって得られるベクトルをさらに含むことを特徴とする請求項9に記載の暗号化方法。
- 前記状態ベクトルの前記現在値は、前記適用ステップの前記結果ベクトルの前記セクション(Vint2)および前記状態ベクトルの前記直前の値に適用された排他的論理和演算(27a,327a)の結果であることを特徴とする請求項9または請求項10に記載の暗号化方法。
- 前記入力ワード(Un,Yn)または前記出力ワードと、前記入力ワード(Un,Yn)および前記出力ワードの両方と、のいずれか一方は、前記反復の関数として可変のビット数(w)を含み、
前記状態ベクトルは、それぞれの反復において可変の前記ビット数を指示するセクションを含むことを特徴とする請求項7から11のいずれか1項に記載の暗号化方法。 - それぞれの反復の前記擬似ランダム生成ステップは、前記状態ベクトルの前記現在値から、可変の前記ビット数がゼロであると判定されると、前記状態ベクトルの前記現在値に依存する非可逆的アプリケーションによって、前記状態ベクトルの前記現在値を置換える前記状態ベクトルの新しい現在値(Vtemp)を計算するステップをさらに含むことを特徴とする請求項12に記載の暗号化方法。
- ・前記擬似ランダム生成ステップは、第1の状態ベクトル(V1)の現在値(V1n)を形成する第1の擬似ランダム生成ステップであり、
・前記第1の擬似ランダム生成ステップは、第2の状態ベクトル(V2)の現在値(V2n)を形成する少なくとも1つの第2の擬似ランダム生成ステップと並列に組み合わされ、
・前記状態ベクトルの前記現在値(Vn)は、前記第1の状態ベクトルの前記現在値(V1n)および少なくとも前記第2の状態ベクトルの前記現在値(V2n)に対して排他的論理和演算(131)を適用することの結果であることを特徴とする請求項7から13のいずれか1項に記載の暗号化方法。 - 前記暗号化ステップは第1の暗号化ステップであり、前記第1の暗号化ステップにおいて、
・第1の現在入力ワード(U1n,Y1n)および前記状態ベクトルの前記直前の値(Vn-1)の少なくとも1つの第1のセクションに依存する第1の可逆的アプリケーションによって第1の現在出力ワード(Y1n,U1n)と、また、
・第1の現在中間値(X1α)と、が計算され、
前記方法は、少なくとも1つの第2の暗号化ステップをさらに含み、前記第2の暗号化ステップにおいて、
・第2の現在入力ワード(U2n,Y2n)および前記状態ベクトルの前記直前の値(Vn-1)の少なくとも1つの第2のセクションに依存する第2の可逆的アプリケーションによって第2の現在出力ワード(Y2n,U2n)と、また、
・第2の現在中間値(X2α)と、が計算され、
前記擬似ランダム生成ステップ中に使用される前記現在中間値は、前記第1の現在中間値(X1α)および少なくとも前記第2の現在中間値(X2α)を含むことを特徴とする請求項7から14のいずれか1項に記載の暗号化方法。 - 少なくとも2つの暗号化メッセージブロックを形成するために、平文の少なくとも2つのメッセージブロックの暗号的多重化をするステップをさらに含み、
平文のそれぞれのメッセージブロックは、一連の入力ワードに相当し、
前記少なくとも2つの暗号化メッセージブロックは、前記状態ベクトルの前記直前の値のセクションの関数としてそれぞれの反復において順序付けられることを特徴とする請求項15に記載の暗号化方法。 - プログラムコード命令を含むコンピュータプログラムであって、
前記プログラムが、コンピュータまたはデータ処理システムにロードされ、前記コンピュータまたはデータ処理システムで実行されると、前記コンピュータ又は前記データ処理システムは疑似ランダム生成器を使用して、請求項1から5のいずれか1項に記載の、擬似ランダムデータシーケンスを生成する方法を実行することを特徴とするコンピュータプログラム。 - プログラムコード命令を含むコンピュータプログラムであって、前記プログラムが、コンピュータまたはデータ処理システムにロードされ、前記コンピュータまたはデータ処理システムで実行されると、前記コンピュータ又は前記データ処理システムはハッシングデバイスを使用して、請求項6に記載の暗号化ハッシング方法を実行することを特徴とするコンピュータプログラム。
- プログラムコード命令を含むコンピュータプログラムであって、前記プログラムが、コンピュータまたはデータ処理システムにロードされ、前記コンピュータまたはデータ処理システムで実行されると、前記コンピュータ又は前記データ処理システムは暗号化デバイスを使用して、請求項7から16のいずれか1項に記載の暗号化方法を実行することを特徴とするコンピュータプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP07301086A EP2001154A1 (fr) | 2007-06-05 | 2007-06-05 | Procédé et dispositif de chiffrement/déchiffrement d'une séquence de données d'entrée |
EP07301086.0 | 2007-06-05 | ||
PCT/EP2008/056889 WO2008148784A2 (fr) | 2007-06-05 | 2008-06-04 | Procedes et dispositifs cryptographiques de generation pseudo-aleatoire de chiffrement de donnees et de hachage cryptographique d'un message |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014064046A Division JP5822970B2 (ja) | 2007-06-05 | 2014-03-26 | 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化デバイス |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010529496A JP2010529496A (ja) | 2010-08-26 |
JP5551065B2 true JP5551065B2 (ja) | 2014-07-16 |
Family
ID=38621191
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010510778A Expired - Fee Related JP5551065B2 (ja) | 2007-06-05 | 2008-06-04 | 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化方法およびデバイス |
JP2014064046A Expired - Fee Related JP5822970B2 (ja) | 2007-06-05 | 2014-03-26 | 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化デバイス |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014064046A Expired - Fee Related JP5822970B2 (ja) | 2007-06-05 | 2014-03-26 | 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化デバイス |
Country Status (8)
Country | Link |
---|---|
US (1) | US8837719B2 (ja) |
EP (2) | EP2001154A1 (ja) |
JP (2) | JP5551065B2 (ja) |
KR (1) | KR101564601B1 (ja) |
CN (1) | CN101779412B (ja) |
AU (1) | AU2008258582B2 (ja) |
CA (1) | CA2687822C (ja) |
WO (1) | WO2008148784A2 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2912529A1 (fr) * | 2007-02-13 | 2008-08-15 | France Telecom | Couplage d'un programme informatique ou de donnees a un systeme de reference et verification associee. |
US8311222B2 (en) * | 2008-08-26 | 2012-11-13 | GlobalFoundries, Inc. | Hardware based multi-dimensional encryption |
CN102135871B (zh) * | 2011-03-29 | 2013-12-18 | 深圳职业技术学院 | 利用混沌原理产生随机数的装置及其动态口令牌 |
US8958550B2 (en) | 2011-09-13 | 2015-02-17 | Combined Conditional Access Development & Support. LLC (CCAD) | Encryption operation with real data rounds, dummy data rounds, and delay periods |
US8879733B2 (en) * | 2012-07-10 | 2014-11-04 | Infineon Technologies Ag | Random bit stream generator with guaranteed minimum period |
US8861725B2 (en) * | 2012-07-10 | 2014-10-14 | Infineon Technologies Ag | Random bit stream generator with enhanced backward secrecy |
EP2731291A1 (en) * | 2012-11-12 | 2014-05-14 | Gemalto SA | Control method and device for controlling authenticity of codes resulting from application of a bijective algorithm to messages |
US10187358B2 (en) * | 2013-12-03 | 2019-01-22 | Amazon Technologies, Inc. | Data transfer optimizations |
US20150222421A1 (en) * | 2014-02-03 | 2015-08-06 | Qualcomm Incorporated | Countermeasures against side-channel attacks on cryptographic algorithms |
EP2996277B1 (en) * | 2014-09-10 | 2018-11-14 | Nxp B.V. | Securing a crytographic device against implementation attacks |
US10361844B2 (en) * | 2015-04-20 | 2019-07-23 | Certicom Corp. | Generating cryptographic function parameters based on an observed astronomical event |
US10079675B2 (en) | 2015-04-20 | 2018-09-18 | Certicom Corp. | Generating cryptographic function parameters from a puzzle |
US10375070B2 (en) | 2015-04-20 | 2019-08-06 | Certicom Corp. | Generating cryptographic function parameters from compact source code |
US11876889B2 (en) * | 2015-09-03 | 2024-01-16 | Fiske Software, Llc | NADO cryptography with key generators |
US10229282B2 (en) | 2016-06-12 | 2019-03-12 | Apple Inc. | Efficient implementation for differential privacy using cryptographic functions |
US10756892B2 (en) * | 2017-02-09 | 2020-08-25 | Sap Se | Protecting data in a multi-tenant cloud-based system |
CN108776583B (zh) * | 2018-06-07 | 2022-10-18 | 福建江夏学院 | π小数点后面位数的随机数表建立方法 |
US11451521B2 (en) | 2018-10-18 | 2022-09-20 | Paypal, Inc. | Systems and methods for encrypted data transmission |
CN109150923A (zh) * | 2018-11-06 | 2019-01-04 | 江苏怡通数码科技有限公司 | 基于混合加密的网络传输数据安全处理方法 |
WO2020215146A1 (en) * | 2019-04-23 | 2020-10-29 | Quantropi Inc. | Enhanced randomness for digital systems |
US11816228B2 (en) | 2020-09-25 | 2023-11-14 | Advanced Micro Devices, Inc. | Metadata tweak for channel encryption differentiation |
CN113098860B (zh) * | 2021-03-30 | 2023-04-07 | 三一汽车起重机械有限公司 | 一种can总线加密方法、装置、工程机械和存储介质 |
CN113342985B (zh) * | 2021-08-02 | 2021-11-09 | 武汉泰乐奇信息科技有限公司 | 一种基于权限认证的大数据再生方法和装置 |
CN118113254A (zh) * | 2023-12-31 | 2024-05-31 | 北京海泰方圆科技股份有限公司 | 一种随机数种子的生成方法、装置、电子设备及介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5003596A (en) | 1989-08-17 | 1991-03-26 | Cryptech, Inc. | Method of cryptographically transforming electronic digital data from one form to another |
US5796836A (en) | 1995-04-17 | 1998-08-18 | Secure Computing Corporation | Scalable key agile cryptography |
US5734721A (en) * | 1995-10-12 | 1998-03-31 | Itt Corporation | Anti-spoof without error extension (ANSWER) |
EP0963634A1 (de) | 1997-02-26 | 1999-12-15 | Siemens Aktiengesellschaft | Verfahren und anordnung zur rechnergestützten bildung einer permutation zur permutierung digitaler signale und verfahren und anordnung zur verschlüsselung digitaler signale |
US6339645B2 (en) * | 1998-03-06 | 2002-01-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Pseudo-random sequence generator and associated method |
US7197142B2 (en) * | 2001-08-24 | 2007-03-27 | Alten Alexander I | System and methods for a vernam stream cipher |
WO2004017192A2 (en) * | 2002-08-19 | 2004-02-26 | Analog Devices Inc. | Fast linear feedback shift register engine |
US7215769B2 (en) * | 2002-11-06 | 2007-05-08 | Fiske Software Llc | Non-autonomous dynamical orbit cryptography |
WO2007075154A2 (en) * | 2004-12-06 | 2007-07-05 | The Trustees Of The Stevens Institute Of Technology | Method and apparatus for maintaining data integrity for block-encryption algorithms |
US7715563B2 (en) * | 2006-02-16 | 2010-05-11 | General Dynamics C4 Systems, Inc. | Rapid acquisition of state vectors in an encrypted data communication system |
-
2007
- 2007-06-05 EP EP07301086A patent/EP2001154A1/fr not_active Withdrawn
-
2008
- 2008-06-04 US US12/602,626 patent/US8837719B2/en not_active Expired - Fee Related
- 2008-06-04 KR KR1020107000092A patent/KR101564601B1/ko not_active IP Right Cessation
- 2008-06-04 CN CN200880102186.4A patent/CN101779412B/zh not_active Expired - Fee Related
- 2008-06-04 EP EP08760471A patent/EP2165456A2/fr not_active Withdrawn
- 2008-06-04 AU AU2008258582A patent/AU2008258582B2/en not_active Ceased
- 2008-06-04 JP JP2010510778A patent/JP5551065B2/ja not_active Expired - Fee Related
- 2008-06-04 WO PCT/EP2008/056889 patent/WO2008148784A2/fr active Application Filing
- 2008-06-04 CA CA2687822A patent/CA2687822C/en not_active Expired - Fee Related
-
2014
- 2014-03-26 JP JP2014064046A patent/JP5822970B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20100031717A (ko) | 2010-03-24 |
JP5822970B2 (ja) | 2015-11-25 |
US8837719B2 (en) | 2014-09-16 |
EP2165456A2 (fr) | 2010-03-24 |
AU2008258582B2 (en) | 2013-05-30 |
KR101564601B1 (ko) | 2015-10-30 |
WO2008148784A2 (fr) | 2008-12-11 |
CA2687822A1 (en) | 2008-12-11 |
JP2014139687A (ja) | 2014-07-31 |
CN101779412A (zh) | 2010-07-14 |
CA2687822C (en) | 2016-07-26 |
AU2008258582A1 (en) | 2008-12-11 |
JP2010529496A (ja) | 2010-08-26 |
CN101779412B (zh) | 2014-12-17 |
US20100142705A1 (en) | 2010-06-10 |
EP2001154A1 (fr) | 2008-12-10 |
WO2008148784A3 (fr) | 2009-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5822970B2 (ja) | 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化デバイス | |
US10320554B1 (en) | Differential power analysis resistant encryption and decryption functions | |
JP4905000B2 (ja) | 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム | |
DK1686722T3 (en) | Block encryption device and block encryption method comprising rotation key programming | |
US8553880B2 (en) | Pseudorandom number generating system, encryption system, and decryption system | |
US11546135B2 (en) | Key sequence generation for cryptographic operations | |
US9515818B2 (en) | Multi-block cryptographic operation | |
US8094816B2 (en) | System and method for stream/block cipher with internal random states | |
KR20090094086A (ko) | 암호 처리 장치, 암호 처리 방법과 컴퓨터 프로그램 | |
CA2486713A1 (en) | Advanced encryption standard (aes) hardware cryptographic engine | |
US9565018B2 (en) | Protecting cryptographic operations using conjugacy class functions | |
CN108141352B (zh) | 密码设备、方法、装置和计算机可读介质和编码设备、方法、装置和计算机可读介质 | |
US8437470B2 (en) | Method and system for block cipher encryption | |
KR20050078271A (ko) | 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법 | |
Deepthi et al. | Cryptanalysis of Salsa and ChaCha: revisited | |
US20040120521A1 (en) | Method and system for data encryption and decryption | |
Buell | Modern symmetric ciphers—Des and Aes | |
KR20130126924A (ko) | 암호 처리 장치 및 암호 처리 방법, 및 프로그램 | |
JP5207153B2 (ja) | 擬似乱数発生システム | |
Ledda et al. | Enhancing IDEA algorithm using circular shift and middle square method | |
Islam et al. | Data encryption standard | |
RU2359415C2 (ru) | Способ криптографического преобразования блоков цифровых данных | |
Bhavani et al. | Security enhancement using modified AES and Diffie–Hellman key exchange | |
KR20210081908A (ko) | 암호화 알고리즘이 적용된 시스템에서의 데이터 처리 방법 | |
JP5268011B2 (ja) | 暗号化システム及び復号化システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110413 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130319 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130619 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130626 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130719 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20131126 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140326 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140407 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140421 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140521 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5551065 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |