JPH09505901A - 機密通信用のマルチストリーム暗号化システム - Google Patents

機密通信用のマルチストリーム暗号化システム

Info

Publication number
JPH09505901A
JPH09505901A JP7510961A JP51096195A JPH09505901A JP H09505901 A JPH09505901 A JP H09505901A JP 7510961 A JP7510961 A JP 7510961A JP 51096195 A JP51096195 A JP 51096195A JP H09505901 A JPH09505901 A JP H09505901A
Authority
JP
Japan
Prior art keywords
pseudo
array
random
data
generator
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.)
Pending
Application number
JP7510961A
Other languages
English (en)
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 JPH09505901A publication Critical patent/JPH09505901A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Abstract

(57)【要約】 機密通信用のプログラム可能なマルチストリーム暗号化システムであるMUSEは、ダイナミックな暗号の機密保護を行い、実時間制約の下で非常に大きいデータブロック(VLBD)を伝送する非常に効率的な監視機構を提供する。暗号化は空間および時間の両方で疑似ランダムに変化する。MUSEは、利用者がデータ(VLBD)の並列流を順次受取って、演算代数的疑似ランダムアレイ発生器(41)(PRAG)を使用して実時間でこのデータを暗号化する有限状態マシン(21)を特定することを可能にする。暗号化する方法は、代数アルファベット(有限リング)からの要素として入って来たデータ流をみなして、単一のシードキー(20)から反復的に生成された疑似ランダムベクトルシーケンス(21)をこれに加算することによって暗号化する1回の代数パッドシステムである。暗号の解読は、このプロセスを逆にすることによって行われる。

Description

【発明の詳細な説明】 機密通信用のマルチストリーム暗号化システム [発明の背景] 1.発明の分野 本発明は、機密通信用の暗号化システムに関し、特にMUSEと呼ばれるマル チストリーム暗号化システムに関する。 2.関連技術の説明 いくつかの新しい計算および通信技術のために、非常に大きいデータブロック (VLBD)の並列流を処理するプログラム可能な高速暗号システムが必要にな る。このような技術には、伝送用のデジタル光ファイバを使用する高性能コンピ ュータネットワークによりサポートされた分配されたマルチメディア情報システ ムが含まれる。これらの技術の同時期の製品には、電子メール、ファックス、ボ イスメール、セル電話、ビデオ会議、イメージ記録および衛星通信が含まれる。 これらの技術は急速に発達したため、同時期の暗号化方法はこのニーズ全体に対 して同時に対応していない。 [発明の要約] マルチストリームのデータは、ディスクリートな瞬間tiでMUSEに入力し 、大きいセットのバッファB1,B2,…,Bmに動的に割当てられる。各バッフ ァBjの演算は、個々のリング構造Rjに基づいている。メモリに記憶されな い単一のシードキーから、リングの別の直積において演算を使用する演算代数的 疑似ランダムアレイ発生器PRAGは、時間でパラメータ化された疑似ランダム ベクトルキーストリームk(ti)を生成する。各瞬間tiにおいて、PRAGは 、各ベクトル成分がリングRjで取られ、バッフアBjに加算される疑似ランダム 数シーケンスの疑似ランダムベクトルをk(ti)から発生する。暗号化された データは出力され、バッファは入力データで再び満たされる。暗号解読は、プロ セスを逆にすることによって実行され、シードキーの知識を必要とする。 MUSEは、スペース・時間暗号化を行う。暗号は各バッファ(スペース)に おいて、および各瞬間において異なっている。さらに、暗号のダイナミックスは スペースおよび時間が変化するため、それ自身疑似ランダム的である。これは、 セキュリティの付加されたディメンションを提供する。MUSEのすぐれた特徴 は、承認されていない暗号解読の試みを瞬間的に検出して、このような事件が発 生したことを承認された利用者に報告する監視機構である。 本発明の有効な特徴によると、入力したデータ流は非常に大きいまたは大きさ が無制限のものであってもよい。エンドレスデータ流の暗号化は、実時間アレイ 発生器を含むシステムによって行われることができる。疑似ランダムアレイ発生 器は、入力したデータ流の潜在的な大きさと比較して比較的小さい暗号アレイを 生成するように動作する。好ましい実施例によると、暗号アレイは1Kビット× 1Kビットであって もよい。疑似ランダムアレイ発生器は、アレイのシーケンスを反復的に生成する 。各連続アレイは、キーベクトル発生器の次の状態出力に基づいてもよい。 [好ましい実施例の詳細な説明] 1.概念構成 同時期ストリーム暗号の元のものは、一時パッド暗号システム、または電信通 信のために1917年にその方法を開発したG.Vernam氏に敬意を表して命名されたヴ ァーナム暗号に由来する(D.Kahn氏によるThe Code Breakers,The Story of Sec ret Writing,Macmillan Publishing Co.,New York(1967))。一時パッド暗号シ ステムは最も簡単で最も安全な機密キーな暗号化システムである。それは次のよ うに動作する。 F2は、ビットと呼ぶ2つの要素0,1の有限フィールドを示すものとする(R .LidlおよびH.Niederreiter,Introduction to Finite Fields and their Appli cations,Cambridge Univ.Press,New York(1986),[L-N])。平易なテキストメッ セージはビットのストリングで与えられる。 m=m12…ms 送信機A(アリス)および受信機B(ボブ)は、長いランダムなストリングのビ ットに同意する。 k=k12…kt ここで、s≦tであり、tは一度だけ使用され、その後破壊される機密キーであ る。送信機Aは暗号テキストストリングを形成する。 c=c12…cs ここでci=mi+ki(i=1,…,s)、ビットの加算はF2において行われる 。その後、暗号テキストcはci+ki∈F2を形成し、それによりmiを得ること によってcを解読するBに送信される。これは、全ての異なるキーおよびメッセ ージが等しく可能性がある場合に、完全な破壊不可能な暗号である。キー寸法は 少なくともデータ寸法と同じ大きさであるため、この方法を実施する費用は非常 に高い。 MUSEを特定するために、いくつかの概念がシステム理論から必要である( [L−N]を参照)。完全で決定論的な有限状態システムMが以下によって定め られる。 M1 :Mの入力アルファベットと呼ぶ有限の空でない集合U={α1,α2,… ,αh}。 M2 :Mの出力アルファベットと呼ぶ有限の空でない集合Y={β1,β2,… ,βs}。Yの要素を出力シンボルと呼ぶ。 M3 :Mの状態集合と呼ぶ有限の空でない集合S={σ1,σ2,…,σr}。 Sの要素を状態と呼ぶ。 M4 :整列された対(σi,αi)の集合をSにマップする次の状態関数f:S ×U→Y M5 :全ての整列された対(σi,αi)の集合をYにマップする出力関数g: S×U→Y 有限状態システムMは、時間tにおける入力、出力および状態がu(t),y (t)およびs(t)で表わされる装置として解釈されることができ、ここで変 数は整数tに対して のみ限定され、それぞれU,Y,Sから取られた値と仮定する。時間tにおける Mの状態および入力が与えられた場合、fは時間t+1における状態を特定し、 gは時間tにおける出力を特定する。 M6 :s(t+1)=f(s(t),u(t))。 M7 :t(t)=g(s(t),u(t))。 有限状態システムは、次の状態関数が前の状態にのみ依存し、入力には依存し ない場合に自主的(autonomous)と呼ぶ。 この場合、 M8 :s(t+1)=f(s(t))(自主的転移)。 同期ストリームの暗号が自主的有限状態システムMC(ここでCは暗号を示す )を意味し、ここで平易なテキストおよび暗号テキストアルファベットは、それ ぞれ入力および出力アルファベットである。MCの状態Sはキーと呼ばれ、スタ ート状態s(0)をシードキーと呼び、状態s(0),s(1),…,の進行を キーストリームと呼び、次の状態関数fをランニングキー発生器と呼び、出力関 数g(t)は暗号化関数である。さらに、有限状態システムMCは以下の条件を 満足させる。 M9 :可能性のあるキーの個数は、シードキーs(0)に対する徹底的な探索 が実行不可能であるように十分に大きくなければならない。 M10:有限キーストリームs(0),s(1),…,は、平易なテキストスト リングの長さを越えるそれらの期間に対する最小の長さを保証していなければな らない。 M11:暗号化はランダムでなければならない。 2.疑似ランダムアレイ発生器 疑似ランダム2進シーケンスの標準的な特徴(H.Beker & F.Piper,Cipher Sys tems,John Wiley and Sons,New York(1982))を仮定する。この概念は、さらに 高いディメンションに一般化されてもよい。要素viが2進シーケンスであるデ ィメンションnのベクトル を考慮する。各要素viが疑似ランダムであり、2進ストリングの連鎖v1v2…vn がそれ自身疑似ランダムである場 ルと考える)が疑似ランダムである場合、2進ストリングの2次元アレイは疑似 ランダムである。最後に、ディスクリートな時間スケールtでパラメータ化され た固定したディメンションの1組のアレイn×mを考慮する。時間tにおけるア レイは、 で表わされる。各アレイA(t)が疑似ランダムである場合、パラメータ化され たアレイが疑似ランダムであると定義し、1≦i≦mおよび1≦j≦nである全 ての固定したi,jに対して、シーケンスaij(t)は、tが変化したとき疑似 ランダムである。 以下、それが時間パラメータ化された疑似ランダムアレイを生成するという特 性を有する完全な決定論的な自主的有限 状態システムを説明する。このような装置を疑似ランダムアレイ発生器と呼ぶ。 それは、正の整数m,mを除算する正の整数l、およびm個の組の正の整数bi (b1,…,bm)という3つのプログラム可能なパラメータに依存する。疑似ラ ンダムアレイ発生器の説明を完全なものにするために、状態Sの集合、出力Yの 集合、M8、すなわち、 s(t+1)=f(s(t)) を満足させる次の状態関数f、および出力関数gを特定することだけが残る。状 態集合Sは、要素が2進ストリングであるl個の組の空でない有限集合から構成 されていると考える。あらゆるs∈Sがs=(s1,…,sl)の形態のものであ り、ここでsiは0または1の2進(またはビット)ストリングである。出力集 合Yはl×(m/l)アレイの有限集合であり、ここでアレイのij番目の要素 は長さbeの2進ストリングであり、ここでe=i(m/l)+jである。本発 明の疑似ランダムアレイ発生器に対する出力関数g:S×U→Yは、それがS→ Yからの関数である、すなわち発生器であるためにUに依存しないことが要求さ れる。次の状態関数fおよび出力関数gに対するただ1つの別の要求とは、s( t)∈Sを有するg(s(t))が疑似ランダム時間パラメータ化アレイであり 、fおよびgが実時間で計算されることができることである。 以下、有限リングの直積の代数的構造に基づいた特定の疑似ランダムアレイ発 生器を説明する。以降、この特定の疑似ランダムアレイ発生器をPRAGと呼び 、次の部分で説明す る装置MUSEの主要な素子を構成する。 正の整数m、mを除算する正の整数l、およびm個の組の正の整数bi(b1, …,bm)の3つのプログラム可能なパラメータをPRAGに対して固定する。 をl個の有限リングR´1,…,R´lの直積とする。PRAGに対する状態SPR AG の集合は、i番目の要素がR´iの2進コード化された要素である全てのl個 の組のものから構成されている。PRAGはl個の状態バッファ を有する。 すなわちR´iの最大要素のビット寸法である。ここで、 |A|は任意の集合Aの基本値を表わす。時間t=0において、シードキーs( 0)=(s(0)1,…s(0)l力する。時間t≧0において、状態バッファは削除され、s(t+1)=fPRAG (s(t))と置換され、ここでfPRAGはPRAGの次の状態関数である。出力 アルファベットYPRAGはl個の行およびm/l個の列を有する可能性のある全て のアレイから構成され、このアレイのij番目の要素が長さbeの2進ストリン グであり、ここでe=i(m/l)+jである。各時間tにおいて、出力関数gPRAG によって状態 s(t)∈SPRAGがYPRAGにマップされる。 PRAGに対するアルゴリズムは、出力集合R´が有限リングの大きい固定し たコレクションからl個の有限リングを選択する選択関数にしたがって疑似ラン ダム的に変化することを可能にすることによってさらに一般化されることができ る。 3.MUSEの数学的な説明 …,bm)を固定する。寸法b1,…,bmのm個のデータバッファ: を有していると仮定する。データのマルチストリームは各デ 個組の要素でそれらを満たす。このbi個組のビット寸法は一般にbiより大きい 。しかしながら、これはこの後続する説明において問題を生じない。 択は、MUSEが動作して、MUSEがこれら3つのデータタイプを特定するア ルゴリズムを利用者に提供する代数的構造を決定する。 を選択する。ここで、MUSEをM1乃至M11を満足させる自主的有限状態シス テムと定めてもよい。次にMUSEに対して入力アルファベットUMUSE、出力ア ルファベットY状態の集合SMUSE、次の状態関数fMUSE、および出力関数gMUSE を特定する。 最初に、 これは、同型(isomorphism) を表記した後のYPRAGの最初の説明と一致する。 すなわち、これはl個の行およびm/l個の列のアレイのバッファを設計するこ とに対応する。 第2に、MUSEに対する状態の集合は、PRAGに対する状態の集合と同じ である。 SMUSE=SPRAG 同様に、次の状態関数は fMUSE=fPRAG であるが、出力関数は異なっている。 gMUSE≠gPRAG 可能な出力モードを有する。u(t)∈UMUSEを時間tに到達したデータのマル チストリーム入力とし、これは長さb1,…,bmのm個のバッファを瞬間的に満 たすと考えられる。 MUSEに対する出力関数を以下の公式 で定める。ここで、加算(減算)がリングRの直積において要素単位で実行され る。ブロック図 が本発明の構成を完全なものにする。 監視機構が以下の観察から生じることに留意することによってMUSEの数学 的な説明が結論として得られる。 暗号解読が不正シードキーs´(0)≠s(0)(ここでs(0)は、正当な シードキーである)により行われる場合、出力は0および1並びに0のブロック (gaps)および1のブロック(runs)をカウントする簡単な統計的試験 を介して迅速に検出されることのできる疑似ランダム時間パラメータ化されたア レイである。さらに、監視機構の全体的な 空間・時間複雑性は無視できる程度であり、利用者に対するその利益は顕著であ る。 4.例[1] セクション3の表記法を使用する。mを固定した小さい正 の固定したベクトルとする。 をF2のm個のコピーの直積とする。lがmを除算するという条件を満たすl= 1を選択する。 [L−N]の表記に続いて、Z/(N)により整数の有限リング(modN) を(正の整数Nに対して)表す。 p−3が4で割り切れて、(p−1)/2が素数であり、[(p−1)/2−1 ]/2 もまた素数であるならば、素数pは連続していると言う。[(x−1) /2−1]/8が整数ならば、関数 ψ(x)=+1であり、また、[(x−1 )/2+1]/8が整数ならば、ψ(x)=−1と定める。ψ(p)≠ψ(q) を満たす2つの大きい連続した素数p,qを選択し、N=pqでリング R´=Z/(N) を定める。m,lおよびR´に対する選択により、以下疑似ランダムアレイ発生 器PRAGを説明する。Nの特有の選択は、PRAGにおいて非常に長いサイク ル長を保証する(L.Blum,M.BlumおよびM.Shub,Siam J.Comput.Vol 15,No.2(1986 ),364-383参照)。 状態集合SPRAGは、集合R´=Z/(N)である。次の状 態関数fPRAGは、以下の公式によって定められる。 fPRAG(s(t))=s(t)2+1=s(t+1) (modN) 以下、出力関数gPRAGを特定する。mを越える固定した長さの2進コード化され た整数としてZ/(N)の要素をコード化する。m<log2(N)が必要とさ れる。x∈Z/(N)に対して、Projm(x)をこのコーディングにおけるxの 最後のmビットと定める。以下、gPRAG(s(t))を計算するアルゴリズムを 説明する。全ての演算はリングZ/(N)において行われる。 ステップ1.b=最大{b1,…,bm}を計算する を計算する を獲得する ステップ4.b個の行およびm個の列のダイナミックアレイD1(t)を生成 し、ここでj番目の行はベクトルProjm ステップ5.b個の行を有しているが、その列の長さが変化する新しいアレイ D2(t)を成形する。1≦j≦mに対して、D2(t)のj番目の列はbj個の 要素、すなわちD1(t)のj番目の列の第1のbj個の要素から構成されている 。 これは、時間tにおける出力関数gPRAGを示す。加算および減算は2つの要素の 有限フィールドF2において同じであるため、この例において、 5.例[2] MUSEの第2の例として、ソフトウェアで構成されることができる非常に迅 速な暗号化システムを説明する。利用者の観点から、システムは次のように動作 する。利用者は、有限フィールドのある構造に内部的に到達するパスワードを選 択する。そのパスワードはメモリ中に存在しない。利用者がMUSEを開くたび に、彼は自分のパスワードでタイプ入力しなければならない。利用者が特定のフ ァイルを暗号化することを所望した場合、彼は彼のパスワードを使用する(不履 行選択)か、或はそのファイルにとって特別なキーを選択するかのいずれを行う ことができる。この時点において、MUSEはファイルを暗号化し、キー、パス ワードおよび元のファイルを消去する。残ったものは全てファイルの暗号化され たコピーである。ファイルを解読するために、利用者はMUSEを開いてファイ ルを選択し、同じパスワードおよびキーでタイプし、MUSEがファイルを解読 する。間違ったパスワードまたはキーが選択された場合、ファイルは解読されな い。 以下、具体的な数を使用してこのMUSEの例に対する動作の原理を説明する 。最初に、ほぼ同じビット長の4つの連続した素数p1,p2,p3,p4を選択す る(連続した素 数の定義の例[1]を参照)。例えば、 p0=7247,p1=7559,p2=7607,p3=7727 を選択することができる。 kの2進数展開をpkに割当てる。すなわち、p0は00に割当てられ、p1は0 1に割当てられ、p2は10に割当てられ、p3は11に割当てられる。 以下、8個の素数{P1,P2,P3,P4,P5,P6,P7,P8}のリストに パスワード=16ビット数 を変換する素数構成装置を説明する。ここで、各Pi(1≦i≦8)は4つの素 数7247,7559,7607,7727の1つである。16ビットのパスワードは単に8つの2 ビット部分に分解され、素数を構成するために素数割当表が使用される。例えば 、パスワードが11 11 01 10 00 01 00 00(21/3の2 進数展開の最初の16の上位桁のビット)である場合、素数構造は {P3,P3,P1,P2,P0,P1,P1,P0} 素数構成装置のブロック図は、図1に示されている。 システムは、入力パスワード10を含んでいる。示された実 施例は16ビットの入力パスワードを示す。暗号化プロセスが終了した後にはパス ワードまたは利用者選択特別キーはメモリに保持されてはならず、或は記憶され てはならない。パスワード自身は、疑似ランダムアレイ発生器用のシードキーと しての使用には適さなくてもよい。素数構成ブロック11は、一連のキーの生成に 使用するために一連の素数にパスワードをマップする。マッピングは、どの種類 の手段によって行われてもよい。好ましい実施例によると、検索表の形態の素数 割当表12が使用される。その代わりとして、マッピングはハードウェア論理ゲー トによって、或は不履行、利用者入力または疑似ランダム入力に基づいて連続し た素数を計算することによって行われてもよい。 次に、単一のシードキーs(0)(13ビット数)20から8つのキー: {s(1),s(2),s(3),s(4),s(5),s(6),s(7),s(8)} のベクトルまたはリストを生成する図2に示された疑似ランダムベクトルキー発 生器を説明する。 シードキーs(0)は、パスワードの最初の13ビットまたは別の利用者の随意 の13ビット数のいずれかである。 キーs(k)(k=1,2,3,…8に対して)を生成する処理方法は、次の状 態関数によって提供される: 例えば、パスワードの最初の13ビットを使用した場合: 疑似ランダムベクトルキー発生器21は、次のように8つのキ ーを計算する: このようにしてキーベクトル このプロセスは、新しいs(0)=s(8)を設定することによって反復される ことができる。疑似ランダムベクトルキー発生器は有効にソフトウェアに構成さ れる。 その代りとして、速度を最大にするために、発生器がハードウェアに構成され てもよい。 次に、各シードキーs(k)(1≦k≦8により)31に対して、8つの2ビッ ト2進数の列ベクトルを生成する図3に示された疑似ランダム列発生器32を説明 する。列発生器32は、ここで定めた投影演算子を使用する。投影演算子Projm( x)はxの2進数展開における最後のmデジットをもぎ取る。 例: 列発生器は、以下の2ステッププロセスとして簡単に説明されることができる : を計算。 ステップ(2)列ベクトル を得るために上記のリストの各要素にProj2を適用。 この例において、以下が得られる: Proj2を適用した後、以下の列ベクトルが得られる: s(2)=3129に対してこの計算を反復すると、 が得られ、それはProj2を適用した後に以下を生成する: s(3)=1737に対してこの計算を反復すると、 が得られ、それはProj2を適用した後に以下を生成する: s(4)=4798に対してこの計算を反復すると、 が得られ、それはProj2を適用した後に以下を生成する: s(5)=4333に対してこの計算を反復すると、 が得られ、それはProj2を適用した後に以下を生成する: s(6)=5893に対してこの計算を反復すると、 が得られ、それはProj2を適用した後に以下を生成する: s(7)=1404に対してこの計算を反復すると、 が得られ、それはProj2を適用した後に以下を生成する: s(8)=33に対してこの計算を反復すると、 が得られ、それはProj2を適用した後に以下のようになる: 最後に8つの列がまとめられ、以下の2ビット数の8×8アレイを形成すること ができる: 複数の列発生器32は、図4に示された疑似ランダムアレイ 発生器41を得るために並列計算構造を使用して組合わせられることができる。こ れは、MUSEのこの特定の例に対する疑似ランダムアレイ発生器PRAGの説 明を完全なものにする。図5にはPRAGの概略図が示されている。 最後に、この例に対するMUSEの説明を完全なものにする。2個のバッファ が存在する。各バッファは8×16アレイから構成される。各ディスクリートな瞬 間(状態)に、PRAGは疑似ランダム的に選択された0および1で第1のアレ イを満たし、一方別のバッファは入って来たデータでそれを満たす。各アレイ中 のビットは要素単位で加算され(mod2)、暗号化されたデータを生成し、そ の後このデータは出力される。バッファは消去され、次の状態に対する準備が整 う。 例えば、入って来たデータが大きいXであり、PRAGの出力が前に計算され たアレイ(*)である場合、バッファは次のように満たされる: 要素単位の加算(mod2)の後、構成は以下のように変化する: ここで、右側のバッファは暗号化されたデータを含み、左側のバッファはクリア される。暗号化されたデータは出力され、バッファが完全に消去され、次の状態 に対する準備が整う。 加算が実行される(mod2)ため、暗号化が2度連続して行われた場合に、 元のデータが回復されることは容易に理解される。したがって、暗号化および暗 号解読のプロセスは 同じである。 例2(ビット長16の4つの素数による)は、Cプログラミング言語で実施され 、50MHzのパーソナルコンピュータでランされた。計算速度を高めるために、 4つの各素数のモジュロを2乗することに関して検索表が使用された。1000×10 00の2次元アレイとして設定された1メガビットの入力データファイルに関して プログラムが試験された。プログラムは、疑似ランダム列発生器を実行する緊密 なループに99%以上の時間を費やす(図4参照)。 このループは、次のインテル486命令:4MOVE(1)命令、6シフト( 6)命令、1加算(1)命令、1アンド(1)命令、1加算(1)命令および3 オワ(3)命令を有する。命令を実行するために必要なクロックサイクル数を括 弧で示す。アセンブリ言語で結果コードをさらに最適化することができる。 このループに対するクロックサイクルの合計はほぼ50である。50MHz(50,0 00,000クロックサイクル/秒)のコンピュータでこのループを実行するのに1マ イクロ秒かかる。投影演算子は長さが2であり、したがって1メガビットの入力 ファイルをコード化するのに必要とされるおおよその時間は、500,000マイクロ 秒、すなわち0.5秒である。もちろん、後者は動作システムオーバーヘッドを含 まない。 具体的な例を示すために、ファックスの解像度の低いページ(1メガビットの 圧縮されていないファイルである)が約1/2秒で暗号化される。ファックスの 解像度の高いページ (200×200ドット/平方インチ=4メガビットファイル)は約2秒で暗号化され 、これはファックス送信に比べると無視できるような僅かなものである。圧縮後 に暗号化が実行された場合、ファイルは20の係数だけ減少し、暗号化は1/10秒 程度である。各シンボルが8ビットで表わされるASCIIテキストファイルに関 して暗号化が実行された場合、1,000,000個のテキストシンボル(1メガバイト ファイル)の暗号化にはほぼ4秒必要である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ゴールドフェルド、ドリアン アメリカ合衆国、ニュージャージー州 07670、テナフライ、ピーター・ライナ ス・コート 31 (72)発明者 クレバンスキー、ボリス・エー アメリカ合衆国、ニューヨーク州 07627、 デマレスト、アデル・アベニュー 4

Claims (1)

  1. 【特許請求の範囲】 1.シードキーに応答して、前記シードキーから複数のキーを生成する第1の有 限状態マシンと、 前記複数のキーに応答して、疑似ランダム暗号アレイを生成する第2の有限状 態マシンとを具備しているデータのブロックを暗号化する装置。 2.前記第1および第2の有限状態マシンは、時間および空間の両方で変化する 出力を有する請求項1記載の装置。 3.さらに、前記疑似ランダム暗号アレイをデータアレイと結合する手段を具備 している請求項1記載の装置。 4.前記結合手段は、データバッファ中の情報を暗号化する手段である請求項3 記載の装置。 5.前記結合手段は、前記データバッファ中の情報を解読する手段である請求項 4記載の装置。 6.シードキー入力および1以上の次の状態出力を有するキーベクトル発生器と 、 前記キーベクトル発生器に接続された疑似ランダムアレイ発生器と、 前記疑似ランダムアレイ発生器に接続された暗号アレイバッファと、 データバッファと、 前記暗号アレイバッファに含まれている情報を前記データバッファに含まれて いる情報と結合する手段とを具備しているデータのブロックを暗号化する装置。 7.前記キーベクトル発生器および前記アレイ発生器は、1 つの独立した疑似ランダムシーケンスを生成するために要求されたものと同じ量 の非線形動作を使用して多数の独立した疑似ランダムシーケンスを生成するよう に構成されている請求項6記載の装置。 8.前記キーベクトル発生器は、時間パラメータ化されたキーを生成するように 構成されている請求項6記載の装置。 9.前記疑似ランダムアレイ発生器は、疑似ランダム選択リングベース発生器で ある請求項6記載の装置。 10.さらに、前記データバッファに接続され、承認されていない暗号解読の試 みを検出する統計的モニタを具備している請求項6記載の装置。 11.前記疑似ランダムアレイ発生器は、複数の並列プロセッサを含んでいる請 求項6記載の装置。 12.前記疑似ランダムアレイ発生器は、反復的な実時間アレイ発生器である請 求項6記載の装置。 13.複数の疑似ランダムキーをシードキーから生成し、 1以上の疑似ランダムアレイを各キーから生成し、 暗号化バッファ中に前記アレイを記憶し、 前記暗号化バッファ中の情報とデータを結合するステップを含んでいるデータ のブロックを暗号化する方法。 14.さらに、データバッファに情報を記憶するステップを含んでいる請求項1 3記載の方法。 15.結合するステップは加算であり、データを暗号化または解読するように動 作する請求項14記載の方法。 16.さらに、複数のバッファに前記アレイを記憶し、複数 の対応したデータバッファに複数のデータ流を記憶するステップを含んでいる請 求項14記載の方法。
JP7510961A 1993-10-05 1994-10-04 機密通信用のマルチストリーム暗号化システム Pending JPH09505901A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/131,542 1993-10-05
US08/131,542 US5440640A (en) 1993-10-05 1993-10-05 Multistream encryption system for secure communication
PCT/US1994/011199 WO1995010148A1 (en) 1993-10-05 1994-10-04 Multistream encryption system for secure communication

Publications (1)

Publication Number Publication Date
JPH09505901A true JPH09505901A (ja) 1997-06-10

Family

ID=22449904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7510961A Pending JPH09505901A (ja) 1993-10-05 1994-10-04 機密通信用のマルチストリーム暗号化システム

Country Status (6)

Country Link
US (1) US5440640A (ja)
EP (1) EP0722642A4 (ja)
JP (1) JPH09505901A (ja)
AU (1) AU674461B2 (ja)
CA (1) CA2173732A1 (ja)
WO (1) WO1995010148A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799090A (en) * 1995-09-25 1998-08-25 Angert; Joseph C. pad encryption method and software
JPH09162859A (ja) * 1995-12-07 1997-06-20 Fujitsu Ltd スクランブル方法及び装置、デスクランブル方法及び装置、並びに、データ伝達方法及びシステム
US6078667A (en) * 1996-10-10 2000-06-20 Certicom Corp. Generating unique and unpredictable values
US6094486A (en) * 1997-06-19 2000-07-25 Marchant; Brian E. Security apparatus for data transmission with dynamic random encryption
US6236728B1 (en) 1997-06-19 2001-05-22 Brian E. Marchant Security apparatus for data transmission with dynamic random encryption
US6240183B1 (en) 1997-06-19 2001-05-29 Brian E. Marchant Security apparatus for data transmission with dynamic random encryption
CA2210199A1 (en) * 1997-07-11 1999-01-11 Mitel Corporation Method and apparatus for the generation of non-linear confusion data
US20020002675A1 (en) 1997-08-06 2002-01-03 Ronald Roscoe Bush Secure encryption of data packets for transmission over unsecured networks
US6275586B1 (en) * 1998-09-10 2001-08-14 Igt Cryptographically secure pseudo random number generator
EP1169806A1 (en) * 1999-03-16 2002-01-09 Valentin Alexandrovich Mischenko Method and apparatus for encoding and decoding information
US7006633B1 (en) 1999-07-16 2006-02-28 Global Encryption Standard Corporation Global encryption system
JP3782351B2 (ja) * 1999-10-20 2006-06-07 富士通株式会社 可変長鍵暗号システム
US7280663B1 (en) * 2000-05-22 2007-10-09 University Of Southern California Encryption system based on crossed inverse quasigroups
WO2002021760A1 (en) * 2000-09-07 2002-03-14 Ivan Vesely Cascaded stream cipher
US6987853B2 (en) * 2000-11-29 2006-01-17 Bodacion Technologies, Llc Method and apparatus for generating a group of character sets that are both never repeating within certain period of time and difficult to guess
US20020114453A1 (en) * 2001-02-21 2002-08-22 Bartholet Thomas G. System and method for secure cryptographic data transport and storage
JP4191915B2 (ja) * 2001-08-30 2008-12-03 独立行政法人情報通信研究機構 変換装置、暗号化復号化システム、多段変換装置、プログラム、ならびに、情報記録媒体
ITMI20011938A1 (it) * 2001-09-17 2003-03-17 Cit Alcatel Metodo per criptare un flusso di dati
DE10148415C2 (de) * 2001-09-29 2003-07-31 Univ Braunschweig Tech Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten
CA2365481C (en) * 2001-12-18 2006-01-03 Ibm Canada Limited-Ibm Canada Limitee Encryption method using synchronized continuously calculated pseudo-random key
US7474326B2 (en) * 2002-11-04 2009-01-06 Tandberg Telecom As Inter-network and inter-protocol video conference privacy method, apparatus, and computer program product
US7509553B2 (en) * 2002-11-04 2009-03-24 Tandberg Telecom As Inter-network and inter-protocol video conference privacy method, apparatus, and computer program product
US7370212B2 (en) * 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
CN1716852B (zh) * 2004-07-01 2010-05-05 谈子晨 公式密码结合图形提示的交互型动态密码校验模式
DE102004039899B4 (de) * 2004-08-17 2010-07-22 Dimitri Prof. Dr.-Ing. Korobkov Verschlüsselungsverfahren
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US20170329959A1 (en) * 2014-12-23 2017-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Technique for Generating a Password
US10937510B2 (en) * 2019-06-28 2021-03-02 Western Digital Technologies, Inc. Multidimensional pseudorandom binary sequence analysis for a memory device

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4202051A (en) * 1977-10-03 1980-05-06 Wisconsin Alumni Research Foundation Digital data enciphering and deciphering circuit and method
US5237615A (en) * 1982-05-20 1993-08-17 The United States Of America As Represented By The National Security Agency Multiple independent binary bit stream generator
US5257282A (en) * 1984-06-28 1993-10-26 Unisys Corporation High speed code sequence generator
US4747139A (en) * 1984-08-27 1988-05-24 Taaffe James L Software security method and systems
US4799259A (en) * 1986-04-10 1989-01-17 Rockwell International Corporation Monolithic random digital noise generator
US5008935A (en) * 1989-06-30 1991-04-16 At&T Bell Laboratories Efficient method for encrypting superblocks of data
FR2656125B1 (fr) * 1989-12-19 1994-07-08 Bull Cp8 Procede de generation d'un nombre aleatoire dans un systeme de traitement de donnees, et systeme mettant en óoeuvre un tel procede.
JPH03214834A (ja) * 1990-01-19 1991-09-20 Canon Inc マルチメデイアネツトワークシステム
US5048086A (en) * 1990-07-16 1991-09-10 Hughes Aircraft Company Encryption system based on chaos theory
US5163092A (en) * 1990-11-28 1992-11-10 Siemens Aktiengesellschaft Parallel scrambler used in sonet data transmission
AU644306B2 (en) * 1991-08-23 1993-12-02 Fujitsu Limited A generating system of random-number sequences for a parallel computer system
ES2038912B1 (es) * 1991-09-30 1994-08-01 Alcatel Standard Electrica Sistema sincrono de aleatorizacion de datos en paralelo.
KR940009843B1 (ko) * 1992-02-07 1994-10-17 이병기 병렬 스크램블링 시스템

