JP2012175187A - Key managing apparatus, encryption processing system, computer program, and key managing method - Google Patents
Key managing apparatus, encryption processing system, computer program, and key managing method Download PDFInfo
- Publication number
- JP2012175187A JP2012175187A JP2011032518A JP2011032518A JP2012175187A JP 2012175187 A JP2012175187 A JP 2012175187A JP 2011032518 A JP2011032518 A JP 2011032518A JP 2011032518 A JP2011032518 A JP 2011032518A JP 2012175187 A JP2012175187 A JP 2012175187A
- Authority
- JP
- Japan
- Prior art keywords
- key
- password
- unit
- update
- reverse
- 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.)
- Withdrawn
Links
Images
Abstract
Description
この発明は、暗号処理に使用する鍵を管理する鍵管理装置に関する。 The present invention relates to a key management device that manages keys used for cryptographic processing.
アプリケーションプログラムで鍵を管理する方式には、例えば、アプリケーションプログラムのなかに鍵を埋め込む(ハードコーディング)ことにより、外部から鍵を読み出すことができないようにする方式や、アプリケーションプログラムのなかに埋め込んだデータと、管理者が入力する管理パスワードとを合成することにより、鍵を生成する方式がある。また、鍵を管理する鍵管理装置で鍵を管理し、パスワードを使って鍵にアクセスする方式がある。パスワードは、例えば、管理者が入力する方式、アプリケーションプログラムに埋め込む方式、外部ファイルに記述しておきアプリケーションプログラムが読み込む方式などがある。 The key management method in the application program includes, for example, a method in which the key cannot be read from the outside by embedding the key in the application program (hard coding), or data embedded in the application program And a management password input by the administrator are combined to generate a key. In addition, there is a method in which a key is managed by a key management device that manages the key, and the key is accessed using a password. For example, the password may be entered by an administrator, embedded in an application program, or written in an external file and read by an application program.
アプリケーションプログラムに鍵を埋め込む方式は、アプリケーションプログラム自体を更新しなければ、鍵を更新できない。また、アプリケーションプログラムの開発者が鍵を知っているので、内部犯行による情報漏洩の可能性がある。
アプリケーションプログラムに埋め込んだデータと管理パスワードとを合成して鍵を生成する方式は、管理パスワードを変えれば鍵を更新できるが、管理者が知っている管理パスワードが漏洩するなどして、埋め込みデータを知っている開発者が管理パスワードを知った場合などには、やはり情報漏洩の可能性がある。
鍵管理装置が鍵を管理する方式の場合、管理者や開発者がパスワードを知っている場合、鍵管理装置から鍵を読み出す可能性がある。
In the method of embedding a key in an application program, the key cannot be updated unless the application program itself is updated. Moreover, since the application program developer knows the key, there is a possibility of information leakage due to an internal crime.
The method of generating a key by combining the data embedded in the application program and the management password can update the key by changing the management password, but the management password known by the administrator leaks, etc. When a developer who knows knows the management password, there is a possibility of information leakage.
In the case where the key management device manages the key, there is a possibility that the key is read from the key management device if the administrator or developer knows the password.
この発明は、例えば上記のような課題を解決するためになされたものであり、鍵を容易に更新できるとともに、鍵の漏洩を防ぐことを目的とする。 The present invention has been made, for example, in order to solve the above-described problems, and an object thereof is to easily update a key and prevent leakage of the key.
この発明にかかる鍵管理装置は、データを記憶する記憶装置と、データを処理する処理装置と、鍵記憶部と、取得要求入力部と、鍵パスワード算出部と、鍵取得部と、新規鍵生成部と、鍵登録部と、鍵出力部と、更新要求入力部と、更新鍵生成部と、鍵更新部と、更新鍵出力部とを有し、
上記鍵記憶部は、上記記憶装置を用いて、暗号処理に使用する鍵と上記鍵にアクセスするための鍵パスワードとを記憶し、
上記取得要求入力部は、上記処理装置を用いて、取得すべき鍵の管理に使用する管理パスワードを入力し、
上記鍵パスワード算出部は、上記処理装置を用いて、上記取得要求入力部が入力した管理パスワードに基づいて、鍵パスワードを算出し、
上記鍵取得部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵を取得し、
上記新規鍵生成部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、鍵を生成し、
上記鍵登録部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、上記新規鍵生成部が生成した鍵と、上記鍵パスワード算出部が算出した鍵パスワードとを上記鍵記憶部に記憶させ、
上記鍵出力部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵取得部が取得した鍵を出力し、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、上記新規鍵生成部が生成した鍵を出力し、
上記更新要求入力部は、上記処理装置を用いて、更新すべき鍵を入力し、
上記更新鍵生成部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、鍵を生成し、
上記鍵更新部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵に代えて、上記更新鍵生成部が生成した鍵を上記鍵記憶部に記憶させ、
上記更新鍵出力部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、上記更新鍵生成部が生成した鍵を出力することを特徴とする。
A key management device according to the present invention includes a storage device that stores data, a processing device that processes data, a key storage unit, an acquisition request input unit, a key password calculation unit, a key acquisition unit, and a new key generation A key registration unit, a key output unit, an update request input unit, an update key generation unit, a key update unit, and an update key output unit,
The key storage unit uses the storage device to store a key used for cryptographic processing and a key password for accessing the key,
The acquisition request input unit uses the processing device to input a management password used for managing a key to be acquired,
The key password calculation unit calculates the key password based on the management password input by the acquisition request input unit using the processing device,
The key acquisition unit acquires the key stored in the key storage unit using the processing device when the key password calculated by the key password calculation unit matches the key password stored in the key storage unit. And
The new key generation unit generates a key using the processing device when the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit,
When the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit, the key registration unit uses the processing device to generate the key generated by the new key generation unit. The key password calculated by the key password calculation unit is stored in the key storage unit,
The key output unit outputs the key acquired by the key acquisition unit using the processing device when the key password calculated by the key password calculation unit matches the key password stored by the key storage unit. When the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit, the processing device is used to output the key generated by the new key generation unit,
The update request input unit inputs a key to be updated using the processing device,
The update key generation unit generates a key using the processing device when the key input by the update request input unit matches the key stored by the key storage unit,
When the key input by the update request input unit matches the key stored by the key storage unit, the key update unit uses the processing device to replace the key stored by the key storage unit, Storing the key generated by the update key generation unit in the key storage unit;
The update key output unit outputs the key generated by the update key generation unit using the processing device when the key input by the update request input unit matches the key stored in the key storage unit. It is characterized by doing.
この発明にかかる鍵管理装置によれば、鍵を容易に更新できるとともに、鍵の漏洩を防ぐことができる。 According to the key management device according to the present invention, the key can be easily updated and the leakage of the key can be prevented.
実施の形態1.
実施の形態1について、図1〜図10を用いて説明する。
Embodiment 1 FIG.
The first embodiment will be described with reference to FIGS.
図1は、この実施の形態における暗号処理システム800の全体構成の一例を示すシステム構成図である。
暗号処理システム800は、この実施の形態における鍵管理方式を用いたシステムの一例である。
暗号処理システム800は、鍵管理装置10と、業務アプリケーション装置500と、暗号/復号化装置400と、クライアントアプリケーション装置600とを有する。
FIG. 1 is a system configuration diagram showing an example of the overall configuration of the
The
The
鍵管理装置10は、業務アプリケーション装置500が暗号処理に使用する鍵を管理する。鍵管理装置10は、鍵・パスワード生成管理装置100と、キーストア装置200と、パスワードストア装置300とを有する。鍵管理装置10は、API(Apprication Programming Interface)やネットワークなどにより、外部の業務アプリケーション装置500と接続されている。
The
業務アプリケーション装置500(実行装置)は、業務アプリケーションを実行する装置である。1つの鍵管理装置10に対して、複数の業務アプリケーション装置500がある構成であってもよいし、1つの業務アプリケーション装置500が、複数の業務アプリケーションを実行する構成であってもよい。
業務アプリケーション装置500は、管理者や定義ファイルなどからパスワード情報を取得する。業務アプリケーション装置500(取得要求部)は、渡されたパスワード情報を用いて、鍵管理装置10に対して、情報の暗号/復号化を行う鍵の取得を要求する。業務アプリケーション装置500は、クライアントアプリケーション装置600からの処理要求の延長やその他の処理をする際、鍵・パスワード生成管理装置100から取得した暗号/復号鍵を暗号/復号化装置400に渡して、暗号処理を要求する。
暗号/復号化装置400(暗号処理部)は、業務アプリケーション装置500からの要求に応じて、業務アプリケーション装置500から受け取った鍵を使って、情報の暗号/復号化などの暗号処理を行う。
The business application device 500 (execution device) is a device that executes a business application. There may be a configuration in which there are a plurality of
The
The encryption / decryption device 400 (encryption processing unit) performs encryption processing such as encryption / decryption of information using the key received from the
キーストア装置200(順記憶部)は、鍵を記憶している。キーストア装置200は、例えば、鍵情報を保持するファイルや、ハードウェアデバイスなどである。キーストア装置200が記憶した鍵にアクセスするためには、キーストアパスワード(鍵パスワード)が必要である。キーストア装置200(順記憶部)は、鍵を記憶するにあたり、鍵と一緒にその鍵のキーストアパスワードを記憶する。キーストア装置200(鍵登録部、鍵取得部)は、キーストアパスワードによって、内部に管理する鍵情報の登録/取得/更新/削除のアクセス制御を行う。例えば、キーストア装置200(鍵取得部)は、記憶した鍵の読み出し要求とともにキーストアパスワードを入力し、入力したキーストアパスワードが、記憶したキーストアパスワードと一致した場合のみ、鍵を返す。
パスワードストア装置300(逆記憶部)は、キーストアパスワードを記憶している。パスワードストア装置300は、例えば、パスワード情報を保持するファイルや、ハードウェアデバイスなどである。パスワードストア装置300が記憶したキーストアパスワードにアクセスするためには、パスワードストアパスワード(逆パスワード)が必要である。パスワードストア装置300(逆記憶部)は、キーストアパスワードを記憶するにあたり、キーストアパスワードと一緒にそのキーストアパスワードのパスワードストアパスワードを記憶する。パスワードストア装置300(パスワード登録部、パスワード取得部)は、パスワードストア・パスワードによって内部に管理するパスワード情報の登録/取得/更新/削除のアクセス制御を行う。例えば、パスワードストア装置300(パスワード取得部)は、記憶したキーストアパスワードの読み出し要求とともにパスワードストアパスワードを入力し、入力したパスワードストアパスワードが、記憶したパスワードストアパスワードと一致した場合のみ、キーストアパスワードを返す。
The key store device 200 (order storage unit) stores a key. The
The password store device 300 (reverse storage unit) stores a key store password. The
鍵・パスワード生成管理装置100は、業務アプリケーション装置500からの鍵取得要求に対して、キーストア装置200から鍵を取得する。キーストア装置200に鍵がない場合、鍵・パスワード生成管理装置100は、鍵を新規に生成し、生成した鍵をキーストア装置200に登録する。鍵・パスワード生成管理装置100は、取得あるいは生成した鍵を、業務アプリケーション装置500に対して戻す。
鍵・パスワード生成管理装置100は、業務アプリケーション装置500の呼び出し情報とパスワード情報とに基づいて、キーストアパスワードを生成し、キーストア装置200にアクセスする。また、鍵・パスワード生成管理装置100は、鍵情報に基づいて、パスワードストアパスワードを生成し、パスワードストア装置300にアクセスする。
The key / password
The key / password
図2は、この実施の形態における鍵管理装置10及び暗号/復号化装置400及び業務アプリケーション装置500及びクライアントアプリケーション装置600の外観の一例を示す斜視図である。
鍵管理装置10及び暗号/復号化装置400及び業務アプリケーション装置500及びクライアントアプリケーション装置600は、システムユニット910、CRT(Cathode・Ray・Tube)やLCD(液晶)の表示画面を有する表示装置901、キーボード902(Key・Board:K/B)、マウス903、FDD904(Flexible・Disk・Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
システムユニット910は、コンピュータであり、ファクシミリ機932、電話器931とケーブルで接続され、また、ローカルエリアネットワーク942(LAN)、ゲートウェイ941を介してインターネット940に接続されている。
なお、上記の構成は一例である。鍵管理装置10などは、プリンタ装置906やファクシミリ機932などの出力装置を有さない最小限の構成であってもよい。不要な出力装置がない最小限の構成とすることで、情報漏洩を防止することができる。
FIG. 2 is a perspective view showing an example of the appearance of the
The
The system unit 910 is a computer, and is connected to the
The above configuration is an example. The
図3は、この実施の形態における鍵管理装置10及び暗号/復号化装置400及び業務アプリケーション装置500及びクライアントアプリケーション装置600のハードウェア資源の一例を示す図である。
鍵管理装置10及び暗号/復号化装置400及び業務アプリケーション装置500及びクライアントアプリケーション装置600は、プログラムを実行するCPU911(Central・Processing・Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、通信装置915、表示装置901、キーボード902、マウス903、FDD904、CDD905、プリンタ装置906、スキャナ装置907、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。通信装置915、キーボード902、スキャナ装置907、FDD904、CDD905などは、入力部、入力装置の一例である。
また、通信装置915、表示装置901、プリンタ装置906などは、出力部、出力装置の一例である。
FIG. 3 is a diagram illustrating an example of hardware resources of the
The
The
Further, the
通信装置915は、ファクシミリ機932、電話器931、LAN942等に接続されている。通信装置915は、LAN942に限らず、インターネット940、ISDN等のWAN(ワイドエリアネットワーク)などに接続されていても構わない。インターネット940或いはISDN等のWANに接続されている場合、ゲートウェイ941は不用となる。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。
The
The
上記プログラム群923には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータは、「〜ファイル」や「〜データベース」の各項目として磁気ディスク装置920などの不揮発性メモリが記憶し、あるいは、RAM914など揮発性メモリが一時的に記憶する。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPUの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD(Digital・Versatile・Disk)等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
The
The
In addition, the arrows in the flowcharts described in the following description of the embodiments mainly indicate input / output of data and signals. The data and signal values are the
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
In the description of the embodiments described below, what is described as “to part” may be “to circuit”, “to device”, and “to device”, and “to step” and “to”. “Procedure” and “˜Process” may be used. That is, what is described as “˜unit” may be realized by firmware stored in the
図4は、この実施の形態における暗号処理システム800の初期処理の流れの一例を示すシーケンス図である。
FIG. 4 is a sequence diagram showing an example of the initial processing flow of the
「1:パスワード設定」において、業務アプリケーション装置500(取得要求部)は、管理者または定義ファイルなどからパスワード情報を取得する。
「1.1:鍵取得要求」において、業務アプリケーション装置500(取得要求部)は、取得したパスワード情報を用いて、鍵・パスワード生成管理装置100に対して、鍵取得要求を行う。この際、業務アプリケーション装置500は、鍵・パスワード生成管理装置100に対して、パスワード情報と一緒に、呼び出し情報(文脈)としてコールスタックの情報を渡す。
「1.1.1:キーストアパスワードの生成」において、鍵・パスワード生成管理装置100(鍵パスワード算出部)は、業務アプリケーション装置500からの呼び出し情報(コールスタックなど)とパスワード情報とに基づいて、キーストアパスワードを算出する。
In “1: password setting”, the business application apparatus 500 (acquisition request unit) acquires password information from an administrator or a definition file.
In “1.1: Key acquisition request”, the business application apparatus 500 (acquisition request unit) makes a key acquisition request to the key / password
In “1.1.1: Key store password generation”, the key / password generation management device 100 (key password calculation unit) is based on the call information (call stack or the like) from the
「1.1.2:鍵取得要求」において、鍵・パスワード生成管理装置100(パスワード算出部)は、キーストア装置200(鍵取得部)に対して、生成したキーストアパスワードを用いて鍵の取得要求を行う。鍵・パスワード生成管理装置100は、キーストア装置200に対して、キーストアパスワードを通知する。なお、鍵・パスワード生成管理装置100は、キーストアパスワードに加えて、例えばエイリアス名をキーストア装置200に対して通知する構成であってもよい。エイリアス名は、1つの鍵管理装置10が鍵を管理する業務アプリケーションが複数ある場合に、業務アプリケーションを区別するためのデータである。鍵・パスワード生成管理装置100は、例えば、業務アプリケーションから渡されるパラメータや、鍵パスワード生成管理装置で呼び出し情報などから生成する値を、エイリアス名として、キーストア装置200に対して通知する。
In “1.1.2: Key acquisition request”, the key / password generation management device 100 (password calculation unit) uses the generated key store password to the key store device 200 (key acquisition unit). Make an acquisition request. The key / password
初回起動時など、キーストア装置200(順記憶部)に鍵が登録されていない場合、キーストア装置200(鍵取得部)は、鍵・パスワード生成管理装置100に対して、鍵の取得に失敗したことを通知する。その場合、「1.1.3:鍵生成」において、鍵・パスワード生成管理装置100(新規鍵生成部)は、新規に鍵の生成を行う。
鍵・パスワード生成管理装置100(新規鍵生成部)は、鍵アルゴリズムや鍵長などのパラメータにしたがって、鍵を生成する。鍵・パスワード生成管理装置100は、例えば、設定ファイル等に保持されているパラメータを読み出して鍵を生成する構成であってもよいし、業務アプリケーションから指定されるパラメータを用いて鍵を生成する構成であってもよい。
When the key is not registered in the key store device 200 (sequential storage unit) such as at the first activation, the key store device 200 (key acquisition unit) fails to acquire the key from the key / password
The key / password generation management device 100 (new key generation unit) generates a key according to parameters such as a key algorithm and a key length. For example, the key / password
「1.1.4:鍵登録要求」において、鍵・パスワード生成管理装置100(鍵登録部)は、生成した鍵を、同じく生成したキーストアパスワードを用いて、キーストア装置200(順記憶部)に対して登録する。これ以降、この鍵情報にアクセスするには、登録時に設定したキーストアパスワードが必要になる。 In “1.1.4: Key registration request”, the key / password generation management device 100 (key registration unit) uses the generated key store password to generate the key store device 200 (sequential storage unit). ). Thereafter, in order to access this key information, the key store password set at the time of registration is required.
「1.1.5:パスワードストアパスワードの生成」において、鍵・パスワード生成管理装置100(逆パスワード算出部)は、生成した鍵情報に対して符号化を行うことにより、パスワードストアパスワードを算出する。
「1.1.6:パスワード登録要求」において、鍵・パスワード生成管理装置100(パスワード登録部)は、パスワードストア装置300(逆記憶部)に対して、生成したパスワードストア・パスワードを用いてキーストアパスワードを登録する。
In “1.1.5: Password store password generation”, the key / password generation management device 100 (reverse password calculation unit) calculates the password store password by encoding the generated key information. .
In “1.1.6: Password registration request”, the key / password generation management device 100 (password registration unit) uses the generated password store / password to the password store device 300 (reverse storage unit). Register the store password.
この処理の後、鍵・パスワード生成管理装置100(鍵出力部)は、業務アプリケーション装置500に対して、生成した鍵を、鍵取得要求の結果として返す。
業務アプリケーション装置500(暗号鍵記憶部)は、返された鍵を受け取って、オンメモリ(揮発性記憶装置)で保持する。
After this processing, the key / password generation management device 100 (key output unit) returns the generated key to the
The business application device 500 (encryption key storage unit) receives the returned key and holds it in the on-memory (volatile storage device).
「2:処理要求」において、クライアントアプリケーション装置600は、業務アプリケーション装置500に対して、処理を要求する。業務アプリケーション装置500は、要求された処理の実行にあたり暗号化処理が必要な場合、暗号/復号化装置400(暗号処理部)に対して、平文と、オンメモリに保持している鍵とを通知して、暗号化を要求する。暗号/復号化装置400は、通知された鍵を使って、平文を暗号化し、暗号文を返す。
In “2: processing request”, the
「3:処理要求」において、クライアントアプリケーション装置600は、業務アプリケーション装置500に対して、処理を要求する。業務アプリケーション装置500は、要求された処理の実行にあたり復号処理が必要な場合、暗号/復号化装置400(暗号処理部)に対して、暗号文と、オンメモリに保持している鍵とを通知して、復号を要求する。暗号/復号化装置400は、通知された鍵を使って、暗号文を復号し、復号した平文を返す。
In “3: processing request”, the
図5は、この実施の形態におけるキーストアパスワードの作成手順の一例を示す図である。
例えば、鍵・パスワード生成管理装置100(取得要求入力部)は、業務アプリケーション装置500からパスワード701と、呼び出し情報702(コールスタック)とを受け取る。鍵・パスワード生成管理装置100(鍵パスワード算出部)は、受け取ったパスワード701と、呼び出し情報702とを連結した情報(連結データ703)を作成する。鍵・パスワード生成管理装置100(鍵パスワード算出部)は、作成した情報を、一方向性関数を使って、キーストアパスワードとして利用可能な文字列等(キーストアパスワード705)に変換する。例えば、鍵・パスワード生成管理装置100(鍵パスワード算出部)は、この連結した値に対してハッシュ値を取り、それをBase64エンコードするなどの符号化を行い、その結果をキーストアパスワードとする。
FIG. 5 is a diagram showing an example of a procedure for creating a key store password in this embodiment.
For example, the key / password generation management device 100 (acquisition request input unit) receives the
図6は、この実施の形態におけるキーストアパスワードの作成例を示す図である。
パスワード701は、例えば、管理者が業務アプリケーション装置500に入力する。
業務アプリケーション装置500は、例えば、パスワード701を引数として、鍵・パスワード生成管理装置100が提供する鍵管理オブジェクトの鍵取得要求メソッドを呼び出す。このとき、業務アプリケーション装置500には、引数であるパスワード701だけでなく、呼び出し情報702が渡される。
呼び出し情報702(コールスタック)は、例えば、業務アプリケーション装置500が提供するオブジェクトのメソッドがどのような順で呼び出されているかなどを表わすデータである。例えば、この図に示した呼び出し情報702は、クラス「jp.co.mitsubishielectric.key.App」のメソッド「main」が、ソースコード「App.java」の18行目で、クラス「jp.co.mitsubishielectric.key.App」のメソッド「initialize」を呼び出したことを表わしている。更に、この図に示した呼び出し情報702は、呼び出されたメソッド「initialize」が、そのソースコード「App.java」の27行目で、クラス「jp.co.mitsubishielectric.key.KeyManage」のメソッド「getKeyPair」を呼び出したことを表わしている。このように、呼び出し情報702は、業務アプリケーション装置500が実行しているプログラムが自動的に生成するものであり、プログラムの構造によって定まる固有のデータであって、業務アプリケーション装置500の管理者などが任意に設定できるものではない。業務アプリケーション装置500や他の装置が実行する他のプログラムが、鍵取得要求メソッドを呼び出したとすると、異なる呼び出し情報702が鍵・パスワード生成管理装置100に渡される。
連結データ703は、鍵・パスワード生成管理装置100がパスワード701と呼び出し情報702とを連結して生成したデータである。鍵・パスワード生成管理装置100は、例えば、パスワード701を表わす文字列データの後ろに、呼び出し情報702を表わす文字列データを結合して、連結データ703を生成する。
ハッシュ値704は、鍵・パスワード生成管理装置100が連結データ703をハッシュして算出したハッシュ値(16進表記)である。
キーストアパスワード705は、鍵・パスワード生成管理装置100がハッシュ値704をエンコードした文字列データである。
FIG. 6 is a diagram showing an example of creating a key store password in this embodiment.
For example, the administrator inputs the
For example, the
The call information 702 (call stack) is data representing, for example, in what order the methods of the objects provided by the
The concatenated
The
The
図7は、この実施の形態におけるパスワードストアパスワードの作成手順の一例を示す図である。
例えば、鍵・パスワード生成管理装置100(逆パスワード算出部)は、一方向性関数を使って、鍵706に対するハッシュ値を生成する。鍵・パスワード生成管理装置100(逆パスワード算出部)は、その結果に対してBase64エンコードを行うことで、パスワードストアパスワード708として利用可能な文字列等に変換する。
FIG. 7 is a diagram showing an example of a procedure for creating a password store password in this embodiment.
For example, the key / password generation management device 100 (reverse password calculation unit) generates a hash value for the key 706 using a one-way function. The key / password generation management device 100 (reverse password calculation unit) converts the result into a character string that can be used as the
図8は、この実施の形態におけるパスワードストアパスワードの作成例を示す図である。
鍵706は、例えば、RSA(登録商標)のプライベート鍵(16進表記)である。鍵・パスワード生成管理装置100が鍵706を生成する。
ハッシュ値707は、鍵・パスワード生成管理装置100が鍵706をハッシュして算出したハッシュ値(16進表記)である。
パスワードストアパスワード708は、鍵・パスワード生成管理装置100がハッシュ値707をエンコードした文字列データである。
FIG. 8 is a diagram showing an example of creating a password store password in this embodiment.
The key 706 is, for example, an RSA (registered trademark) private key (in hexadecimal notation). The key / password
The
The
図9は、この実施の形態における暗号処理システム800の再起動時の処理の流れの一例を示すシーケンス図である。
再起動などにより、業務アプリケーション装置500のオンメモリ上から鍵が削除された場合、再び鍵・パスワード生成管理装置100から鍵を取得する必要が生じる。
FIG. 9 is a sequence diagram showing an example of the flow of processing when the
When the key is deleted from the on-memory of the
「1:パスワード設定」において、業務アプリケーション装置500(取得要求部)は、管理者などからパスワードを取得する。
「1.1:鍵取得要求」において、業務アプリケーション装置500(取得要求部)は、取得したパスワード情報を用いて、鍵・パスワード生成管理装置100に対して、鍵取得要求を行う。この際、業務アプリケーション装置500は、鍵・パスワード生成管理装置100に対して、パスワード情報と一緒に、呼び出し情報としてコールスタックの情報を渡す。
In “1: password setting”, the business application apparatus 500 (acquisition request unit) acquires a password from an administrator or the like.
In “1.1: Key acquisition request”, the business application apparatus 500 (acquisition request unit) makes a key acquisition request to the key / password
「1.1.1:キーストアパスワードの生成」において、鍵・パスワード生成管理装置100(鍵パスワード算出部)は、業務アプリケーション装置500からの呼び出し情報(コールスタックなど)とパスワード情報とに基づいて、キーストアパスワードを算出する。
業務アプリケーション装置500が鍵・パスワード生成管理装置100に渡すコールスタックは、初期処理のときと同じである。したがって、業務アプリケーション装置500が管理者などから取得したパスワードが初期処理のときと同じであれば、鍵・パスワード生成管理装置100が算出するキーストアパスワードは、初期処理のときと同じになる。
In “1.1.1: Key store password generation”, the key / password generation management device 100 (key password calculation unit) is based on the call information (call stack or the like) from the
The call stack that the
「1.1.2:鍵取得要求」において、鍵・パスワード生成管理装置100(パスワード算出部)は、キーストア装置200(鍵取得部)に対して、生成したキーストアパスワードを用いて鍵の取得要求を行う。
今回は、キーストア装置200(順記憶部)に登録済の鍵情報がある。キーストア装置200(鍵取得部)は、鍵・パスワード生成管理装置100から通知されたキーストアパスワードが、登録されたキーストアパスワードと一致すれば、登録された鍵を、鍵・パスワード生成管理装置100に対して返す。
鍵・パスワード生成管理装置100(鍵出力部)は、キーストア装置200から取得した鍵を、業務アプリケーション装置500に対して返す。
In “1.1.2: Key acquisition request”, the key / password generation management device 100 (password calculation unit) uses the generated key store password to the key store device 200 (key acquisition unit). Make an acquisition request.
This time, there is registered key information in the key store device 200 (sequential storage unit). If the key store password notified from the key / password
The key / password generation management device 100 (key output unit) returns the key acquired from the
図10は、この実施の形態における暗号処理システム800の鍵更新時の処理の流れの一例を示すシーケンス図である。
FIG. 10 is a sequence diagram showing an example of a processing flow at the time of key update in the
機密の漏洩を防ぐには、鍵を定期的に更新することが望ましい。管理者が鍵を更新すべき時期が来たと判断した場合、業務アプリケーション装置500に対して鍵の更新を要求する。
「1:鍵更新要求」において、業務アプリケーション装置500(更新要求部)は、管理者からの鍵更新要求を受ける。
「1.1:鍵更新要求」において、業務アプリケーション装置500(更新要求部)は、鍵・パスワード生成管理装置100に対して、オンメモリに保持している更新前の古い鍵を通知して、鍵の更新要求を行う。なお、業務アプリケーション装置500は、タイマーなどを用いて鍵を生成・更新してからの経過時間を測定し、所定の期間(例えば一週間や一か月)が経過した場合に、管理者からの要求によらず自動的に、鍵・パスワード生成管理装置100に対して鍵の更新を要求する構成であってもよい。
It is desirable to update the key regularly to prevent leakage of confidential information. If the administrator determines that it is time to update the key, it requests the
In “1: Key update request”, the business application apparatus 500 (update request unit) receives a key update request from the administrator.
In “1.1: Key update request”, the business application device 500 (update request unit) notifies the key / password
業務アプリケーション装置500のコールスタックは、鍵取得要求時と異なる。このため、鍵・パスワード生成管理装置100は、業務アプリケーション装置500からパスワードと呼び出し情報とを受け取ったとしても、初期処理時や再起動時と同じキーストアパスワードを生成することはできない。その代わりとして、鍵・パスワード生成管理装置100は、パスワードストア装置300にアクセスして、キーストアパスワードを入手する。
The call stack of the
「1.1.1:パスワードストアパスワードの生成」において、鍵・パスワード生成管理装置100(逆パスワード算出部)は、業務アプリケーション装置500から通知された鍵に基づいて、パスワードストアパスワード(逆パスワード)を生成する。業務アプリケーション装置500から通知された鍵が、キーストア装置200(順記憶部)に登録されている古い鍵と同一であれば、鍵・パスワード生成管理装置100が生成するパスワードストアパスワードは、初期処理のときと同じになるから、パスワードストア装置300(逆記憶部)に登録されているパスワードストアパスワードと一致する。
「1.1.2:パスワード取得要求」において、鍵・パスワード生成管理装置100(逆パスワード算出部)は、パスワードストア装置300(パスワード取得部)に対して、生成したパスワードストアパスワードを通知して、パスワードの取得を要求する。パスワードストア装置300(パスワード取得部)は、鍵・パスワード生成管理装置100から通知されたパスワードストアパスワードが、初期処理時に登録されたパスワードストアパスワードと一致すれば、初期処理時に登録されたキーストアパスワードを、鍵・パスワード生成管理装置100に対して返す。鍵・パスワード生成管理装置100は、パスワードストア装置300が返したキーストアパスワードを取得する。これにより、鍵・パスワード生成管理装置100は、初期処理時や再起動時と同じキーストアパスワードを入手する。
In “1.1.1: Password store password generation”, the key / password generation management device 100 (reverse password calculation unit) determines the password store password (reverse password) based on the key notified from the
In “1.1.2: Password acquisition request”, the key / password generation management device 100 (reverse password calculation unit) notifies the password store device 300 (password acquisition unit) of the generated password store password. , Request password acquisition. If the password store password notified from the key / password
「1.1.3:鍵生成」において、鍵・パスワード生成管理装置100(更新鍵生成部)は、更新後の新しい鍵を生成する。
「1.1.4:鍵更新登録要求」において、鍵・パスワード生成管理装置100(更新鍵生成部)は、キーストア装置200に対して、パスワードストア装置300から入手したキーストアパスワードと、生成した更新後の新しい鍵とを通知して、鍵の更新登録を要求する。キーストア装置200(鍵更新部)は、鍵・パスワード生成管理装置100から通知されたキーストアパスワードが、初期処理時に登録されたキーストアパスワードと一致すれば、更新要求を受け入れる。キーストア装置200(順記憶部)は、初期処理時に登録された古い鍵を削除し、その代わりとして、鍵・パスワード生成管理装置100から通知された新しい鍵を記憶する。なお、更新されるのは鍵だけであり、キーストアパスワードは、更新前と変わらず、初期処理時に登録されたキーストアパスワードのままである。
「1.1.5:パスワードストアパスワードの生成」において、鍵・パスワード生成管理装置100(逆パスワード算出部)は、生成した新しい鍵に基づいて、パスワードストアパスワードを生成する。鍵・パスワード生成管理装置100が生成するパスワードストアパスワードは、鍵が更新されたので、更新前のパスワードストアパスワードと異なる。
「1.1.6:パスワード更新登録要求」において、鍵・パスワード生成管理装置100は、パスワードストア装置300に対して、生成したパスワードストアパスワードと、パスワードストア装置300から入力したキーストアパスワードとを通知して、パスワードの更新登録を要求する。パスワードストア装置300(鍵更新部)は、鍵・パスワード生成管理装置100から通知されたキーストアパスワードが、初期処理時に登録されたキーストアパスワードと一致すれば、更新要求を受け入れる。パスワードストア装置300(逆記憶部)は、初期処理時に登録された古いパスワードストアパスワードを削除し、その代わりとして、鍵・パスワード生成管理装置100から通知された新しいパスワードストアパスワードを記憶する。なお、更新されるのはパスワードストアパスワードだけであり、キーストアパスワードは、更新前と変わらず、初期処理時に登録されたキーストアパスワードのままである。
In “1.1.3: Key generation”, the key / password generation management device 100 (update key generation unit) generates a new key after update.
In “1.1.4: Key update registration request”, the key / password generation management device 100 (update key generation unit) generates a key store password obtained from the
In “1.1.5: Password store password generation”, the key / password generation management device 100 (reverse password calculation unit) generates a password store password based on the generated new key. The password store password generated by the key / password
In “1.1.6: Password update registration request”, the key / password
その後、鍵・パスワード生成管理装置100(更新鍵出力部)は、業務アプリケーション装置500に対して、新しく作成した鍵を返す。
業務アプリケーション装置500(暗号鍵更新部)は、更新された新しい鍵をオンメモリに保持して、暗号処理をする。業務アプリケーション装置500(暗号更新部)は、例えば、既に暗号化したデータを古い鍵を使って復号し、復号した平文を新しい鍵を使って再暗号化するなどの処理を行う。
Thereafter, the key / password generation management device 100 (update key output unit) returns the newly created key to the
The business application apparatus 500 (encryption key update unit) holds the updated new key in the on-memory and performs encryption processing. The business application apparatus 500 (encryption update unit) performs processing such as decrypting already encrypted data using an old key and re-encrypting the decrypted plaintext using a new key.
この実施の形態における暗号処理システム800(鍵管理方式)は、鍵を用いて情報の暗号/復号化を行う暗号/復号化装置400と、内部に管理する鍵情報の登録/取得/更新/削除のアクセス制御をエイリアス名とパスワードによって管理するキーストア装置200と、内部に管理するパスワード情報の登録/取得/更新/削除のアクセス制御をエイリアス名とパスワードによって管理するパスワードストア装置300と、鍵/パスワードの生成および上記装置への情報の登録/取得/更新/削除を行う鍵・パスワード生成管理装置100とを備え、アプリケーション(業務アプリケーション装置500)からの呼び出し情報と管理者(設定ファイル等を含む)からのパスワード情報を組み合わせてキーストア装置用のパスワード(キーストア・パスワード)を生成し、生成した鍵情報を、本キーストアパスワードを用いて登録する。
The cryptographic processing system 800 (key management method) in this embodiment includes an encryption /
暗号処理システム800は、鍵管理装置10に登録する鍵情報を符号化してパスワードを生成し、キーストアパスワードを管理するパスワードストア装置300のパスワード(パスワードストア・パスワード)として用いる。
The
これにより、プログラムに埋め込んだ情報など開発者が知る情報を使わないので、管理者および開発者による内部からの不正なアクセスを防ぐことができる。これにより、管理者/開発者からの不正アクセスに対する強度が向上する。また、鍵情報の更新が可能なので、危殆化を防ぐことができる。 As a result, information that the developer knows, such as information embedded in the program, is not used, so that unauthorized access from the inside by the administrator and the developer can be prevented. This improves the strength against unauthorized access from the administrator / developer. Moreover, since the key information can be updated, the compromise can be prevented.
暗号・復号および鍵管理装置10は、業務アプリケーション装置500の利用する鍵の生成および管理用のパスワード情報を作成する鍵・パスワード生成管理装置100と、パスワードにより保持する鍵情報へのアクセス制御を行うキーストア装置200と、パスワードにより保持するパスワード情報へのアクセス制御を行うパスワードストア装置300とを備え、管理者/開発者にも入手が困難な業務アプリケーションの呼び出し情報(コールスタック等)と管理者の入力するパスワード情報からキーストアパスワードを作成することにより、管理者/開発者からの不正アクセスに対する強度を向上させることができる。
また、作成した鍵情報からパスワードストア・パスワードを作成することにより、業務アプリケーションからの鍵の更新要求に応じてキーストア装置内の鍵を更新することができる。
The encryption / decryption and
Further, by creating a password store / password from the created key information, the key in the key store device can be updated in response to a key update request from the business application.
これにより、情報を暗号/復号化するシステムにおいて、鍵情報の更新を可能にするとともに、管理者/開発者の不正アクセスによる情報漏えいのリスクを低減することが可能となる。 As a result, in the system for encrypting / decrypting information, it is possible to update key information and to reduce the risk of information leakage due to unauthorized access by an administrator / developer.
実施の形態2.
実施の形態2について、図11〜図14を用いて説明する。
なお、実施の形態1と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 2. FIG.
The second embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 1, the same code | symbol is attached | subjected and description is abbreviate | omitted.
図11は、この実施の形態における暗号処理システム800の機能ブロックの構成の一例を示すブロック構成図である。
FIG. 11 is a block configuration diagram showing an example of the functional block configuration of the
暗号処理システム800は、例えば、実行装置501と、鍵管理装置10とを有する。
実行装置501は、平文データを入力し、入力した平文データを暗号化して暗号化データを生成し、生成した暗号化データを記憶しておく。実行装置501は、必要に応じて、記憶した暗号化データを復号して、平文データを復元し、復元した平文データ(復元平文データ)を出力する。実行装置501のハードウェア構成は、例えば、図3を用いて説明した鍵管理装置10のハードウェア構成と同様である。
The
The
鍵管理装置10は、実行装置501が暗号化や復号などの暗号処理に使用する鍵を管理する。
鍵管理装置10は、例えば、鍵記憶部110と、取得要求入力部121と、更新要求入力部122と、応答出力部123と、鍵パスワード算出部131と、鍵取得部132と、鍵生成部133と、応答生成部134と、鍵登録部135と、逆パスワード算出部136と、パスワード取得部137とを有する。
The
The
鍵記憶部110は、磁気ディスク装置920(記憶装置)を用いて、鍵管理装置10が管理している鍵を表わす鍵データを記憶している。また、鍵データに対するアクセスを制限するため、鍵記憶部110は、鍵データにアクセスするための鍵パスワードを記憶している。
また、1つの鍵管理装置10が鍵を管理する実行装置501が複数ある場合や、1つの実行装置501が複数の鍵を使用する場合などが想定されるため、鍵管理装置10は、複数の鍵を管理する場合がある。このため、鍵記憶部110は、複数の鍵データを記憶する。それぞれの鍵データを識別するため、鍵記憶部110は、それぞれの鍵の識別データを記憶する。
The
In addition, since it is assumed that there is a plurality of
鍵記憶部110は、順記憶部201と、逆記憶部301とを有する。
順記憶部201は、磁気ディスク装置920(記憶装置)を用いて、鍵を表わす鍵データと、その鍵の鍵パスワードと、その鍵の識別データとを対応づけて記憶する。
逆記憶部301は、磁気ディスク装置920(記憶装置)を用いて、順記憶部201が記憶した鍵パスワードと、その鍵パスワードにアクセスするための逆パスワードと、その鍵パスワードによってアクセスされる鍵の識別データとを対応づけて記憶する。
The
Using the magnetic disk device 920 (storage device), the
The
取得要求入力部121は、CPU911(処理装置)を用いて、実行装置501が通知した鍵取得要求メッセージを入力する。鍵取得要求メッセージは、鍵管理装置10が管理している鍵の取得を要求することを表わす。鍵取得要求メッセージは、取得したい鍵の識別データと、その鍵に対応する管理パスワードとを含む。また、鍵取得要求メッセージは、実行装置501が本物であることを証明するための証明データを含む。これは、実行装置501になりすました偽物に鍵管理装置10が管理する鍵を窃取されないためである。証明データには、例えば、実行装置501に固有の識別データや、公開鍵暗号を利用した署名データなどがある。また、証明データは、取得要求入力部121が入力した鍵取得要求メッセージを実行装置501が通知した文脈を表わす文脈データであってもよい。
ここでいう「文脈」とは、例えば、コンピュータがプログラムを実行する際、サブルーチンや関数、メソッドなどの呼び出し時に、保存しておく戻り先などを表わす情報のことである。すなわち、「文脈」は、実行装置501が実行装置501として機能するために実行しているプログラムの構造によって定まるものであり、偽造することができない。例えば、実行装置501が実行しているプログラム内において、鍵管理装置10は、一つのオブジェクトとして認識され、そのオブジェクトの鍵取得要求メソッドを呼び出すことによって、鍵管理装置10に対する鍵取得要求メッセージが通知される。「文脈」は、プログラム言語の仕様によって、鍵管理装置10に通知される。
このため、文脈データを証明データとして利用すると、単なる識別データを利用する場合と違って、なりすましが困難になる。文脈データを証明データとして利用すると、公開鍵暗号を利用した署名データを利用する場合と違って、計算量が少ないなど、実行装置501が本物であることを証明するためのコストを抑えることができる。
The acquisition
The “context” here refers to information indicating a return destination to be saved when a computer executes a program or calls a subroutine, function, method, or the like. In other words, the “context” is determined by the structure of the program being executed in order for the
For this reason, when context data is used as proof data, impersonation becomes difficult unlike the case where simple identification data is used. When the context data is used as proof data, unlike the case where signature data using public key cryptography is used, the cost for certifying that the
更新要求入力部122は、CPU911(処理装置)を用いて、実行装置501が通知した鍵更新要求メッセージを入力する。鍵更新要求メッセージは、鍵管理装置10が管理している鍵の更新を要求することを表わす。鍵更新要求メッセージは、更新したい鍵の識別データと、更新前の古い鍵そのものを表わす鍵データとを含む。鍵更新要求メッセージは、証明データを含む必要はない。なぜなら、鍵更新要求メッセージは更新前の鍵データを含むので、鍵更新要求メッセージを通知してきた装置は、更新前の鍵を知っている。鍵の秘密性が守られている限りにおいて、更新前の鍵を知っているのは、実行装置501だけであるから、実行装置501が本物であることを証明する必要はない。
The update
応答出力部123(鍵出力部、更新鍵出力部)は、CPU911(処理装置)を用いて、実行装置501に対して、取得要求入力部121が入力した鍵取得要求メッセージや、更新要求入力部122が入力した鍵更新要求メッセージに対する応答メッセージを出力する。応答メッセージは、鍵の取得や更新が成功したか否かを表わす成否データを含む。また、鍵の取得や更新が成功した場合、応答メッセージは、取得した鍵あるいは更新後の新しい鍵を表わす鍵データを含む。
The response output unit 123 (key output unit, update key output unit) uses the CPU 911 (processing device) to send a key acquisition request message input by the acquisition
鍵パスワード算出部131は、CPU911(処理装置)を用いて、鍵パスワードを算出する。鍵パスワード算出部131は、取得要求入力部121が入力した鍵取得要求メッセージに含まれる管理パスワードと証明データとに基づいて、鍵パスワードを算出する。鍵パスワード算出部131は、例えば、管理パスワードと証明データとを連結し、ハッシュ関数などの一方向性関数を使用して、連結したデータを変換することにより、鍵パスワードを算出する。鍵パスワード算出部131が鍵パスワードを算出するために使用する関数は、衝突困難性と予測困難性とを有する関数であることが望ましい。衝突困難性とは、管理パスワードと証明データとのいずれか一方が1ビットでも異なれば、異なる鍵パスワードが算出されることをいう。また、予測困難性とは、管理パスワードと証明データとのいずれか一方が1ビットでも不明であれば、算出される鍵パスワードを1ビットも予測できないことをいう。
The key
鍵取得部132は、CPU911(処理装置)を用いて、順記憶部201から鍵データを取得する。鍵取得部132は、順記憶部201が記憶した識別データのなかから、取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データと一致するものを探す。一致する識別データがある場合、鍵取得部132は、その識別データに対応づけて順記憶部201が記憶した鍵パスワードと、鍵パスワード算出部131が算出した鍵パスワードとが一致するか否かを判定する。鍵取得部132は、鍵パスワードが一致する場合、その鍵パスワード及び識別データに対応づけて順記憶部201が記憶した鍵データを取得する。それ以外の場合、鍵取得部132は、鍵データの取得に失敗する。
The
鍵生成部133(新規鍵生成部、更新鍵生成部)は、CPU911(処理装置)を用いて、新たな鍵を表わす鍵データを生成する。鍵生成部133が鍵データを生成する場合には、新規登録時と、更新時との2つの場合がある。新規登録時とは、鍵取得部132が鍵データの取得に失敗した場合のうち、順記憶部201が記憶した識別データのなかに、取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データと一致する識別データがなかった場合である。更新時については、後述する。
The key generation unit 133 (new key generation unit, update key generation unit) uses the CPU 911 (processing device) to generate key data representing a new key. When the
応答生成部134は、CPU911(処理装置)を用いて、応答出力部123が出力する応答メッセージを生成する。鍵取得部132が鍵データを取得した場合、応答生成部134は、鍵取得部132が取得した鍵データを含む応答メッセージを生成する。また、鍵生成部133が鍵データを生成した場合、応答生成部134は、鍵生成部133が生成した鍵データを含む応答メッセージを生成する。それ以外の場合、応答生成部134は、鍵の取得あるいは更新に失敗したことを表わす応答メッセージを生成する。
The
鍵登録部135は、CPU911(処理装置)を用いて、順記憶部201に鍵データを登録する。鍵登録部135が鍵データを登録する場合には、新規登録時と更新時との2つの場合がある。新規登録時において、鍵登録部135は、CPU911(処理装置)を用いて、順記憶部201が記憶した識別データのなかから、取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データと一致するものを探す。新規登録時とは、鍵取得部132が鍵データの取得に失敗した場合のうち、順記憶部201が記憶した識別データのなかに、取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データと一致する識別データがなかった場合であるから、一致する識別データは存在しないはずである。一致する識別データが存在しない場合、鍵生成部133は、鍵生成部133が生成した鍵データと、鍵パスワード算出部131が算出した鍵パスワードと、取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データとを、順記憶部201に新たに記憶させる。順記憶部201は、磁気ディスク装置920(記憶装置)を用いて、鍵生成部133が生成した鍵データと、鍵パスワード算出部131が算出した鍵パスワードと、取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データとを対応づけて、新たに記憶する。更新時については、後述する。
The
逆パスワード算出部136(旧逆パスワード算出部、新逆パスワード算出部)は、CPU911(処理装置)を用いて、逆パスワードを算出する。例えば、逆パスワード算出部136は、ハッシュ関数などの一方向性関数を使用して、鍵データを変換することにより、逆パスワードを算出する。逆パスワード算出部136が逆パスワードの算出に使用する関数は、鍵パスワード算出部131が鍵パスワードの算出に使用する関数と同一の関数であってもよいし、異なる関数であってもよい。逆パスワード算出部136が逆パスワードの算出に使用する関数は、衝突困難性と予測困難性とを有することが望ましい。
逆パスワード算出部136が逆パスワードを算出する場合には、新規登録時と更新時との2つの場合がある。新規登録時において、逆パスワード算出部136は、CPU911(処理装置)を用いて、鍵登録部135が順記憶部201に記憶させた鍵データに基づいて、逆パスワードを算出する。
更新時において、逆パスワード算出部136は、逆パスワードを2回算出する。1回目は、更新要求入力部122が鍵更新要求メッセージを入力したときである。逆パスワード算出部136(旧逆パスワード算出部)は、CPU911(処理装置)を用いて、更新要求入力部122が入力した鍵更新要求メッセージに含まれる更新前の古い鍵データに基づいて、逆パスワードを算出する。2回目については、後述する。
The reverse password calculation unit 136 (old reverse password calculation unit, new reverse password calculation unit) calculates the reverse password using the CPU 911 (processing device). For example, the reverse
When the reverse
At the time of update, the reverse
新規登録時において、逆記憶部301は、磁気ディスク装置920(記憶装置)を用いて、鍵登録部135が順記憶部201に記憶させた鍵パスワードと、逆パスワード算出部136が算出した逆パスワードと、取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データとを対応づけて記憶する。
At the time of new registration, the
パスワード取得部137は、CPU911(処理装置)を用いて、鍵記憶部110から鍵パスワードを取得する。逆パスワード算出部136が更新時1回目の逆パスワードを算出した場合、パスワード取得部137は、逆記憶部301が記憶した識別データのなかから、更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データと一致するものを探す。一致する識別データがある場合、パスワード取得部137は、その識別データに対応づけて逆記憶部301が記憶した逆パスワードと、逆パスワード算出部136が算出した逆パスワードとが一致するか否かを判定する。逆パスワードが一致する場合、パスワード取得部137は、その逆パスワード及び識別データに対応づけて逆記憶部301が記憶した鍵パスワードを取得する。それ以外の場合、パスワード取得部137は、鍵パスワードの取得に失敗する。
The
更新時において、パスワード取得部137が鍵パスワードを取得した場合、鍵生成部133(更新鍵生成部)は、CPU911(処理装置)を用いて、更新後の新しい鍵データを生成する。
鍵登録部135(鍵更新部)は、CPU911(処理装置)を用いて、順記憶部201が記憶した識別データのなかから、更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データと一致するものを探す。順記憶部201は、逆記憶部301と同じ識別データを記憶しているので、一致する識別データがあるはずである。一致する識別データがある場合、鍵登録部135(鍵更新部)は、その識別データに対応づけて順記憶部201が記憶した鍵パスワードと、パスワード取得部137が取得した鍵パスワードとが一致するか否かを判定する。順記憶部201は、逆記憶部301と同じ鍵パスワードを同じ識別データに対応づけて記憶しているので、鍵パスワードは一致するはずである。鍵パスワードが一致する場合、鍵登録部135(鍵更新部)は、その鍵パスワード及び識別データに対応づけて順記憶部201が記憶した鍵データに代えて、鍵生成部133が生成した更新後の新しい鍵データを、順記憶部201に記憶させる。
順記憶部201は、磁気ディスク装置920(記憶装置)を用いて、鍵パスワード及び識別データはそのままにして、鍵データだけを鍵生成部133が生成した鍵データに置き換えて、その鍵パスワード及び識別データに対応づけて記憶する。
逆パスワード算出部136(新逆パスワード算出部)は、CPU911(処理装置)を用いて、更新時2回目の逆パスワードを算出する。逆パスワード算出部136(新逆パスワード算出部)は、鍵登録部135(鍵更新部)が順記憶部201に登録した更新後の新しい鍵データに基づいて、逆パスワードを算出する。
逆記憶部301(鍵更新部)は、CPU911(処理装置)を用いて、記憶した識別データのなかから、更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データに一致するものを探す。パスワード取得部137が鍵パスワードを取得しているので、一致する識別データがあるはずである。一致する識別データがある場合、逆記憶部301は、CPU911(処理装置)を用いて、その識別データに対応づけて記憶した鍵パスワードと、鍵登録部135が順記憶部201に記憶させた鍵パスワードとが一致するか否かを判定する。鍵登録部135が順記憶部201に記憶させた鍵パスワードは、パスワード取得部137が逆記憶部301から取得したものなので、鍵パスワードは一致するはずである。鍵パスワードが一致する場合、逆記憶部301は、磁気ディスク装置920(記憶装置)を用いて、その鍵パスワード及び識別データに対応づけて記憶した逆パスワードに代えて、逆パスワード算出部136(新逆パスワード算出部)が算出した更新後の新しい逆パスワードを記憶する。逆記憶部301は、記憶した鍵パスワード及び識別データはそのままにして、逆パスワードだけを逆パスワード算出部136(新逆パスワード算出部)が算出した更新後の新しい逆パスワードに置き換えて、その鍵パスワード及び識別データに対応づけて記憶する。
When the
The key registration unit 135 (key update unit) uses the CPU 911 (processing device) to identify the identification data included in the key update request message input by the update
The
The reverse password calculation unit 136 (new reverse password calculation unit) uses the CPU 911 (processing device) to calculate the second reverse password at the time of update. The reverse password calculation unit 136 (new reverse password calculation unit) calculates a reverse password based on the updated new key data registered in the
The reverse storage unit 301 (key update unit) uses the CPU 911 (processing device) to match the identification data included in the key update request message input by the update
実行装置501は、例えば、取得要求部510と、更新要求部520と、応答取得部531と、暗号鍵記憶部532と、暗号処理部540とを有する。
The
取得要求部510は、実行装置501の起動時などに、鍵管理装置10に対して、鍵取得要求メッセージを通知する。取得要求部510は、例えば、管理パスワード取得部511と、取得要求生成部512と、取得要求通知部513とを有する。
管理パスワード取得部511は、CPU911(実行処理装置)を用いて、管理パスワードを取得する。例えば、管理パスワード取得部511は、管理者がキーボード902などを操作することにより実行装置501に入力した管理パスワードを取得する。あるいは、管理パスワード取得部511は、設定ファイルを読み込んで、設定ファイルに記録された管理パスワードを取得する。
取得要求生成部512は、CPU911(実行処理装置)を用いて、鍵取得要求メッセージを生成する。取得要求生成部512が生成する鍵取得要求メッセージは、管理パスワード取得部511が取得した管理パスワードを含む。また、取得要求生成部512が生成する鍵取得要求メッセージは、文脈データなどの証明データを含む。更に、取得要求生成部512が生成する鍵取得要求メッセージは、実行装置501(または、取得すべき鍵)を識別する識別データを含む。なお、鍵管理装置10に鍵が登録されていない場合は、鍵管理装置10が鍵を生成する。このため、取得要求生成部512が生成する鍵取得要求メッセージは、更に、鍵アルゴリズムや鍵長など鍵生成に必要なパラメータを含む構成であってもよい。
取得要求通知部513は、CPU911(実行処理装置)を用いて、取得要求生成部512が生成した鍵取得要求メッセージを、鍵管理装置10に対して通知する。
The
The management
The acquisition
The acquisition
更新要求部520は、鍵管理装置10に対して、鍵更新要求メッセージを通知する。更新要求部520は、例えば、更新判定部521と、更新要求生成部522と、更新要求通知部523とを有する。
更新判定部521は、CPU911(実行処理装置)を用いて、鍵を更新すべきか否かを判定する。例えば、更新判定部521は、磁気ディスク装置920(不揮発性記憶装置)を用いて、鍵を更新した日付を記憶しておく。更新判定部521は、記憶した日付と、今の日付とを比較して、所定の日数が経過したとき、鍵を更新すべきと判定する。あるいは、更新判定部521は、管理者がキーボード902などを操作することにより鍵を更新すべきことを実行装置501に入力した場合に、鍵を更新すべきと判定する。
更新要求生成部522は、鍵を更新すべきと更新判定部521が判定した場合、CPU911(実行処理装置)を用いて、鍵更新要求メッセージを生成する。更新要求生成部522が生成する鍵更新要求メッセージは、暗号鍵記憶部532が記憶した鍵データを含む。また、更新要求生成部522が生成する鍵更新要求メッセージは、実行装置501(または、更新すべき鍵)を識別する識別データを含む。
更新要求通知部523は、CPU911(実行処理装置)を用いて、更新要求生成部522が生成した鍵更新要求メッセージを、鍵管理装置10に対して通知する。
The
The
When the
The update
応答取得部531(暗号鍵取得部、暗号鍵更新部)は、CPU911を用いて、取得要求部510が通知した鍵取得要求メッセージや、更新要求部520が通知した鍵更新要求メッセージに対する応答として、鍵管理装置10が出力した応答メッセージを取得する。取得した応答メッセージが、鍵の取得あるいは更新に成功したことを表わし、鍵データを含む場合、応答取得部531は、CPU911(実行処理装置)を用いて、応答メッセージに含まれる鍵データを、暗号鍵記憶部532に記憶させる。
暗号鍵記憶部532は、RAM914(揮発性記憶装置)を用いて、応答取得部531が取得した応答メッセージに含まれる鍵データを記憶する。なお、1つの実行装置501が複数の鍵を使用する場合、暗号鍵記憶部532は、複数の鍵データを記憶する。複数の鍵は、識別データによって区別される。暗号鍵記憶部532は、取得要求部510が生成した鍵取得要求メッセージや更新要求部520が生成した鍵更新要求メッセージに含まれる識別データと、それに対する応答である応答メッセージに含まれる鍵データとを対応づけて記憶する。
The response acquisition unit 531 (encryption key acquisition unit, encryption key update unit) uses the
The encryption
暗号処理部540は、CPU911(実行処理装置)を用いて、暗号鍵記憶部532が記憶した鍵データを使用して、暗号処理をする。暗号処理部540は、例えば、平文入力部541と、暗号化部401と、暗号記憶部542と、復号部402と、平文出力部543とを有する。
The
平文入力部541は、CPU911(実行処理装置)を用いて、実行装置501が暗号化して記憶すべき平文データを入力する。
暗号化部401は、CPU911(実行処理装置)を用いて、暗号鍵記憶部532が記憶した鍵データを使用して、平文入力部541が入力した平文データを暗号化し、暗号化データを生成する。
暗号記憶部542は、磁気ディスク装置920(不揮発性記憶装置)を用いて、暗号化部401が暗号化した暗号化データを記憶する。
復号部402は、CPU911(実行処理装置)を用いて、暗号鍵記憶部532が記憶した鍵データを使用して、暗号記憶部542が記憶した暗号化データを復号し、復元平文データを生成する。
平文出力部543は、CPU911(実行処理装置)を用いて、復号部402が生成した復元平文データを出力する。
The
Using the CPU 911 (execution processing device), the
The
Using the CPU 911 (execution processing device), the
The plaintext output unit 543 outputs the restored plaintext data generated by the
図12は、この実施の形態における暗号処理システム800全体の処理の流れの一例を示すフローチャート図である。
FIG. 12 is a flowchart showing an example of the processing flow of the entire
鍵管理装置10は、例えば、取得要求入力処理S710と、鍵取得処理S720と、更新要求入力処理S750と、鍵更新処理S760とを実行する。
取得要求入力処理S710において、鍵管理装置10は、実行装置501から鍵取得要求メッセージが通知されたか否かを判定する。実行装置501から鍵取得要求メッセージが通知された場合、鍵管理装置10は、通知された鍵取得要求メッセージを入力して、鍵取得処理S720へ処理を進める。実行装置501から鍵取得要求メッセージが通知されない場合、鍵管理装置10は、更新要求入力処理S750へ処理を進める。
鍵取得処理S720において、鍵管理装置10は、取得要求入力処理S710で入力した鍵取得要求メッセージにしたがって、鍵を取得する。なお、鍵管理装置10に鍵が登録されていない場合、鍵管理装置10は、鍵を生成して登録する。鍵管理装置10は、実行装置501に対して、応答メッセージを出力する。鍵管理装置10は、更新要求入力処理S750へ処理を進める。
更新要求入力処理S750において、鍵管理装置10は、実行装置501から鍵更新要求メッセージが通知されたか否かを判定する。実行装置501から鍵更新要求メッセージが通知された場合、鍵管理装置10は、通知された鍵更新要求メッセージを入力して、鍵更新処理S760へ処理を進める。実行装置501から鍵更新要求メッセージが通知されない場合、鍵管理装置10は、取得要求入力処理S710に処理を戻す。
鍵更新処理S760において、鍵管理装置10は、更新要求入力処理S750で入力した鍵更新メッセージにしたがって、鍵を更新し、実行装置501に対して、応答メッセージを出力する。鍵管理装置10は、取得要求入力処理S710に処理を戻す。
The
In the acquisition request input process S <b> 710, the
In the key acquisition process S720, the
In the update request input process S750, the
In the key update process S760, the
実行装置501は、例えば、取得要求処理S810と、暗号処理S820と、更新判定処理S830と、更新要求処理S840と、暗号更新処理S850とを実行する。
実行装置501が起動すると、まず、取得要求処理S810を実行する。
取得要求処理S810において、実行装置501は、鍵管理装置10に対して、鍵取得要求メッセージを通知する。実行装置501は、通知した鍵取得要求メッセージに対する応答として鍵管理装置10が出力した応答メッセージを取得する。
暗号処理S820において、実行装置501は、取得要求処理S810で取得した応答メッセージに含まれる鍵データを使用して、暗号処理をする。
更新判定処理S830において、実行装置501は、鍵を更新するか否かを判定する。更新すると判定した場合、実行装置501は、更新要求処理S840へ処理を進める。更新しないと判定した場合、実行装置501は、暗号処理S820に処理を戻す。
更新要求処理S840において、実行装置501は、鍵管理装置10に対して、鍵更新要求メッセージを通知する。実行装置501は、通知した鍵更新要求メッセージに対する応答として鍵管理装置10が出力した応答メッセージを取得する。
暗号更新処理S850において、実行装置501は、更新要求処理S840で取得した応答メッセージに含まれる更新後の新しい鍵データを使用して、記憶している暗号化データを更新する。実行装置501は、暗号処理S820に処理を戻す。
The
When the
In the acquisition request process S810, the
In encryption processing S820, the
In the update determination process S830, the
In the update request process S840, the
In the encryption update process S850, the
図13は、この実施の形態における鍵管理装置10の処理の詳細な流れの一例を示すフローチャート図である。
FIG. 13 is a flowchart showing an example of a detailed flow of processing of the
取得要求入力処理S710は、例えば、取得要求入力工程S711を有する。
取得要求入力工程S711において、取得要求入力部121は、実行装置501から新たに通知された鍵取得要求メッセージがあれば、CPU911を用いて、通知された鍵取得要求メッセージを入力し、鍵取得処理S720へ処理を進める。実行装置501から通知された鍵取得要求メッセージがない場合、取得要求入力部121は、CPU911を用いて、更新要求入力処理S750へ処理を進める。
Acquisition request input process S710 has acquisition request input process S711, for example.
In the acquisition request input step S <b> 711, if there is a key acquisition request message newly notified from the
鍵取得処理S720は、例えば、鍵パスワード算出工程S721と、鍵取得工程S722と、鍵生成工程S723と、鍵登録工程S724と、鍵出力工程S725と、失敗出力工程S726とを有する。
鍵パスワード算出工程S721において、鍵パスワード算出部131は、CPU911を用いて、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる管理パスワードと証明データとに基づいて、鍵パスワードを算出する。
鍵取得工程S722において、鍵取得部132は、CPU911を用いて、鍵パスワード算出工程S721で鍵パスワード算出部131が算出した鍵パスワードと、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データとを使って、順記憶部201から鍵データを取得する。鍵データの取得に成功した場合、鍵取得部132は、CPU911を用いて、鍵出力工程S725へ処理を進める。識別データの不一致により鍵データの取得に失敗した場合、鍵取得部132は、CPU911を用いて、鍵生成工程S723へ処理を進める。鍵パスワードの不一致により鍵データの取得に失敗した場合、鍵取得部132は、CPU911を用いて、失敗出力工程S726へ処理を進める。
The key acquisition process S720 includes, for example, a key password calculation step S721, a key acquisition step S722, a key generation step S723, a key registration step S724, a key output step S725, and a failure output step S726.
In the key password calculation step S721, the key
In the key acquisition step S722, the
鍵生成工程S723において、鍵生成部133(新規鍵生成部)は、CPU911を用いて、新たな鍵データを生成する。鍵生成部133は、取得要求入力部121が入力した鍵取得要求メッセージに含まれる鍵アルゴリズムや鍵長などのパラメータにしたがって、鍵データを生成する構成であってもよいし、あらかじめ固定されたパラメータを使って、鍵データを生成する構成であってもよい。鍵取得要求メッセージがパラメータを含む構成であれば、実行装置501の側で、扱う情報の機密レベルに応じて鍵生成のパラメータを変更することができるので、好ましい。
鍵登録工程S724において、鍵登録部135は、CPU911を用いて、鍵生成工程S723で鍵生成部133が生成した鍵データを、鍵記憶部110に登録する。順記憶部201は、磁気ディスク装置920を用いて、鍵生成工程S723で鍵生成部133が生成した鍵データと、鍵パスワード算出工程S721で鍵パスワード算出部131が算出した鍵パスワードと、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データとの組を、新たに記憶する。逆パスワード算出部136は、CPU911を用いて、鍵生成工程S723で鍵生成部133が生成した鍵データに基づいて、逆パスワードを算出する。逆記憶部301は、鍵パスワード算出工程S721で鍵パスワード算出部131が算出した鍵パスワードと、逆パスワード算出部136が算出した逆パスワードと、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データとの組を、新たに記憶する。鍵登録部135は、CPU911を用いて、鍵出力工程S725へ処理を進める。
なお、なんらかのエラーにより、鍵データの登録に失敗した場合は、鍵登録部135は、CPU911を用いて、失敗出力工程S726へ処理を進める。
In the key generation step S723, the key generation unit 133 (new key generation unit) uses the
In the key registration step S724, the
If registration of key data fails due to some error, the
鍵出力工程S725において、応答生成部134は、CPU911を用いて、鍵取得工程S722で鍵取得部132が取得した鍵データ、もしくは、鍵生成工程S723で鍵生成部133が生成した鍵データを含む応答メッセージを生成する。応答出力部123は、CPU911を用いて、実行装置501に対して、応答生成部134が生成した応答メッセージを出力する。応答出力部123は、CPU911を用いて、更新要求入力処理S750へ処理を進める。
In the key output step S725, the
失敗出力工程S726において、応答生成部134は、CPU911を用いて、鍵の取得に失敗したことを表わす応答メッセージを生成する。応答出力部123は、CPU911を用いて、実行装置501に対して、応答生成部134が生成した応答メッセージを出力する。応答出力部123は、CPU911を用いて、更新要求入力処理S750へ処理を進める。
In the failure output step S726, the
更新要求入力処理S750は、例えば、更新要求入力工程S751を有する。
更新要求入力工程S751において、更新要求入力部122は、実行装置501から新たに通知された鍵更新要求メッセージがあれば、CPU911を用いて、通知された鍵更新要求メッセージを入力し、鍵更新処理S760へ処理を進める。実行装置501から通知された鍵更新要求メッセージがない場合、更新要求入力部122は、CPU911を用いて、取得要求入力処理S710に処理を戻す。
The update request input process S750 includes, for example, an update request input process S751.
In the update request input step S751, if there is a key update request message newly notified from the
鍵更新処理S760は、例えば、逆パスワード算出工程S761と、パスワード取得工程S762と、鍵生成工程S763と、鍵更新工程S764と、鍵出力工程S765と、失敗出力工程S766とを有する。
逆パスワード算出工程S761において、逆パスワード算出部136(旧逆パスワード算出部)は、CPU911を用いて、更新要求入力工程S751で更新要求入力部122が入力した鍵更新要求メッセージに含まれる更新前の古い鍵データに基づいて、逆パスワードを算出する。
パスワード取得工程S762において、パスワード取得部137は、CPU911を用いて、逆パスワード算出工程S761で逆パスワード算出部136が算出した逆パスワードと、更新要求入力工程S751で更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データとを使って、逆記憶部301が記憶した鍵パスワードを取得する。鍵パスワードの取得に成功した場合、パスワード取得部137は、CPU911を用いて、鍵生成工程S763へ処理を進める。識別データの不一致や逆パスワードの不一致により鍵パスワードの取得に失敗した場合、パスワード取得部137は、CPU911を用いて、失敗出力工程S766へ処理を進める。
The key update process S760 includes, for example, a reverse password calculation step S761, a password acquisition step S762, a key generation step S763, a key update step S764, a key output step S765, and a failure output step S766.
In the reverse password calculation step S761, using the
In the password acquisition step S762, the
鍵生成工程S763において、鍵生成部133(更新鍵生成部)は、CPU911を用いて、新たな鍵データを生成する。
鍵更新工程S764において、鍵登録部135(鍵更新部)は、CPU911を用いて、鍵記憶部110に登録された鍵データを、鍵生成工程S763で鍵生成部133が生成した鍵データに更新する。順記憶部201は、磁気ディスク装置920を用いて、対応づけられた識別データが、更新要求入力工程S751で更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データと一致し、かつ、対応づけられた鍵パスワードが、パスワード取得工程S762でパスワード取得部137が取得した鍵パスワードと一致する鍵データを、鍵生成工程S763で鍵生成部133が生成した鍵データに置き換えて記憶する。逆パスワード算出部136(新逆パスワード算出部)は、CPU911を用いて、鍵生成工程S763で鍵生成部133が生成した鍵データに基づいて、新たな逆パスワードを算出する。逆記憶部301は、磁気ディスク装置920を用いて、対応づけられた識別データが、更新要求入力工程S751で更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データと一致し、かつ、対応づけられた鍵パスワードが、パスワード取得工程S762でパスワード取得部137が取得した鍵パスワードと一致する逆パスワードを、逆パスワード算出部136が算出した新たな逆パスワードで置き換えて記憶する。なお、なんらかのエラーにより鍵データの更新に失敗した場合、鍵登録部135は、CPU911を用いて、失敗出力工程S766へ処理を進める。
In the key generation step S763, the key generation unit 133 (update key generation unit) uses the
In the key update step S764, the key registration unit 135 (key update unit) uses the
鍵出力工程S765において、応答生成部134は、CPU911を用いて、鍵生成工程S763で鍵生成部133が生成した新たな鍵データを含む応答メッセージを生成する。応答出力部123は、CPU911を用いて、実行装置501に対して、応答生成部134が生成した応答メッセージを出力する。応答出力部123は、CPU911を用いて、取得要求入力処理S710に処理を戻す。
In the key output step S765, the
失敗出力工程S766において、応答生成部134は、CPU911を用いて、鍵の更新に失敗したことを表わす応答メッセージを生成する。応答出力部123は、CPU911を用いて、実行装置501に対して、応答生成部134が生成した応答メッセージを出力する。応答出力部123は、CPU911を用いて、取得要求入力処理S710に処理を戻す。
In the failure output step S766, the
図14は、この実施の形態における実行装置501の処理の詳細な流れの一例を示すフローチャート図である。
FIG. 14 is a flowchart showing an example of a detailed flow of processing of the
取得要求処理S810は、例えば、管理パスワード取得工程S811と、鍵取得要求生成工程S812と、鍵取得要求通知工程S813と、応答取得工程S814と、鍵記憶工程S815とを有する。
管理パスワード取得工程S811において、管理パスワード取得部511は、CPU911を用いて、管理パスワードを取得する。
鍵取得要求生成工程S812において、取得要求生成部512は、CPU911を用いて、管理パスワード取得工程S811で管理パスワード取得部511が取得した管理パスワードと、識別データと、証明データとを含む鍵取得要求メッセージを生成する。
鍵取得要求通知工程S813において、取得要求通知部513は、CPU911を用いて、鍵取得要求生成工程S812で取得要求生成部512が生成した鍵取得要求メッセージを、鍵管理装置10に対して通知する。
応答取得工程S814において、応答取得部531(暗号鍵取得部)は、CPU911を用いて、鍵取得要求通知工程S813で取得要求通知部513が通知した鍵取得要求メッセージに対する応答として鍵管理装置10が出力した応答メッセージを取得する。取得した応答メッセージが、鍵の取得に成功したことを表わす場合、応答取得部531は、CPU911を用いて、鍵記憶工程S815へ処理を進める。取得した応答メッセージが、鍵の取得に失敗したことを表わす場合、応答取得部531は、CPU911を用いて、管理パスワード取得工程S811に処理を戻す。
鍵記憶工程S815において、暗号鍵記憶部532は、RAM914を用いて、応答取得工程S814で応答取得部531が取得した応答メッセージに含まれる鍵データを記憶する。
The acquisition request process S810 includes, for example, a management password acquisition step S811, a key acquisition request generation step S812, a key acquisition request notification step S813, a response acquisition step S814, and a key storage step S815.
In the management password acquisition step S811, the management
In the key acquisition request generation step S812, the acquisition
In the key acquisition request notification step S813, the acquisition
In the response acquisition step S814, the response acquisition unit 531 (encryption key acquisition unit) uses the
In the key storage step S815, the encryption
暗号処理S820において、暗号処理部540は、CPU911を用いて、暗号鍵記憶部532が記憶した鍵データを使って、暗号処理をする。
In cryptographic processing S820, the
更新判定処理S830において、更新判定部521は、CPU911を用いて、鍵の更新をするか否かを判定する。鍵の更新をすると判定した場合、更新判定部521は、CPU911を用いて、更新要求処理S840へ処理を進める。まだ鍵の更新をしないと判定した場合、更新判定部521は、CPU911を用いて、暗号処理S820に処理を戻す。
In the update determination process S830, the
更新要求処理S840は、例えば、鍵更新要求生成工程S841と、鍵更新要求通知工程S842と、応答取得工程S843と、新鍵記憶工程S844とを有する。
鍵更新要求生成工程S841において、更新要求生成部522は、CPU911を用いて、暗号鍵記憶部532が記憶した鍵データと、識別データとを含む鍵更新要求メッセージを生成する。
鍵更新要求通知工程S842において、更新要求通知部523は、CPU911を用いて、鍵更新要求生成工程S841で更新要求生成部522が生成した鍵更新要求メッセージを、鍵管理装置10に対して通知する。
応答取得工程S843において、応答取得部531(更新鍵取得部)は、CPU911を用いて、鍵更新要求通知工程S842で更新要求通知部523が通知した鍵更新要求メッセージに対する応答として鍵管理装置10が出力した応答メッセージを取得する。取得した応答メッセージが、鍵の更新に成功したことを表わす場合、応答取得部531は、CPU911を用いて、新鍵記憶工程S844へ処理を進める。取得した応答メッセージが、鍵の更新に失敗したことを表わす場合、応答取得部531は、CPU911を用いて、管理パスワード取得工程S811に処理を戻す。
新鍵記憶工程S844において、暗号鍵記憶部532(暗号鍵更新部)は、RAM914を用いて、応答取得工程S843で応答取得部531が取得した応答メッセージに含まれる更新後の新しい鍵データを記憶する。なお、次の暗号更新処理S850で更新前の古い鍵データを使うので、暗号鍵記憶部532は、更新前の古い鍵データも、まだ保持しておく。
The update request process S840 includes, for example, a key update request generation step S841, a key update request notification step S842, a response acquisition step S843, and a new key storage step S844.
In the key update request generation step S841, the update
In the key update request notification step S842, the update
In the response acquisition step S843, the response acquisition unit 531 (update key acquisition unit) uses the
In the new key storage step S844, the encryption key storage unit 532 (encryption key update unit) uses the
暗号更新処理S850は、例えば、暗号選択工程S851と、復号工程S852と、暗号化工程S853と、暗号記憶工程S854と、旧鍵削除工程S855とを有する。
暗号選択工程S851において、復号部402(暗号更新部)は、CPU911を用いて、暗号記憶部542が記憶した暗号化データのなかから、まだ処理していない暗号化データを一つ選択する。暗号記憶部542が記憶した暗号化データがすべて処理済であり、選択できる暗号化データがない場合、復号部402は、CPU911を用いて、旧鍵削除工程S855へ処理を進める。暗号記憶部542が記憶した暗号化データのなかに、まだ処理していない暗号化データがある場合、復号部402は、CPU911を用いて、まだ処理していない暗号化データのなかから暗号化データを一つ選択し、復号工程S852へ処理を進める。
復号工程S852において、復号部402は、CPU911を用いて、暗号鍵記憶部532が記憶している更新前の古い鍵データを使って、暗号選択工程S851で選択した暗号化データを復号し、復元平文データを生成する。
暗号化工程S853において、暗号化部401(更新暗号化部)は、CPU911を用いて、暗号鍵記憶部532が記憶している更新後の新しい鍵データを使って、復号工程S852で復号部402が生成した復元平文データを暗号化し、更新後の新しい暗号化データを生成する。
暗号記憶工程S854において、暗号記憶部542(暗号更新部)は、磁気ディスク装置920を用いて、暗号選択工程S851で復号部402が選択した更新前の古い暗号化データを、暗号化工程S853で暗号化部401が生成した更新後の新しい暗号化データに置き換えて記憶する。暗号記憶部542は、CPU911を用いて、暗号選択工程S851に処理を戻す。
The cipher update process S850 includes, for example, a cipher selection step S851, a decryption step S852, an encryption step S853, a cipher storage step S854, and an old key deletion step S855.
In the encryption selection step S851, the decryption unit 402 (encryption update unit) uses the
In the decryption step S852, the
In the encryption step S853, the encryption unit 401 (update encryption unit) uses the updated new key data stored in the encryption
In the encryption storage step S854, the encryption storage unit 542 (encryption update unit) uses the
旧鍵削除工程S855において、暗号鍵記憶部532は、RAM914を用いて記憶した更新前の古い鍵データを削除する。暗号鍵記憶部532は、CPU911を用いて、暗号処理S820に処理を戻す。
In the old key deletion step S855, the encryption
このように、識別データ及び鍵パスワードが一致しなければ、順記憶部201から鍵データを取得したり、順記憶部201が記憶した鍵データを更新したりできないことにより、鍵データの秘密性・安全性を担保する。また、証明データからの情報を鍵パスワードに埋め込むことにより、本物の実行装置501しか鍵データを取得できない。特に、証明データとして文脈データを使用することにより、実行装置501が本物であることの証明が容易にできるとともに、偽造を防ぐことができる。鍵更新時には、証明データではなく、更新前の古い鍵データそのものによって実行装置501が本物であることを証明する。順記憶部201が記憶した鍵データを更新するために必要な鍵パスワードは、逆記憶部301から取得する。識別データ及び逆パスワードが一致しなければ、逆記憶部301から鍵パスワードを取得したり、逆記憶部301が記憶した鍵パスワードを更新したりできないことにより、鍵パスワードの秘密性・安全性を担保する。逆パスワードは、鍵データに基づいて算出されるので、鍵データがわかれば鍵パスワードを取得でき、鍵データを更新することができる。
Thus, if the identification data and the key password do not match, the key data cannot be obtained from the
なお、鍵更新要求メッセージに鍵データを含めるのではなく、実行装置501の側で逆パスワードを算出し、鍵更新要求メッセージに逆パスワードを含める構成としてもよい。その場合、パスワード取得部137は、鍵更新要求メッセージに含まれる識別データと一致する識別データに対応づけて逆記憶部301が記憶した逆パスワードと、鍵更新要求メッセージに含まれる逆パスワードとが一致するか否かを判定し、一致する場合に、その逆パスワード及び識別データに対応づけて逆記憶部301が記憶した鍵パスワードを取得する。
Instead of including key data in the key update request message, the
また、鍵管理装置10は、逆記憶部301を有さない構成であってもよい。その場合、パスワード取得部137は、CPU911を用いて、順記憶部201が記憶した識別データのなかから、更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データと一致するものを探す。一致する識別データがある場合、パスワード取得部137は、CPU911を用いて、その識別データに対応づけて順記憶部201が記憶した鍵データと、更新要求入力部122が入力した鍵更新要求メッセージに含まれる鍵データとが、一致するか否かを判定する。鍵データが一致する場合、パスワード取得部137は、CPU911を用いて、その鍵データに対応づけて順記憶部201が記憶した鍵パスワードを取得する。
鍵更新要求メッセージに逆パスワードを含める構成の場合は、鍵更新要求メッセージに含まれる識別データと一致する識別データに対応づけて順記憶部201が記憶した鍵データに基づいて、逆パスワード算出部136が逆パスワードを算出する。パスワード取得部137は、逆パスワード算出部136が算出した逆パスワードと、鍵更新要求メッセージに含まれる逆パスワードとが一致するか否かを判定し、一致する場合に、その鍵データに対応づけて順記憶部201が記憶した鍵パスワードを取得する。
Further, the
In the case where the reverse password is included in the key update request message, the reverse
更に、鍵管理装置10は、パスワード取得部137を有さない構成であってもよい。その場合、鍵登録部135(鍵更新部)は、CPU911を用いて、順記憶部201が記憶した識別データのなかから、更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データと一致するものを探す。一致する識別データがある場合、鍵登録部135は、CPU911を用いて、その識別データに対応づけて順記憶部201が記憶した鍵データと、更新要求入力部122が入力した鍵更新要求メッセージに含まれる鍵データとが、一致するか否かを判定する。鍵データが一致する場合、鍵登録部135は、CPU911を用いて、その鍵データを更新する。
鍵更新要求メッセージに逆パスワードを含める構成の場合は、鍵更新要求メッセージに含まれる識別データと一致する識別データに対応づけて順記憶部201が記憶した鍵データに基づいて、逆パスワード算出部136が逆パスワードを算出する。鍵登録部135(鍵更新部)は、逆パスワード算出部136が算出した逆パスワードと、鍵更新要求メッセージに含まれる逆パスワードとが一致するか否かを判定し、一致する場合に、その鍵データを更新する。
Furthermore, the
In the case where the reverse password is included in the key update request message, the reverse
実施の形態3.
実施の形態3について、図15〜図18を用いて説明する。
なお、実施の形態2と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 3 FIG.
The third embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 2, the same code | symbol is attached | subjected and description is abbreviate | omitted.
図15は、この実施の形態における暗号処理システム800の機能ブロックの構成の一例を示すブロック構成図である。
鍵管理装置10は、実施の形態2で説明した構成に加えて、更に、削除要求入力部125を有する。実行装置501は、実施の形態2で説明した構成に加えて、更に、削除要求部550を有する。
FIG. 15 is a block configuration diagram illustrating an example of a functional block configuration of the
The
鍵管理装置10は、鍵を更新しても、更新前の古い鍵データを残しておき、実行装置501から鍵の削除を要求されて初めて、鍵データを削除する。削除要求入力部125は、CPU911(処理装置)を用いて、実行装置501が通知した鍵削除要求メッセージを入力する。鍵削除要求メッセージは、鍵の削除を要求することを表わす。鍵削除要求メッセージは、削除したい鍵そのものを表わす鍵データと、削除したい鍵の識別データとを含む。
Even after the key is updated, the
削除要求部550は、CPU911(実行処理装置)を用いて、鍵管理装置10に対して、鍵削除要求メッセージを通知する。削除要求部550は、例えば、削除要求生成部552と、削除要求通知部553とを有する。
削除要求生成部552は、CPU911(実行処理装置)を用いて、鍵削除要求メッセージを生成する。例えば、削除要求生成部552は、暗号処理部540が暗号更新処理を完了した場合に、暗号鍵記憶部532がまだ記憶している更新前の古い鍵データを含む鍵削除要求メッセージを生成する。
削除要求通知部553は、CPU911(実行処理装置)を用いて、削除要求生成部552が生成した鍵削除要求メッセージを、鍵管理装置10に対して通知する。
The
The deletion
The deletion
実行装置501が暗号更新処理をしている途中でダウンして再起動した場合などにおいて、暗号鍵記憶部532がRAM914を用いて記憶した鍵データが消えてしまう。実行装置501は、再起動後、鍵取得要求メッセージを鍵管理装置10に対して通知する。このとき、鍵管理装置10は、更新後の新しい鍵データだけでなく、更新前の古い鍵データも保持している。鍵管理装置10は、鍵取得要求メッセージに対する応答として、更新前の古い鍵データと、更新後の新しい鍵データとの2つの鍵データを含む応答メッセージを出力する。実行装置501は、更新前の古い鍵データと、更新後の新しい鍵データを取得して、暗号更新処理を続けることができる。
When the
また、この実施の形態における暗号処理システム800は、管理パスワードを更新することができる。管理者が管理パスワードを更新しようと考えた場合、管理者は、実行装置501の起動時に、キーボード902などを操作して、更新前の古い管理パスワードと、更新後の新しいパスワードとの2つの管理パスワードを実行装置501に入力する。
取得要求部510(パスワード更新要求部)の管理パスワード取得部511は、CPU911(実行処理装置)を用いて、管理者が入力した2つの管理パスワードを取得する。
取得要求生成部512(パスワード更新要求生成部)は、CPU911(実行処理装置)を用いて、管理パスワード取得部511が取得した2つの管理パスワードを含む鍵取得要求メッセージを生成する。
取得要求通知部513(パスワード更新要求通知部)は、CPU911(実行処理装置)を用いて、取得要求生成部512が生成した2つの管理パスワードを含む鍵取得要求メッセージ(パスワード更新要求メッセージ)を、鍵管理装置10に対して通知する。
Also, the
The management
The acquisition request generation unit 512 (password update request generation unit) generates a key acquisition request message including the two management passwords acquired by the management
The acquisition request notification unit 513 (password update request notification unit) uses the CPU 911 (execution processing device) to generate a key acquisition request message (password update request message) including two management passwords generated by the acquisition
取得要求入力部121(パスワード更新要求入力部)は、CPU911(処理装置)を用いて、実行装置501が通知した鍵取得要求メッセージを入力する。取得要求入力部121は、入力した鍵取得要求メッセージが管理パスワードを2つ含む場合、鍵の取得と同時に管理パスワードの更新を要求されたと判定する。
鍵パスワード算出部131(旧パスワード算出部、新パスワード算出部)は、CPU911(処理装置)を用いて、取得要求入力部121が入力した鍵取得要求メッセージに含まれる2つの管理パスワードそれぞれに基づいて、鍵パスワードを算出する。すなわち、鍵パスワード算出部131は、更新前の古い鍵パスワードと、更新後の新しい鍵パスワードとを算出する。
鍵取得部132は、CPU911(処理装置)を用いて、鍵パスワード算出部131(旧パスワード算出部)が算出した更新前の古い鍵パスワードを使って、順記憶部201から鍵データを取得する。
鍵生成部133は、識別データの不一致により鍵取得部132が鍵データの取得に失敗した場合でも、新たな鍵データを生成しない。管理パスワードの更新は、古い鍵データを順記憶部201が記憶していることが前提だからである。
鍵登録部135(パスワード更新部)は、鍵取得部132が鍵データの取得に成功した場合、CPU911(処理装置)を用いて、鍵取得部132が取得した鍵データに対応づけられた鍵パスワードを更新する。例えば、鍵登録部135は、順記憶部201が記憶した識別データのなかから、取得要求入力部121が入力した鍵取得要求データに含まれる識別データと一致するものを探す。一致する識別データがある場合、鍵登録部135は、その識別データに対応づけて順記憶部201が記憶した鍵パスワードと、鍵パスワード算出部131(旧パスワード算出部)が算出した更新前の古い鍵パスワードとが一致するか否かを判定する。鍵パスワードが一致する場合、鍵登録部135は、その鍵パスワードに代えて、鍵パスワード算出部131(新パスワード算出部)が算出した更新後の新しい鍵パスワードを、順記憶部201に記憶させる。順記憶部201は、磁気ディスク装置920(記憶装置)を用いて、鍵データ及び識別データはそのままにして、鍵パスワードだけを鍵パスワード算出部131が算出した更新後の新しい鍵パスワードに置き換えて、その鍵データ及び識別データに対応づけて記憶する。
逆パスワード算出部136は、CPU911(処理装置)を用いて、鍵取得部132が取得した鍵データに基づいて、逆パスワードを算出する。
逆記憶部301(パスワード更新部)は、CPU911(処理装置)を用いて、記憶した識別データのなかから、更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データに一致するものを探す。一致する識別データがある場合、逆記憶部301は、CPU911(処理装置)を用いて、その識別データに対応づけて記憶した逆パスワードと、逆パスワード算出部136が算出した逆パスワードとが一致するか否かを判定する。逆パスワードが一致する場合、逆記憶部301は、磁気ディスク装置920(記憶装置)を用いて、その逆パスワード及び識別データに対応づけて記憶した鍵パスワードに代えて、鍵パスワード算出部131(新パスワード算出部)が算出した更新後の新しい鍵パスワードを記憶する。逆記憶部301は、記憶した逆パスワード及び識別データはそのままにして、鍵パスワードだけを鍵パスワード算出部131(新パスワード算出部)が算出した更新後の新しい鍵パスワードに置き換えて、その逆パスワード及び識別データに対応づけて記憶する。
The acquisition request input unit 121 (password update request input unit) uses the CPU 911 (processing device) to input the key acquisition request message notified by the
The key password calculation unit 131 (old password calculation unit, new password calculation unit) uses the CPU 911 (processing device), based on each of the two management passwords included in the key acquisition request message input by the acquisition
The
The
When the
The reverse
The reverse storage unit 301 (password update unit) uses the CPU 911 (processing device) to store the identification data that matches the identification data included in the key update request message input by the update
図16は、この実施の形態における暗号処理システム800全体の処理の流れの一例を示すフローチャート図である。
鍵管理装置10は、実施の形態2で説明した処理に加えて、更に、パスワード更新処理S730と、削除要求入力処理S780と、鍵削除処理S790とを実行する。
FIG. 16 is a flowchart showing an example of the processing flow of the entire
In addition to the process described in the second embodiment, the
取得要求入力処理S710において、鍵管理装置10は、鍵取得要求メッセージを入力した場合、入力した鍵取得要求メッセージに含まれる管理パスワードの数に基づいて、管理パスワードの更新が要求されているか否かを判定する。鍵取得要求メッセージに管理パスワードが2つ含まれる場合、鍵管理装置10は、鍵の取得だけでなく、管理パスワードの更新が要求されていると判定し、パスワード更新処理S730へ処理を進める。鍵取得要求メッセージに管理パスワードが1つしか含まれない場合、鍵管理装置10は、管理パスワードの更新は要求されず、鍵の取得だけが要求されていると判定し、鍵取得処理S720へ処理を進める。
パスワード更新処理S730において、鍵管理装置10は、古い管理パスワードによってアクセスできる鍵データに対応づけられた鍵パスワードを更新して、新しい管理パスワードによってアクセスできるようにする。鍵管理装置10は、更新要求入力処理S750へ処理を進める。
In the acquisition request input process S710, when the
In the password update process S730, the
更新要求入力処理S750において、実行装置501から鍵更新要求メッセージが通知されない場合、鍵管理装置10は、削除要求入力処理S780へ処理を進める。
また、鍵更新処理S760における処理が終わったあとも、鍵管理装置10は、削除要求入力処理S780へ処理を進める。
If the key update request message is not notified from the
Further, even after the process in the key update process S760 is completed, the
削除要求入力処理S780において、鍵管理装置10は、実行装置501から鍵削除要求メッセージが通知されたか否かを判定する。実行装置501から鍵削除要求メッセージが通知された場合、鍵管理装置10は、通知された鍵削除要求メッセージを入力して、鍵削除処理S790へ処理を進める。実行装置501から鍵削除要求メッセージが通知されない場合、鍵管理装置10は、取得要求入力処理S710に処理を戻す。
鍵削除処理S790において、鍵管理装置10は、削除要求入力処理S780で入力した鍵削除要求メッセージにしたがって、鍵を削除し、実行装置501に対して、応答メッセージを出力する。鍵管理装置10は、取得要求入力処理S710に処理を戻す。
In the deletion request input process S780, the
In the key deletion process S790, the
取得要求処理S810において、実行装置501は、鍵管理装置10が出力した応答メッセージに含まれる鍵データの数に基づいて、暗号更新処理の途中であるか否かを判定する。応答メッセージに鍵データが2つ含まれる場合、実行装置501は、暗号更新処理の途中であると判定し、暗号更新処理S850へ処理を進める。応答メッセージに鍵データが1つしか含まれない場合、実行装置501は、暗号更新処理の途中ではないと判定し、通常どおり、暗号処理S820へ処理を進める。
In the acquisition request process S810, the
暗号更新処理S850が終了したのち、実行装置501は、削除要求工程S860へ処理を進める。
削除要求工程S860において、実行装置501は、鍵管理装置10に対して、鍵削除要求メッセージを通知する。実行装置501は、通知した鍵削除要求メッセージに対する応答として鍵管理装置10が出力した応答メッセージを取得する。実行装置501は、暗号処理S820に処理を戻す。
After the encryption update process S850 ends, the
In the deletion request step S860, the
図17は、この実施の形態における鍵管理装置10の処理の詳細な流れの一例を示すフローチャート図である。
取得要求入力処理S710は、実施の形態2で説明した工程に加えて、更に、パスワード更新判定工程S712を有する。
パスワード更新判定工程S712において、取得要求入力部121は、CPU911を用いて、入力した鍵取得要求メッセージに管理パスワードが2つ含まれているか、1つしか含まれていないかを判定する。鍵取得要求メッセージに管理パスワードが2つ含まれている場合は、管理パスワードの更新要求なので、取得要求入力部121は、CPU911を用いて、パスワード更新処理S730へ処理を進める。鍵取得要求メッセージに管理パスワードが1つしか含まれていない場合は、通常どおり鍵の取得要求なので、取得要求入力部121は、CPU911を用いて、鍵取得処理S720へ処理を進める。
FIG. 17 is a flowchart showing an example of a detailed flow of processing of the
The acquisition request input process S710 further includes a password update determination process S712 in addition to the processes described in the second embodiment.
In the password update determination step S712, the acquisition
パスワード更新処理S730は、例えば、旧パスワード算出工程S731と、鍵取得工程S732と、新パスワード算出工程S733と、パスワード更新工程S734と、鍵出力工程S735と、失敗出力工程S736とを有する。
旧パスワード算出工程S731において、鍵パスワード算出部131(旧パスワード算出部)は、CPU911を用いて、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる更新前の古い管理パスワードと証明データとに基づいて、更新前の古い鍵パスワードを算出する。
鍵取得工程S732において、鍵取得部132は、CPU911を用いて、旧パスワード算出工程S731で鍵パスワード算出部131が算出した更新前の古い鍵パスワードを使って、順記憶部201から鍵データを取得する。鍵データの取得に成功した場合、鍵取得部132は、CPU911を用いて、新パスワード算出工程S733へ処理を進める。識別データの不一致や鍵パスワードの不一致により鍵データの取得に失敗した場合、鍵取得部132は、CPU911を用いて、失敗出力工程S736へ処理を進める。
The password update process S730 includes, for example, an old password calculation step S731, a key acquisition step S732, a new password calculation step S733, a password update step S734, a key output step S735, and a failure output step S736.
In the old password calculation step S731, the key password calculation unit 131 (old password calculation unit) uses the
In the key acquisition step S732, the
新パスワード算出工程S733において、鍵パスワード算出部131(新パスワード算出部)は、CPU911を用いて、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる更新後の新しい管理パスワードと証明データとに基づいて、更新後の新しい鍵パスワードを算出する。
パスワード更新工程S734において、鍵登録部135(パスワード更新部)は、CPU911を用いて、鍵記憶部110に登録された鍵パスワードを、新パスワード算出工程S733で鍵パスワード算出部131が算出した更新後の新しい鍵パスワードに更新する。順記憶部201は、磁気ディスク装置920を用いて、対応づけられた識別データが、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データと一致し、かつ、対応づけれられた鍵データが、鍵取得工程S732で鍵取得部132が取得した鍵データと一致する鍵パスワードを、新パスワード算出工程S733で鍵パスワード算出部131が算出した更新後の新しい鍵パスワードに置き換えて記憶する。逆パスワード算出部136は、CPU911を用いて、鍵取得工程S732で鍵取得部132が取得した鍵データに基づいて、逆パスワードを算出する。逆記憶部301は、磁気ディスク装置920を用いて、対応づけられた識別データが、取得要求入力工程S711で取得要求入力部121が入力した鍵取得要求メッセージに含まれる識別データと一致し、かつ、対応づけられた逆パスワードが、逆パスワード算出部136が算出した逆パスワードに一致する鍵パスワードを、新パスワード算出工程S733で鍵パスワード算出部131が算出した更新後の新しい鍵パスワードに置き換えて記憶する。なお、なんらかのエラーにより鍵パスワードの更新に失敗した場合、鍵登録部135は、CPU911を用いて、失敗出力工程S736へ処理を進める。
In the new password calculation step S733, the key password calculation unit 131 (new password calculation unit) uses the
In the password update step S734, the key registration unit 135 (password update unit) uses the
鍵更新処理S760は、実施の形態2で説明した工程のうち、鍵更新工程S764に換えて、新鍵登録工程S767を有する。
新鍵登録工程S767において、鍵登録部135は、更新前の古い鍵データを鍵記憶部110に残したまま、更新後の新しい鍵データを鍵記憶部110に新たに登録する。順記憶部201は、磁気ディスク装置920を用いて、鍵生成工程S763で鍵生成部133(更新鍵生成部)が生成した鍵データと、パスワード取得工程S762でパスワード取得部137が取得した鍵パスワードと、更新要求入力工程S751で更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データとを対応づけて新たに記憶する。なお、更新前の古い鍵データと、更新後の新しい鍵データとを区別する必要があるので、順記憶部201は、例えば鍵データの生成順を表わすデータを、鍵データに対応づけて更に記憶する。逆パスワード算出部136(新逆パスワード算出部)は、CPU911を用いて、鍵生成工程S763で鍵生成部133が生成した更新後の新しい鍵データに基づいて、更新後の新しい逆パスワードを算出する。逆記憶部301は、磁気ディスク装置920を用いて、パスワード取得工程S762でパスワード取得部137が取得した鍵パスワードと、逆パスワード算出部136が算出した更新後の新しい逆パスワードと、更新要求入力工程S751で更新要求入力部122が入力した鍵更新要求メッセージに含まれる識別データとを対応づけて新たに記憶する。なお、逆記憶部301も順記憶部201と同様、例えば鍵データの生成順を表わすデータを、鍵パスワードに対応づけて更に記憶する構成であってもよい。
The key update process S760 includes a new key registration process S767 instead of the key update process S764 among the processes described in the second embodiment.
In the new key registration step S767, the
削除要求入力処理S780は、例えば、削除要求入力工程S781を有する。
削除要求入力工程S781において、削除要求入力部125は、実行装置501から新たに通知された鍵削除要求メッセージがあれば、CPU911を用いて、通知された鍵削除要求メッセージを入力し、鍵削除処理S790へ処理を進める。実行装置501から通知された鍵削除要求メッセージがない場合、削除要求入力部125は、CPU911を用いて、取得要求入力処理S710に処理を戻す。
The deletion request input process S780 includes, for example, a deletion request input step S781.
In the deletion request input step S781, if there is a key deletion request message newly notified from the
鍵削除処理S790は、例えば、逆パスワード算出工程S791と、パスワード取得工程S792と、鍵削除工程S794と、成功出力工程S795と、失敗出力工程S796とを有する。
逆パスワード算出工程S791において、逆パスワード算出部136(削除逆パスワード算出部)は、CPU911を用いて、削除要求入力工程S781で削除要求入力部125が入力した鍵削除要求メッセージに含まれる鍵データに基づいて、逆パスワードを算出する。
パスワード取得工程S762において、パスワード取得部137(削除パスワード取得部)は、CPU911を用いて、逆パスワード算出工程S791で逆パスワード算出部136が算出した逆パスワードと、削除要求入力工程S781で削除要求入力部125が入力した鍵削除要求メッセージに含まれる識別データとを使って、逆記憶部301が記憶した鍵パスワードを取得する。鍵パスワードの取得に成功した場合、パスワード取得部137は、CPU911を用いて、鍵削除工程S794へ処理を進める。識別データの不一致や逆パスワードの不一致により鍵パスワードの取得に失敗した場合、パスワード取得部137は、CPU911を用いて、失敗出力工程S796へ処理を進める。
The key deletion process S790 includes, for example, a reverse password calculation step S791, a password acquisition step S792, a key deletion step S794, a success output step S795, and a failure output step S796.
In the reverse password calculation step S791, the reverse password calculation unit 136 (deletion reverse password calculation unit) uses the
In the password acquisition step S762, the password acquisition unit 137 (deletion password acquisition unit) uses the
鍵削除工程S794において、鍵登録部135(鍵削除部)は、CPU911を用いて、鍵記憶部110に登録された鍵データを削除する。順記憶部201は、磁気ディスク装置920を用いて記憶した鍵データ及び鍵パスワード及び識別データのなかから、対応づけられた識別データが、削除要求入力工程S781で削除要求入力部125が入力した鍵削除要求メッセージに含まれる識別データと一致し、かつ、対応づけられた鍵パスワードが、パスワード取得工程S792でパスワード取得部137が取得した鍵パスワードと一致する鍵データと、その鍵データに対応づけられた鍵パスワード及び識別データとを削除する。逆記憶部301は、磁気ディスク装置920を用いて記憶した鍵パスワード及び逆パスワード及び識別データのなかから、対応づけられた識別データが、削除要求入力工程S781で削除要求入力部125が入力した鍵削除要求メッセージに含まれる識別データと一致し、かつ、対応づけられた逆パスワードが、逆パスワード算出工程S791で逆パスワード算出部136が算出した逆パスワードと一致する鍵パスワードと、その鍵パスワードに対応づけられた逆パスワード及び識別データとを削除する。なお、なんらかのエラーにより鍵データの削除に失敗した場合、鍵登録部135は、CPU911を用いて、失敗出力工程S796へ処理を進める。
In the key deletion step S794, the key registration unit 135 (key deletion unit) uses the
成功出力工程S795において、応答生成部134は、CPU911を用いて、鍵の削除に成功したことを表わす応答メッセージを生成する。応答出力部123は、CPU911を用いて、実行装置501に対して、応答生成部134が生成した応答メッセージを出力する。応答出力部123は、CPU911を用いて、取得要求入力処理S710に処理を戻す。
In the success output step S795, the
失敗出力工程S796において、応答生成部134は、CPU911を用いて、鍵の削除に失敗したことを表わす応答メッセージを生成する。応答出力部123は、CPU911を用いて、実行装置501に対して、応答生成部134が生成した応答メッセージを出力する。応答出力部123は、CPU911を用いて、取得要求入力処理S710に処理を戻す。
In the failure output step S796, the
なお、鍵更新処理S760において、鍵管理装置10は、前回の鍵更新処理S760で残しておいた古い鍵データがまだ削除されていない場合は、鍵の更新に失敗する構成であってもよい。
また、鍵削除処理S790において、鍵管理装置10は、鍵更新処理S760で残しておいた古い鍵データではなく、鍵更新処理S760で新たに生成した新しい鍵データを削除しようとした場合は、鍵の削除に失敗する構成であってもよい。
In the key update process S760, the
In the key deletion process S790, if the
図18は、この実施の形態における実行装置501の処理の詳細な流れの一例を示すフローチャート図である。
FIG. 18 is a flowchart showing an example of a detailed flow of processing of the
管理パスワード取得工程S811において、管理パスワード取得部511は、CPU911を用いて、1つまたは2つの管理パスワードを取得する。
鍵取得要求生成工程S812において、取得要求生成部512は、CPU911を用いて、管理パスワード取得工程S811で管理パスワード取得部511が取得した1つまたは2つの管理パスワードを含む鍵取得要求メッセージを生成する。
In the management password acquisition step S811, the management
In the key acquisition request generation step S812, the acquisition
鍵記憶工程S815において、暗号鍵記憶部532は、RAM914を用いて、応答取得工程S814で応答取得部531が取得した応答メッセージに含まれる鍵データを記憶する。応答メッセージに鍵データが2つ含まれる場合、暗号鍵記憶部532は、暗号選択工程S851へ処理を進める。応答メッセージに鍵データが1つしか含まれない場合、暗号鍵記憶部532は、暗号処理S820へ処理を進める。
In the key storage step S815, the encryption
暗号更新処理S850は、実施の形態2で説明した旧鍵削除工程S855を有さない。
暗号選択工程S851において、暗号記憶部542が記憶した暗号化データがすべて処理済である場合、復号部402は、CPU911を用いて、削除要求工程S860へ処理を進める。
The cryptographic update processing S850 does not have the old key deletion step S855 described in the second embodiment.
In the encryption selection step S851, when all the encrypted data stored in the
削除要求工程S860は、例えば、鍵削除要求生成工程S861と、鍵削除要求通知工程S862と、応答取得工程S863と、旧鍵削除工程S864とを有する。
鍵削除要求生成工程S861において、削除要求生成部552は、CPU911を用いて、暗号鍵記憶部532が記憶している更新前の古い鍵データと、識別データとを含む鍵削除要求メッセージを生成する。
鍵削除要求通知工程S862において、削除要求通知部553は、CPU911を用いて、鍵削除要求生成工程S861で削除要求生成部552が生成した鍵削除要求メッセージを、鍵管理装置10に対して通知する。
応答取得工程S863において、応答取得部531は、CPU911を用いて、鍵削除要求通知工程S862で削除要求生成部552が通知した鍵削除要求メッセージに対する応答として鍵管理装置10が出力した応答メッセージを取得する。
旧鍵削除工程S855において、暗号鍵記憶部532は、RAM914を用いて記憶した更新前の古い鍵データを削除する。暗号鍵記憶部532は、CPU911を用いて、暗号処理S820に処理を戻す。
The deletion request step S860 includes, for example, a key deletion request generation step S861, a key deletion request notification step S862, a response acquisition step S863, and an old key deletion step S864.
In the key deletion request generation step S861, the deletion
In the key deletion request notification step S862, the deletion
In the response acquisition step S863, the
In the old key deletion step S855, the encryption
以上、各実施の形態で説明した構成は一例であり、これに限るものではない。例えば、異なる実施の形態で説明した構成を組み合わせた構成としてもよいし、重要でない部分の構成を他の構成で置き換えた構成としてもよい。 The configuration described in each embodiment has been described above by way of example and is not limited thereto. For example, the configuration described in different embodiments may be combined, or the configuration of an unimportant portion may be replaced with another configuration.
以上説明した鍵管理装置(10)は、データを記憶する記憶装置(磁気ディスク装置920)と、データを処理する処理装置(CPU911)と、鍵記憶部(110;キーストア装置200、パスワードストア装置300)と、取得要求入力部(121;鍵・パスワード生成管理装置100)と、鍵パスワード算出部(131;鍵・パスワード生成管理装置100)と、鍵取得部(132;キーストア装置200)と、新規鍵生成部(鍵生成部133;鍵・パスワード生成管理装置100)と、鍵登録部(135;キーストア装置200、パスワードストア装置300)と、鍵出力部(応答出力部123;鍵・パスワード生成管理装置100)と、更新要求入力部(122;鍵・パスワード生成管理装置100)と、更新鍵生成部(鍵生成部133;鍵・パスワード生成管理装置100)と、鍵更新部(鍵登録部135;キーストア装置200、パスワードストア装置300)と、更新鍵出力部(応答出力部123;鍵・パスワード生成管理装置100)とを有する。
上記鍵記憶部は、上記記憶装置を用いて、暗号処理に使用する鍵と上記鍵にアクセスするための鍵パスワードとを記憶する。
上記取得要求入力部は、上記処理装置を用いて、取得すべき鍵の管理に使用する管理パスワードを入力する。
上記鍵パスワード算出部は、上記処理装置を用いて、上記取得要求入力部が入力した管理パスワードに基づいて、鍵パスワードを算出する。
上記鍵取得部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵を取得する。
上記新規鍵生成部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、鍵を生成する。
上記鍵登録部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、上記新規鍵生成部が生成した鍵と、上記鍵パスワード算出部が算出した鍵パスワードとを上記鍵記憶部に記憶させる。
上記鍵出力部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵取得部が取得した鍵を出力し、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、上記新規鍵生成部が生成した鍵を出力する。
上記更新要求入力部は、上記処理装置を用いて、更新すべき鍵を入力する。
上記更新鍵生成部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、鍵を生成する。
上記鍵更新部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵に代えて、上記更新鍵生成部が生成した鍵を上記鍵記憶部に記憶させる。
上記更新鍵出力部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、上記更新鍵生成部が生成した鍵を出力する。
The key management device (10) described above includes a storage device (magnetic disk device 920) for storing data, a processing device (CPU 911) for processing data, and a key storage unit (110;
The key storage unit uses the storage device to store a key used for encryption processing and a key password for accessing the key.
The acquisition request input unit inputs a management password used for managing a key to be acquired using the processing device.
The key password calculation unit calculates a key password based on the management password input by the acquisition request input unit using the processing device.
The key acquisition unit acquires the key stored in the key storage unit using the processing device when the key password calculated by the key password calculation unit matches the key password stored in the key storage unit. To do.
The new key generation unit generates a key using the processing device when the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit.
When the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit, the key registration unit uses the processing device to generate the key generated by the new key generation unit. The key password calculated by the key password calculation unit is stored in the key storage unit.
The key output unit outputs the key acquired by the key acquisition unit using the processing device when the key password calculated by the key password calculation unit matches the key password stored by the key storage unit. When the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit, the key generated by the new key generation unit is output using the processing device.
The update request input unit inputs a key to be updated using the processing device.
The update key generation unit generates a key using the processing device when the key input by the update request input unit matches the key stored by the key storage unit.
When the key input by the update request input unit matches the key stored by the key storage unit, the key update unit uses the processing device to replace the key stored by the key storage unit, The key generated by the update key generation unit is stored in the key storage unit.
The update key output unit outputs the key generated by the update key generation unit using the processing device when the key input by the update request input unit matches the key stored in the key storage unit. To do.
鍵の取得には、管理パスワードから算出した鍵パスワードが必要なので、鍵の漏洩を防ぐことができる。また、鍵の更新には、更新前の鍵があればよいので、容易に鍵を更新することができる。 Since the key password calculated from the management password is required to acquire the key, it is possible to prevent key leakage. In addition, the key can be easily updated because the key before the update is sufficient.
上記鍵パスワード算出部は、上記処理装置を用いて、上記取得要求入力部が上記管理パスワードを入力した文脈を取得し、上記取得要求入力部が入力した管理パスワードと取得した文脈とに基づいて、鍵パスワードを算出する。 The key password calculation unit acquires the context in which the acquisition request input unit has input the management password using the processing device, and based on the management password input by the acquisition request input unit and the acquired context, Calculate the key password.
管理パスワードと文脈とに基づいて鍵パスワードを算出するので、管理パスワードを知っていても、異なる文脈では、鍵を取得できず、鍵の漏洩を防ぐことができる。 Since the key password is calculated based on the management password and the context, even if the management password is known, the key cannot be obtained in a different context, and the key leakage can be prevented.
上記鍵パスワード算出部は、上記処理装置を用いて、上記管理パスワードを表わすデータと上記文脈を表わすデータとを結合し、結合したデータを一方向性関数により変換することにより、鍵パスワードを算出する。 The key password calculation unit calculates the key password by combining the data representing the management password and the data representing the context using the processing device, and converting the combined data by a one-way function. .
管理パスワードと文脈とを係合して一方向性関数により変換するので、管理パスワード及び文脈のいずれかを知っていても、鍵パスワードを算出することができない。 Since the management password and the context are engaged and converted by the one-way function, the key password cannot be calculated even if either the management password or the context is known.
上記鍵管理装置は、更に、逆パスワード算出部(136;鍵・パスワード生成管理装置100)と、旧逆パスワード算出部(逆パスワード算出部136;鍵・パスワード生成管理装置100)と、新逆パスワード算出部(逆パスワード算出部136;鍵・パスワード生成管理装置100)と、パスワード取得部(137;パスワードストア装置300)とを有する。
上記鍵記憶部は、順記憶部(201;キーストア装置200)と、逆記憶部(301;パスワードストア装置300)とを有する。
上記逆パスワード算出部は、上記処理装置を用いて、上記新規鍵生成部が生成した鍵に基づいて、上記鍵パスワードにアクセスするための逆パスワードを算出する。
上記順記憶部は、上記記憶装置を用いて、上記新規鍵生成部が生成した鍵と、上記鍵パスワード算出部が算出した鍵パスワードとを記憶する。
上記逆記憶部は、上記記憶装置を用いて、上記鍵パスワード算出部が算出した鍵パスワードと上記逆パスワード算出部が算出した逆パスワードとを記憶する。
上記鍵取得部は、上記処理装置を用いて、入力した鍵パスワードと上記順記憶部が記憶した鍵パスワードとが一致する場合に、上記順記憶部が記憶した鍵を出力する。
上記旧逆パスワード算出部は、上記処理装置を用いて、上記更新要求入力部が入力した鍵に基づいて、逆パスワードを算出する。
上記パスワード取得部は、上記旧逆パスワード算出部が算出した逆パスワードが、上記逆記憶部が記憶した逆パスワードと一致する場合に、上記処理装置を用いて、上記逆記憶部が記憶した鍵パスワードを取得する。
上記更新鍵生成部は、上記旧逆パスワード算出部が算出した逆パスワードが、上記逆記憶部が記憶した逆パスワードと一致する場合に、上記処理装置を用いて、鍵を生成する。
上記新逆パスワード算出部は、上記旧逆パスワード算出部が算出した逆パスワードが、上記逆記憶部が記憶した逆パスワードと一致する場合に、上記処理装置を用いて、上記更新鍵生成部が生成した鍵に基づいて、逆パスワードを算出する。
上記鍵更新部は、上記処理装置を用いて、上記パスワード取得部が取得した鍵パスワードが、上記順記憶部が記憶した鍵パスワードと一致する場合に、上記順記憶部が記憶した鍵に代えて、上記更新鍵生成部が生成した鍵を上記順記憶部に記憶させ、上記逆記憶部が記憶した逆パスワードに代えて、上記新逆パスワード算出部が算出した逆パスワードを上記逆記憶部に記憶させる。
The key management device further includes a reverse password calculation unit (136; key / password generation management device 100), an old reverse password calculation unit (reverse
The key storage unit includes a sequential storage unit (201; key store device 200) and a reverse storage unit (301; password store device 300).
The reverse password calculation unit calculates a reverse password for accessing the key password based on the key generated by the new key generation unit using the processing device.
The sequential storage unit stores the key generated by the new key generation unit and the key password calculated by the key password calculation unit using the storage device.
The reverse storage unit stores the key password calculated by the key password calculation unit and the reverse password calculated by the reverse password calculation unit using the storage device.
The key acquisition unit outputs the key stored in the sequential storage unit when the input key password matches the key password stored in the sequential storage unit using the processing device.
The old reverse password calculation unit calculates the reverse password based on the key input by the update request input unit using the processing device.
The password acquisition unit uses the processing device to store the key password stored in the reverse storage unit when the reverse password calculated by the old reverse password calculation unit matches the reverse password stored in the reverse storage unit. To get.
The update key generation unit generates a key using the processing device when the reverse password calculated by the old reverse password calculation unit matches the reverse password stored by the reverse storage unit.
The new reverse password calculation unit generates the update key generation unit using the processing device when the reverse password calculated by the old reverse password calculation unit matches the reverse password stored by the reverse storage unit. The reverse password is calculated based on the key.
The key update unit uses the processing device to replace the key stored in the sequential storage unit when the key password acquired by the password acquisition unit matches the key password stored in the sequential storage unit. The key generated by the update key generation unit is stored in the sequential storage unit, and the reverse password calculated by the new reverse password calculation unit is stored in the reverse storage unit instead of the reverse password stored by the reverse storage unit. Let
順記憶部が記憶した鍵にアクセスするには、鍵パスワードが必要になる。また、逆記憶部が記憶した鍵パスワードにアクセスするには、鍵から算出した逆パスワードが必要になる。これにより、鍵と鍵パスワードといずれかを知っていれば、他方も知ることができるので、容易に鍵を更新することができる。 A key password is required to access the key stored in the sequential storage unit. Further, in order to access the key password stored in the reverse storage unit, the reverse password calculated from the key is required. Thus, if one of the key and the key password is known, the other can be known, so that the key can be easily updated.
上記逆パスワード算出部及び上記旧逆パスワード算出部及び上記新逆パスワード算出部は、上記処理装置を用いて、上記鍵を一方向性関数により変換することにより、上記逆パスワードを生成する。 The reverse password calculation unit, the old reverse password calculation unit, and the new reverse password calculation unit generate the reverse password by converting the key with a one-way function using the processing device.
鍵を一方向性関数により変換して逆パスワードを生成するので、逆パスワードから鍵を生成することはできない。 Since the reverse password is generated by converting the key with a one-way function, the key cannot be generated from the reverse password.
上記鍵管理装置は、更に、パスワード更新要求入力部(取得要求入力部121)と、旧パスワード算出部(鍵パスワード算出部131)と、新パスワード算出部(鍵パスワード算出部131)と、パスワード更新部(鍵登録部135)とを有する。
上記パスワード更新要求入力部は、更新すべき古い管理パスワードと更新後の新たな管理パスワードとを入力する。
上記旧パスワード算出部は、上記処理装置を用いて、上記パスワード更新要求入力部が入力した古い管理パスワードに基づいて、鍵パスワードを算出する。
上記新パスワード算出部は、上記処理装置を用いて、上記パスワード更新要求入力部が入力した新たな管理パスワードに基づいて、鍵パスワードを算出する。
上記パスワード更新部は、上記旧パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵パスワードに代えて、上記新パスワード算出部が算出した鍵パスワードを上記鍵記憶部に記憶させる。
The key management apparatus further includes a password update request input unit (acquisition request input unit 121), an old password calculation unit (key password calculation unit 131), a new password calculation unit (key password calculation unit 131), and a password update. (Key registration unit 135).
The password update request input unit inputs an old management password to be updated and a new management password after update.
The old password calculation unit calculates a key password using the processing device based on the old management password input by the password update request input unit.
The new password calculation unit calculates a key password using the processing device based on the new management password input by the password update request input unit.
When the key password calculated by the old password calculation unit matches the key password stored by the key storage unit, the password update unit uses the processing device to update the key password stored by the key storage unit. Instead, the key password calculated by the new password calculation unit is stored in the key storage unit.
管理パスワードを更新できるので、鍵の漏洩を防ぐことができる。 Since the management password can be updated, key leakage can be prevented.
以上説明した暗号処理システム(800)は、上記鍵管理装置(10)と、実行装置(501;業務アプリケーション装置500)とを有する。
上記実行装置は、データを記憶する実行記憶装置(RAM914、磁気ディスク装置920)と、データを処理する実行処理装置(CPU911)と、取得要求部(510)と、暗号鍵記憶部(532)と、暗号処理部(540;暗号/復号化装置400)と、暗号鍵更新部(暗号鍵記憶部532)とを有する。
上記取得要求部は、上記実行処理装置を用いて、管理パスワードを取得する。
上記取得要求入力部は、上記処理装置を用いて、上記取得要求部が取得した管理パスワードを入力する。
上記暗号鍵記憶部は、上記実行記憶装置を用いて、上記鍵出力部が出力した鍵を記憶する。
上記暗号処理部は、上記実行処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を使って、暗号処理を実行する。
上記更新要求入力部は、上記処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を入力する。
上記暗号鍵更新部は、上記実行処理装置を用いて、上記更新鍵出力部が出力した鍵を上記暗号鍵記憶部に記憶させる。
The cryptographic processing system (800) described above includes the key management device (10) and the execution device (501; business application device 500).
The execution device includes an execution storage device (
The acquisition request unit acquires a management password using the execution processing device.
The acquisition request input unit inputs the management password acquired by the acquisition request unit using the processing device.
The encryption key storage unit stores the key output by the key output unit using the execution storage device.
The encryption processing unit executes encryption processing using the key stored in the encryption key storage unit using the execution processing device.
The update request input unit inputs the key stored in the encryption key storage unit using the processing device.
The encryption key update unit stores the key output from the update key output unit in the encryption key storage unit using the execution processing device.
鍵管理装置が管理する鍵を使って暗号処理をするので、情報の漏洩を防ぐことができる。 Since encryption processing is performed using a key managed by the key management device, information leakage can be prevented.
上記実行記憶装置は、揮発性の揮発性記憶装置(RAM914)と、不揮発性の不揮発性記憶装置(磁気ディスク装置920)とを有する。
上記暗号処理部は、暗号化部(401)と、暗号記憶部(542)と、復号部(402)と、更新暗号化部(暗号化部401)と、暗号更新部(暗号記憶部542)とを有する。
上記暗号鍵記憶部は、上記揮発性記憶装置を用いて、上記鍵出力部及び上記更新鍵出力部が出力した鍵を記憶する。
上記暗号化部は、上記実行処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を使って、平文データを暗号化して暗号化データを生成する。
上記暗号記憶部は、上記不揮発性記憶装置を用いて、上記暗号化部が生成した暗号化データを記憶する。
上記復号部は、上記実行処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を使って、上記暗号記憶部が記憶した暗号化データを復号して復元平文データを生成する。
上記更新暗号化部は、上記実行処理装置を用いて、上記更新鍵出力部が出力した鍵を使って、上記復号部が生成した復元平文データを暗号化して更新暗号化データを生成する。
上記暗号更新部は、上記実行処理装置を用いて、上記暗号記憶部が記憶した暗号化データに代えて、上記更新暗号化部が生成した更新暗号化データを上記暗号記憶部に記憶させる。
The execution storage device includes a volatile volatile storage device (RAM 914) and a nonvolatile volatile storage device (magnetic disk device 920).
The encryption processing unit includes an encryption unit (401), an encryption storage unit (542), a decryption unit (402), an update encryption unit (encryption unit 401), and an encryption update unit (encryption storage unit 542). And have.
The encryption key storage unit stores the keys output by the key output unit and the update key output unit using the volatile storage device.
The encryption unit encrypts plaintext data using the execution processing device and generates the encrypted data by using the key stored in the encryption key storage unit.
The encryption storage unit stores the encrypted data generated by the encryption unit using the nonvolatile storage device.
The decryption unit uses the execution processing device to decrypt the encrypted data stored in the encryption storage unit using the key stored in the encryption key storage unit to generate restored plaintext data.
The update encryption unit uses the execution processing device to encrypt the restored plaintext data generated by the decryption unit using the key output from the update key output unit to generate update encrypted data.
The encryption update unit uses the execution processing device to store the update encrypted data generated by the update encryption unit in the encryption storage unit instead of the encrypted data stored in the encryption storage unit.
鍵の更新に伴って、暗号化データを更新するので、情報の漏洩を防ぐことができる。 Since the encrypted data is updated as the key is updated, information leakage can be prevented.
以上説明した鍵管理装置10は、コンピュータを鍵管理装置10として機能させるプログラムをコンピュータが実行することにより実現することができる。
The
10 鍵管理装置、100 鍵・パスワード生成管理装置、110 鍵記憶部、121 取得要求入力部、122 更新要求入力部、123 応答出力部、125 削除要求入力部、131 鍵パスワード算出部、132 鍵取得部、133 鍵生成部、134 応答生成部、135 鍵登録部、136 逆パスワード算出部、137 パスワード取得部、200 キーストア装置、201 順記憶部、300 パスワードストア装置、301 逆記憶部、400 暗号/復号化装置、401 暗号化部、402 復号部、500 業務アプリケーション装置、501 実行装置、510 取得要求部、511 管理パスワード取得部、512 取得要求生成部、513 取得要求通知部、520 更新要求部、521 更新判定部、522 更新要求生成部、523 更新要求通知部、531 応答取得部、532 暗号鍵記憶部、540 暗号処理部、541 平文入力部、542 暗号記憶部、543 平文出力部、550 削除要求部、552 削除要求生成部、553 削除要求通知部、600 クライアントアプリケーション装置、701 パスワード、702 呼び出し情報、703 連結データ、704,707 ハッシュ値、705 キーストアパスワード、706 鍵、708 パスワードストアパスワード、800 暗号処理システム、901 表示装置、902 キーボード、903 マウス、904 FDD、905 CDD、906 プリンタ装置、907 スキャナ装置、910 システムユニット、911 CPU、912 バス、913 ROM、914 RAM、915 通信装置、920 磁気ディスク装置、921 OS、922 ウィンドウシステム、923 プログラム群、924 ファイル群、931 電話器、932 ファクシミリ機、940 インターネット、941 ゲートウェイ、942 LAN。 10 key management device, 100 key / password generation management device, 110 key storage unit, 121 acquisition request input unit, 122 update request input unit, 123 response output unit, 125 deletion request input unit, 131 key password calculation unit, 132 key acquisition Unit, 133 key generation unit, 134 response generation unit, 135 key registration unit, 136 reverse password calculation unit, 137 password acquisition unit, 200 key store device, 201 sequential storage unit, 300 password store device, 301 reverse storage unit, 400 encryption / Decryption device, 401 encryption unit, 402 decryption unit, 500 business application device, 501 execution device, 510 acquisition request unit, 511 management password acquisition unit, 512 acquisition request generation unit, 513 acquisition request notification unit, 520 update request unit 521 Update determination unit 522 Update request generation unit 5 3 Update request notifying unit, 531 Response obtaining unit, 532 Encryption key storage unit, 540 Encryption processing unit, 541 Plain text input unit, 542 Encryption storage unit, 543 Plain text output unit, 550 Delete request unit, 552 Delete request generation unit, 553 Delete Request notification unit, 600 client application device, 701 password, 702 call information, 703 connection data, 704, 707 hash value, 705 key store password, 706 key, 708 password store password, 800 cryptographic processing system, 901 display device, 902 keyboard , 903 mouse, 904 FDD, 905 CDD, 906 printer device, 907 scanner device, 910 system unit, 911 CPU, 912 bus, 913 ROM, 914 RAM, 915 communication device, 92 Magnetic disk drive, 921 OS, 922 Window system, 923 Program group, 924 File group, 931 telephone, 932 a facsimile machine, 940 Internet, 941 Gateway, 942 LAN.
Claims (10)
上記鍵記憶部は、上記記憶装置を用いて、暗号処理に使用する鍵と上記鍵にアクセスするための鍵パスワードとを記憶し、
上記取得要求入力部は、上記処理装置を用いて、取得すべき鍵の管理に使用する管理パスワードを入力し、
上記鍵パスワード算出部は、上記処理装置を用いて、上記取得要求入力部が入力した管理パスワードに基づいて、鍵パスワードを算出し、
上記鍵取得部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵を取得し、
上記新規鍵生成部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、鍵を生成し、
上記鍵登録部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、上記新規鍵生成部が生成した鍵と、上記鍵パスワード算出部が算出した鍵パスワードとを上記鍵記憶部に記憶させ、
上記鍵出力部は、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵取得部が取得した鍵を出力し、上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、上記処理装置を用いて、上記新規鍵生成部が生成した鍵を出力し、
上記更新要求入力部は、上記処理装置を用いて、更新すべき鍵を入力し、
上記更新鍵生成部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、鍵を生成し、
上記鍵更新部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵に代えて、上記更新鍵生成部が生成した鍵を上記鍵記憶部に記憶させ、
上記更新鍵出力部は、上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、上記処理装置を用いて、上記更新鍵生成部が生成した鍵を出力することを特徴とする鍵管理装置。 Storage device for storing data, processing device for processing data, key storage unit, acquisition request input unit, key password calculation unit, key acquisition unit, new key generation unit, key registration unit, key An output unit, an update request input unit, an update key generation unit, a key update unit, and an update key output unit;
The key storage unit uses the storage device to store a key used for cryptographic processing and a key password for accessing the key,
The acquisition request input unit uses the processing device to input a management password used for managing a key to be acquired,
The key password calculation unit calculates the key password based on the management password input by the acquisition request input unit using the processing device,
The key acquisition unit acquires the key stored in the key storage unit using the processing device when the key password calculated by the key password calculation unit matches the key password stored in the key storage unit. And
The new key generation unit generates a key using the processing device when the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit,
When the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit, the key registration unit uses the processing device to generate the key generated by the new key generation unit. The key password calculated by the key password calculation unit is stored in the key storage unit,
The key output unit outputs the key acquired by the key acquisition unit using the processing device when the key password calculated by the key password calculation unit matches the key password stored by the key storage unit. When the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit, the processing device is used to output the key generated by the new key generation unit,
The update request input unit inputs a key to be updated using the processing device,
The update key generation unit generates a key using the processing device when the key input by the update request input unit matches the key stored by the key storage unit,
When the key input by the update request input unit matches the key stored by the key storage unit, the key update unit uses the processing device to replace the key stored by the key storage unit, Storing the key generated by the update key generation unit in the key storage unit;
The update key output unit outputs the key generated by the update key generation unit using the processing device when the key input by the update request input unit matches the key stored in the key storage unit. And a key management device.
上記鍵記憶部は、順記憶部と、逆記憶部とを有し、
上記逆パスワード算出部は、上記処理装置を用いて、上記新規鍵生成部が生成した鍵に基づいて、上記鍵パスワードにアクセスするための逆パスワードを算出し、
上記順記憶部は、上記記憶装置を用いて、上記新規鍵生成部が生成した鍵と、上記鍵パスワード算出部が算出した鍵パスワードとを記憶し、
上記逆記憶部は、上記記憶装置を用いて、上記鍵パスワード算出部が算出した鍵パスワードと上記逆パスワード算出部が算出した逆パスワードとを記憶し、
上記鍵取得部は、上記処理装置を用いて、入力した鍵パスワードと上記順記憶部が記憶した鍵パスワードとが一致する場合に、上記順記憶部が記憶した鍵を出力し、
上記旧逆パスワード算出部は、上記処理装置を用いて、上記更新要求入力部が入力した鍵に基づいて、逆パスワードを算出し、
上記パスワード取得部は、上記旧逆パスワード算出部が算出した逆パスワードが、上記逆記憶部が記憶した逆パスワードと一致する場合に、上記処理装置を用いて、上記逆記憶部が記憶した鍵パスワードを取得し、
上記更新鍵生成部は、上記旧逆パスワード算出部が算出した逆パスワードが、上記逆記憶部が記憶した逆パスワードと一致する場合に、上記処理装置を用いて、鍵を生成し、
上記新逆パスワード算出部は、上記旧逆パスワード算出部が算出した逆パスワードが、上記逆記憶部が記憶した逆パスワードと一致する場合に、上記処理装置を用いて、上記更新鍵生成部が生成した鍵に基づいて、逆パスワードを算出し、
上記鍵更新部は、上記処理装置を用いて、上記パスワード取得部が取得した鍵パスワードが、上記順記憶部が記憶した鍵パスワードと一致する場合に、上記順記憶部が記憶した鍵に代えて、上記更新鍵生成部が生成した鍵を上記順記憶部に記憶させ、上記逆記憶部が記憶した逆パスワードに代えて、上記新逆パスワード算出部が算出した逆パスワードを上記逆記憶部に記憶させることを特徴とする請求項1乃至請求項3のいずれかに記載の鍵管理装置。 The key management device further includes a reverse password calculation unit, an old reverse password calculation unit, a new reverse password calculation unit, and a password acquisition unit,
The key storage unit includes a sequential storage unit and a reverse storage unit,
The reverse password calculation unit calculates a reverse password for accessing the key password based on the key generated by the new key generation unit using the processing device;
The sequential storage unit stores the key generated by the new key generation unit and the key password calculated by the key password calculation unit using the storage device,
The reverse storage unit stores the key password calculated by the key password calculation unit and the reverse password calculated by the reverse password calculation unit using the storage device,
The key acquisition unit outputs the key stored in the sequential storage unit when the input key password matches the key password stored in the sequential storage unit using the processing device,
The old reverse password calculation unit calculates a reverse password based on the key input by the update request input unit using the processing device;
The password acquisition unit uses the processing device to store the key password stored in the reverse storage unit when the reverse password calculated by the old reverse password calculation unit matches the reverse password stored in the reverse storage unit. Get
The update key generation unit generates a key using the processing device when the reverse password calculated by the old reverse password calculation unit matches the reverse password stored by the reverse storage unit,
The new reverse password calculation unit generates the update key generation unit using the processing device when the reverse password calculated by the old reverse password calculation unit matches the reverse password stored by the reverse storage unit. Calculate the reverse password based on the key
The key update unit uses the processing device to replace the key stored in the sequential storage unit when the key password acquired by the password acquisition unit matches the key password stored in the sequential storage unit. The key generated by the update key generation unit is stored in the sequential storage unit, and the reverse password calculated by the new reverse password calculation unit is stored in the reverse storage unit instead of the reverse password stored by the reverse storage unit. The key management apparatus according to any one of claims 1 to 3, wherein
上記パスワード更新要求入力部は、更新すべき古い管理パスワードと更新後の新たな管理パスワードとを入力し、
上記旧パスワード算出部は、上記処理装置を用いて、上記パスワード更新要求入力部が入力した古い管理パスワードに基づいて、鍵パスワードを算出し、
上記新パスワード算出部は、上記処理装置を用いて、上記パスワード更新要求入力部が入力した新たな管理パスワードに基づいて、鍵パスワードを算出し、
上記パスワード更新部は、上記旧パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、上記処理装置を用いて、上記鍵記憶部が記憶した鍵パスワードに代えて、上記新パスワード算出部が算出した鍵パスワードを上記鍵記憶部に記憶させることを特徴とする請求項1乃至請求項5のいずれかに記載の鍵管理装置。 The key management device further includes a password update request input unit, an old password calculation unit, a new password calculation unit, and a password update unit,
The password update request input unit inputs an old management password to be updated and a new management password after the update,
The old password calculation unit calculates a key password based on the old management password input by the password update request input unit using the processing device,
The new password calculation unit calculates a key password based on the new management password input by the password update request input unit using the processing device,
When the key password calculated by the old password calculation unit matches the key password stored by the key storage unit, the password update unit uses the processing device to update the key password stored by the key storage unit. 6. The key management device according to claim 1, wherein the key password calculated by the new password calculation unit is stored in the key storage unit.
上記実行装置は、データを記憶する実行記憶装置と、データを処理する実行処理装置と、取得要求部と、暗号鍵記憶部と、暗号処理部と、暗号鍵更新部とを有し、
上記取得要求部は、上記実行処理装置を用いて、管理パスワードを取得し、
上記取得要求入力部は、上記処理装置を用いて、上記取得要求部が取得した管理パスワードを入力し、
上記暗号鍵記憶部は、上記実行記憶装置を用いて、上記鍵出力部が出力した鍵を記憶し、
上記暗号処理部は、上記実行処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を使って、暗号処理を実行し、
上記更新要求入力部は、上記処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を入力し、
上記暗号鍵更新部は、上記実行処理装置を用いて、上記更新鍵出力部が出力した鍵を上記暗号鍵記憶部に記憶させることを特徴とする暗号処理システム。 A key management device according to any one of claims 1 to 6 and an execution device,
The execution device includes an execution storage device that stores data, an execution processing device that processes data, an acquisition request unit, an encryption key storage unit, an encryption processing unit, and an encryption key update unit,
The acquisition request unit acquires the management password using the execution processing device,
The acquisition request input unit inputs the management password acquired by the acquisition request unit using the processing device,
The encryption key storage unit stores the key output by the key output unit using the execution storage device,
The cryptographic processing unit performs cryptographic processing using the key stored in the cryptographic key storage unit using the execution processing device,
The update request input unit inputs the key stored in the encryption key storage unit using the processing device,
The encryption key update unit stores the key output from the update key output unit in the encryption key storage unit using the execution processing device.
上記暗号処理部は、暗号化部と、暗号記憶部と、復号部と、更新暗号化部と、暗号更新部とを有し、
上記暗号鍵記憶部は、上記揮発性記憶装置を用いて、上記鍵出力部及び上記更新鍵出力部が出力した鍵を記憶し、
上記暗号化部は、上記実行処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を使って、平文データを暗号化して暗号化データを生成し、
上記暗号記憶部は、上記不揮発性記憶装置を用いて、上記暗号化部が生成した暗号化データを記憶し、
上記復号部は、上記実行処理装置を用いて、上記暗号鍵記憶部が記憶した鍵を使って、上記暗号記憶部が記憶した暗号化データを復号して復元平文データを生成し、
上記更新暗号化部は、上記実行処理装置を用いて、上記更新鍵出力部が出力した鍵を使って、上記復号部が生成した復元平文データを暗号化して更新暗号化データを生成し、
上記暗号更新部は、上記実行処理装置を用いて、上記暗号記憶部が記憶した暗号化データに代えて、上記更新暗号化部が生成した更新暗号化データを上記暗号記憶部に記憶させることを特徴とする請求項7に記載の暗号処理システム。 The execution storage device includes a volatile volatile storage device and a nonvolatile nonvolatile storage device,
The encryption processing unit includes an encryption unit, an encryption storage unit, a decryption unit, an update encryption unit, and an encryption update unit,
The encryption key storage unit stores the keys output by the key output unit and the update key output unit using the volatile storage device,
The encryption unit generates encrypted data by encrypting plaintext data using the key stored in the encryption key storage unit using the execution processing device,
The encryption storage unit stores the encrypted data generated by the encryption unit using the nonvolatile storage device,
The decryption unit uses the execution processing device to decrypt the encrypted data stored in the encryption storage unit using the key stored in the encryption key storage unit to generate restored plaintext data,
The update encryption unit uses the execution processing device to encrypt the restored plaintext data generated by the decryption unit using the key output from the update key output unit to generate update encrypted data,
The encryption update unit uses the execution processing device to store the update encrypted data generated by the update encryption unit in the encryption storage unit instead of the encrypted data stored in the encryption storage unit. The cryptographic processing system according to claim 7, characterized in that:
鍵記憶部として、上記記憶装置が、暗号処理に使用する鍵と上記鍵にアクセスするための鍵パスワードとを記憶し、
取得要求入力部として、上記処理装置が、取得すべき鍵の管理に使用する管理パスワードを入力し、
鍵パスワード算出部として、上記処理装置が、上記取得要求入力部が入力した管理パスワードに基づいて、鍵パスワードを算出し、
上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致する場合に、
鍵取得部として、上記処理装置が、上記鍵記憶部が記憶した鍵を取得し、
鍵出力部として、上記処理装置が、上記鍵取得部が取得した鍵を出力し、
上記鍵パスワード算出部が算出した鍵パスワードが、上記鍵記憶部が記憶した鍵パスワードと一致しない場合に、
新規鍵生成部として、上記処理装置が、鍵を生成し、
上記鍵記憶部として、上記記憶装置が、上記新規鍵生成部が生成した鍵と、上記鍵パスワード算出部が算出した鍵パスワードとを記憶し、
上記鍵出力部として、上記処理装置が、上記新規鍵生成部が生成した鍵を出力し、
更新要求入力部として、上記処理装置が、更新すべき鍵を入力し、
上記更新要求入力部が入力した鍵が、上記鍵記憶部が記憶した鍵と一致する場合に、
更新鍵生成部として、上記処理装置が、鍵を生成し、
鍵更新部として、上記処理装置が、上記鍵記憶部が記憶した鍵に代えて、上記更新鍵生成部が生成した鍵を上記鍵記憶部に記憶させ、
更新鍵出力部として、上記処理装置が、上記更新鍵生成部が生成した鍵を出力することを特徴とする鍵管理方法。 In a key management method in which a key management device having a storage device for storing data and a processing device for processing data manages keys,
As a key storage unit, the storage device stores a key used for encryption processing and a key password for accessing the key,
As an acquisition request input unit, the processing device inputs a management password used to manage a key to be acquired
As the key password calculation unit, the processing device calculates a key password based on the management password input by the acquisition request input unit,
When the key password calculated by the key password calculation unit matches the key password stored by the key storage unit,
As the key acquisition unit, the processing device acquires the key stored in the key storage unit,
As the key output unit, the processing device outputs the key acquired by the key acquisition unit,
When the key password calculated by the key password calculation unit does not match the key password stored by the key storage unit,
As a new key generation unit, the processing device generates a key,
As the key storage unit, the storage device stores the key generated by the new key generation unit and the key password calculated by the key password calculation unit,
As the key output unit, the processing device outputs the key generated by the new key generation unit,
As the update request input unit, the processing device inputs a key to be updated,
When the key input by the update request input unit matches the key stored by the key storage unit,
As the update key generation unit, the processing device generates a key,
As the key update unit, the processing device stores the key generated by the update key generation unit in the key storage unit instead of the key stored in the key storage unit,
A key management method, wherein the processing device outputs a key generated by the update key generation unit as an update key output unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011032518A JP2012175187A (en) | 2011-02-17 | 2011-02-17 | Key managing apparatus, encryption processing system, computer program, and key managing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011032518A JP2012175187A (en) | 2011-02-17 | 2011-02-17 | Key managing apparatus, encryption processing system, computer program, and key managing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012175187A true JP2012175187A (en) | 2012-09-10 |
Family
ID=46977708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011032518A Withdrawn JP2012175187A (en) | 2011-02-17 | 2011-02-17 | Key managing apparatus, encryption processing system, computer program, and key managing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012175187A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3020888A1 (en) * | 2014-05-12 | 2015-11-13 | Morpho | ENCRYPTION OF A SECRET PROTECTION KEY PROTECTING AT LEAST ONE SENSITIVE ELEMENT OF AN APPLICATION |
US10944558B2 (en) * | 2016-01-08 | 2021-03-09 | Tencent Technology (Shenzhen) Company Limited | Key storing method, key managing method and apparatus |
-
2011
- 2011-02-17 JP JP2011032518A patent/JP2012175187A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3020888A1 (en) * | 2014-05-12 | 2015-11-13 | Morpho | ENCRYPTION OF A SECRET PROTECTION KEY PROTECTING AT LEAST ONE SENSITIVE ELEMENT OF AN APPLICATION |
US10944558B2 (en) * | 2016-01-08 | 2021-03-09 | Tencent Technology (Shenzhen) Company Limited | Key storing method, key managing method and apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9985782B2 (en) | Network bound decryption with offline encryption | |
US6839437B1 (en) | Method and apparatus for managing keys for cryptographic operations | |
CN109583217B (en) | Internet e-commerce platform user privacy data encryption and decryption method | |
KR101224749B1 (en) | Systems and methods for managing multiple keys for file encryption and decryption | |
JP5679018B2 (en) | Database encryption system, method and program | |
JP5573293B2 (en) | Authentication device, encryption device, token device, authentication method, and authentication program | |
US7912223B2 (en) | Method and apparatus for data protection | |
US6986041B2 (en) | System and method for remote code integrity in distributed systems | |
CN111971929B (en) | Secure distributed key management system | |
JP6925686B1 (en) | Information processing system, information processing device, information processing method, and information processing program | |
JP2001027964A (en) | Data storing method, system therefor and recording medium for data storage processing | |
JP2014119486A (en) | Secret retrieval processing system, secret retrieval processing method, and secret retrieval processing program | |
KR101648364B1 (en) | Method for improving encryption/decryption speed by complexly applying for symmetric key encryption and asymmetric key double encryption | |
KR100954841B1 (en) | Method and Apparatus of managing unity data on mobile device and Recording medium using this | |
KR20210036700A (en) | Blockchain system for supporting change of plain text data included in transaction | |
EP3343827A1 (en) | Information security device and information security method using accessibility | |
WO2019163040A1 (en) | Access management system and program thereof | |
WO2018043466A1 (en) | Data extraction system, data extraction method, registration device, and program | |
JP2007020065A (en) | Decryption backup method, decryption restoration method, attestation device, individual key setting machine, user terminal, backup equipment, encryption backup program, decryption restoration program | |
JP2006244420A (en) | Identification information generation management device, and its system and program | |
JP2012175187A (en) | Key managing apparatus, encryption processing system, computer program, and key managing method | |
JP2007060581A (en) | Information management system and method | |
JP2006185184A (en) | Authority management system, authentication server, authority management method, and authority management program | |
JPH11215121A (en) | Device and method for authentication | |
JP2009212747A (en) | Electronic signature system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20121207 |
|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140513 |