JP2001209303A - データ変換装置及びデータ変換方法 - Google Patents

データ変換装置及びデータ変換方法

Info

Publication number
JP2001209303A
JP2001209303A JP2000377646A JP2000377646A JP2001209303A JP 2001209303 A JP2001209303 A JP 2001209303A JP 2000377646 A JP2000377646 A JP 2000377646A JP 2000377646 A JP2000377646 A JP 2000377646A JP 2001209303 A JP2001209303 A JP 2001209303A
Authority
JP
Japan
Prior art keywords
data
conversion
sub
internal
input
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.)
Abandoned
Application number
JP2000377646A
Other languages
English (en)
Inventor
Mitsuru Matsui
充 松井
Toshio Tokita
俊雄 時田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2000377646A priority Critical patent/JP2001209303A/ja
Publication of JP2001209303A publication Critical patent/JP2001209303A/ja
Abandoned legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 複数の副変換処理を並列で行えるように構成
して、暗号化・復号化及びデータ拡散等のデータ変換処
理の高速化を目的とする。 【解決手段】 A入力データ(101)を第1の鍵パラ
メータ(111)で第1の非線形変換をし、この変換結
果(109)とB入力データ(102)との排他的論理
和をB中間データ(106)として次段の副変換処理部
(122)のB入力データとし、B入力データ(10
2)を次段の副変換処理部のA入力データとして第2の
鍵パラメータ(112)で第2の非線形変換をし、この
変換結果とB中間データ(106)との排他的論理和を
B中間データ(108)として次段の副変換処理部(1
23)のB入力データとする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報通信等におい
てデジタル情報を保護する入力データの暗号化と復号化
及びデータ拡散等のためのデータ変換装置とデータ変換
方法に関するものである。
【0002】
【従来の技術】従来の暗号化のためのデータ変換方法と
しては、たとえば宮口らによるFEAL−8アルゴリズ
ム(宮口、白石、清水「FEAL−8暗号アルゴリズ
ム」NTT研究実用化報告第39巻第4/5号,198
8)があった。
【0003】図29は、そのFEAL−8暗号アルゴリ
ズムの一部を示している。
【0004】図において、1001及び1002は2系
統の入力データ、1003及び1004は2系統の出力
データ、1005,1006,1007,1008は中
間データである。また、1011,1012,101
3,1014はそれぞれ第1、第2、第3、第4の鍵パ
ラメータ、1021,1022,1023,1024は
各段の副変換処理部であり、その構成要素として103
1,1032,1033,1034の非線形変換回路と
1041,1042,1043,1044の排他的論理
和回路がある。
【0005】次に、動作について説明する。まず、入力
された2系統の入力データ1001,1002は、第1
段の副変換処理部1021に入力され、この結果新たな
2系統の中間データ1005,1006に変換される。
続いてこれら変換後の中間データは、第2段の副変換処
理部1022に入力され、この結果新たな2系統の中間
データ1007,1008に変換される。この操作は合
計8回行われ、第8段の副変換処理後の2系統のデータ
が最終の出力データ1003,1004として出力され
る。
【0006】上記副変換処理部の動作を、第1段の副変
換処理部1021を例に説明する。
【0007】副変換処理部1021は、2系統の入力デ
ータ1001,1002を入力し2系統の中間データ1
005,1006を出力する。第2の入力データ100
2は、上記文献の研究実用化報告に詳述されているよう
に、非線形変換回路1031内で、バイト単位に分割さ
れ、鍵パラメータと排他的論理和演算が行われ、続いて
算術加算が繰り返され、最後に分割されたデータが融合
されるという非線形変換がされている。この変換後のデ
ータは、第1の入力データ1001と排他的論理和演算
されて第1段の変換結果が得られ、第2の中間データ1
006として出力される。また、第2の入力データ10
02は、そのまま第1の中間データ1005として出力
される。
【0008】第2段の副変換処理部1022では、上述
と同様なプロセスで第2段目の中間データが得られ、以
降、同様にこの例では、合計8段の処理をして出力デー
タ1003と1004が最終結果として得られる。
【0009】
【発明が解決しようとする課題】従来のデータ変換装置
は、以上のように構成されており、1段の副変換処理に
含まれる非線形変換が完了した後、データを出力して、
次の段の副変換処理のための入力とできる構成となって
いた。即ち、各副変換処理は順次処理となり、処理が遅
くなるという課題があった。
【0010】本発明は、上記の課題を解消するためにな
されたもので、複数の副変換処理を並列で行えるように
構成して、暗号化・復号化及びデータ拡散等のデータ変
換処理の高速化を目的とする。
【0011】
【課題を解決するための手段】本発明に係るデータ変換
装置は、任意の2つのA入力データとB入力データに対
し、このA入力データを第1の鍵パラメータで第1の非
線形変換をし、この第1の非線形変換された出力データ
とB入力データとの排他的論理和をB中間データとして
出力し、上記B入力データをそのままA中間データとし
て出力する構成と、上記A中間データを第2の鍵パラメ
ータで第2の非線形変換をし、この第2の非線形変換さ
れた出力データとB中間データとの排他的論理和を次の
B中間データとして出力し、上記B中間データをそのま
ま次のA中間データとして出力する構成を備え、上記の
構成を縦続接続して、最終のA中間データとB中間デー
タを変換後の出力データとする。
【0012】また更に、基本構成において、第1の非線
形変換の入力側から第2の非線形変換の入力側までに存
在する第1の非線形変換回路と排他的論理和回路を第1
の副変換処理部とし、第2の非線形変換の入力側から次
の第1の非線形変換の入力側までに存在する第2の非線
形変換回路と排他的論理和回路を第2の副変換処理部と
するか、或いは、第1の非線形変換の出力側から第2の
非線形変換の出力側までに存在する排他的論理和回路と
第2の非線形変換回路を第1の副変換処理部とし、第2
の非線形変換の出力側から次の第1の非線形変換の出力
側までに存在する排他的論理和回路と第1の非線形変換
回路を第2の副変換処理部とし、これらの第1の副変換
処理部と、第2の副変換処理部とを交互に必要段数接続
し、最終段は第1又は第2いずれかの副変換処理部から
出力されるA中間データとB中間データを変換後の出力
データとする。
【0013】また、上記基本構成に加えて更に、各副変
換処理部中の非線形変換回路として、基本構成のデータ
変換装置の構成を入れ子構造として用いる。
【0014】本発明に係るデータ変換方法は、任意の2
つのA入力データとB入力データに対し、このB入力デ
ータをそのまま第1のA中間データとして出力する第1
ステップと、A入力データを第1の鍵パラメータで非線
形変換し、この非線形変換後の出力データとB入力デー
タとの排他的論理和をとり第1のB中間データとして出
力する第2ステップと、第1のB中間データを入力し、
そのまま第2のA中間データとして出力する第3ステッ
プと、第1のA中間データを入力して第2の鍵パラメー
タで非線形変換し、この非線形変換後の出力データと、
第1のB中間データとの排他的論理和をとり、第2のB
中間データとして出力する第4ステップとを備え、これ
ら第1から第4ステップを繰り返し、最後は第2又は第
4ステップで終えるようにし、最終のA中間データとB
中間データを変換データとする。
【0015】又は非線形変換と排他的論理和の演算順序
を変え、上記方法と等価なステップを備える。
【0016】また更に、基本構成に加えて、第1の非線
形変換の入力側から第2の非線形変換の入力側までに存
在する第1の非線形変換回路と排他的論理和回路を第1
の副変換処理部とし、第2の非線形変換の入力側から次
の第1の非線形変換の入力側までに存在する第2の非線
形変換回路と排他的論理和回路を第2の副変換処理部と
するか、又は第1の非線形変換の出力側から第2の非線
形変換の出力側までに存在する排他的論理和回路と第2
の非線形変換回路を第1の副変換処理部とし、第2の非
線形変換の出力側から次の第1の非線形変換の出力側ま
でに存在する排他的論理和回路と第1の非線形変換回路
を第2の副変換処理部とし、第1の副変換処理部と、第
2の副変換処理部とを交互に必要段数接続し、最初の第
1の副変換処理部の入力側にデータ選択部を付加し、ま
た、最後の第1と第2のいずれかの副変換処理部の出力
側にデータ保持部を付加し、最初に任意の2つのA入力
データとB入力データを上記データ選択部で選択入力
し、選択入力が終わると次回以降は、上記データ保持部
の出力を選択入力するよう帰還接続をして変換処理を
し、最終回は第1又は第2いずれかの副変換処理部から
出力されてデータ保持部に保持されて出力されるA中間
データとB中間データを変換後の出力データとする。
【0017】また更に、基本構成に加えて、任意の2つ
のA入力データとB入力データの桁数を同じとし、ま
た、第1の非線形変換の入力側から第2の非線形変換の
入力側までに存在する第1の非線形変換回路と排他的論
理和回路か又は第2の非線形変換の出力側から次の第1
の非線形変換の出力側までに存在する第2の非線形変換
回路と排他的論理和回路を副変換処理部とし、副変換処
理部を必要段数接続し、最初の副変換処理部のA,B各
入力側にデータ選択部を付加し、また、最後の副変換処
理部のA,B各出力側にデータ保持部を付加し、最初に
A入力データとB入力データを上記データ選択部で選択
入力し、選択入力が終わると次回以降は、データ保持部
の出力を選択入力するよう帰還接続をして変換処理を
し、最終回はデータ保持部から出力されるA中間データ
とB中間データを変換後の出力とする。
【0018】また更に、第1又は第2の非線形変換に際
しては、その副変換処理部へのA入力データを任意の桁
数で分けてA1入力データとA2入力データとし、ま
た、鍵パラメータも任意の桁数で分けて第1の分割鍵パ
ラメータないし第nの分割鍵パラメータとし、A入力デ
ータを分けたA1入力データを第1の分割鍵パラメータ
で内部非線形変換し、内部非線形変換された出力データ
とA2入力データとの排他的論理和を第1のA2内部中
間データとして出力し、A2入力データをそのまま第1
のA1内部中間データとして出力する第1の内部副変換
処理部と、第1の内部副変換処理部の第1のA1内部中
間データをA1入力データとして第2の分割鍵パラメー
タで内部非線形変換し、内部非線形変換された出力デー
タと第1のA2内部中間データをA2入力データとして
A2入力データとの排他的論理和を第2のA2内部中間
データとして出力し、第1のA2内部中間データをその
まま第2のA1内部中間データとして出力する第2の内
部副変換処理部と、第1の内部副変換処理部と、第2の
内部副変換処理部とを交互にn段接続し、最初の第1の
内部副変換処理部の入力側に内部データ選択部を付加
し、また、最後の第1と第2のいずれかの内部副変換処
理部の出力側に内部データ保持部を付加し、最初にA1
入力データとA2入力データを内部データ選択部で選択
入力し、選択入力が終わると次回以降は上記内部データ
保持部の出力を選択入力するよう帰還接続をして内部変
換処理をし、最終回は内部データ保持部から出力される
A1中間データとA2中間データを合わせて変換後のA
出力データとする非線形変換を行うようにする。
【0019】また更に、各副変換処理部中の非線形変換
に際しては、その副変換処理部へのA入力データを任意
の桁数で分けてA1入力データとA2入力データとし、
また、鍵パラメータも任意の桁数で分けて第1の分割鍵
パラメータないし第nの分割鍵パラメータとし、A入力
データを分けたA1入力データを第1の分割鍵パラメー
タで内部非線形変換し、内部非線形変換された出力デー
タを第1のA2内部中間データとして出力し、A1入力
データとA2入力データとの排他的論理和を第1のA1
内部中間データとして出力する第1の内部副変換処理部
と、第1の内部副変換処理部の第1のA1内部中間デー
タをA1入力データとして第2の分割鍵パラメータで内
部非線形変換して第2のA2内部中間データとして出力
し、第1のA1内部中間データとA2内部中間データを
A1入力データとA2入力データとして排他的論理和を
とり第2のA1内部中間データとして出力する第2の内
部副変換処理部と、第1の内部副変換処理部と、第2の
内部副変換処理部とを交互にn段接続し、最初の第1の
内部副変換処理部の各入力側に内部データ選択部を付加
し、また、最後の第1と第2のいずれかの内部副変換処
理部の出力側に内部データ保持部を付加し、最初にA1
入力データとA2入力データを内部データ選択部で選択
入力し、選択入力が終わると次回以降は、内部データ保
持部の出力を選択入力するよう帰還接続をして内部変換
処理をし、最終回は内部データ保持部の出力のA1中間
データとA2中間データを合わせて変換後のA出力デー
タとする非線形変換を行う。
【0020】また、上記又は上々記の各副変換処理部中
の非線形変換へのA入力データの分け方が等しい桁長と
なる場合、第1の内部副変換処理部のみを必要段数接続
する。
【0021】また更に、第1の内部副変換処理部と、第
2の内部副変換処理部とを交互に必要段数接続し、最初
の第1の内部副変換処理部の入力側に内部データ選択部
を付加し、また、最後の第1と第2のいずれかの内部副
変換処理部の出力側に内部データ保持部を付加し、最初
にB1入力データとB2入力データを内部データ選択部
で選択入力し、選択入力が終わると次回以降は、内部デ
ータ保持部の出力を選択入力するよう帰還接続をして内
部変換処理をし、最終回は内部データ保持部から出力さ
れるB1中間データとB2中間データを合わせて変換後
のB出力データとする。
【0022】また、上記各副変換処理部中の内部副変換
処理部へのB入力データの分け方が等しい桁長となる場
合、第1の内部副変換処理部のみを必要段数接続する。
【0023】また、各鍵パラメータによる副変換処理部
を偶数段接続する構成とし、最初の副変換処理部の入力
側にデータ選択部を付加し、また、最後の副変換処理部
の出力側にデータ保持部を付加し、また、鍵パラメータ
供給部を付加する。最初に、任意の2つのA入力データ
とB入力データを上記データ選択部で選択し、該選択入
力が終わると次回以降は、上記データ保持部の出力を選
択入力するよう帰還接続をして必要な回数だけ繰り返し
変換処理をし、その際、鍵パラメータ供給部は繰り返し
変換処理に対応して各副変換処理部へ鍵パラメータを供
給し、最終回は上記データ保持部から出力されるA中間
データとB中間データを変換後の出力データとする。
【0024】また、非線形変換回路として少なくともそ
のどれかにガロア体上のXのn乗回路を用いる。
【0025】また更に、ガロア体上の元Xのn乗回路
を、正規基底で構成する。
【0026】また、非線形変換回路の少なくとも一部に
Read Only Memoryを用いる。
【0027】また、非線形変換回路の少なくとも一部に
Random Access Memoryを用いる。
【0028】また、非線形変換回路の少なくとも一部に
Logic Circiutを用いる。
【0029】また更に、2つの排他的論理和と、論理積
又は論理和からなる2つの論理演算回路を、データ変換
部として、第1の副変換部のA入力とB入力のいずれか
又は各入力側に付加し、A入力又はB入力を更に任意の
桁長の2つのAAデータとABデータに分け、鍵パラメ
ータを対応するA変換鍵パラメータとB変換鍵パラメー
タに分け、AAデータとA変換鍵パラメータとの第1の
論理積又は論理和をとり、第1の論理積/論理和された
出力データと上記ABデータとの第1の排他的論理和を
とり、第1の排他的論理和出力をABデータ変換後の出
力データとし、第1の排他的論理和出力と、B変換鍵パ
ラメータとの第2の論理積又は論理和をとり、該第2の
論理積/論理和された出力データと上記AAデータとの
第2の排他的論理和をとり、第2の排他的論理和出力を
AAデータ変換後の出力データとし、AAデータ変換後
の出力データとABデータ変換後の出力データを合わせ
てA入力データ又はB入力データとして後段に出力す
る。
【0030】
【発明の実施の形態】実施の形態1.情報処理のデータ
の秘密性や通信内容の当事者間の秘密性を保つ目的で、
暗号化及びその復号化技術が注目されている。これら暗
号化、復号化のデータ変換に際しては、データ変換の処
理の高速性を得ることと、他者に暗号を解読される危険
性を低くすることが重要である。
【0031】暗号化には、入力データを鍵パラメータで
非線形変換する技術が知られている。また、暗号の強さ
を表す尺度として、いわゆる差分確率という概念があ
り、この差分確率の値が小さいほど強い暗号といえる。
文献1として、Kaisa Nyberg, Lars
Ramkilde Knudsen, Provab
le Security Against Diffe
rential Cryptanalysis, Jo
urnal of Cryptology vol.8
No.1 (1995)によると、複数の副変換処理
をつなげて暗号化を行う場合、各副変換処理における非
線形変換の差分確率をpとすれば、以下のことが成立す
ることが示されている。
【0032】(1)非線形変換を入力データと出力デー
タが1対1に定まる方式で実行すると、副変換処理が3
段以上あれば、全体の差分確率は2p2以下である。
【0033】ここで、入力データと出力データが1対1
で定まるという意味は、例えば、0〜255のいずれか
の値をとる入力データXに対して、0〜255のいずれ
かの値をとる出力データYが出力される場合、入力デー
タXのある値と出力データYのある値が1対1に対応し
て対になっていることをいう。たとえば、入力データX
の値が8の時、出力データYの値として必ず125が出
力されるような場合のことをいう。
【0034】図29に示したタイプのアルゴリズムで、
非線形変換回路1031,1032,1033の3つの
非線形変換の差分確率がそれぞれpであるなら、図29
に示したタイプのアルゴリズム全体の差分確率は2p2
以下となる。
【0035】従来例のFEALアルゴリズムは、図29
に示したタイプのアルゴリズムであるが、実はFEAL
の各副変換処理における非線形変換の差分確率pは1な
ので、上の論議をあてはめてもアルゴリズム全体の差分
確率は2以下という結論が得られるだけで、暗号強度に
関する証明は何もできない。
【0036】ところで、図2は、従来から知られている
非線形変換回路の例を示す図である。
【0037】図において、151は非線形変換回路中の
排他的論理和回路、152は同じくガロア体逆元回路で
ある。ただし、0入力に対しては0を出力するものであ
る。また、nは入出力ビットサイズを表している。非線
形変換回路として図2の構成を用いた場合は、その構成
から差分確率p=2/2n(nが奇数の場合)、p=4
/2n(nが偶数の場合)となることが知られている。
【0038】しかし、図2のガロア体逆元回路152
は、入力データのサイズが大きいと規模が大きくなって
しまうという欠点がある。
【0039】本発明によれば、以下に述べる構成によっ
ても上記(1)の記述が成立することが、文献2とし
て、「ブロック暗号の差分解読法と線形解読法にたいす
る証明可能安全性について」(松井充、第18回情報理
論とその応用シンポジウム予稿集、1995年10月2
4日〜27日)により確かめられている。また、文献2
によると、本発明では、たとえ非線形変換として、図2
9記載のものと同じものを用いたとしても、(1)の2
2をp2にすることができるので、暗号の強さが更に強
くなる。
【0040】本実施の形態では、差分確率pの値が小さ
いと評価ができる副変換処理部を使用して、しかもデー
タ変換が高速で行えるデータ変換装置を説明する。
【0041】図1は、本実施の形態におけるデータ変換
装置の構成を示す図である。
【0042】図において、101,102はそれぞれA
入力データ、B入力データであり、103,104は最
終段のA出力データ、B出力データで、この両者がデー
タ変換の出力データとなる。105ないし108は中間
データ、111ないし114は暗号化のための鍵パラメ
ータである。121ないし124は第1段から第n段の
副変換処理部、その中に含まれる131ないし134は
第1段から第n段の非線形変換回路、141ないし14
4は排他的論理和回路である。
【0043】次に、上記構成のデータ変換装置の動作を
説明する。ここでは、2つの入力データの長さが等しい
場合について説明する。なお、データ変換の処理で時間
がかかるのは非線形変換であり、排他的論理和演算の時
間はそれに比較すると無視できる。
【0044】図1において、一方のA入力データ101
は、第1の鍵パラメータ111により、図2に示す排他
的論理和回路151とガロア体逆元回路152とで第1
の非線形変換を受ける。この変換結果109が、他方の
B入力データ102と排他的論理和演算を受けて、次段
へのB中間データ106が得られる(S2)。一方、B
入力データ102は、そのまま第1段のA中間データ1
05となり、次段への入力となる(S1)。A中間デー
タ105は、第2の非線形変換を受け、B中間データ1
06と排他的論理和演算を受ける。その結果、B中間デ
ータ108が得られる(S4)。B中間データ106
は、そのまま、次段へのA中間データ107となる(S
3)。この手順によると、時間的に第1の非線形変換と
並行して第2の非線形変換回路132で演算が行われ
る。
【0045】こうして、奇数段と偶数段の副変換処理部
において、ほぼ並行して非線形変換が行われ、高速のデ
ータ変換ができる。
【0046】上記の実施の形態では2つの入力データの
長さが等しい場合を説明したが、A入力データの長さn
1ビットとB入力データの長さn2ビットが異なる場合
(n1>n2)は、以下のことが成立する。
【0047】(2)非線形変換を入力データと出力デー
タが1対1に定まる方式で行うと、副変換処理が3段以
上あれば、全体の差分確率はp2以下である。
【0048】従って、図1の構成で2つの入力データの
長さを変えた構成をしても、各副変換処理部の差分確率
pは変わらないが、全体の差分確率の値がp2以下であ
るということが判ったデータ変換装置を構成することが
できる。この場合、排他的論理和回路への入力は、A入
力データとB入力データとの長さが異なるために、長い
データに対してははみ出た部分(n1−n2ビットの部
分)に対しては排他的論理和演算をせずに、短いデータ
と同じ長さの部分(n2ビット)のみを短いデータと排
他的論理和演算する。又は、短いデータに対しては長い
データに比べて不足する部分(n1−n2ビットの部分)
に定数を埋めるなどして、長いデータと等長にして排他
的論理和演算をする工夫がなされる。また、A入力デー
タとB入力データの長さが異なる場合、鍵パラメータも
その長さに対応して適切な鍵パラメータを供給する。
【0049】なお、本実施の形態では、ハードウェア構
成を説明したが、非線形変換及び排他的論理和演算をソ
フトウェアで行っても、奇数段相当の演算と、偶数段相
当の演算を並行して処理でき、同様の効果が得られる。
【0050】実施の形態2.本発明の趣旨である高速非
線形変換の他の構成例を説明する。
【0051】本実施の形態では、各副変換処理部中の排
他的論理和の位置を変えている。図3は、その構成を示
すブロック図であり、図において、161ないし164
はそれぞれ第1ないし第4の副変換処理部である。鍵パ
ラメータ111ないし114、非線形変換回路132な
いし135、排他的論理和回路141ないし144は実
施の形態1における図1の構成要素と同等のものであ
る。副変換処理部161ないし164は、内部接続が図
1の副変換処理部121ないし124とは異なってい
る。
【0052】この接続によっても、実施の形態1と同
様、全体の差分確率はp2以下とでき、全体の差分確率
が(1)で述べた2p2より小さな強い暗号を生成する
ことができる。
【0053】第1の副変換処理部161では、A入力デ
ータ101とB入力データ102に対し、A入力データ
101を第1の鍵パラメータ111で非線形変換し、こ
の非線形変換回路132で非線形変換された出力データ
を、第1段のB中間データ106として出力する(S1
2)。また、排他的論理和回路141でA入力データ1
01とB入力データ102の排他的論理和を得、これを
第1段のA中間データ105として出力する(S1
1)。
【0054】第2の副変換処理部162では、第1の副
変換処理部161から出力されるA中間データ105を
一方の入力として、第2の鍵パラメータ112で非線形
変換し、この非線形変換回路133で非線形変換された
出力データを、第2段のB中間データ108として出力
する(S14)。また、第1段のA中間データ105と
B中間データ106を、それぞれ入力として排他的論理
和回路142で演算を行い、第2段のA中間データ10
7として出力する(S13)。
【0055】以後、上記の第1と第2の副変換処理部が
交互に接続される。最終は、第1又は第2のどちらの副
変換処理部であってもよいことは、実施の形態1と同様
である。
【0056】この接続による動作も、実施の形態1で述
べた文献2の根拠に基づき、全体の差分確率がp2以下
の装置が得られる。また、非線形変換の動作の速さと排
他的論理和の動作の速さとを比べると、排他的論理和の
動作ははるかに速いので、図の接続状況から明らかなよ
うに、動作の遅い第1段と第2段の非線形変換の動作が
ほぼ並列で行わることで、装置全体の高速動作を可能に
している。
【0057】ここで、図1に示した構成と図3に示した
構成が実質的に同一のものであることを、図4を用いて
説明する。
【0058】図4において、121〜124は図1に示
した副変換処理部である。161〜164は図3に示し
た副変換処理部である。図4から判るように、図1と図
3に示した副変換処理部は、図4に示した回路をどのよ
うな部分で切り出したかによるものである。即ち、図1
の場合は、第1の非線形変換回路131の入力側から第
2の非線形変換回路132の入力側までの要素(第1の
非線形変換回路131と排他的論理和回路141)を、
第1の副変換処理部121とし、第2の非線形変換回路
132の入力側から次の第1の非線形変換回路133の
入力側までの要素(第2の非線形変換回路132と排他
的論理和回路142)を、第2の副変換処理部122と
している。図3の場合は、第1の非線形変換回路131
の出力側から第2の非線形変換回路132の出力側まで
の要素(排他的論理和回路141と第2の非線形変換回
路132)を、第1の副変換処理部161とし、第2の
非線形変換回路132の出力側から次の第1の非線形変
換回路133の出力側までの要素(排他的論理和回路1
42と第1の非線形変換回路133)を、第2の副変換
処理部162としている。
【0059】図5は、図1又は図3に示す構成と、実質
的に同一の構成を持つ他の例を示す図である。
【0060】図5に示す例は、排他的論理和回路141
〜145を縦続接続したものである。排他的論理和回路
の出力データが、次の排他的論理和回路への2入力デー
タのうちの1つの入力データとなるように、縦続接続さ
れている。非線形変換回路131,133,135は、
縦続接続された排他的論理和回路のうち、奇数番目の排
他的論理和回路141,143,145に接続されてい
る。また、非線形変換回路132,134,136は、
偶数番目の排他的論理和回路142,144に接続され
ている。
【0061】図5に示す構成を用いても、図1又は図3
と同じように、第1と第2の非線形変換回路131と1
32又は133と134又は135と136が並行して
実行され、高速処理が可能である。
【0062】実施の形態3.実施の形態1で述べたよう
に、図2に示す非線形変換回路は、入出力データのサイ
ズが大きいと規模が大きくなってしまう。そこで、この
実施の形態では、データ変換装置に構造を入れ子構造に
して、図2の非線形変換回路もより小さい非線形変換回
路(例えば、逆元回路)を組み合せたコンパクトな構成
を考える。
【0063】また、従来例の文献のFEALは、差分確
率pの値が大きいので、暗号の強さの評価として不十分
である。
【0064】本実施の形態では、1つの非線形変換がよ
り小さい規模で、しかも全体の差分確率を小さくできる
非線形変換回路を説明する。
【0065】図6は、副変換処理部とその非線形変換回
路の詳細を示す図である。
【0066】図6において、aは第1段の副変換処理部
を示し、221は外部副変換処理部、231はその外部
非線形変換回路である。bは外部非線形変換回路231
の詳細構成を示し、351はA入力データ101を2分
割する内部分割部、301,302は2分割されたA1
入力データ、A2入力データ、303ないし308は内
部中間データ、311ないし313は鍵パラメータ11
1を分割した分割鍵パラメータで、352は内部中間デ
ータ303と304を融合する内部融合部、321ない
し323は内部副変換処理部、331ないし333は内
部非線形変換回路、341ないし343は内部排他的論
理和回路である。158は、鍵パラメータ111を分割
する鍵パラメータ供給部である。
【0067】例えば、図6のアルゴリズムの場合、内部
非線形変換回路331,332,333として差分確率
pのものを用いた場合、外部非線形変換回路231の差
分確率はp2以下である。従って、外部副変換処理部2
21を3段以上重ねたアルゴリズムの差分確率は
(p22=p4以下となる。
【0068】また、図7は、図6のaに示す外部副変換
処理部を4段接続し、各外部副変換処理部中の非線形変
換回路として、図6のbに示す3段の内部副変換処理部
を接続した場合の全体の副変換処理部の構成を示す図で
ある。
【0069】図において、代表的な構成要素である各外
部副変換処理部221ないし224と、各外部非線形変
換回路231ないし234と外部副変換処理部中の排他
的論理和回路141ないし144、内部副変換処理部3
21ないし323と、第1と第2の外部非線形変換回路
231,232中の内部非線形変換回路331ないし3
36の番号は記載してあるが、その他の構成要素の番号
は、省略している。
【0070】また、図8ないし図10は、図7の構成の
データ変換装置がデータ変換を行っていく順序を時間を
追って説明する図である。
【0071】まず、図6に示す外部非線形変換回路23
1の動作について説明する。
【0072】外部副変換処理部221へのA入力データ
101を内部分割部351により任意の桁数で2つに分
けて、A1入力データ301とA2入力データ302と
し、また、鍵パラメータ111も鍵パラメータ供給部1
58により任意の桁数で分けて、第1の分割鍵パラメー
タないし第nの分割鍵パラメータ311〜313として
供給する。第1の内部副変換処理部321では、上記A
入力データ101を分けたA1入力データ301を、第
1の分割鍵パラメータ311で内部非線形変換し、該内
部非線形変換された出力データと上記A2入力データ3
02との排他的論理和を、第1のA2内部中間データ3
06として出力し、上記A2入力をそのまま第1のA1
内部中間データ305として出力する。
【0073】第2の内部副変換処理部322では、上記
第1の内部副変換処理部321の第1のA1内部中間デ
ータ305をA1入力として、第2の分割鍵パラメータ
312で内部非線形変換する。上記第1のA2内部中間
データ306をA2入力データとして該A2入力と内部
非線形変換された出力データとの排他的論理和を、第2
のA2内部中間データ308として出力し、上記第1の
A2内部中間データ306をそのまま第2のA1内部中
間データ307として出力する。そして、上記第1の内
部副変換処理部と、上記第2の内部副変換処理部とを交
互にn段接続し、最終段のA1内部中間データ303と
A2内部中間データ304を、内部融合部352により
合わせて変換結果109とする。
【0074】次に、図7に示した上記構成のデータ変換
装置の動作を説明する。
【0075】まず、最初のサイクルで、A入力データ1
01、B入力データ102に対して、図8に示す処理が
実行される。即ち、非線形変換が時間がかかるので、最
初のサイクルでは、外部副変換処理部221の内部非線
形変換回路331,332と、外部副変換処理部222
の内部非線形変換回路334,335でほとんどの時間
が使われる。つまり、最初のサイクルでは、図8に示す
ように、太線で示すデータが伝わり内部非線形変換回路
331,332,334,335の処理が実行される。
【0076】次のサイクルでは、図9に示す処理が行わ
れる。即ち、第1の外部副変換処理部221中の内部非
線形変換回路333と、第2の外部副変換処理部222
中の内部非線形変換回路336と、第3の外部副変換処
理部223中の内部非線形変換回路337と、第4の外
部副変換処理部224中の内部非線形変換回路391の
処理に時間が当てられる。太い破線は、A入力側のデー
タが伝わったことを示している。
【0077】次のサイクルでは、図10に示す処理が行
われる。即ち、第3と第4の外部副変換処理部223と
224の残りの内部非線形変換回路338,339と3
92,393に処理時間が当てられる。この3サイクル
が終わると、全ての変換処理が終わることになる。これ
を従来の逐次処理方式のデータ変換と比較すると、従来
方式では前段の内部非線形変換が終わらないと次段の内
部非線形変換が始まらないため、12サイクルを要して
いたので、この実施の形態の方式では、約4倍の高速処
理ができる。
【0078】なお、上記実施の形態では、内部副変換処
理部中の入れ子の内部非線形変換回路331ないし39
3は、実施の形態1の接続構成のものを示したが、入れ
子の非線形変換回路として実施の形態2の接続構成のも
のを用いて同様の動作をし、同様の効果がある。
【0079】実施の形態4.この実施の形態では、回路
構成が小さな非線形変換回路を、従来の副変換処理部中
の非線形変換回路に適用した形態を説明する。
【0080】図11は、副変換処理部とその非線形変換
回路の詳細を示す図である。
【0081】図11において、aは第1段の副変換処理
部を示し、421は外部副変換処理部、431はその外
部非線形変換回路である。図11のbは、外部非線形変
換回路431の詳細構成を示し、551は内部分割部、
501ないし508は入力データ、511ないし513
は鍵パラメータ111を分割した分割鍵パラメータで、
552は内部融合部、521ないし523は内部副変換
処理部、531ないし533は内部非線形変換回路、5
41ないし543は排他的論理和回路である。
【0082】図11のアルゴリズムの場合、内部非線形
変換回路531,532,533として差分確率pのも
のを用いた場合、外部非線形変換回路431の差分確率
はp 2以下である。従って、外部副変換処理部421を
3段以上重ねたアルゴリズムの差分確率は2(p22
2p4以下となる。
【0083】また、図12は、図11のaに示す外部副
変換処理部を2段接続し、各外部副変換処理部中の非線
形変換回路として、図11のbに示す3段の内部副変換
処理部を接続した場合の全体の副変換処理部の構成を示
す図と、図12のaの構成のデータ変換装置がデータ変
換を行っていく順序を時間を追って説明する図である。
【0084】図において、代表的な構成要素である各外
部副変換処理部421,422と、外部副変換処理部中
の排他的論理和回路441,442、内部副変換処理部
521,522,523と、第1と第2の内部副変換処
理部中の内部非線形変換回路531ないし536の番号
は記載してあるが、その他の構成要素の番号は省略して
ある。
【0085】次に、上記構成のデータ変換装置の動作を
説明する。
【0086】まず、最初のサイクルでは、図12のbに
示すように、A入力データ101、B入力データ102
に対しては、外部副変換処理部421の内部非線形変換
回路531,532で時間がかかる。つまり、最初のサ
イクルでは、図12のbの太線で示すデータが伝わり、
内部非線形変換回路531,532の処理が実行され
る。
【0087】次のサイクルでは、図12のcに示す処理
が行われる。即ち、外部副変換処理部421中の内部非
線形変換回路533と、第2の外部副変換処理部422
中の内部非線形変換回路534の処理に時間が当てられ
る。太い破線は、A入力側のデータが伝わったことを示
している。
【0088】次のサイクルでは、図12のdに示す処理
が行われる。即ち、第2の外部副変換処理部422の残
りの内部非線形変換回路535,536に処理時間が当
てられる。この3サイクルが終わると、全ての変換処理
が終わることになる。これを従来の逐次処理方式と比較
すると、従来の方式では、前段の内部非線形変換の処理
が済まないと次段の内部非線形変換の処理ができないの
で、この例では、6サイクルが必要であったのに対し、
本実施の形態の方式では、3サイクルで終わり、演算の
高速化が図れるという効果がある。
【0089】なお、上記実施の形態では、副変換処理部
中の入れ子の非線形変換回路は、実施の形態1の接続構
成のものを示したが、入れ子の非線形変換回路として実
施の形態2の接続構成のものを用いても同様の動作を
し、同様の効果がある。
【0090】実施の形態5.本発明のデータ変換装置の
基本構成要素である非線形変換回路を、従来の副変換処
理部中の非線形変換回路に適用した他の形態を説明す
る。
【0091】図13は、その構成と副変換処理部中の非
線形変換回路の詳細を示す図である。
【0092】図13において、aは全体の構成を示し、
621ないし624は外部副変換処理部、631ないし
634はその外部非線形変換回路、641ないし64
4、741ないし744は排他的論理和回路である。ま
た、601,602,701,702はそれぞれA1,
B1,A2,B2入力データ、603,604,70
3,704は変換後の出力データ、605ないし60
8、705ないし708は中間データである。図13の
bは、外部非線形変換回路631の詳細構成を示し、6
51,751は非線形変換後の各データ、775ないし
778は内部中間データ、711ないし713は鍵パラ
メータ111を分割した分割鍵パラメータである。72
1ないし723は内部副変換処理部、731ないし73
3は内部非線形変換回路、761ないし763は排他的
論理和回路である。
【0093】図13に示すデータ変換装置は、任意の4
つのA1入力データ、A2入力データとB1入力デー
タ、B2入力データに対し、各副変換処理に際して、上
記A1入力データとB1入力データ間、A2入力データ
とB2入力データ間で非線形変換と排他的論理和演算を
行い、それぞれB1中間データとB2中間データとし、
B1入力データとB2入力データをそのままA1中間デ
ータとA2中間データとする。
【0094】上記構成のデータ変換装置のその他の動作
は、先の実施の形態3、実施の形態4の説明で明らかな
ので、ここでは詳細な説明は省く。実施の形態3、実施
の形態4と同様演算の高速化が図れる。
【0095】実施の形態6.本実施の形態では、実施の
形態1における第1の副変換処理部121と第2の副変
換処理部122が交互に複数接続されて実行された処理
を、基本となる第1の副変換処理部121と第2の副変
換処理部122から構成された処理単位の繰り返し処理
で実現したものを説明する。即ち、演算処理が重ならな
い第1の副変換処理部121と第2の副変換処理部12
2を1組の処理単位とし、組になった第2の副変換処理
部の出力データを保持して、この出力データを第1の副
変換処理部の入力データとして供給し、繰り返し演算を
可能にすることで、ハードウェア規模の削減を図る。
【0096】図14は、その構成を示すブロック図であ
り、図において、121,122は第1、第2の副変換
処理部である。111,112は第1、第2の鍵パラメ
ータである。非線形変換回路131ないし132、排他
的論理和回路141ないし142は、実施の形態1にお
ける図1の構成要素と同等のものである。153は制御
部、154は繰り返し処理部、156a,156bはデ
ータ選択部、157a,157bはデータ保持部、15
8は鍵パラメータ供給部である。
【0097】次に、上記構成のデータ変換装置の動作を
説明する。
【0098】任意のA入力データ101とB入力データ
102は、まず、データ選択部156a,156bを経
由して第1の副変換処理部121へ入力される。次に、
A中間データ105、B中間データ106は、第2の副
変換処理部122へ入力される。ここで、第1及び第2
の副変換処理部の動作は、実施の形態1で示したものと
同じである。ただし、第1及び第2の副変換処理部中の
非線形変換回路へは、下記の繰り返し処理に対応して第
1の副変換処理部及び第2の副変換処理部に供給される
べき鍵パラメータが、鍵パラメータ供給部158により
供給される。第2の副変換処理部122から出力される
A中間データ107及びB中間データ108は、繰り返
し処理部154により、それぞれデータ保持部157a
とデータ選択部156a及びデータ保持部157bとデ
ータ選択部156bを経由して、それぞれ第1の副変換
処理部121へA入力データ及びB入力データとして入
力される。以降、上記の繰り返し処理の後、A出力デー
タ103とB出力データ104が出力される。
【0099】このように構成することで、実施の形態1
と同様の理由で高速のデータ変換ができ、かつ、副変換
処理部の数を少なくすることができ、装置規模を小さく
することができる。
【0100】なお、上記の実施の形態では、第1の副変
換処理部121と第2の副変換処理部122の1段ずつ
を縦続接続したものを基本構成として繰り返し処理の単
位としているが、第1の副変換処理部と第2の副変換処
理部を1組にして、交互に必要な段数分縦続接続したも
のを繰り返し処理の単位にすることでも、同様の効果が
あることは明らかである。
【0101】図14に示す構成は、第1の副変換処理部
と第2の副変換処理部を1組にして縦続接続しているた
め、必ず偶数段の副変換処理部により構成される。この
ように、偶数段の副変換処理部により構成する理由は、
A入力データとB入力データのデータの桁数が異なる場
合でも、適切なデータ変換が行えるようにするためであ
る。例えば、A入力データが7桁であり、B入力データ
が9桁であり、鍵パラメータ供給部158が7桁用の鍵
パラメータ111を非線形変換回路131に供給し、9
桁用の鍵パラメータ112を非線形変換回路132に供
給するものとする。7桁のA入力データ101は、非線
形変換回路131において、7桁用の鍵パラメータ11
1により非線形変換され、7桁のB中間データ106と
なり、更に、A中間データ107として出力される。こ
のA中間データ107は、データ保持部157aとデー
タ選択部156aを経由して、再びA入力データとな
る。このように、7桁のA入力データが、必ず7桁用の
鍵パラメータ111により、非線形変換を受けるために
は、副変換処理部を偶数段にしておく必要がある。も
し、副変換処理部が奇数段であると、非線形変換回路1
31では、7桁のデータと9桁のデータが交互に非線形
変換されることになってしまう。
【0102】なお、図示しないが、鍵パラメータ供給部
158が副変換処理部に対して7桁用と9桁用の鍵パラ
メータを交互に供給するように制御できるなら、奇数段
の副変換処理部が縦続接続されていてもよい。
【0103】実施の形態7.本実施の形態では、実施の
形態2における第1の副変換処理部161と第2の副変
換処理部162が交互に複数接続されて実行された処理
を、基本となる第1の副変換処理部と第2の副変換処理
部から構成された処理単位の繰り返し処理で実現したも
のを説明する。即ち、実施の形態6で述べた帰還ループ
を設けてA,B中間データを、入力側のデータ選択部に
戻して繰り返し演算をさせてハードウェア規模の削減を
図る。
【0104】図15は、その構成を示すブロック図であ
り、図において、125,126は第1、第2の副変換
処理部である。111,112は第1、第2の鍵パラメ
ータである。非線形変換回路132ないし133、排他
的論理和回路141ないし142は、実施の形態2にお
ける図3の構成要素と同等のものである。制御部15
3、繰り返し処理部154、データ選択部156a,1
56b、データ保持部157a,157b、鍵パラメー
タ供給部158は、実施の形態6における要素と同じも
のである。
【0105】次に、上記構成のデータ変換装置の動作を
説明する。
【0106】任意のA入力データ101とB入力データ
102は、まず、データ選択部156a,156bを経
由して第1の副変換処理部125へ入力される。次に、
A中間データ105、B中間データ106は、第2の副
変換処理部126へ入力される。ここで、第1及び第2
の副変換処理部の動作は、実施の形態2で示したものと
同じである。ただし、第1及び第2の副変換処理部中の
非線形変換回路へは、下記の繰り返し処理に対応して第
1の副変換処理部及び第2の副変換処理部に供給される
べき鍵パラメータが、鍵パラメータ供給部158により
供給される。第2の副変換処理部126から出力される
A中間データ107及びB中間データ108は、繰り返
し処理部154により、それぞれデータ保持部157
a,157bとデータ選択部156a,156b経由
で、第1の副変換処理部125へA入力データ及びB入
力データとして入力される。以降、上記の繰り返し処理
の後、A出力データ103及びB出力データ104が出
力される。
【0107】このように構成することで、実施の形態2
と同様の理由で高速のデータ変換ができ、かつ、副変換
処理部の数を少なくすることができ、装置規模を小さく
することができる。
【0108】第1の副変換処理部125と第2の副変換
処理部126の1段ずつを縦続接続したものを繰り返し
処理の単位として説明したが、第1の副変換処理部12
5と第2の副変換処理部126を1組にして、交互に必
要な段数分縦続接続して繰り返し処理の単位としてもよ
いことは、先の実施の形態6と同様である。なお、詳細
な接続構成図と動作の記述は省くが、実施の形態6又は
この実施の形態7と同様に、実施の形態4又は実施の形
態5における外部副変換処理部を偶数段接続したものを
繰り返し処理の単位に置き換えたものも、高速演算性を
損なわずに、外部副変換処理部の数を小さくすることが
できる。ここで外部副変換処理部を偶数段接続したもの
を繰り返しの処理単位とする場合でも、高速演算性が損
なわれないのは、実施の形態4の動作の説明から明らか
である。
【0109】なお、詳細な接続構成図と動作の記述は省
くが、実施の形態6又は実施の形態7のデータ選択部と
データ保持部を組にして帰還ループを形成することを、
実施の形態3ないし実施の形態5に示した内部副変換処
理部に対して適用することもできる。即ち、図6、図1
1の外部非線形変換回路中の内部分割部351,551
内又はその後に内部データ選択部を設けてデータ入力の
切換え選択をさせ、内部融合部352,552内又はそ
の前に内部データ保持部を設けて、内部データ選択部と
の間に帰還ループを形成する。また、図13の外部非線
形変換回路の前に、データ選択部を設けてデータ入力の
切換え選択をさせ、外部非線形変換回路の後に、データ
保持部を設けてデータ選択部との間に帰還ループを形成
する。こうすることで、高速演算性を損なわずに、内部
副変換処理部の規模を少なくできる。
【0110】実施の形態8.本実施の形態では、実施の
形態1における複数の副変換処理部121ないし124
による処理を、基本となる繰り返し処理単位の繰り返し
処理に置き換えたものを説明する。この実施の形態にお
いては、任意のA入力データ101とB入力データ10
2とのデータ桁数が等しいものとする。A入力データ1
01とB入力データ102とのデータ桁数が等しい時
は、繰り返しのための副変換処理部の数は、必ずしも偶
数である必要がなくなり、任意の段数を縦続して帰還ル
ープを形成できる。
【0111】図16は、その構成を示すブロック図であ
り、説明を簡単にするため副変換処理部が1段だけ存在
する帰還ループとしている。
【0112】図において、121は副変換処理部であ
る。第1の鍵パラメータ111、非線形変換回路13
1、排他的論理和回路141、繰り返し処理部154、
データ選択部156a,156b、データ保持部157
a,157b、鍵パラメータ供給部158は、他の実施
の形態と同様の要素である。
【0113】次に、上記構成のデータ変換装置の動作を
説明する。
【0114】任意のA入力データ101とB入力データ
102は、まず、データ選択部156a,156bを経
由して副変換処理部121へ入力される。ここで、副変
換処理部121の動作は、実施の形態1で示したものと
同じである。ただし、副変換処理部中の非線形変換回路
へ供給される鍵パラメータは、鍵パラメータ供給部15
8により下記の繰り返し処理に対応して供給される。副
変換処理部121から出力されるA中間データ105及
びB中間データ106は、繰り返し処理部154によ
り、それぞれ副変換処理部121へA入力データ及びB
入力データとして入力される。以降、上記の繰り返し処
理の後、A出力データ103及びB出力データ104が
出力される。
【0115】このように構成することで、非線形変換回
路の数を少なくすることができ、装置規模を小さくする
ことができる。
【0116】なお、上記の実施の形態では、1段の副変
換処理部121を繰り返し処理の単位として説明した
が、複数段縦続接続してもよいことは明らかである。こ
の場合、高速性を失うことなく装置規模を小さくするこ
とができる。
【0117】また、副変換処理部として、実施の形態2
で示した装置の副変換処理部を用いてもよいことも明ら
かである。
【0118】なお、詳細な接続構成図と動作の記述は省
くが、実施の形態6又は実施の形態7と同様に、上記実
施の形態を実施の形態3ないし実施の形態5の内部副変
換処理部にも適用できることも明らかである。
【0119】実施の形態9.本実施の形態では、回路構
成が小さな非線形変換回路を、従来の副変換処理部中の
非線形変換回路に適用した形態を説明する。
【0120】図17は、本実施の形態のデータ変換装置
の構成を示す図である。
【0121】図18は、図17における外部非線形変換
回路831(ないし838)の構成を示すブロック図で
ある。
【0122】図19は、図18における内部非線形変換
回路931(ないし933)の構成を示すブロック図で
ある。
【0123】ここで、鍵パラメータ811は、32×3
=96ビットであり、鍵パラメータ811a+鍵パラメ
ータ811b+鍵パラメータ811cの合計長が32ビ
ット、鍵パラメータ811d+鍵パラメータ811e+
鍵パラメータ811fの合計長が32ビット、鍵パラメ
ータ811g+鍵パラメータ811h+鍵パラメータ8
11iの合計長が32ビットとなっている。更に、鍵パ
ラメータ811aは16ビット、鍵パラメータ811b
は7ビット、鍵パラメータ811cは9ビットである。
【0124】図20及び図21は、図19における非線
形変換回路951及び952a,952bをROM(R
ead Only Memory)又はRAM(Ran
dom Access Memory)で実現する場合
の変換テーブルS7,S9の例である。たとえば、変換
テーブルS7に対して、入力データX=0が入力される
と出力データY=85が出力される。また、入力データ
X=1が入力されると出力データY=95が出力され
る。また、入力データX=128が入力されると出力デ
ータY=42が出力される。変換テーブルS9の場合
も、入力データX=0,1,...,511が入力され
ると出力データY=341,310,...,170が
出力される。
【0125】ここで、上記変換テーブルS7は、次のよ
うに構成されている。
【0126】7次の既約多項式、x7+x5+x4+x3
1=0の根をαとした時に、入力の基底を正規基底
{α,α2,α4,α8,α16,α32,α64}、出力の基
底を正規基底{α32,α4,α2,α64,α16,α,
α8}とし、この基底に対してガロア体GF(27)上の
元である入力Xに対してX17を表現したものに、55h
(16進数)をXOR(排他的論理和)したものを出力
とする。この入出力を、10進数表現したテーブルが図
20である。ここで、入出力は、左側がLSB(最下位
ビット)とする。
【0127】また、上記変換テーブルS9は、次のよう
に構成されている。
【0128】9次の既約多項式、x9+x8+x7+x6
4+x3+1=0の根をαとした時に、入力の基底を正
規基底{α,α2,α4,α8,α16,α32,α64
α128,α 256}、出力の基底を正規基底{α64,α,α
16,α8,α256,α2,α128,α3 2,α4}とし、この
基底に対してガロア体GF(29)上の元である入力X
に対してX5を表現したものに、155h(16進数)
をXOR(排他的論理和)したものを出力とする。この
入出力を、10進数表現したテーブルが図21である。
ここで、入出力は、左側がLSB(最下位ビット)とす
る。
【0129】なお、ガロア体を表現するものとして多項
式基底、正規基底などによるベクトル表現がある。
【0130】その典型は、多項式基底によるベクトル表
現である。多項式基底によるベクトル表現は、GF(2
m)の原始元をαとし、GF(2m)の任意の元を多項式
基底{1,α,α2,・・・,αm-1}によるベクトル表
現で表す。
【0131】多項式基底の利点としては、GF(2m
の元どうしの加算をビット毎の加算(排他的論理和演
算)によって実現できることにある。即ち、ハードウェ
アで実現する場合、2入力の排他的論理和演算回路m個
で実現することが可能となる。しかし、多項式基底によ
るベクトル表現においては、乗算は加算に比べるとハー
ドウェアで実現するのは一般に困難であり、ROMなど
で実現するのが一般的である。
【0132】多項式基底以外の重要な基底として、正規
基底(normal basis)がある。これは、m
次原始多項式の根αとその共役元からなる集合で、
【0133】
【数1】
【0134】が基底となる。
【0135】正規基底の最大の特徴は、これを用いた
時、2乗が非常に簡単になるという点にある。GF(2
m)の任意の元を2乗する場合、そのベクトル表現を右
に巡回シフトすることにより実現できる。これをハード
ウェアで実現する場合は、ビットの結線を結び替えるこ
とのみにより実現可能である。この特徴を利用すること
で、正規基底を用いたベクトル表現に比べ、任意の元X
に対するXn回路をより少ないハードウェア規模で実現
することが可能である。逆元(X-1)回路も、Xのn乗
回路とみなすことができる。即ち、ガロア体GF
(2m)の任意の元Xの逆元X-1は、
【0136】
【数2】
【0137】に等しく、n=2m−2とすればよいから
である。この例として、上記変換テーブルS7の入力7
ビットを{in0,in1,in2,in3,in4,
in5,in6}、出力7ビットを{out0,out
1,out2,out3,out4,out5,out
6}とした時の下位6ビット目(out5)を、論理回
路で実現した例を図22に示す。
【0138】図17〜図19に示す上記構成のデータ変
換装置の動作は、先の実施形態より明らかなので、ここ
では詳細な説明は省く。
【0139】実施の形態10.回路規模をそれほど増大
させず、しかも暗号の強さを強くしたデータ変換装置を
説明する。
【0140】図23は、本実施の形態のデータ変換装置
の構成図である。
【0141】本構成は実施の形態9の装置に、データ変
換部FL1〜FL10を付加したものである。
【0142】また、図24は、データ変換部FL1 9
71(〜FL10 980)の詳細構成を示した図であ
る。
【0143】各データ変換部FL1〜FL10は、論理
積回路971a又は論理和回路971bと、排他的論理
和回路971c,971dで構成される。鍵パラメータ
KL1の長さは32ビットで、図示していない鍵パラメ
ータ供給部により鍵パラメータは、鍵パラメータKL1
aとKL1bに分割される。例えば、鍵パラメータKL
1aが16ビット、鍵パラメータKL1bが16ビット
に分割される。図中の論理積回路971a又は論理和回
路971bは、論理積回路と論理和回路とのどちらの回
路であってもよく、また、論理和回路と論理和回路の組
合せであってもよい。
【0144】上記構成の装置の動作を説明する。
【0145】2つの排他的論理和回路971c,971
dと、2つの論理積回路又は2つの論理和回路又は1つ
の論理積回路と1つの論理和回路からなる第1と第2の
論理演算回路をデータ変換部971として、第1の副変
換処理部のA入力側とB入力側のいずれか又は両入力側
に付加する。
【0146】A入力(又はB入力)を更に任意の桁長の
2つのAAデータ、ABデータに分け、鍵パラメータを
対応するA変換鍵パラメータ981aとB変換鍵パラメ
ータ981bに分け、第1の論理演算回路により、上記
AAデータと上記A変換鍵パラメータ981aとの第1
の論理積又は論理和の出力をとり、排他的論理和回路9
71cにより、該第1の論理積/論理和された出力デー
タと上記ABデータとの第1の排他的論理和をとり、該
第1の排他的論理和された出力データをABデータ変換
後の出力データとする。第2の論理演算回路により、上
記第1の排他的論理和出力とB変換鍵パラメータとの第
2の論理積又は論理和をとり、排他的論理和回路971
dにより、該第2の論理積/論理和された出力データと
上記AAデータとの第2の排他的論理和をとり、該第2
の排他的論理和された出力データをAAデータ変換後の
出力データとし、上記AAデータ変換後の出力データと
ABデータ変換後の出力データを合わせて、A出力デー
タ(又はB出力データ)として後段に出力する。
【0147】新たに設けたデータ変換部FL1〜FL1
0は、鍵パラメータの値によってその出力が変化する線
形関数であるため、差分確率を増加させることなく、差
分解読法以外の他の解読法に対する耐性を高めることが
できる。この非線形変換の動作については、既に先の実
施の形態で説明しているので、ここでは記述を省略す
る。
【0148】また、各データ変換部FL1〜FL10
は、必ずしも図23に図示した通りでなくてもよい。例
えば、データ変換部FL1,FL3,FL5,FL7,
FL9をA系統(図中左側)とB系統(図中右側)との
片系統のみに挿入してもよく、また、組になる第1と第
2の副変換処理部のうちのいずれかの副変換処理部のみ
にデータ変換部をA系統とB系統の両系統または片系統
に設けるようにしてもよい。
【0149】実施の形態11.本実施の形態は、実施の
形態9及び実施の形態10が、本発明のデータ変換装置
の基本構成要素である非線形変換回路を、従来の副変換
処理部中の非線形変換回路に入れ子の非線形変換回路と
して接続構成していたのに対して、本発明のデータ変換
装置の基本構成要素である非線形変換回路を、本発明の
データ変換装置の基本構成要素における副変換処理部中
の非線形変換回路に入れ子の非線形変換回路として接続
構成した例である。図25に示すように、本実施の形態
は、実施の形態10の装置の各構成要素の配置を変えた
形となっている。この動作については、先の実施の形態
の説明から明らかなので、ここでは詳細な説明は省略す
る。また、各データ変換部FL1〜FL10の位置は、
必ずしも図示した位置でなくてもよいのは、実施の形態
10と同じであり、同様な効果がある。
【0150】図26は、実施の形態1〜11に述べた特
徴をまとめた図である。
【0151】縦方向に実施の形態1,2,4,5を示
し、横方向にこれら実施の形態1,2,4,5と組み合
わされる実施の形態3,6,7,8,9,10,11を
示している。実施の形態1,2は、副変換処理部の特徴
を述べている。図26において、実施の形態1において
図1に示した副変換処理部の構成をタイプ1とする。ま
た、実施の形態2において図3に示した副変換処理部の
構成をタイプ2とする。さらに、実施の形態3は副変換
処理部を入れ子にし、外部副変換処理部と内部副変換処
理部を備えたことが特徴である。また、実施の形態3の
内部副変換処理部と区別するために、この図26では、
入れ子構造をとっていない図1及び図3の副変換処理部
を外部副変換処理部と位置づけている。図26におい
て、組み合わせがいずれかの図に図示されている場合
は、()内にその図番を記入している。たとえば、(図
1)はタイプ1の副変換処理部が図1に図示されている
ことを示している。また、(図6)は、実施の形態3の
外部副変換処理部がタイプ1の副変換処理部で、内部副
変換処理部もタイプ1の副変換処理部で構成された例が
図6に図示されていることを示している。また、図26
中、{}内に記載された複数項目のいずれか1つの項目
が任意に選択可能であることを示している。たとえば、
実施の形態3においては、内部副変換処理部として用い
られる副変換処理部はタイプ1、タイプ2のどちらのタ
イプでもかまわないことを示している。図から判るよう
に、実施の形態1,2,4,5と実施の形態3,6,
7,8,9,10,11に示した特徴は、すべて組み合
わせることが可能である。また、本発明は、図26に示
す組み合わせに限るものではなく、他の特徴と組み合わ
せて用いられる場合でもよい。また、組み合わせる場合
に限るものでなく、各実施の形態の各特徴だけで用いら
れる場合でもよい。
【0152】次に、この発明に係るデータ変換装置の応
用例について説明する。
【0153】図27は、この発明に係るデータ変換装置
の応用例であるパーソナルコンピュータやワークステー
ションの構成を示す。
【0154】データ変換装置60は、ディスプレイユニ
ット61、キーボード62、マウス63、マウスパッド
64、システムユニット65、コンパクトディスク装置
100を備えている。
【0155】この発明のデータ変換装置は、例えば、図
27に示すように、コンパクトディスク装置100から
データを入力し、データをシステムユニット65に転送
し、ディスプレイユニット61に表示するものである。
或いは、ディスプレイユニット61に表示されたデータ
を、コンパクトディスク装置100に出力するものであ
る。また、データを変換して図示していない回線を経由
して情報を伝送するものである。しかし、この発明に係
るデータ変換装置は、図27に示したパーソナルコンピ
ュータやワークステーションに限る必要はなく、どのよ
うな形式であってもよい。例えば、コンパクトディスク
装置100の代わりに、ビデオプレーヤを入力装置にし
ても構わないし、ネットワークからのデータを入力する
ようにしても構わない。また、入力するデータは、アナ
ログデータであっても構わないし、デジタルデータであ
っても構わない。
【0156】また、本発明のデータ変換装置は、図27
に示すように、独立した筐体で存在しても構わないが、
図28に示すように、プリンタ66やスキャナ68やフ
ァクシミリ装置69等の周辺装置の筐体の内部に納めら
れているものでも構わない。また、その他テレビカメラ
や測定機や計算機等のシステムボードの一部分として存
在している場合であっても構わない。また、図28には
示していないが、図28に示した各装置をローカルエリ
アネットワークで接続し、互いに符号化した情報を伝送
する場合であっても構わない。また、ISDN等の広域
ネットワークを用いて符号化した情報を送受信するよう
な場合であっても構わない。
【0157】
【発明の効果】以上のように、この発明によるデータ変
換装置は、副変換処理部の構成を変えて入力データを部
分的に並列処理できるようにしたので、差分確率の優れ
た高速なデータ変換ができ、情報処理装置やデータ通信
装置の暗号装置等として有用である。
【0158】また、回路中に帰還ループを設けて同一要
素を反復利用する構成としたので、暗号化装置等の回路
規模を削減して高速処理する場合に適している。
【図面の簡単な説明】
【図1】 実施の形態1のデータ変換装置の構成ブロッ
ク図。
【図2】 非線形変換回路の例を示す構成図。
【図3】 実施の形態2のデータ変換装置の構成ブロッ
ク図。
【図4】 実施の形態1と2のデータ変換装置の同一性
を示す図。
【図5】 実施の形態1と2のデータ変換装置と同一構
成の他の例を示す図。
【図6】 実施の形態3のデータ変換装置の基本構成の
一部と副変換処理部中の非線形変換回路の構成を示す
図。
【図7】 実施の形態3のデータ変換装置の全体の副変
換処理部の接続構成図。
【図8】 図7の接続の装置のデータ変換順序を説明す
る図。
【図9】 図7の接続の装置のデータ変換順序を説明す
る図。
【図10】 図7の接続の装置のデータ変換順序を説明
する図。
【図11】 実施の形態4のデータ変換装置の基本構成
の一部と副変換処理部中の非線形変換回路の構成を示す
図。
【図12】 実施の形態4のデータ変換装置の一部の副
変換処理部の接続と、そのデータ変換順序を説明する
図。
【図13】 実施の形態5のデータ変換装置の基本構成
と副変換処理部中の非線形変換回路の構成を示す図。
【図14】 実施の形態6のデータ変換装置の構成ブロ
ック図。
【図15】 実施の形態7のデータ変換装置の構成ブロ
ック図。
【図16】 実施の形態8のデータ変換装置の構成ブロ
ック図。
【図17】 実施の形態9のデータ変換装置の構成ブロ
ック図。
【図18】 実施の形態9のデータ変換装置の中の外部
非線形変換回路の構成を示す図。
【図19】 実施の形態9のデータ変換装置の中の内部
非線形変換回路中の内部非線形変換回路の構成を示す
図。
【図20】 実施の形態9のデータ変換装置における内
部非線形変換回路中の非線形要素(変換テーブル)の例
を示す図。
【図21】 実施の形態9のデータ変換装置における内
部非線形変換回路中の非線形要素(変換テーブル)の例
を示す図。
【図22】 図19の内部非線形変換回路中の非線形処
理要素をガロア体上のXのn乗回路で正規基底で構成し
た例を示す図。
【図23】 実施の形態10のデータ変換装置の構成ブ
ロック図。
【図24】 図23のデータ変換部の詳細構成を示す
図。
【図25】 実施の形態11の他のデータ変換装置の構
成ブロック図。
【図26】 実施の形態1〜11の特徴をまとめた図。
【図27】 この発明のデータ変換装置の応用例を示す
図。
【図28】 この発明のデータ変換装置の応用例を示す
図。
【図29】 従来のデータ変換装置の構成を示す図であ
る。
【符号の説明】
121,122,123,124 副変換処理手段、1
31,132,133,134 非線形変換回路、14
1,142,143,144 排他的論理和、151
排他的論理和、152 ガロア体逆元回路、153 制
御手段、154繰り返し処理手段、156a,156b
データ選択手段、157a,157b データ保持手
段、158 鍵パラメータ供給手段、161,162,
163,164 副変換処理手段、221,222,2
23,224 副変換処理手段、231,232,23
3,234 非線形変換回路、321,322,32
3,324 内部副変換処理手段、331,332,3
33,334 内部非線形変換回路、341,342,
343,344 排他的論理和、351 内部分割手
段、352 内部融合手段、421,422 副変換処
理手段、431,432 非線形変換回路、441,4
42 排他的論理和、521,522,523内部副変
換処理手段、531,532,533 内部非線形変換
回路、541,542,543 排他的論理和、551
内部分割手段、552 内部融合手段、621,62
2,623,624 副変換処理手段、631,63
2,633,634 非線形変換回路、641,64
2,643,644 排他的論理和、721,722,
723 内部副変換処理手段、731,732,733
内部非線形変換回路、741,742,743,74
4 排他的論理和、761,762,763 排他的論
理和、831,832,833,834,835,83
6,837,838 外部非線形変換手段、841,8
42,843,844,845,846,847,84
8 排他的論理和、931,932,933内部非線形
変換手段、941,942,943,944,945
排他的論理和、951 S7非線形変換、952a,9
52b S9非線形変換、961,962,963,9
64 排他的論理和、971,972,973,97
4,975,976,977,978,979,980
データ変換部、971a,971b 論理積または論
理和、971c,971d 排他的論理和、991,9
92,993,994,995,996,997,99
8 排他的論理和。

Claims (31)

    【特許請求の範囲】
  1. 【請求項1】 任意の2つのA入力データ(101)と
    B入力データ(102)に対し、上記A入力データを第
    1の鍵パラメータ(111)で第1の非線形変換をし、
    該第1の非線形変換された出力データと上記B入力デー
    タ(102)との排他的論理和をB中間データとして出
    力し、上記B入力データをそのままA中間データとして
    出力する構成と、 上記A中間データを第2の鍵パラメータで第2の非線形
    変換をし、該第2の非線形変換された出力データと上記
    B中間データとの排他的論理和を次のB中間データとし
    て出力し、上記B中間データをそのまま次のA中間デー
    タとして出力する構成を備え、 上記の構成を縦続接続して、最終のA中間データとB中
    間データを変換後の出力データ(103と104)とす
    るデータ変換装置。
  2. 【請求項2】 第1の非線形変換の入力側から第2の非
    線形変換の入力側までに存在する第1の非線形変換回路
    (131)と排他的論理和回路(141)を第1の副変
    換処理部(121)とし、第2の非線形変換の入力側か
    ら次の第1の非線形変換の入力側までに存在する第2の
    非線形変換回路(132)と排他的論理和回路(14
    2)を第2の副変換処理部(122)とする場合と、 第1の非線形変換の出力側から第2の非線形変換の出力
    側までに存在する排他的論理和回路(141)と第2の
    非線形変換回路(132)を第1の副変換処理部(16
    1)とし、第2の非線形変換の出力側から次の第1の非
    線形変換の出力側までに存在する排他的論理和回路(1
    42)と第1の非線形変換回路(133)を第2の副変
    換処理部(162)とする場合とのいずれかの構成を備
    え、 上記第1の副変換処理部(121又は161)と、上記
    第2の副変換処理部(122又は162)とを交互に必
    要段数接続し、最終段は第1又は第2いずれかの副変換
    処理部から出力されるA中間データとB中間データを変
    換後の出力データとすることを特徴とする請求の範囲第
    1項記載のデータ変換装置。
  3. 【請求項3】 第1又は第2の非線形変換に際しては、
    その副変換処理部(221)へのA入力データ(10
    1)を任意の桁数で分けてA1入力側に入力されるA1
    入力データ(301)とA2入力側に入力されるA2入
    力データ(302)とし、また、鍵パラメータ(11
    1)も任意の桁数で分けて第1の分割鍵パラメータない
    し第nの分割鍵パラメータ(311〜313)とし、 上記A入力データ(101)を分けたA1入力データ
    (301)を第1の分割鍵パラメータ(311)で内部
    非線形変換し、該内部非線形変換された出力データと上
    記A2入力データ(302)との排他的論理和を第1の
    A2内部中間データ(306)として出力し、上記A2
    入力データ(302)をそのまま第1のA1内部中間デ
    ータ(305)として出力する第1の内部副変換処理部
    (321)と、 上記第1の内部副変換処理部(321)の第1のA1内
    部中間データ(305)をA1入力データとして第2の
    分割鍵パラメータ(312)で内部非線形変換し、該内
    部非線形変換された出力データと上記第1のA2内部中
    間データ(306)をA2入力データとして該A2入力
    データとの排他的論理和を第2のA2内部中間データ
    (308)として出力し、上記第1のA2内部中間デー
    タ(306)をそのまま第2のA1内部中間データ(3
    07)として出力する第2の内部副変換処理部(32
    2)と、 上記第1の内部副変換処理部(321)と、上記第2の
    内部副変換処理部(322)とを交互にn段接続し、最
    終段のA1内部中間データ(303)とA2内部中間デ
    ータ(304)を合わせて変換結果(109)とする非
    線形変換をすることを特徴とする請求の範囲第2項記載
    のデータ変換装置。
  4. 【請求項4】 各副変換処理部中の非線形変換に際して
    は、その副変換処理部(221)へのA入力データを任
    意の桁数で分けてA1入力データとA2入力データと
    し、また鍵パラメータも任意の桁数で分けて第1の分割
    鍵パラメータないし第nの分割鍵パラメータとし、 上記A入力データを分けたA1入力データを第1の分割
    鍵パラメータで内部非線形変換し、該内部非線形変換さ
    れた出力データを第1のA2内部中間データとして出力
    し、上記A1入力データとA2入力データとの排他的論
    理和を第1のA1内部中間データとして出力する第1の
    内部副変換処理部と、 上記第1の内部副変換処理部の第1のA1内部中間デー
    タをA1入力データとして第2の分割鍵パラメータで内
    部非線形変換して第2のA2内部中間データとして出力
    し、上記第1のA1内部中間データと第1のA2内部中
    間データをA1入力データとA2入力データとして排他
    的論理和をとり第2のA1内部中間データとして出力す
    る第2の内部副変換処理部と、 上記第1の内部副変換処理部と、上記第2の内部副変換
    処理部とを交互にn段接続し、最終段のA1内部中間デ
    ータとA2内部中間データを合わせて変換結果とする非
    線形変換をすることを特徴とする請求の範囲第2項記載
    のデータ変換装置。
  5. 【請求項5】 任意の2つのA入力データ(101)と
    B入力データ(102)に対し、上記B入力データ(1
    02)を第1の鍵パラメータ(111)で非線形変換
    し、該非線形変換された変換結果(451)と上記A入
    力データ(101)との排他的論理和をB中間データ
    (462)として出力し、また、上記B入力データ(1
    02)をそのままA中間データ(461)として出力す
    る副変換処理部(421)を備え、 上記A中間データとB中間データをA入力データとB入
    力データとして各鍵パラメータによる副変換処理部を必
    要段数接続する構成とし、最終段のA中間データとB中
    間データを合わせて変換後の出力データとするデータ変
    換装置であって、 更に、各副変換処理部(421)中の非線形変換に際し
    ては複数の内部副変換処理部(521〜523)に分
    け、該内部副変換処理部(521)へのB入力データを
    任意の桁数で分けてB1入力データ(501)とB2入
    力データ(502)とし、また、鍵パラメータ(11
    1)も任意の桁数で分けて第1の分割鍵パラメータない
    し第nの分割鍵パラメータ(511〜523)とし、 上記B入力データ(102)を分けたB1入力データ
    (501)を第1の分割鍵パラメータ(511)で第1
    の内部非線形変換し、該第1の内部非線形変換された出
    力データと上記B2入力データ(502)との排他的論
    理和を第1のB2内部中間データ(506)として出力
    し、上記B2入力データ(502)をそのまま第1のB
    1内部中間データ(505)として出力する第1の内部
    副変換処理部(521)と、 上記第1の内部副変換処理部(521)の第1のB1内
    部中間データ(505)をB1入力データとして第2の
    分割鍵パラメータ(512)で内部非線形変換し、該内
    部非線形変換された出力データと上記第1のB2内部中
    間データ(506)をB2入力データとして、該B2入
    力データとの排他的論理和を第2のB2内部中間データ
    (508)として出力し、上記第1のB2内部中間デー
    タ(506)をそのまま第2のB1内部中間データ(5
    07)として出力する第2の内部副変換処理部(52
    2)と、 上記第1の内部副変換処理部と、上記第2の内部副変換
    処理部とを交互にn段接続し、最終段のB1内部中間デ
    ータ(503)とB2内部中間データ(504)を合わ
    せて非線形変換後の変換結果(451)とするようにし
    たデータ変換装置。
  6. 【請求項6】 各内部副変換処理部での排他的論理和の
    演算を実行する位置を変えて、B1入力データに内部非
    線形変換を施してB2内部中間データ出力とし、またB
    2入力データとB1入力データとの排他的論理和をB1
    内部中間データとして出力する構成としたことを特徴と
    する請求の範囲第5項記載のデータ変換装置。
  7. 【請求項7】 任意の4つのそれぞれA1入力データ
    (601)、A2入力データ(701)とB1入力デー
    タ(602)、B2入力データ(702)に対し、各副
    変換処理に際しては上記A1入力データとB1入力デー
    タ間、A2入力データとB2入力データ間で非線形変換
    と排他的論理和演算を行い、それぞれB1中間データ
    (606)とB2中間データ(706)とし、B1入力
    データとB2入力データをそのままA1中間データ(6
    05)とA2中間データ(705)とすることを特徴と
    する請求の範囲第5項ないし請求の範囲第6項記載のデ
    ータ変換装置。
  8. 【請求項8】 A入力データとB入力データ及び各A中
    間データとB中間データの分け方をAとBとで等しい桁
    数になるよう均等に分割することを特徴とする請求の範
    囲第1項又は請求の範囲第5項いずれか記載のデータ変
    換装置。
  9. 【請求項9】 任意の2つのA入力データとB入力デー
    タに対し、 B入力データをそのまま第1のA中間データとして出力
    する第1ステップ(S1)と、 上記A入力データを第1の鍵パラメータで非線形変換
    し、該非線形変換後の出力データと上記B入力データと
    の排他的論理和をとり第1のB中間データとして出力す
    る第2ステップ(S2)と、 上記第1のB中間データを入力し、そのまま第2のA中
    間データとして出力する第3ステップ(S3)と、 上記第1のA中間データを入力して第2の鍵パラメータ
    で非線形変換し、該非線形変換後の出力データと、上記
    第1のB中間データとの排他的論理和をとり、第2のB
    中間データとして出力する第4ステップ(S4)とを備
    え、 上記第1から第4ステップ(S1〜S4)を繰り返し、
    最後は第2又は第4ステップで終えるようにし、また、
    最終A中間データとB中間データを変換データとするデ
    ータ変換方法。
  10. 【請求項10】 任意の2つのA入力データとB入力デ
    ータに対し、 A入力データとB入力データとの排他的論理和を第1の
    A中間データとして出力する第1ステップ(S11)
    と、 上記A入力データを第1の鍵パラメータで非線形変換
    し、該非線形変換後の出力データを第1のB中間データ
    として出力する第2ステップ(S12)と、 上記第1のA中間データと第1のB中間データとの排他
    的論理和を第2のA中間データとして出力する第3ステ
    ップ(S13)と、 上記第1のA中間データを入力して第2の鍵パラメータ
    で非線形変換し、該非線形変換後の出力データを第2の
    B中間データとして出力する第4ステップ(S14)と
    を備え、 上記第1から第4ステップ(S11〜S14)を繰り返
    し、最後は第2又は第4ステップで終えるようにし、ま
    た、最終A中間データとB中間データを変換データとす
    るデータ変換方法。
  11. 【請求項11】 第1の非線形変換の入力側から第2の
    非線形変換の入力側までに存在する第1の非線形変換回
    路(131)と排他的論理和回路(141)を第1の副
    変換処理部(121)とし、第2の非線形変換の入力側
    から次の第1の非線形変換の入力側までに存在する第2
    の非線形変換回路(132)と排他的論理和回路(14
    2)を第2の副変換処理部(122)とする場合と、 第1の非線形変換の出力側から第2の非線形変換の出力
    側までに存在する排他的論理和回路(141)と第2の
    非線形変換回路(132)を第1の副変換処理部(16
    1)とし、第2の非線形変換の出力側から次の第1の非
    線形変換の出力側までに存在する排他的論理和回路(1
    42)と第1の非線形変換回路(133)を第2の副変
    換処理部(162)とする場合とのいずれかの構成を備
    え、 上記第1の副変換処理部と、上記第2の副変換処理部と
    を交互に必要段数接続し、最初の第1の副変換処理部の
    入力側にデータ選択部(156aと156b)を付加
    し、また、最後の第1と第2のいずれかの副変換処理部
    の出力側にデータ保持部(157aと157b)を付加
    し、また、鍵パラメータ供給部(158)を付加し、 最初に任意の2つのA入力データとB入力データを上記
    データ選択部(156aと156b)で選択入力し、該
    選択入力が終わると次回以降は上記データ保持部(15
    7aと157b)の出力を選択入力するよう帰還接続を
    して必要な回数だけ繰り返し変換処理をし、その際、鍵
    パラメータ供給部(158)は繰り返し変換処理に対応
    して、各副変換処理部へ鍵パラメータを供給し、最終回
    は上記データ保持部(157aと157b)から出力さ
    れるA中間データとB中間データを変換後の出力とする
    ことを特徴とする請求の範囲第1項記載のデータ変換装
    置。
  12. 【請求項12】 任意の2つのA入力データとB入力デ
    ータの桁数を同じとし、また、第1の非線形変換の入力
    側から第2の非線形変換の入力側までに存在する第1の
    非線形変換回路(131)と排他的論理和回路(14
    1)と、第1の非線形変換の出力側から第2の非線形変
    換の出力側までに存在する排他的論理和回路(141)
    と第2の非線形変換回路(132)とのいずれかを副変
    換処理部とし、 上記副変換処理部を必要段数接続し、最初の副変換処理
    部の入力側にデータ選択部(156aと156b)を付
    加し、また、最後の副変換処理部の出力側にデータ保持
    部(157aと157b)を付加し、また、鍵パラメー
    タ供給部(158)を付加し、 最初にA入力データとB入力データを上記データ選択部
    (156aと156b)で選択入力し、該選択入力が終
    わると次回以降は、上記データ保持部(157aと15
    7b)の出力を選択入力するよう帰還接続をして必要な
    回数だけ繰り返し変換処理をし、その際、鍵パラメータ
    供給部(158)は繰り返し変換処理に対応して各副変
    換処理部へ鍵パラメータを供給し、最終回は上記データ
    保持部(157aと157b)から出力されるA中間デ
    ータとB中間データを変換後の出力データとすることを
    特徴とする請求の範囲第1項記載のデータ変換装置。
  13. 【請求項13】 第1又は第2の非線形変換に際して
    は、その副変換処理部へのA入力データを任意の桁数で
    分けてA1入力データとA2入力データとし、また、鍵
    パラメータも任意の桁数で分けて第1の分割鍵パラメー
    タないし第nの分割鍵パラメータとし、 上記A入力データを分けたA1入力データを第1の分割
    鍵パラメータで内部非線形変換し、該内部非線形変換さ
    れた出力データと上記A2入力データとの排他的論理和
    を第1のA2内部中間データとして出力し、上記A2入
    力データをそのまま第1のA1内部中間データとして出
    力する第1の内部副変換処理部と、 上記第1の内部副変換処理部の第1のA1内部中間デー
    タをA1入力データとして第2の分割鍵パラメータで内
    部非線形変換し、該内部非線形変換された出力データと
    上記第1のA2内部中間データをA2入力データとし
    て、該A2入力データとの排他的論理和を第2のA2内
    部中間データとして出力し、上記第1のA2内部中間デ
    ータをそのまま第2のA1内部中間データとして出力す
    る第2の内部副変換処理部と、 上記第1の内部副変換処理部と、上記第2の内部副変換
    処理部とを交互にn段接続し、最初の第1の内部副変換
    処理部の入力側に内部データ選択部を付加し、また、最
    後の第1と第2のいずれかの内部副変換処理部の出力側
    に内部データ保持部を付加し、また、内部鍵パラメータ
    供給部を付加し、 最初にA1入力データとA2入力データを上記内部デー
    タ選択部で選択入力し、該選択入力が終わると次回以降
    は上記内部データ保持部の出力を選択入力するよう帰還
    接続をして必要な回数だけ繰り返し内部変換処理をし、
    その際、内部鍵パラメータ供給部は繰り返し内部変換処
    理に対応して各内部副変換処理部へ分割鍵パラメータを
    供給し、最終回は上記内部データ保持部から出力される
    A1中間データとA2中間データを合わせて変換後のA
    出力データとする非線形変換をすることを特徴とする請
    求の範囲第2項記載のデータ変換装置。
  14. 【請求項14】 各副変換処理部中の非線形変換に際し
    ては、その副変換処理部へのA入力データを任意の桁数
    で分けてA1入力データとA2入力データとし、また、
    鍵パラメータも任意の桁数で分けて第1の分割鍵パラメ
    ータないし第nの分割鍵パラメータとし、 上記A入力を分けたA1入力データを第1の分割鍵パラ
    メータで内部非線形変換し、該内部非線形変換された出
    力データを第1のA2内部中間データとして出力し、上
    記A1入力データとA2入力データとの排他的論理和を
    第1のA1内部中間データとして出力する第1の内部副
    変換処理部と、 上記第1の内部副変換処理部の第1のA1内部中間デー
    タをA1入力データとして第2の分割鍵パラメータで内
    部非線形変換して第2のA2内部中間データとして出力
    し、上記第1のA1内部中間データとA2内部中間デー
    タをA1入力データとA2入力データとして排他的論理
    和をとり第2のA1内部中間データとして出力する第2
    の内部副変換処理部と、 上記第1の内部副変換処理部と、上記第2の内部副変換
    処理部とを交互にn段接続し、最初の第1の内部副変換
    処理部の入力側に内部データ選択部を付加し、また、最
    後の第1と第2のいずれかの内部副変換処理部の出力側
    に内部データ保持部を付加し、また、内部鍵パラメータ
    供給部を付加し、 最初にA1入力データとA2入力データを上記内部デー
    タ選択部で選択入力し、該選択入力が終わると次回以降
    は、上記内部データ保持部の出力を選択入力するよう帰
    還接続をして必要な回数だけ繰り返し内部変換処理を
    し、その際、内部鍵パラメータ供給部は繰り返し内部変
    換処理に対応して、各内部副変換処理部へ分割鍵パラメ
    ータを供給し、最終回は上記内部データ保持部から出力
    されるA1中間データとA2中間データを合わせて変換
    後のA出力データとする非線形変換をすることを特徴と
    する請求の範囲第2項記載のデータ変換装置。
  15. 【請求項15】 各副変換処理部中の非線形変換へのA
    入力データの分け方を等しい桁数になるよう均等に分割
    し、第1の内部副変換処理部のみを必要段数接続するこ
    とを特徴とする請求の範囲第13項又は請求の範囲第1
    4項いずれか記載のデータ変換装置。
  16. 【請求項16】 第1の内部副変換処理部と、第2の内
    部副変換処理部とを交互に必要段数接続し、最初の第1
    の内部副変換処理部の入力側に内部データ選択部を付加
    し、また、最後の第1と第2のいずれかの内部副変換処
    理部の出力側に内部データ保持部を付加し、また、内部
    鍵パラメータ供給部を付加し、 最初にB1入力データとB2入力データを上記内部デー
    タ選択部で選択入力し、該選択入力が終わると次回以降
    は、上記内部データ保持部の出力を選択入力するよう帰
    還接続をして必要な回数だけ繰り返し内部副変換処理を
    し、その際、内部鍵パラメータ供給部は繰り返し内部副
    変換処理に対応して各内部副変換処理部へ分割鍵パラメ
    ータを供給し、最終回は上記内部データ保持部から出力
    されるB1中間データとB2中間データを合わせて変換
    後のB中間データとするようにしたことを特徴とする請
    求の範囲第5項又は請求の範囲第6項いずれか記載のデ
    ータ変換装置。
  17. 【請求項17】 各副変換処理部中の内部副変換処理部
    へのB入力データの分け方を等しい桁数になるよう均等
    に分割し、第1の内部副変換処理部のみを必要段数接続
    することを特徴とする請求の範囲第16項記載のデータ
    変換装置。
  18. 【請求項18】 各鍵パラメータによる副変換処理部を
    偶数段接続する構成とし、 最初の副変換処理部の入力側にデータ選択部(156a
    と156b)を付加し、また最後の副変換処理部の出力
    側にデータ保持部(157aと157b)を付加し、ま
    た、鍵パラメータ供給部(158)を付加し、 最初に、任意の2つのA入力データとB入力データを上
    記データ選択部(156aと156b)で選択入力し、
    該選択入力が終わると次回以降は上記データ保持部(1
    57aと157b)の出力を選択入力するよう帰還接続
    をして必要な回数だけ繰り返し副変換処理をし、その
    際、鍵パラメータ供給部(158)は繰り返し副変換処
    理に対応して各副変換処理部へ鍵パラメータを供給し、
    最終回は上記データ保持部(157aと157b)から
    出力されるA中間データとB中間データを変換後の出力
    データとすることを特徴とする請求の範囲第5項又は第
    6項いずれか記載のデータ変換装置。
  19. 【請求項19】 非線形変換回路として、少なくともそ
    のどれかにガロア体上の元Xのn乗回路を用いることを
    特徴とする請求の範囲第1項又は請求の範囲第5項いず
    れか記載のデータ変換装置。
  20. 【請求項20】 ガロア体上の元Xのn乗回路を、正規
    基底で構成することを特徴とする請求の範囲第19項記
    載のデータ変換装置。
  21. 【請求項21】 非線形変換回路の少なくとも一部にR
    ead OnlyMemoryを用いることを特徴とす
    る請求の範囲第1項又は請求の範囲第5項いずれか記載
    のデータ変換装置。
  22. 【請求項22】 非線形変換回路の少なくとも一部にR
    andom Access Memoryを用いること
    を特徴とする請求の範囲第1項又は請求の範囲第5項い
    ずれか記載のデータ変換装置。
  23. 【請求項23】 非線形変換回路の少なくとも一部にL
    ogic Circiutを用いることを特徴とする請
    求の範囲第1項又は請求の範囲第5項いずれか記載のデ
    ータ変換装置。
  24. 【請求項24】 2つの排他的論理和回路(971cと
    971d)と、論理積回路と論理和回路とのいずれかか
    らなる2つの論理演算回路(971aと971b)を、
    データ変換部(971)として、第1の副変換処理部の
    少なくともA入力側とB入力側のいずれか一方に付加
    し、データ変換部(971)への入力データを任意の桁
    長の2つのAAデータとABデータに分け、鍵パラメー
    タを対応するA変換鍵パラメータ(981a)とB変換
    鍵パラメータ(981b)に分け、 上記AAデータと、上記A変換鍵パラメータ(981
    a)との第1の論理演算を実行し、該第1の論理演算さ
    れた出力データと上記ABデータとの第1の排他的論理
    和をとり、該第1の排他的論理和された出力データをA
    Bデータ変換後の出力データとし、 上記第1の排他的論理和された出力データと、B変換鍵
    パラメータとの第2の論理演算を実行し、該第2の論理
    演算された出力データと上記AAデータとの第2の排他
    的論理和をとり、該第2の排他的論理和された出力デー
    タをAAデータ変換後の出力データとし、上記AAデー
    タ変換後の出力データとABデータ変換後の出力データ
    を合わせて出力することを特徴とする請求の範囲第2項
    記載のデータ変換装置。
  25. 【請求項25】 第1と第2の系統のデータ(AとB)
    を入力し、鍵パラメータ(111〜114)を用いて非
    線形変換処理し、非線形変換処理された第1と第2の系
    統のデータ(AとB)を出力するデータ変換装置におい
    て、 第1の系統のデータ(A)を鍵パラメータを用いて非線
    形変換処理する非線形変換回路(131〜134)と、 第1と第2の系統のデータ(AとB)の排他的論理和を
    演算する排他的論理和回路(141〜144)とを有す
    る副変換処理部(121〜124、又は161〜16
    4)を少なくとも2つ、第1の副変換処理部(121又
    は161)及び第2の副変換処理部(122又は16
    2)として備え、 第1の副変換処理部(121又は161)から出力され
    る第1と第2の系統のデータ(AとB)を第2の副変換
    処理部(122又は162)の第2と第1の系統のデー
    タ(BとA)として入力し、第1と第2の副変換処理部
    (121と122、又は161と162)の非線形変換
    回路(131と132、又は132と133)の非線形
    変換処理を同時に実行することを特徴とするデータ変換
    装置。
  26. 【請求項26】 上記データ変換装置は、第1と第2の
    系統のデータとしてA入力データ(101)とB入力デ
    ータ(102)を入力し、A出力データ(103)とB
    出力データ(104)を出力するとともに、 上記第1の副変換処理部(121)は、上記A入力デー
    タを第1の鍵パラメータで第1の非線形変換をし、該第
    1の非線形変換された変換データと、上記B入力データ
    との排他的論理和をB中間データとして出力し、また、
    上記B入力データをそのままA中間データとして出力
    し、 上記第2の副変換処理部(122)は、上記A中間デー
    タを入力し、第2の鍵パラメータで第2の非線形変換を
    し、該第2の非線形変換された変換データと、上記B中
    間データとの排他的論理和をB中間データとして出力
    し、また、上記B中間データをそのままA中間データと
    して出力し、 上記第1の副変換処理部(121)と、上記第2の副変
    換処理部(122)とを交互に接続し、第1と第2のい
    ずれかの副変換処理部(121又は122)から出力さ
    れるA中間データとB中間データを、A出力データとB
    出力データとして出力することを特徴とする請求の範囲
    第25項記載のデータ変換装置。
  27. 【請求項27】 上記データ変換装置は、第1と第2の
    系統のデータとして、A入力データ(101)とB入力
    データ(102)を入力し、A出力データ(103)と
    B出力データ(104)を出力するとともに、 上記第1の副変換処理部(161)は、上記A入力デー
    タを第1の鍵パラメータで第1の非線形変換をし、第1
    の非線形変換された変換データをB中間データとして出
    力し、また、上記B入力データと上記A入力データとの
    排他的論理和をA中間データとして出力し、 上記第2の副変換処理部(162)は、上記A中間デー
    タを入力し、第2の鍵パラメータで第2の非線形変換を
    し、該第2の非線形変換された変換データをB中間デー
    タとして出力し、また、上記第1の副変換処理部(16
    1)から出力されたB中間データを入力し、入力したB
    中間データと上記A中間データとの排他的論理和をA中
    間データとして出力し、 上記第1の副変換処理部(161)と、上記第2の副変
    換処理部(162)とを交互に接続し、第1と第2のい
    ずれかの副変換処理部(161又は162)から出力さ
    れるA中間データとB中間データを、A出力データ(1
    03)とB出力データ(104)として出力することを
    特徴とする請求の範囲第25項記載のデータ変換装置。
  28. 【請求項28】 上記第1の副変換処理部(121又は
    161又は125)と上記第2の副変換処理部(122
    又は162又は126)とを縦続接続した基本構成と、 該基本構成による非線形変換を所定の回数だけ繰り返し
    処理する繰り返し処理部(154)と、 上記第1の副変換処理部の非線形変換処理及び第2の副
    変換処理部の非線形変換処理に供給される第1の鍵パラ
    メータ及び第2の鍵パラメータとして、繰り返し処理の
    回数に対応した鍵パラメータを供給する鍵パラメータ供
    給部(158)とからなり、 所定の回数の繰り返し処理後のA中間データ(107)
    とB中間データ(108)を、A出力データ(103)
    とB出力データ(104)とすることを特徴とする請求
    の範囲第25項記載のデータ変換装置。
  29. 【請求項29】 第1と第2の系統のデータ(AとB)
    を入力し、鍵パラメータを用いて非線形変換し、非線形
    変換された第1と第2の系統のデータ(AとB)を出力
    するデータ変換装置において、 第1と第2の系統のデータ(AとB)を入力して、 第1の系統のデータ(A)を鍵パラメータを用いて非線
    形変換処理する非線形変換回路(131)と、 第1と第2の系統のデータの排他的論理和を演算する排
    他的論理和回路(141)とを有する副変換処理部(1
    21)と、 副変換処理部(121)の出力である第1と第2の系統
    のデータ(AとB)を、副変換処理部の入力である第1
    と第2の系統のデータ(AとB)として繰り返し入力し
    て所定の回数の繰り返し処理を行う繰り返し処理部(1
    54)と、 副変換処理部の非線形変換回路への鍵パラメータとし
    て、繰り返し処理に対応する鍵パラメータを供給する鍵
    パラメータ供給部(158)とを備えたことを特徴とす
    るデータ変換装置。
  30. 【請求項30】 上記非線形変換回路(231)は、入
    力した第1の系統のデータ(A)を任意の桁数で2つの
    第1と第2の分割データ(A1とA2)に分割する内部
    分割部(351)と、 鍵パラメータを任意の桁数で分割鍵パラメータに分割し
    て分割鍵パラメータを供給する鍵パラメータ供給部(1
    58)とを備え、 第1と第2の分割データ(A1とA2)を入力して、 第1の分割データ(A1)を分割鍵パラメータ(311
    〜313)を用いて非線形変換処理する内部非線形変換
    回路(331〜333)と、 第1と第2の分割データ(A1とA2)の排他的論理和
    を演算する内部排他的論理和回路(341〜343)と
    を有する内部副変換処理部(321〜323)を少なく
    とも2つ、第1の内部副変換処理部(321)及び第2
    の内部副変換処理部(322)として備え、 第1の内部副変換処理部から出力される第1と第2の分
    割データ(A1とA2)を第2の内部副変換処理部の第
    2と第1の分割データ(A2とA1)として入力し、第
    1と第2の内部副変換処理部(321と322)の内部
    非線形変換回路(331と332)の非線形変換処理を
    同時に実行することを特徴とする請求の範囲第25項記
    載のデータ変換装置。
  31. 【請求項31】 第1と第2の系統のデータ(BとA)
    を入力し、鍵パラメータを用いて非線形変換し、非線形
    変換された第1と第2の系統のデータ(BとA)を出力
    するデータ変換装置において、 第1の系統のデータ(B)を鍵パラメータを用いて非線
    形変換処理する非線形変換回路(431)と、 第1と第2の系統のデータの排他的論理和を演算する排
    他的論理和回路(441)とを有する副変換処理部(4
    21)とを備え、 上記非線形変換回路(431)は、入力した第1の系統
    のデータ(B)を任意の桁数で2つの第1と第2の分割
    データ(B1とB2)に分割する内部分割部(551)
    と、 鍵パラメータを任意の桁数で分割鍵パラメータに分割し
    て分割鍵パラメータを供給する鍵パラメータ供給部(1
    58)とを備え、 第1と第2の分割データ(B1とB2)を入力して、 第1の分割データ(B1)を分割鍵パラメータを用いて
    非線形変換処理する内部非線形変換回路(531〜53
    3)と、 第1と第2の分割データの排他的論理和を演算する排他
    的論理和回路(541〜543)とを有する内部副変換
    処理部(521〜523)とを少なくとも2つ、第1の
    内部副変換処理部(521)及び第2の内部副変換処理
    部(522)として備え、 第1の内部副変換処理部(521)から出力される第1
    と第2の分割データ(B1とB2)を第2の内部副変換
    処理部(522)の第2と第1の分割のデータ(B2と
    B1)として入力し、第1と第2の内部副変換処理部
    (521と522)の内部非線形変換回路(531と5
    32)の非線形変換処理を同時に実行することを特徴と
    するデータ変換装置。
JP2000377646A 1995-09-05 2000-12-12 データ変換装置及びデータ変換方法 Abandoned JP2001209303A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000377646A JP2001209303A (ja) 1995-09-05 2000-12-12 データ変換装置及びデータ変換方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP22768595 1995-09-05
JP1107396 1996-01-25
JP8-11073 1996-01-25
JP7-227685 1996-01-25
JP2000377646A JP2001209303A (ja) 1995-09-05 2000-12-12 データ変換装置及びデータ変換方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP36907298A Division JPH11242433A (ja) 1995-09-05 1998-12-25 デ―タ変換装置及びデ―タ変換方法

Publications (1)

Publication Number Publication Date
JP2001209303A true JP2001209303A (ja) 2001-08-03

Family

ID=27279249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000377646A Abandoned JP2001209303A (ja) 1995-09-05 2000-12-12 データ変換装置及びデータ変換方法

Country Status (1)

Country Link
JP (1) JP2001209303A (ja)

Similar Documents

Publication Publication Date Title
KR100250803B1 (ko) 데이타 변환장치 및 데이타 변환방법
JP4127472B2 (ja) データ変換装置及びデータ変換装置のデータ変換方法及びプログラム及びコンピュータ読み取り可能な記録媒体
KR100435052B1 (ko) 암호화장치
JP3499810B2 (ja) 暗号化装置、暗号化方法及び暗号化装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読取り可能な記録媒体並びに復号装置、復号方法及び復号装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読取り可能な記録媒体
JP3148181B2 (ja) ブロック暗号化方法,及び,ブロック暗号化装置
WO2003100751A1 (fr) Dispositif et procede de conversion de donnees
JP3180836B2 (ja) 暗号通信装置
JPH10240500A (ja) 乱数生成装置及び方法、暗号化装置及び方法、復号装置及び方法、並びにストリーム暗号システム
JPH11242433A (ja) デ―タ変換装置及びデ―タ変換方法
JP2002149058A (ja) データ変換装置
JP2001209303A (ja) データ変換装置及びデータ変換方法
JP2002049308A (ja) データ変換装置及びデータ変換方法
JP3035358B2 (ja) データ変換装置
JP2000075785A (ja) 高速暗号処理回路および処理方法
KR100434558B1 (ko) 고속블록암호화방법및이를위한키스케쥴링방법
CA2203380C (en) Data transformation apparatus and data transformation method
JP3901959B2 (ja) Feistel構造とSPN構造とを組み合わせた演算装置および演算方法
JP3748184B2 (ja) 秘話通信装置
RU2127024C1 (ru) Блок шифрования
JP2001042766A (ja) データ暗号化装置及びその方法
JPH06102821A (ja) 暗号装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040803

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20040929