Also Published As

Publication number Publication date
EP0722642A1 (en) 1996-07-24
EP0722642A4 (en) 1999-06-09
CA2173732A1 (en) 1995-04-13
WO1995010148A1 (en) 1995-04-13
US5440640A (en) 1995-08-08
AU7926894A (en) 1995-05-01
AU674461B2 (en) 1996-12-19

Similar Documents

Publication Publication Date Title
JPH09505901A (ja) 機密通信用のマルチストリーム暗号化システム
AU693094B2 (en) A repertoire of mappings for a cryptosystem
EP0624013B1 (en) Device and method for data encryption
US5365589A (en) Method and apparatus for encryption, decryption and authentication using dynamical systems
US5751811A (en) 32N +D bit key encryption-decryption system using chaos
US5696826A (en) Method and apparatus for encrypting and decrypting information using a digital chaos signal
EP1133099A2 (en) Method and apparatus for symmetric-key encryption
WO2000031917A1 (en) Data encrypting and decrypting apparatus and methods
JPH11509940A (ja) データブロックおよび鍵を非線形的に結合する暗号方法および装置
US8180048B2 (en) Method and system for computational transformation
Gnanajeyaraman et al. Audio encryption using higher dimensional chaotic map
CN111464296B (zh) 序列密码生成方法、数据加密方法和数据解密方法
Rueppel New approaches to stream ciphers
US6463150B1 (en) Encryption device for information in binary code
US6301361B1 (en) Encoding and decoding information using randomization with an alphabet of high dimensionality
JP3557037B2 (ja) 乱数生成装置及び方法、鍵系列生成装置及び方法、暗号化装置及び方法、並びに復号装置及び方法
JP3816558B2 (ja) 暗号システム
JP3172397B2 (ja) 暗号通信装置及び暗号通信システム
KR100497130B1 (ko) 이진코드정보의암호화방법
JP2001509608A (ja) デジタル・データのlビットの入力ブロックをlビットの出力ブロックに暗号変換するための方法
RU2140712C1 (ru) Способ блочного шифрования двоичной информации
JPH0918468A (ja) 暗号通信装置及び暗号化装置
JP3013777B2 (ja) 循環演算にもとづく暗号の暗号鍵生成装置
JP2001358709A (ja) 暗号化装置、復号化装置、その方法及び記録媒体
EP3285429A1 (en) Method for securely transmitting digital data