JP5483754B2 - Software module management apparatus and software module management program - Google Patents
Software module management apparatus and software module management program Download PDFInfo
- Publication number
- JP5483754B2 JP5483754B2 JP2012053623A JP2012053623A JP5483754B2 JP 5483754 B2 JP5483754 B2 JP 5483754B2 JP 2012053623 A JP2012053623 A JP 2012053623A JP 2012053623 A JP2012053623 A JP 2012053623A JP 5483754 B2 JP5483754 B2 JP 5483754B2
- Authority
- JP
- Japan
- Prior art keywords
- cryptographic
- software module
- module
- encryption
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
本発明は、オペレーティングシステム、アプリケーションプログラム等のソフトウェアモジュールの更新を安全に行うためのソフトウェアモジュールの更新を行うソフトウェアモジュール管理装置およびソフトウェアモジュール管理プログラムに関する。 The present invention relates to a software module management apparatus and software module management program for updating software modules for safely updating software modules such as operating systems and application programs.
現在、多くのコンピューティングデバイスは、機器を動作させるためのオペレーティングシステムと数々の更新可能なソフトウェアモジュールから構成される。ソフトウェアモジュールの用途は多岐にわたり、用途ごとに専用のソフトウェアモジュールが開発され、組み合わせて利用される。また、ソフトウェアモジュールは機能の拡充や性能向上が必要になった場合あるいは不具合を修正する必要がある場合には更新されることがある。 Currently, many computing devices are composed of an operating system and a number of updatable software modules for operating the device. Software modules are used for various purposes, and dedicated software modules are developed for each application and used in combination. The software module may be updated when it is necessary to expand functions or improve performance, or when it is necessary to correct defects.
このようなコンピューティングデバイスにおいては、ソフトウェアモジュールの不具合をつき、本来の利用者以外が悪用する攻撃が今日的な脅威となっている。例えば、非特許文献1には、「AES−XCBC−MAC」と呼ばれる認証方式の実装上の不具合修正が公開されている。この情報と修正モジュールの変更箇所の解析を悪用すれば、どのような入力により不具合が引き起こされるかが判明し、不具合の修正を未だ行っていないコンピュータに対して悪用される虞がある。
In such a computing device, an attack that has a defect in a software module and is misused by a person other than the original user is a modern threat. For example, Non-Patent
従来、信頼できる機関あるいは開発元に対して不具合の報告が行われると、その内容を修正するソフトウェアモジュールが開発され、新規ソフトウェアモジュールの配信と不具合内容の公開が行われるという手法が一般的であった。しかし、不具合を修正するソフトウェアモジュールが配布されるよりも前に不具合が暴露されてしまった場合などは、コンピュータに対する脅威がより高まる危険があった。 Conventionally, when a defect is reported to a trusted organization or developer, a software module that corrects the content is developed, and a new software module is distributed and the content of the defect is released. It was. However, there is a danger that the threat to the computer will increase further if, for example, the problem is exposed before the software module for correcting the problem is distributed.
また、対策を急ぐあまり、修正ソフトウェアモジュールに十分な検証を行えず、他の不具合を誘起する問題や、不具合の修正が不十分となってしまうなどの問題も見られる。 In addition, due to the urgent countermeasures, sufficient verification cannot be performed on the corrected software module, and other problems such as problems that induce other defects and defects that are insufficiently corrected are also observed.
このような脅威を低減させるため、定期的あるいは外部からの指示により、修正プログラムの配布が行われているかを確認し、自動的に更新するシステムや、利用者に修正プログラムによる更新を促す通知を行うシステムが広く用いられている。 In order to reduce such threats, check whether the distribution of the patch is being performed regularly or by an external instruction, and automatically update the system or notify the user to update by the patch. The system to do is widely used.
しかしながら、従来の技術では、自動更新機能などを用いて、既存のソフトウェアモジュールの不具合を修正した新規ソフトウェアモジュールを配信し適用することにより、不具合に対応する。ところが、不具合を利用しようと考える攻撃者に対しても、この更新を促す通知等を手がかりに、新規ソフトウェアモジュールを解析し不具合の発生要因を特定する機会を与えることとなり、不具合を悪用した攻撃プログラムの開発を容易に助長させてしまう。その結果、新規ソフトウェアモジュールが未適用のコンピューティングデバイスは、脅威に晒されることとなる。 However, according to the conventional technology, a new software module in which a defect of an existing software module is corrected is distributed and applied using an automatic update function or the like to cope with the defect. However, an attacker who wants to use the bug will be given an opportunity to analyze the new software module and identify the cause of the bug using the notification that prompts the update. Will facilitate the development of. As a result, a computing device to which a new software module has not been applied is exposed to a threat.
また、共通部品による被害拡大リスクを抑制する観点から、同一の機能を目的とするソフトウェアモジュールを複数の開発あるいは提供元(以下、まとめて「ベンダ」と称す)から供給される場合にも、攻撃を受ける可能性のある機器の絶対数を減少させることはできるが、攻撃自体は行われてしまう。また、本来修正が必要であるにもかかわらず修正ソフトウェアモジュールが適用されないまま利用される事態も発生し得る。 In addition, from the viewpoint of reducing the risk of damage expansion due to common parts, an attack is also performed when software modules for the same function are supplied from multiple developers or providers (hereinafter collectively referred to as “vendors”). Although the absolute number of devices that can be affected can be reduced, the attack itself is carried out. In addition, there may occur a situation where the correction software module is used without being applied even though the correction is originally required.
コンピューティングデバイスにおいては、さまざまなソフトウェアモジュールが利用される。その中には、他のベンダの提供するソフトウェアモジュールであっても機能が代替可能であるものが含まれる。たとえば、暗号化と復号のモジュール、符号化と復号のモジュール、通信プロトコルスタック、XML(Extensible Markup Language)パーサなどは、コンピューティングデバイスの設計によっては、オペレーティングシステムの中核部分以外のほとんどが代替可能である。 Various software modules are used in computing devices. Among them, software modules provided by other vendors whose functions can be replaced are included. For example, encryption and decryption modules, encoding and decryption modules, communication protocol stacks, XML (Extensible Markup Language) parsers, etc. can be replaced by almost all but the core of the operating system depending on the design of the computing device. is there.
従来の技術では、不具合の発生したソフトウェアモジュールに対する攻撃を防止するためには、アプリケーションあるいはソフトウェアモジュールそのものの利用を停止する手法が用いられていた。ソフトウェアモジュールの利用を停止すると、目的とする機能が利用できなくなる。このため、脅威を認識しつつも使用を続けてしまい、不具合を利用した攻撃による被害を受ける問題や、その情報により攻撃対象となるソフトウェアモジュールの不具合が特定され、他者の攻撃による被害を受ける問題が依然として残される。従来技術でみられる上記その他の問題が、本発明によって対処されるものである。 In the prior art, in order to prevent an attack on a software module in which a problem has occurred, a technique of stopping the use of an application or the software module itself has been used. If the use of the software module is stopped, the target function cannot be used. For this reason, it continues to be used while recognizing the threat, and the problem of damage caused by the attack using the defect and the problem of the software module targeted by the attack are identified by the information, and the damage is caused by the attack of others. The problem remains. These and other problems found in the prior art are addressed by the present invention.
本発明は、このような事情に鑑みてなされたもので、その目的は、用途に応じたソフトウェアモジュールを選択するシステムにおいて、既存のソフトウェアモジュールの不具合を修正した新規のソフトウェアモジュールをより安全に配信し、既存のソフトウェアモジュールを安全に更新することができるソフトウェアモジュール管理装置およびソフトウェアモジュール管理プログラムを提供することにある。 The present invention has been made in view of such circumstances, and its purpose is to distribute a new software module in which a defect of an existing software module is corrected more safely in a system for selecting a software module according to the application. Then, it is providing the software module management apparatus and software module management program which can update the existing software module safely.
上述した課題を解決するために、本発明は、端末装置(例えば、本実施形態における暗号クライアント装置150、暗号クライアント装置1100、コンピューティングデバイス100)における第1のソフトウェアモジュール(例えば、本実施形態における危殆化した暗号モジュール、ソフトウェアモジュールA)を第2のソフトウェアモジュール(例えば、本実施形態における修正された暗号モジュール、ソフトウェアモジュールA´)に変更する場合における、ソフトウェアモジュールの管理を行うソフトウェアモジュール管理装置(例えば、本実施形態における暗号管理サーバ装置350、暗号管理サーバ装置1350、ソフトウェアモジュール管理装置301)であって、第1のソフトウェアモジュールとは異なる第3のソフトウェアモジュール(例えば、本実施形態における代替モジュール、ソフトウェアモジュールB)を記憶する記憶部(例えば、本実施形態における暗号モジュールDB353、暗号モジュールDB1353、記憶部310)と、記憶部に記憶された第3のソフトウェアモジュールを読み出し、読み出した第3のソフトウェアモジュールを、端末装置に配信して第1のソフトウェアモジュールから第3のソフトウェアモジュールに切り替えさせて使用可能状態にさせる第1の配信部と、第1のソフトウェアモジュールとは異なる第2のソフトウェアモジュールが生成された後に、第2のソフトウェアモジュールを端末装置に配信し、第3のソフトウェアモジュールから第2のソフトウェアモジュールに切り替えさせて使用可能状態にさせる第2の配信部と、を有することを特徴とするソフトウェアモジュール管理装置である。
In order to solve the above-described problems, the present invention provides a first software module (for example, in this embodiment) in a terminal device (for example, the
本発明は、端末装置における第1のソフトウェアモジュールを第2のソフトウェアモジュールに変更する場合における、ソフトウェアモジュールの管理を行うソフトウェアモジュール管理装置であって、ソフトウェアモジュールを選択する選択モジュールを記憶する記憶部と、記憶部に記憶された選択モジュールを読み出し、読み出した選択モジュールを、端末装置に配信してソフトウェアモジュールの選択を行わせる第1の配信部と、第1のソフトウェアモジュールとは異なる第2のソフトウェアモジュールが生成された後に、第2のソフトウェアモジュールを端末装置に配信し、選択モジュールによって選択されたソフトウェアモジュールから第2のソフトウェアモジュールに切り替えさせて使用可能状態にする第2の配信部と、を有することを特徴とするソフトウェアモジュール管理装置である。 The present invention is a software module management device that manages software modules when a first software module in a terminal device is changed to a second software module, and stores a selection module that selects a software module A first distribution unit that reads the selection module stored in the storage unit, distributes the read selection module to the terminal device and selects a software module, and a second different from the first software module. A second distribution unit that distributes the second software module to the terminal device after the software module is generated, and switches the software module selected by the selection module from the software module to the second software module; Have It is a software module management apparatus according to claim.
本発明は、端末装置における第1のソフトウェアモジュールを第2のソフトウェアモジュールに変更する場合における、ソフトウェアモジュールの管理を行うソフトウェアモジュール管理装置であって、ソフトウェアモジュールを選択する基準を示す選定基準を記憶する記憶部と、記憶部に記憶された選定基準を読み出し、読み出した選定基準を、端末装置に配信して当該選定基準に基づくソフトウェアモジュールの選択を行わせる第1の配信部と、第1のソフトウェアモジュールとは異なる第2のソフトウェアモジュールが生成された後に、第2のソフトウェアモジュールを端末装置に配信し、選択モジュールによって選択されたソフトウェアモジュールから第2のソフトウェアモジュールに切り替えさせて使用可能状態にする第2の配信部と、を有することを特徴とするソフトウェアモジュール管理装置である。 The present invention is a software module management device that manages software modules when a first software module in a terminal device is changed to a second software module, and stores a selection criterion indicating a criterion for selecting the software module A storage unit that reads out the selection criteria stored in the storage unit, distributes the read selection criteria to the terminal device, and selects a software module based on the selection criteria; After the second software module different from the software module is generated, the second software module is distributed to the terminal device, and the software module selected by the selection module is switched to the second software module to be usable. Second delivery to If a software module managing apparatus characterized by having a.
本発明は、第2の配信部は、第2のソフトウェアモジュールを配信した後に、第1のソフトウェアモジュールの次に利用しているソフトウェアモジュールの使用を終了させることを特徴とする請求項1から請求項3のうちいずれかに記載のソフトウェアモジュール管理装置である。
According to the present invention, the second distribution unit terminates the use of the software module used next to the first software module after distributing the second software module.
本発明は、第1から第3のソフトウェアモジュールは、暗号処理を行う機能を有することを特徴とする請求項1から請求項4のうちいずれかに記載のソフトウェアモジュール管理装置である。
The present invention is the software module management apparatus according to any one of
以上説明したように、この発明によれば、既存のソフトウェアモジュールを安全に更新することができる。 As described above, according to the present invention, an existing software module can be safely updated.
以下、本発明の一参考例によるソフトウェアモジュール管理装置(図1で示す暗号管理サーバ装置のこと)を含むシステム(以下、「第1参考例における本システム」という)について図面を参照して説明する。 Hereinafter, a system that includes a software module managing apparatus according to an exemplary embodiment of the present invention (that of the cryptographic management server device shown in FIG. 1) (hereinafter, referred to as "the system in the first reference example") will be described with reference to the drawings .
まず、第1参考例における本システムの概要について説明する。第1参考例における本システムにおいては、サーバとクライアント装置とが接続され、サーバとクライアント装置間において暗号モジュールを用いて暗号化された情報を送受信することが可能なシステムである。ここで、暗号モジュールを定期的に切り替えることも可能である。このような、暗号モジュールを切り替え可能な暗号システムとしては、暗号の手法ごとに暗号方式に依存しないインターフェースを規定し、各暗号ベンダが実装可能なフレームワークがいくつか存在する。例えば、Microsoft(登録商標)のCryptAPIやSun(登録商標)のJCA(Java(登録商標) Cryptographic Architecture)/JCE(Java(登録商標) Cryptographic Extensions)やOpen Group(登録商標)のCDSA(Common Data Security Architecture)などがある。 First, the outline of the present system in the first reference example will be described. The system in the first reference example is a system in which a server and a client device are connected, and information encrypted using an encryption module can be transmitted and received between the server and the client device. Here, it is also possible to switch the cryptographic module periodically. As such a cryptographic system capable of switching cryptographic modules, there are several frameworks that can be implemented by each cryptographic vendor by defining an interface independent of the cryptographic method for each cryptographic technique. For example, Microsoft (registered trademark) CryptAPI, Sun (registered trademark) JCA (Java (registered trademark) Cryptographic Architecture) / JCE (Java (registered trademark) Cryptographic Extensions), or Open Group (registered trademark) CDSA (Common Data Security) Architecture).
これらのフレームワークでは、暗号化/復号、署名生成/検証、認証子生成/検証などの暗号の手法ごとに暗号モジュールにアクセスするインターフェースを規定し、インターフェースに従って、例えば、DES(Data Encryption Standard)、AES(Advanced Encryption Standard)などの暗号方式を実装することが可能になっている。そして、暗号やセキュリティの専門家がシステム構築時に、これらの実装された暗号の中から適切な暗号方式をあらかじめ選択し、いずれの暗号方式を利用するかを示す暗号方式パラメータをフレームワークに入力して、暗号方式を切り替えることが可能である。 In these frameworks, an interface for accessing a cryptographic module is defined for each cryptographic technique such as encryption / decryption, signature generation / verification, and authenticator generation / verification. According to the interface, for example, DES (Data Encryption Standard), An encryption scheme such as AES (Advanced Encryption Standard) can be implemented. Then, at the time of system construction, an encryption or security specialist selects an appropriate encryption method from among the installed encryption methods, and inputs encryption method parameters indicating which encryption method to use into the framework. Thus, the encryption method can be switched.
このようなフレームワークを利用する場合、アプリケーションシステムの運用上のセキュリティポリシが変更された場合、暗号やセキュリティの専門家が、再度システムに適した暗号方式を選定する必要があり、暗号やセキュリティの専門家の人材リソースの問題やコストの問題に直面する。また、既存の暗号方式の不備が発見されたり、新しい暗号が発表されたりした際に、運用中のシステムに対して、暗号方式の変更をスムーズに適用するのが難しい。さらには、セキュリティを実施する環境に応じて、必要なセキュリティ強度や処理速度などが違う場合に、最適なセキュリティを実現することも、従来システムでは難しい問題である。 When using such a framework, if the security policy for the operation of the application system is changed, it is necessary for a specialist in cryptography and security to select an encryption method suitable for the system again. Face professional resource issues and cost issues. In addition, when a deficiency in an existing encryption method is discovered or a new cipher is announced, it is difficult to smoothly apply a change in the encryption method to an operating system. Furthermore, it is also a difficult problem in the conventional system to realize optimal security when necessary security strength, processing speed, and the like differ depending on the environment where security is performed.
第1参考例における本システムにおいては、暗号モジュールの切り替えが可能な暗号システムでは、この問題についても解決することが可能である。 In this system in the first reference example , this problem can be solved in the cryptographic system in which the cryptographic module can be switched.
<第1の参考例>
図1は、本発明の第1の参考例における本システムの構成を示す概略ブロック図である。
<First Reference Example >
FIG. 1 is a schematic block diagram showing the configuration of the system in the first reference example of the present invention.
第1参考例における本システムは、暗号モジュール308と暗号評価記述ファイル309とを含む暗号パッケージ307を送信する暗号管理サーバ装置350と、受信した暗号パッケージ307を用いて暗号処理を行う暗号クライアント装置150とから構成される。暗号評価記述ファイル309に記述される暗号の評価とは、対応する暗号モジュール308の暗号方式の信頼度や強度等が数値化された情報であり、例えば、暗号クライアント装置150などの端末装置上に実装している暗号方式の安全性や暗号の処理速度、暗号に利用可能な鍵長などである。
This system in the first reference example includes a cryptographic
暗号管理サーバ装置350は、暗号モジュール308を蓄積した暗号モジュールDB353と、暗号評価記述ファイル309を蓄積した暗号評価DB354と、暗号モジュールDB353と暗号評価DB354との管理を行う暗号管理部351と、暗号モジュールDB353と暗号評価DB354とに新規の情報を登録する暗号登録部355と、暗号クライアント装置150の要求に応じて最適な暗号パッケージ307を暗号モジュールDB353と暗号評価DB354とから読み出して送信する暗号配信部352とを備える。
The cryptographic
暗号クライアント装置150は、暗号制御マネージャ部152を介して暗号実装部153が提供する暗号機能を呼び出して利用するアプリケーションやミドルウェアである上位システム部151と、暗号管理サーバ装置350から送信された暗号パッケージ307の受信や暗号実装部153から提供される暗号機能の切り替えを行う暗号制御マネージャ部152と、主要な暗号方式による暗号処理をハードウェアとして実現した耐タンパーな暗号ハードウェア部450と、暗号方式を実装した暗号モジュール308が実行可能・利用可能な状態にされて暗号機能を提供する暗号実装部153とから構成される。暗号管理サーバ装置350は、暗号クライアント装置150からの要求に基づき、暗号の初期登録・配信・更新の3つの手順を行うことで、適切な暗号パッケージ307を暗号クライアント装置150に送信する。
The
ここで、暗号の初期登録とは、暗号クライアント装置150が暗号モジュール308を有せず、暗号実装部153が存在しない場合に、暗号クライアント装置150の暗号ハードウェア部450を利用して、利用上必要不可欠な暗号モジュール308を暗号管理サーバ装置350から暗号実装部153に安全に送信することである。
Here, the initial encryption registration means that the
暗号の配信とは、暗号管理サーバ装置350が、暗号クライアント装置150から受信した暗号要求に応じて、適切な暗号モジュール308または暗号パッケージ307を選定して暗号クライアント装置150に送信することである。暗号要求は暗号に関する条件情報を含む。この条件情報は、暗号化や署名生成などの暗号方式の分類(暗号のカテゴリ)、暗号モジュール308を作成したメーカ、暗号モジュール308が動作するハードウェアの情報、および暗号の評価情報などがある。暗号の評価情報は、本参考例のように、暗号評価記述ファイル309として、暗号モジュール308とは独立したファイルとして扱われることとしても良い。
The cryptographic distribution means that the cryptographic
暗号の更新とは、新規の暗号モジュール308を登録したり、危殆化した暗号方式を利用した該当する暗号モジュール308を削除したり、暗号モジュール308のバグを発見し既存の暗号モジュール308とその暗号モジュール308が実行されている暗号実装部153を更新したり、計算機の処理速度の高速化等に伴って暗号の評価を変更した際に、暗号管理サーバ装置350上の暗号モジュールDB353や暗号評価DB354に記憶された情報を更新し、この更新した暗号パッケージ307の情報を、暗号クライアント装置150に対して定期的に送信したり、暗号クライアント装置150からの要求に基づいて送信し、暗号管理サーバ装置350が新しい暗号モジュール308を送信することや既存の暗号実装部153が動作できなくなったことを通知することである。
The update of the cipher means registering a
図2は、暗号クライアント装置150の詳細な構成図である。暗号制御マネージャ部152は、暗号処理情報DB157を持つ暗号処理制御部156と、暗号モジュールDB164と、暗号評価DB163と、暗号モジュール選定ポリシ158とハードウェアプロファイル160とを持つ暗号モジュール選定部159と、鍵情報DB165と、その鍵情報DB165へのアクセス制御ポリシが記述されたアクセス制御ポリシ161を持つ鍵情報管理部162と、暗号制御マネージャポリシ167を持つ暗号管理部166と、暗号ハードウェア部450と通信を行う暗号ハードウェア管理制御部170と、外部との通信を行う通信機能155と、通信機能155と連携するアルゴリズムネゴシエーション部168と、通信機能155と連携するセキュア通信管理部169とから構成される。
FIG. 2 is a detailed configuration diagram of the
暗号処理制御部156は、上位システム部151からの暗号処理呼び出しに基づき、鍵生成処理、鍵登録処理、暗号処理を行う。
The cryptographic
鍵生成処理の場合、暗号処理制御部156は、上位システム部151から指定された暗号方式、鍵長、暗号方式パラメータを暗号処理情報DB157に登録した際の暗号処理の識別子により、指定された暗号方式に対する暗号モジュール308を暗号モジュール選定部159により選定するように制御(依頼・指示)する。
In the case of key generation processing, the cryptographic
暗号処理制御部156が、選定された暗号モジュール308をメモリ上にロードし暗号実装部153として実行状態にさせる。暗号処理制御部156が、指定された暗号処理の識別子に対応する鍵生成のための暗号方式パラメータを鍵情報管理部162経由で鍵情報DB165から引き出す。暗号処理制御部156が、指定された鍵長と引き出した暗号方式パラメータで暗号実装部153を呼び出すと、暗号実装部153は鍵情報を生成する。暗号処理制御部156は、生成された鍵情報を受け取る。暗号処理制御部156は、暗号実装部153が生成した鍵情報を鍵情報管理部162経由で鍵情報DB165に登録してその鍵情報に対応する鍵識別子を受け取り、処理結果として新しく発行した暗号処理の識別子と鍵識別子の関連付けを暗号処理情報DB157に保存し、暗号処理の識別子を上位システム部151に返す。
The cryptographic
鍵登録の場合、暗号処理制御部156は、上位システム部151から指定された鍵情報を、鍵情報管理部162を経由して鍵情報DB165に登録して鍵識別子を受け取り、処理結果として新しく発行した暗号処理の識別子と鍵識別子の関連付けを暗号処理情報DB157に保存し、暗号処理の識別子を上位システム部151に返す。
In the case of key registration, the cryptographic
暗号処理の場合、上位システム部151から指定された暗号に関する条件情報と暗号処理対象データ(平文)と鍵生成または鍵登録を行った際に受け取った暗号処理の識別子とを受け取り、暗号に関する条件情報を参照して適切な暗号モジュール308を暗号モジュール選定部159により選定するように制御し、選定された暗号モジュール308をメモリ上にロードして暗号実装部153として実行させ、指定された暗号処理の識別子に対応する鍵情報を鍵情報管理部162経由で鍵情報DB165から引き出し、指定された暗号処理対象データと引き出した鍵情報とを、呼び出した暗号実装部153に入力し、対応して処理された暗号データを受け取り、処理結果として新しく発行した暗号処理の識別子と鍵識別子の関連付けを暗号処理情報DB157に保存し、暗号処理の識別子を返す。暗号処理の際に利用した鍵情報などを暗号処理の識別子に結びつけることにより、暗号処理の再実行や復号を簡単に実施することができるようにする。
In the case of cryptographic processing, it receives condition information related to encryption specified from the higher-
暗号モジュールDB164は、暗号管理サーバ装置350から受信した暗号モジュール308を格納する記憶部である。
The
暗号評価DB354は、暗号管理サーバ装置350から受信した暗号評価記述ファイル309を格納する記憶部である。
The
暗号モジュール選定部159は、暗号化や署名生成などの暗号のカテゴリ、暗号モジュール308を作成したメーカ、暗号モジュール308が動作するハードウェアの情報、および、暗号の評価情報などの暗号に関する条件情報を、上位システム部151からの入力を元に、暗号モジュールDB164が記憶している暗号モジュール308の中から一番適切な暗号モジュール308を選定する。暗号モジュール308の選定にあたっては、暗号クライアント装置150のハードウェア情報を記述したハードウェアプロファイル160に適合するものの中から選び、かつ、暗号クライアント装置150を利用する利用者のポリシを記述した暗号モジュール選定ポリシ158にも従うようにする。
The cryptographic
ハードウェアプロファイル160とは、例えば、暗号クライアント装置150のCPUアーキテクチャ、CPUクロック、搭載メモリ量などの情報を含む情報である。暗号モジュール選定ポリシ158とは、例えば、入力条件により選定された暗号が複数ある場合に利用者が優先したい条件、利用者が優先的に利用したい暗号のメーカ、利用者が利用禁止にしたい暗号方式などを含む情報である。
The
このように、暗号モジュール選定部159は、上位システム部151からの入力情報と、ハードウェアプロファイル160と、暗号モジュール選定ポリシ158とを参照して、入力情報に一致する暗号モジュール308を選定する。暗号モジュール選定部159が暗号モジュール308を一意に選定した場合には、選定した暗号モジュール308を暗号モジュールDB164から取り出す。暗号モジュール選定部159は、暗号モジュール308が一意に選定できなかった場合は、エラーを出力する。
As described above, the cryptographic
鍵情報管理部162は、暗号実装部153を呼び出す際に指定される鍵情報や暗号方式パラメータなどの情報を鍵情報DB165へデータを記憶させ、または読み出す。鍵情報管理部162は、指定される鍵情報や暗号方式パラメータの情報がひとつではない場合、複数の情報をひとつにまとめて引き出せるように関連付けを行って、鍵情報DB165に登録する。また、鍵情報管理部162は、鍵情報DB165から鍵情報や暗号方式パラメータを引き出す際には、暗号モジュール選定ポリシ158に従い、複数ある上位システム部151からの鍵情報へのアクセス制御を行う。
The key
鍵情報管理部162は、上位システム部151から指定されたクレデンシャル(アクセスのための鍵やパスワードなど)とアクセスしたい鍵識別子と鍵識別子に関連付けられた暗号処理の識別子とにより、そのクレデンシャルの正当性を検証する。鍵情報管理部162は、クレデンシャルの持ち主に対してアクセス可能な鍵情報DB165の鍵情報の規定を記述したアクセス制御ポリシ161に基づき、アクセス可否を判定し、アクセス可ならば、暗号処理の識別子に対応する鍵識別子を鍵情報DB165から引き出し、鍵識別子に対応する鍵情報や暗号方式パラメータを引き出し、上位システム部151にこれを返す。一方、アクセス不可ならば、上位システム部151にエラーを返す。
The key
暗号管理部166では、通信機能155を介して暗号管理サーバ装置350と通信を行い、暗号の初期登録・配信・更新の手順に従って、暗号パッケージ307等の受信を行う。暗号管理部166が暗号管理サーバ装置350から暗号パッケージ307等を受信する際には、暗号制御マネージャポリシ167の内容に従って処理する。暗号制御マネージャポリシ167の内容は、例えば、以下の5つである。1つめは、暗号管理サーバ装置350との通信におけるサーバ認証の実施可否である。2つめは、暗号管理サーバ装置350からの暗号パッケージ307等の受信時の暗号化可否である。3つめは、暗号管理サーバ装置350からの暗号パッケージ307等の受信時の改ざん検出子(MAC(Message Authentication Code))付加可否である。4つめは、受信した暗号パッケージ307等の認証子の検証実施可否である。5つめは、暗号評価DB163と暗号モジュールDB164とに記憶された暗号パッケージ307を定期的に更新可否や更新頻度などを示す定期更新に関する設定情報、などとする。
The
暗号ハードウェア管理制御部170は、暗号ハードウェア部450と通信を行い、暗号管理サーバ装置350から、暗号の初期登録の手順に従って暗号パッケージ307の受信を行う。暗号パッケージ307の受信の際には、暗号パッケージ307自身が暗号化されている場合、暗号ハードウェア部450にて暗号パッケージ307を復号する。また、暗号モジュール308に改ざん検出子が付加されていることを検出すると、暗号ハードウェア部450が暗号モジュール308の改ざん検出を行う。
The cryptographic hardware
アルゴリズムネゴシエーション部168は、通信機能155と連携し、2つの暗号クライアント装置間で安全な通信セッションを構築する事前に、通信セッションの構築で利用する暗号方式、通信セッションで利用する暗号方式の調停を行う。暗号方式の調停を行う際には、以下の4つの調停方法のいずれかで調停を行えるようにする。
The
第1の調停方法は、自身の暗号モジュールDB164に記憶された暗号モジュール308が提供する暗号方式群のみからアルゴリズムネゴシエーション部168が一方的に暗号方式を決定する。自身のアルゴリズムネゴシエーション部168は、上位システム部151から指定された1つ以上の暗号方式の分類(暗号のカテゴリ)、暗号制御マネージャポリシ、ハードウェアプロファイル、暗号に関する条件情報から、暗号評価DB163と暗号モジュールDB164とを参照して適切な暗号モジュール308を選定し、暗号方式を決定する。暗号方式の分類が複数指定された場合は、個々の暗号方式の分類ごとに選定を行い、暗号方式を決定する。
In the first arbitration method, the
このとき、アルゴリズムネゴシエーション部168は、上位システム部151から暗号方式が未決定である暗号方式の分類が指定された場合は、指定された暗号に関する条件情報を参照して暗号の配信の手順を行い暗号管理サーバ装置350から暗号モジュール308を受信し、その暗号モジュール308の暗号方式を結果とする。それでも未決定の場合は、アルゴリズムネゴシエーション部168は、上位システム部151にエラーを返す。
At this time, the
アルゴリズムネゴシエーション部168が暗号方式を決定すると、上位システム部151から指定された相手方の暗号制御マネージャ部152の宛先に対して、暗号方式調停方法番号と、結果として出力された暗号方式の分類と暗号方式の対応群と、暗号モジュール308が足りない場合の暗号管理サーバ装置350からの受信可否に関する情報を送信する。受信した相手方の暗号制御マネージャ部152は、指定された暗号方式の暗号モジュール308を所持しているかを暗号評価DB163および暗号モジュールDB164から検索し、すべての暗号方式に対して適切な暗号モジュール308が存在する場合には通信可能である返信を行う。
When the
相手方の暗号制御マネージャ部152は、存在しない暗号モジュール308があった場合、暗号管理サーバ装置350からの受信可否に関する情報に従って処理する。すなわち、受信可の場合は、暗号の配信の手順に従って、暗号方式に対する暗号モジュール308を受信し、受信完了後、通信可能である返信を行う。受信不可の場合や、受信可の場合でも適切な暗号モジュール308が受信できなかった場合、通信不可能である返信を行う。自身の暗号制御マネージャ部152は、相手方の暗号制御マネージャ部152からの返信を上位システム部151に転送する。
If there is a
第2の調停方法は、相手方の暗号制御マネージャ部152が保持する暗号方式群のみから相手の暗号制御マネージャ部152が一方的に暗号方式を決定する。これは上記第1の調停方法と対称の処理となり同様の手順である。
In the second arbitration method, the other party's encryption
第3の調停方法は、双方の暗号制御マネージャ部152が保持する暗号方式群から自身の暗号制御マネージャ部152が共通の暗号方式を決定する。
In the third arbitration method, the encryption
自身の暗号制御マネージャ部152のアルゴリズムネゴシエーション部168は、上位システム部151から指定された1つ以上の暗号方式の分類(暗号のカテゴリ)、相手方の暗号制御マネージャ部152の宛先から、相手方の暗号制御マネージャ部152に対して暗号方式調停方法番号、暗号方式の分類を送信する。相手方の暗号制御マネージャ部152は、受信した暗号方式の分類、ハードウェアプロファイルから、暗号評価DB163および暗号モジュールDB164を参照して該当するすべての暗号モジュール308を選び、選んだすべての暗号モジュール308が対応する暗号方式一覧を作成する。
The
この際、相手方の暗号制御マネージャ部152は、暗号方式の分類が複数指定された場合は、個々の暗号方式の分類ごとに暗号モジュール308を選び、暗号方式一覧を作成する。相手方の暗号制御マネージャ部152は、暗号方式の分類ごとの暗号方式一覧を自身の暗号制御マネージャ部152に送信する。暗号方式の分類ごとの暗号方式一覧を受信した自身の暗号制御マネージャ部152は、上位システム部151から指定された1つ以上の暗号方式の分類(暗号のカテゴリ)、暗号制御マネージャポリシ、ハードウェアプロファイル、暗号に関する条件情報から、暗号評価DB163および暗号モジュールDB164を参照して適切な暗号モジュール308を選定し、選定した暗号モジュール308から暗号方式を決定する。
At this time, when a plurality of encryption method classifications are designated, the other party's encryption
この際、暗号制御マネージャ部152は、暗号方式の分類が複数指定された場合は、個々の暗号方式の分類ごとに選定を行い、暗号方式を決定する。例えば、次の場合、暗号方式の分類に対する暗号方式は決定されたとする。まず、自身の暗号制御マネージャ部152で選定した暗号方式が暗号方式一覧に存在する場合。次に、自身の暗号制御マネージャ部152が受信した暗号方式一覧のいずれかの暗号方式に対応する暗号モジュール308を所持している場合。それ以外の場合、暗号方式の分類に対する暗号方式は未決定とする。
At this time, if a plurality of encryption method classifications are designated, the encryption
暗号制御マネージャ部152は、未決定の暗号方式の分類がある場合、受信した暗号方式一覧のいずれかを指定して、暗号の配信の手順に従い、暗号管理サーバ装置350から暗号モジュール308を受信する。暗号制御マネージャ部152は、対応する暗号モジュール308を受信できるまで暗号方式一覧のすべての暗号方式について同様の処理を繰り返す。それでも未決定の場合、該当の暗号方式の分類に関する暗号方式は未決定とする。すべての暗号方式の分類に対して、上記の処理が完了したら、相手方の暗号制御マネージャ部152に対して、すべての暗号方式の分類に対する暗号方式の決定/未決定を送信する。
When there is an undetermined classification of cryptographic schemes, the cryptographic
第4の調停方法は、双方の暗号制御マネージャ部の保持する暗号方式群から相手方の暗号制御マネージャ部152に共通の暗号方式を決定する。これは第3の調停方法の場合と対称の処理となり同様の手順である。
In the fourth arbitration method, an encryption method common to the other encryption
アルゴリズムネゴシエーション部168は、以上の4つの調停方法のいずれかで調停を行う。
The
セキュア通信管理部169は、通信機能155と連携し、他の暗号クライアント装置150との間で安全な通信セッションを構築する。セキュア通信管理部169は、安全なセッションを構築する際には、アルゴリズムネゴシエーション部168により、通信セッション構築で利用するための暗号方式と通信セッションで利用するための暗号方式を決定した後に、セッション鍵共有を行う。安全な通信セッションの構築後は、決定した暗号方式に従い、セッション鍵を利用して、通信データの暗号化や通信データの改ざん防止のための認証子の付加を行うことができるようにする。また、セキュア通信管理部169は、一度、構築した通信セッションは、一定時間内は再利用できるように、通信セッションの保持を行うことができるようにする。
The secure
セキュア通信管理部169は、上位システム部151から指定された通信相手の宛先にセキュア接続要求を送信し、セキュア接続の開始を通知する。次に、セキュア通信管理部169は、事前にアルゴリズムネゴシエーション部168が決定した暗号方式の分類に従ってセキュア接続を確立する。暗号方式の分類には、例えば、認証、鍵共有、共通鍵情報暗号化(ストリーム暗号あるいはブロック暗号)、公開鍵暗号、データ認証(MAC認証または署名認証)、擬似乱数生成(ストリーム暗号および公開鍵暗号の場合のみ)、セッション鍵導出、MAC鍵導出(MAC認証の場合のみ)、などの分類がある。セキュア通信管理部169は、セキュア接続に認証が必要な場合、認証処理を行う。
The secure
次に、セキュア通信管理部169は、鍵共有処理により鍵の共有を行い、セキュアセッションを確立する。ただし、公開鍵暗号の暗号方式が調停されている場合、鍵共有処理は行わない。公開鍵暗号なしで暗号化通信を行う場合には、共有した鍵からセッション鍵導出方式により、セッション鍵を作成し、共通鍵情報暗号化方式に従って送信したいデータを暗号化し、暗号化データを相手に送信する。通信相手は、同様の方法でセッション鍵を作成し、共通鍵情報暗号化方式に従って受信したデータを復号する。
Next, the secure
セキュア通信管理部169は、公開鍵暗号ありで暗号化通信を行う場合には、擬似乱数生成方式に従ってランダムなセッション鍵を作成し、共通鍵情報暗号化方式に従ってセッション鍵で送信したいデータを暗号化し、信頼機関から通信相手の公開鍵を受信し、公開鍵暗号方式に従って通信相手の公開鍵でセッション鍵自体を暗号化し、暗号化データと暗号化セッション鍵を相手に送信する。通信相手は、自分の秘密鍵で暗号化セッション鍵を復号し、共通鍵情報暗号化方式に従ってセッション鍵で受信したデータを復号する。
When performing encrypted communication with public key encryption, the secure
セキュア通信管理部169は、データ認証子付き通信を行う場合であってMAC認証の場合、共有した鍵からMAC鍵導出方式により、MAC鍵を作成し、MAC認証方式に従って送信したいデータにMACデータを付加し、MAC付きデータを相手に送信する。通信相手は、同様の方法でMAC鍵を作成し、MAC認証方式に従って受信したデータのMACを検証する。
In the case of performing communication with a data authenticator and performing MAC authentication, the secure
セキュア通信管理部169は、データ認証子付き通信を行う場合で署名認証の場合、自分の秘密鍵で署名を付加し、署名付きデータを相手に送信する。通信相手は、相手の公開鍵が登録されている信頼機関から通信相手の公開鍵を受信し、相手の公開鍵の正当性を検証し、検証が正しく終了した場合、署名認証方式に従って相手の公開鍵で受信した署名付きデータを検証する。
In the case of performing communication with a data authenticator and signature authentication, the secure
図3は、暗号管理サーバ装置350の詳細な構成図である。暗号管理サーバ装置350は、暗号モジュールDB353と、暗号評価DB354と、暗号モジュールDB353と暗号評価DB354とに記憶された情報の読み出しや更新等の処理を行う暗号管理部351と、暗号モジュールDB353と暗号評価DB354とに情報の登録を行う暗号登録部355と、暗号クライアント装置150へ暗号の送信を行う暗号配信部352とから構成される。
FIG. 3 is a detailed configuration diagram of the encryption
暗号モジュールDB353は、予め記憶するかユーザによって入力される暗号モジュール308を記憶するデータベースである。
The
暗号評価DB354は、予め記憶するかユーザに入力される暗号評価記述ファイル309を記憶するデータベースである。
The
暗号管理部351は、暗号管理サーバ装置350のユーザに対して、暗号モジュールDB353と暗号評価DB354に格納された暗号モジュール308や暗号パッケージ307の検索、暗号評価部の内容表示、管理している暗号のリスト表示、既存の暗号の更新、既存の暗号の削除、新規の暗号の登録、暗号配信部の起動/終了を行うインターフェースを備える。暗号管理部351は、新規の暗号を登録する場合は、暗号登録部355へ登録依頼を行う。
The
暗号登録部355は、暗号パッケージ登録部357と複合型記述生成部358とを備えている。
The
暗号配信部352は、暗号パッケージ配信制御部359と、配布ポリシ371を持つ暗号パッケージ配布構成部370と、配布ポリシ371を持つ配布暗号モジュール選定部360とを備える。
The
暗号パッケージ配信制御部359は、暗号クライアント装置150からの要求を解釈し、暗号の初期登録・配信・更新の3つの手順を実施する待ち受けサービスを実行する。また、この待ち受けサービスは、処理内容のログを記録する。
The cryptographic package
配布暗号モジュール選定部360では、暗号の初期登録・配信・更新の3つの手順と暗号クライアント装置150からの要求に基づき、配信に適切な暗号モジュール308を選定する。暗号の初期登録の場合、配信する暗号モジュール308は、利用上必要不可欠であると規定し、配布ポリシ371に記述された暗号方式である。
The distributed cryptographic
暗号パッケージ配布構成部370では、配布暗号モジュール選定部360で選定された暗号モジュール308を元に、配布ポリシ371に従って、暗号モジュール308と、暗号モジュール308に対応する暗号評価記述ファイル309とを暗号パッケージ307として配布可能な形にするための構成処理を行う。配布ポリシ371は、例えば、以下の4つの項目が記述されている。
In the cryptographic package
第1の項目は、暗号パッケージ307の配布の際の暗号化の可否である。第2の項目は、暗号パッケージ307の暗号化の暗号方式である。第3の項目は、暗号パッケージ307の配布の際の改ざん検出子の付加の可否である。第4の項目は、暗号パッケージ307の改ざん検出子の暗号方式である。
The first item is whether encryption is possible when the
暗号パッケージ配布構成部370が行う構成処理では、暗号評価DB354に格納された内容を暗号評価記述ファイル309として特定の形式で生成し、暗号パッケージ307に対して暗号管理サーバ装置350が配布認定する目的で認証子を付加し、暗号モジュール308と暗号評価記述ファイル309とをペアにして、暗号パッケージ307としてまとめる。
In the configuration process performed by the cryptographic package
また、暗号パッケージ配布構成部370は、複数の暗号モジュール308を組み合わせた暗号モジュール308を、複数の暗号モジュール308とそれぞれに対応する暗号評価記述ファイル309とをまとめて1つの暗号パッケージとしても良い。また、暗号パッケージ配布構成部370が行う構成処理では、暗号クライアント装置150の暗号制御マネージャポリシや暗号管理サーバ装置350の配布ポリシ371に従って、暗号パッケージ307の暗号化および改ざん検出子の付加、そのための鍵生成と鍵管理を行う。
In addition, the cryptographic package
ここで、本発明の第1の参考例による、暗号クライアント装置150内で上位システム部151からの暗号処理要求に対して、暗号処理制御部156が最適な暗号モジュールを選定し、暗号処理を実行、暗号処理結果を上位システム部151へ出力する暗号処理動作を示す。図20は、本発明の第1の参考例による暗号クライアント装置の暗号処理動作例を示す図である。図21は、本発明の第1の参考例による暗号クライアント装置の暗号処理フロー例を示す図である。図22は、本発明の第1の参考例による暗号評価DBの構成例を示す図である。図23は、本発明の第1の参考例による暗号実装DBの構成例を示す図である。図24は、本発明の第1の参考例による暗号処理情報DBと鍵情報DBの構成例を示す図である。
Here, according to the first reference example of the present invention, the cryptographic
サポートモードは、共通鍵暗号の動作モードや、サポートしている規格名といった情報である。例えば、ECDSA方式では、SECG SEC1のv1.0をサポートしている等である。暗号処理情報DBにある、暗号評価記述ファイルID(暗号処理)とは、当該暗号処理に利用した暗号モジュールに対応する暗号評価記述ファイルIDである。また、暗号処理情報DBにある、暗号評価記述ファイルID(鍵生成)とは、当該暗号処理に用いた暗号鍵を暗号処理DB157に追加登録した際に関連づけた暗号評価記述ファイルID、または当該暗号鍵を当該暗号制御マネージャ部152で鍵生成を実行した際に利用した暗号モジュールに対応する暗号評価記述ファイルIDである。
The support mode is information such as an operation mode of the common key encryption and a supported standard name. For example, the ECDSA method supports SECG SEC1 v1.0. The cryptographic evaluation description file ID (cryptographic processing) in the cryptographic processing information DB is a cryptographic evaluation description file ID corresponding to the cryptographic module used for the cryptographic processing. The cryptographic evaluation description file ID (key generation) in the cryptographic processing information DB is the cryptographic evaluation description file ID associated when the cryptographic key used for the cryptographic processing is additionally registered in the
本発明の第1の参考例による暗号クライアント装置の暗号処理動作の一例を次に示す。上位システム部151は、暗号処理の対象となるデータ及び暗号処理のカテゴリの識別子を含む暗号処理要求情報を入力として暗号処理制御部156に暗号処理を要求する(ステップS1)。暗号処理制御部156は、上位システム部151からの暗号処理要求情報に応じた鍵情報を鍵情報管理部162に要求する(ステップS2)。鍵情報管理部162は鍵情報DB165から当該鍵情報を取得し、暗号処理制御部156へ出力する(ステップS3)。
An example of the cryptographic processing operation of the cryptographic client device according to the first reference example of the present invention will be described below. The
暗号処理制御部156は、暗号モジュール選定部159に上位システム部151からの暗号処理要求情報を入力し、最適な暗号モジュールの選定を依頼する(ステップS4)。暗号モジュール選定部159は、ハードウェアプロファイル160や暗号モジュール選定ポリシ158を読み込む。暗号評価DBの暗号評価標準ファイルを適宜読み出し、当該暗号処理に最適な暗号モジュールを選定する。暗号モジュール選定部159は、選定した暗号モジュールに対応する暗号評価記述IDを含む選定結果を暗号処理制御部156に出力する(ステップS5)。
The cryptographic
暗号処理制御部156は、選定された暗号モジュールが当該暗号クライアント装置150内に存在しない場合は、上位システム部へエラー出力し、処理を完了する(ステップS6、ステップS11)。選定された暗号モジュールが当該暗号クライアント装置150内に存在する場合は、暗号処理制御部156は、暗号モジュール選定部159で選定された暗号モジュールを暗号実装部153としてメモリにロードする。
If the selected cryptographic module does not exist in the
暗号処理制御部156は、鍵情報管理部162で出力された上記鍵情報や暗号処理対象データを入力して暗号実装部153に暗号処理を要求する(ステップS6、ステップ7)。暗号実装部153は、暗号処理対象データに対する暗号処理結果を暗号処理制御部156に出力する(ステップS8)。
The cryptographic
暗号処理制御部156は、鍵情報管理部162から得られた鍵情報、暗号モジュール選定部159から得られた選定結果情報を含む、当該暗号処理の実行環境情報を当該暗号処理に対して発行した暗号処理IDを関連づけて暗号処理条件情報として暗号処理情報DBに登録する(ステップS9)。暗号処理制御部156は、暗号処理ID及び暗号処理対象データに対する暗号処理結果データを含む暗号処理結果情報を上位システム部151に出力する(ステップS10)。
The cryptographic
暗号クライアント装置150に上位システム部151からの暗号処理要求や当該暗号管理ドメイン及び暗号クライアント装置150のセキュリティポリシに最適な暗号モジュールが存在しない場合、当該暗号モジュール及び対応する暗号評価記述ファイルを含む暗号パッケージを暗号管理サーバ装置350から取得する。図25は、本発明の第1の参考例による暗号パッケージの配信動作例を示す図である。図26は、本発明の第1の参考例による暗号パッケージの配信処理フロー例を示す図である。
When there is no cryptographic module optimal for the cryptographic processing request from the higher-
暗号クライアント装置150は、次のようにして暗号管理サーバ装置350から暗号パッケージを取得する。上位システム部151は、当該暗号クライアント装置150に不足している暗号パッケージの取得を暗号管理部166に要求する(ステップS21)。暗号管理部166は、通信機能155を用いて当該暗号クライアント装置150のハードウェアプロファイルを含む暗号パッケージ配信要求情報を暗号管理サーバ装置350へ送信する(ステップS22)。
The
暗号パッケージ配信制御部359は、通信機能356を通じて暗号クライアント装置150からの暗号パッケージ配信要求情報を受信する(ステップS23)。暗号パッケージ配信制御部359は、配布暗号モジュール選定部360に暗号クライアント装置150からの配信要求に最適な暗号モジュールの選定を要求する(ステップS24)。配布暗号モジュール選定部360は、暗号クライアント装置150からの暗号パッケージ配信要求情報や暗号評価DB354の暗号評価記述ファイルを含む選定入力情報を基に当該要求に最適な配布暗号モジュールを選定し、当該選定結果を暗号パッケージ配信制御部359に出力する(ステップS25)。
The cryptographic package
暗号パッケージ配信制御部359は、ステップS25での選定結果情報を用いて暗号パッケージ配布構成部370に配布暗号パッケージ情報の作成を要求する(ステップS26)。暗号パッケージ配布構成部370は、暗号モジュールDB及び暗号評価DBを用いて、ステップS26の配布パッケージ情報作成要求に応じた暗号モジュール308及び暗号評価記述ファイル309を含む暗号パッケージ307を暗号パッケージ配信制御部359に出力する(ステップS27)。
The cryptographic package
暗号パッケージ配信制御部359は、通信機能356を用いて暗号パッケージ307を含む暗号パッケージ情報を暗号クライアント装置150に送信する(ステップS28)。暗号管理部166は、通信機能155を通じて暗号管理サーバ装置350からの暗号パッケージ情報を受信する(ステップS29)。
The encryption package
暗号管理部166は、暗号評価記述ファイル309の認定子検証を含む暗号パッケージ情報の評価を実行する。評価が処理を継続する条件を満たしていない場合はエラーを暗号管理サーバ装置350及び上位システム151へ通知し処理を終了する。条件を満たしている場合は、暗号パッケージ情報から暗号モジュール308及び暗号評価記述ファイル309を分解し、暗号モジュールDB164及び暗号評価DB163へ登録する。暗号管理部166は、上位システム部151及び通信機能155を用いて暗号管理サーバ装置350へ完了結果を通知する(ステップS30)。暗号パッケージ配信制御部359は、通信機能356を通じて暗号クライアント装置150からの完了通知を受信し、通信切断を含む処理の完了処理を実行する(ステップS31)。
The
選定された暗号モジュールが当該暗号クライアント装置150内に存在しない場合に、暗号処理制御部156が上位システム部151を介さず、暗号管理部166へ暗号管理サーバ装置350から不足暗号モジュールを配信するよう暗号制御マネージャ部152内部で自動連携してもよい。暗号管理サーバ装置350から配信された暗号パッケージ情報の評価が処理を継続する条件を満たしていない場合は、エラーで処理終了ではなく、暗号管理サーバ装置350へエラー内容を踏まえた再配信処理を連続要求してもよい。
When the selected cryptographic module does not exist in the
<第2の参考例>
第1の参考例では、最適な暗号方式の選定を、暗号クライアント装置が処理する場合について説明したが、第2の参考例は、暗号管理サーバ装置が最適な暗号方式の選定を主導で行う。すなわち、図4に示す暗号管理サーバ装置1350と複数の暗号クライアント装置1100と当該暗号クライアント装置1100に対応する暗号ハードウェア450とからなるシステム(以下、「第2の参考例における本システム」という)では、暗号管理サーバ装置1350が選定した暗号方式の結果情報をモジュール選定ポリシ記憶部110が管理および利活用するサーバ強連携機構である。特に、モジュール選定ポリシ記憶部110の計算能力が乏しい場合、暗号管理サーバ装置1350が演算支援することで、暗号クライアント装置1100内の応答パフォーマンスを向上させることができる。
<Second Reference Example >
In the first reference example , the case where the encryption client apparatus processes the selection of the optimal encryption method has been described. However, in the second reference example , the encryption management server apparatus leads the selection of the optimal encryption method. That is, a system comprising the cryptographic
具体的には、上位システム部1151からの要求に最適な暗号モジュール308の選定を暗号管理サーバ装置1350が実施し、暗号クライアント装置1100の暗号制御マネージャ部1152はその結果を受け取り、その要求条件と最適な暗号モジュール308との関係を当該装置内の暗号情報記憶部1600で管理する。暗号制御マネージャ部1152は、上位システム部1151からの要求とこの要求に最適な暗号モジュール308との関係に基づき、上位システム部1151からの暗号処理制御要求に応じた処理を行う。よって、第1の参考例と異なり、暗号クライアント装置1100は、暗号モジュール308の全選定機能や暗号モジュール308の選定に必要となる暗号パッケージ307の管理および暗号管理サーバ装置1350らの受信を必ずしも必要としない。
Specifically, the cryptographic
図4は、本発明の第2の参考例における本システムの概略構成を示すブロック図である。第2の参考例における本システムは、1個以上の暗号クライアント装置1100、1個以上の暗号ハードウェア450及び暗号管理サーバ装置1350を備えている。暗号ハードウェア450は、第1の参考例と同様である。ここで、暗号ハードウェア450は、1個の暗号クライアント装置1100につき、複数接続する形態でもよい。また暗号ハードウェア450を暗号クライアント装置1100内部に実装する形態でもよい。
FIG. 4 is a block diagram showing a schematic configuration of the present system in the second reference example of the present invention. The system according to the second reference example includes one or more
図5は、暗号クライアント装置1100の構成を示すブロック図である。暗号クライアント装置1100は、上位システム部1151と、暗号制御マネージャ部1152と、暗号実装部1153と、通信機能1155とを備えている。また選定ポリシ1158は、安全性、処理速度、リソースに関する優先情報を設定したファイルである。上位システム部1151および暗号実装部1153は、第1の参考例と同様の構成・機能である。
FIG. 5 is a block diagram illustrating a configuration of the
暗号制御マネージャ部1152は、暗号処理制御部1156と、鍵管理部1162と、暗号情報記憶部1600と、暗号パッケージ管理部1166と、暗号ハードウェア管理制御部1170とを備えている。
The cryptographic
暗号処理制御部1156は、上位システム部1151から暗号処理条件を含む暗号処理制御要求を受け付ける機能と、暗号情報記憶部1600を参照して暗号処理条件に紐づいた暗号実装部1153を特定する機能と、暗号処理実行タイミングに従って暗号実装部1153へ暗号処理を要求する機能と、当該暗号処理に対する暗号処理IDを発行して当該暗号処理に関する情報と関連付けて暗号情報記憶部1600に記憶させる機能と、暗号実装部1153からの暗号処理結果および当該暗号処理に関する暗号処理IDとを上位システム部1151へ出力する機能とをもっている。
The cryptographic
鍵管理部1162は、上位システム部1151からの要求に従い、暗号情報記憶部1600の鍵情報DB1165への鍵情報の登録、削除、取得、検索、更新処理を行う機能と、暗号鍵の登録が正常に実施された場合に鍵IDを発行して当該登録処理に関する情報と関連づけて暗号情報記憶部1600に記憶させる機能と、各処理結果を場合により暗号処理IDや鍵IDを含めて上位システム部1151へ出力する機能をもっている。
In accordance with a request from the
暗号情報記憶部1600は、選定DB1601と、暗号モジュールリンクDB1602と、暗号モジュールDB1603と、鍵情報DB1165と、暗号処理DB1604とを記憶する機能を備えている。また、暗号情報記憶部1600は、鍵管理部1162や暗号処理制御部1156および暗号パッケージ管理部1166からの要求に従い、暗号情報記憶部1600が備える各DBを制御管理する機能をもっていることとしても良い。
The encryption
選定DB1601のデータ構造は、図6に示す通りである。暗号モジュールリンクDB1602のデータ構造は、図7に示す通りである。暗号モジュールDB1603のデータ構造は、図8に示す通りである。鍵情報DB1165のデータ構造は、図9に示す通りである。暗号処理DB1604のデータ構造は、図10に示す通りである。図11に、暗号情報記憶部1600が備える各データベースの論理関係を示す。
The data structure of the
暗号パッケージ管理部1166は、以下に説明する機能を有している。
The cryptographic
まず、暗号パッケージ管理部1166は、上位システム部1151から入力された選定条件、選定ポリシ及びハードウェアプロファイルを含む情報を通信機能1155経由で暗号管理サーバ装置1350へ送信して得られる、選定された暗号パッケージ307のアルゴリズムID、 暗号評価記述ID、 暗号モジュールID及び推奨される鍵長情報を暗号情報記憶部1600に登録する機能を持っている。
First, the cryptographic
また、暗号パッケージ管理部1166は、上位システム部1151から入力された選定条件を基に選定DB1601を特定して暗号化アルゴリズムから対応される鍵生成エンジンのアルゴリズムIDを特定する機能を持っている。
The cryptographic
また、暗号パッケージ管理部1166は、暗号管理サーバ装置1350にて選定された鍵生成エンジンのアルゴリズムID、暗号評価記述ID及び暗号モジュールIDを暗号情報記憶部1600に登録する機能を持っている。
The cryptographic
また、暗号パッケージ管理部1166は、上位システム部1151から入力された要求に基づき通信機能1155経由で暗号管理サーバ装置1350に対して最終初期登録日時および最終初期登録ドメインを入力として暗号パッケージ初期登録プロトコルを実行し、必要最低限の暗号パッケージ307を暗号管理サーバ装置1350からダウンロードして暗号情報記憶部1600に登録する機能を持っている。
Also, the cryptographic
また、暗号パッケージ管理部1166は、上位システム部1151から入力された選定条件、選定ポリシ、ハードウェアプロファイル及び端末内に保持する暗号パッケージ307のリストを含む情報を通信機能1155経由で暗号管理サーバ装置1350へ送信し、当該暗号管理サーバ装置1350にて選定された暗号パッケージ307の実体及びその付帯情報(アルゴリズムID、暗号評価記述ID、暗号モジュールID)を入手して暗号情報記憶部1600に登録する機能を持っている。
Also, the cryptographic
また、暗号パッケージ管理部1166は、暗号管理サーバ装置1350からの更新通知の通知先登録及び更新事象発生時に暗号制御マネージャ部1152が行うアクションのポリシ設定を行える機能を持っている。
Also, the cryptographic
また、暗号パッケージ管理部1166は、上位システム部1151から要求された内容と暗号制御マネージャ部1152に保持した最後の更新通知識別子に基づき通信機能1155経由で暗号管理サーバ装置1350と連携して暗号制御マネージャ部1152に保持している暗号パッケージ307の実体と暗号パッケージ307の選定ポリシと暗号パッケージ307の紐付けについて更新処理を実行する機能を持っている。
Also, the cryptographic
また、暗号パッケージ管理部1166は、上位システム部1151から要求された暗号パッケージ307の実体を暗号情報記憶部1600から削除して当該暗号パッケージ307に紐付けられた暗号情報記憶部1600が備える各データベースの関連付けを解除する機能を持っている。
Also, the cryptographic
また、暗号パッケージ管理部1166は、上位システム部1151から入力された移行先ドメイン情報、ハードウェアプロファイル及び当該装置内に保持する暗号パッケージ307のリストを含む情報を通信機能1155経由で暗号管理サーバ装置1350へ送信し、暗号管理サーバ装置1350にて選定された持ち出し規制の対象となる暗号パッケージ情報を取得して暗号クライアント装置1100内に保持する対象の暗号パッケージ307を削除する機能とをもっている。
Also, the cryptographic
暗号ハードウェア管理制御部1170は、暗号制御マネージャ部1152の各部からの要求に応じて通信機能1155経由で暗号ハードウェアへの通信制御を行う機能をもっている。
The cryptographic hardware
通信機能1155は、暗号パッケージ管理部1166や暗号ハードウェア管理制御部1170と相手通信装置または暗号ハードウェアとが相互に通信するための機能をもっている。
The
図12は、暗号管理サーバ装置1350の構成を示す機能ブロック図である。暗号管理サーバ装置1350は、サーバ上位システム部1380と、通信機能1356と、暗号管理サーバ制御部1352と、暗号パッケージ記憶部1355と、サーバ暗号制御マネージャ部1390とを備えている。
FIG. 12 is a functional block diagram showing the configuration of the encryption
サーバ上位システム部1380は、暗号クライアント装置1100のサーバ上位システム部1380と同様の機能に加え、暗号管理に関するシステム管理者からの制御要求を暗号管理サーバ制御部1352に送信する機能とをもっている。
The server
通信機能1356は、暗号管理サーバ制御部1352やサーバ暗号制御マネージャ部1390と相手通信装置、暗号ハードウェアまたは暗号ハードウェアの動作を模擬したシミュレータとが相互に通信するための機能をもっている。
The
暗号管理サーバ制御部1352は、暗号パッケージ管制部1359と、暗号パッケージ管理部1351と、暗号パッケージ配布構成部1370と、配布暗号パッケージ選定部1373とを備えている。
The cryptographic management
暗号パッケージ管制部1359は、サーバ上位システム部1380からの要求により暗号パッケージ307を登録する機能と、サーバ上位システム部1380からの要求により既に登録済みの暗号パッケージを更新する機能と、ベンダからの暗号パッケージ提供時に該当する暗号パッケージの出所の確認を行うためのベンダ認定認証子を検証する機能と、複数の単体型暗号評価記述部または複数の複合型暗号評価記述部を組み合わせて複合型暗号評価記述部を生成する機能と、暗号モジュールDB1355に登録されている暗号パッケージ307を検索および一覧を取得する機能と、サーバ上位システム部1380からの要求により暗号モジュール308及び関連する暗号パッケージ307を暗号モジュールDB1355から削除する機能と、暗号パッケージ記憶部1355に対して行った登録・更新・削除処理に対するログを出力する機能とをもっている。
The cryptographic
暗号パッケージ管理部1351は、複数の暗号クライアント装置1100からの管制要求を同時に並行して処理する機能と、暗号パッケージ307の初期登録処理、配信処理、更新処理、選定処理、更新通知処理および暗号管理ドメイン移行処理を行う機能と、暗号クライアント装置1100と暗号管理サーバ装置1350との間でセキュリティ保護された通信路を確立するための機能と、当該暗号管理サーバ装置1350が管理するドメイン内に存在する暗号クライアント管理装置の状況を管理する機能と、暗号パッケージ307の初期登録処理、配信処理、更新処理、選定処理、更新通知処理および暗号管理ドメイン移行処理に対するログを生成する機能とをもっている。
The cryptographic
暗号パッケージ配布構成部1370は、配布暗号パッケージ選定部1373で選ばれた暗号パッケージ307を暗号モジュールDB1355から取得する機能と、暗号モジュールDB1355に格納された各記述項目のデータをXMLといった暗号評価記述形式で構成して出力する機能と、暗号パッケージ官制部1359のセキュリティ通信で使用する鍵に関して指定のセキュリティ方式に応じてサーバ暗号制御マネージャ部1390に処理を依頼して鍵生成を行う機能と、暗号クライアント装置1100のIDや鍵のセキュリティ方式を含む情報を元に鍵に関する情報の管理を行う機能と、暗号管理サーバ装置1350の配布ポリシで定義されたセキュリティレベル及びセキュリティ方式に応じて暗号管理サーバ装置1350から暗号クライアント装置1100に対して送信する情報に対するデータ秘匿やデータ認証のセキュリティ処理を行う機能とをもっている。
The cryptographic package
配布暗号パッケージ選定部1373は、暗号パッケージ初期登録処理における初期登録判定、暗号方式の選択及び暗号パッケージ選択を行う機能と、暗号パッケージ配信処理における配信判定及び暗号パッケージの選択を行う機能と、暗号パッケージ更新処理における配信判定を行う機能と、暗号パッケージ更新処理における更新暗号リスト取得及び暗号パッケージの選択を行う機能と、暗号パッケージ選定処理における選択判定及び暗号パッケージ選択を行う機能と、暗号管理ドメイン移行処理のおける移動判定およびドメイン移動処理情報の生成を行う機能と、選定条件、選定ポリシ及びハードウェアポリシを満たす暗号パッケージを暗号パッケージ記憶部から検索する機能とをもっている。
The distribution cipher
暗号モジュールDB1355は、登録されている暗号モジュール308を記録管理する暗号モジュールDB1353と暗号評価記述ファイル309を記録管理する暗号評価DB1354とを備えている。
The
サーバ暗号制御マネージャ部1390は、暗号クライアント装置1100の暗号制御マネージャ部1152と同様の機能に加え、暗号管理サーバ制御部1352と連携して暗号管理サーバ装置1350内の暗号資産管理制御や他通信装置との暗号認証通信を行う機能をもっている。
The server cryptographic
ここで、本発明の第2の参考例による、暗号クライアント装置1100内で上位システム部1151からの暗号処理要求に対して、暗号処理制御部1156が最適な暗号モジュールを検索し、暗号処理を実行、暗号処理結果を上位システム部1151へ出力する暗号処理動作を示す。図27は、本発明の第2の参考例による暗号クライアント装置の暗号処理動作例を示す図である。図28は、第2の参考例による暗号クライアント装置の暗号処理フロー例を示す図である。
Here, according to the second reference example of the present invention, the cryptographic
本発明の参考例による、暗号クライアント装置1100内で上位システム部1151からの暗号処理要求に対する暗号制御マネージャ部1152および暗号実装部1153の処理動作を以下に示す。上位システム部1151は、暗号処理の対象となるデータ及び暗号処理のカテゴリの識別子を含む暗号処理要求情報を入力として暗号処理制御部1156に暗号処理を要求する(ステップS41)。
Processing operations of the cryptographic
暗号処理制御部1156は、上位システム部1151からの暗号処理要求に対する最適な暗号モジュールを選定DB1601から読み出す(ステップS42)。この時、選定DBに当該暗号処理要求に対する最適な暗号モジュールの選定情報が存在しない場合、上位システム部へエラー出力し、処理を終了する(ステップS43、ステップS50)。最適な暗号モジュールの選定情報が存在する場合、暗号処理制御部1156は、上位システム部1151からの暗号処理要求に応じた鍵情報を鍵情報DB1165から読み出す(ステップS44)。
The cryptographic
選定された暗号モジュールが当該暗号クライアント装置1100に存在しない場合、上位システム部1151へエラーを出力し、処理を終了する(ステップS45、ステップS51)。選定された暗号モジュールが当該暗号クライアント装置1100に存在する場合、暗号処理制御部1156は、暗号モジュールリンクDB及び暗号モジュールDBから暗号モジュールリンク情報及び暗号モジュール情報を読み出し、当該暗号モジュールを暗号実装部1153としてメモリにロードする。
If the selected cryptographic module does not exist in the
暗号処理制御部1156は、暗号実装部1153に上記鍵情報や上位システム部からの暗号処理対象データを入力して、暗号処理を依頼する(ステップS46)。暗号実装部1153は、暗号処理対象データに対する暗号処理結果を暗号処理制御部1156に出力する(ステップS47)。暗号処理制御部1156は、暗号処理の識別子を含む暗号処理条件情報を生成して暗号処理DB1604に記録する(ステップS48)。暗号処理制御部1156は、暗号処理制御部156は、暗号処理ID及び暗号処理対象データに対する暗号処理結果データを含む暗号処理結果情報を上位システム部1151に出力する(ステップS49)。
The cryptographic
ステップS43において、選定DBに当該暗号処理要求に対する最適な暗号モジュールの選定情報が存在しない場合、上位システム部へエラー出力せずに、暗号管理サーバ装置1350に最適暗号モジュールの選定を依頼し、選定結果情報をダウンロードしてもよい。また、当該選定結果情報に記載された暗号モジュールが、当該暗号クライアント装置1100に存在しない場合、上位システム部へエラー出力せずに、暗号管理サーバ装置1350から当該暗号モジュールを当該暗号クライアント装置1100にダウンロードしてもよい。
In step S43, when the selection information of the optimal cryptographic module corresponding to the cryptographic processing request does not exist in the selection DB, the cryptographic
選定DBに当該暗号処理要求に対する最適な暗号モジュールの選定情報が存在しない場合も含め、暗号クライアント装置1100は、上位システム要求と最適な暗号とを紐付ける情報を次のようにして関係DBに登録することができる。これにより、上位システムからの同一暗号処理要求に対する最適暗号の選定には暗号管理サーバ装置1350への接続が不要となる。本発明の第2の参考例による最適な暗号の問い合わせ処理を図29に示す。また本発明の第2の参考例による最適な暗号の問い合わせ処理フロー例を図30に示す。
The
上位システム部1151は、カテゴリの識別情報を含む選択条件に最適な暗号モジュールの選定を暗号パッケージ管理部1166に依頼する(ステップS61)。暗号パッケージ管理部1166は、上位システム部1151からの暗号選択依頼情報を基に通信機能1155を用いて暗号管理サーバ装置1350へ暗号選択要求を行う(ステップS62)。暗号選択要求には、例えば、カテゴリの識別子、暗号クライアント装置1100の暗号モジュール選定ポリシやハードウェアプロファイルに関する情報を含む。
The
暗号パッケージ管制部1351は、通信機能1356を通じて、暗号クライアント装置1100からの暗号選択要求依頼を受信する(ステップS63)。暗号パッケージ管制部1351は、暗号選択要求依頼に含まれているカテゴリの識別子、ハードウェアプロファイル、選定ポリシ情報を配布暗号パッケージ選定部1373に入力し、当該条件に合致する暗号パッケージの選定を依頼する(ステップS64)。
The cryptographic
配布暗号パッケージ選定部1373は、暗号評価DB1354から必要な暗号評価記述ファイルを取得しながら、当該条件に合致する暗号パッケージの選定を実施し、選定された暗号評価記述ファイルの識別子一覧を出力する(ステップS65)。暗号パッケージ管制部1351は、出力された暗号評価記述ファイル数が0個である場合は終了、0個でない場合は選定結果に応じた暗号コンテナ送付の必要有無要求を、通信機能1356を用いて暗号クライアント装置1100に送信する(ステップS66)。
The distribution cipher
暗号パッケージ管理部1166は、暗号管理サーバ装置1350からの選定結果通知に応じて終了処理または選定結果に応じた暗号コンテナの送付依頼要求を行う(ステップS67)。暗号パッケージ管制部1351は、暗号クライアント装置1100から暗号コンテナの送付依頼を通信機能1356経由で受け取ると、次の処理を継続する(ステップS68)。暗号パッケージ管制部1351は、ステップS65で選定された暗号評価記述ファイルの識別子を入力として、対象となる暗号パッケージの作成を暗号パッケージ配布構成部1370に送付する(ステップS69)。
In response to the selection result notification from the cryptographic
暗号パッケージ配布構成部1370は、暗号評価DB1354及び暗号モジュールDB1353から必要な情報を取得して暗号パッケージ情報を作成し、暗号パッケージ管制部1351に出力する(ステップS70)。暗号パッケージ管制部1351は、当該暗号パッケージ情報を通信セキュリティレベルに応じたセキュリティ保護処理を実施した暗号コンテナを作成し、通信機能経由1356で暗号クライアント装置1100に送信する(ステップS71)。暗号パッケージ管理部1166は、暗号コンテナ情報からセキュリティレベルに応じたセキュリティ保護解除や正当性認証を行い、必要な情報を選定DB1601及び暗号モジュールリンクDB1602に登録し、上位システムに処理結果を出力する(ステップS72)。
The cryptographic package
上記DB1601及び暗号モジュールリンクDB1602への選定結果登録後も含め、最適な暗号モジュールが当該暗号クライアント装置1100内部に存在しない場合には、次のような暗号配信処理にて対象暗号モジュールを暗号管理サーバ装置1350からダウンロードする。本発明の第2の参考例による暗号モジュールの配信動作を図31に示す。また本発明の第2の参考例による暗号モジュールの配信処理フロー例を図32に示す。
If the optimum cryptographic module does not exist in the
上位システム部1151は、暗号アルゴリズムの識別子を含む情報を入力として、暗号モジュールの配信要求を暗号パッケージ管理部1166に依頼する(ステップS81)。暗号パッケージ管理部1166は、上位システム部1151からの暗号パッケージ配信依頼情報を基に通信機能1155を用いて暗号管理サーバ装置1350へ暗号選択要求を行う(ステップS82)。
The
暗号配信要求は、例えば、暗号アルゴリズムの識別子、暗号クライアント装置1100の暗号モジュール選定ポリシやハードウェアプロファイルに関する情報を含む。暗号パッケージ管制部1351は、通信機能1356を通じて、暗号クライアント装置1100からの暗号配信要求依頼を受信する(ステップS83)。暗号パッケージ管制部1351は、暗号配信要求依頼に含まれている暗号アルゴリズムの識別子、ハードウェアプロファイル、選定ポリシ情報を配布暗号パッケージ選定部1373に入力し、当該配信要求に合致した暗号パッケージの選定を依頼する(ステップS84)。
The cryptographic distribution request includes, for example, an identifier of a cryptographic algorithm, a cryptographic module selection policy of the
配布暗号パッケージ選定部1373は、当該暗号クライアント装置1100のハードウェアプロファイルや選定ポリシを含む配信要求依頼情報を元に暗号評価DB1354から必要な暗号評価記述ファイルを取得しながら、当該条件に合致する暗号パッケージの選定を実施し、選定された暗号評価記述ファイルの識別子一覧を出力する(ステップS85)。
The distribution cipher
暗号パッケージ管制部1351は、出力された暗号評価記述ファイル数が0個である場合は終了、0個でない場合は配信評価結果に応じた暗号パッケージ送付の必要有無要求を、通信機能1356を用いて暗号クライアント装置1100に送信する(ステップS86)。暗号パッケージ管理部1166は、暗号管理サーバ装置1350からの配信評価結果通知に応じて終了処理または選定結果に応じた暗号コンテナの送付依頼要求を行う(ステップS87)。
Using the
暗号パッケージ管制部1351は、暗号クライアント装置1100から暗号パッケージの送付依頼を通信機能1356経由で受け取ると、次の処理を継続する(ステップS88)。暗号パッケージ管制部1351は、ステップ85で選定された暗号評価記述ファイルの識別子を入力として、対象となる暗号パッケージの作成を暗号パッケージ配布構成部1370に送付する(ステップS89)。
When the cryptographic
暗号パッケージ配布構成部1370は、暗号評価DB1354及び暗号モジュールDB1353から必要な情報を取得して暗号パッケージ情報を作成し、暗号パッケージ管制部1351に出力する(ステップS90)。暗号パッケージ管制部1351は、当該暗号パッケージ情報を通信セキュリティレベルに応じたセキュリティ保護処理を実施した暗号パッケージ情報を作成し、通信機能経由1356で暗号クライアント装置1100に送信する(ステップS91)。
The cryptographic package
セキュリティ保護処理は、暗号パッケージに対してMACを付与したり、暗号パッケージを暗号化して送信し暗号ハードウェア450の依頼復号機能を利用してもよい。暗号パッケージ管理部1166は、暗号パッケージ情報からセキュリティレベルに応じたセキュリティ保護解除や正当性認証を行い、必要な情報を暗号モジュールDB1603に登録し、上位システムに処理結果を出力する(ステップS92)。
In the security protection processing, the MAC may be assigned to the encryption package, or the encryption package may be encrypted and transmitted, and the request decryption function of the
上記暗号コンテナは、暗号管理サーバ装置1350から暗号クライアント装置1100に送り届ける暗号評価記述ファイルに関する情報や暗号モジュールといった暗号コンテンツにセキュリティ保護処理を施したデータ及びヘッダ情報を含む配信データ列である。セキュリティ保護処理には、暗号コンテンツの暗号化、ヘッダ情報及び暗号コンテンツに対するMAC(Message Authentication Code)付与、ヘッダ情報及び暗号化した暗号コンテンツに対するMAC付与といった手段が含まれる。ここで、セキュリティ保護処理として何も施さず、暗号コンテンツ自体にヘッダ情報を付与する形態でもよい。
The cryptographic container is a distribution data string including header information and data obtained by performing security protection processing on cryptographic content such as information on cryptographic evaluation description files and cryptographic modules sent from the cryptographic
前記セキュリティ保護処理に用いる暗号鍵の格納やセキュリティ保護処理そのものを暗号ハードウェア450で実行する形態でもよい。例えば、暗号ハードウェア管理制御部1170が暗号ハードウェア450に暗号化された暗号コンテンツを入力し、暗号ハードウェア450内部で復号処理を実行して出力した復号した暗号コンテンツを取得する実装がある。暗号コンテナのヘッダ情報は、例えば、暗号コンテンツの種別、送信する暗号モジュールの数、送信データサイズである。
The
<第1の実施形態>
次に、上述したシステムにおいて、端末側において利用するソフトウェアモジュールに不具合が発見された場合に、代替のソフトウェアモジュールが完成するまでの間、他のソフトウェアモジュールを提供するシステムについて説明する。
<First embodiment>
Next, in the above-described system, when a defect is found in the software module used on the terminal side, a system that provides another software module until an alternative software module is completed will be described.
第1の実施形態によれば、第1の参考例と第2の参考例とで行う暗号モジュール308や暗号パッケージ307などの更新を、より安全に処理することができる。なお、本実施形態による更新対象は暗号パッケージ307に限るものでなく、あらゆるソフトウェアモジュールの更新処理に用いることができる。すなわち、コンピューティングデバイスにおいて既に実行中・利用中であるソフトウェアモジュールに脆弱性などの不具合が発覚した際に、その不具合を解消した修正版モジュールを配信して提供するものであれば、ソフトウェアモジュールは暗号モジュール308などでなくとも良い。
According to the first embodiment, it is possible to update
第1の実施形態は、使用するソフトウェアモジュールを選定する機能において、不具合が発見されたソフトウェアモジュールよりも優等な判定が得られるソフトウェアモジュールを、その評価指標とともに配布する実施形態である。これによりどのソフトウェアモジュールに不具合が発見されたかを秘匿したまま、該ソフトウェアモジュールの使用を停止させることで、不具合を利用した攻撃を防止する効果がある。 The first embodiment is an embodiment in which a software module that can obtain a better determination than a software module in which a defect is found in the function of selecting a software module to be used is distributed together with its evaluation index. As a result, it is possible to prevent an attack using the defect by stopping the use of the software module while concealing which software module the defect has been discovered.
図13は、本実施形態におけるソフトウェアモジュール管理装置301の構成を示す図である。ソフトウェアモジュール管理装置301は、記憶部310と、第1の配信部311と、第2の配信部312とを備えている。
FIG. 13 is a diagram showing a configuration of the software
記憶部310には、例えば、ソフトウェアモジュールAと、ソフトウェアモジュールAと同様の機能を有するソフトウェアモジュールBと、それらに対応する評価指標とが記憶されている。
The
第1の配信部311は、例えば、ソフトウェアモジュールに不具合が発生した際に、該ソフトウェアモジュールを利用するコンピューティングデバイス100に、該ソフトウェアモジュールの代替モジュールを送信し、コンピューティングデバイス100のソフトウェアモジュールを切り替える。
For example, when a defect occurs in the software module, the
また、第2の配信部312は、例えば、上記代替モジュールを利用中のコンピューティングデバイス100に、上記不具合の発生したソフトウェアモジュールの修正版を送信し、コンピューティングデバイス100のソフトウェアモジュールを切り替える。
In addition, the
次に、本実施形態におけるコンピューティングデバイス100の機能モジュールの概略構成を図14に示す。コンピューティングデバイス100は、中央演算装置101と、記憶装置102と、オペレーティングシステムモジュール103と、モジュール選定モジュール104と、更新可能ソフトウェアモジュール105と、ネットワーク接続部106と、モジュール選定ポリシ記憶部110とを備えており、それぞれが、論理的なバス107により接続されている。更新可能ソフトウェアモジュール105は、複数のソフトウェアモジュールを表す。ネットワーク接続部106は、ネットワーク108に接続される。モジュール選定モジュール104は、モジュール選定ポリシ記憶部110に記憶された選定基準を参照して、目的の用途に合致する適切なソフトウェアモジュール105を選択する。選定基準は、例えば、使用リソース量、処理の速さなどの1以上の項目について下限と上限が指定された情報である。
Next, a schematic configuration of functional modules of the
モジュール選定モジュール104は、モジュール選定ポリシ記憶部110から選定基準情報を読み出して、選定基準情報と、更新可能なソフトウェアモジュール203に含まれる評価指標とを比較し、選定基準情報の条件を満たす評価指標に対応する実行可能なソフトウェアモジュール201を検出する。
The
本実施形態における配布される更新可能ソフトウェアモジュールの概略構成を図15に示す。配布される更新可能ソフトウェアモジュール203は、実行可能ソフトウェアモジュール201と評価指標202から構成される。評価指標202は、対応するソフトウェアモジュール201の評価情報が記憶された情報であり、例えば、XML形式で評価情報が表されたデータファイルである。評価指標202には、評価に使用可能な指標である、使用リソース量211、処理の速さ212、処理内容213、用途214、利用期間215などの情報が格納されている。また、評価指標202は、対応する実行可能なソフトウェアモジュール201の識別情報を格納していることとしても良い。
A schematic configuration of the updatable software module distributed in the present embodiment is shown in FIG. The
使用リソース量211は、例えば、対応する実行可能なソフトウェアモジュール201が動作するときの必要メモリ量などのリソース情報を数値化した情報である。処理の速さ212は、例えば、対応する実行可能なソフトウェアモジュール201が動作する際の計算量が数値化された情報である。処理内容213は、例えば、実行可能なソフトウェアモジュール201のアルゴリズムの動作処理内容を示す情報である。用途214は、例えば、対応する実行可能なソフトウェアモジュール201の処理用途が予め定められたカテゴリの識別情報などでも良い。利用期間215は、例えば、対応する実行可能なソフトウェアモジュール201の利用保証期間を示す情報である。
The used
なお、評価指標202が含むこれらの情報は例示であり、評価に使用可能な指標であれば内容は制約されない。評価指標202は、モジュール選定モジュール104と実行可能なソフトウェアモジュール201とに基づいて利用される。
Note that the information included in the
本発明の実施の形態におけるコンピューティングデバイスの代表的なハードウェア構成例を図17に示す。コンピューティングデバイス400において、ROM401、RAM402、書き換え可能な不揮発メモリ403は、バス406を介してCPU404と相互に接続される。バス406はI/O405を介して、外部記憶装置407、記憶媒体読み込み装置408、ネットワークインターフェース410に接続される。コンピューティングデバイスの外部に位置する記憶媒体409は記憶媒体読み込み装置408により読み込み可能である。ネットワークインターフェース410はコンピューティングデバイスの外部に位置するネットワーク411と接続可能である。
A typical hardware configuration example of the computing device according to the embodiment of the present invention is shown in FIG. In the
本発明の実施の形態における更新可能なソフトウェアモジュールの配布の概略構成を図16に示す。ソフトウェアモジュール管理装置301は、ネットワーク302を介して、複数のコンピューティングデバイス303、コンピューティングデバイス304、コンピューティングデバイス305にソフトウェアモジュール320を配布する。ネットワーク302を介して配布されるソフトウェアモジュール320は、必要に応じて、暗号化または電子署名等の従来技術により保護・秘匿されて配布されてもよい。また、本実施形態例では、該配布されるソフトウェアモジュール320は、図15における実行可能なソフトウェアモジュール201と評価指標202のいずれかもしくは両方の組み合わせでも良い。
FIG. 16 shows a schematic configuration of distribution of updatable software modules in the embodiment of the present invention. The software
また、本実施形態では、ネットワーク302を介した配布を例示したが、この例示に制限されない。ソフトウェアモジュール320の配布であれば、任意の形態の記憶媒体や入力装置であっても同様の目的が達せられることは、当業者にとって容易に類推可能であろう。
Further, in the present embodiment, the distribution via the network 302 is exemplified, but the present invention is not limited to this example. If the
本実施形態の動作例の説明に先立ち、従来技術による修正ソフトウェアモジュールの配布と利用開始の動作例を時系列にて図18に示す。時間の経過500は図の左から右に流れる。すなわち、左端が過去の時点であり、右端が現在および未来の時点に対応する。ステップS501でソフトウェアモジュールの不具合が判明したならば、該ソフトウェアモジュールの開発元はステップS502で修正モジュール開発を開始し、ステップS503で修正モジュール配布を開始する。不具合を利用する攻撃者はステップS503で配布が開始された修正ソフトウェアモジュールを入手し、ステップS504で修正内容の解析を開始する。その後、攻撃者は解析結果を用いてステップS505で不具合を利用した攻撃を開始する。あるコンピューティングデバイスにおいて、ステップS503で配布が開始された修正モジュールの利用が開始されるのがステップS506であるとすると、ステップS505からステップS506の間が、脆弱期間として、該不具合修正の内容に関する攻撃可能な期間となる。
Prior to the description of the operation example of the present embodiment, FIG. 18 shows an operation example of the distribution and start of use of the modified software module according to the prior art in time series. The passage of
本実施形態による修正ソフトウェアモジュールの配布と利用開始の動作例を時系列にて図19に示す。時間の経過600は図の左から右に流れる。
FIG. 19 shows an operation example of distribution and start of use of the modified software module according to the present embodiment in time series. The passage of
例えば、コンピューティングデバイス303の更新可能なソフトウェアモジュール105に含まれるソフトウェアモジュールAであって、実行可能状態であるソフトウェアモジュールAが実行中であるとする。ステップS601で、ソフトウェアモジュールAの不具合が判明すると、例えば、ソフトウェアモジュールAの提供元であるベンダが、ソフトウェアモジュールAの修正モジュールであるソフトウェアモジュールA´の開発を開始する(ステップS602)。
For example, it is assumed that the software module A included in the
そして、ソフトウェアモジュール管理装置301の第1の配信部311は、ステップS601よりも後の時点であるステップS603において、ソフトウェアモジュールAの代替モジュールであって、記憶部310に予め記憶されているソフトウェアモジュールBの配布を開始する。ここで、ソフトウェアモジュールBはソフトウェアモジュールAと同様の機能を持つが異なるアルゴリズムが実装されたモジュールとする。すなわち、第1の配信部311は、不具合の判明したソフトウェアモジュールAを利用するコンピューティングデバイス100に、代替モジュールであるソフトウェアモジュールBを配布し、それとともに、利用中のソフトウェアモジュールAをソフトウェアモジュールBに切り替える命令である代替モジュール切り替え命令を送信する。
The
コンピューティングデバイス100の中央演算装置101は、ネットワーク接続部106を介して、代替モジュールであるソフトウェアモジュールBと、代替モジュール切り替え命令を受信する。すると、コンピューティングデバイス100に予め記憶されたモジュール選定モジュール104が、実行中のソフトウェアモジュールAを、ソフトウェアモジュールBに切り替える。ここで、「切り替える」とは、例えば、ソフトウェアモジュールAが提供していた機能サービスを、ソフトウェアモジュールBが提供するようにすることであり、具体的には、機能サービスの演算を実行する実行ファイル等を置き換えて、さらに、例えば機能サービスを再起動して、各ソフトウェアモジュール間の連携関係を再構築させることをいう。
The
ベンダが修正モジュールであるソフトウェアモジュールA´の開発を完了し、記憶装置310に当該ソフトウェアモジュールA´を記憶すると(ステップS604)、第2の配信部312が、ソフトウェアモジュールA´の配布を開始する(ステップS605)。すなわち、第2の配信部312は、ソフトウェアモジュールA´と、修正モジュール切り替え命令とを、コンピューティングデバイス100に送信する。コンピューティングデバイス100が、ソフトウェアモジュールA´と修正モジュール切り替え命令とを受信すると、モジュール選定モジュール104が、実行中のソフトウェアモジュールBをソフトウェアモジュールA´に切り替える(ステップS606、S607)。
When the vendor completes the development of the software module A ′, which is a correction module, and stores the software module A ′ in the storage device 310 (step S604), the
このようにすれば、代替モジュールが配布開始されたステップS603以降では、従来使用されていた不具合を含むソフトウェアモジュールの利用は停止されている。また、図18で示した従来技術によるステップS503の修正モジュール配布とは異なり、ステップS603で配布された代替モジュールには不具合修正の内容が含まれていないため、攻撃者に不具合の手がかりを与えてしまう危険が廃される効果がある。 In this way, in step S603 and subsequent steps when the replacement module is started to be distributed, the use of the software module including a defect that has been conventionally used is stopped. In addition, unlike the correction module distribution in step S503 according to the conventional technique shown in FIG. 18, the substitute module distributed in step S603 does not include the contents of the defect correction, and therefore gives the attacker a clue about the defect. This has the effect of eliminating the danger of being lost.
なお、代替モジュールの配布開始(ステップS603)を不具合判明時点(ステップS601)よりも後になっているが、このS603の処理はS601よりも前の時点であっても構わない。具体的には、代替モジュールを事前にコンピューティングデバイス100に予め配布しておくことで、万が一不具合が発生した場合に当該代替モジュールをすぐに使用可能とすることで緊急事態を回避することができる。
Note that although the distribution start of the alternative module (step S603) is later than the time when the defect is found (step S601), the process of S603 may be performed before the time of S601. Specifically, by distributing an alternative module to the
<第2の実施形態>
第2の実施形態は、コンピューティングデバイス100のモジュール選定モジュール104が、使用する更新可能なソフトウェアモジュール105から実行する更新可能なソフトウェアモジュールを選定する機能において、不具合が発見されたソフトウェアモジュールよりも他の不具合を含まないソフトウェアモジュールが優位な判定が得られるよう、更新されたモジュール選定ポリシを配布する方法である。コンピューティングデバイス100のネットワーク接続部106が新たなモジュール選定ポリシを受信すると、中央演算装置101が、新たなモジュール選定ポリシをモジュール選定ポリシ記憶部110に記憶させる。そして、モジュール選定モジュール104は、更新可能なソフトウェアモジュール105で実行中のソフトウェアモジュールを、新たなモジュール選定ポリシに従って選定しなおし、選定されたソフトウェアモジュールを実行状態にさせる。
<Second Embodiment>
In the second embodiment, the
このようにすれば、結果としてどのソフトウェアモジュールに不具合が発見されたかを秘匿したまま、該ソフトウェアモジュールの使用を停止させ、不具合を利用した攻撃を防止する効果がある。 In this way, there is an effect of preventing an attack using the defect by stopping the use of the software module while keeping secret as to which software module the defect is discovered as a result.
本発明の実施の形態において、図16においてソフトウェアモジュール320は、モジュール選択ポリシを含むこととする。モジュール選択ポリシは、ソフトウェアモジュール管理装置301からネットワーク302を介してコンピューティングデバイス303、304、305に配布される。そして、図14に示すコンピューティングデバイス100のモジュール選定ポリシ記憶部110に、配布されたモジュール選定ポリシが記憶される。新しいモジュール選定ポリシは、ステップS601で不具合が判明したソフトウェアモジュールに対応する評価指標202よりも厳しい条件が設定されていることとする。すなわち、不具合が判明したソフトウェアモジュールの使用リソース量211には、「100KB」が設定されているとすると、「使用リソース量が100KBより小さいこと」を条件情報として含む新しいモジュール選定ポリシが配布される。そして、モジュール選定モジュール104が、新しいモジュール選定ポリシに従って更新可能なソフトウェアモジュール105で動作するソフトウェアモジュールを新たなソフトウェアモジュールに更新すれば、不具合が判明したソフトウェアモジュール以外のソフトウェアモジュールが選定され、実行状態になる。
In the embodiment of the present invention, the
このように、不具合により利用を停止したいソフトウェアモジュールを含む1つ以上のソフトウェアモジュールではなく、たとえば古いバージョンである従来からコンピューティングデバイスに格納されていた不具合を含まないソフトウェアモジュールを選択するように調整された内容の評価指標202を含む。
In this way, instead of one or more software modules including software modules whose use is to be stopped due to a defect, an adjustment is made so that, for example, an old version of a software module that has not been stored in a computing device is selected. The
本実施形態においては、運用者は不具合が発見されていない場合であっても、一定の有効期限が定められた評価指標を定期的あるいは不定期に配布し更新することにより、選定基準に用いられる評価指標の配布をもって不具合の発生を類推することが困難となり、システム全体の安全性を高められる。 In this embodiment, the operator is used as a selection criterion by distributing or updating an evaluation index with a fixed expiration date regularly or irregularly, even if no defect is found. Distribution of evaluation indices makes it difficult to infer the occurrence of defects, and the safety of the entire system can be improved.
<第3の実施形態>
第3の実施形態は、第1および第2の実施形態において、代替モジュールの使用の終了をサーバから各コンピューティングデバイスに通知する。
< Third Embodiment>
In the first and second embodiments, the third embodiment notifies each computing device from the server that the use of the alternative module has ended.
これにより、代替モジュールの利用期間を任意のタイミングで終了させることができ、修正モジュールの配布と適用完了状況を鑑みつつ、修正モジュールの使用開始時期を任意に選択できる。 Accordingly, the usage period of the alternative module can be terminated at an arbitrary timing, and the use start time of the correction module can be arbitrarily selected in consideration of the distribution of the correction module and the application completion status.
<第4の実施形態>
第4の実施形態は、使用するソフトウェアモジュールを選定する機能において、不具合が発見されたソフトウェアモジュールよりも他の不具合を含まないソフトウェアモジュールが優位な判定が得られるよう、該選定機能のソフトウェアモジュールを変更する方法である。結果としてどのソフトウェアモジュールに不具合が発見されたかを秘匿したまま、該ソフトウェアモジュールの使用を停止させ、不具合を利用した攻撃を防止する効果がある。
< Fourth Embodiment>
In the fourth embodiment, in the function of selecting a software module to be used, the software module of the selection function is selected so that a software module that does not include a defect is superior to the software module in which the defect is found. How to change. As a result, there is an effect of preventing an attack using the defect by stopping the use of the software module while concealing which software module the defect has been discovered.
本発明の実施の形態において、図16において選定機能のソフトウェアモジュール320はモジュール選定モジュール104を含むこととし、モジュール選定モジュール104がサーバ301からネットワーク302を介してコンピューティングデバイス303、304、305に配布される。図14に示す該コンピューティングデバイスにおいて、選定モジュール104が配布された新しい選定モジュールで更新される。
In the embodiment of the present invention, the selection
新しいモジュールは不具合により利用を停止したいソフトウェアモジュールを含む1つ以上のソフトウェアモジュールではなく、たとえば古いバージョンである従来からコンピューティングデバイスに格納されていた不具合を含まないソフトウェアモジュールを選択する。 The new module is not one or more software modules including the software module whose use is to be stopped due to a defect, but selects a software module that does not include a defect that has been stored in a computing device, for example, an old version.
本発明の実施の形態においては、運用者は不具合が発見されていない場合であっても、選定モジュールの定期的あるいは不定期な更新を行うことにより、選定モジュールの更新をもって不具合の発生を類推することが困難となり、システム全体の安全性を高められる。 In the embodiment of the present invention, even if no failure is found, the operator makes an analogy to the occurrence of a failure by updating the selection module by regularly or irregularly updating the selection module. It becomes difficult to improve the safety of the entire system.
<第5の実施形態>
第5の実施形態は、本発明の実施の形態として、更新するソフトウェアモジュールを暗号処理のソフトウェアモジュールに限定する方法である。暗号処理はデータの秘匿あるいは電子署名による完全性保証などを目的とする数多くのアルゴリズムが存在し、任意に選択可能である。あるアルゴリズムについて実装上の不具合ではなく、アルゴリズムそのものが危殆化した場合、第1から第4の実施形態で示したそれぞれにより、特にシステムの安全性を高める効果がある。
< Fifth Embodiment>
In the fifth embodiment, as an embodiment of the present invention, a software module to be updated is limited to a cryptographic processing software module. There are a number of algorithms for encryption processing that are intended to conceal data or guarantee integrity by electronic signatures, and can be arbitrarily selected. When an algorithm itself is compromised rather than a problem in implementation with respect to a certain algorithm, each of the first to fourth embodiments has an effect of improving the safety of the system.
以上説明したように、本発明によれば、従来の手法で課題とされていた、不具合を修正する新規のソフトウェアモジュールから得た情報を用いて、新規のソフトウェアモジュールをまだ適用していないコンピューティングデバイスに対する不具合を悪用した攻撃の脅威を低減できる。 As described above, according to the present invention, computing that has not yet been applied with a new software module using information obtained from a new software module that corrects a defect, which has been a problem in the conventional technique, has been described. It is possible to reduce the threat of attacks that exploit device defects.
また、本発明は、同一の機能を目的とするソフトウェアモジュールが複数のベンダから供給される場合において、あるベンダのソフトウェアモジュールに不具合が発見された場合に、同一の機能を供する複数のベンダのソフトウェアモジュールを代替するソフトウェアモジュールを配布する。利用する機器においては、ソフトウェアモジュールの選定機能により、目的の機能に対応したソフトウェアモジュールが選択される。第2の実施形態では、選定の基準となる指標が従来のソフトウェアモジュールよりも優等となるように調整したソフトウェアモジュールを配信する。別の実施形態は、選定方法の基準を変更する指示を配信し、新たに配布したソフトウェアモジュールが従来のソフトウェアモジュールを代替する。いずれの実施形態においても、運用者またはソフトウェアモジュール開発者が、適切な配布期間が経過し、代替のソフトウェアモジュールがコンピュータデバイスに適切に配布し終った後に、不具合を修正するソフトウェアモジュールを配布し有効化する。 The present invention also provides software of a plurality of vendors that provide the same function when a software module for the same function is supplied from a plurality of vendors and a defect is found in the software module of a certain vendor. Distribute software modules that replace the modules. In the device to be used, the software module corresponding to the target function is selected by the software module selection function. In the second embodiment, a software module adjusted so that an index serving as a selection criterion is superior to a conventional software module is distributed. Another embodiment distributes instructions to change the criteria of the selection method, and the newly distributed software module replaces the traditional software module. In any embodiment, the operator or software module developer distributes and activates the software module that corrects the defect after the appropriate distribution period has elapsed and the replacement software module has been properly distributed to the computing device. Turn into.
以上説明した参考例および実施の形態は典型例として挙げたに過ぎず、その変形およびバリエーションは当業者にとっては明らかであり、当業者であれば本発明の原理および請求の範囲に記載した発明の範囲を逸脱することなく上述の実施形態の種々の変形を行えることは明らかである。 The reference examples and embodiments described above are merely given as typical examples, and variations and variations thereof will be apparent to those skilled in the art. Those skilled in the art will understand the principles of the present invention and the invention described in the claims. It will be apparent that various modifications of the above-described embodiments can be made without departing from the scope.
以上説明した参考例および実施の形態では、ネットワーク接続可能なコンピューティングデバイスをもって説明したが、本発明は、パーソナルコンピュータ、タブレットコンピュータ、ノート型コンピュータ、携帯情報端末、みにコンピュータおよびメインフレームコンピュータ、携帯電話機、無線通信装置、あるいは携帯電話機と携帯情報端末を組み合わせたハイブリッド型コンピューティングデバイスなど、多種類のコンピュータ、コンピューティングデバイス、あるいはコンピューティングシステムにおけるソフトウェアモジュールの配布のために実施され得る。 In the above-described reference examples and embodiments, description has been made with a computing device that can be connected to a network. However, the present invention is not limited to personal computers, tablet computers, notebook computers, personal digital assistants, only computers and mainframe computers, portable computers. It can be implemented for the distribution of software modules in many types of computers, computing devices, or computing systems, such as telephones, wireless communication devices, or hybrid computing devices that combine mobile phones and personal digital assistants.
以上、この発明の参考例および実施形態について図面を参照して詳述してきたが、具体的な構成はこの参考例および実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The reference examples and embodiments of the present invention have been described in detail with reference to the drawings. However, the specific configuration is not limited to the reference examples and embodiments, and the design does not depart from the gist of the present invention. Etc. are also included.
なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりソフトウェアモジュールの配布を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。 Note that a program for realizing the function of the processing unit in the present invention is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed to distribute software modules. May be performed. Here, the “computer system” includes an OS and hardware such as peripheral devices. The “computer system” includes a WWW system having a homepage providing environment (or display environment). The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Further, the “computer-readable recording medium” refers to a volatile memory (RAM) in a computer system that becomes a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In addition, those holding programs for a certain period of time are also included.
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。 The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, what is called a difference file (difference program) may be sufficient.
本発明は、ソフトウェアモジュールの不具合を修正するために更新を行うコンピュータ装置において、ソフトウェアモジュールの不具合が悪用される脅威を低減せしめ、安全性を向上させるソフトウェアモジュールの配信および更新システムが提供可能となる。 The present invention makes it possible to provide a software module distribution and update system that reduces the threat of misuse of software module defects and improves safety in a computer device that performs updates to correct the defects of software modules. .
100…コンピューティングデバイス、101…中央演算装置、102…記憶装置、103…オペレーティングシステムモジュール、104…選定機能モジュール、105…更新可能なソフトウェアモジュール、106…ネットワーク接続部、108…ネットワーク、110…選定基準記憶部、111…ネットワーク、150…暗号クライアント装置、151…上位システム部、152…暗号制御マネージャ部、153…暗号実装部、154…暗号実装I/F部、155…通信機能、156…暗号処理制御部、157…暗号処理情報DB、158…暗号モジュール選定ポリシ、159…暗号モジュール選定部、160…ハードウェアプロファイル、161…アクセス制御ポリシ、162…鍵情報管理部、163…暗号評価DB、164…暗号モジュールDB、165…鍵情報DB、166…暗号管理部、167…暗号制御マネージャポリシ、168…アルゴリズムネゴシエーション部、169…セキュア通信管理部、170…暗号ハードウェア管理制御部、201…実行可能なソフトウェアモジュール、202…評価指標、203…更新可能なソフトウェアモジュール、211…使用リソース量、212…処理の速さ、213…処理内容、214…用途、215…利用期間、301…ソフトウェアモジュール管理装置、302…ネットワーク、303…コンピューティングデバイス、304…コンピューティングデバイス、305…コンピューティングデバイス、307…暗号パッケージ、308…暗号モジュール、309…暗号評価記述ファイル、310…記憶部、311…第1の配信部、312…第2の配信部、320…ソフトウェアモジュール、350…暗号管理サーバ装置、351…暗号管理部、352…暗号配信部、353…暗号モジュールDB、354…暗号評価DB、355…暗号登録部、356…通信機能、357…暗号パッケージ登録部、358…複合型記述生成部、359…暗号パッケージ配信制御部、360…配布暗号モジュール選定部、370…暗号パッケージ配布構成部、371…配布ポリシ、450…暗号ハードウェア部、1100…暗号クライアント装置、1151…上位システム部、1152…暗号制御マネージャ部、1153…暗号実装部、1155…通信機能、1156…暗号処理制御部、1158…選定ポリシ、1160…ハードウェアプロファイル、1162…鍵管理部、1165…鍵情報DB、1166…暗号パッケージ管理部、1170…暗号ハードウェア管理制御部、1350…暗号管理サーバ装置、1351…暗号パッケージ管理部、1352…暗号管理サーバ制御部、1353…暗号モジュールDB、1354…暗号評価DB、1355…暗号パッケージ記憶部、1356…通信機能、1359…暗号パッケージ官制部、1370…暗号パッケージ配布構成部、1371…配布ポリシ、1372…ドメイン情報、1373…配布暗号パッケージ選定部、1380…サーバ上位システム部、1390…サーバ暗号制御マネージャ部、1450…暗号ハードウェア、1600…暗号情報記憶部、1601…選定DB、1602…暗号モジュールリンクDB、1603…暗号モジュールDB、1604…暗号処理DB。
DESCRIPTION OF
Claims (6)
前記第1のソフトウェアモジュールや第2のソフトウェアモジュールとは異なる第3のソフトウェアモジュールを記憶する記憶部と、
前記記憶部に記憶された第3のソフトウェアモジュールを読み出し、この読み出した第3のソフトウェアモジュールを、前記端末装置に配信して前記第1のソフトウェアモジュールから第3のソフトウェアモジュールに切り替えさせて使用可能状態にさせる第1の配信部と、
前記第2のソフトウェアモジュールを前記端末装置に配信し、第3のソフトウェアモジュールから第2のソフトウェアモジュールに切り替えさせて使用可能状態にさせる第2の配信部と、
を有し、
前記第3のソフトウェアモジュールは、前記第1のソフトウェアモジュールと同様の機能を持つが実装の異なる代替モジュールであることを特徴とするソフトウェアモジュール管理装置。 In a terminal device in which a software package including a software module having a function of performing cryptographic processing and a cryptographic evaluation description file is distributed in advance, a first selected based on the cryptographic evaluation description file in response to a cryptographic processing request from a higher system a software module management apparatus for managing the software modules in the case of changing the first software module operating in the terminal device a first software module to the second software module,
A storage unit for storing a third software module different from the first software module and the second software module;
The third software module stored in the storage unit can be read, and the read third software module can be distributed to the terminal device and used by switching from the first software module to the third software module. A first distribution unit to be in a state;
A second distribution unit that distributes the second software module to the terminal device, and switches the third software module to the second software module to be usable;
I have a,
The third software module is an alternative module having a function similar to that of the first software module but having a different implementation .
前記各ソフトウェアモジュールが処理リソース量及び処理の速さの少なくとも1つを含む評価指標を有している場合、前記代替ソフトウェアモジュールを選択するための基準を示す選定基準情報を記憶する記憶部と、
前記記憶部に記憶された選定基準情報を読み出し、この読み出した選定基準情報を、前記端末装置に配信して当該選定基準情報を満たす前記評価指標に基づく代替ソフトウェアモジュールの選択を行わせる第1の配信部と、
前記第2のソフトウェアモジュールを前記端末装置に配信し、前記選択された代替ソフトウェアモジュールから第2のソフトウェアモジュールに切り替えさせて前記動作を可能な状態にする第2の配信部と、
を有し、
前記代替ソフトウェアモジュールは、前記第1のソフトウェアモジュールと同様の機能を持つが実装の異なる代替モジュールであることを特徴とするソフトウェアモジュール管理装置。 A software module management device for managing an alternative software module when changing a first software module operating in a terminal device to a second software module,
When each software module has an evaluation index including at least one of a processing resource amount and a processing speed, a storage unit that stores selection criterion information indicating a criterion for selecting the alternative software module;
The selection criterion information stored in the storage unit is read out, and the read selection criterion information is distributed to the terminal device, and a first alternative software module is selected based on the evaluation index that satisfies the selection criterion information . A distribution department;
A second distribution section to said second software module is distributed to the terminal device, ready the operation let switched on before hexene-option by alternative software modules second software module,
I have a,
The software module management apparatus, wherein the software module management device is a software module management module having a function similar to that of the first software module but having a different implementation .
ことを特徴とする請求項2に記載のソフトウェアモジュール管理装置。 The second delivery unit, after delivering the second software module, according to claim 2, characterized in that to terminate the use of alternative software modules that use next to the first software module Software module management device.
ことを特徴とする請求項2に記載のソフトウェアモジュール管理装置。 The software module management apparatus according to claim 2, wherein each software module has a function of performing cryptographic processing.
前記第1のソフトウェアモジュールや第2のソフトウェアモジュールとは異なる第3のソフトウェアモジュールを記憶する記憶部として機能させる記憶機能と、
前記記憶部に記憶された第3のソフトウェアモジュールを読み出し、この読み出した第3のソフトウェアモジュールを、前記端末装置に配信して前記第1のソフトウェアモジュールから第3のソフトウェアモジュールに切り替えさせて使用可能状態にさせる第1の配信機能と、
前記第2のソフトウェアモジュールを前記端末装置に配信し、第3のソフトウェアモジュールから第2のソフトウェアモジュールに切り替えさせて使用可能状態にさせる第2の配信機能と、
を実現させ、
前記第3のソフトウェアモジュールは、前記第1のソフトウェアモジュールと同様の機能を持つが実装の異なる代替モジュールであるソフトウェアモジュール管理プログラム。 In a terminal device in which a software package including a software module having a function of performing cryptographic processing and a cryptographic evaluation description file is distributed in advance, a first selected based on the cryptographic evaluation description file in response to a cryptographic processing request from a higher system said first software module operating in the terminal device a piece of software modules in the computer is a software module managing apparatus for managing the software modules in the case of changing the second software module,
A storage function for functioning as a storage unit for storing a third software module different from the first software module and the second software module;
The third software module stored in the storage unit can be read, and the read third software module can be distributed to the terminal device and used by switching from the first software module to the third software module. A first distribution function to make a state;
A second distribution function for distributing the second software module to the terminal device and switching the third software module to the second software module to be usable;
To achieve,
The third software module is a software module management program which is an alternative module having the same function as the first software module but having a different implementation .
前記各ソフトウェアモジュールが処理リソース量及び処理の速さの少なくとも1つを含む評価指標を有している場合、前記代替ソフトウェアモジュールを選択するための基準を示す選定基準情報を記憶する記憶部として機能させる記憶機能と、
前記記憶部に記憶された選定基準情報を読み出し、この読み出した選定基準情報を、前記端末装置に配信して当該選定基準情報を満たす前記評価指標に基づく代替ソフトウェアモジュールの選択を行わせる第1の配信機能と、
前記第2のソフトウェアモジュールを前記端末装置に配信し、前記選択された代替ソフトウェアモジュールから第2のソフトウェアモジュールに切り替えさせて前記動作を可能な状態にする第2の配信機能と、
を実現させ、
前記代替ソフトウェアモジュールは、前記第1のソフトウェアモジュールと同様の機能を持つが実装の異なる代替モジュールであるソフトウェアモジュール管理プログラム。 In a computer which is a software module management device for managing an alternative software module when changing the first software module operating in the terminal device to the second software module,
When each software module has an evaluation index including at least one of a processing resource amount and a processing speed, it functions as a storage unit that stores selection criterion information indicating a criterion for selecting the alternative software module Memory function
The selection criterion information stored in the storage unit is read out, and the read selection criterion information is distributed to the terminal device, and a first alternative software module is selected based on the evaluation index that satisfies the selection criterion information . Distribution function,
Delivering said second software module into the terminal device, and before hexene-option by alternative software modules second delivery function to ready the operation allowed switched to the second software module,
To achieve,
The alternative software module is a software module management program which is an alternative module having the same function as that of the first software module, but having a different implementation .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012053623A JP5483754B2 (en) | 2012-03-09 | 2012-03-09 | Software module management apparatus and software module management program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012053623A JP5483754B2 (en) | 2012-03-09 | 2012-03-09 | Software module management apparatus and software module management program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007255964A Division JP4993733B2 (en) | 2007-09-28 | 2007-09-28 | Cryptographic client device, cryptographic package distribution system, cryptographic container distribution system, and cryptographic management server device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012133812A JP2012133812A (en) | 2012-07-12 |
JP5483754B2 true JP5483754B2 (en) | 2014-05-07 |
Family
ID=46649256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012053623A Active JP5483754B2 (en) | 2012-03-09 | 2012-03-09 | Software module management apparatus and software module management program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5483754B2 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003271387A (en) * | 2002-03-12 | 2003-09-26 | Mitsubishi Denki Information Technology Corp | Download method and download system |
JP2003304235A (en) * | 2002-04-10 | 2003-10-24 | Sony Corp | Radio communication apparatus, method for downloading program, and computer program |
JP4043916B2 (en) * | 2002-10-29 | 2008-02-06 | 富士フイルム株式会社 | Imaging apparatus and unauthorized use prevention method |
US7814543B2 (en) * | 2004-02-13 | 2010-10-12 | Microsoft Corporation | System and method for securing a computer system connected to a network from attacks |
JP2005348380A (en) * | 2004-06-07 | 2005-12-15 | Sanyo Electric Co Ltd | Digital broadcast receiver |
US20060090196A1 (en) * | 2004-10-21 | 2006-04-27 | Van Bemmel Jeroen | Method, apparatus and system for enforcing security policies |
-
2012
- 2012-03-09 JP JP2012053623A patent/JP5483754B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012133812A (en) | 2012-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4993733B2 (en) | Cryptographic client device, cryptographic package distribution system, cryptographic container distribution system, and cryptographic management server device | |
JP5100286B2 (en) | Cryptographic module selection device and program | |
CN112422532B (en) | Service communication method, system and device and electronic equipment | |
US8549326B2 (en) | Method and system for extending encrypting file system | |
CN101258505B (en) | Secure software updates | |
CN111654367B (en) | Method for cryptographic operation and creation of working key, cryptographic service platform and device | |
JP2018121328A (en) | Event certificate for electronic device | |
JP4405575B2 (en) | Encryption management device, decryption management device, and program | |
US8407481B2 (en) | Secure apparatus and method for protecting integrity of software system and system thereof | |
US11025415B2 (en) | Cryptographic operation method, method for creating working key, cryptographic service platform, and cryptographic service device | |
CN108270739B (en) | Method and device for managing encryption information | |
CN110489996B (en) | Database data security management method and system | |
US20180294980A1 (en) | Management of secret data items used for server authentication | |
US20110119494A1 (en) | Method and apparatus for sharing licenses between secure removable media | |
US20220108028A1 (en) | Providing cryptographically secure post-secrets-provisioning services | |
JP2010514000A (en) | Method for securely storing program state data in an electronic device | |
US11722303B2 (en) | Secure enclave implementation of proxied cryptographic keys | |
EP4096160A1 (en) | Shared secret implementation of proxied cryptographic keys | |
CN114448648B (en) | Sensitive credential management method and system based on RPA | |
CN110401640B (en) | Trusted connection method based on trusted computing dual-system architecture | |
US8667601B2 (en) | Method and device for upgrading rights object that was stored in memory card | |
CN109474431A (en) | Client certificate method and computer readable storage medium | |
JP5678150B2 (en) | User terminal, key management system, and program | |
JP5483754B2 (en) | Software module management apparatus and software module management program | |
CN106534275B (en) | Universal safe and reliable data exchange method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130619 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130702 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130902 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131205 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131212 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131219 |
|
TRDD | Decision of grant or rejection written | ||
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20131226 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140109 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140121 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5483754 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |