JPH07261662A - 暗号演算回路 - Google Patents
暗号演算回路Info
- Publication number
- JPH07261662A JPH07261662A JP6050863A JP5086394A JPH07261662A JP H07261662 A JPH07261662 A JP H07261662A JP 6050863 A JP6050863 A JP 6050863A JP 5086394 A JP5086394 A JP 5086394A JP H07261662 A JPH07261662 A JP H07261662A
- Authority
- JP
- Japan
- Prior art keywords
- data
- input
- selector
- circuit
- output
- 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.)
- Granted
Links
Abstract
号化する暗号演算回路に関し、回路規模の小型化を実現
する。 【構成】 第1のゲート信号G1及び第2のゲート信号
G2及び第3のゲート信号G3に応じて第1のゲート手
段2及び第2のゲート手段4及び第3のゲート手段7か
らの出力データがゲートされ、且つ、第1のセレクタと
第2のセレクタの出力データが選択されることでデータ
の流れが制御され、ECBモード、CBCモード、CF
Bモード、及びOFBモードの各モードで回路が共用化
されて動作する。
Description
に複数のモードでデータを暗号化、復号化する暗号演算
回路に関する。
は多数の操作モードが存在し、標準化も完了している
(JIS X5052−1990:”64ビットのブロ
ック暗号アルゴリズムの利用モード”)。利用者は、適
用アプリケーションにより適切な処理モードを選択し使
用する。その幅広い利用者に対応するために、その操作
モードを共通の回路で汎用化を実現し、且つ、回路規模
を最小に抑えることが要望されている。また、最短演算
時間であることが望まれる。
成を示す図である。
レジスタ101と、CBC暗号化回路102と、CBC
復号化回路103と、CFB暗号化回路104と、CF
B復号化回路105と、OFB回路106と、5入力の
セレクタ107と、暗号処理回路108と、5入力のセ
レクタ109と、出力レジスタ110とから構成されて
いる。
回路103及びCFB暗号化回路104及びCFB復号
化回路105及びOFB暗号化復号化回路106は並列
に接続されており、セレクタ107と109を切り換え
ることで、CBCモード、CFBモード、及びOFBモ
ードによる暗号演算を行うことができる。
如く、レジスタ111とエクスクルーシブオア回路11
2とから構成される。CBC復号化回路103は、図2
5に示す如く、レジスタ113とエクスクルーシブオア
回路114とから構成される。
如く、シフトレジスタ115とエクスクルーシブオア回
路116とから構成される。CFB復号化回路105
は、図27に示す如く、シフトレジスタ117とエクス
クルーシブオア回路118とから構成される。また、O
FB暗号化復号化回路106は、図28に示す如く、シ
フトレジスタ119とエクスクルーシブオア回路120
とから構成される。
算回路では、1つの演算モードに対して各々専用の回路
をセレクタにより切り換えて使用する構成であったた
め、多数の演算モードを必要とする場合には多入力のセ
レクタを2個必要とし、且つ、各々の回路が有するレジ
スタ(シフトレジスタ)は回路規模が大きいために、大
がかりな回路となってしまう問題があった。
ットOFBモードでデータのkビットフィードバックを
必要とする場合、データフィードバックにシフトレジス
タを使用していたために、nビットをフィードバックす
るためにはkクロックを入力してやる必要がある。この
ため、kが増大するにつれてフィードバックに要する時
間が増大し、暗号処理のための遅延時間が大きくなると
いう問題も生じていた。
暗号演算回路を提供することを目的とする。
めに、本発明では図1に示す原理図の通り構成した。
ジスタ1と、入力レジスタ1からのデータを第1のゲー
ト信号G1に応じてゲートして出力する第1のゲート手
段2と、一方の入力に第1のゲート手段2からの出力デ
ータを供給される第1のエクスクルーシブオア回路3
と、第1のエクスクルーシブオア回路3の他方の入力に
出力を接続されており、入力される第1のデータを第2
のゲート信号G2に応じてゲートして出力する第2のゲ
ート手段4と、第1のエクスクルーシブオア回路3から
の出力データを暗号処理する暗号処理手段5と、一方の
入力に暗号処理手段5からの出力データを供給される第
2のエクスクルーシブオア回路6と、第2のエクスクル
ーシブオア回路6の他方の入力に出力を接続されてお
り、入力される第2のデータを第3のゲート信号G3に
応じてゲートして出力する第3のゲート手段7と、第2
のエクスクルーシブオア回路6からの出力データを格納
する出力レジスタ8と、入力レジスタ1からのデータと
暗号処理手段5からのデータと第2のエクスクルーシブ
オア回路6からのデータと第1のデータのいずれかを選
択出力する第1のセレクタ9と、第1のセレクタ9から
の出力データを一時的に格納し、第1のデータとして出
力する格納手段10と、格納手段10からのデータと入
力レジスタ1からのデータのいずれかを第2のデータと
して選択出力する第2のセレクタ11とから構成した。
G1及び第2のゲート信号G2及び第3のゲート信号G
3に応じて第1のゲート手段2及び第2のゲート手段4
及び第3のゲート手段7からの出力データがゲートさ
れ、且つ、第1のセレクタと第2のセレクタの出力デー
タが選択されることでデータの流れが制御され、ECB
モード、CBCモード、CFBモード、及びOFBモー
ドの各モードで回路が共用化されて動作するように作用
する。
ベル(1)、第2のゲート信号G2をローレベル
(0)、第3のゲート信号G3をローレベル(0)とす
ることで、データの流れは図2に太線で示す様に制御さ
れる。したがって、ECBモードの暗号化及び復号化処
理が行われる。
(1)、第2のゲート信号G2をハイレベル(1)、第
3のゲート信号G3をローレベル(0)とすることで、
データの流れは図3に太線で示す様に制御される。した
がって、CBCモードの暗号化処理が行われる。
(1)、第2のゲート信号G2をローレベル(0)、第
3のゲート信号G3をハイレベル(1)とすることで、
データの流れは図4に太線で示す様に制御される。した
がって、CBCモードの復号化処理が行われる。
(0)、第2のゲート信号G2をハイレベル(1)、第
3のゲート信号G3をハイレベル(1)として第2のエ
クスクルーシブオア回路6からの下位kビットを第1の
セレクタ9より出力することで、データの流れは図5に
太線で示す様に制御される。したがって、kビットCF
Bモードの暗号化処理が行われる。
(0)、第2のゲート信号G2をハイレベル(1)、第
3のゲート信号G3をハイレベル(1)として入力レジ
スタ1からの下位kビットを第1のセレクタ9より出力
することで、データの流れは図6に太線で示す様に制御
される。したがって、kビットCFBモードの復号化処
理が行われる。
のkビット幅選択で行い、シフトレジスタを用いないた
め高速にフィードバックが可能となっている。
ル(0)、第2のゲート信号G2をハイレベル(1)、
第3のゲート信号G3をハイレベル(1)として暗号処
理手段5からの下位kビットを第1のセレクタ9より出
力することで、データの流れは図7に太線で示す様に制
御される。したがって、OFBモードの暗号化及び復号
化処理が行われる。
て説明する。図8は本発明の一実施例の構成図であり、
LSI化されている。
米国標準暗号DES(DataEncryption
Standard,FIPS 46,1977)で、モ
ード処理は、ECBモード、CBCモード、1ビットC
FBモード、8ビットCFBモード、16ビットCFB
モード、1ビットOFBモード、64ビットOFBモー
ドを実現している。
ンタフェースとシリアルインタフェースを持つが、その
入出力モードと操作モードとの関係を図9に示す。
CBモード、CBCモード、8ビットCFBモード、1
6ビットCFBモード、64ビットOFBモード、及び
IV(Initial Vector)設定が処理可能
であり、シリアルインタフェースでは1ビットCFBモ
ード、1ビットOFBモード、64ビットOFBモー
ド、及びIV設定が処理可能である。
タが一時的に格納される入力レジスタである。22はE
CBモード、CBCモード時に第1のゲート信号G1が
ハイレベルとなり、入力レジスタ21からのデータをゲ
ートして通す第1のゲート手段であるアンドゲートであ
る。
トCFBモード、8ビットCFBモード、16ビットC
FBモード、1ビットOFBモード、及び64ビットO
FBモード時に第2のゲート信号G2がハイレベルとな
り、格納手段であるIVレジスタ31からの第1のデー
タであるIVデータをゲートして通す第2のゲート手段
であるアンドゲートである。
3の出力は、第1のエクスクルーシブオア回路である入
力側エクスクルーシブオア回路24に入力される。25
はDES演算を行うDESアルゴリズム回路である。D
ESアルゴリズム回路25の出力は、第2のエクスクル
ーシブオア回路である出力側エクスクルーシブオア回路
26の一方の入力に入力される。27は出力側エクスク
ルーシブオア回路26からの出力データを一時的に格納
する出力レジスタである。
ビットCFB暗号化モード時のフィードバックデータ
(入力0)か、8ビットCFB復号化モード、16ビッ
トCFB復号化モード時のフィードバックデータ(入力
1)かを選択して出力する2入力セレクタである。29
は16ビットCFBモード時のフィードバックデータ
(入力0)か、8ビットCFBモード時のフィードバッ
クデータ(入力1)かを選択して出力する2入力セレク
タである。
CFBモード時のフィードバックデータ(入力0)か、
CBC暗号化/64ビットOFBモード時のフィードバ
ックデータ(入力1)か、CBC復号化モード時のフィ
ードバックデータ/IV設定時のIVデータ(入力2)
か、1ビットOFBモード時のフィードバックデータ
(入力3)か、1ビットCFBモード時のフィードバッ
クデータ(入力4)かを選択して出力する5入力セレク
タである。セレクタ28及び29及び30により第1の
セレクタを構成している。
レジスタである。32はCBC復号モード時のフィード
バックデータ(入力0)か、64ビットOFBモード
(パラレル入力)、8ビットCFBモード、16ビット
CFBモード時のフィードバックデータ(入力1)かを
選択して出力する2入力セレクタであり、第2のセレク
タに相当する。
ィードバックデータ(入力0)か1ビットCFB暗号化
モード時のフィードバックデータ(入力1)かを選択し
て出力する2入力セレクタである。
インタフェース時のIVレジスタ31の出力データ(D
ES演算結果)を64ビットパラレルデータからシリア
ルデータに変換するパラレル・シリアル変換回路であ
る。35は1ビットOFBモード、1ビットCFBモー
ドのシリアルインタフェース時のDES演算結果データ
(入力0)か、64ビットOFBモードのシリアルイン
タフェース時のDES演算結果データ(入力1)かを選
択して出力する2入力セレクタである。
また、37はCBC復号化、8ビットCFBモード、1
6ビットCFBモード、64ビットOFBモード時に第
3のゲート信号G3がハイレベルとなり、セレクタ32
からの出力データをゲートして通すアンドゲートであ
る。41はシリアル入力端子、42はシリアル出力端子
である。
de Book)モードを示す図である。同図(A)に
示す如く各アンドゲート22,23がゲートされ、各セ
レクタ28,29,30,32,33,35からの出力
が出力される(セレクタ32の出力がオフ、他のセレク
タ出力はドントケア(”X”))と、データの流れは同図
(B)に太線で示す通りに制御される。
1ブロック(64ビット)のデータはアンドゲート22
を通った後入力側エクスクルーシブオア回路24を通
り、DESアルゴリズム回路25で暗号化(復号化)さ
れた後出力側エクスクルーシブオア回路26を通って出
力レジスタ27でラッチされる。
(A)に示す如く各アンドゲート22,23がゲートさ
れ、各セレクタ28,29,30,32,33,35か
らの出力が出力(セレクタ30は入力2を出力し、他の
セレクタ出力はドントケア(”X”))されると、データ
の流れは同図(B)に太線で示す通りに制御される。
ドで暗号化(復号化)する場合は、始に次のようにIV
設定する必要がある。すなわち、入力レジスタ21でラ
ッチされたIVデータ(64ビット)はセレクタ30の
入力0に入力され、IVレジスタ31に設定される。
k Chaining)暗号化モードを示す図である。
同図(A)に示す如く各アンドゲート22,23がゲー
トされ、各セレクタ28,29,30,32,33,3
5からの出力が出力される(セレクタ30が入力1を出
力し、セレクタ32の出力がオフ、他のセレクタ出力は
ドントケア(”X”))と、データの流れは同図(B)に
太線で示す通りに制御される。
を設定(第11図参照)し、入力レジスタ21でラッチ
された1ブロック目のデータは、アンドゲート22を通
った後入力側エクスクルーシブオア回路24に入力され
る。入力側エクスクルーシブオア回路24のもう一方の
入力には、IVレジスタ31に設定されたIVデータが
入力され、このIVデータと入力データの排他的論理和
をとったデータがDESアルゴリズム回路25で暗号化
される。
の暗号化データとして出力側エクスクルーシブオア回路
26を通り出力レジスタ27でラッチされると共に、セ
レクタ30の入力1に入力されてセレクタ30より出力
され、IVレジスタに設定される。2ブロック目の入力
データは、IVレジスタ31に設定された1ブロック目
の暗号化データと入力側エクスクルーシブオア回路24
で排他的論理和をとり暗号化される。2ブロック目以降
のデータは以上の操作の繰り返しとなる。
る。同図(A)に示す如く各アンドゲート22,23が
ゲートされ、各セレクタ28,29,30,32,3
3,35からの出力が出力される(セレクタ30が入力
2を出力し、セレクタ32が入力0を出力し、他のセレ
クタ出力はドントケア(”X”))と、データの流れは同
図(B)に太線で示す通りに制御される。
を設定(第11図参照)し、入力レジスタ21でラッチ
された1ブロック目のデータは、アンドゲート22を通
った後入力側エクスクルーシブオア回路24を通りDE
Sアルゴリズム回路25に入力されると共に、セレクタ
30の入力2に入力される。DESアルゴリズム回路2
5で復号化されたデータは、IVレジスタ31に設定さ
れたIVデータと出力側エクスクルーシブオア回路26
で排他的論理和をとり、出力レジスタ27でラッチされ
る。
セレクタ30からIVレジスタ31に設定される。2ブ
ロック目以降の入力データの復号化は、DESアルゴリ
ズム回路25で復号化された後に1ブロック前の入力デ
ータとの排他的論理和をとり復号化データとなる。
Feed Back)暗号化モードを示す図である。同
図(A)に示す如く各アンドゲート22,23がゲート
され、各セレクタ28,29,30,32,33,35
からの出力が出力される(セレクタ30が入力4を出力
し、セレクタ33が入力0を出力し、セレクタ35が入
力1を出力し、他のセレクタ出力はドントケア(”
X”))と、データの流れは同図(B)に太線で示す通り
に制御される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で暗
号化される。暗号化されたデータの上位1ビットはセレ
クタ35の入力0に入力されると共に、入力端子41よ
りシリアルで入力された入力データ1ビットとエクスク
ルーシブオア回路36で排他的論理和をとり、暗号化デ
ータとして出力端子42より出力される。
目のIVデータの下位63ビットが上位63ビットとな
り、最下位ビットはセレクタ33を通った1回目の暗号
化データとなってセレクタ30の入力4に入力され、こ
のセレクタ30の出力が2ブロック目のIVデータとし
てIVレジスタ31に設定される。2回目以降は以上の
繰り返しとなる。
す図である。同図(A)に示す如く各アンドゲート2
2,23がゲートされ、各セレクタ28,29,30,
32,33,35からの出力が出力される(セレクタ3
0が入力4を出力し、セレクタ33が入力0を出力し、
セレクタ35が入力0を出力し、他のセレクタ出力はド
ントケア(”X”))と、データの流れは同図(B)に太
線で示す通りに制御される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で暗
号化される。暗号化されたデータの上位1ビットはセレ
クタ35の入力0に入力されると共に、入力端子41よ
りシリアルで入力された入力データ1ビットとエクスク
ルーシブオア回路36で排他的論理和をとり、暗号化デ
ータとして出力端子42より出力される。
目のIVデータの下位63ビットが上位63ビットとな
り、最下位ビットはセレクタ33を通った1回目の入力
データとなってセレクタ30の入力4に入力され、この
セレクタ30の出力が2ブロック目のIVデータとして
IVレジスタ31に設定される。2回目以降は以上の繰
り返しとなる。
す図である。同図(A)に示す如く各アンドゲート2
2,23がゲートされ、各セレクタ28,29,30,
32,33,35からの出力が出力される(セレクタ3
0が入力0を出力し、セレクタ32が入力1を出力し、
セレクタ29が入力1を出力し、セレクタ28が入力0
を出力し、他のセレクタ出力はドントケア(”X”))
と、データの流れは同図(B)に太線で示す通りに制御
される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で暗
号化される。そして、入力レジスタ21でラッチされて
セレクタ32を通った1ブロック目の入力データと出力
側エクスクルーシブオア回路26で排他的論理和をと
り、1ブロック目の暗号化データとして出力レジスタ2
7でラッチされる。
セレクタ28の入力0に入力されてセレクタ28より出
力される。この出力の上位8ビットが2ブロック目のI
Vデータの下位8ビットに、また、1ブロック目のIV
データの下位56ビットが2ブロック目のIVデータの
上位56ビットとなってセレクタ29の入力1に入力さ
れてセレクタ29より出力される。セレクタ29からの
出力データはセレクタ30の入力0に入力され、セレク
タ30より出力される。セレクタ30からの出力データ
はIVレジスタ31に2ブロック目のIVデータとして
設定される。2回目以降は以上の繰り返しとなる。
す図である。同図(A)に示す如く各アンドゲート2
2,23がゲートされ、各セレクタ28,29,30,
32,33,35からの出力が出力される(セレクタ3
0が入力0を出力し、セレクタ32が入力1を出力し、
セレクタ29が入力1を出力し、セレクタ28が入力1
を出力し、他のセレクタ出力はドントケア(”X”))
と、データの流れは同図(B)に太線で示す通りに制御
される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で復
号化される。そして、入力レジスタ21でラッチされて
セレクタ32を通った1ブロック目の入力データと出力
側エクスクルーシブオア回路26で排他的論理和をと
り、1ブロック目の復号化データとして出力レジスタ2
7でラッチされる。
16ビットはセレクタ28の入力1に入力されてセレク
タ28より出力される。この出力の上位8ビットが2ブ
ロック目のIVデータの下位8ビットに、また、1ブロ
ック目のIVデータの下位56ビットが2ブロック目の
IVデータの上位56ビットとなってセレクタ29の入
力1に入力されてセレクタ29より出力される。セレク
タ29からの出力データはセレクタ30の入力0に入力
され、セレクタ30より出力される。セレクタ30から
の出力データはIVレジスタ31に2ブロック目のIV
データとして設定される。2回目以降は以上の繰り返し
となる。
示す図である。同図(A)に示す如く各アンドゲート2
2,23がゲートされ、各セレクタ28,29,30,
32,33,35からの出力が出力される(セレクタ3
0が入力0を出力し、セレクタ32が入力1を出力し、
セレクタ29が入力0を出力し、セレクタ28が入力0
を出力し、他のセレクタ出力はドントケア(”X”))
と、データの流れは同図(B)に太線で示す通りに制御
される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で暗
号化される。そして、入力レジスタ21でラッチされて
セレクタ32を通った1ブロック目の入力データと出力
側エクスクルーシブオア回路26で排他的論理和をと
り、1ブロック目の暗号化データとして出力レジスタ2
7でラッチされる。
セレクタ28の入力0に入力されてセレクタ28より出
力される。この出力の上位16ビットが2ブロック目の
IVデータの下位16ビットに、また、1ブロック目の
IVデータの下位48ビットが2ブロック目のIVデー
タの上位48ビットとなってセレクタ29の入力0に入
力されてセレクタ29より出力される。セレクタ29か
らの出力データはセレクタ30の入力0に入力され、セ
レクタ30より出力される。セレクタ30からの出力デ
ータはIVレジスタ31に2ブロック目のIVデータと
して設定される。2回目以降は以上の繰り返しとなる。
示す図である。同図(A)に示す如く各アンドゲート2
2,23がゲートされ、各セレクタ28,29,30,
32,33,35からの出力が出力される(セレクタ3
0が入力0を出力し、セレクタ32が入力1を出力し、
セレクタ29が入力0を出力し、セレクタ28が入力1
を出力し、他のセレクタ出力はドントケア(”X”))
と、データの流れは同図(B)に太線で示す通りに制御
される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で復
号化される。そして、入力レジスタ21でラッチされて
セレクタ32を通った1ブロック目の入力データと出力
側エクスクルーシブオア回路26で排他的論理和をと
り、1ブロック目の復号化データとして出力レジスタ2
7でラッチされる。
16ビットはセレクタ28の入力1に入力されてセレク
タ28より出力される。この出力の上位16ビットが2
ブロック目のIVデータの下位16ビットに、また、1
ブロック目のIVデータの下位48ビットが2ブロック
目のIVデータの上位48ビットとなってセレクタ29
の入力0に入力されてセレクタ29より出力される。セ
レクタ29からの出力データはセレクタ30の入力0に
入力され、セレクタ30より出力される。セレクタ30
からの出力データはIVレジスタ31に2ブロック目の
IVデータとして設定される。2回目以降は以上の繰り
返しとなる。
Feed Back)モードを示す図である。同図
(A)に示す如く各アンドゲート22,23がゲートさ
れ、各セレクタ28,29,30,32,33,35か
らの出力が出力される(セレクタ30が入力3を出力
し、セレクタ35が入力0を出力し、他のセレクタ出力
はドントケア(”X”))と、データの流れは暗号化、復
号化共に同図(B)に太線で示す通りに制御される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で暗
号化される。暗号化データの上位1ビットはセレクタ3
5の入力0に入力されてセレクタ35より出力され、エ
クスクルーシブオア回路36の一方の入力に入力され
る。そして、シリアル入力端子41からエクスクルーシ
ブオア回路36のもう一方の入力に入力される入力デー
タ1ビットとエクスクルーシブオア回路36で排他的論
理和をとり、暗号化(復号化)データとしてシリアル出
力端子42より出力される。
目のIVデータの下位63ビットが上位63ビットとな
り、最下位ビットはDESアルゴリズム回路25の出力
データの最上位ビットとなり、セレクタ30の入力3に
入力されてセレクタ30より出力される。そして、セレ
クタ30からの出力が2ブロック目のIVデータとして
IVレジスタ31に設定される。2回目以降は以上の繰
り返しとなる。
ルインタフェースを示す図である。同図(A)に示す如
く各アンドゲート22,23がゲートされ、各セレクタ
28,29,30,32,33,35からの出力が出力
される(セレクタ30が入力1を出力し、セレクタ35
が入力1を出力し、他のセレクタ出力はドントケア(”
X”))と、データの流れは暗号化、復号化共に同図
(B)に太線で示す通りに制御される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で暗
号化される。暗号化データ64ビットはパラレル・シリ
アル変換回路34でシリアルデータに変換された後、セ
レクタ35の入力1に入力されてセレクタ35より出力
される。
シリアル入力端子41から入力された64ビットのデー
タを、エクスクルーシブオア回路36で1ビットずつ排
他的論理和をとり、シリアルで64ビット単位で暗号化
(復号化)データとしてシリアル出力端子42より出力
する。
出力データはセレクタ30の入力1に入力されてセレク
タ30より出力され、セレクタ30からの出力データは
2ブロック目のIVデータとしてIVレジスタ31に設
定される。2回目以降は以上の繰り返しとなる。
ルインタフェースを示す図である。同図(A)に示す如
く各アンドゲート22,23がゲートされ、各セレクタ
28,29,30,32,33,35からの出力が出力
される(セレクタ30が入力1を出力し、セレクタ32
が入力1を出力し、他のセレクタ出力はドントケア(”
X”))と、データの流れは暗号化、復号化共に同図
(B)に太線で示す通りに制御される。
を設定(第11図参照)し、1ブロック目のIVデータ
はアンドゲート23を通った後入力側エクスクルーシブ
オア回路24を通り、DESアルゴリズム回路25で暗
号化される。DESアルゴリズム回路25からの出力暗
号化データは、入力レジスタ21でラッチされセレクタ
32より選択出力された1ブロック目の入力データと出
力側エクスクルーシブオア回路26で排他的論理和をと
り、暗号化(復号化)データとして出力レジスタにより
ラッチされる。
出力データはセレクタ30の入力1に入力されてセレク
タ30より出力され、セレクタ30からの出力データは
2ブロック目のIVデータとしてIVレジスタ31に設
定される。2回目以降は以上の繰り返しとなる。
S操作モードで共通する機能を共用化することにより、
従来回路では64ビット×5=320個必要であったエ
クスクルーシブオア回路を、64ビット×2=128個
で暗号演算回路を構成することができる。また、64ビ
ットのシフトレジスタが5個必要であったものが64ビ
ットのレジスタ1個でよく、64ビットの5入力セレク
タが2個必要であったものが1乃至数個のセレクタで回
路を構成可能となった。
せてLSI化することを考慮した場合、回路規模を大幅
に削減して小型化することが可能である。また、データ
のフィードバック時の遅延時間が、フィードバック量に
かかわらず1クロックとなることにより、データのフィ
ードバックが必要なCBCモード、CFBモード、OF
Bモードでは、フィードバック量にかかわらず暗号処理
時間を短縮することができる。
ト信号G1及び第2のゲート信号G2及び第3のゲート
信号G3に応じて第1のゲート手段2及び第2のゲート
手段4及び第3のゲート手段7からの出力データがゲー
トされ、且つ、第1のセレクタと第2のセレクタの出力
データが選択されることでデータの流れが制御され、E
CBモード、CBCモード、CFBモード、及びOFB
モードの各モードで回路が共用化されて動作するため、
回路規模を従来よりも大幅に縮小することできて、LS
I化すれば小型のLSIが得られる特長がある。
である。
ある。
ある。
である。
る。
る。
る。
る。
る。
る。
る。
ェースを示す図である。
ェースを示す図である。
Claims (2)
- 【請求項1】 入力データが格納される入力レジスタ
(1)と、 該入力レジスタ(1)からのデータを第1のゲート信号
(G1)に応じてゲートして出力する第1のゲート手段
(2)と、 一方の入力に該第1のゲート手段(2)からの出力デー
タを供給される第1のエクスクルーシブオア回路(3)
と、 該第1のエクスクルーシブオア回路(3)の他方の入力
に出力を接続されており、入力される第1のデータを第
2のゲート信号(G2)に応じてゲートして出力する第
2のゲート手段(4)と、 該第1のエクスクルーシブオア回路(3)からの出力デ
ータを暗号処理する暗号処理手段(5)と、 一方の入力に該暗号処理手段(5)からの出力データを
供給される第2のエクスクルーシブオア回路(6)と、 該第2のエクスクルーシブオア回路(6)の他方の入力
に出力を接続されており、入力される第2のデータを第
3のゲート信号(G3)に応じてゲートして出力する第
3のゲート手段(7)と、 該第2のエクスクルーシブオア回路(6)からの出力デ
ータを格納する出力レジスタ(8)と、 前記入力レジスタ(1)からのデータと、前記暗号処理
手段(5)からのデータと、前記第2のエクスクルーシ
ブオア回路(6)からのデータと、前記第1のデータの
いずれかを選択出力する第1のセレクタ(9)と、 該第1のセレクタ(9)からの出力データを一時的に格
納し、前記第1のデータとして出力する格納手段(1
0)と、 該格納手段(10)からのデータと、前記入力レジスタ
(1)からのデータのいずれかを前記第2のデータとし
て選択出力する第2のセレクタ(11)とを具備したこ
とを特徴とする暗号演算回路。 - 【請求項2】 前記格納手段(31)からのパラレル出
力データをシリアルデータに変換するパラレル・シリア
ル変換回路(34)と、 前記暗号処理手段(25)からの出力データと、該パラ
レル・シリアル変換回路(34)からの出力データのい
ずれかを選択出力する第3のセレクタ(35)と、 該第3のセレクタ(35)からの出力データと、ブロッ
ク暗号を入力される入力手段(41)からの入力データ
とを入力される第3のエクスクルーシブオア回路(3
6)と、 該第3のエクスクルーシブオア回路(36)からの出力
データと、該入力手段(41)からの入力データのいず
れかを選択出力して前記第1のセレクタ(30)に供給
する第4のセレクタ(33)とを更に具備してなること
を特徴とする請求項1記載の暗号演算回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05086394A JP3547474B2 (ja) | 1994-03-22 | 1994-03-22 | 暗号演算回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05086394A JP3547474B2 (ja) | 1994-03-22 | 1994-03-22 | 暗号演算回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07261662A true JPH07261662A (ja) | 1995-10-13 |
JP3547474B2 JP3547474B2 (ja) | 2004-07-28 |
Family
ID=12870569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05086394A Expired - Fee Related JP3547474B2 (ja) | 1994-03-22 | 1994-03-22 | 暗号演算回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3547474B2 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020087332A (ko) * | 2001-05-14 | 2002-11-22 | 최병윤 | 대칭키 암호 알고리즘의 모듈화된 ecb, cbc, cfb, ofb모드 구현 회로 |
WO2004015916A1 (ja) * | 2002-08-08 | 2004-02-19 | Matsushita Electric Industrial Co., Ltd. | 暗号化復号化装置及び方法、暗号化装置及び方法、復号化装置及び方法、並びに送受信装置 |
JP2004078495A (ja) * | 2002-08-15 | 2004-03-11 | Sony Corp | 非接触式icカード |
JP2004226966A (ja) * | 2003-01-24 | 2004-08-12 | Samsung Electronics Co Ltd | 多数の動作モードを支援する暗号化装置 |
KR100528890B1 (ko) * | 2002-06-26 | 2005-11-22 | 한국전자통신연구원 | 다양한 인터페이스를 갖는 고속 블럭 암호 장치 및 그구동 방법 |
KR100749414B1 (ko) * | 2005-12-10 | 2007-08-14 | 한국전자통신연구원 | 무선 인터넷 시스템의 암호화 장치 및 그 방법과, 복호화장치 및 그 방법 |
JP2008283672A (ja) * | 2007-03-14 | 2008-11-20 | Intel Corp | 複数モードでのaes暗号化または復号の単一命令での実行 |
JP2010109639A (ja) * | 2008-10-30 | 2010-05-13 | Fujitsu Microelectronics Ltd | 共通鍵ブロック暗号におけるスワップ回路及び、それを有する暗号化・復号化回路 |
-
1994
- 1994-03-22 JP JP05086394A patent/JP3547474B2/ja not_active Expired - Fee Related
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020087332A (ko) * | 2001-05-14 | 2002-11-22 | 최병윤 | 대칭키 암호 알고리즘의 모듈화된 ecb, cbc, cfb, ofb모드 구현 회로 |
KR100528890B1 (ko) * | 2002-06-26 | 2005-11-22 | 한국전자통신연구원 | 다양한 인터페이스를 갖는 고속 블럭 암호 장치 및 그구동 방법 |
US7532726B2 (en) | 2002-08-08 | 2009-05-12 | Panasonic Corporation | Encryption/decryption device and method, encryption device and method, decryption device and method, and transmission/reception apparatus |
WO2004015916A1 (ja) * | 2002-08-08 | 2004-02-19 | Matsushita Electric Industrial Co., Ltd. | 暗号化復号化装置及び方法、暗号化装置及び方法、復号化装置及び方法、並びに送受信装置 |
JP2004078495A (ja) * | 2002-08-15 | 2004-03-11 | Sony Corp | 非接触式icカード |
JP2004226966A (ja) * | 2003-01-24 | 2004-08-12 | Samsung Electronics Co Ltd | 多数の動作モードを支援する暗号化装置 |
US7509501B2 (en) | 2003-01-24 | 2009-03-24 | Samsung Electronics Co., Ltd. | Cryptographic apparatus for supporting multiple modes |
KR100583635B1 (ko) * | 2003-01-24 | 2006-05-26 | 삼성전자주식회사 | 다수의 동작 모드들을 지원하는 암호화 장치 |
JP4684550B2 (ja) * | 2003-01-24 | 2011-05-18 | 三星電子株式会社 | 多数の動作モードを支援する暗号化装置 |
KR100749414B1 (ko) * | 2005-12-10 | 2007-08-14 | 한국전자통신연구원 | 무선 인터넷 시스템의 암호화 장치 및 그 방법과, 복호화장치 및 그 방법 |
JP2008283672A (ja) * | 2007-03-14 | 2008-11-20 | Intel Corp | 複数モードでのaes暗号化または復号の単一命令での実行 |
US8538012B2 (en) | 2007-03-14 | 2013-09-17 | Intel Corporation | Performing AES encryption or decryption in multiple modes with a single instruction |
KR101394710B1 (ko) * | 2007-03-14 | 2014-05-15 | 인텔 코오퍼레이션 | 단일 명령어를 이용한 다수 모드에서의 aes 암호화 또는 암호 해독 수행 |
US9325498B2 (en) | 2007-03-14 | 2016-04-26 | Intel Corporation | Performing AES encryption or decryption in multiple modes with a single instruction |
JP2010109639A (ja) * | 2008-10-30 | 2010-05-13 | Fujitsu Microelectronics Ltd | 共通鍵ブロック暗号におけるスワップ回路及び、それを有する暗号化・復号化回路 |
Also Published As
Publication number | Publication date |
---|---|
JP3547474B2 (ja) | 2004-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU767323B2 (en) | Block encryption device using auxiliary conversion | |
US5381480A (en) | System for translating encrypted data | |
US7639800B2 (en) | Data conversion device and data conversion method | |
US7502463B2 (en) | Methods and apparatus for implementing a cryptography engine | |
EP1215841B1 (en) | Methods and apparatus for implementing a cryptography engine | |
US20030202658A1 (en) | High throughput AES architecture | |
EP2016524B1 (en) | Robust cipher design | |
JP4025722B2 (ja) | データ暗号化のための方法および装置 | |
US6732271B1 (en) | Method of deciphering ciphered data and apparatus for same | |
EP1215843B1 (en) | Methods and apparatus for implementing a cryptography engine | |
JPH07261662A (ja) | 暗号演算回路 | |
US7257229B1 (en) | Apparatus and method for key scheduling | |
KR20010041202A (ko) | 이산 데이터 블록 암호화 방법 | |
JPH0697930A (ja) | ブロック暗号処理装置 | |
JP2000075785A (ja) | 高速暗号処理回路および処理方法 | |
JP2002358008A (ja) | データ暗号化回路 | |
KR100546777B1 (ko) | Seed 암/복호화 장치, 암/복호화 방법, 라운드 처리 방법, 이에 적합한 f함수 처리기 | |
JPH07177139A (ja) | データ撹乱回路 | |
JPH06102820A (ja) | 暗号装置 | |
JPH06102821A (ja) | 暗号装置 | |
JPH10333566A (ja) | データ変換装置 | |
JPH01234883A (ja) | 可変型暗号化処理制御方式 | |
JPH10301489A (ja) | データ変換装置 | |
KR20030090870A (ko) | 레이아웃 면적을 감소시킨 safer+ 알고리즘을이용한 암호화장치 및 방법 | |
KR20050116480A (ko) | f9 무결성 알고리즘 수행 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040120 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040319 |
|
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: 20040413 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040414 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080423 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090423 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090423 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100423 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110423 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110423 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |