JPH10153955A - 暗号装置 - Google Patents
暗号装置Info
- Publication number
- JPH10153955A JPH10153955A JP31353296A JP31353296A JPH10153955A JP H10153955 A JPH10153955 A JP H10153955A JP 31353296 A JP31353296 A JP 31353296A JP 31353296 A JP31353296 A JP 31353296A JP H10153955 A JPH10153955 A JP H10153955A
- Authority
- JP
- Japan
- Prior art keywords
- encryption
- information
- unit
- bits
- section
- 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
Links
Abstract
(57)【要約】
【課題】 暗号強度の強い暗号装置を提供する。
【解決手段】 所定数のビットからなるブロック状の平
文又は暗号文を、共通鍵から生成された所定の複数の中
間鍵を所定の複数段の暗号化処理部又は復号化処理部に
それぞれ投入して暗号化又は復号化する共通鍵ブロック
暗号方式の暗号装置において、前記暗号化処理部又は前
記復号化処理部の構造を所定の情報に基づいて変形する
変形手段を設ける。
文又は暗号文を、共通鍵から生成された所定の複数の中
間鍵を所定の複数段の暗号化処理部又は復号化処理部に
それぞれ投入して暗号化又は復号化する共通鍵ブロック
暗号方式の暗号装置において、前記暗号化処理部又は前
記復号化処理部の構造を所定の情報に基づいて変形する
変形手段を設ける。
Description
【0001】
【発明の属する技術分野】本発明は暗号装置に係り、特
に、共通鍵ブロック暗号方式において、高強度化を達成
することのできる暗号装置に関する。
に、共通鍵ブロック暗号方式において、高強度化を達成
することのできる暗号装置に関する。
【0002】
【従来の技術】従来、電子商取引・電子マネー等の商業
・金融分野、非接触定期券システムのような各種サービ
ス分野、インターネットにおける電子メール等の情報分
野などの通信においては、通信内容の秘匿や通信相手の
認証等に暗号が用いられている。
・金融分野、非接触定期券システムのような各種サービ
ス分野、インターネットにおける電子メール等の情報分
野などの通信においては、通信内容の秘匿や通信相手の
認証等に暗号が用いられている。
【0003】暗号方式としては、種々の方式が存在して
いるが、送信者と受信者とが共通鍵を共有し、その共通
鍵を用いて平文を暗号化し、さらに、その共通鍵を用い
て復号化して平文を復元するDES暗号や、FEAL暗
号に代表される共通鍵ブロック暗号方式が存在してい
る。
いるが、送信者と受信者とが共通鍵を共有し、その共通
鍵を用いて平文を暗号化し、さらに、その共通鍵を用い
て復号化して平文を復元するDES暗号や、FEAL暗
号に代表される共通鍵ブロック暗号方式が存在してい
る。
【0004】図11は、上記共通鍵ブロック暗号方式を
実施するための典型的な暗号装置の概略構成図である。
なお、この図において[ ]は、復号化工程を示してい
るが、最初に暗号化から説明する。
実施するための典型的な暗号装置の概略構成図である。
なお、この図において[ ]は、復号化工程を示してい
るが、最初に暗号化から説明する。
【0005】通信すべき所定の平文を所定のビット数
(例えば64ビット)にブロック化して形成された平文
ブロック1は、初期転置部2において所定の定められた
規則に従って、ビット位置が置換えられて新たな配置の
平文ブロックに生成される。
(例えば64ビット)にブロック化して形成された平文
ブロック1は、初期転置部2において所定の定められた
規則に従って、ビット位置が置換えられて新たな配置の
平文ブロックに生成される。
【0006】初期転置部2で生成された平文ブロック
は、左右に2分されて、すなわち、平文ブロックのビッ
ト数の半分のビット(上述の例では32ビット)に分割
されて右変換過程文R0 と左変換過程文L0 とに分けら
れ、これら過程文R0 ,L0 は、撹拌処理部3に入力さ
れるように構成されている。
は、左右に2分されて、すなわち、平文ブロックのビッ
ト数の半分のビット(上述の例では32ビット)に分割
されて右変換過程文R0 と左変換過程文L0 とに分けら
れ、これら過程文R0 ,L0 は、撹拌処理部3に入力さ
れるように構成されている。
【0007】撹拌処理部3は、複数段(例えば16段)
の撹拌処理部から構成され、すなわち、第1段撹拌処理
部31 から第n段撹拌処理部3n で構成されていて、各
段撹拌処理部31 〜3n には、暗号化関数部41 〜4n
及び排他的論理和部51 〜5n がそれぞれ設けられてい
る。
の撹拌処理部から構成され、すなわち、第1段撹拌処理
部31 から第n段撹拌処理部3n で構成されていて、各
段撹拌処理部31 〜3n には、暗号化関数部41 〜4n
及び排他的論理和部51 〜5n がそれぞれ設けられてい
る。
【0008】各暗号化関数部41 〜4n は、図12に示
される中間鍵生成部10から得られる定位置中間鍵(本
発明の中間鍵に該当している)K1 〜Kn を用いてそれ
ぞれ撹拌処理される。
される中間鍵生成部10から得られる定位置中間鍵(本
発明の中間鍵に該当している)K1 〜Kn を用いてそれ
ぞれ撹拌処理される。
【0009】この中間鍵生成部10は、所定のビット
(例えば56ビット)からなる共通鍵Kを鍵スケジュー
リング部10aで所定の処理を行って、所定のビット数
(例えば48ビット)からなる定位置中間鍵K1 〜Kn
を生成するように構成されている。
(例えば56ビット)からなる共通鍵Kを鍵スケジュー
リング部10aで所定の処理を行って、所定のビット数
(例えば48ビット)からなる定位置中間鍵K1 〜Kn
を生成するように構成されている。
【0010】各暗号化関数部41 〜4n のうち、任意の
段の暗号化関数部(以下、これを第i段暗号化関数部4
iとする。)を図13を用いて説明する。
段の暗号化関数部(以下、これを第i段暗号化関数部4
iとする。)を図13を用いて説明する。
【0011】第i段撹拌処理部3iの右変換過程文Ri-
1 は、線形変換部4Aで所定のビット数(例えば48ビ
ット)となるように線形処理された後、排他的論理和部
4Bにおいて、中間鍵生成部10から得られた第i段撹
拌処理部3i用の定位置中間鍵Ki との間で排他的論理
和処理が行われる。
1 は、線形変換部4Aで所定のビット数(例えば48ビ
ット)となるように線形処理された後、排他的論理和部
4Bにおいて、中間鍵生成部10から得られた第i段撹
拌処理部3i用の定位置中間鍵Ki との間で排他的論理
和処理が行われる。
【0012】この排他的論理和処理が行われた後、一定
数のビットのユニット毎に分割され(上述の例では、4
8ビットが6ビットずつの8個)、各々のユニットは対
応する非線形処理ボックス4C1 〜4Cm にそれぞれ入
力されて別の一定数のビット(例えば4ビットずつの8
個))に非線形処理される。そして、各非線形処理ボッ
クス4C1 〜4Cm で非線形処理されたデータは、線形
変換部4Dで線形処理されて暗号化関数出力文Bi が生
成される。なお、以後、非線形処理ボックス4C1 はS
1 、4C2 はS2 …のようにして説明する。
数のビットのユニット毎に分割され(上述の例では、4
8ビットが6ビットずつの8個)、各々のユニットは対
応する非線形処理ボックス4C1 〜4Cm にそれぞれ入
力されて別の一定数のビット(例えば4ビットずつの8
個))に非線形処理される。そして、各非線形処理ボッ
クス4C1 〜4Cm で非線形処理されたデータは、線形
変換部4Dで線形処理されて暗号化関数出力文Bi が生
成される。なお、以後、非線形処理ボックス4C1 はS
1 、4C2 はS2 …のようにして説明する。
【0013】生成された暗号化関数出力文Bi は、第i
段撹拌処理部3i の排他的論理和部5i で左変換過程文
Li-1 との間で排他的論理和がとられる。
段撹拌処理部3i の排他的論理和部5i で左変換過程文
Li-1 との間で排他的論理和がとられる。
【0014】上述の第i段撹拌処理部3i の処理と同様
の処理が第1段撹拌処理部31 から第n段撹拌処理部3
n まで行われ、最終段の第n段撹拌処理部3n からの右
変換過程文Rn と左変換過程文Ln は、上記初期転置部
2と逆の転置処理を行う逆初期転置部6で転置処理され
てブロック化された暗号文ブロック7が生成される。
の処理が第1段撹拌処理部31 から第n段撹拌処理部3
n まで行われ、最終段の第n段撹拌処理部3n からの右
変換過程文Rn と左変換過程文Ln は、上記初期転置部
2と逆の転置処理を行う逆初期転置部6で転置処理され
てブロック化された暗号文ブロック7が生成される。
【0015】受信者が受信した暗号文ブロック7は、上
述の暗号化と逆の手法で、すなわち、図11の[ ]で
示される工程と定位置中間鍵Kn 〜K1 を用いて平文ブ
ロックに復元される。したがって、図8の暗号化関数部
41 〜4n は、復号化の際、復号化関数部41 〜4n と
なる。
述の暗号化と逆の手法で、すなわち、図11の[ ]で
示される工程と定位置中間鍵Kn 〜K1 を用いて平文ブ
ロックに復元される。したがって、図8の暗号化関数部
41 〜4n は、復号化の際、復号化関数部41 〜4n と
なる。
【0016】
【発明が解決しようとする課題】しかしながら、上記従
来の共通鍵ブロック暗号方式の暗号装置は、暗号処理速
度が速い等の長所を有しているが、近年の計算機性能の
飛躍的向上及び暗号解読技術の進歩により、暗号強度が
相対的に低下してきているという問題点がある。
来の共通鍵ブロック暗号方式の暗号装置は、暗号処理速
度が速い等の長所を有しているが、近年の計算機性能の
飛躍的向上及び暗号解読技術の進歩により、暗号強度が
相対的に低下してきているという問題点がある。
【0017】このような問題点を解決するために、撹拌
処理部の段数を増加させたり、共通鍵のビット数を増加
させたり、あるいは、ブロック間の連鎖をとるという解
決手段も考えられるが、これらはいずれも処理時間の増
大を招来するという新たな問題を提起してしまう。
処理部の段数を増加させたり、共通鍵のビット数を増加
させたり、あるいは、ブロック間の連鎖をとるという解
決手段も考えられるが、これらはいずれも処理時間の増
大を招来するという新たな問題を提起してしまう。
【0018】また、上記従来の共通鍵ブロック方式の暗
号装置においては、上記図13に示されるように、各段
の暗号化関数部の構成が各段によって同一であるので、
選択平文攻撃等により解読されやすいという危険性を含
んでいる。
号装置においては、上記図13に示されるように、各段
の暗号化関数部の構成が各段によって同一であるので、
選択平文攻撃等により解読されやすいという危険性を含
んでいる。
【0019】そこで、本発明は、上記欠点を解決するた
めになされたものであって、その目的は、処理時間の増
大を招来することなく暗号強度を高めることのできる暗
号装置を提供することにある。
めになされたものであって、その目的は、処理時間の増
大を招来することなく暗号強度を高めることのできる暗
号装置を提供することにある。
【0020】
【課題を解決するための手段】本発明に係る暗号装置
は、上記目的を達成するために、所定数のビットからな
るブロック状の平文又は暗号文を、共通鍵から生成され
た所定の複数の中間鍵を所定の複数段の暗号化処理部又
は復号化処理部にそれぞれ投入して暗号化又は復号化す
る、共通鍵ブロック暗号方式の暗号装置において、前記
暗号化処理部又は前記復号化処理部の構造を所定の情報
に基づいて変形する変形手段を設けたことを特徴として
いる。前記変形手段は、前記共通鍵の情報に基づくもの
であることを特徴としている。前記変形手段は、前記生
成された中間鍵の情報に基づくものであることを特徴と
している。前記変形手段は、前記暗号化処理部又は復号
化処理部の右変換過程文の情報に基づくものであること
を特徴としている。前記変形手段は、前記共通鍵の情報
及び前記生成された中間鍵の情報に基づくものであるこ
とを特徴としている。前記変形手段は、前記共通鍵の情
報及び前記暗号化処理部又は復号化処理部の右変換過程
文の情報に基づくものであることを特徴としている。前
記変形手段は、前記生成された中間鍵の情報及び前記暗
号化処理部又は復号化処理部の右変換過程文の情報に基
づくものであることを特徴としている。前記変形手段
は、前記共通鍵の情報、前記生成された中間鍵の情報及
び前記暗号化処理部又は復号化処理部の右変換過程文の
情報に基づくものであることを特徴としている。
は、上記目的を達成するために、所定数のビットからな
るブロック状の平文又は暗号文を、共通鍵から生成され
た所定の複数の中間鍵を所定の複数段の暗号化処理部又
は復号化処理部にそれぞれ投入して暗号化又は復号化す
る、共通鍵ブロック暗号方式の暗号装置において、前記
暗号化処理部又は前記復号化処理部の構造を所定の情報
に基づいて変形する変形手段を設けたことを特徴として
いる。前記変形手段は、前記共通鍵の情報に基づくもの
であることを特徴としている。前記変形手段は、前記生
成された中間鍵の情報に基づくものであることを特徴と
している。前記変形手段は、前記暗号化処理部又は復号
化処理部の右変換過程文の情報に基づくものであること
を特徴としている。前記変形手段は、前記共通鍵の情報
及び前記生成された中間鍵の情報に基づくものであるこ
とを特徴としている。前記変形手段は、前記共通鍵の情
報及び前記暗号化処理部又は復号化処理部の右変換過程
文の情報に基づくものであることを特徴としている。前
記変形手段は、前記生成された中間鍵の情報及び前記暗
号化処理部又は復号化処理部の右変換過程文の情報に基
づくものであることを特徴としている。前記変形手段
は、前記共通鍵の情報、前記生成された中間鍵の情報及
び前記暗号化処理部又は復号化処理部の右変換過程文の
情報に基づくものであることを特徴としている。
【0021】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて説明する。図1は、一実施の形態に係る暗号
装置の概略構成図である。
に基づいて説明する。図1は、一実施の形態に係る暗号
装置の概略構成図である。
【0022】なお、上記従来の図11〜図13と同一構
成要素には同一符号を用い、これら構成要素については
説明が重複するため新規な部分のみについて異なる符号
を付して説明する。
成要素には同一符号を用い、これら構成要素については
説明が重複するため新規な部分のみについて異なる符号
を付して説明する。
【0023】図1中、20は変形部であって、暗号化関
数変形部20a及び暗号化関数変形情報演算部20bか
ら構成されている。暗号化関数変形部20aは、暗号化
関数変形情報演算部20bが共通鍵Kの情報を基に所定
の演算処理を行った結果に基づいて、各暗号化関数部4
1 〜4n の構造の内容を変形できるように構成されてい
る。
数変形部20a及び暗号化関数変形情報演算部20bか
ら構成されている。暗号化関数変形部20aは、暗号化
関数変形情報演算部20bが共通鍵Kの情報を基に所定
の演算処理を行った結果に基づいて、各暗号化関数部4
1 〜4n の構造の内容を変形できるように構成されてい
る。
【0024】変形部20の動作を説明する前に、本発明
の暗号化処理部41 〜4n の構造の変形の理解を容易に
するため、上記図13及び図2〜図4を用いて説明す
る。なお、説明を簡単にするために、図5以降の実施の
形態を含めて、一つの平文ブロックは64ビット(図1
中の( )内の数字はビット数をあらわしている。図6
〜図12も同じ。)、暗号文ブロックも64ビット、従
って、それらの右半分である右変換過程文Ri-1 (iは
i段目を表わす)は32ビット、左半分である左変換過
程文Li-1 (iはi段目を表わす)も32ビット、共通
鍵Kはパリティビットをのぞいて56ビット、定位置中
間鍵Ki (iはi番目を表わす)は48ビット、従っ
て、暗号化関数部41 〜4n へ投入するそれぞれの中間
鍵K1 〜Knも48ビット、各暗号化関数部41 〜4n
における線形変換部4Aの入力側は32ビットで、出力
側は48ビットに拡大転置、非線形処理ボックスS1 〜
Sm の数は8個、つまりm=8、各非線形処理ボックス
S1 〜Sm は6ビットを入力して非線形の関係にある4
ビットを出力するものであり、暗号化関数出力文Bi
(iはi段目を表わす)は32ビット、撹拌処理部3の
トータル段数nは16段とする。また、変形部20で
は、以下に説明する変形のうちいずれか1つ、あるいは
2つ以上を混在させて行われるが、この変形の種類は多
種あり、従って、本発明の変形の種類は、以下の説明に
限定されない。
の暗号化処理部41 〜4n の構造の変形の理解を容易に
するため、上記図13及び図2〜図4を用いて説明す
る。なお、説明を簡単にするために、図5以降の実施の
形態を含めて、一つの平文ブロックは64ビット(図1
中の( )内の数字はビット数をあらわしている。図6
〜図12も同じ。)、暗号文ブロックも64ビット、従
って、それらの右半分である右変換過程文Ri-1 (iは
i段目を表わす)は32ビット、左半分である左変換過
程文Li-1 (iはi段目を表わす)も32ビット、共通
鍵Kはパリティビットをのぞいて56ビット、定位置中
間鍵Ki (iはi番目を表わす)は48ビット、従っ
て、暗号化関数部41 〜4n へ投入するそれぞれの中間
鍵K1 〜Knも48ビット、各暗号化関数部41 〜4n
における線形変換部4Aの入力側は32ビットで、出力
側は48ビットに拡大転置、非線形処理ボックスS1 〜
Sm の数は8個、つまりm=8、各非線形処理ボックス
S1 〜Sm は6ビットを入力して非線形の関係にある4
ビットを出力するものであり、暗号化関数出力文Bi
(iはi段目を表わす)は32ビット、撹拌処理部3の
トータル段数nは16段とする。また、変形部20で
は、以下に説明する変形のうちいずれか1つ、あるいは
2つ以上を混在させて行われるが、この変形の種類は多
種あり、従って、本発明の変形の種類は、以下の説明に
限定されない。
【0025】各暗号化関数部41 〜4n の基本形は上記
図13に示される従来の構造(構成)をとるが、まず、
変形の第1の例について説明する。この第1の例は、図
2に示されるように、非線形処理ボックスS1 〜Sm を
選択するものである。
図13に示される従来の構造(構成)をとるが、まず、
変形の第1の例について説明する。この第1の例は、図
2に示されるように、非線形処理ボックスS1 〜Sm を
選択するものである。
【0026】この選択のアルゴリズムは、先ず、暗号化
関数変形情報演算部20bより渡された変形情報のうち
の1つであるG(このGについては後に詳述する)の2
4ビットを3ビットずつ8個に分割する。そして、1番
左の3ビットが1番目、1番右の3ビットが8番目の並
び順とする。次に、この各々3ビットで表わされる数値
に1を加算して新しい数値とする。さらに、新しい数値
で示される非線形処理ボックスを選択して各々該当番目
に置く。例えば、1番目の新しい数値がjとすると非線
形処理ボックスSj を1番目(図13において最も左
側)にもってくる。このようにして変形された暗号化関
数部が撹拌処理部3で使用される。
関数変形情報演算部20bより渡された変形情報のうち
の1つであるG(このGについては後に詳述する)の2
4ビットを3ビットずつ8個に分割する。そして、1番
左の3ビットが1番目、1番右の3ビットが8番目の並
び順とする。次に、この各々3ビットで表わされる数値
に1を加算して新しい数値とする。さらに、新しい数値
で示される非線形処理ボックスを選択して各々該当番目
に置く。例えば、1番目の新しい数値がjとすると非線
形処理ボックスSj を1番目(図13において最も左
側)にもってくる。このようにして変形された暗号化関
数部が撹拌処理部3で使用される。
【0027】変形の第2の例は、図3に示されるよう
に、非線形処理ボックスS1 〜Sm の並べ替えをするも
のである。先ず、図3(a)に示される並べ替えのアル
ゴリズムは、暗号化関数変形情報演算部20bより渡さ
れた変形情報のうちの1つであるi(このiについては
後に詳述する)に基づき、しかも、このiが奇数のとき
を示していて、非線形処理ボックスS1 〜Sm の位置
は、左側から(つまり1番目から)順に、Si mod 8+
1,S(i+2) mod 8+1,S(i+4) mod8+
1,S(i+6) mod 8+1,S(i+1) mod 8
+1,S(i+3) mod 8+1,S(i+5) mod
8+1,S(i+7) mod 8+1、の位置となる。こ
こで、i mod 8+1とは、iを8で割った剰余に1を
加算したものである。
に、非線形処理ボックスS1 〜Sm の並べ替えをするも
のである。先ず、図3(a)に示される並べ替えのアル
ゴリズムは、暗号化関数変形情報演算部20bより渡さ
れた変形情報のうちの1つであるi(このiについては
後に詳述する)に基づき、しかも、このiが奇数のとき
を示していて、非線形処理ボックスS1 〜Sm の位置
は、左側から(つまり1番目から)順に、Si mod 8+
1,S(i+2) mod 8+1,S(i+4) mod8+
1,S(i+6) mod 8+1,S(i+1) mod 8
+1,S(i+3) mod 8+1,S(i+5) mod
8+1,S(i+7) mod 8+1、の位置となる。こ
こで、i mod 8+1とは、iを8で割った剰余に1を
加算したものである。
【0028】図3(b)は、iが偶数のときを示してい
て、非線形処理ボックスS1 〜Smの位置は、左側から
(つまり1番目から)順に、Si mod 8+1,S(i+
4)mod 8+1,S(i+3) mod 8+1,S(i
+7) mod 8+1,S(i+2) mod 8+1,S
(i+5) mod 8+1,S(i+6) mod 8+1,
S(i+1) mod 8+1の位置となる。このようにし
て変形された暗号化関数部が撹拌処理部3で使用され
る。
て、非線形処理ボックスS1 〜Smの位置は、左側から
(つまり1番目から)順に、Si mod 8+1,S(i+
4)mod 8+1,S(i+3) mod 8+1,S(i
+7) mod 8+1,S(i+2) mod 8+1,S
(i+5) mod 8+1,S(i+6) mod 8+1,
S(i+1) mod 8+1の位置となる。このようにし
て変形された暗号化関数部が撹拌処理部3で使用され
る。
【0029】変形の第3の例は、非線形処理ボックスS
1 〜Sm の多重通過・ローテートを行うものである。こ
の多重通過・ローテートのアルゴリズムは、図4(a)
に示されるように、非線形処理ボックスS1 〜Sm の多
重通過の回数(カウンタT1で初期値0)の上限が予め
qと定められている。そして、今回、q=2とすると、
非線形処理ボックスでの処理を受けるとカウンタT2 が
インクリメントされ、T<qの場合には、拡大・ローテ
ート処理部4C′で拡大・ローテート処理がほどこさ
れ、再度、非線形処理ボックスでの処理を受ける。この
処理は、T≧qに達するまで繰り返される。
1 〜Sm の多重通過・ローテートを行うものである。こ
の多重通過・ローテートのアルゴリズムは、図4(a)
に示されるように、非線形処理ボックスS1 〜Sm の多
重通過の回数(カウンタT1で初期値0)の上限が予め
qと定められている。そして、今回、q=2とすると、
非線形処理ボックスでの処理を受けるとカウンタT2 が
インクリメントされ、T<qの場合には、拡大・ローテ
ート処理部4C′で拡大・ローテート処理がほどこさ
れ、再度、非線形処理ボックスでの処理を受ける。この
処理は、T≧qに達するまで繰り返される。
【0030】この拡大・ローテート処理部4C′の処理
は、図4(b)に示されるように、各々の非線形処理ボ
ックス4Cの出力4ビットのうち、上位(左側)2ビッ
トの奇数パリティをその上位に設け、下位(右側)2ビ
ットの偶数パリティをその下位に設け各々6ビットと
し、それを8個集めて48ビットとし、暗号化関数変形
情報演算部20bより渡された変形情報のうちの1つで
あるiに基づいてiビット右へローテートする。このよ
うにして変形された暗号化関数部が撹拌処理部3で使用
される。
は、図4(b)に示されるように、各々の非線形処理ボ
ックス4Cの出力4ビットのうち、上位(左側)2ビッ
トの奇数パリティをその上位に設け、下位(右側)2ビ
ットの偶数パリティをその下位に設け各々6ビットと
し、それを8個集めて48ビットとし、暗号化関数変形
情報演算部20bより渡された変形情報のうちの1つで
あるiに基づいてiビット右へローテートする。このよ
うにして変形された暗号化関数部が撹拌処理部3で使用
される。
【0031】さて、図1に基づいて変形部20の動作が
共通鍵Kを用いたときの例を説明すると、まず、暗号化
関数変形情報演算部20b内でトレースしている撹拌処
理部3の対応段情報X(任意のX段目をあらわす)と共
通鍵Kとのビット毎の排他的論理和をとり、これをZと
する。このZの下位24ビットをGとし、また、Zをト
ータルの段数n(16段)で割った剰余Yに1を加算し
たものiが算出される。つまり、 i=1+Y=1+(X XOR K) mod n となる。
共通鍵Kを用いたときの例を説明すると、まず、暗号化
関数変形情報演算部20b内でトレースしている撹拌処
理部3の対応段情報X(任意のX段目をあらわす)と共
通鍵Kとのビット毎の排他的論理和をとり、これをZと
する。このZの下位24ビットをGとし、また、Zをト
ータルの段数n(16段)で割った剰余Yに1を加算し
たものiが算出される。つまり、 i=1+Y=1+(X XOR K) mod n となる。
【0032】次に、このX、i及びGを暗号化関数変形
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K=00000000
00003A(16進表現)とし、1段目のX=000
00000000001(上位拡張,16進表現)のと
きを計算するとi=12、G=00003B(16進表
現)となる。
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K=00000000
00003A(16進表現)とし、1段目のX=000
00000000001(上位拡張,16進表現)のと
きを計算するとi=12、G=00003B(16進表
現)となる。
【0033】変形のタイプは、上述の非線形処理ボック
スを選択するもの、非線形処理ボックスの並べ替えをす
るもの、非線形処理ボックスの多重通過・ローテートを
するものなど種々使えるが、ここでは、非線形処理ボッ
クスS1 〜Sm を選択する変形を行ってみると、Gによ
り非線形処理ボックスS1 〜Sm の並びは、S1 ,S1
,S1 ,S1 ,S1 ,S1 ,S8 ,S4 となり、この
変形された暗号化関数部が第1段撹拌処理部31 に投入
されることとなる。以下、2段以降の撹拌処理部32 〜
3n へも同様に計算して変形し投入される。
スを選択するもの、非線形処理ボックスの並べ替えをす
るもの、非線形処理ボックスの多重通過・ローテートを
するものなど種々使えるが、ここでは、非線形処理ボッ
クスS1 〜Sm を選択する変形を行ってみると、Gによ
り非線形処理ボックスS1 〜Sm の並びは、S1 ,S1
,S1 ,S1 ,S1 ,S1 ,S8 ,S4 となり、この
変形された暗号化関数部が第1段撹拌処理部31 に投入
されることとなる。以下、2段以降の撹拌処理部32 〜
3n へも同様に計算して変形し投入される。
【0034】上述のように、各暗号化関数部41 〜4n
は固定化された形でなく、共通鍵Kの情報に基づいて変
形されるので、暗号強度を高めることができる。
は固定化された形でなく、共通鍵Kの情報に基づいて変
形されるので、暗号強度を高めることができる。
【0035】図5は、暗号化関数変形情報演算部20b
が定位置中間鍵(本発明の生成された中間鍵に該当)K
1 〜Kn の情報に基づいて暗号化関数変形部20aを操
作するようにしている。
が定位置中間鍵(本発明の生成された中間鍵に該当)K
1 〜Kn の情報に基づいて暗号化関数変形部20aを操
作するようにしている。
【0036】変形部20の動作の一例を説明すると、ま
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)と定位置中間鍵KX(X番目の定位置中間鍵をあ
らわし、49ビット以上はオール0とする)とのビット
毎の排他的論理和をとり、それをZとし、このZの下位
24ビットをGとする。また、このZをトータルの段数
nで割った剰余Yに1を加算したものiが算出される。
つまり、 i=1+Y=(X xor KX) mod n となる。
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)と定位置中間鍵KX(X番目の定位置中間鍵をあ
らわし、49ビット以上はオール0とする)とのビット
毎の排他的論理和をとり、それをZとし、このZの下位
24ビットをGとする。また、このZをトータルの段数
nで割った剰余Yに1を加算したものiが算出される。
つまり、 i=1+Y=(X xor KX) mod n となる。
【0037】次に、このX、i及びGを暗号化関数変形
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K1 =0000000
0000016(上位拡張,16進表現)とし、1段目
のX=00000000000001(上位拡張,16
進表現)のときを計算するとi=8、G=000017
(16進表現)となる。ここで、上述と同様に非線形処
理ボックスS1 〜Sm の並べ替えを行う変形を行ってみ
ると、その並びは、S1 ,S5 ,S4 ,S8 ,S3 ,S
6 ,S7 ,S2 となる。以下、2段以降も同様に計算し
て変形し投入することとなる。
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K1 =0000000
0000016(上位拡張,16進表現)とし、1段目
のX=00000000000001(上位拡張,16
進表現)のときを計算するとi=8、G=000017
(16進表現)となる。ここで、上述と同様に非線形処
理ボックスS1 〜Sm の並べ替えを行う変形を行ってみ
ると、その並びは、S1 ,S5 ,S4 ,S8 ,S3 ,S
6 ,S7 ,S2 となる。以下、2段以降も同様に計算し
て変形し投入することとなる。
【0038】上述のように、各暗号化関数部41 〜4n
は固定化された形で投入されることなく、定位置中間鍵
K1 〜Kn の情報に基づいて投入されるので、暗号強度
を高めることができる。
は固定化された形で投入されることなく、定位置中間鍵
K1 〜Kn の情報に基づいて投入されるので、暗号強度
を高めることができる。
【0039】図6は、暗号化関数変形情報演算部20b
が撹拌処理部3の右変換過程文R0〜Rn-1 の情報に基
づいて暗号化関数変形部20aを操作するようにしてい
る。
が撹拌処理部3の右変換過程文R0〜Rn-1 の情報に基
づいて暗号化関数変形部20aを操作するようにしてい
る。
【0040】変形部20の動作の一例を説明すると、ま
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、右変換過程文RX(X段目の暗号化関数
部へ入力されるもの)の下位から24ビットをGとし、
右変換過程文RXの下位から4ビットまではそのままで
5ビット以上をオール0とした数値rXに1を加算した
ものiが算出される。つまり、 i=rX+1 となる。
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、右変換過程文RX(X段目の暗号化関数
部へ入力されるもの)の下位から24ビットをGとし、
右変換過程文RXの下位から4ビットまではそのままで
5ビット以上をオール0とした数値rXに1を加算した
ものiが算出される。つまり、 i=rX+1 となる。
【0041】次に、このX、i及びGを暗号化関数変形
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、R0 =000001F
6(16進表現)とし、1段目のときを計算するとi=
7、G=0001F6(16進表現)となる。
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、R0 =000001F
6(16進表現)とし、1段目のときを計算するとi=
7、G=0001F6(16進表現)となる。
【0042】ここで、非線形処理ボックスS1 〜Sm の
多重通過・ローテートの変形を行ってみる。先ず、1回
目の非線形処理ボックスでの処理を受けると、各非線形
処理ボックスS1 〜Sm の出力4ビットのうち、上位
(左側)2ビットの奇数パリティをその上位に設け、下
位(右側)2ビットの偶数パリティをその下位に設け各
々6ビットとし、それを8個集めて48ビットとし、暗
号化関数変形情報演算部20bより渡された変形情報の
うちの1つであるiに基づいてi=7ビット右ローテー
トされる。そして、q=2であるため、さらにもう一度
非線形処理ボックスでの処理を受ける。この変形された
暗号化関数部が第1段撹拌処理部31 に投入される。以
下、2段以降も同様に計算して変形し投入される。
多重通過・ローテートの変形を行ってみる。先ず、1回
目の非線形処理ボックスでの処理を受けると、各非線形
処理ボックスS1 〜Sm の出力4ビットのうち、上位
(左側)2ビットの奇数パリティをその上位に設け、下
位(右側)2ビットの偶数パリティをその下位に設け各
々6ビットとし、それを8個集めて48ビットとし、暗
号化関数変形情報演算部20bより渡された変形情報の
うちの1つであるiに基づいてi=7ビット右ローテー
トされる。そして、q=2であるため、さらにもう一度
非線形処理ボックスでの処理を受ける。この変形された
暗号化関数部が第1段撹拌処理部31 に投入される。以
下、2段以降も同様に計算して変形し投入される。
【0043】上述のように、各暗号化関数部41 〜4n
は固定化された形でなく、右変換過程文R0 〜Rn-1 の
情報に基づいて変形されるので、暗号強度を高めること
ができる。
は固定化された形でなく、右変換過程文R0 〜Rn-1 の
情報に基づいて変形されるので、暗号強度を高めること
ができる。
【0044】図7は、暗号化関数変形情報演算部20b
が共通鍵K及び定位置中間鍵K1 〜Kn の情報に基づい
て暗号化関数変形部20aを操作するようにしている。
が共通鍵K及び定位置中間鍵K1 〜Kn の情報に基づい
て暗号化関数変形部20aを操作するようにしている。
【0045】変形部20の動作の一例を説明すると、ま
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応情報X(任意のX段目をあらわ
す)に対し、共通鍵Kと定位置中間鍵KX(X番目の定
位置中間鍵をあらわし、49ビット以上はオール0とす
る)とのビット毎の排他的論理和をとり、それをZと
し、このZの下位24ビットをGとする。また、このZ
をトータルの段数nで割った剰余Yに1を加算したもの
iが算出される。つまり、 i=1+Y=1+(K xor KX) mod n となる。
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応情報X(任意のX段目をあらわ
す)に対し、共通鍵Kと定位置中間鍵KX(X番目の定
位置中間鍵をあらわし、49ビット以上はオール0とす
る)とのビット毎の排他的論理和をとり、それをZと
し、このZの下位24ビットをGとする。また、このZ
をトータルの段数nで割った剰余Yに1を加算したもの
iが算出される。つまり、 i=1+Y=1+(K xor KX) mod n となる。
【0046】次に、このX、i及びGを暗号化関数変形
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K=00000000
00003A(16進表現)、K1 =00000000
000016(上位拡張,16進表現)とすると、1段
目のときを計算するとi=13となり、G=00002
C(16進表現)となる。
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K=00000000
00003A(16進表現)、K1 =00000000
000016(上位拡張,16進表現)とすると、1段
目のときを計算するとi=13となり、G=00002
C(16進表現)となる。
【0047】ここで、非線形処理ボックスS1 〜Sm を
選択する変形を行ってみると、Gにより非線形処理ボッ
クスS1 〜Sm の並びは、S1 ,S1 ,S1 ,S1 ,S
1 ,S1 ,S6 ,S5 となり、この変形された暗号化関
数部が第1段撹拌処理部31に投入される。以下、2段
以降も同様に計算して変形し投入される。
選択する変形を行ってみると、Gにより非線形処理ボッ
クスS1 〜Sm の並びは、S1 ,S1 ,S1 ,S1 ,S
1 ,S1 ,S6 ,S5 となり、この変形された暗号化関
数部が第1段撹拌処理部31に投入される。以下、2段
以降も同様に計算して変形し投入される。
【0048】上述のように、各暗号化関数部41 〜4n
は固定化された形で投入されることなく、共通鍵K及び
定位置中間鍵K1 〜Kn の情報に基づいて変形されるの
で、暗号強度を高めることができる。
は固定化された形で投入されることなく、共通鍵K及び
定位置中間鍵K1 〜Kn の情報に基づいて変形されるの
で、暗号強度を高めることができる。
【0049】図8は、暗号化関数変形情報演算部20b
が共通鍵K及び右変換過程文R0 〜Rn-1 の情報に基づ
いて暗号化関数変形部20aを操作するようにしてい
る。
が共通鍵K及び右変換過程文R0 〜Rn-1 の情報に基づ
いて暗号化関数変形部20aを操作するようにしてい
る。
【0050】変形部20の動作の一例を説明すると、ま
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、共通鍵Kと、右変換過程文RX(X段目
の暗号化関数部に入力されるもの)の33ビット以上を
オール0にして56ビットまで拡張したものRRXとの
ビット毎の排他的論理和をとり、それをZとし、このZ
の下位24ビットをGとする。また、Zをトータルの段
数nで割った剰余Yに1を加算したものiが算出され
る。つまり、 i=1+Y=1+(K xor RRX) mod n となる。
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、共通鍵Kと、右変換過程文RX(X段目
の暗号化関数部に入力されるもの)の33ビット以上を
オール0にして56ビットまで拡張したものRRXとの
ビット毎の排他的論理和をとり、それをZとし、このZ
の下位24ビットをGとする。また、Zをトータルの段
数nで割った剰余Yに1を加算したものiが算出され
る。つまり、 i=1+Y=1+(K xor RRX) mod n となる。
【0051】次に、このX、i及びGを暗号化関数変形
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K=00000000
00003A(16進表現)、RR0 =0000000
00001F6(上位拡張,16進表現)とすると、1
段目のときを計算するとi=13、G=0001CC
(16進表現)となる。
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K=00000000
00003A(16進表現)、RR0 =0000000
00001F6(上位拡張,16進表現)とすると、1
段目のときを計算するとi=13、G=0001CC
(16進表現)となる。
【0052】ここで、非線形処理ボックスS1 〜Sm の
並べ替えをする変形を行ってみると、iにより非線形処
理ボックスS1 〜Sm の並びは、S6 ,S8 ,S2 ,S
4 ,S7 ,S1 ,S3 ,S5 となり、この変形された暗
号化関数部が第1段撹拌処理部31 に投入される。以
下、2段以降も同様に計算して変形し投入される。
並べ替えをする変形を行ってみると、iにより非線形処
理ボックスS1 〜Sm の並びは、S6 ,S8 ,S2 ,S
4 ,S7 ,S1 ,S3 ,S5 となり、この変形された暗
号化関数部が第1段撹拌処理部31 に投入される。以
下、2段以降も同様に計算して変形し投入される。
【0053】上述のように、各暗号化関数部41 〜4n
は固定化された形でなく、共通鍵K及び右変換過程文R
0 〜Rn-1 の情報に基づいて変形されるので、暗号強度
を高めることができる。
は固定化された形でなく、共通鍵K及び右変換過程文R
0 〜Rn-1 の情報に基づいて変形されるので、暗号強度
を高めることができる。
【0054】図9は、暗号化関数変形情報演算部20b
が定位置中間鍵K1 〜Kn 及び右変換過程文R0 〜Rn-
1 の情報に基づいて暗号化関数変形部20aを操作する
ようにしている。
が定位置中間鍵K1 〜Kn 及び右変換過程文R0 〜Rn-
1 の情報に基づいて暗号化関数変形部20aを操作する
ようにしている。
【0055】変形部20の動作の一例を説明すると、ま
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、定位置中間鍵KX(X番目の定位置中間
鍵をあらわし、49ビット以上はオール0とする)と、
右変換過程文RX(X段目の暗号化関数部に入力される
もの)の33ビット以上をオール0にして56ビットま
で拡張したものRRXとのビット毎の排他的論理和をと
り、それをZとし、このZの下位24ビットをGとす
る。また、このZをトータルの段数nで割った剰余Yに
1を加算したものiが算出される。つまり、 i=1+Y=1+(KX xor RRX) mod n となる。
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、定位置中間鍵KX(X番目の定位置中間
鍵をあらわし、49ビット以上はオール0とする)と、
右変換過程文RX(X段目の暗号化関数部に入力される
もの)の33ビット以上をオール0にして56ビットま
で拡張したものRRXとのビット毎の排他的論理和をと
り、それをZとし、このZの下位24ビットをGとす
る。また、このZをトータルの段数nで割った剰余Yに
1を加算したものiが算出される。つまり、 i=1+Y=1+(KX xor RRX) mod n となる。
【0056】次に、このX、i及びGを暗号化関数変形
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K1 =0000000
0000016(上位拡張,16進表現)、RR0 =0
00000000001F6(上位拡張,16進表現)
とすると、1段目のときを計算するとi=1、G=00
01E0(16進表現)となる。
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数部を変形して第X段撹拌処理部3Xへ投入す
る。具体的な数値例では、いま、K1 =0000000
0000016(上位拡張,16進表現)、RR0 =0
00000000001F6(上位拡張,16進表現)
とすると、1段目のときを計算するとi=1、G=00
01E0(16進表現)となる。
【0057】ここで、非線形処理ボックスS1 〜Sm を
選択する変形を行ってみると、Gにより非線形処理ボッ
クスS1 〜Sm の並びは、S1 ,S1 ,S1 ,S1 ,S
1 ,S8 ,S5 ,S1 となり、この変形された暗号化関
数部が第1段撹拌処理部31に投入される。以下、2段
以降も同様に計算して変形し投入される。
選択する変形を行ってみると、Gにより非線形処理ボッ
クスS1 〜Sm の並びは、S1 ,S1 ,S1 ,S1 ,S
1 ,S8 ,S5 ,S1 となり、この変形された暗号化関
数部が第1段撹拌処理部31に投入される。以下、2段
以降も同様に計算して変形し投入される。
【0058】上述のように、各暗号化関数部41 〜4n
は固定化された形でなく、定位置中間鍵K1 〜Kn 及び
右変換過程文R0 〜Rn-1 の情報に基づいて変形される
ので、暗号強度を高めることができる。
は固定化された形でなく、定位置中間鍵K1 〜Kn 及び
右変換過程文R0 〜Rn-1 の情報に基づいて変形される
ので、暗号強度を高めることができる。
【0059】図10は、暗号化関数変形情報演算部20
bが共通鍵K、定位置中間鍵K1 〜Kn 及び右変換過程
文R0 〜Rn-1 の情報に基づいて暗号化関数変形部20
aを操作するようにしている。
bが共通鍵K、定位置中間鍵K1 〜Kn 及び右変換過程
文R0 〜Rn-1 の情報に基づいて暗号化関数変形部20
aを操作するようにしている。
【0060】変形部20の動作の一例を説明すると、ま
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、共通鍵Kと、定位置中間鍵KX(X番目
の定位置中間鍵をあらわし、49ビット以上はオール0
とする)と、右変換過程文RX(X晩目の暗号化関数部
に入力されるもの)の33ビット以上をオール0にして
56ビットまで拡張したものRRXとのビット毎の排他
的論理和をとり、それをZとし、Zの下位24ビットを
Gとする。また、このZをトータルの段数nで割った剰
余Yに1を加算したものiが算出される。つまり、 i=1+Y=1+(K xor KX xor RRX) mod
n となる。
ず、暗号化関数変形情報演算部20b内でトレースして
いる撹拌処理部3の対応段情報X(任意のX段目をあら
わす)に対し、共通鍵Kと、定位置中間鍵KX(X番目
の定位置中間鍵をあらわし、49ビット以上はオール0
とする)と、右変換過程文RX(X晩目の暗号化関数部
に入力されるもの)の33ビット以上をオール0にして
56ビットまで拡張したものRRXとのビット毎の排他
的論理和をとり、それをZとし、Zの下位24ビットを
Gとする。また、このZをトータルの段数nで割った剰
余Yに1を加算したものiが算出される。つまり、 i=1+Y=1+(K xor KX xor RRX) mod
n となる。
【0061】次に、このX、i及びGを暗号化関数変形
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数を変形して第X段撹拌処理部3Xへ投入する。
具体的な数値例では、いま、K=0000000000
003A(16進表現)、K1 =0000000000
0016(上位拡張,16進表現)、RR0 =0000
00000001F6(上位拡張,16進表現)とする
と、1段目のときを計算するとi=11、G=0001
DAとなる。
部20aに渡し、この暗号化関数変形部20aでは、暗
号化関数を変形して第X段撹拌処理部3Xへ投入する。
具体的な数値例では、いま、K=0000000000
003A(16進表現)、K1 =0000000000
0016(上位拡張,16進表現)、RR0 =0000
00000001F6(上位拡張,16進表現)とする
と、1段目のときを計算するとi=11、G=0001
DAとなる。
【0062】ここで、非線形処理ボックスS1 〜Sm の
並べ替えをする変形を行ってみると、iにより非線形処
理ボックスS1 〜Sm の並びは、S4 ,S6 ,S8 ,S
2 ,S5 ,S7 ,S1 ,S3 となり、この変形された暗
号化関数部が第1段撹拌処理部31 に投入される。以
下、2段以降も同様に計算して変形し投入される。
並べ替えをする変形を行ってみると、iにより非線形処
理ボックスS1 〜Sm の並びは、S4 ,S6 ,S8 ,S
2 ,S5 ,S7 ,S1 ,S3 となり、この変形された暗
号化関数部が第1段撹拌処理部31 に投入される。以
下、2段以降も同様に計算して変形し投入される。
【0063】上述のように、各暗号化関数部41 〜4n
は固定化された形でなく、共通鍵K、定位置中間鍵K1
〜Kn 及び右変換過程文R0 〜Rn-1 の情報に基づいて
変形されるので、暗号強度を高めることができる。
は固定化された形でなく、共通鍵K、定位置中間鍵K1
〜Kn 及び右変換過程文R0 〜Rn-1 の情報に基づいて
変形されるので、暗号強度を高めることができる。
【0064】復号化に関しては、上記図1及び図5〜図
10のすべての例において、従来と同様に鍵の投入順序
を逆にして行われるので、鍵スケジューリング部10a
での定位置中間鍵K1 〜Kn の生成順序をK1 ,K2 ,
…,Kn の順ではなく、逆のKn ,…,K2 ,K1 の順
で生成される。つまり、1番目の定位置にはKn が、2
番目の定位置にはKn-1 が、n番目の定位置にはK1 が
きて新たなK1 ,K2,…,Kn となる。また、上記図
1及び図5の実施の形態のみ、iの算出においてXの代
わりにn−X+1が代入される。そして、上記全ての実
施の形態において、復号化で用いられる各段の復号化関
数部は、暗号化時と同じ順に変型されて投入される。
10のすべての例において、従来と同様に鍵の投入順序
を逆にして行われるので、鍵スケジューリング部10a
での定位置中間鍵K1 〜Kn の生成順序をK1 ,K2 ,
…,Kn の順ではなく、逆のKn ,…,K2 ,K1 の順
で生成される。つまり、1番目の定位置にはKn が、2
番目の定位置にはKn-1 が、n番目の定位置にはK1 が
きて新たなK1 ,K2,…,Kn となる。また、上記図
1及び図5の実施の形態のみ、iの算出においてXの代
わりにn−X+1が代入される。そして、上記全ての実
施の形態において、復号化で用いられる各段の復号化関
数部は、暗号化時と同じ順に変型されて投入される。
【0065】
【発明の効果】本発明に係る暗号装置は、暗号化処理部
又は復号化処理部の構造を所定の情報に基づいて変形す
る変形手段を設けたので、暗号強度を強めることができ
る。変形手段を共通鍵の情報に基づくものとしたとき
は、暗号強度を強めることができる。変形手段を生成さ
れた中間鍵の情報に基づくものとしたときは、暗号強度
を強めることができる。変形手段を暗号化処理部又は復
号化処理部の右変換過程文の情報に基づくものとしたと
きは、暗号強度を強めることができる。変形手段を共通
鍵の情報及び生成された中間鍵の情報に基づくものとし
たときは、暗号強度を強めることができる。変形手段を
共通鍵の情報及び暗号化処理部又は復号化処理部の右変
換過程文の情報に基づくものとしたときは、暗号強度を
強めることができる。変形手段を生成された中間鍵の情
報及び暗号化処理部又は復号化処理部の右変換過程文の
情報に基づくものとしたときは、暗号強度を強めること
ができる。変形手段を共通鍵の情報、生成された中間鍵
の情報及び暗号化処理部又は復号化処理部の右変換過程
文の情報に基づくものとしたときは、暗号強度を強める
ことができる。
又は復号化処理部の構造を所定の情報に基づいて変形す
る変形手段を設けたので、暗号強度を強めることができ
る。変形手段を共通鍵の情報に基づくものとしたとき
は、暗号強度を強めることができる。変形手段を生成さ
れた中間鍵の情報に基づくものとしたときは、暗号強度
を強めることができる。変形手段を暗号化処理部又は復
号化処理部の右変換過程文の情報に基づくものとしたと
きは、暗号強度を強めることができる。変形手段を共通
鍵の情報及び生成された中間鍵の情報に基づくものとし
たときは、暗号強度を強めることができる。変形手段を
共通鍵の情報及び暗号化処理部又は復号化処理部の右変
換過程文の情報に基づくものとしたときは、暗号強度を
強めることができる。変形手段を生成された中間鍵の情
報及び暗号化処理部又は復号化処理部の右変換過程文の
情報に基づくものとしたときは、暗号強度を強めること
ができる。変形手段を共通鍵の情報、生成された中間鍵
の情報及び暗号化処理部又は復号化処理部の右変換過程
文の情報に基づくものとしたときは、暗号強度を強める
ことができる。
【図1】本発明の一実施の形態に係る暗号装置の概略構
成図である。
成図である。
【図2】非線形処理ボックスの選択アルゴリズムであ
る。
る。
【図3】非線形処理ボックスの並べ替えのアルゴリズム
である。
である。
【図4】(a)は非線形処理ボックスの多重通過・ロー
テートのアルゴリズム、及び(b)は拡大・ローテート
処理のアルゴリズムである。
テートのアルゴリズム、及び(b)は拡大・ローテート
処理のアルゴリズムである。
【図5】本発明の他の実施の形態に係る暗号装置の概略
構成図である。
構成図である。
【図6】本発明の他の実施の形態に係る暗号装置の概略
構成図である。
構成図である。
【図7】本発明の他の実施の形態に係る暗号装置の概略
構成図である。
構成図である。
【図8】本発明の他の実施の形態に係る暗号装置の概略
構成図である。
構成図である。
【図9】本発明の他の実施の形態に係る暗号装置の概略
構成図である。
構成図である。
【図10】本発明の他の実施の形態に係る暗号装置の概
略構成図である。
略構成図である。
【図11】従来の暗号装置の概略構成図である。
【図12】中間鍵生成部の詳細図である。
【図13】暗号化関数部の詳細図である。
1 平文(暗号文)ブロック 2 初期転置部 3 本発明の暗号化処理部及び復号化処理部に当たる撹
拌処理部 41 〜4n 暗号化関数部(復号化のときは復号化関数
部に当たる) 4A,4D 線形変換部 4B 排他的演算和部 4C1 〜4Cm (S1 〜Sm ) 非線形処理ボックス 51 〜5n 排他的論理和部 6 逆初期転置部 7 暗号分(平文)ブロック 10 中間鍵生成部 10a 鍵スケジューリング部 20 変形部 20a 暗号化関数変形部 20b 暗号化関数変形情報演算部 R0 〜Rn 右変換過程文 L0 〜Ln 左変換過程文 K 共通鍵 K1 〜Kn 定位置中間鍵(中間鍵)
拌処理部 41 〜4n 暗号化関数部(復号化のときは復号化関数
部に当たる) 4A,4D 線形変換部 4B 排他的演算和部 4C1 〜4Cm (S1 〜Sm ) 非線形処理ボックス 51 〜5n 排他的論理和部 6 逆初期転置部 7 暗号分(平文)ブロック 10 中間鍵生成部 10a 鍵スケジューリング部 20 変形部 20a 暗号化関数変形部 20b 暗号化関数変形情報演算部 R0 〜Rn 右変換過程文 L0 〜Ln 左変換過程文 K 共通鍵 K1 〜Kn 定位置中間鍵(中間鍵)
Claims (8)
- 【請求項1】 所定数のビットからなるブロック状の平
文又は暗号文を、共通鍵から生成された所定の複数の中
間鍵を所定の複数段の暗号化処理部又は復号化処理部に
それぞれ投入して暗号化又は復号化する、共通鍵ブロッ
ク暗号方式の暗号装置において、 前記暗号化処理部又は前記復号化処理部の構造を所定の
情報に基づいて変形する変形手段を設けたことを特徴と
する暗号装置。 - 【請求項2】 変形手段は、共通鍵の情報に基づくもの
であることを特徴とする請求項1記載の暗号装置。 - 【請求項3】 変形手段は、生成された中間鍵の情報に
基づくものであることを特徴とする請求項1記載の暗号
装置。 - 【請求項4】 変形手段は、暗号化処理部又は復号化処
理部の右変換過程文の情報に基づくものであることを特
徴とする請求項1記載の暗号装置。 - 【請求項5】 変形手段は、共通鍵の情報及び生成され
た中間鍵の情報に基づくものであることを特徴とする請
求項1記載の暗号装置。 - 【請求項6】 変形手段は、共通鍵の情報及び暗号化処
理部又は復号化処理部の右変換過程文の情報に基づくも
のであることを特徴とする請求項1記載の暗号装置。 - 【請求項7】 変形手段は、生成された中間鍵の情報及
び暗号化処理部又は復号化処理部の右変換過程文の情報
に基づくものであることを特徴とする請求項1記載の暗
号装置。 - 【請求項8】 変形手段は、共通鍵の情報、生成された
中間鍵の情報及び暗号化処理部又は復号化処理部の右変
換過程文の情報に基づくものであることを特徴とする請
求項1記載の暗号装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP31353296A JPH10153955A (ja) | 1996-11-25 | 1996-11-25 | 暗号装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP31353296A JPH10153955A (ja) | 1996-11-25 | 1996-11-25 | 暗号装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH10153955A true JPH10153955A (ja) | 1998-06-09 |
Family
ID=18042457
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP31353296A Pending JPH10153955A (ja) | 1996-11-25 | 1996-11-25 | 暗号装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH10153955A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002525725A (ja) * | 1998-09-11 | 2002-08-13 | ギーゼッケ ウント デフリエント ゲーエムベーハー | アクセス保護型データ記憶媒体 |
| JP2010072664A (ja) * | 1999-02-04 | 2010-04-02 | Cp8 Technologies | 物理的解析によってコンピュータシステムを攻撃から保護する秘密鍵暗号化方法 |
| JP4828082B2 (ja) * | 2000-07-04 | 2011-11-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 対称キー暗号用の置換ボックス |
-
1996
- 1996-11-25 JP JP31353296A patent/JPH10153955A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002525725A (ja) * | 1998-09-11 | 2002-08-13 | ギーゼッケ ウント デフリエント ゲーエムベーハー | アクセス保護型データ記憶媒体 |
| JP2010072664A (ja) * | 1999-02-04 | 2010-04-02 | Cp8 Technologies | 物理的解析によってコンピュータシステムを攻撃から保護する秘密鍵暗号化方法 |
| JP4828082B2 (ja) * | 2000-07-04 | 2011-11-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 対称キー暗号用の置換ボックス |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2760799B2 (ja) | 暗号方式 | |
| US7079651B2 (en) | Cryptographic method and apparatus for non-linearly merging a data block and a key | |
| JP3225440B2 (ja) | デジタル信号ブロックの変換装置およびその使用方法 | |
| CA2373432C (en) | Block cipher apparatus using auxiliary transformation | |
| JP3148181B2 (ja) | ブロック暗号化方法,及び,ブロック暗号化装置 | |
| EP0725511A2 (en) | Method for data encryption/decryption using cipher block chaining (CBC) and message authetication codes (MAC) | |
| US7212633B2 (en) | Expansion key generating device, encryption device and encryption system | |
| JPH0697930A (ja) | ブロック暗号処理装置 | |
| JP4515716B2 (ja) | 拡大鍵生成装置、暗号化装置および暗号化システム | |
| JPH10153954A (ja) | 暗号装置 | |
| JP2000075785A (ja) | 高速暗号処理回路および処理方法 | |
| JP2870532B2 (ja) | 暗号変換装置 | |
| WO1999000783A1 (en) | Ciphering apparatus | |
| JPH09251267A (ja) | 暗号化装置及び暗号化方法 | |
| JP2000089666A (ja) | 暗号化/復号化装置 | |
| JPH10153953A (ja) | 暗号装置 | |
| KR100262384B1 (ko) | 암호화 방법 및 장치(Encryption Method and Apparatus) | |
| JP3371981B2 (ja) | ブロック暗号作成装置 | |
| JP2000039840A (ja) | 暗号装置 | |
| JP2929606B2 (ja) | 通信システム | |
| JPH0385835A (ja) | 巡回符号理論を用いた暗号化方式 | |
| JPH1031419A (ja) | 暗号化/復号化装置 | |
| JPH0496086A (ja) | 暗号装置及び復号装置 | |
| JPH0244390A (ja) | 暗号化処理方法およびその方法を用いたicカード装置 | |
| JPS62244088A (ja) | 暗号装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040914 |