JPH11298471A - ブロック暗号化方法及び装置 - Google Patents

ブロック暗号化方法及び装置

Info

Publication number
JPH11298471A
JPH11298471A JP11060242A JP6024299A JPH11298471A JP H11298471 A JPH11298471 A JP H11298471A JP 11060242 A JP11060242 A JP 11060242A JP 6024299 A JP6024299 A JP 6024299A JP H11298471 A JPH11298471 A JP H11298471A
Authority
JP
Japan
Prior art keywords
data block
unit
output signal
block
key
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
JP11060242A
Other languages
English (en)
Inventor
Michael Thomas Kurdziel
トーマス クルドジール マイケル
Robert Paul Clements
ポール クレメンツ ロバート
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harris Corp
Original Assignee
Harris Corp
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 Harris Corp filed Critical Harris Corp
Publication of JPH11298471A publication Critical patent/JPH11298471A/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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/08Randomization, e.g. dummy operations or using noise
    • 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
    • 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/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【課題】 スケーリングすることのできるブロック暗号
化装置であって、従来技術の欠点を克服したブロック暗
号化装置を提供する。 【解決手段】 自在に選択できるコントロール情報とシ
ークレットキー情報に基づいて、初期ブロックを最終ブ
ロックに変換する暗号化した及びデクリプトしたデジタ
ル通信に使用する方法及び装置である。この装置または
方法は、平易テキストまたは暗号化テキストを操作して
最終ブロックを提供する複数のユニットまたはステップ
を具える。この方法は、異なるモジュラスを有し、これ
は特別な制約に合致する3つのモジュラス動作を含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、デジタルデータブ
ロックの暗号化(エンクリプト)または暗号解読(デク
リプト)に関するものであり、特に、少なくとも一つの
自在に選択可能なコントロールブロックを用いて第1の
デジタルブロックを第2のデジタルブロックへブロック
−バイ−ブロック変換するための暗号化方法及び装置に
関する。
【0002】
【従来の技術】通商におけるデジタル通信システムの急
速な発達が、通常の暗号解析や分析技術に対して少なく
ても十分な時間安全である暗号システムの必要性に拍車
をかけた。平易なテキストブロックの暗号化とこの暗号
化したテキストブロックの解読の双方に適したブロック
暗号化装置を用いた公知のシステムが米国特許第5,2
14,703号に開示されている。しかしながら、この
システムは、システムオペレーションのサイズを適当に
スケーリングしてどのような入力/出力サイズでも使用
できるようには設計することができず、分析技術の存在
に影響を受けやすい。
【0003】
【発明が解決しようとする課題】本発明の目的は、スケ
ーリングすることのできるブロック暗号化装置であっ
て、従来技術の欠点を克服したブロック暗号化装置を提
供することである。
【0004】本発明の他の目的は、暗号化およびデクリ
プトするデジタル情報に適した多重ステージを有してお
り、信号傍受の可能性を最小にし、スケーリングおよび
カスタマイズ可能な、暗号化およびデクリプトするデジ
タル通信に使用する初期ブロックを最終ブロックに変換
する新規な方法を提供することである。
【0005】
【課題を解決するための手段】本発明は暗号化して保全
したデジタル通信システムにおける情報のエンクリプト
およびデクリプトに使用するブロック暗号化装置に係る
ものであり、この装置は: (a)入力データブロックとコントロールデータブロッ
クを受け取る第1のステージであって、 (i)前記入力データブロックと前記コントロールデー
タブロックの第1のサブセットに応答するモジューロ−
2加算ユニットを具える複数の直列に接続されたユニッ
トと、 (ii)前記和モジューロ−2加算ユニットからの出力
信号と、前記コントロールデータブロックの第2のサブ
セットに応答して、前記モジューロ−2加算ユニットか
らの出力信号を再整理する第1のニブルスワップユニッ
トと、を具える第1のステージと; (b)キーデータブロックを確率化する手段を具え、キ
ーデータブロックに応答するキースケジューラと、 (c)第1及び第2のキーデータサブブロックにおいて
前記キースケジューラから前記確率化されたキーデータ
ブロックと、前記コートロールデータブロックと前記第
1ステージからの出力信号とを受け取る第2のステージ
であって、複数の直列に接続されたユニットを有し、 (i)前記キースケジューラからの前記第1のキーデー
タサブブロックと、前記第1のステージからの出力信号
とコントロールデータブロックに応答して第1のモジュ
ラスqに基づいてモジューロ加算動作を実行する第1の
リニアモジューロユニットと、 (ii)前記第1のリニアモジューロユニットからの出
力信号に応答して、第2のモジュラスpに基づいてn番
目のパワーモジューロ動作を実行し、これによって、n
>1、およびp=2−X、ただしXはnと(2−X
−1)間の最大公分母が1であり、Kが所定のサイズで
ある、所定のサイズの出力信号を提供するnthパワー
モジューロユニットと、 (iii)前記第2のキーデータサブブロックと前記n
thパワーモジューロユニットからの出力信号に応答し
て、第3のモジュラスrに基づいてモジュール加算動作
を実行するする第2のリニアモジューロユニットと、を
具える第2のステージを具え、前記第1、第2及び第3
のモジュールp、qおよびrが互いに異なったものであ
ることを特徴とする。
【0006】本発明は更に、通信システムにおいて情報
のエンクリプトおよびデクリプトに使用する初期データ
ブロックを最終データブロックに変換する方法であっ
て、(a)初期データブロック、コントロールデータブ
ロック、第1のキーデータブロックおよび第2のキーデ
ータブロックを提供するステップと;(b)前記初期デ
ータブロックと前記コントロールデータブロックを組み
合わせて第1のデータ出力信号を提供するステップと、
(c)前記第1のデータ出力信号のセグメントを前記コ
ントロールデータブロックの第1のサブセットに確実に
転送して第2のデータ出力信号を提供するステップと、
(d)前記第2のデータ出力信号を前記コントロールデ
ータブロックの第3のサブセットに確実に拡大して第3
のデータ出力信号を提供するステップと、(e)前記第
3のデータ出力信号を前記コントロールデータブロック
の第4のサブセットに確実に再整理して第4のデータ出
力信号を提供するステップと、(f)前記第4のデータ
出力信号と第1のキーデータブロックを組合わせて、第
5のデータ出力信号を提供するステップと、(g)前記
第5の出力信号を用いてnthパワーモジューロ動作を
実行して、第6のデータ出力信号を提供するステップ
と、(h)前記第6のデータ出力信号の予め選択された
部分と第2のキーデータブロックとを組合わせて、最終
データブロックを提供するステップと、を具えることを
特徴とする。
【0007】
【発明の実施の形態】以下に図面に基づいて、本発明の
実施の形態を説明する。
【0008】図4は、ブロック暗号化装置100を示
す。この装置は、反復的なものではなく、入力ユニット
10、8個のユニット1−8、出力ユニット11及びキ
ースケジューラユニット9とを具えている。
【0009】入力ユニット10および出力ユニット11
は、入力データ及び出力データをまとめて、ブロック暗
号化装置10へおよび装置10からバッファ処理する。
入力ユニット10および出力ユニット11の構造は、通
常アプリケーション(例えば、直列あるいは並列等)に
よって決まる。入力ユニット10および出力ユニット1
1は、このブロック暗号化装置100の専用のものでは
ない。
【0010】ブロック暗号化装置は、3つの入力変数、
X、ZおよびZを受けて、出力変数Yを生成する。
Xはブロック暗号化装置100への一次トラフィック入
力、Yは一次トラフィック出力である。ZとZは、
外部から与えられる変数である。Zは、暗号化または
デクリプトに先だって保全チャンネル(例えば封印カバ
ー付クーリエ)を介してブロック暗号化装置100に入
力されるシークレット「キー」変数である。Z(また
は「カスタマアルゴリズム修正」変数)とZのサブユ
ニット(すなわち、Z2、3、およびZ)はブ
ロック暗号化装置100の第1、第2、第3、第4及び
第5ユニット、1、2、3、4、5で処理される。ブロ
ック暗号化装置100の出力Yは一次トラフィックX、
キー変数Zおよび変数Zの独自の要素である。
【0011】第1、第5、第6および第8ユニット1、
5、6、8は主に、モジュラ演算論理ゲートからなる。
第7ユニット7は、非反転動作をする(例えば、ミッド
トランスフォ−ム)。ユニット2と4はニブルスワッピ
ングを行う。第3ユニット3は、Zに基づいてブロッ
クのカスタム動作を入れ替えまたは拡大する。キースケ
ジュールユニット9は、外部から与えられる入力変数、
を受け取り、二つの疑似ランダムキーブロックZ
およびZを決定論的に発生する。キーブロックZ
よびZは、第5ユニット5および第8ユニット8で、
それぞれ演算数として使用される。
【0012】説明を容易にするために、図1、2、3お
よび5には64ビットのブロックインプリメンテーショ
ンを示す。64ビットのブロックは、単に例として用い
られているものである。64ビットのブロックインプリ
メンテーションでは、一般に、各ユニットが少なくとも
64ビットの入力/出力スペースを有する。本発明のブ
ロック暗号装置は、ブロック暗号化装置の動作のサイズ
を好適にスケーリングすることによってどのような入力
/出力サイズにも設計することができる。
【0013】図5は各ユニットの構成を示す図である。
第1ユニット1は、変数Zを用いて一次トラフィック
入力Xにモジューロ−2加算(排他的OR)を実行し
て、第1ユニット1の出力Wを得る。
【0014】第2ユニット2は、ニブルスワップ動作を
行う。第2ユニット2は、W1を8対のニブルに分割す
る。各ニブルは4バイトを保有している。第2ユニット
2は、Zに基づいて(Z1のビット0−7)各セグメ
ントを置き換えて、第2ユニットの出力Wを得る。例
えば、Zのビット“0”の値がバイナリ“1”に等し
いとき、ニブル対“0”のオーダが置き換えられる。単
に、Zにおけるビット“0”がバイナリ“0”であれ
ば、オーダは変わらない。各ニブル対のオーダはZ
おける対応する値によって決まる。ビット0の値は、ニ
ブル対0のオーダを決め、ビット1の値からビット7ま
での値はニブル組1からニブル対7までのオーダを決め
る。
【0015】第3ユニット3は、カスタム入れ替え及び
拡大動作を提供するカスタムユニットである。入力W
とZと、出力Wを有するカスタム動作は、ルックア
ップテーブルの形式でブロック暗号化装置100に挿入
されている。出力ZはZのビット24〜31であ
る。カスタムユニットは独自の変形システムの設計が可
能であるが、一方で暗号化設計の保全の要求を満たして
いる。例えば、ルックアップテーブルのカスタマイズさ
れた入れ替えまたは拡大動作は、これを意図するエンド
ユーザのみに開示されるようになっている。
【0016】第4ユニットでは、別のニブルスワップ動
作を行う。ここでは、出力Wが16のニブルに分割さ
れる。Z(例えば、Zのビット24から31)は、
の再整理動作を、第2ユニット2の動作と若干異な
るやり方で行う。例えば、Z のビット“8”の値がバ
イナリ“0”のとき、その対の第1のニブルがWの高
次セグメントの第1位置に書き込まれ、第2のニブルは
の低次セグメントの第1位置に書き込まれる。Z
のビット“8”の値がバイナリ“1”のときは、W
書き込まれる前に二つのニブルが置き変えられる。第2
のユニット2と同様に、各ニブル組の再整理は、Z
対応するビットによって決まる。
【0017】第5ユニットはモジューロ加算動作を行
う。WとZが第5ユニットの演算数である。W
第4ユニット4の出力であり、Zは、キースケジュー
ラユニット9からの出力である。この動作のモジュラス
qは、Zを用いて次の関係式によって決定される。 q=2128−Z (式1) Zは、Zのビット33から64である。第6ユニッ
ト6は、モジュラ3乗動作を実行する。言い換えれば、
は第3パワーモジュラスpに切り上げられ、その結
果はWとして設計される。モジュラスpは次の関係式
によって決まる。 p=2125−X (式2) 変数Xは、動作の次数“3”と(p−1)の間の最大公
分母(GCD)が1になるように選択される。これは、
次の式で得られるキャプチュアである。 GCD(3,p−1)=1 (式3)
【0018】第7ユニットは、ミッドトランスフォーム
として知られている動作のような、非反転動作を実行す
る。この動作の入力、Wは126ビット長であり、出
力W は64ビット長である。ミッドトランスフォーム
は、単に、入力64ビット、出力64ビットのマップで
ある。例えば、ミッドトランスフォームはWのビット
30から93をビット0から63にマップする。W
残りのビットは切り捨てられる。
【0019】第8ユニットは、別のモジューロ加算動作
を実行する。WとZはこのユニットの演算数であ
る。Wは、第7ユニットの出力であり、Zはキース
ケジューラの出力である。この動作のモジュラスには
64が用いられている。このステージの出力は、ブロ
ック暗号化装置の出力であり、Y1として示されてい
る。
【0020】第1、第5、第6、第7及び第8ユニット
1、5、6、7および8のモジュラスとして特定の値が
記されているが、ブロック暗号化装置は幅のある選択を
することができる。しかし、式3は満足されなくてはな
らず、各ステージにおいて独自のモジュラスが使用され
なくてはならない。非反転ユニット7やモジューロユニ
ット1、5、6および8は、より低いレベルの動作セッ
トに分割することはできない。
【0021】キースケジューラユニット9は、第1の機
能ユニット12、第2の機能ユニット13、第3の機能
ユニット14、シフトレジスタ15およびモジューロ−
2加算論理ゲート16を具えている。
【0022】キースケジューラユニット9は、キー変数
を処理して変数ZおよびZを生成する。Z
びZはブロック暗号化装置の動作時に使用される。Z
は第3機能ユニット14の出力であり、シフトレジス
タ15に保存される。第3機能ユニット14はZに動
作する決定論的な機能である。シフトレジスタの内容
は、その内容が完全に再度回ってくるまでの時間に右側
に1ビットシフトする。各シフトにおいて、シフトレジ
スタ15における最小有意ビットが、第1の機能ユニッ
ト12の出力にモジューロ−2加算され、その結果はシ
フトレジスタ15の最大有意ビット位置に移動する。シ
フトレジスタの内容が完全に処理されたら、シフトレジ
スタからZが出力される。Zは、第2機能ユニット
13へ入力され、Zを出力する。
【0023】第1機能ユニット12は、例えば6つの1
ビットの入力を一つの1ビットの出力とするカスタムル
ックアップテーブルマッピングである。第1機能ユニッ
ト12の入力はそれぞれ、シフトレジスタ15の独自の
ビット位置にタップ接続されている。タップの位置は、
次の制約の下に、任意に選択される。すなわちシフトレ
ジスタ15の最小有意ビット位置または最大有意ビット
位置のいずれかにタップが接続され得ないことである。
第1機能ユニット12は保全設計を満足していなければ
ならない。例えば、第1機能ユニットの設計は、カスタ
マイズされており、エンドユーザにのみ開示される。
【0024】第2機能ユニット13は、Zの高次オー
ダの半分および低次オーダの半分を繰り上げることな
く、ビットワイズなモジューロ2加算を実行してZ
生成する。第3機能ユニットは変数Zと、同じ長さの
カスタムビットパターンを繰り上げることなくビットワ
イズなモジューロ2加算を実行し、変数Zを生成す
る。カスタムビットパターンはエンドユーザにのみ開示
される。
【0025】必要な場合は、オリジナルキー変数Z
値は、シフトレジスタ15への最初の再ローディングZ
によって回復する。ついで、シフトレジスタ15はそ
の内容が完全に再度回復するまでの間に一ビット左へシ
フトする。各シフトにおいて、シフトレジスタ15にお
ける最大有意ビットが第1機能ユニットの出力にモジュ
ーロ−2加算される。その結果はシフトレジスタ15の
最小有意ビット位置に移される。シフトレジスタ15の
内容が完全に処理されると、第3機能ユニット14に入
力される。第3機能ユニット14で、カスタムビットパ
ターンをビットワイズにモジューロ−2加算して、Z
を生成する。
【0026】このブロック暗号化装置は、自己同期暗号
化フィードバックモード(SSCFB)、最小エラー発
生(または計数)モード(MEP)、あるいはブロック
暗号化フィードバックモード(BCFB)など、様々な
モードで機能する。
【0027】図1は、BCFBモードを示す図である。
PTの符号を付した暗号化されていないデータ、ある
いは“平易テキスト(PT)”のブロックが暗号化装置
(エンクリプタ)500に与えられている。PTは、
次いで、“キーストリーム”KSブロックにモジューロ
−2加算される。KSは、ブロック暗号化装置100−
1の出力である。CTは、CTの符号を付したポート
における出力であり、チャンネル200へ転送される。
次の反復において、CTはブロック暗号化装置100−
1へ入力としてフィードバックされる。ブロック暗号化
装置は、このフィードバックされたブロックを処理して
新しいブロックKSを生成する。ついで、KSは次段の
ブロックPTと組合わされて、暗号化プロセスが継続す
る。デクリプタ600では、CTと表示されているC
Tを受け取る。CTはブロックKSと組合わされて、
平易テキストPTブロックとして出力される。CT
ブロックは同時にブロック暗号化装置100−2の入力
に与えられる。ブロック暗号化装置100−2はCT
ブロックを入力として使用し、別のブロックKSを生成
する。このKSブロックは次のブロックCTの処理に
使用される。このモードは、相対的なエラーフリー通信
チャネルに利用される。
【0028】図2はMEPモードを示す図である。PT
の符号を付した暗号化されていないデータまたは“平
易テキスト”PTが暗号化装置(エンクリプタ)500
に入力されている。PTは、ブロックKSとモジュー
ロ−2加算されて、暗号テキストブロックを生成する。
CTはCTの符号で示すポートに出力され、チャネル
200に転送される。次の反復において、暗号化カウン
タ300−1が加って、カウンタ300−1の出力がブ
ロック暗号化装置100−1に入力される。ブロック暗
号化装置100−1は新たなブロックKSを生成する処
理を行う。新たなブロックKSは、ブロックPTと組合
わされて、暗号化処理が続けられる。デクリプタ600
では、CTの符号で示されているCTを受け取る。C
はブロックKSと組合わされて、回復した平易テキ
ストPTのブロックを出力として生成し、デクリプタ
カウンタ300−2が加わる。ブロック暗号化装置10
0−2は、このカウンタの出力を用いて別のブロックK
Sを生成する。このKSブロックは、次のブロックCT
の処理に用いられる。このモードは、ノイズのあるあ
るいはエラーが生じやすい通信チャネルに用いられる。
チャネル上でトグルされたビットエラーは、PTの1
ビットエラーのみに生じやすい。言い換えれば、このモ
ードでは、暗号システムが1ビットのエラーエクステン
ションが生じやすい。
【0029】図3は、SSCFBモードを示す図であ
る。暗号化されていないデータまたは“平易テキスト”
PTがPTの符号で暗号化装置500に入力されてい
る。各PTビットは、ブロックKSとモジューロ−2
加算されて、暗号テキストビットCTを生成する。暗号
化は、別の反復動作が開始するまで継続する。別の反復
動作は、KSの全ブロックの処理が終わったとき、ある
いはパターン検出器400−1がトリガされたときのい
ずれかに開始する。パターン検出器400−1は、特別
なビットシーケンスを検出すべく連続的にCTをモニタ
して、このシーケンスが検出されると新規の反復がトリ
ガされる。CTは統計的にランダムに見えるため、この
機構は新規の反復を疑似ランダムインタバルで開始す
る。新規の反復が開始すると、残ったKSのすべては、
キーバッファ401−1からパージされて、もっとも新
しいビットブロックCTであるCTがブロック暗号化
装置100−1に入力される。ブロック暗号化装置10
0−1は、もっとも新しいブロックを入力として使用し
て、別のブロックKSを生成する。新規ブロックKS
は、キーバッファ401−1に保存され、暗号化処理を
継続するのに使用される。デクリプタ600では、CT
の符号を付けたCTを入力するときに受け取ったCT
を1ビットにする。各CTビットは、KSビットとモ
ジューロ−2加算されて、回復した“平易テキスト”の
ビットを出力PTとして生成する。入力バッファ40
2−2が一杯になるか、あるいはパターン検出器400
−1がトリガするかすると、以下のことが生じる: 1)キーバッファ401−2がパージされ、 2)もっとも最近のCTブロックである、CTがブロ
ック暗号化装置100−2に入力され、 3)ブロック暗号化装置がもっとも最近のCTブロック
を用いて新しいブロックKSを生成し、及び 4)新しいブロックKSがキーバッファ402−2に保
存される。ブロック暗号化装置100−2は処理を継続
し、CTは他の反復が開始するまでバッファ402−
2に保存され続ける。このモードでは、通信システムは
暗号の損失およびブロックの境界の同期から自動的に回
復できる。
【0030】図1ないし3に示すモードのいずれかの動
作を行うためには、暗号機500とデクリプタ600が
最初に初期化されて、これらの内部状態がすべて同じに
ならなければならない。初期化は、初期化ベクトル“I
V”を用いて行うことができる。このベクトルは、暗号
化側で生じ、暗号機のすべての内部状態を初期化するの
に使用される。IVは、チャネル200を介してデクリ
プタ600に転送される。IVを使用して、デクリプタ
600の内部状態が全て同じ値に初期化される。
【0031】自在に選択できるコントロール情報とシー
クレットキー情報に基づいて、初期ブロックを最終ブロ
ックに変換する暗号化した及びデクリプトしたデジタル
通信に使用する方法及び装置である。この装置または方
法は、平易テキストまたは暗号化テキストを操作して最
終ブロックを提供する複数のユニットまたはステップを
具える。この方法は、異なるモジュラスを有し、これは
特別な制約に合致する3つのモジュラス動作を含んでい
る。
【図面の簡単な説明】
【図1】図1は、本発明の実施の形態に用いる通信シス
テムを示す図である。
【図2】図2は、本発明の実施の形態に用いる通信シス
テムを示す図である。
【図3】図3は、本発明の実施の形態に用いる通信シス
テムを示す図である。
【図4】図4は、本発明の実施の形態のブロック図であ
る。
【図5】図5は、本発明の実施の形態を示す図である。
【符号の説明】
100 暗号化装置 10 入力ユニット 1−8 第1ユニット〜第8ユニット 9 キースケジューラ 11 出力ユニット 12−14 第1機能ユニット〜第3機能ユニット 15 シフトレジスタ 16 論理ゲート

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 暗号化して保全したデジタル通信システ
    ムにおける情報の暗号化およびデクリプトに使用するブ
    ロック暗号化装置において、この装置が: (a)入力データブロックとコントロールデータブロッ
    クを受け取る第1のステージであって、 (i)前記入力データブロックと前記コントロールデー
    タブロックの第1のサブセットに応答するモジューロ−
    2加算ユニットを具える複数の直列に接続されたユニッ
    トと、 (ii)前記和モジューロ−2加算ユニットからの出力
    信号と、前記コントロールデータブロックの第2のサブ
    セットに応答して、前記モジューロ−2加算ユニットか
    らの出力信号を再整理する第1のニブルスワップユニッ
    トと、を具える第1のステージと; (b)キーデータブロックを確率化する手段を具え、キ
    ーデータブロックに応答するキースケジューラと、 (c)第1及び第2のキーデータサブブロックにおいて
    前記キースケジューラから前記確率化されたキーデータ
    ブロックと、前記コートロールデータブロックと前記第
    1ステージからの出力信号とを受け取る第2のステージ
    であって、複数の直列に接続されたユニットを有し、 (i)前記キースケジューラからの前記第1のキーデー
    タサブブロックと、前記第1のステージからの出力信号
    とコントロールデータブロックに応答して第1のモジュ
    ラスqに基づいてモジューロ加算動作を実行する第1の
    リニアモジューロユニットと、 (ii)前記第1のリニアモジューロユニットからの出
    力信号に応答して、第2のモジュラスpに基づいてn番
    目のパワーモジューロ動作を実行し、これによって、n
    >1、およびp=2−X、ただしXはnと(2−X
    −1)間の最大公分母が1であり、Kが所定のサイズで
    ある、所定のサイズの出力信号を提供するnthパワー
    モジューロユニットと、 (iii)前記第2のキーデータサブブロックと前記n
    thパワーモジューロユニットからの出力信号に応答し
    て、第3のモジュラスrに基づいてモジュール加算動作
    を実行するする第2のリニアモジューロユニットと、を
    具える第2のステージを具え、前記第1、第2及び第3
    のモジュールp、qおよびrが互いに異なったものであ
    ることを特徴とするブロック暗号化装置。
  2. 【請求項2】 請求項1に記載の装置において、前記第
    1のステージの前記複数の直列に接続されたユニットの
    うちの一つが、前記第1のニブルスワップユニットから
    の出力信号と、前記コントロールデータブロックの第3
    のサブセットに応答する交換ユニットであって、カスタ
    マイズ可能な暗号の変形を提供するユニットであり、好
    ましくは、前記第1ステージの前記複数の直列に接続し
    たユニットのうちの一つが、前記コントロールデータブ
    ロックの第4サブセットと、前記交換ユニットの出力信
    号に応答する第2のニブルスワップユニットであり、前
    記交換ユニットからの出力信号を再整理するユニットで
    あることを特徴とするブロック暗号化装置。
  3. 【請求項3】 請求項1に記載のブロック暗号化装置に
    おいて、前記第1ステージの前記複数の直列に接続され
    たユニットのうちの一つが、前記コントロールデータブ
    ロックの第4サブセットと、前記交換ユニットからの出
    力信号に応答する第2のニブルスワップユニットであっ
    て、前記交換ユニットからの出力信号を再整理するユニ
    ットであることを特徴とするブロック暗号化装置。
  4. 【請求項4】 請求項1ないし3のいずれかに記載のブ
    ロック暗号化装置において、前記第1のニブルスワップ
    ユニットが、前記モジューロ加算ユニットからの出力信
    号を前記コントロールデータブロックの第2サブセット
    の機能として再整理し、前記確率化手段が選択的にカス
    タマイズされたルックアップテーブルを具え、前記キー
    スケジューラが前記キーデータブロックに応答するシフ
    トレジスタを具えることを特徴とするブロック暗号化装
    置。
  5. 【請求項5】 請求項4に記載の装置において、前記確
    率化手段が、前記シフトレジスタに応答し、前記キース
    ケジューラが前記シフトレジスタからの直列出力と前記
    ルックアップテーブルからの直列出力に応答するコンバ
    イナとを具え、前記コンバイナが前記シフトレジスタか
    らの直列出力と前記ルックアップテーブルからの直列出
    力をモジューロ−2加算動作を用いて直列に組合わせ
    て、データ出力を提供するように構成されていることを
    特徴とするブロック暗号化装置。
  6. 【請求項6】 請求項5に記載の装置において、前記キ
    ースケジューラが前記コンバイナと前記シフトレジスタ
    との間に前記組合わせた出力をシフトレジスタに保存す
    る信号路を具え、モジューロ−2加算動作を用いて前記
    第1のキーデータブロックが前記シフトレジスタの内容
    から取り出され、前記第2のキーデータブロックが前記
    シフトレジスタの内容から取り出されることを特徴とす
    るブロック暗号化装置。
  7. 【請求項7】 請求項1ないし6のいずれかに記載の装
    置において、前記第1のモジュラスが前記コントロール
    データブロックの第5サブセットに基づいており、前記
    第2ステージの直列に接続された複数のユニットがn
    thパワーモジューロユニットからの出力信号に応答す
    る非反転動作ユニットを具え、前記非反転動作ユニット
    が前記nthパワーモジューロユニットからの出力の一
    部を廃棄する構造を有し、前記非反転動作ユニットが前
    記第2のリニアモジューロユニットに入力を提供するこ
    とを特徴とするブロック暗号化装置。
  8. 【請求項8】 通信システムにおいて情報の暗号化およ
    びデクリプトに使用する初期データブロックを最終デー
    タブロックに変換する方法であって、(a)初期データ
    ブロック、コントロールデータブロック、第1のキーデ
    ータブロックおよび第2のキーデータブロックを提供す
    るステップと;(b)前記初期データブロックと前記コ
    ントロールデータブロックを組み合わせて第1のデータ
    出力信号を提供するステップと、(c)前記第1のデー
    タ出力信号のセグメントを前記コントロールデータブロ
    ックの第1のサブセットに確実に転送して第2のデータ
    出力信号を提供するステップと、(d)前記第2のデー
    タ出力信号を前記コントロールデータブロックの第3の
    サブセットに確実に拡大して第3のデータ出力信号を提
    供するステップと、(e)前記第3のデータ出力信号を
    前記コントロールデータブロックの第4のサブセットに
    確実に再整理して第4のデータ出力信号を提供するステ
    ップと、(f)前記第4のデータ出力信号と第1のキー
    データブロックを組合わせて、第5のデータ出力信号を
    提供するステップと、(g)前記第5の出力信号を用い
    てnthパワーモジューロ動作を実行して、第6のデー
    タ出力信号を提供するステップと、(h)前記第6のデ
    ータ出力信号の予め選択された部分と第2のキーデータ
    ブロックとを組合わせて、最終データブロックを提供す
    るステップと、を具えることを特徴とする方法。
  9. 【請求項9】 請求項8に記載の方法において、前記第
    1のキーデータブロックと第2のキーデータブロック
    が: (a)前記キーデータブロックをシフトレジスタに保存
    するステップと、(b)前記シフトレジスタへの信号路
    を有するルックアップテーブルを提供し、このルックア
    ップテーブルの内容を変形するステップと;(c)直列
    に割り込みをして、前記シフトレジスタの内容と前記ル
    ックアップテーブルの内容を組合わせてキースケジュー
    ラの出力を生成するステップと、(d)前記キースケジ
    ューラの出力を前記シフトレジスタに保存するステップ
    と、(e)前記直列に割り込んで組合わせ、前記キース
    ケジューラの出力を保存するステップを繰り返すステッ
    プであって、前記ルックアップテーブルがカスタマイズ
    可能であり、いずれかの時点における前記第1のキーデ
    ータブロックが、その時点でのシフトレジスタの関数で
    あり、いずれかの時点における前記第2のキーデータブ
    ロックがその時点での前記シフトレジスタに保存されて
    いる前記キースケジューラの出力のモジューロ−2加算
    の関数であるステップと;によって共通のキーデータブ
    ロックから引き出されることを特徴とする方法。
  10. 【請求項10】 請求項8又は9に記載の方法におい
    て、nが1より大きく、モジュラスpとモジュラスrが
    異なり、前記nthパワーモジューロユニットが前記モ
    ジュラスpとrと異なるモジュラスqを用いることを特
    徴とする方法。
  11. 【請求項11】 請求項10に記載の方法において、前
    記モジュラスqが、前記コントロールデータブロックの
    第5サブセットの関数であり、モジュラスp=2
    X、Xは、nと(p−1)=1の最大公分母に等しく、
    Kが第6出力信号のサイズであることを特徴とする方
    法。
JP11060242A 1998-03-06 1999-03-08 ブロック暗号化方法及び装置 Pending JPH11298471A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/035765 1998-03-06
US09/035,765 US6108421A (en) 1998-03-06 1998-03-06 Method and apparatus for data encryption

Publications (1)

Publication Number Publication Date
JPH11298471A true JPH11298471A (ja) 1999-10-29

Family

ID=21884659

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11060242A Pending JPH11298471A (ja) 1998-03-06 1999-03-08 ブロック暗号化方法及び装置

Country Status (4)

Country Link
US (1) US6108421A (ja)
EP (1) EP0940943A3 (ja)
JP (1) JPH11298471A (ja)
IL (1) IL128846A (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100377172B1 (ko) * 2000-06-13 2003-03-26 주식회사 하이닉스반도체 데이터 암호화 표준 알고리즘을 이용한 암호화 장치의 키스케쥴러
US20020114453A1 (en) * 2001-02-21 2002-08-22 Bartholet Thomas G. System and method for secure cryptographic data transport and storage
EP1382056A4 (en) * 2001-04-07 2007-06-20 Telehublink Corp METHOD AND SYSTEMS FOR SECURING INTERMEDIATE COMMUNICATION DEVICES FROM SUBMITTED INFORMATION
US7251326B2 (en) 2001-06-29 2007-07-31 Harris Corporation Method and apparatus for data encryption
US7076059B1 (en) * 2002-01-17 2006-07-11 Cavium Networks Method and apparatus to implement the data encryption standard algorithm
US7346160B2 (en) * 2003-04-23 2008-03-18 Michaelsen David L Randomization-based encryption apparatus and method
US7257225B2 (en) * 2003-12-29 2007-08-14 American Express Travel Related Services Company, Inc. System and method for high speed reversible data encryption
US7613295B2 (en) * 2004-02-18 2009-11-03 Harris Corporation Cryptographic device and associated methods
US7599490B2 (en) * 2004-03-03 2009-10-06 Harris Corporation Method and apparatus for data encryption
US7600115B2 (en) * 2005-04-05 2009-10-06 Cisco Technology, Inc. Control key capable of storing multiple and variable data packet classification results
US7620181B2 (en) * 2005-04-20 2009-11-17 Harris Corporation Communications system with minimum error cryptographic resynchronization
US8379847B2 (en) * 2010-06-30 2013-02-19 International Business Machines Corporation Data and control encryption
US11870884B2 (en) 2021-04-13 2024-01-09 Harris Global Communications, Inc. Self-synchronizing mode of operation for an encryption/decryption algorithm

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4658094A (en) * 1985-03-28 1987-04-14 Itt Corporation Encryption apparatus and methods for raising a large unsigned integer to a large unsigned integer power modulo a large unsigned integer
FR2582174B1 (fr) * 1985-05-15 1990-03-09 Thomson Csf Dispositif de chiffrement par substitutions-permutations
US5231662A (en) * 1989-08-01 1993-07-27 Tulip Computers International B.V. Method and device for enciphering data to be transferred and for deciphering the enciphered data, and a computer system comprising such a device
US5003597A (en) * 1989-12-21 1991-03-26 Xerox Corporation Method and apparatus for data encryption
US5054067A (en) * 1990-02-21 1991-10-01 General Instrument Corporation Block-cipher cryptographic device based upon a pseudorandom nonlinear sequence generator
JP3225440B2 (ja) * 1990-05-18 2001-11-05 アスコム テック エージー デジタル信号ブロックの変換装置およびその使用方法
US5517614A (en) * 1992-05-29 1996-05-14 Kabushiki Kaisha Toshiba Data compression/encryption processing apparatus
US5317638A (en) * 1992-07-17 1994-05-31 International Business Machines Corporation Performance enhancement for ANSI X3.92 data encryption algorithm standard
US5381480A (en) * 1993-09-20 1995-01-10 International Business Machines Corporation System for translating encrypted data
US5511123A (en) * 1994-08-04 1996-04-23 Northern Telecom Limited Symmetric cryptographic system for data encryption
US5838794A (en) * 1996-01-11 1998-11-17 Teledyne Electronic Technologies Method and apparatus for inter-round mixing in iterated block substitution systems
US5745577A (en) * 1996-07-25 1998-04-28 Northern Telecom Limited Symmetric cryptographic system for data encryption

Also Published As

Publication number Publication date
IL128846A0 (en) 2000-01-31
IL128846A (en) 2004-01-04
US6108421A (en) 2000-08-22
EP0940943A2 (en) 1999-09-08
EP0940943A3 (en) 2003-10-01

Similar Documents

Publication Publication Date Title
US8983063B1 (en) Method and system for high throughput blockwise independent encryption/decryption
US7672455B2 (en) Method and apparatus for data encryption
US7092525B2 (en) Cryptographic system with enhanced encryption function and cipher key for data encryption standard
US5365588A (en) High speed encryption system and method
EP0725511B1 (en) Method for data encryption/decryption using cipher block chaining (CBC) and message authentication codes (MAC)
KR20180081559A (ko) 암호화 동작을 위한 키 시퀀스 생성
JP2004363739A (ja) 改竄検知可能な、共通鍵暗号の暗号化装置または復号化装置
JPH11298471A (ja) ブロック暗号化方法及び装置
JPH10240500A (ja) 乱数生成装置及び方法、暗号化装置及び方法、復号装置及び方法、並びにストリーム暗号システム
US20240097880A1 (en) High-speed circuit combining aes and sm4 encryption and decryption
CN110276208B (zh) 加密电路、解密电路及其方法
EP1629626B1 (en) Method and apparatus for a low memory hardware implementation of the key expansion function
JPH1152850A (ja) 暗号変換方法および装置
KR100546777B1 (ko) Seed 암/복호화 장치, 암/복호화 방법, 라운드 처리 방법, 이에 적합한 f함수 처리기
KR100262384B1 (ko) 암호화 방법 및 장치(Encryption Method and Apparatus)
KR20180021473A (ko) 암호화 장치
KR20040045517A (ko) Rijndael암호를 이용한 블록 데이터 실시간암호복호화 장치 및 방법
JP2005529365A (ja) Aesミックスカラム変換
Sagheer Counter Mode Development for Block Cipher Operations
Suod et al. Counter Mode Development for Block Cipher Operations
ManjulaRani et al. An Efficient FPGA Implementation of Advanced Encryption Standard Algorithm on Virtex-5 FPGA’s

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090707

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090710

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090804

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090807

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090904

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090909

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091201