JP2007104731A - Encryption key management apparatus - Google Patents
Encryption key management apparatus Download PDFInfo
- Publication number
- JP2007104731A JP2007104731A JP2007011503A JP2007011503A JP2007104731A JP 2007104731 A JP2007104731 A JP 2007104731A JP 2007011503 A JP2007011503 A JP 2007011503A JP 2007011503 A JP2007011503 A JP 2007011503A JP 2007104731 A JP2007104731 A JP 2007104731A
- Authority
- JP
- Japan
- Prior art keywords
- encryption key
- initial value
- personal computer
- key
- encryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は、カオス系列の疑似乱数を発生する疑似乱数発生器を有する暗号キーを管理する暗号キー管理装置に関する。 The present invention relates to an encryption key management apparatus that manages an encryption key having a pseudo random number generator that generates a pseudo random number of a chaotic sequence.
近年、キーボード、マウス、スピーカ、モデム、プリンタなどの比較的低速な周辺機器とパーソナルコンピュータとの相互間の接続を全て同一のコネクタとケーブルで統一したインターフェイスとして、USB(Universal Serial Bus)が用いられている。このUSBでは、パーソナルコンピュータと周辺機器とのデータ転送速度は、例えば1.5Mbpsであり比較的低速である。 In recent years, USB (Universal Serial Bus) has been used as an interface that unifies the connections between personal computers and relatively low-speed peripheral devices such as keyboards, mice, speakers, modems, and printers with the same connectors and cables. ing. In this USB, the data transfer speed between the personal computer and the peripheral device is, for example, 1.5 Mbps, which is relatively low.
このようなUSB規格に準じたパーソナルコンピュータと周辺機器とを用いてデータの暗号化処理を行う暗号化装置が知られている。この暗号化装置は、キー情報が登録されたキー情報部と、このキー情報部が装着され且つ暗号アルゴリズムを有するパーソナルコンピュータとから構成されている。 2. Description of the Related Art An encryption device that performs data encryption processing using a personal computer and peripheral devices conforming to the USB standard is known. This encryption apparatus includes a key information part in which key information is registered, and a personal computer to which the key information part is attached and which has an encryption algorithm.
キー情報部には、キー情報が購入時に個人により登録されたキー情報部、あるいは、工場出荷時にキー情報が登録されたキー情報部等がある。パーソナルコンピュータは、キー情報部が装着されると、キー情報部からのキー情報を読み出して、暗号アルゴリズムを用いてキー情報から暗号鍵を生成し、この暗号鍵を用いて平成文データを暗号化して暗号データを生成していた。
しかしながら、従来の暗号化装置にあっては、パーソナルコンピュータ内に暗号アルゴリズムが常駐しているため、暗号アルゴリズムによる暗号鍵が第三者によって容易に解読されやすくなる。このため、個人のパーソナルコンピュータ上の平文データが、第三者によって容易に閲覧されてしまうという課題を有していた。 However, in the conventional encryption apparatus, since the encryption algorithm resides in the personal computer, the encryption key based on the encryption algorithm is easily deciphered by a third party. For this reason, there has been a problem that plain text data on a personal computer is easily viewed by a third party.
一方、次世代に向けたマルチユーザ情報通信においては、秘匿性に優れ、妨害波や干渉波に対する排除能力が高いスペクトル拡散通信方式を用いた符号分割多重方式(CDMA:Code Division Multiple Access )が主流となる。このスペクトル拡散通信方式では、疑似乱数を発生することが可能な疑似乱数発生器がキーデバイスとなる。真の物理雑音は再現性がないから、産業技術とはなりえない。そこで、人為的に再現でき、かつ、疑似乱数とみなせる2値系列を多種類発生可能な疑似乱数発生器の実現が望まれる。 On the other hand, in multi-user information communication for the next generation, code division multiple access (CDMA) using a spread spectrum communication method that is excellent in secrecy and has high ability to eliminate interference waves and interference waves is mainstream. It becomes. In this spread spectrum communication system, a pseudo random number generator capable of generating pseudo random numbers is a key device. True physical noise is not reproducible and cannot be industrial technology. Therefore, it is desired to realize a pseudo-random number generator that can artificially reproduce and generate many types of binary sequences that can be regarded as pseudo-random numbers.
疑似雑音は疑似乱数と同じ意味である。真の乱数は、たとえばコイン投げやサイコロ振りのように再現性がないから、やはり産業技術とはなり得ない。一方、予測不可能な数列でないと、十分なスクランブルや十分な拡散は実現し得ない。考え方の上で矛盾することを産業技術として実現していかねば、理想的な疑似乱数発生器を実現することはできない。 Pseudo-noise has the same meaning as pseudo-random numbers. True random numbers cannot be industrial technology because they are not reproducible, such as coin throwing and dice swinging. On the other hand, sufficient scramble and sufficient spreading cannot be realized unless the sequence is unpredictable. An ideal pseudo-random number generator cannot be realized without realizing contradictions in terms of thinking as industrial technology.
ここで、カオスは、あらゆる周波数の波を包含し、カオスと乱数は極めて近い関係にあることが知られている。したがって、カオスを周期時系列化することができれば、疑似乱数として利用可能であることがわかっている。このため、カオス系列の擬似乱数を発生する擬似乱数発生器を用いて、データを暗号化する暗号化処理が望まれていた。 Here, chaos includes waves of all frequencies, and it is known that chaos and random numbers have a very close relationship. Therefore, it is known that if chaos can be time-series, it can be used as a pseudo-random number. For this reason, an encryption process for encrypting data using a pseudorandom number generator that generates a pseudorandom number of a chaotic sequence has been desired.
本発明は、カオス系列の擬似乱数を発生する擬似乱数発生器を用いた暗号アルゴリズムを第三者に解読されにくくして、個人のパーソナルコンピュータ上のデータを第三者によって容易に閲覧されるのを防止することができる暗号キーを管理することができる暗号キー管理装置を提供することにある。 The present invention makes it difficult for a third party to decrypt an encryption algorithm using a pseudo-random number generator that generates a pseudo-random number of a chaotic sequence, so that data on a personal computer can be easily viewed by a third party. It is an object of the present invention to provide an encryption key management apparatus capable of managing encryption keys that can prevent the above-described problem.
本発明に係る暗号キー管理装置は、上記課題を解決するために、請求項1記載の発明は、外部装置に着脱自在に構成された暗号キーを管理する暗号キー管理装置であって、前記外部装置は、暗号キー毎に暗号キー番号とカオス関数の初期値とを対応付けて記憶した初期値テーブルと、前記暗号キーが前記外部装置に装着されたとき、当該暗号キーの番号に対応する前記初期値を前記初期値テーブルから読み出して前記暗号キーに送信する送信部とを備え、前記暗号キーは、前記外部装置からの前記初期値を記憶するメモリと、このメモリに記憶された前記初期値とデータのデータサイズとカオス関数とに基づいてカオス系列の擬似乱数を発生する擬似乱数発生器とを備えることを特徴とする。 In order to solve the above-described problems, an encryption key management device according to the present invention is an encryption key management device that manages an encryption key configured to be detachable from an external device. An apparatus includes an initial value table storing an encryption key number and an initial value of a chaos function in association with each encryption key, and the encryption key corresponding to the encryption key number when the encryption key is attached to the external device. A transmission unit that reads an initial value from the initial value table and transmits the initial value to the encryption key. The encryption key includes a memory that stores the initial value from the external device, and the initial value stored in the memory. And a pseudo-random number generator for generating a pseudo-random number of a chaotic sequence based on the data size of the data and a chaotic function.
請求項2記載の発明は、請求項1において、前記外部装置は、前記暗号キー毎に前記暗号キー番号と前記初期値とを入力する入力部と、この入力部で入力された前記暗号キー毎の前記暗号キー番号と前記初期値とを前記初期値テーブルに記憶させる記憶制御部とを備えることを特徴とする。 According to a second aspect of the present invention, in the first aspect, the external device includes an input unit that inputs the cryptographic key number and the initial value for each cryptographic key, and each cryptographic key that is input by the input unit. And a storage control unit for storing the encryption key number and the initial value in the initial value table.
本発明の請求項1記載の発明によれば、外部装置は、暗号キーが装着されたとき、当該暗号キーの番号に対応する初期値を初期値テーブルから読み出して暗号キーに送信し、暗号キーは、外部装置からの初期値をメモリに記憶し、メモリに記憶された初期値とデータのデータサイズとカオス関数とに基づいてカオス系列の擬似乱数を発生する。従って、外部装置から暗号キー毎に暗号キー内のメモリに暗号キーに対応した初期値を登録することができる。 According to the first aspect of the present invention, when an encryption key is attached, the external device reads an initial value corresponding to the number of the encryption key from the initial value table and transmits it to the encryption key. Stores an initial value from an external device in a memory, and generates a pseudo random number of a chaotic sequence based on the initial value stored in the memory, the data size of the data, and a chaos function. Accordingly, an initial value corresponding to the encryption key can be registered for each encryption key from the external device in the memory in the encryption key.
本発明の請求項2記載の発明によれば、入力部が暗号キー毎に暗号キー番号と初期値とを入力すると、記憶制御部は、入力部で入力された暗号キー毎の暗号キー番号と初期値とを初期値テーブルに記憶させるので、作成された初期値テーブルにより、暗号キー毎に初期値を管理することができる。 According to the second aspect of the present invention, when the input unit inputs the encryption key number and the initial value for each encryption key, the storage control unit receives the encryption key number for each encryption key input by the input unit and Since the initial value is stored in the initial value table, the initial value can be managed for each encryption key using the generated initial value table.
以下に、本発明に係る暗号キー管理装置の実施の形態を図面を参照して詳細に説明する。なお、請求項1及び請求項2の発明に対応する発明の実施の形態は、〔実施例4〕に対応し、この実施例以外の実施例は参考であり、請求項1及び請求項2の発明に対応する発明の実施の形態ではない。
Embodiments of an encryption key management apparatus according to the present invention will be described below in detail with reference to the drawings. The embodiment of the invention corresponding to the inventions of
図1は本発明に係る第1の実施の形態の暗号化装置を示す構成ブロック図である。図1に示す暗号化装置は、平文データを暗号鍵を用いて暗号化するパーソナルコンピュータ2(本発明の外部装置に対応)と、このパーソナルコンピュータ2に着脱自在に構成され且つUSB規格に適合したUSBキー(本発明の暗号キーに対応)1とを有して構成されている。なお、外部装置としては、パーソナルコンピュータに代えて、携帯電話等の携帯端末であっても良い。 FIG. 1 is a block diagram showing a configuration of an encryption apparatus according to a first embodiment of the present invention. The encryption device shown in FIG. 1 is configured to be detachable from the personal computer 2 (corresponding to the external device of the present invention) that encrypts plaintext data using an encryption key, and conforms to the USB standard. And a USB key (corresponding to the encryption key of the present invention) 1. The external device may be a mobile terminal such as a mobile phone instead of a personal computer.
USBキー1は、携帯可能で個人が所有し、このUSBキー1にはキー突起部10が形成され、このキー突起部10がパーソナルコンピュータ2に形成されたコンピュータ溝部20に挿入されることで、USBキー1とパーソナルコンピュータ2とが電気的に接続され、両者間で相互にデータ通信が行えるようになっている。
The
USBキー1は、パーソナルコンピュータ2との間でデータの入出力を司る入出力部11、USBコントローラ12、メモリ13、擬似乱数発生器14を有して構成されている。
The
擬似乱数発生器14は、平文データのデータサイズとカオス関数とこのカオス関数の初期値とに基づいてカオス系列の擬似乱数を発生する。このカオス系列の擬似乱数について説明する。乱数は不規則に発生し、カオスの時系列波形も不規則な振る舞いをする。このため、カオスの時系列波形を用いて、カオス系列の擬似乱数を発生させている。
The pseudo
カオスの時系列波形を生成し且つカオスの性質をもつ基本モデルである式の一つに、ロジスティック写像の式がある。このロジスティック写像の式は、式(1)に示すような漸化式で表される。 One of the equations that generate a chaotic time-series waveform and has a chaotic property is a logistic mapping equation. This logistic map equation is expressed by a recurrence formula as shown in equation (1).
x(t+1)=4x(t){1−x(t)}
x(t)=x(t+1) ・・・(1)
ここで、x(t)をx(t+1)に移していくので、写像と呼ぶ。tは離散時間であり、x(t)は前述したカオス関数に相当している。式(1)に初期値x(0)を与え、離散時間tを0から一定時間Δt毎に(離散的)例えば100まで変化させると、図2に示すようなロジスティック写像カオスの時系列波形、すなわち、タイムシリーズ{x(t)−t}が得られる。図2において、一定時間Δt毎のx(t)の値がプロットされている。
x (t + 1) = 4x (t) {1-x (t)}
x (t) = x (t + 1) (1)
Here, since x (t) is moved to x (t + 1), it is called mapping. t is a discrete time, and x (t) corresponds to the chaotic function described above. When an initial value x (0) is given to Expression (1) and the discrete time t is changed from 0 to a constant time Δt (discretely), for example, 100, a time series waveform of a logistic map chaos as shown in FIG. That is, a time series {x (t) -t} is obtained. In FIG. 2, the value of x (t) for each fixed time Δt is plotted.
このロジスティック写像の式は、値が増加/減少を繰り返す時系列波形であり、初期値x(0)のわずかな変化で時系列波形の様子が大きく変化する。すなわち、ロジスティック写像の式は、初期値x(0)に敏感に依存する。このため、初期値x(0)を変えることにより、複数種類のカオス系列の擬似乱数を発生させることができ、これによって、複数種類のUSBキー1を作製できる。
This logistic mapping equation is a time-series waveform in which the value repeatedly increases / decreases, and the state of the time-series waveform changes greatly with a slight change in the initial value x (0). In other words, the logistic map equation is sensitively dependent on the initial value x (0). For this reason, by changing the initial value x (0), it is possible to generate a plurality of types of pseudorandom numbers of chaotic sequences, whereby a plurality of types of
また、ロジスティック写像の式は、入出力特性が非線形であり、非線形な振る舞いをする。さらに、x(t)は、同じ値を2度と取らず、不可逆性がある。このため、x(t)の値を単純に予測できないため、秘匿性を高くすることができる。 In addition, the logistic map equation has nonlinear input / output characteristics and behaves nonlinearly. Furthermore, x (t) does not take the same value twice and is irreversible. For this reason, since the value of x (t) cannot be simply predicted, confidentiality can be increased.
なお、擬似乱数発生器の具体的な回路構成については、後に詳細に説明するものとする。 The specific circuit configuration of the pseudo random number generator will be described later in detail.
メモリ13は、前記カオス関数の初期値とキーを所有する個人のパスワードとを記憶している。USBコントローラ12(本発明の送受信制御部に対応)は、各部を制御し、USBキー1がパーソナルコンピュータ2に装着されたとき、パーソナルコンピュータ2から平文データのデータサイズを受信し、擬似乱数発生器14で発生したカオス系列の擬似乱数を暗号鍵としてパーソナルコンピュータ2に送信する。
The
パーソナルコンピュータ2は、USBキー1が装着されたとき平文データのデータサイズをUSBキー1に送信し、USBキー1から送られてくるカオス系列の擬似乱数を暗号鍵として用いて平文データを暗号化する。パーソナルコンピュータ2は、USBキー1との間でデータの入出力を司る入出力部21、コントローラ22、入力部3から入力された個人のパスワードや各種のデータ等を記憶するメモリ23、排他的論理和回路(以下、XORと略称する。)24、送信部25を有して構成されている。このパーソナルコンピュータ2には、平文データやその他の各種のデータ等を入力する入力部3及びデータを画面上に表示する表示部4が接続されている。
The
コントローラ22は、USBキー1が装着されたときに、USBキー1から装着信号を受けて、平文データのバイト数(本発明のデータサイズに対応)をUSBキー1に送信し、USBキー1から疑似乱数発生器14で得られた擬似乱数を受信する。また、コントローラ22は、入力部3から入力されたパスワードとUSBキー1に記憶されたパスワードとを照合し、両方のパスワードが一致したときに暗号化処理を許可するようになっている。XOR24は、コントローラ22からの擬似乱数と平文データとの排他的論理和演算を実行することにより暗号化を行い、得られた暗号データを送信部25に出力する。
When the
次に、このように構成された暗号キーを含む暗号化装置の動作を図1乃至図4を参照して詳細に説明する。図3は擬似乱数を鍵として用いた暗号化の具体例を説明する図である。図4は送信側における暗号化処理を説明するシーケンス図である。 Next, the operation of the encryption apparatus including the encryption key configured as described above will be described in detail with reference to FIGS. FIG. 3 is a diagram for explaining a specific example of encryption using a pseudo-random number as a key. FIG. 4 is a sequence diagram illustrating encryption processing on the transmission side.
まず、USBキー1をパーソナルコンピュータ2に装着し(ステップS1)、パーソナルコンピュータ2を起動させる(ステップS2)。そして、入力部3からユーザのパスワードを入力する(ステップS3)。
First, the
次に、パーソナルコンピュータ2は、USBキー1に対してパスワードの要求を行う(d1)。USBキー1では、パスワードの要求に応答して、USBコントローラ12がメモリ13からパスワードを読み出し、そのパスワードをパーソナルコンピュータ2に送信する(d2)。
Next, the
次に、パーソナルコンピュータ2内のコントローラ22は、入力部3から入力されたパスワードがUSBキー1に記憶されたパスワードと一致したかどうかを判定する(ステップS5)。両方のパスワードが一致しないときには、暗号化処理を行わず、両方のパスワードが一致したときには、暗号化処理を許可し、USBキー1へ平文データのバイト数を送信する(d3)。
Next, the
USBキー1では、擬似乱数発生器14が、受信した平文データのバイト数とカオス関数とこのカオス関数の初期値とに基づいてカオス系列の擬似乱数を発生する(ステップS7)。そして、USBコントローラ12は、疑似乱数発生器14で得られたカオス系列の擬似乱数をパーソナルコンピュータ2に送信する(d4)。
In the
パーソナルコンピュータ2では、XOR24が、コントローラ22からの擬似乱数と平文データとの排他的論理和演算を実行することにより暗号化を行い、得られた暗号データを送信部25に出力する(ステップS8)。例えば、図3に示すように、平文データを「011001」とし、暗号鍵としての擬似乱数を「100100」とし、両方のXORをとれば、暗号データとして「111101」が得られる。送信部25は、XOR24からの暗号データを外部に送信する。また、暗号データをメモリ23に保存する。
In the
このように、第1の実施の形態の暗号化装置によれば、パーソナルコンピュータ2とは別体であるUSBキー1内に擬似乱数発生器14を設け、暗号化を行う場合のみ、USBキー1をパーソナルコンピュータ2に装着して、USBキー1からカオス系列の擬似乱数をパーソナルコンピュータ2に送信する。すなわち、パーソナルコンピュータ2内に擬似乱数発生器14(暗号アルゴリズム)を常駐せずにUSBキー本体に内蔵されているので、暗号鍵としてのカオス系列の擬似乱数を第三者に解読されにくくなる。これにより、個人のパーソナルコンピュータ上のデータを、第三者によって閲覧されることを防止することができる。
As described above, according to the encryption device of the first embodiment, the
また、使用時に、USBキー1をパーソナルコンピュータ2に挿入するだけで、文書や画像などの様々な形式のファイルを暗号化することができる。さらに、相手先もUSBキー1を所持していれば、暗号データによる秘密の暗号メールを相手先に送信することができる。
In use, files of various formats such as documents and images can be encrypted simply by inserting the
また、パーソナルコンピュータ2に擬似乱数発生器14を設けていないので、パーソナルコンピュータ2の処理負担を軽減できる。
Further, since the
さらに、USBキー1側のパスワードとパーソナルコンピュータ2側のパスワードとが一致しなければ、暗号化処理が行えないため、秘匿性をさらに向上することができる。
Furthermore, since the encryption process cannot be performed unless the password on the
また、初期値x(0)を変えることにより、複数種類のカオス系列の擬似乱数を発生させることができるため、複数種類のUSBキー1を作製でき、これによって、複数グループでの利用が可能となる。
In addition, by changing the initial value x (0), pseudo random numbers of a plurality of types of chaotic sequences can be generated, so that a plurality of types of
また、カオス系列の擬似乱数を高速に発生させることができるので、本方式は、従来の一般的な暗号方式であるDES(Data Encryption Standard)方式に比べて、暗号処理速度が約80倍となる。 In addition, because chaotic sequence pseudo-random numbers can be generated at high speed, the encryption processing speed of this method is approximately 80 times that of the DES (Data Encryption Standard) method, which is a conventional general encryption method. .
次に、本発明に係る第2の実施の形態の暗号化復号化装置を詳細に説明する。この暗号化復号化装置は、送信側で平文データを暗号化して受信側に送信し、受信側で受信した暗号データを復号化することにより元の平文データを得ることを特徴とする。 Next, the encryption / decryption device according to the second embodiment of the present invention will be described in detail. This encryption / decryption device is characterized in that the plaintext data is encrypted on the transmission side and transmitted to the reception side, and the original plaintext data is obtained by decrypting the encrypted data received on the reception side.
図5は本発明に係る第2の実施の形態の暗号化復号化装置を示す構成ブロック図である。暗号化復号化装置は、図5に示すように、送信側のパーソナルコンピュータ2a、このパーソナルコンピュータ2aに装着されたUSBキー1a、受信側のパーソナルコンピュータ2b、このパーソナルコンピュータ2bに装着されたUSBキー1b、両方のパーソナルコンピュータ2a,2b間で相互にデータ通信を行うためのインターネット5を有して構成されている。
FIG. 5 is a block diagram showing the configuration of the encryption / decryption device according to the second embodiment of the present invention. As shown in FIG. 5, the encryption / decryption device includes a
送信側のUSBキー1aは、図1に示すUSBキー1と同一構成及び同一機能を有し、パーソナルコンピュータ2aに着脱自在に構成され、入出力部11a、USBコントローラ12a、メモリ13a、擬似乱数発生器14aを有して構成されている。送信側のパーソナルコンピュータ2aは、図1に示すパーソナルコンピュータ2と同一構成及び同一機能を有し、入出力部21a、コントローラ22a、メモリ23a、XOR24a、送信部25aを有して構成され、入力部3a及び表示部4aが接続されている。
The USB key 1a on the transmission side has the same configuration and the same function as the
受信側のUSBキー1bは、USBキー1aと同一構成及び同一機能を有し、パーソナルコンピュータ2bに着脱自在に構成され、入出力部11b、USBコントローラ12b、メモリ13b、擬似乱数発生器14bを有して構成されている。メモリ13bは、キーを所有する個人のパスワードと前記送信側の擬似乱数発生器14aで発生するカオス関数x(t)の初期値x(0)と同一値を有する初期値とを記憶している。USBコントローラ12bは、各部を制御し、USBキー2bがパーソナルコンピュータ2bに装着されたとき、パーソナルコンピュータ2bから暗号データのデータサイズを受信し、擬似乱数発生器14bで発生したカオス系列の擬似乱数を暗号鍵としてパーソナルコンピュータ2bに送信する。
The USB key 1b on the receiving side has the same configuration and the same function as the
受信側のパーソナルコンピュータ2bは、パーソナルコンピュータ2aと略同一構成及び同一機能を有し、USBキー1bが装着されたとき暗号データのデータサイズをUSBキー1bに送信し、USBキー1bから送られてくるカオス系列の擬似乱数を暗号鍵として用いて暗号データを復号化する。パーソナルコンピュータ2bは、入出力部21b、コントローラ22b、メモリ23b、XOR24b、受信部25bを有して構成され、入力部3b及び表示部4bが接続されている。
The
受信部25bは、インターネット5を介して送信側から暗号データを受信し、受信した暗号データをコントローラ22b及びXOR24bに送る。コントローラ22bは、USBキー1bが装着されたときに、USBキー1bから装着信号を受けて、暗号データのバイト数をUSBキー1bに送信し、USBキー1bから疑似乱数発生器14bで得られたカオス系列の擬似乱数を受信する。また、コントローラ22bは、入力部3bから入力されたパスワードとUSBキー1bに記憶されたパスワードとを照合し、両方のパスワードが一致したときに復号化処理を許可するようになっている。XOR24bは、コントローラ22bからのカオス系列の擬似乱数と平文データとの排他的論理和演算を実行することにより復号化を行い、復号データである平文データを得る。
The receiving
次に、このように構成された暗号化復号化装置の動作を説明する。図6は擬似乱数を鍵として用いた暗号化及び復号化の具体例を説明する図である。図7は受信側における復号化処理を説明するシーケンス図である。 Next, the operation of the encryption / decryption device configured as described above will be described. FIG. 6 is a diagram for explaining a specific example of encryption and decryption using a pseudo random number as a key. FIG. 7 is a sequence diagram illustrating a decoding process on the receiving side.
なお、送信側であるパーソナルコンピュータ2aとUSBキー1aとによる暗号化処理は、図4に示すシーケンス図における各処理と同一であるので、ここでは、その説明は省略し、受信側であるパーソナルコンピュータ2bとUSBキー1bとによる復号化処理のみを説明するものとする。
Note that the encryption process by the
まず、暗号データは、インターネット5を介して受信側のパーソナルコンピュータ2bに送信される。
First, the encrypted data is transmitted to the receiving
一方、受信側において、USBキー1bをパーソナルコンピュータ2bに装着し(ステップS11)、パーソナルコンピュータ2bを起動させる(ステップS12)。そして、入力部3bからユーザのパスワードを入力する(ステップS13)。
On the other hand, on the receiving side, the
次に、パーソナルコンピュータ2bは、USBキー1bに対してパスワードの要求を行う(d11)。USBキー1bでは、パスワードの要求に応答して、USBコントローラ12bがメモリ13bからパスワードを読み出し、そのパスワードをパーソナルコンピュータ2bに送信する(d12)。
Next, the
次に、パーソナルコンピュータ2b内のコントローラ22bは、入力部3bから入力されたパスワードがUSBキー1bに記憶されたパスワードと一致したかどうかを判定する(ステップS15)。両方のパスワードが一致しないときには、復号化処理を行わず、両方のパスワードが一致したときには、復号化処理を許可し、USBキー1bへ暗号データのバイト数を送信する(d13)。
Next, the
USBキー1bでは、擬似乱数発生器14bが、受信した暗号データのバイト数とカオス関数とこのカオス関数の初期値とに基づいてカオス系列の擬似乱数を発生する(ステップS17)。そして、USBコントローラ12bは、疑似乱数発生器14bで得られた擬似乱数をパーソナルコンピュータ2bに送信する(d14)。
In the
パーソナルコンピュータ2bでは、XOR24bが、コントローラ22bからの擬似乱数と暗号データとの排他的論理和演算を実行することにより復号化を行い、復号データである平文データを得る(ステップS18)。例えば、図6に示すように、暗号データを「111101」とし、暗号鍵としての擬似乱数を「100100」とし、両方のXORをとれば、復号データとして「011001」が得られ、この復号データは、平文データと同一値となる。
In the
このように、第2の実施の形態の暗号化復号化装置によれば、USBキー1a及びパーソナルコンピュータ2aとが暗号化装置を構成するので、第1の実施の形態の暗号化装置の効果と同様な効果が得られる。
As described above, according to the encryption / decryption device of the second embodiment, the
また、パーソナルコンピュータ2bとは別体であるUSBキー1b内に擬似乱数発生器14bを設け、復号化を行う場合のみ、USBキー1bをパーソナルコンピュータ2bに装着して、USBキー1bから擬似乱数をパーソナルコンピュータ2bに送信する。すなわち、パーソナルコンピュータ2b内に擬似乱数発生器14bを常駐せずにUSBキー本体に内蔵されているので、暗号鍵としてのカオス系列の擬似乱数を第三者に解読されにくくなる。また、USBキー1bがなければ、データからなるファイルを見ることができないため、秘匿性を高くすることができる。
Also, a pseudo random number generator 14b is provided in a
この場合、送信側の暗号化用の疑似乱数発生器14aと受信側の復号化用の擬似乱数発生器14bとの各々に対して、同一の初期値x(0)を与えたので、暗号化用の擬似乱数と復号化用の擬似乱数とが同一に維持される。また、ある平文データと擬似乱数との排他的論理和をとることで得られた暗号データに対して、同一の擬似乱数との間で排他的論理和をとると、元の平文データに戻るといった排他的論理和演算の性質を利用して、暗号データを送受信側相互間で同期をとって復号化することができ、これによって、必要な平文データを相手先に正確に伝達することができる。
In this case, since the same initial value x (0) is given to each of the
また、パーソナルコンピュータ2bに擬似乱数発生器14bを設けていないので、パーソナルコンピュータ2bの処理負担を軽減できる。
In addition, since the pseudo random number generator 14b is not provided in the
さらに、USBキー1b側のパスワードとパーソナルコンピュータ2b側のパスワードとが一致しなければ、復号化処理が行えないため、秘匿性をさらに向上することができる。
Furthermore, since the decryption process cannot be performed unless the password on the USB key 1b side matches the password on the
また、初期値x(0)を変えることにより、複数種類のカオス系列の擬似乱数を発生させることができるため、複数種類のUSBキー1を作製でき、これによって、複数グループでの利用が可能となる。
In addition, by changing the initial value x (0), pseudo random numbers of a plurality of types of chaotic sequences can be generated, so that a plurality of types of
次に、図8のシーケンス図を参照しながら、送信側及び受信側のそれぞれに設けられたUSBキー及びパーソナルコンピュータ相互間の通信処理を詳細に説明する。 Next, a communication process between the USB key and the personal computer provided on each of the transmission side and the reception side will be described in detail with reference to the sequence diagram of FIG.
まず、パーソナルコンピュータ2が、USBキー1に対して、準備確認要求を行うと(d21)、USBキー1は、自己の状態を判定し(ステップS21)、その判定結果として、ACK(準備OK)又はNAK(他の処理中又はNG)又はSTALL(何らかのエラー)を、パーソナルコンピュータ2に返す(d22)。
First, when the
次に、パーソナルコンピュータ2は、USBキー1の判定結果を受信し、受信結果がACKかNAKかSTALLかのいずれかを判定する(ステップS22)。受信結果がNAKの場合にはd21に戻り、STALLの場合にはエラーメッセージを表示し(ステップS23)、ACKの場合には、USBキー1に対して、鍵情報(データサイズ)を送信するとともに、擬似乱数(PN符号)生成要求を行う(d23)。
Next, the
一方、USBキー1では、擬似乱数発生器14が鍵情報のデータサイズとカオス関数とこのカオス関数の初期値とに基づいてカオス系列のPN符号列を生成する(ステップS24)。そして、USBキー1は、PN符号列の生成状態によって、DATA0/1(「0」と「1」とからなるPN符号列データ)又はNAK(PN符号列生成中)又はSTALL(何らかのエラー)を、パーソナルコンピュータ2に返す(d24)。
On the other hand, in the
次に、パーソナルコンピュータ2は、USBキー1の判定結果を受信し、受信結果がDATA0/1かNAKかSTALLかのいずれかを判定する(ステップS25)。受信結果がNAKの場合にはd23に戻り、STALLの場合にはエラーメッセージを表示し(ステップS26)、DATA0/1の場合には、USBキー1に対して、PN符号列受信完了通知要求を行う(d25)。
Next, the
USBキー1では、PN符号列生成終了を確認し(ステップS27)、生成状態によって、ACK(終了確認)又はNAK(何らかの処理中)又はSTALL(何らかのエラー)を、パーソナルコンピュータ2に返す(d26)。
The
次に、パーソナルコンピュータ2は、USBキー1の判定結果を受信し、受信結果がACKかNAKかSTALLかのいずれかを判定する(ステップS28)。受信結果がNAKの場合にはd25に戻り、STALLの場合にはエラーメッセージを表示し(ステップS29)、ACKの場合には、次の命令があるまで待機、すなわちアイドル状態となる(ステップS30)。
Next, the
このように、パーソナルコンピュータ2にUSBキー1を装着することで、暗号化及び復号化時においてUSBポートの通信が行える。
As described above, by attaching the
(擬似乱数発生器)
次に、前述した擬似乱数発生器14の具体的な回路構成について説明する。図9は疑似乱数発生器の概略構成ブロック図である。図9に示すように、疑似乱数発生器14は、非線形入出力特性をもちカオス関数を発生させるための一対の1入力1出力態様の一次元写像回路43,51、外部クロックに同期して各一次元写像回路43,51における出力側経路の開閉動作を交互に行う一対のCMOSスイッチ45,53、各一次元写像回路43,51のアナログ出力を各CMOSスイッチ45,53を通じて相互にたすきがけ状に各一次元写像回路43,51の入力側にフィードバックする一対のフィードバックループ47,55を含んで構成されるカオス発生ループ63と、各CMOSスイッチ45,53を通じて各々取り出された各一次元写像回路43,51のアナログ出力をそれぞれディジタル変換する一対のAD変換器49,57と、ディジタル信号態様で与えられる初期値x(0)をアナログ変換するDA変換器65と、外部クロックに同期してDA変換器65における出力側経路の開閉動作を行うCMOSスイッチ67とを含んで構成されている。
(Pseudorandom number generator)
Next, a specific circuit configuration of the pseudo
疑似乱数発生器14は、カオス発生ループ63において外部クロックが刻む離散時間t(0,1,2,…)の経過に従って、各一次元写像回路43,51が交互に写像を繰り返すことにより、各AD変換器49,57を各々通じてカオス系列たる2値系列を出力する。
The pseudo
図9に示す疑似乱数発生器14を集積回路化した回路図を図10に示す。なお、図9と図10とは相互に対応するように描かれており、両図面で共通する部材間には共通の符号が付してある。この図10を参照しながら、図9に示す擬似乱数発生器14の各ブロック毎の内部構成に言及する。
FIG. 10 shows a circuit diagram in which the pseudo
略N字形の入出力特性をもつ各一次元写像回路43,51は、6個のMOS型トランジスタを含んで構成されている。図10には、各トランジスタのチャネル寸法比W/L(ただし、Wは幅、Lは長さを表す。)が重みとして数字で示されている。初段のCMOSインバータは増加関数を与え、2段目のCMOSインバータは減少関数を与える。両CMOSインバータの入出力を共通にすることで関数合成を行い、結果として略N字形の入出力特性を得る。
Each of the one-
3段目のCMOSインバータは、外部調整電圧71,73を受けて、一次元写像回路43,51がもつ入出力特性に歪みを与えている。外部調整電圧71,73の電圧値は共通であっても良く、また、相互に異なる電圧値であっても良い。さらには、外部調整電圧71,73のうち少なくともいずれか一方を省略しても良い。
The third-stage CMOS inverter receives
入力端子71,73に与えられる外部調整電圧は、コンピュータで予め設定したディジタルコードをDA変換器によってアナログ電圧に変換して与えても良い。その場合、外部調整電圧の値はDA変換器の量子化分解能に応じてステップ状に変化する。
The external adjustment voltage applied to the
CMOSスイッチ45,53,67は、PMOSトランジスタとNMOSトランジスタを並列に接続した伝送ゲートにCMOSインバータを組み合わせて構成する。入力端子75,77,79に与えられる制御信号に応じてCMOSスイッチの開閉が行われる。
The CMOS switches 45, 53, and 67 are configured by combining a CMOS inverter with a transmission gate in which a PMOS transistor and an NMOS transistor are connected in parallel. The CMOS switch is opened and closed in accordance with control signals applied to the
入力端子75には初期値を与えるリセットパルスが加えられ、初期値x(0)の値はDA変換器65を通じて与えられる。すなわち、離散時間t=0におけるループの内部状態の初期値x(0)は、CMOSスイッチ67を介してDA変換器65を通じて一次元写像回路51に対して与えられる。例えば、12ビットの量子化分解能をもつDA変換器65を採用したシステムにおいては、与えうる初期値x(0)の種類は212=4096通りにも及ぶ。
A reset pulse for giving an initial value is applied to the
入力端子77,79に与える外部クロック(離散時間t)は、相互に重なることのない矩形波とする。このときの最大クロック周波数が、本疑似乱数発生器の処理速度を律する。この処理速度は、一次元写像回路の内部状態決定速度に依存して決まる。個別部品でプリント基板上にブレッドボードしたとき、クロック周波数を20kHzまであげることができた。本一次元写像回路は、標準的なCMOS集積回路技術を用いた集積回路としてチップ化することを目標に掲げているが、最小寸法=0.8マイクロmを想定して試作したとき、1MHzのクロック周波数では動作することが模擬実験により確認されている。
External clocks (discrete time t) applied to the
1ビット出力のAD変換器49,57は、一次元写像回路43,51の各出力を、外部クロックに同期して各自が交互に開閉するCMOSスイッチ45,53をそれぞれ介して入力し、入力レベルに応じた2値符号列をそれぞれ出力する。
The 1-bit
詳しく述べると、AD変換器49,57は、一対の各抵抗rA,rBでの分圧によって得られた基準電圧と、各一次元写像回路43,51の出力電圧と、を比較器によってそれぞれ比較し、両者の大小関係に応じた「0」又は「1」の信号を変換出力する。出力端子59,61からは、外部クロック(離散時間t)の進行に従って、2値コード時系列データが交互に取り出される。取り出される2値コード時系列データは、「0」と「1」が混ぜ合わされた乱数的な配列データであり、各一次元写像回路43,51がもつ入出力特性の対称性が良好に保たれているときには、「0」と「1」の出現頻度はほぼ等しくなる。このとき、孤立した「0」または「1」は、「00」,「11」といった連続した値の2倍の頻度で出現する。こうして各出力端子59,61から交互に取り出された両2値コード時系列を、統合的な時系列に従って配列させた2値コード時系列を得ることにより、カオス系列の疑似乱数を発生させることができる。
More specifically, the
カオスの視点で世界を眺めてみたとき、その世界にはふたつと同じものは存在しない。また、一つの一次元写像回路がもつ個々の入出力特性に注目したとき、その対称性を完全に保つことはかなり難しい。さらに、一対の各一次元写像回路43,51がもつ個々の入出力特性を各相互間で完全に一致させることもかなり難しい。しかも、AD変換器49,57が同一の量子化を行っているという保証もない。こうした種々の疑念を払拭するには、ハードウェア化によって同一の集積回路を工業的大量生産過程を通じて量産可能となるといった意味で、疑似乱数発生器のハードウェア化がきわめて有効であると言える。
When we look at the world from a chaos perspective, there are no two things in the world. Also, when focusing on the individual input / output characteristics of a single one-dimensional mapping circuit, it is quite difficult to keep the symmetry completely. Further, it is quite difficult to completely match individual input / output characteristics of each pair of one-
カオスの産業技術において、初期値敏感性の保持はきわめて重要な要素である。本発明において初期値敏感性はDA変換器65を通じて与えられる。すなわち、相互に異なる初期値を出発点とする一対の2値コード時系列出力59,61相互間では、両者をどのように位相を変えて重ね合わせてみても、相互に重なり合うことはなく、自己相関、相互相関ともに十分に小さい時系列が得られる。
Maintaining initial value sensitivity is an extremely important factor in chaos industrial technology. In the present invention, the initial value sensitivity is given through the
いま、出力端子59,61から交互に取り出された値を時系列的に配列させた2値コード時系列をY(t)としよう。このなかから周期系列を切り出してPN信号とするためには、例えば周期64ビットの2値系列PN信号の場合、Y(0)〜Y(63)、Y(64)〜Y(127)、…の如く切り取るのは一例に過ぎない。t=216=65536までカオスの内部状態を観察していたとすると、1024通りの周期64ビットの2値系列PN信号が得られる。初期値を与えるDA変換器65の量子化分解能を12ビットとしたとき、初期値は212=4096通りに与えることができ、このとき得られるPN信号の種類は4,194,304通りにも及ぶ。
Now, let Y (t) be a binary code time series in which values taken alternately from the
しかし、こうして取り出されたPN信号の全種類が独立して使用できるという保証はない。PN信号たるカオス符号系列が発揮する予測不可能性は、一次元写像回路がもつ個々の入出力特性や、与える初期値などのパラメータに大きく依存するからである。従って、こうして取り出されたPN信号について、自己相関及び相互相関を位相を変えて調べて、周期以外で十分に相関度が小さいことを検証しておく必要がある。 However, there is no guarantee that all types of PN signals thus extracted can be used independently. This is because the unpredictability exhibited by the chaotic code sequence as the PN signal greatly depends on individual input / output characteristics of the one-dimensional mapping circuit and parameters such as initial values to be given. Therefore, it is necessary to verify that the degree of correlation is sufficiently small except for the period by examining the auto-correlation and the cross-correlation for the PN signal thus extracted by changing the phase.
上述した疑似乱数発生器14において、各一次元写像回路43,51がもつ個々の入出力特性の対称性は、各出力端子59,61から取り出される2値時系列における「0」と「1」の出力分布に直接影響を与える。一般に、理想的な疑似乱数の場合には、「0」と「1」の出力分布比率は均等になる。そのように疑似乱数発生器14を動作させたいときには、一次元写像回路43,51の両者がともに等しい入出力特性をもち、かつ、対称性を良好に保つことを考慮して、一次元写像回路43,51を設計すれば良い。
In the pseudo
しかし、産業技術としての疑似乱数発生器は、必ずしも「0」と「1」の出力分布比率が均等になることを要求しない。位相をシフトしていったときの自己相関及び相互相関が充分に小さいという必要条件させ満足していれば、ストリーム暗号の暗号文コードにおいて「0」と「1」の出力分布比率に偏りがあったとしても、暗号の秘匿性の観点からは不都合が生じないからである。特に、その対称性をあえて損なうように設計した場合には、対称性が良好に保たれていることを前提として第三者による暗号文コードの解読が試みられたとき、その解読は必ずや失敗に終わるという意味で、却って暗号システムの頑健性が強化されているという立場を採ることもできる。 However, the pseudo random number generator as an industrial technology does not necessarily require that the output distribution ratios of “0” and “1” are equal. If the necessary condition that the autocorrelation and cross-correlation are sufficiently small when the phase is shifted is satisfied, the output distribution ratio of “0” and “1” is biased in the ciphertext code of the stream cipher. This is because there is no inconvenience from the viewpoint of encryption confidentiality. In particular, when the design is designed so as to impair the symmetry, when a third party attempts to decrypt the ciphertext code on the assumption that the symmetry is maintained well, the decryption will definitely fail. In the sense that it ends, it can also take the position that the robustness of the cryptographic system is strengthened.
各一次元写像回路43,51がもつ個々の入出力特性を等価にする必然性もない。各一次元写像回路43,51は、各自の構成要素たる各トランジスタに与える重みを意識的に異ならせるようにして与えることによって実現することができる。また、各回路43,51がもつ個々の入出力特性を等価に設計した場合でも、相互に異なる外部調整電圧を各回路43,51毎に独立して与えることにより、各自がもつ入出力特性の等価性を崩すことができる。さらに、写像のダイナミックレンジを拡げることを企図して、相互に歪んだ入出力特性を組み合わせるように設計しても良い。
There is no necessity to make the individual input / output characteristics of the one-
以上述べてきた疑似乱数発生器14において、DA変換器とクロック発生器をワンチップ化対象に含めない前提下では、図10に示すように、十分小規模の集積回路をワンチップ化した疑似乱数発生器を実現することができる。疑似乱数発生器14の主要部である一対の一次元写像回路43,51を含むカオス発生ループ63がアナログ回路で構成されるのに対し、DA変換器とクロック発生器はディジタル回路で構成できるので、これら全てを含めた集積回路をワンチップ化することも容易であろう。
In the pseudo
CMOS集積回路は一般にはエンハンスメントモードで設計実現されるが、疑似乱数発生器14に含まれる一次元写像回路43,51の構成要素である初段のCMOSソースフォロアはディプレッションモードで設計実現するのが好ましい。このようにすれば、MOSトランジスタの重みを小さく設計することができ、バランスのとれた一次元写像回路のマスク設計を実現することができる。
Although the CMOS integrated circuit is generally designed and realized in an enhancement mode, the first stage CMOS source follower, which is a component of the one-
一次元写像回路43,51がもつ入出力特性の対称性と、一対の各一次元写像回路43,51がもつ入出力特性相互間の一致または不一致具合とを含むパラメータが、カオスに特有の初期値敏感性とあいまって、得られる2値系列の「0」と「1」の出現バランスを微妙に狂わせる。こうしたパラメータの変動に由来するカオスに特有のゆれ現象は、カオス・ストリーム暗号の頑健性向上に寄与できる。
The parameters including the symmetry of the input / output characteristics of the one-
次に、本発明に係る第3の実施の形態の暗号キー管理装置を詳細に説明する。図11は本発明に係る第3の実施の形態の暗号キー管理装置を示す構成ブロック図である。図11に示す暗号キー管理装置は、パーソナルコンピュータ2cに着脱自在に構成されたUSBキー1cを管理するもので、パーソナルコンピュータ2cからUSBキー1c内のメモリ13cのプログラムを書換可能としたことを特徴とする。
Next, the encryption key management apparatus according to the third embodiment of the present invention will be described in detail. FIG. 11 is a block diagram showing the configuration of the encryption key management apparatus according to the third embodiment of the present invention. The encryption key management apparatus shown in FIG. 11 manages the USB key 1c configured to be detachable from the
図11において、USBキー1cは、入出力部11、USBコントローラ12c、メモリ13c、擬似乱数発生器14を有して構成されている。メモリ13cは、電源をオフしても情報が消去されず、書き込みや消去が可能なEEPROM、即ち、フラッシュメモリである。メモリ13cは、図12に示すように、アドレス(0000)からアプリケーションプログラムを記憶するためのアプリケーションプログラム領域AE1と初期値とアプリケーションプログラムの利用許否のためのアプリケーションパスワードPW1とアプリケーションプログラム領域AE1のアプリケーションプログラムの更新(以下、アップデートという。)の許否を表すためのアップデートパスワードPW2とアドレス(F800)からアドレス(FFFF)までの領域に所定長単位(例えば128バイト)でアップデートプログラムを記憶するためのプログラムアップデート領域AE2とを有している。
In FIG. 11, the USB key 1 c includes an input /
パーソナルコンピュータ2cは、入出力部21、コントローラ22c、メモリ23c、XOR24、送信部25を有して構成され、入力部3及び表示部4が接続されている。なお、パーソナルコンピュータとしては、暗号データを生成するパーソナルコンピュータ2cを例示したが、これに代えて、暗号データを復号化する例えば図5に示すパーソナルコンピュータ2bであっても良い。
The
メモリ23cは、USBキー1cのメモリ1cを管理するための管理プログラム81とアップデートプログラム82とを有している。コントローラ22cは、USBキー1cのメモリ13c内のアプリケーションプログラム領域のアプリケーションプログラムを更新するとき、デリートコマンドをUSBキー1cに送出してアップデートパスワードを消去させ、アップデータパスワードを消去した後、アップデートプログラムを所定長単位でUSBキー1cに送信する。
The
USBキー1c内のUSBコントローラ12cは、アップデートパスワードの消去によりアップデートモードとなり、パーソナルコンピュータ2cからのアップデートプログラムを所定長単位でプログラムアップデート領域に記憶させた後、該プログラムアップデート領域に記憶されたアップデートプログラムを所定長単位でアプリケーションプログラム領域に移行させる。
The
次に、図13を参照して、第3の実施の形態の暗号キー管理装置のパーソナルコンピュータからUSBキー内のメモリのプログラムを書き換える処理を説明する。 Next, with reference to FIG. 13, a process of rewriting the memory program in the USB key from the personal computer of the encryption key management apparatus according to the third embodiment will be described.
まず、USBキー1cをパーソナルコンピュータ2cに装着し(ステップS31)、パーソナルコンピュータ2cは、USBキー1cのメモリ内のアプリケーションプログラム領域のアプリケーションプログラムをアップデートするとき、管理プログラム81を起動する(ステップS32)。そして、アップデートパスワードを消去するためのデリートコマンドをUSBキー1cに送信する(d31)。さらに、パーソナルコンピュータ2cは、アップデートプログラムを起動する(ステップS33)。
First, the USB key 1c is attached to the
一方、USBキー1cでは、USBコントローラ12cが、受信したデリートコマンドにより、メモリ13c内のアップデートパスワードを削除して(ステップS34)、アップデートモードになる(ステップS35)。そして、アップデートモード情報をパーソナルコンピュータ2cに送信する(d32)。
On the other hand, with the USB key 1c, the
パーソナルコンピュータ2cは、受信したアップデートモード情報により、アップデートモードと認識し(ステップS36)、USBキー1cに書換指令を送信した後(d33)、アップデートプログラムのデータを所定バイト単位でUSBキー1cに送信する(d34)。
The
一方、USBキー1cでは、USBコントローラ12cが、受信した書換指令により、パーソナルコンピュータ2cからのアップデートプログラムを所定バイト単位でプログラムアップデート領域に書き込む。このとき、アップデートプログラムには、アップデートパスワードも含まれているので、メモリ13cにアップデータパスワードも書き込まれる(ステップS37)。
On the other hand, in the USB key 1c, the
さらに、USBコントローラ12cは、プログラムアップデート領域に記憶されたアップデートプログラムを所定バイト単位でアプリケーションプログラム領域に移行する(ステップS38)。
Further, the
従って、パーソナルコンピュータ2cからUSBキー1cのメモリ内のアプリケーションプログラムを容易に書き換えることができる。また、アップデートパスワードの有無により、アプリケーションプログラムの書き換えを行っているので、特定の者のみがアプリケーションプログラムを書き換えできる。
Therefore, the application program in the memory of the USB key 1c can be easily rewritten from the
以上では、アプリケーションプログラムの書き換え処理のみを説明したが、図14を参照して、USBキー内のメモリのアプリケーションプログラムの起動またはアップデートプログラムの起動を説明する。 In the above, only the rewriting process of the application program has been described. With reference to FIG. 14, the activation of the application program in the memory in the USB key or the activation of the update program will be described.
まず、USBキー1cのUSBコントローラ12cは、電源をオンしたときに(ステップS41)、メモリ13cにアップデートパスワードがあるかどうかを判定し(ステップS42)、アップデートパスワードがあるときには、アプリケーションプログラム領域のアプリケーションプログラムを起動し、記憶エリアであるアドレス(0000)から処理を実行する(ステップS43)。即ち、アプリケーションプログラムを起動して通常処理を行うことができる。
First, when the power is turned on (step S41), the
一方、アップデートパスワードがないときには、記憶エリアであるアドレス(F800)へジャンプし(ステップS44)、プログラムアップデート領域のアップデートプログラムを起動し、アドレス(F800)から処理を実行する(ステップS45)。即ち、アップデートプログラムを起動してアップデート処理を行うことができる。 On the other hand, when there is no update password, it jumps to the address (F800) which is a storage area (step S44), starts the update program in the program update area, and executes the process from the address (F800) (step S45). That is, the update process can be performed by starting the update program.
次に、本発明に係る第4の実施の形態の暗号キー管理装置を詳細に説明する。図15は本発明に係る第4の実施の形態の暗号キー管理装置を示す構成ブロック図である。図15に示す暗号キー管理装置は、パーソナルコンピュータ2dに着脱自在に構成されたUSBキー1dを管理するもので、パーソナルコンピュータ2dからUSBキー1d内のメモリ13dにカオス関数の初期値を登録可能としたことを特徴とする。
Next, the encryption key management apparatus according to the fourth embodiment of the present invention will be described in detail. FIG. 15 is a block diagram showing the configuration of the encryption key management apparatus according to the fourth embodiment of the present invention. The encryption key management apparatus shown in FIG. 15 manages the
図15において、USBキー1dは、入出力部11、USBコントローラ12d、メモリ13d、擬似乱数発生器14を有して構成されている。
In FIG. 15, the
パーソナルコンピュータ2dは、入出力部21、コントローラ22d、メモリ23dを有して構成され、入力部3及び表示部4が接続されている。入力部3は、USBキー1d毎にUSBキーの製品番号と初期値とを入力する。コントローラ22dは、入力部3で入力されたUSBキー1d毎のUSBキーの製品番号と初期値とを初期値テーブル83に記憶させる。
The
メモリ23dは、図16に示すように、USBキー1d毎にUSBキーの製品番号とカオス関数の初期値(キーID)とを対応付けて記憶した初期値テーブル83を有している。コントローラ22dは、USBキー1dが装着されたとき、当該USBキー1dの製品番号に対応する初期値を初期値テーブル83から読み出してUSBキー1dに送信する。USBキー1dのUSBコントローラ12dは、パーソナルコンピュータ2dから送られてくる初期値をメモリ13dに記憶させる。
As shown in FIG. 16, the
次に、図17を参照して、第4の実施の形態の暗号キー管理装置のパーソナルコンピュータによる初期値テーブルの作成処理を説明する。 Next, an initial value table creation process by a personal computer of the encryption key management apparatus according to the fourth embodiment will be described with reference to FIG.
まず、USBキー1dの製品番号が入力されたかどうかを判定し(ステップS51)、USBキー1dの製品番号が入力された場合には、USBキー1dの製品番号を初期値テーブル83に記憶させる(ステップS52)。
First, it is determined whether or not the product number of the
次に、初期値が入力されたかどうかを判定し(ステップS53)、初期値が入力された場合には、その初期値を初期値テーブル83に記憶させる(ステップS54)。 Next, it is determined whether or not an initial value is input (step S53). If an initial value is input, the initial value is stored in the initial value table 83 (step S54).
次に、全てのUSBキー1dについて記憶処理が終了したかどうかを判定し(ステップS55)、全てのUSBキー1dについて記憶処理が終了していない場合には、ステップS51に戻り、処理を繰り返し実行する。このような処理により、図16に示すような初期値テーブル83を作成でき、作成された初期値テーブル83により、USBキー1d毎に初期値を管理することができる。
Next, it is determined whether the storage process has been completed for all the
次に、図18を参照して、第4の実施の形態の暗号キー管理装置のパーソナルコンピュータ2dからUSBキー1dのメモリ13dへの初期値の登録処理を説明する。
Next, the initial value registration process from the
まず、パーソナルコンピュータ2dは、USBキー1dが装着されたかどうかを判定し(ステップS61)、USBキー1dが装着されたときには、当該USBキー1dの製品番号が入力される(ステップS62)。
First, the
そして、コントローラ22dは、入力された当該USBキー1dの製品番号に対応する初期値を初期値テーブル83から読み出して(ステップS63)、読み出した初期値をUSBキー1dに送信する(ステップS64)。
Then, the
次に、USBキー1dは、パーソナルコンピュータ2dからの初期値をメモリ13dに記憶する(ステップS65)。
Next, the
次に、全てのUSBキー1dについて初期値登録処理が終了したかどうかを判定し(ステップS66)、全てのUSBキー1dについて初期値登録処理が終了していない場合には、ステップS61に戻り、処理を繰り返し実行する。
Next, it is determined whether or not the initial value registration process has been completed for all the
従って、パーソナルコンピュータ2dからUSBキー1d毎にUSBキー1d内のメモリ13dにUSBキー1dに対応した初期値を登録することができる。また、従来では、初期値を別チップのICに書き込んでいたが、実施の形態では、CPUのフラッシュメモリに初期値を書き込むことができる。
Therefore, the initial value corresponding to the
次に、本発明に係る第5の実施の形態の復号化装置を詳細に説明する。図19は本発明に係る第5の実施の形態の復号化装置を示す構成ブロック図である。図19に示す復号化装置は、パーソナルコンピュータ2eに着脱自在に構成されたUSBキー1eを用いて暗号データを復号化するもので、グループパスワードを初期値とすることにより、グループで、暗号データを有する暗号ファイルを共有可能としたことを特徴とする。
Next, the decoding apparatus according to the fifth embodiment of the present invention will be described in detail. FIG. 19 is a block diagram showing the configuration of the decoding apparatus according to the fifth embodiment of the present invention. The decryption device shown in FIG. 19 decrypts encrypted data by using a
パーソナルコンピュータ2eは、入出力部21、コントローラ22e、メモリ23、XOR24、暗号ファイル26を有して構成され、入力部3及び表示部4が接続されている。暗号ファイル26は、図20に示すように、暗号データ領域に暗号データを有するとともに、ヘッダ領域に、複数の利用者が暗号データを利用可能であることを表すためのグループモード情報としての拡張子(yzg)と暗号データを利用可能な複数の利用者に固有のグループパスワードとしてのグループIDとを有している。
The
コントローラ22eは、入力部3から入力されたIDが、暗号ファイル26に格納されたグループIDと一致したかどうかを判定し、一致した場合にそのグループIDをカオス関数の初期値として、USBキー1eに送信するとともに、暗号データのデータサイズもUSBキー1eに送信する。XOR24は、擬似乱数発生器14で発生したカオス系列の擬似乱数を鍵として入力するとともに、暗号ファイル26から暗号データを入力し、該暗号データを擬似乱数を用いて復号する。
The
USBキー1eは、入出力部11、USBコントローラ12e、メモリ13、擬似乱数発生器14eを有して構成されている。擬似乱数発生器14eは、パーソナルコンピュータ2eからの暗号データのデータサイズとカオス関数とこのカオス関数の初期値である前記グループIDとに基づいてカオス系列の擬似乱数を発生する。
The
次に、図21を参照して、第5の実施の形態の復号化装置の復号化処理を説明す要る。 Next, with reference to FIG. 21, it is necessary to describe the decoding process of the decoding apparatus according to the fifth embodiment.
まず、パーソナルコンピュータ2eのコントローラ22eは、暗号ファイル26から拡張子を読み出し(ステップS71)、拡張子がグループモードであるyzgかどうかを判定する(ステップS72)。拡張子がyzgであれば、暗号ファイル26のグループIDを読み出す(ステップS73)。
First, the
次に、グループIDが入力されると(ステップS74)、入力されたグループIDと暗号ファイル26に格納されたグループIDとが一致するかどうかを判定する(ステップS75)。グループIDが一致した場合には、グループID及び暗号データのデータサイズをUSBキー1eに送信する。
Next, when the group ID is input (step S74), it is determined whether or not the input group ID matches the group ID stored in the encrypted file 26 (step S75). If the group IDs match, the group ID and the data size of the encrypted data are transmitted to the
一方、USBキー1eは、パーソナルコンピュータ2eからの暗号データのデータサイズとカオス関数とこのカオス関数の初期値であるグループIDとに基づいてカオス系列の擬似乱数を発生し、発生したカオス系列の擬似乱数を鍵としてパーソナルコンピュータ2eに送信する。
On the other hand, the
パーソナルコンピュータ2eは、USBキー1eから擬似乱数を取得し(ステップS77)、XOR24は、USBキー1eから擬似乱数を用いて暗号ファイル26内の暗号データを復号化する。即ち、グループIDをカオス関数の初期値とすることにより、複数の利用者によるグループで暗号ファイル26を共有することができる。
The
また、グループモード情報である拡張子yzgがあるときで且つ入力されたIDが暗号ファイル26に格納されたグループIDと一致した場合にのみ、複数の利用者によるグループで、暗号ファイル26を共有することができる。即ち、秘匿性をさらに向上することができる。
Further, only when the extension yzg which is group mode information is present and the input ID matches the group ID stored in the
本発明に係る暗号キー管理装置は、個人のパーソナルコンピュータ上のデータを第三者によって容易に閲覧されるのを防止できる暗号キーを管理する暗号キー管理装置に利用可能である。 INDUSTRIAL APPLICABILITY The encryption key management device according to the present invention can be used for an encryption key management device that manages encryption keys that can prevent data on a personal computer from being easily viewed by a third party.
1,1a,1b USBキー
2,2a,2b パーソナルコンピュータ
3,3a,3b 入力部
4,4a,4b 表示部
10 キー突起部
11,11a,11b,21,21a,21b 入出力部
12,12a,12b USBコントローラ
13,13a,13b,23,23a,23b メモリ
14,14a,14b 擬似乱数発生器
20 コンピュータ溝部
22,22a,22b コントローラ
24,24a,24b XOR(排他的論理和)
25,25a 送信部
25b 受信部
26 暗号ファイル
43,51 一次元写像回路
45,53,67 CMOSスイッチ
47,55 フィードバックループ
49,57 AD変換器
59,61 出力端子
63 カオス発生ループ
65 DA変換器
71,73,75,77,79 入力端子
81 管理プログラム
82 アップデートプログラム
83 初期値テーブル
1, 1a,
13, 13a, 13b, 23, 23a,
25,
Claims (2)
前記外部装置は、暗号キー毎に暗号キー番号とカオス関数の初期値とを対応付けて記憶した初期値テーブルと、
前記暗号キーが前記外部装置に装着されたとき、当該暗号キーの番号に対応する前記初期値を前記初期値テーブルから読み出して前記暗号キーに送信する送信部とを備え、
前記暗号キーは、前記外部装置からの前記初期値を記憶するメモリと、
このメモリに記憶された前記初期値とデータのデータサイズとカオス関数とに基づいてカオス系列の擬似乱数を発生する擬似乱数発生器と、
を備えることを特徴とする暗号キー管理装置。 An encryption key management device that manages an encryption key configured to be detachable from an external device,
The external device is an initial value table that stores an encryption key number and an initial value of a chaos function in association with each encryption key;
A transmission unit that reads out the initial value corresponding to the number of the encryption key from the initial value table and transmits it to the encryption key when the encryption key is attached to the external device;
The encryption key is a memory for storing the initial value from the external device;
A pseudo random number generator for generating a pseudo random number of a chaotic sequence based on the initial value stored in the memory, the data size of the data, and a chaos function;
An encryption key management device comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007011503A JP4515467B2 (en) | 2001-11-16 | 2007-01-22 | Encryption key management device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001351903 | 2001-11-16 | ||
JP2007011503A JP4515467B2 (en) | 2001-11-16 | 2007-01-22 | Encryption key management device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002160182A Division JP2003216037A (en) | 2001-11-16 | 2002-05-31 | Cipher key, enciphering device, enciphering/deciphering device, cipher key management device, and deciphering device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007104731A true JP2007104731A (en) | 2007-04-19 |
JP4515467B2 JP4515467B2 (en) | 2010-07-28 |
Family
ID=38031119
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007011503A Expired - Fee Related JP4515467B2 (en) | 2001-11-16 | 2007-01-22 | Encryption key management device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4515467B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05224604A (en) * | 1991-09-27 | 1993-09-03 | Internatl Business Mach Corp <Ibm> | Method and apparatus for forming official and private key pair by using pass phrase |
JPH08321954A (en) * | 1995-05-24 | 1996-12-03 | Ricoh Elemex Corp | Ciphering communication equipment and decoding communication equipment |
JP2001209769A (en) * | 2000-01-27 | 2001-08-03 | Micro Technology Kk | Method for managing magnetic card |
-
2007
- 2007-01-22 JP JP2007011503A patent/JP4515467B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05224604A (en) * | 1991-09-27 | 1993-09-03 | Internatl Business Mach Corp <Ibm> | Method and apparatus for forming official and private key pair by using pass phrase |
JPH08321954A (en) * | 1995-05-24 | 1996-12-03 | Ricoh Elemex Corp | Ciphering communication equipment and decoding communication equipment |
JP2001209769A (en) * | 2000-01-27 | 2001-08-03 | Micro Technology Kk | Method for managing magnetic card |
Also Published As
Publication number | Publication date |
---|---|
JP4515467B2 (en) | 2010-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1313259A2 (en) | Cryptographic key, encryption/decryption device, cryptographic key management device using a chaotic function | |
JP4253543B2 (en) | Hardware protection key and reissuing method | |
US6078665A (en) | Electronic encryption device and method | |
JP4828068B2 (en) | Computer efficient linear feedback shift register | |
CA2291435C (en) | Encryption/decryption method and authentication method using multiple-affine key system and apparatuses using the same | |
JP3783800B2 (en) | Encryption / decryption device and method using programmable logic device / device | |
US20070174374A1 (en) | Pseudorandom number generator and pseudorandom number generation program | |
JP4750105B2 (en) | Keystream encryption apparatus and method, and program | |
JP4728657B2 (en) | Stream cipher design using rotation buffer | |
RU2005129254A (en) | METHOD FOR FORMING AND DISTRIBUTING CRYPTOGRAPHIC KEYS IN A MOBILE COMMUNICATION SYSTEM AND AN APPROPRIATE MOBILE COMMUNICATION SYSTEM | |
JP2007151201A (en) | Method and apparatus for generating stream of cipher | |
JP2000310942A (en) | Pseudo-random number generator, stream ciphering method and stream cipher communication method | |
JP2005050160A (en) | Hardware protection key and information processing system | |
JP2012151805A (en) | Data encryption device and memory card having the device | |
US8122075B2 (en) | Pseudorandom number generator and encryption device using the same | |
JP6287785B2 (en) | Cryptographic processing apparatus, cryptographic processing method, and program | |
JP4515467B2 (en) | Encryption key management device | |
JP4857230B2 (en) | Pseudorandom number generator and encryption processing device using the same | |
JP2007104732A (en) | Decrypting device | |
Anghelescu et al. | Block encryption using hybrid additive cellular automata | |
JP2015095841A (en) | Information processing system | |
KR100772856B1 (en) | key management method for home network, and apparatus and system using the method | |
Erlanovna et al. | Using FHE in a binary ring Encryption and Decryption with BLE Nano kit microcontroller | |
JP4689539B2 (en) | Data processing apparatus and method | |
JP2007086704A (en) | Initial vector value setting method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070122 |
|
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: 20100413 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100512 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4515467 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130521 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |