"第1の秘密鍵を記憶する第1の記憶手段を有するマスター鍵管理装置と、前記第1の秘密鍵と対となる第1の公開鍵で暗号化された第2の秘密鍵を記憶する第2の記憶手段を有する鍵管理サーバ装置とを具備し、前記マスター鍵管理装置は、前記第1の記憶手段に記憶されている第1の秘密鍵および第3の公開鍵を用いて、前記第2の記憶手段に記憶されている前記第1の公開鍵で暗号化された第2の秘密鍵を、前記第3の公開鍵で暗号化された第2の秘密鍵に再暗号化するために用いられる再暗号化鍵を生成する再暗号化鍵生成手段を含み、前記鍵管理サーバ装置は、前記マスター鍵管理装置と前記鍵管理サーバ装置とが接続された状態で、前記生成された再暗号化鍵を当該マスター鍵管理装置から受信する受信手段と、前記受信された再暗号化鍵を記憶する第3の記憶手段とを含み、前記マスター鍵管理装置と前記鍵管理サーバ装置との接続は、前記再暗号化鍵が前記第3の記憶手段に記憶された後に切断されることを特徴とする鍵管理システム。前記第3の公開鍵と対となる第3の秘密鍵を記憶する第4の記憶手段を有するクライアント装置を更に具備し、前記鍵管理サーバ装置は、前記第3の記憶手段に記憶された再暗号化鍵を用いて、前記第2の記憶手段に記憶されている前記第1の公開鍵で暗号化された第2の秘密鍵を、前記第3の公開鍵で暗号化された第2の秘密鍵に再暗号化する再暗号化手段を更に含み、前記クライアント装置は、前記再暗号化された第2の秘密鍵を、前記第4の記憶手段に記憶されている第3の秘密鍵を用いて復号する復号手段を含むことを特徴とする請求項1記載の鍵管理システム。前記第1の秘密鍵および前記第1の公開鍵と、前記第3の秘密鍵および前記第3の公開鍵を生成する鍵生成装置を更に具備し、前記第1の記憶手段は、前記鍵生成装置によって生成された第1の秘密鍵を記憶し、前記第2の記憶手段は、前記鍵生成装置によって生成された第1の公開鍵で暗号化された第2の秘密鍵を記憶し、前記再暗号化鍵生成手段は、前記鍵生成装置によって生成された第3の公開鍵を用いて前記再暗号化鍵を生成し、前記第4の記憶手段は、前記鍵生成装置によって生成された第3の秘密鍵を記憶することを特徴とする請求項2記載の鍵管理システム。上記したようにシステム秘密鍵をクライアントに配布する処理以下、鍵配布処理と表記するの過程におけるデータ例えば、システム秘密鍵およびマスター鍵等の漏洩は問題となるため、その過程の処理およびデータは厳重に保護されなければならない。このため、上記したような鍵配布処理は、厳重に保護された環境下で行う必要がある。換言すれば、鍵配布処理は、セキュアではない環境下では行うことができない。また、全ての鍵システム秘密鍵等を鍵管理サーバ装置に集約した場合には、これまで以上に厳重に保護すべき処理および領域当該鍵を管理するための領域が多くなるため、それに比例して鍵の管理コストが増大する。特に、鍵管理サーバ装置のマスター鍵が漏洩した場合には、当該鍵管理サーバ装置において管理されている鍵システム秘密鍵等が全て復号可能となるため、当該マスター鍵は、例えば秘密分散技術またはパスワードベース暗号化方式等を利用してより厳重に保護することが必要である。しかしながら、そのようなマスター鍵の厳重な保護は鍵管理サーバ装置上で行わなければならないため、当該保護方法が複雑になればなるほど鍵管理サーバ装置の運用コストに影響することは明らかである。そこで、本発明が解決しようとする課題は、厳重に管理された環境下でなくても、鍵を安全に管理することが可能な鍵管理システムを提供することにある。実施形態によれば、第1の秘密鍵を記憶する第1の記憶手段を有するマスター鍵管理装置と、前記第1の秘密鍵と対となる第1の公開鍵で暗号化された第2の秘密鍵を記憶する第2の記憶手段を有する鍵管理サーバ装置とを具備する鍵管理システムが提供される。前記マスター鍵管理装置は、前記第1の記憶手段に記憶されている第1の秘密鍵および第3の公開鍵を用いて、前記第2の記憶手段に記憶されている前記第1の公開鍵で暗号化された第2の秘密鍵を、前記第3の公開鍵で暗号化された第2の秘密鍵に再暗号化するために用いられる再暗号化鍵を生成する再暗号化鍵生成手段を含む。前記鍵管理サーバ装置は、前記マスター鍵管理装置と前記鍵管理サーバ装置とが接続された状態で、前記生成された再暗号化鍵を当該マスター鍵管理装置から受信する受信手段と、前記受信された再暗号化鍵を記憶する第3の記憶手段とを含む。前記マスター鍵管理装置と前記鍵管理サーバ装置との接続は、前記再暗号化鍵が前記第3の記憶手段に記憶された後に切断される。以下、図面を参照して、実施形態について説明する。図1は、本実施形態に係る鍵管理システムの構成を示すブロック図である。鍵管理システムは、公開鍵秘密鍵生成装置10、マスター鍵管理装置20、複数のシステム装置30、鍵管理サーバ装置40および複数のクライアント装置50を備える。なお、図1において、システム装置30およびクライアント装置50は、便宜的に1つのみが示されている。本実施形態に係る鍵管理システムは、システム装置30によって提供されるサービスを利用する際に必要な鍵当該システム装置30で利用される鍵がクライアント装置50に配布されるような場合において当該鍵を管理する機能を有する。図1に示すように、公開鍵秘密鍵生成装置10、マスター鍵管理装置20、複数のシステム装置30、鍵管理サーバ装置40および複数のクライアント装置50は、例えばネットワーク60を介して接続されている。また、本実施形態に係る鍵管理システムは、後述するようにマスター鍵管理装置20をネットワーク60から切断可能なように構成されている。以下、これらの各装置について説明する。なお、公開鍵秘密鍵生成装置10、マスター鍵管理装置20、複数のシステム装置30、鍵管理サーバ装置40および複数のクライアント装置50は、それぞれ装置の各機能を実現するためのハードウェア構成、またはハードウェアとソフトウェアとの組み合わせ構成として実現されている。ソフトウェアは、予め記憶媒体またはネットワークからインストールされ、各装置にその機能を実現させるためのプログラムからなる。図2は、図1に示す公開鍵秘密鍵生成装置10の主として機能構成を示すブロック図である。公開鍵秘密鍵生成装置10は、通信部11、公開鍵秘密鍵生成部12、パラメータ記憶部13、一時データ記憶部14および制御部15を含む。通信部11は、ネットワーク60を介して通信を行う機能部である。通信部11は、マスター鍵管理装置20および複数のクライアント装置50からの鍵生成要求を受信する。なお、鍵生成要求は、各種データを暗号化するための公開鍵および当該公開鍵で暗号化されたデータを復号するための秘密鍵当該公開鍵と対となる秘密鍵の生成を要求するものである。パラメータ記憶部12には、公開鍵および秘密鍵を生成するためのパラメータ鍵生成パラメータが予め格納されている。公開鍵秘密鍵生成部13は、通信部11によって受信された鍵生成要求に応じて、公開鍵および秘密鍵のペアを生成する。このとき、公開鍵秘密鍵生成部13は、パラメータ記憶部12に記憶されているパラメータを用いて公開鍵および秘密鍵を生成する。以下の説明において、マスター鍵管理装置20からの鍵生成要求に応じて生成された公開鍵および秘密鍵を当該マスター鍵管理装置20のマスター公開鍵およびマスター秘密鍵と称する。同様に、各クライアント装置50からの鍵生成要求に応じて生成された公開鍵および秘密鍵を当該クライアント装置50のクライアント公開鍵およびクライアント秘密鍵と称する。なお、公開鍵秘密鍵生成部13によって生成されたマスター公開鍵およびマスター秘密鍵は、当該マスター鍵管理装置20からの鍵生成要求に対する応答として、通信部11によって当該マスター鍵管理装置20に送信される。同様に、公開鍵秘密鍵生成部11によって生成されたクライアント公開鍵およびクライアント秘密鍵は、当該クライアント装置50からの鍵生成要求に対する応答として、通信部11によって当該クライアント装置50に送信される。一時データ記憶部14は、必要に応じて、例えば他装置から受信されたデータ等を一時的に記憶するための機能部である。制御部15は、通信部11および公開鍵秘密鍵生成部13の処理を含む公開鍵秘密鍵生成装置10における処理を制御するための機能部である。図3は、図1に示すマスター鍵管理装置20の主として機能構成を示すブロック図である。マスター鍵管理装置20は、通信部21、マスター秘密鍵記憶部22、一時データ記憶部23、再暗号化鍵生成部24および制御部25を含む。通信部21は、ネットワーク60を介して通信を行う機能部である。通信部21は、例えば公開鍵秘密鍵生成装置10に含まれる通信部11によって送信されたマスター鍵管理装置20のマスター公開鍵およびマスター秘密鍵つまり、自身の公開鍵および秘密鍵を受信する。また、通信部21は、公開鍵要求をクライアント装置50に対して送信し、当該公開鍵要求の応答として当該クライアント装置50の公開鍵を受信する。マスター秘密鍵記憶部22には、通信部21によって受信されたマスター鍵管理装置20の秘密鍵であるマスター秘密鍵第1の秘密鍵が記憶される。なお、通信部21によって受信されたマスター鍵管理装置20の公開鍵であるマスター公開鍵第1の公開鍵は公開され、例えばマスター鍵管理装置20において管理される。一時データ記憶部23は、必要に応じて、例えば他装置から受信されたデータ等を一時的に記憶するための機能部である。一時データ記憶部23には、例えば通信部21によって受信されたクライアント装置50のクライアント公開鍵が記憶される。再暗号化鍵生成部24は、マスター秘密鍵記憶部22に記憶されているマスター鍵管理装置20のマスター秘密鍵および通信部21によって受信されたクライアント装置50のクライアント公開鍵一時データ記憶部23に記憶されたクライアント装置50の公開鍵を用いて再暗号化鍵を生成する。この再暗号化鍵は、マスター鍵管理装置20の公開鍵で暗号化されたデータを、クライアント装置50の公開鍵で暗号化されたデータに再暗号化変換するために用いられる鍵である。換言すれば、再暗号化鍵は、マスター鍵管理装置20のマスター秘密鍵で復号できるデータを、クライアント装置50のクライアント秘密鍵で復号できるデータに再暗号化するための鍵である。なお、再暗号化鍵生成部24によって生成された再暗号化鍵は、通信部21によって鍵管理サーバ装置50へ送信される。制御部25は、通信部21および再暗号化鍵生成部24の処理を含むマスター鍵管理装置20における処理を制御するための機能部である。図4は、図1に示すシステム装置30の主として機能構成を示すブロック図である。なお、鍵管理システムを構成する複数のシステム装置30は、それぞれ図4と同様の機能構成を有する。システム装置30は、通信部31、システム秘密鍵記憶部32、一時データ記憶部33、システム秘密鍵暗号化部34および制御部35を含む。通信部31は、ネットワーク60を介して通信を行う機能部である。通信部31は、例えばマスター鍵管理装置20に対してマスター公開鍵要求を送信する。このマスター公開鍵要求は、マスター鍵管理装置20のマスター公開鍵を要求するものである。通信部31は、マスター鍵管理装置20に対して送信されたマスター公開鍵要求に対する応答としてマスター鍵管理装置20のマスター公開鍵をマスター鍵管理装置20から受信する。システム秘密鍵記憶部32には、システム装置30の秘密鍵であるシステム秘密鍵つまり、自身の秘密鍵が記憶されている。このシステム秘密鍵記憶部32に記憶されているシステム秘密鍵は、システム装置30によって提供されるサービスを利用する際に必要となる鍵である。このシステム秘密鍵は、公開鍵暗号に関する秘密鍵でも、共通鍵暗号に関する秘密鍵でもよく、それ以外の、サービスを利用する際に必要な機密データ例えばパスワードなどでもよい。一時データ記憶部33は、必要に応じて、例えば他装置から受信されたデータ等を一時的に記憶するための機能部である。一時データ記憶部33には、例えば通信部31によって受信されたマスター鍵管理装置20のマスター公開鍵が記憶される。システム秘密鍵暗号化部34は、通信部31によって受信されたマスター鍵管理装置20のマスター公開鍵一時データ記憶部33に記憶されたマスター鍵管理装置20のマスター公開鍵を用いて、システム秘密鍵記憶部32に記憶されているシステム装置30のシステム秘密鍵を暗号化する。なお、システム秘密鍵暗号化部34によってマスター鍵管理装置20のマスター公開鍵で暗号化されたシステム装置30のシステム秘密鍵は、通信部31によって鍵管理サーバ装置40に送信される。制御部35は、通信部31およびシステム秘密鍵暗号化部34の処理を含むシステム装置30における処理を制御するための機能部である。図5は、図1に示す鍵管理サーバ装置40の主として機能構成を示すブロック図である。鍵管理サーバ装置40は、通信部41、マスター向け暗号化システム秘密鍵記憶部42、再暗号化鍵記憶部43、再暗号化部44および制御部45を含む。通信部41は、ネットワーク60を介して通信を行う機能部である。通信部41は、システム装置30に含まれる通信部31によって送信されたマスター鍵管理装置20の公開鍵で暗号化された当該システム装置30のシステム秘密鍵であるマスター向け暗号化システム秘密鍵を受信する。また、通信部41は、マスター鍵管理装置20に含まれる通信部21によって送信された再暗号化鍵を受信する。マスター鍵管理装置20の公開鍵で暗号化されたシステム装置30のシステム秘密鍵第2の秘密鍵は、マスター向け暗号化システム秘密鍵記憶部42に記憶される。また、再暗号化鍵は、再暗号化鍵記憶部43に記憶される。再暗号化部44は、再暗号化鍵記憶部43に記憶された再暗号化鍵を用いて、マスター向け暗号化システム秘密鍵記憶部42に記憶されたマスター向け暗号化システム秘密鍵つまり、マスター鍵管理装置20の公開鍵で暗号化されたシステム装置30の秘密鍵を、クライアント装置50のクライアント公開鍵第3の公開鍵で暗号化された当該システム装置30のシステム秘密鍵に再暗号化したクライアント向け暗号化システム秘密鍵を生成する。つまり、再暗号化部44によって再暗号化されたシステム装置30のシステム秘密鍵は、クライアント装置50のクライアント秘密鍵を用いて復号することができる。なお、再暗号化部44によって再暗号化されたシステム装置30のシステム秘密鍵は、通信部31によってクライアント装置50に送信される。制御部45は、通信部41および再暗号化部44の処理を含む鍵管理サーバ装置40における処理を制御するための機能部である。図6は、図1に示すクライアント装置50の主として機能構成を示すブロック図である。クライアント装置50は、通信部51、クライアント秘密鍵記憶部52、一時データ記憶部53、システム秘密鍵復号部54および制御部55を含む。通信部51は、ネットワーク60を介して通信を行う機能部である。通信部51は、例えば公開鍵秘密鍵生成装置10に含まれる通信部11によって送信されたクライアント装置30のクライアント公開鍵およびクライアント秘密鍵つまり、自身の公開鍵および秘密鍵を受信する。また、通信部51は、鍵管理サーバ装置40に対してクライアント向け暗号化システム秘密鍵要求を送信する。このクライアント向け暗号化システム秘密鍵要求は、クライアント装置50を利用するユーザが利用しようとするサービスを提供するシステム装置30のシステム秘密鍵当該サービスを利用する際に必要となる鍵を要求するものである。通信部51は、鍵管理サーバ装置40に対して送信されたクライアント向け暗号化システム秘密鍵要求に対する応答として再暗号化されたシステム装置30の秘密鍵であるクライアント向け暗号化システム秘密鍵を鍵管理サーバ装置40から受信する。この再暗号化されたシステム装置30の秘密鍵は、上記したようにクライアント装置50のクライアント公開鍵つまり、自身の公開鍵で暗号化されたシステム装置30のシステム秘密鍵である。クライアント秘密鍵記憶部52には、通信部51によって受信されたクライアント装置50のクライアント秘密鍵つまり、自身の秘密鍵が記憶される。なお、通信部51によって受信されたクライアント装置50のクライアント公開鍵は公開され、当該クライアント装置50において管理される。一時データ記憶部53は、必要に応じて、例えば他装置から受信されたデータ等を一時的に記憶するための記憶部である。一時データ記憶部53には、例えば通信部51によって受信された再暗号化されたシステム装置30のシステム秘密鍵が記憶される。システム秘密鍵復号部54は、クライアント秘密鍵記憶部52に記憶されたクライアント装置50のクライアント秘密鍵第3の秘密鍵を用いて、通信部51によって受信された再暗号化されたシステム装置30のシステム秘密鍵であるクライアント向け暗号化システム秘密鍵一時データ記憶部53に記憶された再暗号化されたシステム装置30の秘密鍵を復号する。なお、システム秘密鍵復号部54によって復号されたシステム装置30のシステム秘密鍵は、一時データ記憶部53に記憶される。クライアント装置50は、システム秘密鍵復号部54によって復号されたシステム装置30のシステム秘密鍵一時データ記憶部53に記憶されたシステム装置30のシステム秘密鍵を用いて当該システム装置30によって提供されるサービスを利用することができる。制御部55は、通信部51およびシステム秘密鍵復号部54の処理を含むクライアント装置50における処理を制御するための機能部である。ここで、図7を参照して、本実施形態に係る鍵管理システムにおいて用いられるプロキシ再暗号化技術ProxyReEncryptionの概念について説明する。ここでは、便宜的に、機密データ100を暗号化することによって保護しながら当該機密データ100をユーザAおよびBが復号する場合について説明する。まず、機密データ100は、ユーザAの公開鍵201を用いて暗号化されるステップS1。これによって、暗号化された機密データ100以下、暗号化機密データ101と表記するが得られる。ユーザAの公開鍵は、ユーザAに紐づけられた公開鍵であり、機密データ100を暗号化するための鍵である。ユーザAの公開鍵201は公開情報であり、当該ユーザAの公開鍵201を利用して誰でもデータを暗号化することができる。この暗号化機密データ101は、ユーザAの秘密鍵202を用いて復号されることができるステップS2。これによって、ユーザAは、機密データ100を得ることができる。ユーザAの秘密鍵202は、ユーザAに紐づけられたユーザAの公開鍵201と対となる鍵であって、当該ユーザAの公開鍵201で暗号化された機密データ100つまり、暗号化機密データ101を復号するための鍵である。ユーザAの秘密鍵は秘密情報であり、当該ユーザAの秘密鍵202を知っている者のみが暗号化機密データ101を復号することができる。ここで、再暗号化技術によれば、ユーザAの秘密鍵202およびユーザBの公開鍵301を用いて、再暗号化鍵401が生成されるステップS3。再暗号化鍵401は、暗号化機密データ101を暗号化機密データ102に再暗号化変換するための鍵である。暗号化機密データ102は、ユーザBの公開鍵ユーザBに紐づけられた公開鍵302で暗号化された機密データ100である。なお、再暗号化鍵401の生成には、ユーザAの秘密鍵を利用するため、ユーザAの承認が必要である。ここでは、ユーザAの秘密鍵202およびユーザBの公開鍵301を用いて再暗号化鍵401が生成されるものとして説明したが、これらの鍵202および301に加えてユーザAの公開鍵201およびユーザBの秘密鍵301を用いて再暗号化か鍵401が生成される場合もある。次に、暗号化機密データ101は、再暗号化鍵401を用いて再暗号化されるステップS4。これによって、暗号化機密データ101は、暗号化機密データ102に再暗号化される。なお、再暗号化鍵401を用いたとしても暗号化機密データ101を復号することはできないつまり、機密データ100を得ることはできない。再暗号化された暗号化機密データ102暗号化機密データ101を再暗号化することによって得られた暗号化機密データ102は、ユーザBの秘密鍵302を用いて復号されることができるステップS5。これによって、ユーザBは、機密データ100を得ることができる。上記したように、再暗号化技術によれば、例えば暗号化機密データ101が復号されることなく、当該暗号化機密データ101ユーザAの公開鍵201で暗号化された機密データ100を暗号化機密データ102ユーザBの公開鍵301で暗号化された機密データ100に再暗号化することが可能となる。ここで、上記したプロキシ再暗号化で利用する記号について説明する。このプロキシ再暗号化は、公開鍵暗号系に関する概念であり、基本的なモデルは鍵生成、暗号化、復号、再暗号化鍵生成、再暗号化の5つの関数からなる。なお、鍵生成、暗号化、復号については通常の公開鍵暗号と同様である。プロキシ再暗号化における鍵生成アルゴリズムKeyGenは、セキュリティパラメータ1kを入力とし、公開鍵pkと秘密鍵skの組pk,skを出力する。つまり、KeyGen1k→pk,skである。プロキシ再暗号化における暗号化アルゴリズムEncは、対象A例えば、ユーザAの公開鍵pkAと機密データ平文mを入力とし、当該ユーザAの公開鍵pkAで暗号化された機密データ暗号化機密データCAを出力する。つまり、EncpkA,m→CAである。プロキシ再暗号化における復号アルゴリズムDecは、ユーザAの秘密鍵skAおよび暗号化機密データCAを入力とし、機密データmを出力する。つまり、DecskA,CA→mである。プロキシ再暗号化における再暗号化鍵生成アルゴリズムReKeyGenは、例えばユーザAの公開鍵pkA、ユーザAの秘密鍵skA、ユーザBの公開鍵pkB、ユーザBの秘密鍵skBを入力とし、再暗号化鍵rkA→Bを出力する。つまり、ReKeyGenpkA,skA,pkB,skB→rkA→Bである。プロシキ再暗号化における再暗号アルゴリズムReEncは、再暗号化鍵rkA→Bおよび暗号化機密データCAを入力とし、ユーザBの公開鍵pkBで暗号化された機密データ暗号化機密データCBを出力する。つまり、ReEncrkA→B,CA→CBである。上記した鍵生成、暗号化、復号、再暗号化鍵生成および再暗号化が基本的なモデルであるが、実現方式によっては関数への入力が異なる場合、または上記以外の関数または鍵を含む場合がある。具体的には、再暗号化鍵生成アルゴリズムの入力にskBを必要としないnon-interactiveと呼ばれるモデル等がある。更に、再暗号化鍵rkA→Bを用いて暗号化機密データCAから暗号機密データCBの再暗号化を行うことができる一方で、その逆の暗号化機密データCBから暗号化機密データCAの再暗号化を行うことができないunidirectionalと呼ばれるモデル、および当該再暗号化鍵rkA→Bを用いて暗号化機密データCAおよび暗号機密データCBを相互に再暗号化することができるbidirecdtionalと呼ばれるモデルもある。なお、bidirectionalモデルにおいては、再暗号化鍵rkA→BをrkA⇔Bと表される場合がある。更に、公開鍵暗号の中でもIDベース暗号に基づく方式がある。この場合、マスター鍵生成のための関数Setupが増え、鍵生成KeyGenの入力にマスター鍵およびIDが追加される。なお、IDベース暗号において、公開鍵pkはIDそのものである。以下、本実施形態に係る鍵管理システムの動作について説明する。鍵管理システムにおいては、複数のシステム装置30のシステム秘密鍵が鍵管理サーバにおいて管理され、当該システム装置30のシステム秘密鍵が当該システム装置30によって提供されるサービスを利用しようとするクライアント装置50に配布される。図8のフローチャートを参照して、本実施形態に係る鍵管理システムの処理手順について説明する。本実施形態に係る鍵管理システムの処理は、大別すると、図8に示す4つの処理からなる。鍵管理システムにおいては、まず、鍵セットアップ処理が実行されるステップS11。この鍵セットアップ処理では、鍵管理システムにおいて用いられるマスター鍵管理装置20のマスター公開鍵およびマスター秘密鍵と各クライアント装置50のクライアント公開鍵およびクライアント秘密鍵とがセットアップされる。次に、鍵管理システムにおいては、システム秘密鍵セットアップ処理が実行されるステップS12。このシステム秘密鍵セットアップ処理では、各システム装置30のシステム秘密鍵が鍵管理サーバ装置40で管理するためにセットアップされる。更に、鍵管理システムにおいては、再暗号化鍵セットアップ処理が実行されるステップS13。この再暗号化鍵セットアップ処理では、鍵管理システムにおいて用いられる再暗号化鍵がセットアップされる。上記したステップS11~S13の処理が実行されると、鍵管理システムにおいては、鍵配布処理が実行されるステップS14。この鍵配布処理では、システム装置30によって提供されるサービスを利用しようとするクライアント装置50からの要求に応じて、当該システム装置30のシステム秘密鍵が、クライアント装置50のクライアント秘密鍵で復号できるように暗号化された状態で、当該クライアント装置50に対して配布される。この鍵配布処理によって配布されたシステム装置30のシステム秘密鍵を用いることによって、クライアント装置50は、システム装置30によって提供されるサービスを利用することが可能になる。次に、図9~図12を用いて、上述した図8に示す各処理鍵セットアップ処理、システム秘密鍵セットアップ処理、再暗号化鍵セットアップ処理、鍵配布処理の詳細について説明する。なお、以下では説明を省略しているが、公開鍵秘密鍵生成装置10、マスター鍵管理装置20、各システム装置30、鍵管理サーバ装置40および各クライアント装置50に含まれる各部の処理は、当該各装置に含まれる制御部による制御に応じて行われる。まず、図9のシーケンスチャートを参照して、鍵セットアップ処理図8に示すステップS11の処理の処理手順について説明する。鍵セットアップ処理は、公開鍵秘密鍵生成装置10、マスター鍵管理装置20および各クライアント装置50によって実行される。図9においては、便宜的に1つのクライアント装置50についてのみ説明する。マスター鍵管理装置20に含まれる通信部21は、公開鍵秘密鍵生成装置10に対してマスター鍵生成要求を送信するステップS21。これにより、マスター鍵管理装置20のマスター公開鍵およびマスター秘密鍵以下、マスター公開鍵Mpkおよびマスター秘密鍵Mskと表記するの生成が公開鍵秘密鍵生成装置10に対して要求される。公開鍵秘密鍵生成装置10に含まれる通信部11は、マスター鍵管理装置20に含まれる通信部21から送信されたマスター鍵生成要求を受信する。通信部11によってマスター鍵管理装置20からのマスター鍵生成要求が受信されると、公開鍵秘密鍵生成部13は、マスター鍵管理装置20のマスター公開鍵Mpkおよびマスター秘密鍵Mskのペアを生成するステップS22。なお、公開鍵秘密鍵生成部13は、パラメータ記憶部12に記憶されているパラメータを用いてマスター鍵管理装置20のマスター公開鍵Mpkおよびマスター秘密鍵Mskのペアを生成する。通信部11は、受信されたマスター鍵管理装置20からの鍵生成要求に対する応答マスター鍵生成応答をマスター鍵管理装置20に送信するステップS23。なお、このマスター鍵生成応答には、公開鍵秘密鍵生成部13によって生成されたマスター鍵管理装置20のマスター公開鍵Mpkおよびマスター秘密鍵Mskが含まれる。公開鍵秘密鍵生成装置10に含まれる通信部11によってマスター鍵生成応答がマスター鍵管理装置20に対して送信されると、マスター鍵管理装置20に含まれる通信部21は、当該マスター鍵生成応答を受信する。これにより、マスター鍵管理装置20は、マスター鍵生成応答に含まれるマスター鍵管理装置20のマスター公開鍵Mpkおよびマスター秘密鍵Mskを取得する。マスター鍵管理装置20において取得されたマスター鍵管理装置20のマスター秘密鍵Mskは、マスター秘密鍵記憶部22に記憶されて、適切に保管されるステップS24。一方、マスター鍵管理装置20において取得されたマスター鍵管理装置20のマスター公開鍵Mpkは、適切な方法で公開されるステップS25。クライアント装置50に含まれる通信部51は、公開鍵秘密鍵生成装置10に対してクライアント鍵生成要求を送信するステップS26。これにより、クライアント装置50のクライアント公開鍵およびクライアント秘密鍵以下、クライアント公開鍵Cpkおよびクライアント秘密鍵Cskと表記するの生成が公開鍵秘密鍵生成装置10に対して要求される。公開鍵秘密鍵生成装置10に含まれる通信部11は、クライアント装置50に含まれる通信部51から送信されたクライアント鍵生成要求を受信する。通信部11によってクライアント装置50からの鍵生成要求が受信されると、公開鍵秘密鍵生成部13は、当該クライアント装置50のクライアント公開鍵Cpkおよびクライアント秘密鍵Cskのペアを生成するステップS27。なお、公開鍵秘密鍵生成部13は、パラメータ記憶部12に記憶されているパラメータを用いてクライアント装置50のクライアント公開鍵Cpkおよびクライアント秘密鍵Cskのペアを生成する。通信部11は、受信されたクライアント装置50からのクライアント鍵生成要求に対する応答クライアント鍵生成応答を当該クライアント装置50に送信するステップS28。なお、この鍵生成応答には、公開鍵秘密鍵生成部13によって生成されたクライアント装置50のクライアント公開鍵Cpkおよびクライアント秘密鍵Cskが含まれる。公開鍵秘密鍵生成装置10に含まれる通信部11によってクライアント鍵生成応答がクライアント装置50に対して送信されると、当該クライアント装置50に含まれる通信部51は、当該クライアント鍵生成応答を受信する。これにより、クライアント装置50は、クライアント鍵生成応答に含まれる当該クライアント装置50のクライアント公開鍵Cpkおよびクライアント秘密鍵Cskを取得する。クライアント装置50において取得された当該クライアント装置50のクライアント秘密鍵Cskは、クライアント秘密鍵記憶部52に記憶されて、適切に保管されるステップS29。一方、クライアント装置50において取得された当該クライアント装置50のクライアント公開鍵Cpkは、適切な方法で公開されるステップS30。上記したようにステップS21~S30の処理が実行されると、鍵セットアップ処理は終了される。上記したステップS21およびS26において送信されるマスター鍵生成要求およびクライアント鍵生成要求には、当該マスター鍵生成要求およびクライアント鍵生成要求を送信する装置マスター鍵管理装置20およびクライアント装置50をユニークに特定するためのID等が含まれていてもよいし、公開鍵秘密鍵生成装置10側でユニークなIDが割り振られても構わない。また、ステップS21およびS26におけるマスター鍵生成要求およびクライアント鍵生成要求、およびステップS23およびS28におけるマスター鍵生成応答およびクライアント鍵生成応答においては、1つのパスだけではなく、例えば鍵共有を行うTLSProtocolのように複数のメッセージをやり取りして鍵生成を行うような構成であっても構わない。なお、以下に説明する各装置間における各要求および応答においても同様である。また、ステップS23およびS28において、マスター公開鍵Mpkおよびマスター秘密鍵Mskを含むマスター鍵生成応答、およびクライアント公開鍵Cpkおよびクライアント秘密鍵Cskを含むクライアント鍵生成応答が送信される際には、特にマスター秘密鍵Mskおよびクライアント秘密鍵Cskを保護する必要がある。これらの秘密鍵の保護を実現するために、例えば2者間ここでは、公開鍵秘密鍵生成装置10およびマスター鍵管理装置20間、公開鍵秘密鍵生成装置10およびクライアント装置50間で共通鍵を共有し、当該共通鍵を用いて当該秘密鍵を暗号化して送信するような構成であってもよい。なお、共通鍵とは、共通鍵暗号において用いられる鍵である。また、ステップS24およびS29におけるマスター秘密鍵Mskおよびクライアント秘密鍵Cskの保管方法については明示しないが、例えば予め用意された鍵を用いて暗号化して保管する等であればよい。また、ステップS25およびS30におけるマスター公開鍵Mpkおよびクライアント公開鍵Cpkの公開方法は、各装置に依存するものであり、例えば公開鍵を管理するサーバに登録する、または本実施形態に係る鍵管理システムの管理者等が管理する等であってもよい。つまり、本実施形態に係る鍵管理システムを構成する各装置が公開鍵を必要なときに取得できるような構成であればよい。なお、以下の説明では、便宜的に、マスター鍵管理装置20のマスター公開鍵Mpkはマスター鍵管理装置20において管理されているものとし、クライアント装置50のクライアント公開鍵Cpkは当該クライアント装置50において管理されているものとする。なお、図9においてはステップS21~S30の順に処理が実行されるものとして説明したが、ステップS21~S25の処理とステップS26~S30の処理とは、順番が入れ替えられても構わない。また、ステップS21~S25の処理とステップS26~S30の処理とは、一連の処理でなくても構わない。例えばステップS21~S25の処理が実行され、後でステップS26~S30の処理が実行されるような構成であってもよい。また、ここでは便宜的に1つのクライアント装置50についてのみ説明したが、図9に示すステップS26~S30の処理は、クライアント装置50の各々について実行される。つまり、鍵セットアップ処理においては、ステップS26~S30がクライアント装置50毎に繰り返されても構わない。次に、図10のシーケンスチャートを参照して、システム秘密鍵セットアップ処理図8に示すステップS12の処理の処理手順について説明する。システム秘密鍵セットアップ処理は、マスター鍵管理装置20、各システム装置30および鍵管理サーバ装置40によって実行される。図9においては、便宜的に1つのシステム装置30についてのみ説明する。なお、システム装置30に含まれるシステム秘密鍵記憶部32には、当該システム装置30のシステム秘密鍵以下、システム秘密鍵Sskと表記するが記憶されている。まず、システム装置30に含まれる通信部31は、マスター鍵管理装置20に対してマスター公開鍵要求を送信するステップS41。これにより、マスター鍵管理装置20のマスター公開鍵Mpkが当該マスター鍵管理装置20に対して要求される。マスター鍵管理装置20に含まれる通信部21は、システム装置30に含まれる通信部31から送信されたマスター公開鍵要求を受信する。通信部21によってシステム装置30からのマスター公開鍵要求が受信されると、マスター鍵管理装置20において管理されているマスター鍵管理装置20のマスター公開鍵Mpkが取得される。通信部21は、受信されたシステム装置30からのマスター公開鍵要求に対する応答マスター公開鍵応答を当該システム装置30に送信するステップS42。なお、このマスター公開鍵応答には、マスター鍵管理装置20のマスター公開鍵Mpkが含まれる。マスター鍵管理装置20に含まれる通信部21によってマスター公開鍵応答がシステム装置30に対して送信されると、当該システム装置30に含まれる通信部31は、当該マスター公開鍵応答を受信する。これにより、システム装置30は、マスター公開鍵応答に含まれるマスター鍵管理装置20のマスター公開鍵Mpkを取得する。次に、システム秘密鍵暗号化部34は、システム秘密鍵記憶部32に記憶されているシステム装置30のシステム秘密鍵Sskを取得するステップS43。ここで、システム装置30のシステム秘密鍵Sskがシステム秘密鍵記憶部32において例えば暗号化されて保管されているような場合には、適宜復号されることによってシステム装置30のシステム秘密鍵Sskが取得される。システム秘密鍵暗号化部34は、取得されたマスター鍵管理装置20のマスター公開鍵Mpkを用いて、ステップS43において取得されたシステム装置30のシステム秘密鍵Sskを暗号化するステップS44。通信部31は、ステップS44において暗号化されたシステム装置30のシステム秘密鍵Sskであるマスター向け暗号化システム秘密鍵を含む、マスター向け暗号化システム秘密鍵保管要求を、鍵管理サーバ装置40に対して送信するステップS45。これにより、マスター向け暗号化システム秘密鍵の保管管理が鍵管理サーバ装置40に対して要求される。鍵管理サーバ装置40に含まれる通信部41は、システム装置30に含まれる通信部31から送信されたマスター向け暗号化システム秘密鍵保管要求を受信する。通信部41によって受信されたマスター向け暗号化システム秘密鍵保管要求に含まれるマスター向け暗号化システム秘密鍵は、当該マスター向け暗号化システム秘密鍵保管要求に応じてマスター向け暗号化システム秘密鍵記憶部42に記憶されて、保管されるステップS46。なお、ステップS46の処理が実行されると、マスター向け暗号化システム秘密鍵の保管処理が完了した旨を通知するため、通信部41は、受信されたマスター向け暗号化システム秘密鍵保管要求に対する応答マスター向け暗号化システム秘密鍵保管応答をシステム装置30に送信するステップS47。上記したようにステップS41~ステップS47の処理が実行されると、システム秘密鍵Sskのセットアップ処理は終了される。なお、上記したステップS42においてマスター鍵管理装置20のマスター公開鍵Mpkを含むマスター公開鍵応答が送信されるが、マスター公開鍵Mpkは公開される情報であるため、各種秘密鍵の場合ほど厳重にメッセージのやり取りを行う必要はない。なお、以下に説明する処理において各種公開鍵が送信される場合においても同様である。また、図10においては便宜的に1つのシステム装置30についてのみ説明したが、図10に示すシステム秘密鍵Sskのセットアップ処理は、システム装置30の各々について実行される。これにより、鍵管理サーバ装置40に含まれるマスター向け暗号化システム秘密鍵記憶部42には、マスター鍵管理装置20のマスター公開鍵Mpkで暗号化されたシステム装置30のシステム秘密鍵Sskであるマスター向け暗号化システム秘密鍵が、システム装置30毎に記憶される。つまり、鍵管理サーバ装置40では、全てのシステム装置30の秘密鍵Sskが暗号化された状態で集約されて管理される。次に、図11のシーケンスチャートを参照して、再暗号化鍵セットアップ処理図8に示すステップS13の処理の処理手順について説明する。再暗号化鍵セットアップ処理は、マスター鍵管理装置20、鍵管理サーバ装置40および各クライアント装置50によって実行される。図11においては、便宜的に1つのクライアント装置50についてのみ説明する。まず、マスター鍵管理装置20に含まれる通信部21は、クライアント装置50に対してクライアント公開鍵要求を送信するステップS51。これにより、クライアント装置50のクライアント公開鍵Cpkが当該クライアント装置50に対して要求される。クライアント装置50に含まれる通信部51は、マスター鍵管理装置20に含まれる通信部21から送信されたクライアント公開鍵要求を受信する。通信部51によってマスター鍵管理装置20からのクライアント公開鍵要求が受信されると、クライアント端末50において管理されているクライアント装置50のクライアント公開鍵Cpkが取得される。通信部51は、受信されたマスター鍵管理装置20からのクライアント公開鍵要求に対する応答クライアント公開鍵応答を当該マスター鍵管理装置20に送信するステップS52。なお、このクライアント公開鍵応答には、クライアント装置50のクライアント公開鍵Cpkが含まれる。クライアント装置50に含まれる通信部51によってクライアント公開鍵応答がマスター鍵管理装置20に送信されると、当該マスター鍵管理装置20に含まれる通信部21は、当該クライアント公開鍵応答を受信する。これにより、マスター鍵管理装置20は、クライアント公開鍵応答に含まれるクライアント装置50のクライアント公開鍵Cpkを取得する。次に、再暗号化鍵生成部24は、マスター秘密鍵記憶部22に記憶されているマスター鍵管理装置20のマスター秘密鍵Mskを取得するステップS53。マスター鍵管理装置20のマスター秘密鍵Mskがマスター秘密鍵記憶部22において例えば暗号化された保管されているような場合には、適宜復号されることによってマスター鍵管理装置20のマスター秘密鍵Mskが取得される。再暗号化鍵生成部24は、取得されたクライアント装置50のクライアント公開鍵Cpkおよびマスター鍵管理装置20のマスター秘密鍵Mskを用いて再暗号化鍵以下、再暗号化鍵M→Creeと表記するを生成するステップS54。ここで生成された再暗号化鍵M→Creeは、マスター鍵管理装置20のマスター公開鍵Mpkで暗号化されたデータをクライアント装置50のクライアント公開鍵Cpkで暗号化されたデータに再暗号化変換するための鍵、つまり、マスター鍵管理装置20のマスター秘密鍵Mskで復号可能なデータ暗号化データをクライアント装置50のクライアント秘密鍵Cskで復号可能なデータ暗号化データに再暗号化するための鍵である。通信部21は、ステップS54において生成された再暗号化鍵M→Creeを含む再暗号化鍵保管要求を、鍵管理サーバ装置40に対して送信するステップS56。これにより、再暗号化鍵M→Creeの保管管理が鍵管理サーバ装置40に対して要求される。鍵管理サーバ装置40に含まれる通信部41は、マスター鍵管理装置20に含まれる通信部21から送信された再暗号化鍵保管要求を受信する。通信部41によって受信された再暗号化鍵保管要求に含まれる再暗号化鍵M→Creeは、当該再暗号化鍵保管要求に応じて再暗号化鍵記憶部43に記憶されて、保管されるステップS56。なお、ステップS56の処理が実行されると、再暗号化鍵M→Creeの保管処理が完了した旨を通知するため、通信部41は、受信された再暗号化鍵保管要求に対する応答再暗号化鍵保管応答をマスター鍵管理装置20に送信するステップS57。上記したようにステップS51~ステップS57の処理が実行されると、再暗号化鍵セットアップ処理は終了される。なお、上記したステップS55において再暗号化鍵M→Creeを含む再暗号化鍵保管要求が送信されるが、再暗号化鍵M→Creeのみでは例えばシステム装置30のシステム秘密鍵Ssk等を得ることはできないため、上記した各種公開鍵の場合と同様に、各種秘密鍵の場合ほど厳重にメッセージのやり取りを行う必要はない。また、図11においては便宜的に1つのクライアント装置50についてのみ説明したが、図11に示すステップS51~S55の処理は、クライアント装置50の各々について実行される。つまり、再暗号化鍵セットアップ処理においては、ステップS51~S55の処理がクライアント装置50毎に繰り返されても構わない。これにより、鍵管理サーバ装置40に含まれる再暗号化鍵記憶部43には、クライアント装置50毎の再暗号化鍵クライアント装置50の各々に対応する再暗号化鍵M→Creeが記憶される。次に、図12に示すシーケンスチャートを参照して、鍵配布処理図8に示すステップS14の処理の処理手順について説明する。鍵配布処理は、鍵管理サーバ装置40およびシステム装置30によって提供されるサービスを利用しようとするクライアント装置50によって実行される。以下、複数のクライアント装置50のうちの鍵配布処理を実行するクライアント装置50を対象クライアント装置50と称し、複数のシステム装置30のうちの当該対象クライアント装置50がサービスを利用とするサービスを提供するシステム装置30を対象システム装置30と称する。まず、対象クライアント装置50に含まれる通信部51は、鍵管理サーバ装置40に対してクライアント向け暗号化システム秘密鍵要求を送信するステップS61。これにより、対象システム装置30のシステム秘密鍵Sskをクライアント装置50のクライアント秘密鍵Cskで復号できるように暗号化されたデータである、クライアント向け暗号化システム秘密鍵の取得が、鍵管理サーバ装置40に対して要求される。鍵管理サーバ装置40に含まれる通信部41は、対象クライアント装置50に含まれる通信部51から送信されたクライアント向け暗号化システム秘密鍵要求を受信する。通信部41によって対象クライアント装置50からのクライアント向け暗号化システム秘密鍵要求が受信されると、再暗号化部44は、マスター向け暗号化システム秘密鍵記憶部42に記憶されている、暗号化された対象システム装置30のシステム秘密鍵Sskを当該クライアント向け暗号化システム秘密鍵要求に応じて取得するステップS62。なお、再暗号化部44によってマスター向け暗号化システム秘密鍵記憶部42から取得されたマスター向け暗号化システム秘密鍵は、前述したようにマスター鍵管理装置20のマスター公開鍵Mskで暗号化された対象システム装置30のシステム秘密鍵Sskである。再暗号化部44は、再暗号化鍵記憶部43に記憶されている再暗号化鍵M→Creeを取得するステップS63。ここで再暗号化部44によって取得される再暗号化鍵M→Creeは、上記したクライアント向け暗号化システム秘密鍵要求の要求元である対象クライアント装置50に対応する再暗号化鍵M→Creeであって、マスター鍵管理装置20のマスター公開鍵Mpkで暗号化されたデータを当該クライアント装置50のクライアント公開鍵Cpkで暗号化されたデータに再暗号化変換するための鍵である。次に、再暗号化部44は、ステップS63において取得された再暗号化鍵M→Creeを用いて、ステップS62において取得されたマスター向け暗号化システム秘密鍵マスター鍵管理装置20の公開鍵Mpkで暗号化された対象システム装置30の秘密鍵を再暗号化するステップS64。この場合、マスター鍵管理装置20のマスター公開鍵Mpkで暗号化された対象システム装置30のシステム秘密鍵Sskは、クライアント装置50のクライアント公開鍵Cpkで暗号化された対象システム装置30のシステム秘密鍵Sskつまり、クライアント装置50のクライアント秘密鍵Cskで復号可能なデータであるクライアント向け暗号化システム秘密鍵に再暗号化される。なお、マスター鍵管理装置20のマスター公開鍵Mpkで暗号化された対象システム装置30のシステム秘密鍵Sskが再暗号化される際に、対象システム装置30のシステム秘密鍵Sskが復号されることはない。通信部41は、受信されたクライアント向け暗号化システム秘密鍵要求に対する応答クライアント向け暗号化システム秘密鍵応答を、当該クライアント向け暗号化システム秘密鍵要求の要求元である対象クライアント装置50に送信するステップS65。なお、このクライアント向け暗号化システム秘密鍵応答には、再暗号化部44によって再暗号化されたクライアント向け暗号化システム秘密鍵が含まれる。鍵管理サーバ装置40に含まれる通信部41によってクライアント向け暗号化システム秘密鍵応答が対象クライアント装置50に対して送信されると、対象クライアント装置50に含まれる通信部51は、当該クライアント向け暗号化システム秘密鍵応答を受信する。これにより、対象クライアント装置50は、クライアント向け暗号化システム秘密鍵応答に含まれるクライアント向け暗号化システム秘密鍵を取得する。次に、システム秘密鍵復号部54は、クライアント秘密鍵記憶部52に記憶されている対象クライアント装置50のクライアント秘密鍵Cskを取得するステップS66。ここで、対象クライアント装置50のクライアント秘密鍵Cskがクライアント秘密鍵記憶部52において例えば暗号化された保管されているような場合には、適宜復号されることによって対象クライアント装置50のクライアント秘密鍵Cskが取得される。システム秘密鍵復号部54は、取得されたクライアント向け暗号化システム秘密鍵対象クライアント装置50の公開鍵Cpkで暗号化された対象システム装置30の秘密鍵を、対象クライアント装置50のクライアント秘密鍵Cskで復号するステップS67。これにより、クライアント装置50は、対象システム装置つまり、利用しようとするサービスを提供するシステム装置30のシステム秘密鍵Sskを取得することができる。クライアント装置50では、取得された対象システム装置30のシステム秘密鍵Sskを用いて当該対象システム装置30によって提供されるサービスを利用することができる。なお、上記したステップS65において再暗号化された対象システム装置30のシステム秘密鍵Sskを含むクライアント向け暗号化システム秘密鍵応答が送信されるが、当該対象システム装置30のシステム秘密鍵Sskは暗号化された状態であるため、それほど厳重にメッセージのやり取りを行う必要はない。ここで、上記したように鍵配布処理は、鍵管理サーバ装置40およびシステム装置30のシステム秘密鍵Sskを要求するクライアント装置50つまり、システム装置30のシステム秘密鍵の配布先となるクライアント装置50によって実行される。つまり、鍵配布処理においては、マスター鍵管理装置20は必要ない。このため、本実施形態においては、鍵配布処理時つまり、図8に示すステップS11~S13の各処理以外の時にはマスター鍵管理装置20をネットワー60から切断されるものとする。より具体的には、マスター鍵管理装置20において生成された再暗号化鍵M→Creeが鍵管理サーバ装置40の再暗号化鍵記憶部43に記憶され、再暗号化鍵セットアップ処理が終了されると、マスター鍵管理装置20と他の各装置との接続が切断される。これにより、マスター鍵管理装置20のマスター秘密鍵Mskを管理するマスター鍵管理装置20を完全に隔離することができるため、鍵管理サーバ装置40で集約して管理されている各システム装置30のシステム秘密鍵Sskを復号可能なマスター鍵管理装置20のマスター秘密鍵Mskをより安全に管理することが可能となる。上記したように本実施形態においては、マスター鍵管理装置20がマスター鍵管理装置20のマスター秘密鍵Mskおよびクライアント装置50のクライアント公開鍵Cpkを用いて再暗号化鍵M→Creeを生成し、鍵管理サーバ装置40がマスター鍵管理装置20において生成された再暗号化鍵M→Creeを管理し、当該マスター鍵管理装置20と鍵管理サーバ装置40との接続がその後に切断される構成により、厳重に管理された環境下でなくても、配布される鍵を安全に管理することが可能となる。具体的には、上記したように鍵管理サーバ装置40で集約して管理されているシステム装置30のシステム秘密鍵Sskを復号可能なマスター鍵管理装置20のマスター秘密鍵Mskを完全に隔離して管理できるため、当該マスター鍵管理装置20のマスター秘密鍵Mskの漏洩を防止することができる。また、本実施形態においては、鍵管理サーバ装置40がシステム装置30のシステム秘密鍵Sskを再暗号化し、クライアント装置50が当該再暗号化されたシステム装置30のシステム秘密鍵Sskを当該クライアント装置50のクライアント秘密鍵Cskで復号する構成により、各システム装置30のシステム秘密鍵Sskを各クライアント装置50に配布する処理鍵配布処理の過程において一度もシステム装置30のシステム秘密鍵Sskが生のデータとして現れることがないため、鍵管理サーバ装置40自体を厳重に保護する必要がなく、それほどセキュアではない環境下においても安全に鍵配布処理を行うことができる。また、本実施形態においては、再暗号化鍵M→Creeの生成を各クライアント装置50からの要求毎に行う必要がなく、当該要求の前につまり、鍵配布処理の前の再暗号化鍵セットアップ処理で作成しておけばよいため、上記したようにマスター鍵管理装置20と鍵管理サーバ装置40とが常にオンラインで接続されている必要がない。これにより、本実施形態においては、特別に守るべきデータここでは、マスター鍵管理装置20のマスター秘密鍵Mskを管理しているマスター鍵管理装置20のみを一般にはアクセスできないような高セキュリティ環境に置くというような構成とすることが可能となる。また、本実施形態においては、上記したように鍵配布処理を行う鍵管理サーバ装置40を厳重に保護する必要がないため、当該鍵管理サーバ装置40の管理コストを減少させ、かつ、鍵管理サーバ装置の構成を見直すことによるコストを減少させることができる。更に、本実施形態においては、上記したように鍵配布処理の過程で例えば鍵管理サーバ装置40においてシステム装置30のシステム秘密鍵Sskが復号されることがないつまり、元の鍵データに戻ることはないため、例えば鍵配布処理における鍵管理サーバ装置40の管理者等に対する情報漏洩についても防止することが可能となる。以上説明したように本実施形態においては、鍵管理システムにおいて処理を分割することによって、安全性が高く、なおかつ、自由度の高い柔軟な鍵管理が可能となる。なお、本実施形態においては、システム装置30およびクライアント装置50を備えるものとして説明したが、一方例えば、クライアント装置50のみが備えられる構成であっても構わない。具体的には、例えばクライアント装置50のクライアント秘密鍵Cskが鍵管理サーバ装置40で管理され、当該管理されているクライアント装置50のクライアント秘密鍵Cskが各クライアント装置50の要求に応じて配布されるような構成であっても構わない。また、ステップS12のシステムセットアップ処理の実行時以外には、システム装置30をネットワーク60から切り離しておいてもよい。また、システム装置30がシステム秘密鍵記憶部32の代わりにシステム秘密鍵Sskを生成するためのシステム秘密鍵生成部を持つような構成とし、ステップS43のシステム秘密鍵を取得する処理の代わりに、システム秘密鍵生成部でシステム秘密鍵Sskを生成するようにしてもよい。また、プロキシ再暗号化方式として、non-interactiveではないもの、bidirectionalなものや、IDベースのものなどを利用してもよい。また、本実施形態においては公開鍵秘密鍵生成装置10を備えるものとして説明したが、当該公開鍵秘密鍵生成装置10を備えず、例えばマスター鍵管理装置20の内部でマスター鍵管理装置20のマスター公開鍵Mpkおよびマスター秘密鍵Mskが生成され、各クライアント装置50の内部で当該クライアント装置50のクライアント公開鍵Cpkおよびクライアント秘密鍵Cskが生成されるような構成であってもよい。また、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。"