JP5665588B2 - アルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラム - Google Patents

アルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラム Download PDF

Info

Publication number
JP5665588B2
JP5665588B2 JP2011030553A JP2011030553A JP5665588B2 JP 5665588 B2 JP5665588 B2 JP 5665588B2 JP 2011030553 A JP2011030553 A JP 2011030553A JP 2011030553 A JP2011030553 A JP 2011030553A JP 5665588 B2 JP5665588 B2 JP 5665588B2
Authority
JP
Japan
Prior art keywords
algorithm
function
exclusive
cyclic shift
algorithm variable
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.)
Active
Application number
JP2011030553A
Other languages
English (en)
Other versions
JP2012169964A (ja
Inventor
清本 晋作
晋作 清本
和英 福島
和英 福島
三宅 優
優 三宅
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2011030553A priority Critical patent/JP5665588B2/ja
Publication of JP2012169964A publication Critical patent/JP2012169964A/ja
Application granted granted Critical
Publication of JP5665588B2 publication Critical patent/JP5665588B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、一定の安全性と処理性能を保証するアルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラムに関する。
近年、インターネットの目覚しい普及により、コンピュータを利用した様々なサービスが提供されている。こうして提供されるサービスの多くは、その通信内容を秘匿化するために暗号が利用されている。ここで、暗号方式としては、1つの鍵で暗号化と復号化とを行う共通鍵暗号方式が一般的であるが、この共通鍵暗号方式は、大きくブロック暗号方式とストリーム暗号方式とに大別される。
ストリーム暗号方式の一例としては、乱数系列のビットデータを入力し、変換されたビットデータを複数の内部メモリから出力する非線形関数器であって、入力した乱数系列のビットデータと複数の内部メモリのうち一部の内部メモリデータとを加算する加算器と、入力データを非線形置換する非線形置換器と、を備え、複数の内部メモリが少なくとも非線形置換器を介して、環状に接続されるストリーム暗号装置が提案されている(例えば、特許文献1参照。)。
特開2006−327982号公報
また、近年、アルゴリズム公開型の暗号アルゴリズムが主流となっているが、安全性を考慮して、アルゴリズムを秘匿にする方式もある。しかしながら、アルゴリズム秘匿型の方式においては、リバースエンジニアリングを考慮した場合、アルゴリズムを固定とせず、鍵によりアルゴリズムを変更するアルゴリズム可変型暗号にしたいという要求がある。
そこで、本発明は、上述の課題に鑑みてなされたものであり、一定の安全性と処理性能を保証しつつ、鍵によりアルゴリズムを可変するアルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラムを提供することを目的とする。
本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
(1)本発明は、所定の処理を複数回実行するラウンド関数から構成されるアルゴリズム可変型暗号装置であって、前記ラウンド関数が、入力される鍵ビット情報に応じて、アルゴリズムが可変する部分と常に固定の部分とから構成されることを特徴とするアルゴリズム可変型暗号装置を提案している。
この発明によれば、ラウンド関数が、入力される鍵ビット情報に応じて、アルゴリズムが可変する部分と常に固定の部分とから構成される。したがって、鍵ビット情報によりアルゴリズムの特定部分を可変できることから、一定の安全性と処理性能を保証することができる。
(2)本発明は、(1)のアルゴリズム可変型暗号装置について、前記ラウンド関数が、入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える第1の巡回シフト手段(例えば、図1の巡回シフト部110a、110bに相当)と、前記第1の巡回シフト手段に接続される排他的論理和演算手段(例えば、図1の排他的論理和演算器120a、120bに相当)において演算の実行の有無を鍵ビット情報に応じて決定する演算決定手段(例えば、図1の演算決定部130a、130bに相当)と、前記排他的論理和演算手段の演算結果に対して非線形処理を行う非線形関数器(例えば、図1の非線形関数器140a、140bに相当)と、からなり、前記第1の巡回シフト手段、演算決定手段、非線形関数器の処理を所定回数実行することを特徴とするアルゴリズム可変型暗号装置を提案している。
この発明によれば、ラウンド関数の第1の巡回シフト手段は、入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える。演算決定手段は、第1の巡回シフト手段に接続される排他的論理和演算手段において演算の実行の有無を鍵ビット情報に応じて決定する。非線形関数器は、排他的論理和演算手段の演算結果に対して非線形処理を行う。そして、第1の巡回シフト手段、演算決定手段、非線形関数器の処理を所定回数実行する。つまり、アルゴリズムの可変部分は、安全性と性能に影響を与えない第1の巡回シフト手段と演算決定手段とで構成されるため、上記の方式でアルゴリズムを可変しても、安全性や性能を一定のレベルに保つことができる。
(3)本発明は、(2)のアルゴリズム可変型暗号装置について、前記演算決定手段(例えば、図1の演算決定部130a、130bに相当)が、「1」あるいは「0」からなる1ビットの鍵ビット情報により、前記排他的論理和演算手段における演算の実行を決定することを特徴とするアルゴリズム可変型暗号装置を提案している。
この発明によれば、演算決定手段が、「1」あるいは「0」からなる1ビットの鍵ビット情報により、排他的論理和演算手段における演算の実行を決定する。具体的には、鍵ビット情報が「1」の時には、入力データに「1」をかけて出力し、鍵ビット情報が「0」の時には、入力データに「0」をかけて出力する。そのため、1ビットの鍵ビット情報により、排他的論理和演算手段における演算の実行の可否を決定することができる。
(4)本発明は、(2)または(3)のアルゴリズム可変型暗号装置について、前記非線形関数(例えば、図1の非線形関数器140a、140bに相当)が、非線形置換と線形置換とから構成されることを特徴とするアルゴリズム可変型暗号装置を提案している。
この発明によれば、非線形関数が、非線形置換と線形置換とから構成される。
(5)本発明は、(4)のアルゴリズム可変型暗号装置について、前記非線形関数(例えば、図1の非線形関数器140a、140bに相当)がAESのラウンド関数であることを特徴とするアルゴリズム可変型暗号装置を提案している。
この発明によれば、非線形関数がAESのラウンド関数である。つまり、AESのラウンド関数は、逆変換関数が存在するため、この逆変換関数を用いることにより、復号処理を行うことができる。
(6)本発明は、(1)から(5)のアルゴリズム可変型暗号装置について、前記ラウンド関数が、前記入力データのビット数以上の前記鍵ビット情報が入力されるまで、前記所定の処理を実行することを特徴とするアルゴリズム可変型暗号装置を提案している。
この発明によれば、ラウンド関数が、入力データのビット数以上の鍵ビット情報が入力されるまで、所定の処理を実行する。つまり、本発明のアルゴリズム可変型暗号装置の安全性は、非線形関数により担保されているが、少なくとも、入力データのビット数以上の鍵ビット情報が入力されるまで、所定の処理を実行することにより、鍵に依存することなく安全性を担保することができる。
(7)本発明は、(2)に記載のアルゴリズム可変型暗号装置において暗号化されたデータを復号するラウンド関数から構成されるアルゴリズム可変型復号装置であって、前記ラウンド関数が、暗号化されたデータを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて前記第1の巡回シフト手段と逆方向に巡回させる第2の巡回シフト手段(例えば、図3の巡回シフト部150a、150bに相当)と、前記第2の巡回シフト手段に接続される排他的論理和演算手段(例えば、図3の排他的論理和演算器120a、120bに相当)において演算の実行の有無を鍵ビット情報に応じて決定する演算決定手段(例えば、図3の演算決定部130a、130bに相当)と、前記排他的論理和演算手段の演算結果に対して前記非線形関数の逆関数を用いて非線形処理を行う非線形関数器(例えば、図3の非線形関数器160a、160bに相当)と、からなり、前記第2の巡回シフト手段、演算決定手段、非線形関数器の処理を所定回数実行することを特徴とするアルゴリズム可変型復号装置を提案している。
この発明によれば、ラウンド関数の第2の巡回シフト手段は、暗号化されたデータを入力し、入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて第1の巡回シフト手段と逆方向に巡回させる。演算決定手段は、第2の巡回シフト手段に接続される排他的論理和演算手段において演算の実行の有無を鍵ビット情報に応じて決定する。非線形関数器は、排他的論理和演算手段の演算結果に対して非線形関数の逆関数を用いて非線形処理を行う。そして、第2の巡回シフト手段、演算決定手段、非線形関数器の処理を所定回数実行する。したがって、巡回シフト手段の巡回方向を逆方向とし、非線形関数の逆関数を用いることにより、アルゴリズム可変型暗号装置において暗号化された情報を簡易に復号することができる。
(8)本発明は、所定の処理を複数回実行し、第1の巡回シフト手段と排他的論理和演算器と非線形関数器とからなるラウンド関数により構成されるアルゴリズム可変型暗号装置におけるアルゴリズム可変型暗号方法であって、前記ラウンド関数の第1の巡回シフト手段が、データを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える第1のステップ(例えば、図2のステップS101に相当)と、前記ラウンド関数の前記第1の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定する第2のステップ(例えば、図2のステップS102に相当)と、前記排他的論理和演算器の演算結果に対して前記非線形関数器が、非線形処理を行う第3のステップ(例えば、図2のステップS103に相当)と、前記第1のステップから第3のステップを前記所定回数実行する第4のステップ(例えば、図2のステップS104に相当)と、を備えたことを特徴とするアルゴリズム可変型暗号方法を提案している。
この発明によれば、ラウンド関数の第1の巡回シフト手段が、データを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替え、ラウンド関数の第1の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定し、排他的論理和演算器の演算結果に対して非線形関数器が、非線形処理を行う。そして、第1のステップから第3のステップを所定回数実行する。つまり、アルゴリズムの可変部分は、安全性と性能に影響を与えない第1の巡回シフト手段と演算決定手段とで構成されるため、上記の方式でアルゴリズムを可変しても、安全性や性能を一定のレベルに保つことができる。
(9)本発明は、(8)に記載のアルゴリズム可変型暗号方法において暗号化されたデータを復号し、所定の処理を複数回実行し、第2の巡回シフト手段と排他的論理和演算器と非線形関数器からなるラウンド関数により構成されるアルゴリズム可変型復号装置におけるアルゴリズム可変型復号方法であって、前記ラウンド関数の第2の巡回シフト手段が、暗号化されたデータを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて前記第1の巡回シフト手段と逆方向に巡回させる第1のステップ(例えば、図4のステップS201に相当)と、前記ラウンド関数の前記第2の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定する第2のステップ(例えば、図4のステップS202に相当)と、前記排他的論理和演算器の演算結果に対して前記非線形関数の逆関数を用いて前記非線形関数器が非線形処理を行う第3のステップ(例えば、図4のステップS203に相当)と、前記第1のステップから第3のステップを前記所定回数実行する第4のステップ(例えば、図4のステップS204に相当)と、を備えたことを特徴とするアルゴリズム可変型復号方法を提案している。
この発明によれば、ラウンド関数の第2の巡回シフト手段が、暗号化されたデータを入力し、入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて第1の巡回シフト手段と逆方向に巡回させ、ラウンド関数の第2の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定し、排他的論理和演算器の演算結果に対して非線形関数の逆関数を用いて非線形関数器が非線形処理を行う。そして、第1のステップから第3のステップを所定回数実行する。したがって、巡回シフト手段の巡回方向を逆方向とし、非線形関数の逆関数を用いることにより、アルゴリズム可変型暗号装置において暗号化された情報を簡易に復号することができる。
(10)本発明は、所定の処理を複数回実行し、第1の巡回シフト手段と排他的論理和演算器と非線形関数器とからなるラウンド関数により構成されるアルゴリズム可変型暗号装置におけるアルゴリズム可変型暗号方法をコンピュータに実行させるプログラムであって、前記ラウンド関数の第1の巡回シフト手段が、データを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える第1のステップ(例えば、図2のステップS101に相当)と、前記ラウンド関数の前記第1の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定する第2のステップ(例えば、図2のステップS102に相当)と、前記排他的論理和演算器の演算結果に対して前記非線形関数器が、非線形処理を行う第3のステップ(例えば、図2のステップS103に相当)と、前記第1のステップから第3のステップを前記所定回数実行する第4のステップ(例えば、図2のステップS104に相当)と、をコンピュータに実行させるプログラムを提案している。
この発明によれば、ラウンド関数の第1の巡回シフト手段が、データを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替え、ラウンド関数の第1の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定し、排他的論理和演算器の演算結果に対して非線形関数器が、非線形処理を行う。そして、第1のステップから第3のステップを所定回数実行する。つまり、アルゴリズムの可変部分は、安全性と性能に影響を与えない第1の巡回シフト手段と演算決定手段とで構成されるため、上記の方式でアルゴリズムを可変しても、安全性や性能を一定のレベルに保つことができる。
(11)本発明は、(10)のアルゴリズム可変型暗号方法において暗号化されたデータを復号し、所定の処理を複数回実行し、第2の巡回シフト手段と排他的論理和演算器と非線形関数器からなるラウンド関数により構成されるアルゴリズム可変型復号装置におけるアルゴリズム可変型復号方法をコンピュータに実行させるプログラムであって、前記ラウンド関数の第2の巡回シフト手段が、暗号化されたデータを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて前記第1の巡回シフト手段と逆方向に巡回させる第1のステップ(例えば、図4のステップS201に相当)と、前記ラウンド関数の前記第2の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定する第2のステップ(例えば、図4のステップS202に相当)と、前記排他的論理和演算器の演算結果に対して前記非線形関数の逆関数を用いて前記非線形関数器が非線形処理を行う第3のステップ(例えば、図4のステップS203に相当)と、前記第1のステップから第3のステップを前記所定回数実行する第4のステップ(例えば、図4のステップS204に相当)と、をコンピュータに実行させるプログラムを提案している。
この発明によれば、ラウンド関数の第2の巡回シフト手段が、暗号化されたデータを入力し、入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて第1の巡回シフト手段と逆方向に巡回させ、ラウンド関数の第2の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定し、排他的論理和演算器の演算結果に対して非線形関数の逆関数を用いて非線形関数器が非線形処理を行う。そして、第1のステップから第3のステップを所定回数実行する。したがって、巡回シフト手段の巡回方向を逆方向とし、非線形関数の逆関数を用いることにより、アルゴリズム可変型暗号装置において暗号化された情報を簡易に復号することができる。
本発明によれば、安全性や性能を一定レベルに保ちつつ、鍵ビット情報により、アルゴリズムを可変することができるという効果がある。
本発明に係るアルゴリズム可変型暗号装置の構成を示す図である。 本発明に係るアルゴリズム可変型暗号装置の処理を示す図である。 本発明に係るアルゴリズム可変型復号装置の構成を示す図である。 本発明に係るアルゴリズム可変型復号装置の処理を示す図である。
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
<アルゴリズム可変型暗号装置の構成>
図1を用いて、本発明に係るアルゴリズム可変型暗号装置の構成について説明する。なお、本実施形態に係るアルゴリズム可変型暗号装置は、所定の処理を複数回実行するラウンド関数から構成されるものであり、ラウンド関数が、入力される鍵ビット情報に応じて、アルゴリズムが可変する部分と常に固定の部分とからなる。
本実施形態に係るアルゴリズム可変型暗号装置は、ラウンド関数から構成され、その詳細は、図1に示すように、巡回シフト部110a、110bと、排他的論理和演算器120a、120bと、演算決定部130a、130bと、非線形関数器140a、140bとから構成されている。図1では、128ビットの平文データを暗号化するアルゴリズム可変型暗号装置を例示して説明する。なお、本実施形態では、巡回シフト部、排他的論理和演算器、非線形関数器からなるブロックが2つ並列されている場合を例示しているが、並列数は、これに限らず、3つ以上でもよい。
巡回シフト部110a、110bは、入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える。具体的には、128ビットの入力データを4バイトの倍数分、例えば、右へ巡回シフトするものとする。すなわち、4バイトごとに区切られた入力データを鍵ビットnに応じて入れ替える処理である。このため高速に実装することができる。また、このときシフトパターンは4通りあるため、2ビットの鍵ビットの入力が可能である。
排他的論理和演算器120a、120bは、2つの入力データに対して、排他的論理和演算を実行する。
演算決定部130a、130bは、巡回シフト部110a、110bに接続される排他的論理和演算器120a、120bにおいて演算の実行の有無を鍵ビット情報に応じて決定する。具体的には、鍵ビットに応じてデータに「0」をかけるか「1」をかけるかを決定する。つまり、鍵ビットが「0」である場合には、排他的論理和演算器120a、120bに入力されるビット列はオール「0」となるため、実際は排他的論理和演算が実行されない。本処理に対しては、1ビットの鍵ビットが入力可能である。
非線形関数器140a、140bは、排他的論理和演算器120a、120bの演算結果に対して非線形処理を行う。非線形関数器140a、140bは、非線形置換と線形変換から構成される関数である。この関数は、逆変換関数が存在すればどのような関数でも良いが、AESのラウンド関数が好ましい。なお、この関数は鍵ビットに関係なく変化しない。
本実施形態に係るアルゴリズム可変型暗号装置においては、1ラウンドで、2*2+1*2=6ビットの鍵ビットを入力できる。そのため、Nラウンドの処理を実行すると、6Nビットの鍵ビットを実行できる。そのため、本実施形態のように、128ビットの鍵を入力するためには、22ラウンドあれば良い。また、本実施形態に係るアルゴリズム可変型暗号装置の安全性は、本質的に、非線形関数器140a、140bによって担保されている。そのため、ラウンド数が十分大きければ、鍵に関係なく安全性が保証される。また、本実施形態に係るアルゴリズム可変型暗号装置においては、鍵スケジュールを必要としないというメリットがある。
<アルゴリズム可変型暗号装置の処理>
図2を用いて、本発明に係るアルゴリズム可変型暗号装置の処理について説明する。
まず、ラウンド関数の巡回シフト部110a、110bが、データを入力し、その入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える(ステップS101)。
次に、ラウンド関数の巡回シフト部110a、110bに接続される排他的論理和演算器120a、120bにおいて演算の実行の有無を鍵ビット情報に応じて決定する(ステップS102)。
さらに、排他的論理和演算器120a、120bの演算結果に対して非線形関数器140a、140bが、非線形処理を行い(ステップS103)、そして、ステップS101からステップS103を所定回数実行する(ステップS104)。
したがって、以上説明したように、本実施形態によれば、アルゴリズムの可変部分は、安全性と性能に影響を与えない第1の巡回シフト手段と演算決定手段とで構成されるため、上記の方式でアルゴリズムを可変しても、安全性や性能を一定のレベルに保つことができる。
<アルゴリズム可変型復号装置の構成>
図3を用いて、本発明に係るアルゴリズム可変型復号装置の構成について説明する。本実施形態に係るアルゴリズム可変型復号装置は、上記のアルゴリズム可変型暗号装置により暗号化したデータを復号するものである。
本実施形態に係るアルゴリズム可変型復号装置は、ラウンド関数から構成され、その詳細は、図3に示すように、巡回シフト部150a、150bと、排他的論理和演算器120a、120bと、演算決定部130a、130bと、非線形関数器160a、160bとから構成されている。図3では、128ビットの暗号文データを復号化するアルゴリズム可変型復号装置を例示して説明する。なお、本実施形態では、巡回シフト部、排他的論理和演算器、非線形関数器からなるブロックが2つ並列されている場合を例示しているが、並列数は、これに限らず、3つ以上でもよい。また、第1の実施形態と同一の符号を付す構成要素については、同様の機能を有するものであることから、その詳細な説明は、省略する。
巡回シフト部150a、150bは、暗号化されたデータを入力し、その入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて巡回シフト部110a、110bと逆方向に巡回させる。
非線形関数器160a、160bは、排他的論理和演算器120a、120bの演算結果に対して非線形処理を行う。非線形関数器160a、160bは、非線形関数器140a、140bの逆変換関数で構成されている。
<アルゴリズム可変型復号装置の処理>
図4を用いて、本発明に係るアルゴリズム可変型暗号装置の処理について説明する。
まず、ラウンド関数の巡回シフト部150a、150bが、暗号化されたデータを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて巡回シフト部110a、110bと逆方向に巡回させる(ステップS201)。
次に、ラウンド関数の巡回シフト部150a、150bに接続される排他的論理和演算器120a、120bにおいて演算の実行の有無を鍵ビット情報に応じて決定する(ステップS202)。
さらに、排他的論理和演算器120a、120bの演算結果に対して非線形関数器160a、160bが、非線形処理を行い(ステップS203)、そして、ステップS201からステップS203を所定回数実行する(ステップS204)。
したがって、以上説明したように、本実施形態によれば、巡回シフト手段の巡回方向を逆方向とし、非線形関数の逆関数を用いることにより、アルゴリズム可変型暗号装置において暗号化された情報を簡易に復号することができる。
なお、アルゴリズム可変型暗号装置およびアルゴリズム可変型復号装置の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをアルゴリズム可変型暗号装置およびアルゴリズム可変型復号装置に読み込ませ、実行することによって本発明のアルゴリズム可変型暗号装置およびアルゴリズム可変型復号装置を実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
110a;巡回シフト部
110b;巡回シフト部
120a;排他的論理和演算器
120b;排他的論理和演算器
130a;演算決定部
130b;演算決定部
140a;非線形関数器
140b;非線形関数器
150a;巡回シフト部
150b;巡回シフト部
160a;非線形関数器
160b;非線形関数器

Claims (7)

  1. 所定の処理を複数回実行するラウンド関数から構成されるアルゴリズム可変型暗号装置であって、
    前記ラウンド関数が、入力される鍵ビット情報に応じて、アルゴリズムが可変する部分と常に固定の部分とから構成され、
    前記ラウンド関数が、
    入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える第1の巡回シフト手段と、
    前記第1の巡回シフト手段に接続される排他的論理和演算手段において演算の実行の有無を鍵ビット情報に応じて決定する演算決定手段と、
    前記排他的論理和演算手段の演算結果に対して非線形処理を行う非線形関数器と、
    からなり、
    前記第1の巡回シフト手段、演算決定手段、非線形関数器の処理を所定回数実行することを特徴とするアルゴリズム可変型暗号装置。
  2. 前記演算決定手段が、「1」あるいは「0」からなる1ビットの鍵ビット情報により、前記排他的論理和演算手段における演算の実行を決定することを特徴とする請求項に記載のアルゴリズム可変型暗号装置。
  3. 前記非線形関数が、非線形置換と線形置換とから構成されることを特徴とする請求項または請求項に記載のアルゴリズム可変型暗号装置。
  4. 前記非線形関数がAESのラウンド関数であることを特徴とする請求項に記載のアルゴリズム可変型暗号装置。
  5. 前記ラウンド関数が、前記入力データのビット数以上の前記鍵ビット情報が入力されるまで、前記所定の処理を実行することを特徴とする請求項1から請求項に記載のアルゴリズム可変型暗号装置。
  6. 所定の処理を複数回実行し、第1の巡回シフト手段と排他的論理和演算器と非線形関数器とからなるラウンド関数により構成されるアルゴリズム可変型暗号装置におけるアルゴリズム可変型暗号方法であって、
    前記ラウンド関数の第1の巡回シフト手段が、データを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える第1のステップと 前記ラウンド関数の前記第1の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定する第2のステップと、
    前記排他的論理和演算器の演算結果に対して前記非線形関数器が、非線形処理を行う第3のステップと、
    前記第1のステップから第3のステップを前記所定回数実行する第4のステップと、
    を備えたことを特徴とするアルゴリズム可変型暗号方法。
  7. 所定の処理を複数回実行し、第1の巡回シフト手段と排他的論理和演算器と非線形関数器とからなるラウンド関数により構成されるアルゴリズム可変型暗号装置におけるアルゴリズム可変型暗号方法をコンピュータに実行させるプログラムであって、
    前記ラウンド関数の第1の巡回シフト手段が、データを入力し、該入力されたデータを所定バイトごとに区切ったデータ群を鍵ビット情報に応じて入れ替える第1のステップと、
    前記ラウンド関数の前記第1の巡回シフト手段に接続される排他的論理和演算器において演算の実行の有無を鍵ビット情報に応じて決定する第2のステップと、
    前記排他的論理和演算器の演算結果に対して前記非線形関数器が、非線形処理を行う第3のステップと、
    前記第1のステップから第3のステップを前記所定回数実行する第4のステップと、
    をコンピュータに実行させるプログラム。
JP2011030553A 2011-02-16 2011-02-16 アルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラム Active JP5665588B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011030553A JP5665588B2 (ja) 2011-02-16 2011-02-16 アルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011030553A JP5665588B2 (ja) 2011-02-16 2011-02-16 アルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2012169964A JP2012169964A (ja) 2012-09-06
JP5665588B2 true JP5665588B2 (ja) 2015-02-04

Family

ID=46973628

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011030553A Active JP5665588B2 (ja) 2011-02-16 2011-02-16 アルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5665588B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1152850A (ja) * 1997-08-07 1999-02-26 Hitachi Ltd 暗号変換方法および装置
JP4556252B2 (ja) * 1998-05-29 2010-10-06 株式会社日立製作所 暗号変換装置、復号変換装置、暗号通信装置および自動料金徴収システムに用いられるicカード、車載機および路側機
JP2000089667A (ja) * 1998-09-14 2000-03-31 Ntt Advanced Technology Corp アルゴリズム生成型秘密鍵暗号方式
JP3190648B2 (ja) * 1999-05-26 2001-07-23 松下電器産業株式会社 データ暗号化装置及びその方法
JP2001177518A (ja) * 1999-12-17 2001-06-29 Nec Corp 暗号化方法、復号化方法及び装置
JP4890976B2 (ja) * 2005-08-31 2012-03-07 キヤノン株式会社 暗号処理装置

Also Published As

Publication number Publication date
JP2012169964A (ja) 2012-09-06

Similar Documents

Publication Publication Date Title
US10581590B2 (en) Flexible architecture and instruction for advanced encryption standard (AES)
US9515818B2 (en) Multi-block cryptographic operation
JP5835458B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
US9565018B2 (en) Protecting cryptographic operations using conjugacy class functions
KR20190010251A (ko) 클라우드 스토리지 전송단계에서의 보안성 강화를 위한 lpes 방법 및 장치
US9692592B2 (en) Using state reordering to protect against white box attacks
WO2013129054A1 (ja) 情報処理装置、および情報処理方法、並びにプログラム
WO2008121734A1 (en) Method and apparatus for advanced encryption standard (aes) block cipher
EP3667647A1 (en) Encryption device, encryption method, decryption device, and decryption method
CN111373464B (zh) 加密装置、加密方法、解密装置以及解密方法
JP2013182148A (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP5665588B2 (ja) アルゴリズム可変型暗号装置、アルゴリズム可変型復号装置、アルゴリズム可変型暗号方法、アルゴリズム可変型復号方法およびプログラム
JP6203387B2 (ja) 暗号装置及び記憶システム及び復号装置及び暗号方法及び復号方法及び暗号プログラム及び復号プログラム
JP5559011B2 (ja) ストリーム暗号の暗号化装置、ストリーム暗号の暗号化方法およびプログラム
JP2008139742A (ja) 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置、ストリーム暗号の暗号化方法、復号化方法、mac生成方法およびプログラム
US11997189B2 (en) Encrypted communication using counter mode encryption and secret keys
KR20190041900A (ko) 암호화 장치 및 복호화 장치, 이들의 동작방법
JP2009037095A (ja) データスクランブル装置、データデスクランブル装置、データスクランブル方法、データデスクランブル方法およびプログラム
JP7215245B2 (ja) 情報処理装置、情報処理方法及びプログラム
Joshi et al. Hybrid Encryption Technique for Securing Cloud Data
Kruthika A Study on the Data Securing Algorithms: The State of Art
JP2014232906A (ja) 暗号処理システム
Ali et al. Computers and Software
JP2011130340A (ja) ストリーム暗号の暗号化装置、ストリーム暗号の復号化装置、ストリーム暗号の暗号化方法、ストリーム暗号の復号化方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140617

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140813

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: 20141111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141209

R150 Certificate of patent or registration of utility model

Ref document number: 5665588

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150