JPH1185018A - 暗号処理用半導体集積回路及び暗号アルゴリズム変更方法 - Google Patents
暗号処理用半導体集積回路及び暗号アルゴリズム変更方法Info
- Publication number
- JPH1185018A JPH1185018A JP9249230A JP24923097A JPH1185018A JP H1185018 A JPH1185018 A JP H1185018A JP 9249230 A JP9249230 A JP 9249230A JP 24923097 A JP24923097 A JP 24923097A JP H1185018 A JPH1185018 A JP H1185018A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- encryption
- circuit
- data
- randomizing
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/122—Hardware reduction or efficient architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/125—Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
(57)【要約】
【課題】 暗号の秘密保持特性の大幅な向上と高速な暗
号処理とを実装面積を低減しつつ実現することである。 【解決手段】 入力データを2分した一方の入力データ
を、ランダマイズ処理のアルゴリズムを決定する回路構
成情報に基づいてランダマイズ処理を行うランダマイズ
処理手段5と、ランダマイズ処理を行ったデータを入力
し、暗号処理を行う関数F部1と、入力データを2分し
た他方と関数F部1の出力データを入力して、双方の排
他的論理和を出力する排他的論理和回路3と、を有する
ようにしてある。
号処理とを実装面積を低減しつつ実現することである。 【解決手段】 入力データを2分した一方の入力データ
を、ランダマイズ処理のアルゴリズムを決定する回路構
成情報に基づいてランダマイズ処理を行うランダマイズ
処理手段5と、ランダマイズ処理を行ったデータを入力
し、暗号処理を行う関数F部1と、入力データを2分し
た他方と関数F部1の出力データを入力して、双方の排
他的論理和を出力する排他的論理和回路3と、を有する
ようにしてある。
Description
【0001】
【発明の属する技術分野】本発明は、暗号処理用半導体
集積回路及び暗号アルゴリズム変更方法に関し、特に、
暗号の秘密保持特性の大幅な向上と高速な暗号処理とを
実装面積を低減しつつ実現する技術に関する。
集積回路及び暗号アルゴリズム変更方法に関し、特に、
暗号の秘密保持特性の大幅な向上と高速な暗号処理とを
実装面積を低減しつつ実現する技術に関する。
【0002】
【従来の技術】近年インターネット等の通信インフラの
発達等によりネット上でお金を決済するエレクトロニッ
クコマースが関心を集めているが、そのキー技術として
暗号化技術が存在する。通信する金額、承認内容等を暗
号化することで、途中で第3者による傍受があった場合
であっても内容の秘密性を保つためである。しかし、現
在のところ絶対確実な暗号化技術は存在していない。
発達等によりネット上でお金を決済するエレクトロニッ
クコマースが関心を集めているが、そのキー技術として
暗号化技術が存在する。通信する金額、承認内容等を暗
号化することで、途中で第3者による傍受があった場合
であっても内容の秘密性を保つためである。しかし、現
在のところ絶対確実な暗号化技術は存在していない。
【0003】図14は、従来の暗号処理用半導体集積回
路を示すブロック図である。この暗号処理用半導体集積
回路は、施錠と開錠の鍵が同一であり送信者と受信者で
その鍵を共有するものである。以下、基本アルゴリズム
を説明する。
路を示すブロック図である。この暗号処理用半導体集積
回路は、施錠と開錠の鍵が同一であり送信者と受信者で
その鍵を共有するものである。以下、基本アルゴリズム
を説明する。
【0004】64ビット(8バイト)ごとにブロック化
したテキスト入力を左右4バイトに分割し、一方の4バ
イトを関数F101に入力する。この関数Fでは、鍵デ
ータを用いてデータ処理を行い、そのデータと他方の4
バイトと排他的論理和(EXOR:丸に+印)回路3に
より排他的論理和を取り、次の関数F101の入力とす
るようにしてある。このようにして、4バイト単位で関
数Fと鍵情報を用いてランダム化するという処理を繰り
返す。そして最後に左右4バイトを再び合成して8バイ
トの暗号文を得る。復号化は上記の処理を逆方向に順に
行うことで達成される。
したテキスト入力を左右4バイトに分割し、一方の4バ
イトを関数F101に入力する。この関数Fでは、鍵デ
ータを用いてデータ処理を行い、そのデータと他方の4
バイトと排他的論理和(EXOR:丸に+印)回路3に
より排他的論理和を取り、次の関数F101の入力とす
るようにしてある。このようにして、4バイト単位で関
数Fと鍵情報を用いてランダム化するという処理を繰り
返す。そして最後に左右4バイトを再び合成して8バイ
トの暗号文を得る。復号化は上記の処理を逆方向に順に
行うことで達成される。
【0005】図15は、図14中の関数F101に用い
られている、現在標準となっているDES(Data Encry
ption Standard)を示す。ここで、図中のEは、32ビ
ットを48ビットに拡大する処理部である。また、S1
乃至S8は6ビットを4ビットに変換するテーブルを示
す。更に、Pは32ビットのビット順を変換する処理部
である。このようにして、DESでは入力の1段目と最
終出力部でデータの転置(permutation)を行ってい
る。
られている、現在標準となっているDES(Data Encry
ption Standard)を示す。ここで、図中のEは、32ビ
ットを48ビットに拡大する処理部である。また、S1
乃至S8は6ビットを4ビットに変換するテーブルを示
す。更に、Pは32ビットのビット順を変換する処理部
である。このようにして、DESでは入力の1段目と最
終出力部でデータの転置(permutation)を行ってい
る。
【0006】このように、従来の暗号処理用半導体集積
回路においては、アルゴリズムが固定であるため、鍵の
全探索により解読が可能である。鍵の全探索を実用上不
可能とするには、例えば、図14の段数を増やす等を行
い、暗号処理用半導体集積回路のハードウエア量を増加
させて、処理にかかる時間を増大させれば良い。
回路においては、アルゴリズムが固定であるため、鍵の
全探索により解読が可能である。鍵の全探索を実用上不
可能とするには、例えば、図14の段数を増やす等を行
い、暗号処理用半導体集積回路のハードウエア量を増加
させて、処理にかかる時間を増大させれば良い。
【0007】
【発明が解決しようとする課題】しかしながら、暗号の
解読を事実上不可能にするために、暗号処理用の半導体
集積回路のハードウエア量を増加させたのでは、まず、
第1に、相当量のハードウエア量が必要であるため、半
導体集積回路の面積が増加してしまうという問題があっ
た、また、第2に相当量のハードウエア量を必要とする
ため、通常使用時での実行処理に時間がかかるという問
題があった。
解読を事実上不可能にするために、暗号処理用の半導体
集積回路のハードウエア量を増加させたのでは、まず、
第1に、相当量のハードウエア量が必要であるため、半
導体集積回路の面積が増加してしまうという問題があっ
た、また、第2に相当量のハードウエア量を必要とする
ため、通常使用時での実行処理に時間がかかるという問
題があった。
【0008】本発明は、上記事情に鑑みてなされたもの
であり、その目的とするところは、暗号の秘密保持特性
の大幅な向上と、高速な暗号処理とを実装面積を低減し
つつ実現する暗号処理用半導体集積回路及び暗号アルゴ
リズム変更方法を提供することにある。
であり、その目的とするところは、暗号の秘密保持特性
の大幅な向上と、高速な暗号処理とを実装面積を低減し
つつ実現する暗号処理用半導体集積回路及び暗号アルゴ
リズム変更方法を提供することにある。
【0009】
【課題を解決するための手段】従来技術のようなハード
ウエア量を大きくして暗号の秘密保持の特性を向上させ
たのでは、実装面積が巨大化したり、大量の処理が必要
であるため処理速度が低下する問題がある。そこで、本
発明の発明者は、何か画期的な方法を用いることで上記
問題点が解決できないかを考えた。
ウエア量を大きくして暗号の秘密保持の特性を向上させ
たのでは、実装面積が巨大化したり、大量の処理が必要
であるため処理速度が低下する問題がある。そこで、本
発明の発明者は、何か画期的な方法を用いることで上記
問題点が解決できないかを考えた。
【0010】近年、外部入力信号に応じて回路構成が変
更可能な半導体集積回路リコンフイギュラブル回路がそ
の利用法の柔軟性から将来を嘱望されており、このリコ
ンフィギュラブル回路を用いて暗号処理のアルゴリズム
自体を変更するような構成にすれば、上記問題点が一気
に解決することに気が付いた。本発明者は、慎重な研究
を重ねた結果、以下の発明を行うことが出来た。
更可能な半導体集積回路リコンフイギュラブル回路がそ
の利用法の柔軟性から将来を嘱望されており、このリコ
ンフィギュラブル回路を用いて暗号処理のアルゴリズム
自体を変更するような構成にすれば、上記問題点が一気
に解決することに気が付いた。本発明者は、慎重な研究
を重ねた結果、以下の発明を行うことが出来た。
【0011】請求項1の発明は、入力データを鍵データ
に基づいて暗号処理を行う暗号処理用半導体集積回路に
おいて、ランダマイズ処理のアルゴリズムを決定する回
路構成情報に基づいて、前記入力データのランダマイズ
処理を行うランダマイズ処理手段を有することを特徴と
する。
に基づいて暗号処理を行う暗号処理用半導体集積回路に
おいて、ランダマイズ処理のアルゴリズムを決定する回
路構成情報に基づいて、前記入力データのランダマイズ
処理を行うランダマイズ処理手段を有することを特徴と
する。
【0012】上記発明の構成では、回路構成情報に基づ
いてランダマイズ処理を変更するようなランダマイズ処
理手段を設けてある。上記発明の構成によれば、暗号の
秘密保持特性の大幅な向上と、高速な暗号処理とを実装
面積を低減しつつ実現することができるのである。
いてランダマイズ処理を変更するようなランダマイズ処
理手段を設けてある。上記発明の構成によれば、暗号の
秘密保持特性の大幅な向上と、高速な暗号処理とを実装
面積を低減しつつ実現することができるのである。
【0013】請求項2の発明は、入力データを2分し、
鍵データに基づいて暗号処理を行う暗号処理用半導体集
積回路において、前記入力データを2分した一方の入力
データを、ランダマイズ処理のアルゴリズムを決定する
回路構成情報に基づいてランダマイズ処理を行うランダ
マイズ処理手段と、前記ランダマイズ処理を行ったデー
タを入力し、暗号処理を行う関数F部と、前記入力デー
タを2分した他方と前記関数F部の出力データを入力し
て、双方の排他的論理和を出力する排他的論理和回路
と、を有することを特徴とする。
鍵データに基づいて暗号処理を行う暗号処理用半導体集
積回路において、前記入力データを2分した一方の入力
データを、ランダマイズ処理のアルゴリズムを決定する
回路構成情報に基づいてランダマイズ処理を行うランダ
マイズ処理手段と、前記ランダマイズ処理を行ったデー
タを入力し、暗号処理を行う関数F部と、前記入力デー
タを2分した他方と前記関数F部の出力データを入力し
て、双方の排他的論理和を出力する排他的論理和回路
と、を有することを特徴とする。
【0014】上記発明の構成は、従来技術で説明した図
14の回路にランダマイズ処理手段を設けるようにした
ものである。このように、本発明は、従来技術で用いら
れている暗号処理半導体集積回路にランダマイズ処理手
段を付加して実施することもできるのである。また、図
1に示すように、上記発明の構成を数段備えるようにす
ることによりより、秘密保持特性のさらなる向上を図る
こともできる。
14の回路にランダマイズ処理手段を設けるようにした
ものである。このように、本発明は、従来技術で用いら
れている暗号処理半導体集積回路にランダマイズ処理手
段を付加して実施することもできるのである。また、図
1に示すように、上記発明の構成を数段備えるようにす
ることによりより、秘密保持特性のさらなる向上を図る
こともできる。
【0015】請求項3の発明は、入力データを2分し、
鍵データに基づいて暗号処理を行う暗号処理用半導体集
積回路において、入力したデータを、ランダマイズ処理
のアルゴリズムを決定する回路構成情報に基づいてラン
ダマイズ処理を行うランダマイズ処理手段と、前記ラン
ダマイズ処理を行ったデータを入力し、暗号処理を行う
関数F部と、前記入力データの他方と前記関数F部の出
力データを入力して、双方の排他的論理和を出力する排
他的論理和回路と、前記入力データを2分した一方のデ
ータと前記排他的論理和回路が出力したデータとを選択
して出力する第1のセレクタと、この第1のセレクタが
出力したデータを保持する第1のレジスタと、前記入力
データを2分した他方のデータと前記第1のレジスタが
出力したデータとを選択して出力する第2のセレクタ
と、この第2のセレクタが出力したデータを保持する第
2のレジスタと、を有し、繰り返して前記関数F部を利
用して暗号処理を行うことを特徴とする。
鍵データに基づいて暗号処理を行う暗号処理用半導体集
積回路において、入力したデータを、ランダマイズ処理
のアルゴリズムを決定する回路構成情報に基づいてラン
ダマイズ処理を行うランダマイズ処理手段と、前記ラン
ダマイズ処理を行ったデータを入力し、暗号処理を行う
関数F部と、前記入力データの他方と前記関数F部の出
力データを入力して、双方の排他的論理和を出力する排
他的論理和回路と、前記入力データを2分した一方のデ
ータと前記排他的論理和回路が出力したデータとを選択
して出力する第1のセレクタと、この第1のセレクタが
出力したデータを保持する第1のレジスタと、前記入力
データを2分した他方のデータと前記第1のレジスタが
出力したデータとを選択して出力する第2のセレクタ
と、この第2のセレクタが出力したデータを保持する第
2のレジスタと、を有し、繰り返して前記関数F部を利
用して暗号処理を行うことを特徴とする。
【0016】上記発明の構成では、繰り返して前記関数
F部を利用して暗号処理を行うようにしてある。このよ
うに繰り返して利用することによって、よりハードウエ
ア量を減少させることが出来るので、実装面積を低減さ
せることが出来るのである。
F部を利用して暗号処理を行うようにしてある。このよ
うに繰り返して利用することによって、よりハードウエ
ア量を減少させることが出来るので、実装面積を低減さ
せることが出来るのである。
【0017】請求項4の発明は、前記請求項1乃至3の
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報に基づいて、回路の配置を
行うリコンフィギュラブル回路で構成することを特徴と
する。
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報に基づいて、回路の配置を
行うリコンフィギュラブル回路で構成することを特徴と
する。
【0018】上記発明の構成では、リコンフィギュラブ
ル回路を用いるようにしてある。リコンフィギュラブル
回路を用いることで、暗号の秘密保持特性の大幅な向上
と、高速な暗号処理とを実装面積を低減しつつ実現する
ことができるのである。
ル回路を用いるようにしてある。リコンフィギュラブル
回路を用いることで、暗号の秘密保持特性の大幅な向上
と、高速な暗号処理とを実装面積を低減しつつ実現する
ことができるのである。
【0019】請求項5の発明は、前記請求項1乃至3の
ランダマイズ処理手段は、入力されたデータに対する出
力を予めテーブル化しておき、対応するデータを出力す
るルックアップテーブル回路で構成することを特徴とす
る。
ランダマイズ処理手段は、入力されたデータに対する出
力を予めテーブル化しておき、対応するデータを出力す
るルックアップテーブル回路で構成することを特徴とす
る。
【0020】上記発明の構成によれば、ルックアップテ
ーブル回路を用いることで、さらに実装面積を低減させ
ることが出来るのである。
ーブル回路を用いることで、さらに実装面積を低減させ
ることが出来るのである。
【0021】請求項6の発明は、前記請求項1乃至3の
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報としてROMアドレス信号
を入力し、そのアドレスに示す回路構成情報を出力する
回路情報ROMと、この回路構成情報を入力して、ラン
ダマイズ処理を行うリコンフィギュラブル回路と、を備
えることを特徴とする。
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報としてROMアドレス信号
を入力し、そのアドレスに示す回路構成情報を出力する
回路情報ROMと、この回路構成情報を入力して、ラン
ダマイズ処理を行うリコンフィギュラブル回路と、を備
えることを特徴とする。
【0022】上記発明の構成では、回路構成情報として
ROMのアドレス信号を入力するようにしてあるので、
通信データ量を低減させることが出来る。従って、通信
時間を低減するとともにデータの破損の確率を低減させ
ることが出来るのである。
ROMのアドレス信号を入力するようにしてあるので、
通信データ量を低減させることが出来る。従って、通信
時間を低減するとともにデータの破損の確率を低減させ
ることが出来るのである。
【0023】請求項7の発明は、前記請求項1乃至3の
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報としてタイマー調整信号を
入力し、送信チップ側とのカウンタの同期を取る内部タ
イマーと、この内部タイマーのカウンタ値からアドレス
を発生するアドレス発生部と、この発生したアドレス基
づき、そのアドレスに示す回路構成情報を出力する回路
情報ROMと、この回路構成情報を入力して、ランダマ
イズ処理を行うリコンフィギュラブル回路と、を備える
ことを特徴とする。
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報としてタイマー調整信号を
入力し、送信チップ側とのカウンタの同期を取る内部タ
イマーと、この内部タイマーのカウンタ値からアドレス
を発生するアドレス発生部と、この発生したアドレス基
づき、そのアドレスに示す回路構成情報を出力する回路
情報ROMと、この回路構成情報を入力して、ランダマ
イズ処理を行うリコンフィギュラブル回路と、を備える
ことを特徴とする。
【0024】上記発明の構成では、送信側と受信側でカ
ウンタ式タイマーを用いて同期を取って通信を行うよう
にしてある。上記発明の構成によれば、さらに通信情報
量が低減できるだけでなく、暗号破りの情報を得ること
が極めて困難となるのである。
ウンタ式タイマーを用いて同期を取って通信を行うよう
にしてある。上記発明の構成によれば、さらに通信情報
量が低減できるだけでなく、暗号破りの情報を得ること
が極めて困難となるのである。
【0025】請求項8の発明は、前記請求項1乃至3の
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報としてRAM書き換え信号
に基づいてプログラムを出力するプログラムRAMと、
固定したアルゴリズムのプログラムを出力するプログラ
ムROMと、これらプログラムRAMやプログラムRO
Mが出力したプログラムを実行してランダマイズ処理を
行うMPUと、を備えることを特徴とする。
ランダマイズ処理手段は、ランダマイズ処理のアルゴリ
ズムを決定する回路構成情報としてRAM書き換え信号
に基づいてプログラムを出力するプログラムRAMと、
固定したアルゴリズムのプログラムを出力するプログラ
ムROMと、これらプログラムRAMやプログラムRO
Mが出力したプログラムを実行してランダマイズ処理を
行うMPUと、を備えることを特徴とする。
【0026】上記発明の構成では、暗号アルゴリズムを
ソフトウエアで実現し、MPUで処理をするようにして
ある。このように構成することで、プログラムROMに
固定したアルゴリズム部分は標準のDES等のアルゴリ
ズムとすれば電源投入し即使用可能となると共に標準暗
号利用可能となり利便性が増すことができるのである。
ソフトウエアで実現し、MPUで処理をするようにして
ある。このように構成することで、プログラムROMに
固定したアルゴリズム部分は標準のDES等のアルゴリ
ズムとすれば電源投入し即使用可能となると共に標準暗
号利用可能となり利便性が増すことができるのである。
【0027】ここで、内部ROMに書き込んだプログラ
ムをアドレス情報あるいはカウンタタイマに指定される
アドレス情報で呼び出すようにすることが、可変性は低
減するが送信データ量を低減することができるという点
で好ましい。
ムをアドレス情報あるいはカウンタタイマに指定される
アドレス情報で呼び出すようにすることが、可変性は低
減するが送信データ量を低減することができるという点
で好ましい。
【0028】請求項9の発明は、前記請求項1乃至3の
ランダマイズ処理手段は、入力ビットの順番をランダマ
イズして出力を行うクロスバーで構成することを特徴と
する。
ランダマイズ処理手段は、入力ビットの順番をランダマ
イズして出力を行うクロスバーで構成することを特徴と
する。
【0029】上記発明の構成の如く、クロスバーを用い
ることにより高速に暗号化処理を行うことができる。ま
た、クロスバーを用いれば、逆関数は原理的にそのクロ
スバースイッチをデータを逆方向に伝送することで実現
できるため、逆関数が存在するか否かの判断の必要がな
くなるという利点もある。
ることにより高速に暗号化処理を行うことができる。ま
た、クロスバーを用いれば、逆関数は原理的にそのクロ
スバースイッチをデータを逆方向に伝送することで実現
できるため、逆関数が存在するか否かの判断の必要がな
くなるという利点もある。
【0030】請求項10の発明は、前記請求項4乃至9
のランダマイズ処理手段は、前記鍵データに基づいて、
暗号処理を行うことを特徴とする。
のランダマイズ処理手段は、前記鍵データに基づいて、
暗号処理を行うことを特徴とする。
【0031】上記発明の構成は、ランダマイズ処理手段
にも鍵データを入力するようにして、その鍵データに基
づいてランダマイズ処理を行うようにしてある。上記発
明の構成によれば、更に暗号の秘密保持特性の向上を図
ることが出来るのである。
にも鍵データを入力するようにして、その鍵データに基
づいてランダマイズ処理を行うようにしてある。上記発
明の構成によれば、更に暗号の秘密保持特性の向上を図
ることが出来るのである。
【0032】上記目的を達成するため、請求項11の発
明は、暗号チップと、復号チップとの間で暗号のアルゴ
リズムを変更する方法であって、前記暗号チップが平文
を入力し、前記暗号チップがランダマイズ処理のアルゴ
リズムを決定する回路構成情報に基づいて回路構成を行
い、その回路構成で暗号化処理を行い、前記暗号チップ
が処理を行った暗号データ出力し、前記出力した暗号デ
ータを前記復号チップが入力し、前記復号チップが前記
回路構成情報に基づいて回路構成を行い、その回路構成
で復号化を行い、前記復号チップが復号化した平文を出
力することを特徴とする。
明は、暗号チップと、復号チップとの間で暗号のアルゴ
リズムを変更する方法であって、前記暗号チップが平文
を入力し、前記暗号チップがランダマイズ処理のアルゴ
リズムを決定する回路構成情報に基づいて回路構成を行
い、その回路構成で暗号化処理を行い、前記暗号チップ
が処理を行った暗号データ出力し、前記出力した暗号デ
ータを前記復号チップが入力し、前記復号チップが前記
回路構成情報に基づいて回路構成を行い、その回路構成
で復号化を行い、前記復号チップが復号化した平文を出
力することを特徴とする。
【0033】上記発明の構成では、回路構成情報を用い
てランダマイズ処理を可変にすることにより、暗号アル
ゴリズムを変更して暗号の秘密保持性を向上させること
が出来るのである。
てランダマイズ処理を可変にすることにより、暗号アル
ゴリズムを変更して暗号の秘密保持性を向上させること
が出来るのである。
【0034】
【発明の実施の形態】以下、本発明に係る暗号処理用半
導体集積回路及び暗号アルゴリズム変更方法の実施形態
について、図面を参照しながら詳細に説明する。
導体集積回路及び暗号アルゴリズム変更方法の実施形態
について、図面を参照しながら詳細に説明する。
【0035】図1は、第1の実施形態の暗号処理用半導
体集積回路を示すブロック図である。この暗号処理用半
導体集積回路は、入力したテキストデータを2分し、一
方のデータを回路構成情報に基づいて暗号アルゴリズム
を変更し、ランダマイズ処理を行うランダマイズ処理手
段5と、前記ランダマイズ処理を行ったデータを入力
し、暗号処理を行う関数F部1と、前記テキストデータ
の他方と前記関数F部1の出力データを入力して、双方
の排他的論理和を出力する排他的論理和回路3と、を有
するものである。また、本実施形態では、これらの構成
を数段有して秘密保持性を高めている。入力テキストデ
ータの一方は2段目の排他的論理和3に入力され、1段
目の排他的論理和回路3の出力はランダマイズ処理手段
5及び3段目の排他的論理和回路3に入力される構成で
ある。
体集積回路を示すブロック図である。この暗号処理用半
導体集積回路は、入力したテキストデータを2分し、一
方のデータを回路構成情報に基づいて暗号アルゴリズム
を変更し、ランダマイズ処理を行うランダマイズ処理手
段5と、前記ランダマイズ処理を行ったデータを入力
し、暗号処理を行う関数F部1と、前記テキストデータ
の他方と前記関数F部1の出力データを入力して、双方
の排他的論理和を出力する排他的論理和回路3と、を有
するものである。また、本実施形態では、これらの構成
を数段有して秘密保持性を高めている。入力テキストデ
ータの一方は2段目の排他的論理和3に入力され、1段
目の排他的論理和回路3の出力はランダマイズ処理手段
5及び3段目の排他的論理和回路3に入力される構成で
ある。
【0036】この実施形態は、ランダム化関数F部1の
一部の回路の入力信号のランダマイズ処理を行うランダ
マイズ処理手段5を設けたことが特徴である。このラン
ダマイズ処理手段5は、入力信号のランダマイズを行う
際にその処理が可変であることが特徴である。
一部の回路の入力信号のランダマイズ処理を行うランダ
マイズ処理手段5を設けたことが特徴である。このラン
ダマイズ処理手段5は、入力信号のランダマイズを行う
際にその処理が可変であることが特徴である。
【0037】回路構成を随時変化させる等の処理を可変
にすることにより、暗号アルゴリズムを変更し、暗号の
秘密保持性を向上させている。暗号攻撃者は暗号化時の
回路情報、即ちアルゴリズム情報も入手しなければ解読
できない。特に、回路情報はチップのアーキテクチャに
依存するためそのチップのアーキテクチャ情報、あるい
はチップも入手せねば解読できない。このように、ラン
ダマイズ処理手段を設けることで、高速な暗号処理かつ
実装面積を低減しつつ、暗号の秘密保持特性の大幅な向
上を図ることができる。
にすることにより、暗号アルゴリズムを変更し、暗号の
秘密保持性を向上させている。暗号攻撃者は暗号化時の
回路情報、即ちアルゴリズム情報も入手しなければ解読
できない。特に、回路情報はチップのアーキテクチャに
依存するためそのチップのアーキテクチャ情報、あるい
はチップも入手せねば解読できない。このように、ラン
ダマイズ処理手段を設けることで、高速な暗号処理かつ
実装面積を低減しつつ、暗号の秘密保持特性の大幅な向
上を図ることができる。
【0038】図2は、ランダマイズ処理手段5の第1の
実施例を示すブロック図である。図示の如く、関数F部
1を固定したF関数とし、ランダマイズ処理手段5に可
変なRFU(Reconfigurable Function Unit)51で構
成するようにしたものである。RFU51は、回路構成
情報に基づいて回路の構成を行う。本実施例では、4個
のRFUを用いているが、個々のRFUに異なった回路
構成情報を与えてもよいし、同一の回路構成情報を与え
てもよい。このランダマイズ手段5は、まず、4バイト
(32ビット)のデータを入力し、1バイトづつ各RF
Uに入力する。各RFU51は、鍵情報を用いてランダ
ム化処理を行い、関数F部1に出力する。ここで、本実
施例では、鍵情報を用いてランダム化処理を行っている
が、鍵情報を用いずにランダム化処理を行うようにして
もよい。すなわち、回路構成情報にて、RFUがランダ
マイズを行うので、このRFUによるランダマイズのみ
でも暗号化を図ることが出来るからである。
実施例を示すブロック図である。図示の如く、関数F部
1を固定したF関数とし、ランダマイズ処理手段5に可
変なRFU(Reconfigurable Function Unit)51で構
成するようにしたものである。RFU51は、回路構成
情報に基づいて回路の構成を行う。本実施例では、4個
のRFUを用いているが、個々のRFUに異なった回路
構成情報を与えてもよいし、同一の回路構成情報を与え
てもよい。このランダマイズ手段5は、まず、4バイト
(32ビット)のデータを入力し、1バイトづつ各RF
Uに入力する。各RFU51は、鍵情報を用いてランダ
ム化処理を行い、関数F部1に出力する。ここで、本実
施例では、鍵情報を用いてランダム化処理を行っている
が、鍵情報を用いずにランダム化処理を行うようにして
もよい。すなわち、回路構成情報にて、RFUがランダ
マイズを行うので、このRFUによるランダマイズのみ
でも暗号化を図ることが出来るからである。
【0039】このように、ランダム処理手段5としてR
FUを用いることで、高速な暗号処理かつ実装面積を低
減しつつ、暗号の秘密保持特性の大幅な向上を図ること
ができる。さらに、以下2つの利点を得る。第1に関数
F部の出力とデータとの排他的和を取る形ではRFU部
をどのような構成としても暗号化、復号化を同じ回路で
処理できる。即ち、後で述べる図9の例では少なくとも
逆関数が存在する関数を探し出しRFU部に構成しなけ
ればならないが、本実施形態では、RFU部の自由度が
大きいという効果を奏する。
FUを用いることで、高速な暗号処理かつ実装面積を低
減しつつ、暗号の秘密保持特性の大幅な向上を図ること
ができる。さらに、以下2つの利点を得る。第1に関数
F部の出力とデータとの排他的和を取る形ではRFU部
をどのような構成としても暗号化、復号化を同じ回路で
処理できる。即ち、後で述べる図9の例では少なくとも
逆関数が存在する関数を探し出しRFU部に構成しなけ
ればならないが、本実施形態では、RFU部の自由度が
大きいという効果を奏する。
【0040】第2にRFUを何もビット操作を行わない
回路に構成する事により固定F関数で定義される暗号処
理を行うことが可能となる。例えば、図2の固定F関数
をDESのF関数とし電源投入時にはRFU部がリセッ
トされ何も処理しない関数となるように構成すれば、こ
のチップは電瀕投入時にはDESチップとして動作し暗
号処理を行いその後チップに回路構成情報を伝送する事
により暗号アルゴリズムを変化させる事が出来る。この
構成の利点は電源投入時での暗号アルゴリズムが確定す
ること、またそれを利用し回路構成情報等もこの電源役
入時に確定した暗号アルゴリズムで暗号化して送れる事
である。さらに、この固定関数FをDES等標準暗号ア
ルゴリズムとすれば一般に用いられている標準手法DE
Sで暗号化された暗号文を復号化することが可能となり
利便性が増大する。
回路に構成する事により固定F関数で定義される暗号処
理を行うことが可能となる。例えば、図2の固定F関数
をDESのF関数とし電源投入時にはRFU部がリセッ
トされ何も処理しない関数となるように構成すれば、こ
のチップは電瀕投入時にはDESチップとして動作し暗
号処理を行いその後チップに回路構成情報を伝送する事
により暗号アルゴリズムを変化させる事が出来る。この
構成の利点は電源投入時での暗号アルゴリズムが確定す
ること、またそれを利用し回路構成情報等もこの電源役
入時に確定した暗号アルゴリズムで暗号化して送れる事
である。さらに、この固定関数FをDES等標準暗号ア
ルゴリズムとすれば一般に用いられている標準手法DE
Sで暗号化された暗号文を復号化することが可能となり
利便性が増大する。
【0041】図3は、RFU51の構成要素の例を示
す。図2ではバイト(8ビット)単位の処理となってい
るが簡単のため2ビット処理の例を示す。この2入力2
出力のRFU7は、信号X1,X2を入力し、所定の処
理を行い信号Y1,Y2を出力するのもある。各RFU
7にはマルチプレクサ71が備えられ、M00乃至M1
4の回路構成情報に基づいて出力を行う。ここで、鍵情
報を用いてランダマイズを行う場合には、例えば、回路
構成情報、入出力信号等と排他的論理和を取るようにし
てもよい。
す。図2ではバイト(8ビット)単位の処理となってい
るが簡単のため2ビット処理の例を示す。この2入力2
出力のRFU7は、信号X1,X2を入力し、所定の処
理を行い信号Y1,Y2を出力するのもある。各RFU
7にはマルチプレクサ71が備えられ、M00乃至M1
4の回路構成情報に基づいて出力を行う。ここで、鍵情
報を用いてランダマイズを行う場合には、例えば、回路
構成情報、入出力信号等と排他的論理和を取るようにし
てもよい。
【0042】図4は、ランダマイズ処理手段5の第2の
実施例を示したブロック図である。この実施例では、ラ
ンダマイズ処理手段として、ルックアップテーブルを用
いている。このルックアップテーブルは、信号X1,X
2を入力し、その入力に対する出力を予めテーブル化し
ておき、対応する出力を信号Y1,Y2として出力する
のもある。ここで、鍵情報を用いてランダマイズを行う
場合には、例えば、入出力信号等と排他的論理和を取る
ようにしてもよい。このルックアップテーブルを用いる
ことで、さらに実装面積を低減しつつ、暗号の秘密保持
特性の大幅な向上を図ることができる。
実施例を示したブロック図である。この実施例では、ラ
ンダマイズ処理手段として、ルックアップテーブルを用
いている。このルックアップテーブルは、信号X1,X
2を入力し、その入力に対する出力を予めテーブル化し
ておき、対応する出力を信号Y1,Y2として出力する
のもある。ここで、鍵情報を用いてランダマイズを行う
場合には、例えば、入出力信号等と排他的論理和を取る
ようにしてもよい。このルックアップテーブルを用いる
ことで、さらに実装面積を低減しつつ、暗号の秘密保持
特性の大幅な向上を図ることができる。
【0043】図5は、ランダマイズ処理手段5の第3の
実施例を示したブロック図である。この実施例では、ラ
ンダマイズ処理手段として、ROMアドレス信号を入力
し、そのアドレスに示す回路構成情報を出力する回路情
報ROM53と、この回路構成情報を入力して、ランダ
マイズ処理を行うリコンフィギュラブル回路54と、を
備えてある。このランダマイズ処理手段5は、回路情報
をチップ内のメモリ、例えば、ROMに記憶し、外部か
らはそのアドレス情報を入力する。これにより回路構成
情報の総てを送信ずる必要が無くなり、回路構成情報が
膨大となる場合に通信のデータを縮減することができ
る。これにより、通信時間を削減することができ、さら
に、送信中にデータが破損する確率を低減することがで
きる。
実施例を示したブロック図である。この実施例では、ラ
ンダマイズ処理手段として、ROMアドレス信号を入力
し、そのアドレスに示す回路構成情報を出力する回路情
報ROM53と、この回路構成情報を入力して、ランダ
マイズ処理を行うリコンフィギュラブル回路54と、を
備えてある。このランダマイズ処理手段5は、回路情報
をチップ内のメモリ、例えば、ROMに記憶し、外部か
らはそのアドレス情報を入力する。これにより回路構成
情報の総てを送信ずる必要が無くなり、回路構成情報が
膨大となる場合に通信のデータを縮減することができ
る。これにより、通信時間を削減することができ、さら
に、送信中にデータが破損する確率を低減することがで
きる。
【0044】図6は、ランダマイズ処理手段5の第4の
実施例を示したブロック図である。この実施例では、カ
ウンタ式タイマーを用いることで、回路構成情報の蓄積
されているアドレスも送信せず内部で発生するようにし
たものである。このランダマイズ処理手段5は、タイマ
ー調整信号を入力し、送信チップ側とのカウンタの同期
を取る内部タイマー55と、この内部タイマー55のカ
ウンタ値からアドレスを発生するアドレス発生部56
と、この発生したアドレス基づき、そのアドレスに示す
回路構成情報を出力する回路情報ROM53と、この回
路構成情報を入力して、ランダマイズ処理を行うリコン
フィギュラブル回路54と、を備えてある。この実施例
ではさらに送信情報量が低減できるだけでなく、情報送
信時に攻撃者に傍受されても暗号破りの情報を得ること
が極めて困難となる。
実施例を示したブロック図である。この実施例では、カ
ウンタ式タイマーを用いることで、回路構成情報の蓄積
されているアドレスも送信せず内部で発生するようにし
たものである。このランダマイズ処理手段5は、タイマ
ー調整信号を入力し、送信チップ側とのカウンタの同期
を取る内部タイマー55と、この内部タイマー55のカ
ウンタ値からアドレスを発生するアドレス発生部56
と、この発生したアドレス基づき、そのアドレスに示す
回路構成情報を出力する回路情報ROM53と、この回
路構成情報を入力して、ランダマイズ処理を行うリコン
フィギュラブル回路54と、を備えてある。この実施例
ではさらに送信情報量が低減できるだけでなく、情報送
信時に攻撃者に傍受されても暗号破りの情報を得ること
が極めて困難となる。
【0045】図7は、ランダマイズ処理手段5の第5の
実施例を示したブロック図である。この実施例では、暗
号アルゴリズムをソフトウェアで実現しプロセッサで処
理するシステムにおいてそのアルゴリズムの一部を書き
換えることにより暗号の強度を増しているものである。
実施例を示したブロック図である。この実施例では、暗
号アルゴリズムをソフトウェアで実現しプロセッサで処
理するシステムにおいてそのアルゴリズムの一部を書き
換えることにより暗号の強度を増しているものである。
【0046】このランダマイズ処理手段5は、RAM書
き換え信号に基づいてプログラムを出力するプログラム
RAM57と、固定したアルゴリズムのプログラムを出
力するプログラムROM58と、これらプログラムRA
M57やプログラムROM58が出力したプログラムを
実行してランダマイズ処理を行うMPU59と、を備え
るものである。ここで、また、プログラムRAM57の
書き換え信号はプログラムそのものである。この場合は
図4と同様に可変性が増すがデ一夕送信量が増大し、内
部ROMに書き込んだプログラムをアドレス情報あるい
はカウンタタイマに指定されるアドレス情報で呼び出す
事とすれば、可変性は低減するが送信データ量を低減す
ることができる。
き換え信号に基づいてプログラムを出力するプログラム
RAM57と、固定したアルゴリズムのプログラムを出
力するプログラムROM58と、これらプログラムRA
M57やプログラムROM58が出力したプログラムを
実行してランダマイズ処理を行うMPU59と、を備え
るものである。ここで、また、プログラムRAM57の
書き換え信号はプログラムそのものである。この場合は
図4と同様に可変性が増すがデ一夕送信量が増大し、内
部ROMに書き込んだプログラムをアドレス情報あるい
はカウンタタイマに指定されるアドレス情報で呼び出す
事とすれば、可変性は低減するが送信データ量を低減す
ることができる。
【0047】図8は、第2の実施形態の暗号処理用半導
体集積回路を示すブロック図である。この暗号処理用半
導体集積回路は、入力したテキストデータを2分し、回
路構成情報に基づいて暗号アルゴリズムを変更し、ラン
ダマイズ処理を行うランダマイズ処理手段5と、前記ラ
ンダマイズ処理を行ったデータを入力し、暗号処理を行
う関数F部1と、前記テキストデータの他方と前記関数
F部1の出力データを入力して、双方の排他的論理和を
出力する排他的論理和回路3とを有し、さらに、本実施
形態では、ハードウェアに実装する際に回路規模を小さ
くするために繰り返し関数Fを利用するようにしてあ
る。このために、テキストデータを2分しその各々のデ
ータと処理済みのデータとを選択して出力するセレクタ
11と、セレクタ11が出力したデータを保持するレジ
スタ13を設けるようにしてある。このように構成する
ことで、ハードウエア量を低減して秘密保持性を高める
ことができる。
体集積回路を示すブロック図である。この暗号処理用半
導体集積回路は、入力したテキストデータを2分し、回
路構成情報に基づいて暗号アルゴリズムを変更し、ラン
ダマイズ処理を行うランダマイズ処理手段5と、前記ラ
ンダマイズ処理を行ったデータを入力し、暗号処理を行
う関数F部1と、前記テキストデータの他方と前記関数
F部1の出力データを入力して、双方の排他的論理和を
出力する排他的論理和回路3とを有し、さらに、本実施
形態では、ハードウェアに実装する際に回路規模を小さ
くするために繰り返し関数Fを利用するようにしてあ
る。このために、テキストデータを2分しその各々のデ
ータと処理済みのデータとを選択して出力するセレクタ
11と、セレクタ11が出力したデータを保持するレジ
スタ13を設けるようにしてある。このように構成する
ことで、ハードウエア量を低減して秘密保持性を高める
ことができる。
【0048】図9は、第3の実施形態の暗号処理用半導
体集積回路を示すブロック図である。この暗号処理用半
導体集積回路は、第2の実施形態のようにテキストデー
タを2分しその各々のデータと処理済みのデータとを選
択して出力するセレクタ11と、セレクタ11が出力し
たデータを保持するレジスタ13を設けるようにしてあ
る。このように構成することで、実装面積を低減して秘
密保持性を高めることができる。
体集積回路を示すブロック図である。この暗号処理用半
導体集積回路は、第2の実施形態のようにテキストデー
タを2分しその各々のデータと処理済みのデータとを選
択して出力するセレクタ11と、セレクタ11が出力し
たデータを保持するレジスタ13を設けるようにしてあ
る。このように構成することで、実装面積を低減して秘
密保持性を高めることができる。
【0049】また、32ビットデータをランダム化する
RFUがデータパス部に直接挿入されている事が特徴で
ある。関数F部1の出力と排他的和を取る図1の例と異
なりデー夕に依存した処理が可能となり暗号の強度が増
すという利点を持つ。RFUにおいてインヴォルーショ
ン関数といわれる逆関数が関数と同型である関数を実現
すれば暗号化、および復号化において同図の回路構成情
報をRFUに与えればよく利便性が増す。インボルーシ
ョン関数でない場合にはRFU部で関数と逆関数をそれ
ぞれ実現し暗号化時と復号化時に使い分けるか両方回路
構成しデータパスを切り替える必要がある。
RFUがデータパス部に直接挿入されている事が特徴で
ある。関数F部1の出力と排他的和を取る図1の例と異
なりデー夕に依存した処理が可能となり暗号の強度が増
すという利点を持つ。RFUにおいてインヴォルーショ
ン関数といわれる逆関数が関数と同型である関数を実現
すれば暗号化、および復号化において同図の回路構成情
報をRFUに与えればよく利便性が増す。インボルーシ
ョン関数でない場合にはRFU部で関数と逆関数をそれ
ぞれ実現し暗号化時と復号化時に使い分けるか両方回路
構成しデータパスを切り替える必要がある。
【0050】図10は、第4の実施形態の暗号処理用半
導体集積回路を示すブロック図である。この暗号処理用
半導体集積回路は、図9のランダマイズ処理手段とし
て、クロスバー15を設けている。本実施形態のクロス
バー15は、32ビットの入力に対し32ビットの出力
を行うが、その入力ビットの順番をランダマイズして出
力を行うようにしてある。例えば、入力の1ビット目は
5ビット目の出力にし、2ビット目は18ビット目の出
力にする、といったことを行なう。このランダマイズ化
は回路構成情報を入力することにより行う。この回路構
成情報の入力は、まずバッファ151に一時的に保持さ
れ、シリパラ部153でシリアル信号をパラレル信号に
変換して、ラッチ部155で同期を取り所定のタイミン
グでクロスバー15のデコード部に出力するようにす
る。
導体集積回路を示すブロック図である。この暗号処理用
半導体集積回路は、図9のランダマイズ処理手段とし
て、クロスバー15を設けている。本実施形態のクロス
バー15は、32ビットの入力に対し32ビットの出力
を行うが、その入力ビットの順番をランダマイズして出
力を行うようにしてある。例えば、入力の1ビット目は
5ビット目の出力にし、2ビット目は18ビット目の出
力にする、といったことを行なう。このランダマイズ化
は回路構成情報を入力することにより行う。この回路構
成情報の入力は、まずバッファ151に一時的に保持さ
れ、シリパラ部153でシリアル信号をパラレル信号に
変換して、ラッチ部155で同期を取り所定のタイミン
グでクロスバー15のデコード部に出力するようにす
る。
【0051】本実施形態のようにクロスバーを用いるこ
とにより高速に暗号化処理を行うことができる。また、
本実施形態のようにクロスバーを用いれば、前述のイン
ボルーション関数になるため、インボルーション関数か
否かの判断の必要がなくなるという利点もある。
とにより高速に暗号化処理を行うことができる。また、
本実施形態のようにクロスバーを用いれば、前述のイン
ボルーション関数になるため、インボルーション関数か
否かの判断の必要がなくなるという利点もある。
【0052】図11は、第5の実施形態の暗号処理用半
導体集積回路を示すブロック図である。この暗号処理用
半導体集積回路は、ランダマイズ処理手段としてRFU
17を用い、更に、関数F部についてもRFU19を用
いている。このため、回路がより可塑的となっている。
従って、自由度が高くなるため秘密保持性を向上させる
ことが出来る。また回路構成用メモリをリセット時に特
有の値を取るように設計することにより電源投入時の固
定的暗号化も可能である。
導体集積回路を示すブロック図である。この暗号処理用
半導体集積回路は、ランダマイズ処理手段としてRFU
17を用い、更に、関数F部についてもRFU19を用
いている。このため、回路がより可塑的となっている。
従って、自由度が高くなるため秘密保持性を向上させる
ことが出来る。また回路構成用メモリをリセット時に特
有の値を取るように設計することにより電源投入時の固
定的暗号化も可能である。
【0053】図12は、本実施形態の暗号アルゴリズム
変更方法を説明するための図面である。本実施形態で
は、リコンフィギュラブル暗号チップA21とリコンフ
ィギュラブル暗号チップB23の間の通信において暗号
アルゴリズムを使用することとする。まず、リコンフィ
ギュラブル暗号チップA21に暗号化されていない文
(平文)が入力される。リコンフィギュラブル暗号チッ
プA21は暗号化を行う。この暗号化には、回路構成情
報27及び鍵29に基づいて行う。この回路構成情報2
7及び鍵29は送信側、すなわち、リコンフィギュラブ
ル暗号チップA21が作成してもよいし、受信側、すな
わち、リコンフィギュラブル復号チップA21が指定し
た回路構成情報27及び鍵29に基づいて暗号化するよ
うにしてもよい。後者の場合には、リコンフィギュラブ
ル暗号チップA21は回路構成情報27及び鍵29をリ
コンフィギュラブル暗号チップB23から入力を行い、
その後に暗号化を行う。暗号化された暗号テキスト31
はリコンフィギュラブル復号チップA23に送信され
る。リコンフィギュラブル暗号チップA21が回路構成
情報27及び鍵29も併せて送信される。
変更方法を説明するための図面である。本実施形態で
は、リコンフィギュラブル暗号チップA21とリコンフ
ィギュラブル暗号チップB23の間の通信において暗号
アルゴリズムを使用することとする。まず、リコンフィ
ギュラブル暗号チップA21に暗号化されていない文
(平文)が入力される。リコンフィギュラブル暗号チッ
プA21は暗号化を行う。この暗号化には、回路構成情
報27及び鍵29に基づいて行う。この回路構成情報2
7及び鍵29は送信側、すなわち、リコンフィギュラブ
ル暗号チップA21が作成してもよいし、受信側、すな
わち、リコンフィギュラブル復号チップA21が指定し
た回路構成情報27及び鍵29に基づいて暗号化するよ
うにしてもよい。後者の場合には、リコンフィギュラブ
ル暗号チップA21は回路構成情報27及び鍵29をリ
コンフィギュラブル暗号チップB23から入力を行い、
その後に暗号化を行う。暗号化された暗号テキスト31
はリコンフィギュラブル復号チップA23に送信され
る。リコンフィギュラブル暗号チップA21が回路構成
情報27及び鍵29も併せて送信される。
【0054】この方法では、回路構成情報を用いてラン
ダマイズ処理を可変にすることにより、暗号アルゴリズ
ムを変更して暗号の秘密保持性を向上させることが出来
る。また、回路構成情報を全て外部より入力する為、自
由度が増す事である。一方、回路構成情報が膨大となり
送信に時間がかかったり送信中にデー夕が破損する確率
が増大したりするという問題点がある。この場合には、
図5や図6で説明したような手法を用いることで、デー
ター通信量を減少させることもできる。
ダマイズ処理を可変にすることにより、暗号アルゴリズ
ムを変更して暗号の秘密保持性を向上させることが出来
る。また、回路構成情報を全て外部より入力する為、自
由度が増す事である。一方、回路構成情報が膨大となり
送信に時間がかかったり送信中にデー夕が破損する確率
が増大したりするという問題点がある。この場合には、
図5や図6で説明したような手法を用いることで、デー
ター通信量を減少させることもできる。
【0055】図13は、デー夕通信では無く蓄積メディ
アに応用した例を示した図である。例えば、映画等のコ
ンテンツに対して暗号化処理を行う場合には、そのコン
テンツの一部に回路構成情報や鍵情報を挿入して送信す
ることができる。この場合には、受信側のデコーダが回
路構成情報や鍵情報を抽出して、その後のコンテンツの
復号化処理を行うようにする。このように、RFU情報
をメディアの一部に記憶させる事により暗号化、復号化
が可能となる。また、図7のようなチップ横成の場合に
は変更アルゴリズム部分をメディアの一部に記憶させる
ようにすればよい。
アに応用した例を示した図である。例えば、映画等のコ
ンテンツに対して暗号化処理を行う場合には、そのコン
テンツの一部に回路構成情報や鍵情報を挿入して送信す
ることができる。この場合には、受信側のデコーダが回
路構成情報や鍵情報を抽出して、その後のコンテンツの
復号化処理を行うようにする。このように、RFU情報
をメディアの一部に記憶させる事により暗号化、復号化
が可能となる。また、図7のようなチップ横成の場合に
は変更アルゴリズム部分をメディアの一部に記憶させる
ようにすればよい。
【0056】
【発明の効果】以上説明したように本発明に係る暗号処
理用半導体集積回路及び暗号アルゴリズム変更方法よれ
ば、高速な暗号処理かつ実装面積を低減しつつ、暗号の
秘密保持特性の大幅な向上を図ることができる。
理用半導体集積回路及び暗号アルゴリズム変更方法よれ
ば、高速な暗号処理かつ実装面積を低減しつつ、暗号の
秘密保持特性の大幅な向上を図ることができる。
【図1】第1の実施形態の暗号処理用半導体集積回路を
示すブロック図である。
示すブロック図である。
【図2】ランダマイズ処理手段5の第1の実施例を示し
たブロック図である。
たブロック図である。
【図3】リコンフィギュラブルファンクションユニット
(RFU)の例を説明するための図である。
(RFU)の例を説明するための図である。
【図4】ランダマイズ処理手段5の第2の実施例を示し
たブロック図である。
たブロック図である。
【図5】ランダマイズ処理手段5の第3の実施例を示し
たブロック図である。
たブロック図である。
【図6】ランダマイズ処理手段5の第4の実施例を示し
たブロック図である。
たブロック図である。
【図7】ランダマイズ処理手段5の第5の実施例を示し
たブロック図である。
たブロック図である。
【図8】第2の実施形態の暗号処理用半導体集積回路を
示すブロック図である。
示すブロック図である。
【図9】第3の実施形態の暗号処理用半導体集積回路を
示すブロック図である。
示すブロック図である。
【図10】第4の実施形態の暗号処理用半導体集積回路
を示すブロック図である。
を示すブロック図である。
【図11】第5の実施形態の暗号処理用半導体集積回路
を示すブロック図である。
を示すブロック図である。
【図12】暗号アルゴリズム変更方法を説明するための
図である。
図である。
【図13】回路構成情報等の書き込みの蓄積メディアで
の例を説明するための図である。
の例を説明するための図である。
【図14】従来の暗号処理用半導体集積回路を示すブロ
ック図である。
ック図である。
【図15】DESのF関数を示すブロック図である。
1 関数F 3 排他的論理和回路 5 ランダマイズ処理手段 7 2入力2出力RFU 9 2入力2出力LUT 11 セレクタ 13 レジスタ 15 クロスバー 17,19 32入力32出力RFU 21 リコンフィギュラブル暗号チップ 23 リコンフィギュラブル復号チップ 25 平文 27 回路構成情報 29 鍵 31 暗号テキスト 51 8入力6出力RFU 53 回路情報ROM 54 リコンフィギュラブル暗号回路 55 内部タイマー 56 アドレス発生部 57 プログラムRAM 58 プログラムROM 59 MPU 71 マルチプレクサ 91 4ビットLUT 101 関数F 151 バッファ 152 シリパラ変換部 153 ラッチ部 154 デコーダ(DEC)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 加藤 岳久 東京都府中市東芝町1番地 株式会社東芝 府中工場内 (72)発明者 遠藤 直樹 東京都府中市東芝町1番地 株式会社東芝 府中工場内 (72)発明者 増田 篤司 神奈川県川崎市幸区堀川町580番1号 株 式会社東芝半導体システム技術センター内 (72)発明者 西 宏晃 神奈川県川崎市幸区堀川町580番1号 株 式会社東芝半導体システム技術センター内 (72)発明者 大内 和則 神奈川県川崎市幸区小向東芝町1 株式会 社東芝研究開発センター内 (72)発明者 関根 優年 神奈川県川崎市幸区小向東芝町1 株式会 社東芝研究開発センター内
Claims (11)
- 【請求項1】 入力データを鍵データに基づいて暗号処
理を行う暗号処理用半導体集積回路において、 ランダマイズ処理のアルゴリズムを決定する回路構成情
報に基づいて、前記入力データのランダマイズ処理を行
うランダマイズ処理手段を有することを特徴とする暗号
処理用半導体集積回路。 - 【請求項2】 入力データを2分し、鍵データに基づい
て暗号処理を行う暗号処理用半導体集積回路において、 前記入力データを2分した一方の入力データを、ランダ
マイズ処理のアルゴリズムを決定する回路構成情報に基
づいてランダマイズ処理を行うランダマイズ処理手段
と、 前記ランダマイズ処理を行ったデータを入力し、暗号処
理を行う関数F部と、前記入力データを2分した他方と
前記関数F部の出力データを入力して、双方の排他的論
理和を出力する排他的論理和回路と、 を有することを特徴とする暗号処理用半導体集積回路。 - 【請求項3】 入力データを2分し、鍵データに基づい
て暗号処理を行う暗号処理用半導体集積回路において、 入力したデータを、ランダマイズ処理のアルゴリズムを
決定する回路構成情報に基づいてランダマイズ処理を行
うランダマイズ処理手段と、 前記ランダマイズ処理を行ったデータを入力し、暗号処
理を行う関数F部と、前記入力データの他方と前記関数
F部の出力データを入力して、双方の排他的論理和を出
力する排他的論理和回路と、 前記入力データを2分した一方のデータと前記排他的論
理和回路が出力したデータとを選択して出力する第1の
セレクタと、 この第1のセレクタが出力したデータを保持する第1の
レジスタと、 前記入力データを2分した他方のデータと前記第1のレ
ジスタが出力したデータとを選択して出力する第2のセ
レクタと、 この第2のセレクタが出力したデータを保持する第2の
レジスタと、 を有し、繰り返して前記関数F部を利用して暗号処理を
行うことを特徴とする暗号処理用半導体集積回路。 - 【請求項4】 前記ランダマイズ処理手段は、 ランダマイズ処理のアルゴリズムを決定する回路構成情
報に基づいて、回路の配置を行うリコンフィギュラブル
回路で構成することを特徴とする請求項1乃至3のいず
れかに記載の暗号処理用半導体集積回路。 - 【請求項5】 前記ランダマイズ処理手段は、 入力されたデータに対する出力を予めテーブル化してお
き、対応するデータを出力するルックアップテーブル回
路で構成することを特徴とする請求項1乃至3のいずれ
かに記載の暗号処理用半導体集積回路。 - 【請求項6】 前記ランダマイズ処理手段は、 ランダマイズ処理のアルゴリズムを決定する回路構成情
報としてROMアドレス信号を入力し、そのアドレスに
示す回路構成情報を出力する回路情報ROMと、 この回路構成情報を入力して、ランダマイズ処理を行う
リコンフィギュラブル回路と、 を備えることを特徴とする請求項1乃至3のいずれかに
記載の暗号処理用半導体集積回路。 - 【請求項7】 前記ランダマイズ処理手段は、 ランダマイズ処理のアルゴリズムを決定する回路構成情
報としてタイマー調整信号を入力し、送信チップ側との
カウンタの同期を取る内部タイマーと、 この内部タイマーのカウンタ値からアドレスを発生する
アドレス発生部と、 この発生したアドレス基づき、そのアドレスに示す回路
構成情報を出力する回路情報ROMと、 この回路構成情報を入力して、ランダマイズ処理を行う
リコンフィギュラブル回路と、 を備えることを特徴とする請求項1乃至3のいずれかに
記載の暗号処理用半導体集積回路。 - 【請求項8】 前記ランダマイズ処理手段は、 ランダマイズ処理のアルゴリズムを決定する回路構成情
報としてRAM書き換え信号に基づいてプログラムを出
力するプログラムRAMと、 固定したアルゴリズムのプログラムを出力するプログラ
ムROMと、 これらプログラムRAMやプログラムROMが出力した
プログラムを実行してランダマイズ処理を行うMPU
と、 を備えることを特徴とする請求項1乃至3のいずれかに
記載の暗号処理用半導体集積回路。 - 【請求項9】 前記ランダマイズ処理手段は、 入力ビットの順番をランダマイズして出力を行うクロス
バーで構成することを特徴とする請求項1乃至3のいず
れかに記載の暗号処理用半導体集積回路。 - 【請求項10】 前記ランダマイズ処理手段は、 前記鍵データに基づいて、暗号処理を行うことを特徴と
する請求項4乃至9のいずれかに記載の暗号処理用半導
体集積回路。 - 【請求項11】 暗号チップと、復号チップとの間で暗
号のアルゴリズムを変更する方法であって、 前記暗号チップが平文を入力し、 前記暗号チップがランダマイズ処理のアルゴリズムを決
定する回路構成情報に基づいて回路構成を行い、その回
路構成で暗号化処理を行い、 前記暗号チップが処理を行った暗号データ出力し、 前記出力した暗号データを前記復号チップが入力し、 前記復号チップが前記回路構成情報に基づいて回路構成
を行い、その回路構成で復号化を行い、 前記復号チップが復号化した平文を出力することを特徴
とする暗号アルゴリズム変更方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9249230A JPH1185018A (ja) | 1997-09-12 | 1997-09-12 | 暗号処理用半導体集積回路及び暗号アルゴリズム変更方法 |
| US09/151,774 US6327654B1 (en) | 1997-09-12 | 1998-09-11 | Semiconductor integrated circuit for cryptographic process and encryption algorithm alternating method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9249230A JPH1185018A (ja) | 1997-09-12 | 1997-09-12 | 暗号処理用半導体集積回路及び暗号アルゴリズム変更方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1185018A true JPH1185018A (ja) | 1999-03-30 |
Family
ID=17189868
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9249230A Pending JPH1185018A (ja) | 1997-09-12 | 1997-09-12 | 暗号処理用半導体集積回路及び暗号アルゴリズム変更方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US6327654B1 (ja) |
| JP (1) | JPH1185018A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100377173B1 (ko) * | 2000-05-25 | 2003-03-26 | 주식회사 하이닉스반도체 | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치 |
| JP2007094377A (ja) * | 2005-08-31 | 2007-04-12 | Canon Inc | 暗号処理装置 |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6493825B1 (en) * | 1998-06-29 | 2002-12-10 | Emc Corporation | Authentication of a host processor requesting service in a data processing network |
| JP2001339719A (ja) * | 2000-05-24 | 2001-12-07 | Thine Electronics Inc | ディジタル画像伝送用符号化器 |
| JP3447053B2 (ja) * | 2001-03-09 | 2003-09-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 組み合わせ回路、該組み合わせ回路を使用する符号化装置、復号装置、および半導体デバイス |
| JP4986206B2 (ja) * | 2006-02-22 | 2012-07-25 | 株式会社日立製作所 | 暗号処理方法及び暗号処理装置 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5740249A (en) * | 1996-04-09 | 1998-04-14 | Kabushiki Kaisha Toshiba | Encryption apparatus and method capable of controlling encryption process in accordance with an internal state |
| US6031911A (en) * | 1996-07-18 | 2000-02-29 | Entrust Technologies, Ltd. | Practical S box design |
| US5949884A (en) * | 1996-11-07 | 1999-09-07 | Entrust Technologies, Ltd. | Design principles of the shade cipher |
| CA2302784A1 (en) * | 1997-09-17 | 1999-03-25 | Frank C. Luyster | Improved block cipher method |
-
1997
- 1997-09-12 JP JP9249230A patent/JPH1185018A/ja active Pending
-
1998
- 1998-09-11 US US09/151,774 patent/US6327654B1/en not_active Expired - Fee Related
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100377173B1 (ko) * | 2000-05-25 | 2003-03-26 | 주식회사 하이닉스반도체 | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치 |
| JP2007094377A (ja) * | 2005-08-31 | 2007-04-12 | Canon Inc | 暗号処理装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| US6327654B1 (en) | 2001-12-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7295671B2 (en) | Advanced encryption standard (AES) hardware cryptographic engine | |
| EP0802653B1 (en) | Multi-cycle non-parallel data encryption engine | |
| US5345508A (en) | Method and apparatus for variable-overhead cached encryption | |
| JP6084757B2 (ja) | 可変入力長調整可能暗号の構造および使用 | |
| US20110255689A1 (en) | Multiple-mode cryptographic module usable with memory controllers | |
| GB2447552A (en) | Galois/Counter Mode Advanced Encryption Standard authenticated encrypted messaging with pre-calculation of round keys | |
| CN109981249B (zh) | 基于拉链式动态散列和nlfsr的加密解密方法及装置 | |
| JP2628660B2 (ja) | 暗号化/復号方法および装置 | |
| WO1995006373A1 (en) | Method and apparatus for decryption using cache storage | |
| US8122075B2 (en) | Pseudorandom number generator and encryption device using the same | |
| US7447311B2 (en) | Method of designing optimum encryption function and optimized encryption apparatus in a mobile communication system | |
| EP1351430B1 (en) | Expansion key generating device, encryption device and encryption system | |
| US6873707B1 (en) | Hardware-based encryption/decryption employing cycle stealing | |
| JP3769804B2 (ja) | 解読化方法および電子機器 | |
| JPH1185018A (ja) | 暗号処理用半導体集積回路及び暗号アルゴリズム変更方法 | |
| Venkatesha et al. | AES based algorithm for image encryption and decryption | |
| Landge et al. | VHDL based Blowfish implementation for secured embedded system design | |
| Naidu et al. | Design of high throughput and area efficient advanced encryption system core | |
| JPH04335730A (ja) | 暗号送信装置、暗号受信装置、暗号通信システム | |
| JPH09200196A (ja) | 暗号通信方式 | |
| Abdulsamad et al. | Analysis of the Cryptography Methods for Design of Crypto-Processor | |
| US7583800B2 (en) | Encryption apparatus and method in a wireless communications system | |
| KR100226867B1 (ko) | 무선 통신의 스트림 암호 시스템 | |
| Srivaishnavi et al. | Design and Implementation of Efficient Block Cipher | |
| US20240187402A1 (en) | AES-GCM Engine Optimized for Execute-in-Place Authenticated Decryption |