(57)【特許請求の範囲】
【請求項１】
コンピュータに、
複数のデータ領域を有するデータの暗号処理に用いる複数の暗号鍵を、暗号鍵を識別する識別情報に対応付けて第１群に属する複数の処理装置に記憶させ、
前記複数のデータ領域のそれぞれについて、データ領域と、前記複数の暗号鍵のうち該データ領域の暗号処理に用いる暗号鍵の識別情報と、前記第１群に属する複数の処理装置のうち該暗号鍵を記憶する処理装置との対応関係を第２群に属する処理装置に記憶させ、
前記第２群に属する処理装置から情報漏洩の可能性を知らせる漏洩通知を受信した場合には、前記第１群に属する複数の処理装置のそれぞれが、該漏洩通知が送信される前に記憶していた暗号鍵と異なる暗号鍵を記憶するように、該複数の処理装置に前記複数の暗号鍵を再配置すると共に、再配置に応じた前記対応関係の変更を行う
処理を実行させる、データ保護プログラム。
【請求項２】
コンピュータに、
複数のデータ領域を有するデータの暗号処理に用いる複数の暗号鍵を、暗号鍵を識別する識別情報に対応付けて第１群に属する複数の処理装置に記憶させ、
前記複数のデータ領域のそれぞれについて、データ領域と、前記複数の暗号鍵のうち該データ領域の暗号処理に用いる暗号鍵の識別情報と、前記第１群に属する複数の処理装置のうち該暗号鍵を記憶する処理装置との対応関係を第２群に属する処理装置に記憶させ、
前記第２群に属する処理装置から情報漏洩の可能性を知らせる漏洩通知を受信した場合には、前記第１群に属する複数の処理装置が、前記複数の暗号鍵それぞれを、該漏洩通知が送信される前の暗号鍵の識別情報と異なる識別情報に対応付けて記憶するように、該複数の処理装置が記憶する前記複数の暗号鍵それぞれの識別情報を変更すると共に、識別情報の変更に応じた前記対応関係の変更を行う
処理を実行させる、データ保護プログラム。
【請求項３】
前記第２群に属する処理装置は、前記データ領域を識別する第１の識別情報と、前記暗号鍵を識別する第２の識別情報と、前記第１群に属する処理装置を識別する第３の識別情報とを対応付けるマッピング情報を用いて前記対応関係を記憶し、
前記データ保護プログラムは、前記コンピュータに、
前記第２群に属する処理装置から前記漏洩通知を受信した場合には、前記第２の識別情報を変更する
処理を実行させる、請求項２に記載のデータ保護プログラム。
【請求項４】
コンピュータが、
複数のデータ領域を有するデータの暗号処理に用いる複数の暗号鍵を、暗号鍵を識別する識別情報に対応付けて第１群に属する複数の処理装置に記憶させ、
前記複数のデータ領域のそれぞれについて、データ領域と、前記複数の暗号鍵のうち該データ領域の暗号処理に用いる暗号鍵の識別情報と、前記第１群に属する複数の処理装置のうち該暗号鍵を記憶する処理装置との対応関係を第２群に属する処理装置に記憶させ、
前記第２群に属する処理装置から情報漏洩の可能性を知らせる漏洩通知を受信した場合には、前記第１群に属する複数の処理装置のそれぞれが、該漏洩通知が送信される前に記憶していた暗号鍵と異なる暗号鍵を記憶するように、該複数の処理装置に前記複数の暗号鍵を再配置すると共に、再配置に応じた前記対応関係の変更を行う
データ保護方法。
【請求項５】
複数の処理装置に関する情報を記憶する記憶部と、
複数のデータ領域を有するデータの暗号処理に用いる複数の暗号鍵を、暗号鍵を識別する識別情報に対応付けて第１群に属する複数の処理装置に記憶させ、
前記複数のデータ領域のそれぞれについて、データ領域と、前記複数の暗号鍵のうち該データ領域の暗号処理に用いる暗号鍵の識別情報と、前記第１群に属する複数の処理装置のうち該暗号鍵を記憶する処理装置との対応関係を第２群に属する処理装置に記憶させ、
前記第２群に属する処理装置から情報漏洩の可能性を知らせる漏洩通知を受信した場合には、前記第１群に属する複数の処理装置のそれぞれが、該漏洩通知が送信される前に記憶していた暗号鍵と異なる暗号鍵を記憶するように、該複数の処理装置に前記複数の暗号鍵を再配置すると共に、再配置に応じた前記対応関係の変更を行う制御部と
を有する、データ保護装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ保護プログラム、データ保護方法、及びデータ保護装置に関する。
【背景技術】
【０００２】
近年、サービスプロバイダがクラウド環境で動作させる仮想マシンをサービスとして顧客に供給するＩａａＳ（Infrastructure as a Service）が広く利用されている。ＩａａＳは、仮想マシンの仮想ディスクファイルを顧客にサービスとして提供する。仮想ディスクファイルに含まれる顧客の情報資産が漏洩するのを防止するため、仮想ディスクファイルは暗号化された状態で管理される。
【０００３】
このようなクラウドシステムでは、管理者が管理者権限を利用して顧客の情報資産を不正入手するリスクが懸念される。そのため、仮想ディスクファイルへのアクセス時に利用される暗号鍵を仮想ディスクファイルとは異なる場所で管理する方法が提案されている。
【０００４】
１つの方法として、顧客自身や信頼性の高い第三者機関が暗号鍵を管理し、仮想マシンの起動時に暗号鍵を提供する仕組みが提案されている。また、記憶装置に格納されたデータを管理するデータ管理サーバが、そのデータの暗号化に利用する暗号鍵をその記憶装置には置かず、データ管理サーバのメインメモリに置いて管理する方法が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２０１３−５２８８７２号公報
【特許文献２】特開２００７−２６４０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
提案されている方法のように暗号鍵を仮想ディスクファイルと分離して管理したとしても、仮想ディスクファイルへのアクセス時に、暗号処理を実行するコンピュータのメモリ領域に暗号鍵が一時的に格納される。一方、クラウドシステムの管理者は、管理者権限を利用して、そのコンピュータのメモリダンプを取得することができる。そのため、その管理者がメモリダンプを解析して暗号鍵を取得するリスクが存在する。
【０００７】
暗号鍵の漏洩が疑われる場合、漏洩リスクへの対処として、暗号鍵を変更し、変更後の暗号鍵を利用して仮想ディスクファイルの再暗号化が行われる。仮想ディスクファイルは容量が大きいため、再暗号化には長い時間がかかり、漏洩リスクへの対処が遅延する。対処時間の長期化は迅速な運用再開の妨げになる。
【０００８】
１つの側面によれば、本開示の目的は、漏洩リスクへの対処を迅速化することが可能なデータ保護プログラム、データ保護方法、及びデータ保護装置を提供することにある。
【課題を解決するための手段】
【０００９】
一態様によれば、複数の処理装置に関する情報を記憶する記憶部と、複数のデータ領域のそれぞれについて、データ領域と、複数の暗号鍵のうち該データ領域の暗号処理に用いる暗号鍵と、第１群に属する複数の処理装置のうち該暗号鍵を記憶する処理装置との対応関係を第２群に属する処理装置に記憶させ、第１群又は第２群に属する処理装置から情報漏洩の可能性を知らせる漏洩通知を受信し、該漏洩通知を送信した処理装置が第２群に属する場合には、対応関係を変更する制御部とを有する、データ保護装置が提供される。
【発明の効果】
【００１０】
漏洩リスクへの対処を迅速化することができる。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態に係るデータ保護システムの一例を示した図である。
【図２】第２実施形態に係るデータ保護システムの一例を示した図である。
【図３】第２実施形態に係る仮想ディスクファイルの領域と、その領域の暗号化に用いる鍵との関係について説明するための図である。
【図４】第２実施形態に係る仮想化ホストサーバ及びＩ／Ｏ処理サーバが保持する情報について説明するための図である。
【図５】第２実施形態に係る各種サーバの機能を実現可能なハードウェアの一例を示した図である。
【図６】第２実施形態に係る仮想化ホストサーバが有する機能の一例を示したブロック図である。
【図７】第２実施形態に係るマッピング情報の一例を示した図である。
【図８】第２実施形態に係るＩ／Ｏ処理サーバが有する機能の一例を示したブロック図である。
【図９】第２実施形態に係る鍵情報の一例を示した図である。
【図１０】第２実施形態に係る漏洩監視サーバ及び状態管理サーバが有する機能の一例を示したブロック図である。
【図１１】第２実施形態に係る状態情報の一例を示した図である。
【図１２】第２実施形態に係る仮想ディスクファイルの作成と暗号化に関する処理の流れを示した第１のシーケンス図である。
【図１３】第２実施形態に係る仮想ディスクファイルの作成と暗号化に関する処理の流れを示した第２のシーケンス図である。
【図１４】第２実施形態に係るＩ／Ｏ処理の流れを示したシーケンス図である。
【図１５】第２実施形態に係るＩ／Ｏ処理の中で、Ｉ／Ｏ処理サーバによるデータの読み書きに関する処理及び再暗号化に関する処理の流れを示した第１のフロー図である。
【図１６】第２実施形態に係るＩ／Ｏ処理の中で、Ｉ／Ｏ処理サーバによるデータの読み書きに関する処理及び再暗号化に関する処理の流れを示した第２のフロー図である。
【図１７】第２実施形態に係る鍵ＩＤの変更処理の流れを示した第１のシーケンス図である。
【図１８】第２実施形態に係る鍵ＩＤの変更処理の流れを示した第２のシーケンス図である。
【図１９】第２実施形態に係る暗号鍵の変更処理の流れを示したシーケンス図である。
【図２０】第２実施形態に係る暗号鍵の変更処理の中で、再暗号化に関する処理の流れを示した第１のシーケンス図である。
【図２１】第２実施形態に係る暗号鍵の変更処理の中で、再暗号化に関する処理の流れを示した第２のシーケンス図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
【００１３】
＜１．第１実施形態＞
図１を参照しながら、第１実施形態について説明する。
第１実施形態は、複数のデータ領域を有するデータをデータ領域毎に異なる暗号鍵で暗号化して管理するデータ保護システムに関する。また、第１実施形態は、暗号鍵を保持する処理装置、又は暗号鍵とデータ領域との対応関係を記憶する処理装置で情報漏洩の可能性が生じたときに、漏洩リスクに対して迅速に対処する仕組みを開示する。図１は、第１実施形態に係るデータ保護システムの一例を示した図である。
【００１４】
図１に示すように、第１実施形態に係るデータ保護システムは、データ保護装置１０、処理装置２１、２２、３１を有する。なお、データ保護システムに含まれる処理装置の数は４以上であってもよい。以下では、処理装置２１、２２を第１群２０に属する処理装置と呼び、処理装置３１を第２群３０に属する処理装置と呼ぶ場合がある。また、データ保護装置１０の機能は、第１群２０に属する処理装置に搭載されていてもよい。
【００１５】
データ保護装置１０は、記憶部１１及び制御部１２を有する。
記憶部１１は、ＲＡＭ（Random Access Memory）などの揮発性記憶装置、或いは、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置である。制御部１２は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。制御部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路であってもよい。制御部１２は、例えば、記憶部１１又は他のメモリに記憶されたプログラムを実行する。
【００１６】
記憶部１１は、処理装置２１、２２、３１に関する情報を記憶する。例えば、記憶部１１は、処理装置２１、２２、３１のそれぞれと、所属する群（第１群２０又は第２群３０）との対応関係を示す情報を記憶する。図１の例では、処理装置２１、２２が第１群２０の所属であり、処理装置３１が第２群３０の所属であることを示す情報が記憶部１１に格納されている。
【００１７】
なお、第１群２０に属する処理装置はデータ４０の暗号処理を担当する。データ４０は、データ領域４１、４２を有する。データ領域４１の暗号処理には暗号鍵２１ａが利用される。一方、データ領域４２の暗号処理には暗号鍵２２ａが利用される。
【００１８】
図１の例では、処理装置２１が暗号鍵２１ａを記憶している。また、処理装置２２が暗号鍵２２ａを記憶している。データ領域４１にデータを書き込む場合、処理装置２１は、暗号鍵２１ａを利用して書き込むデータを暗号化する。また、データ領域４１のデータを読み出す場合、処理装置２１は、暗号鍵２１ａを利用して読み出すデータを復号する。同様に、データ領域４２に対する書き込み又は読み出しが生じた場合、処理装置２２が暗号鍵２２ａを利用してデータの暗号化又は復号の処理を実行する。
【００１９】
制御部１２は、データ領域４１と、データ領域４１の暗号処理に用いる暗号鍵２１ａと、第１群２０に属する複数の処理装置２１、２２のうち暗号鍵２１ａを記憶する処理装置２１との対応関係を第２群３０に属する処理装置３１に記憶させる。また、制御部１２は、データ領域４２と、データ領域４２の暗号処理に用いる暗号鍵２２ａと、第１群２０に属する複数の処理装置２１、２２のうち暗号鍵２２ａを記憶する処理装置２２との対応関係を第２群３０に属する処理装置３１に記憶させる。そして、処理装置３１は、これらの対応関係を含む情報（対応関係３１ａ）を保持する。
【００２０】
また、制御部１２は、第１群２０又は第２群３０に属する処理装置から情報漏洩の可能性を知らせる漏洩通知５０を受信し、該漏洩通知５０を送信した処理装置が第２群３０に属する場合には、対応関係３１ａを変更する。
【００２１】
処理装置２１、２２、３１は、情報漏洩の可能性が疑われる事象を検出した場合、データ保護装置１０に対して漏洩通知５０を送信する。情報漏洩の可能性が疑われる事象としては、例えば、メモリダンプが発生した場合や、メモリダンプに対してアクセスする操作が行われた場合などがある。漏洩通知５０には、漏洩通知５０の送信元を特定するための情報（例えば、ＩＰアドレスなど）が含まれる。
【００２２】
図１の例では、処理装置３１が漏洩通知５０を送信している。この場合、漏洩通知５０を受信した制御部１２は、処理装置３１の所属先（この例では第２群３０）を特定する。この例では、漏洩通知５０の所属先が第２群３０であるため、制御部１２は、対応関係３１ａを変更する。例えば、制御部１２は、処理装置２１が記憶している暗号鍵２１ａを処理装置２２に記憶させ、処理装置２２が記憶している暗号鍵２２ａを処理装置２１に記憶させ、処理装置３１が記憶している対応関係３１ａを更新させる。
【００２３】
処理装置３１における情報漏洩の可能性は、対応関係３１ａの漏洩リスクに繋がる。しかし、対応関係３１ａを更新すれば、漏洩した対応関係３１ａを保持する悪意者がデータ４０を取得するリスクを抑圧できる。この対処を行う際、処理装置２１、２２が記憶する暗号鍵２１ａ、２２ａの入れ替えと、処理装置３１が記憶する対応関係３１ａの更新とが生じるが、データ４０の再暗号化は行わなくてもよい。そのため、データ４０の再暗号化にかかる処理時間を省略することができ、迅速な対処が可能になる。
【００２４】
なお、第１群２０に所属する処理装置に情報漏洩の可能性が生じた場合、データ４０の再暗号化が行われることになるが、該当する処理装置に対応するデータ領域を新たな暗号鍵で再暗号化をすれば、データ４０の漏洩リスクを抑圧することができる。例えば、処理装置２１に漏洩リスクが生じた場合、暗号鍵２１ａを新たな暗号鍵に交換し、新たな暗号鍵でデータ領域４１を再暗号化すれば、暗号鍵２１ａの漏洩リスクに対処することができる。この場合も対応関係３１ａは更新される。この方法では、再暗号化される容量がデータ４０全体を再暗号化する場合に比べて小さいため、やはり迅速な対処が可能になる。
【００２５】
上記の説明では、第２群３０の処理装置３１に情報漏洩の可能性が生じた場合に、対応関係３１ａを変更する方法として、暗号鍵２１ａ、２２ａを入れ替える方法を示した。この方法に関する変形例として、例えば、暗号鍵２１ａ、２２ａの識別情報（鍵ＩＤ）を変更する方法の適用も可能である。
【００２６】
図１の例では、説明の都合上、対応関係３１ａを示す表の中に暗号鍵の符号を記載しているが、暗号鍵２１ａ、２２ａの鍵ＩＤがそれぞれＡ、Ｂである場合、例えば、ＡをＣ、ＢをＤに書き換えるだけで対応関係３１ａを更新することができる。この場合、制御部１２は、更新後の鍵ＩＤを処理装置２１、２２、３１に通知し、更新後の鍵ＩＤを用いて暗号処理を実行するように設定する。この変形例によれば、暗号鍵２１ａ、２２ａの入れ替えをせずに済むため、さらに迅速な対処が可能になる。
【００２７】
以上、第１実施形態について説明した。
＜２．第２実施形態＞
次に、第２実施形態について説明する。第２実施形態は、複数の領域を有する仮想ディスクファイルを領域毎に異なる暗号鍵で暗号化して管理するデータ保護システムに関する。また、第２実施形態は、後述するＩ／Ｏ処理サーバや仮想化ホストサーバで情報漏洩の可能性が生じたときに、漏洩リスクに対して迅速に対処する仕組みを開示する。
【００２８】
［２−１．システム］
まず、図２を参照しながら、第２実施形態に係るデータ保護システムについて説明する。図２は、第２実施形態に係るデータ保護システムの一例を示した図である。
【００２９】
図２に示すように、第２実施形態に係るデータ保護システムは、仮想化ホストサーバ１０１、１０２、Ｉ／Ｏ処理サーバ２０１、２０２、２０３、及びストレージ装置３００を有する。さらに、このデータ保護システムは、漏洩監視サーバ４０１、状態管理サーバ４０２、及びポータルサーバ４０３を有する。なお、仮想化ホストサーバの数は３以上であってもよい。また、Ｉ／Ｏ処理サーバの数は２又は４以上であってもよい。
【００３０】
仮想化ホストサーバ１０１、１０２は、仮想マシンを稼働させるコンピュータである。仮想マシンとは、コンピュータの動作をエミュレートするソフトウェアやフレームワーク、或いは、エミュレートされた仮想のコンピュータを言う。仮想マシン上ではＯＳ（Operating System）が動作し、そのＯＳ上で各種アプリケーションソフトウェアが動作しうる。仮想マシンは、ストレージ装置３００に格納される仮想ディスクファイルを利用する。
【００３１】
Ｉ／Ｏ処理サーバ２０１、２０２、２０３は、仮想化ホストサーバ１０１、１０２から仮想ディスクファイルに対するＩ／Ｏアクセスの要求（Ｗｒｉｔｅ要求／Ｒｅａｄ要求）を受け付ける。Ｉ／Ｏアクセスの要求を受け付けたＩ／Ｏ処理サーバ２０１、２０２、２０３は、受け付けた要求に応じて、ストレージ装置３００に格納された仮想ディスクファイルにアクセスする。そして、Ｉ／Ｏ処理サーバ２０１、２０２、２０３は、仮想ディスクファイルへアクセスした結果をＩ／Ｏアクセスの要求元に返す。
【００３２】
Ｉ／Ｏアクセスの実行時に、Ｉ／Ｏ処理サーバ２０１、２０２、２０３は、仮想ディスクファイルに対する暗号処理（暗号化／復号）を実行する。例えば、Ｗｒｉｔｅ要求を受け付けたＩ／Ｏ処理サーバ２０１は、Ｗｒｉｔｅ対象のデータを暗号化し、仮想ディスクファイルのデータとして暗号化したデータをストレージ装置３００に書き込む。また、Ｒｅａｄ要求を受け付けたＩ／Ｏ処理サーバ２０１は、Ｒｅａｄ対象として指定された仮想ディスクファイルのデータを復号し、復号したデータをＲｅａｄ要求の要求元へ返す。
【００３３】
ストレージ装置３００は、ＨＤＤやＳＳＤ（Solid State Drive）などの記憶装置を有する。例えば、ストレージ装置３００は、複数のＨＤＤを利用して冗長化したＲＡＩＤ（Redundant Arrays of Inexpensive Disks）装置、又は複数のＲＡＩＤ装置を接続したＲＡＩＤシステムである。ストレージ装置３００には、仮想化ホストサーバ１０１、１０２で稼働する仮想マシンの仮想ディスクファイルが格納される。
【００３４】
仮想化ホストサーバ１０１、１０２と、Ｉ／Ｏ処理サーバ２０１、２０２、２０３とは、Ｉ／Ｏアクセス用ネットワーク５０１を介して接続される。Ｉ／Ｏアクセス用ネットワーク５０１は、例えば、光回線やＬＡＮ（Local Area Network）などの通信回線を利用したネットワークである。また、Ｉ／Ｏ処理サーバ２０１、２０２、２０３とストレージ装置３００とは、ＳＡＮ（Storage Area Network）５０３を介して接続される。
【００３５】
仮想化ホストサーバ１０１、１０２及びＩ／Ｏ処理サーバ２０１、２０２、２０３と、漏洩監視サーバ４０１及び状態管理サーバ４０２とは、管理用ネットワーク５０２を介して接続される。管理用ネットワーク５０２は、例えば、光回線やＬＡＮなどの通信回線を利用したネットワークである。
【００３６】
漏洩監視サーバ４０１は、仮想化ホストサーバ１０１、１０２及びＩ／Ｏ処理サーバ２０１、２０２、２０３のそれぞれを対象に、情報漏洩の可能性がある操作が行われていないかを監視するコンピュータである。状態管理サーバ４０２は、仮想化ホストサーバ１０１、１０２で稼働する仮想マシンの仮想ディスクファイルを対象に、仮想ディスクファイルの暗号化状態を管理するコンピュータである。ポータルサーバ４０３は、仮想マシンを利用するユーザ向けのポータルサイトを提供するコンピュータである。このポータルサイトは、例えば、仮想マシンや仮想ディスクファイルの設定操作などを受け付ける。
【００３７】
（仮想ディスクファイルの領域、暗号鍵、マッピング情報）
第２実施形態に係るデータ保護システムでは仮想ディスクファイルが複数の領域に分割され、領域毎にデータの暗号処理に利用される暗号鍵が割り当てられる。
【００３８】
図３に示すように、仮想ディスクファイル３０１は、ヘッダ３０１ａ、及びデータ区間３０１ｂを有する。仮想マシンの利用するデータは、データ区間３０１ｂに格納される。図３の例では、データ区間３０１ｂが、領域Ａ１、Ａ２、…、Ａ５の５つの領域に分割されている。また、領域Ａ１、Ａ２、…、Ａ５には、それぞれ鍵Ｋ１、Ｋ２、…、Ｋ５（暗号鍵）が割り当てられている。なお、図３は、第２実施形態に係る仮想ディスクファイルの領域と、その領域の暗号化に用いる鍵との関係について説明するための図である。
【００３９】
例えば、領域Ａ１に格納されるデータは、鍵Ｋ１を利用して暗号化される。また、領域Ａ１に格納されたデータを読み出す場合、鍵Ｋ１を利用してデータが復号される。同様に、領域Ａ２、…、Ａ５に格納されるデータは、それぞれ鍵Ｋ２、…、Ｋ５を利用して暗号化される。また、領域Ａ２、…、Ａ５に格納されたデータを読み出す場合、それぞれ鍵Ｋ２、…、Ｋ５を利用してデータが復号される。
【００４０】
上記のような暗号処理を実行するため、Ｉ／Ｏ処理サーバ２０１、２０２、２０３は、図４に示すように、鍵Ｋ１、Ｋ２、…、Ｋ５のいずれかを保持している。また、仮想化ホストサーバ１０１、１０２は、Ｒｅａｄ要求又はＷｒｉｔｅ要求の対象となるデータの暗号処理を実行できるＩ／Ｏ処理サーバを特定するための情報（マッピング情報）を保持している。図４は、第２実施形態に係る仮想化ホストサーバ及びＩ／Ｏ処理サーバが保持する情報について説明するための図である。
【００４１】
図４の例では、仮想化ホストサーバ１０１、１０２がそれぞれマッピング情報１０１ａ、１０２ａを保持している。なお、説明の都合上、符号を分けているが、マッピング情報１０１ａ、１０２ａは同じ内容の情報である。
【００４２】
図４の例では、Ｉ／Ｏ処理サーバ２０１が鍵Ｋ１、Ｋ２を保持し、Ｉ／Ｏ処理サーバ２０２が鍵Ｋ３、Ｋ４を保持し、Ｉ／Ｏ処理サーバ２０３が鍵Ｋ５、Ｋ１を保持している。このように、複数のＩ／Ｏ処理サーバが同じ鍵（鍵Ｋ１）を保持していてもよい。
【００４３】
この場合、マッピング情報１０１ａ、１０２ａは、図４に示すように、領域Ａ１、鍵Ｋ１、Ｉ／Ｏ処理サーバ２０１、２０３（格納先）を対応付ける情報と、領域Ａ２、鍵Ｋ２、Ｉ／Ｏ処理サーバ２０１を対応付ける情報とを含む。また、マッピング情報１０１ａ、１０２ａは、領域Ａ３、鍵Ｋ３、Ｉ／Ｏ処理サーバ２０２を対応付ける情報と、領域Ａ４、鍵Ｋ４、Ｉ／Ｏ処理サーバ２０２を対応付ける情報とを含む。さらに、マッピング情報１０１ａ、１０２ａは、領域Ａ５、鍵Ｋ５、Ｉ／Ｏ処理サーバ２０３を対応付ける情報を含む。
【００４４】
なお、説明の都合上、領域、鍵、格納先の符号を用いてマッピング情報１０１ａ、１０２ａを表現しているが、領域を識別するための領域ＩＤ、暗号鍵を特定するための鍵ＩＤ、格納先を特定するためのアドレス情報などを利用して表現してもよい。
【００４５】
上記のように、仮想化ホストサーバ１０１、１０２がマッピング情報１０１ａ、１０２ａを保持し、Ｉ／Ｏ処理サーバ２０１、２０２、２０３が暗号鍵の実体を保持し、ストレージ装置３００が仮想ディスクファイル３０１を保持する。このように、仮想ディスクファイル３０１のデータを取得するために用いる暗号鍵、マッピング情報１０１ａ、１０２ａ、及びデータ本体が異なる場所に格納されることで、データが不正に取得されるリスクを低減することができる。
【００４６】
また、仮想ディスクファイル３０１が複数の領域Ａ１、Ａ２、…、Ａ５に分割され、領域毎に異なる暗号鍵が割り当てられることで、暗号鍵の漏洩リスクが生じた際に、新たな暗号鍵を利用して仮想ディスクファイル３０１を再暗号化する処理が軽減される。つまり、漏洩リスクが生じた暗号鍵に対応する領域だけを新たな暗号鍵で再暗号化すれば対処できるため、仮想ディスクファイル３０１全体を再暗号化する場合に比べて処理時間が短くなる。
【００４７】
また、マッピング情報１０１ａ、１０２ａの漏洩リスクが生じた場合、暗号鍵と、格納先との対応関係を変更し、マッピング情報１０１ａ、１０２ａを更新すれば、仮想ディスクファイル３０１の再暗号化を行うことなく漏洩リスクへ対処できる。そのため、再暗号化を伴う対処方法に比べて処理時間を大幅に短縮することができる。つまり、仮想ディスクファイル３０１を分割した領域毎に暗号鍵を設定したこと、及び暗号鍵、マッピング情報１０１ａ、１０２ａを分散配置したことで、漏洩リスクに対する迅速な対処を実現することが可能になる。
【００４８】
以上、データ保護システムについて説明した。
［２−２．ハードウェア］
次に、図５を参照しながら、上述したデータ保護システムに含まれる各種サーバの機能を実現可能なハードウェアについて説明する。図５は、第２実施形態に係る各種サーバの機能を実現可能なハードウェアの一例を示した図である。
【００４９】
仮想化ホストサーバ１０１、１０２、Ｉ／Ｏ処理サーバ２０１、２０２、２０３、漏洩監視サーバ４０１、状態管理サーバ４０２、及びポータルサーバ４０３が有する機能は、例えば、図５に示すハードウェア資源を用いて実現することが可能である。つまり、これらのサーバが有する機能は、コンピュータプログラムを用いて図５に示すハードウェアを制御することにより実現されうる。
【００５０】
図５に示すように、このハードウェアは、主に、ＣＰＵ９０２と、ＲＯＭ（Read Only Memory）９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０とを有する。さらに、このハードウェアは、外部バス９１２と、インターフェース９１４と、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６とを有する。
【００５１】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。ＲＡＭ９０６には、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。
【００５２】
これらの要素は、例えば、高速なデータ伝送が可能なホストバス９０８を介して相互に接続される。一方、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続される。また、入力部９１６としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部９１６としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。
【００５３】
出力部９１８としては、例えば、ＣＲＴ（Cathode Ray Tube）、ＬＣＤ（Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）、又はＥＬＤ（Electro-Luminescence Display）などのディスプレイ装置が用いられる。また、出力部９１８として、スピーカなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部９１８は、情報を視覚的又は聴覚的に出力することが可能な装置である。
【００５４】
記憶部９２０は、各種のデータを格納するための装置である。記憶部９２０としては、例えば、ＨＤＤなどの磁気記憶デバイスが用いられる。また、記憶部９２０として、ＳＳＤやＲＡＭディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。
【００５５】
ドライブ９２２は、着脱可能な記録媒体であるリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。
【００５６】
接続ポート９２４は、例えば、ＵＳＢ（Universal Serial Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small Computer System Interface）、ＲＳ−２３２Ｃポート、又は光オーディオ端子など、外部接続機器９３０を接続するためのポートである。外部接続機器９３０としては、例えば、プリンタなどが用いられる。
【００５７】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスである。通信部９２６としては、例えば、有線又は無線ＬＡＮ用の通信回路、ＷＵＳＢ（Wireless USB）用の通信回路、光通信用の通信回路やルータ、ＡＤＳＬ（Asymmetric Digital Subscriber Line）用の通信回路などが用いられる。通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークである。上述したＩ／Ｏアクセス用ネットワーク５０１、管理用ネットワーク５０２は、ネットワーク９３２の一例である。
【００５８】
以上、ハードウェアについて説明した。
［２−３．機能］
次に、仮想化ホストサーバ１０１、１０２、Ｉ／Ｏ処理サーバ２０１、２０２、２０３、漏洩監視サーバ４０１、及び状態管理サーバ４０２の機能について、さらに説明する。
【００５９】
（仮想化ホストサーバ）
まず、図６を参照しながら、仮想化ホストサーバ１０１、１０２の機能について説明する。図６は、第２実施形態に係る仮想化ホストサーバが有する機能の一例を示したブロック図である。
【００６０】
図６に示すように、仮想化ホストサーバ１０１は、記憶部１１１、仮想マシン制御部１１２、暗号化制御部１１３、及び漏洩監視部１１４を有する。
記憶部１１１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。仮想マシン制御部１１２、暗号化制御部１１３、及び漏洩監視部１１４の機能は、上述したＣＰＵ９０２などを用いて実現できる。
【００６１】
記憶部１１１には、マッピング情報１０１ａが格納される。マッピング情報１０１ａは、図７に示すように、仮想ディスクファイル名、領域、鍵ＩＤ、格納先、及び再暗号化フラグを対応付ける情報である。図７は、第２実施形態に係るマッピング情報の一例を示した図である。
【００６２】
仮想ディスクファイル名の欄には、仮想ディスクファイルの名称が記載される。領域の欄には、仮想ディスクファイルの領域を特定するための情報が記載される。例えば、領域の欄には、その領域の開始位置を示す開始アドレスと、終了位置を示す終了アドレスとが記載される。
【００６３】
鍵ＩＤの欄には、暗号鍵を識別するための識別情報（鍵ＩＤ）が記載される。図７に示すように、鍵ＩＤの欄には、通常鍵ＩＤの欄及び一時鍵ＩＤの欄がある。通常鍵ＩＤは、通常の運用時に利用される暗号鍵の鍵ＩＤである。一時鍵ＩＤは、漏洩リスクへの対処として暗号鍵本体又は鍵ＩＤを変更する際に一時的に設定される暗号鍵（一時鍵）の鍵ＩＤである。通常鍵ＩＤの更新や一時鍵ＩＤの設定については後述する。
【００６４】
格納先の欄には、暗号鍵の実体が格納されるＩ／Ｏ処理サーバの情報が記載される。再暗号化フラグは、対応する領域が再暗号化の対象であるか否かを示すフラグである。例えば、再暗号化フラグ「０」は、対応する領域が再暗号化の対象であることを示す。一方、再暗号化フラグ「１」は、対応する領域が再暗号化の対象でないことを示す。
【００６５】
仮想マシン制御部１１２は、仮想マシンを稼働させるハイパーバイザとして機能し、仮想マシンの動作を制御する。暗号化制御部１１３は、仮想マシンから仮想ディスクファイルへのＩ／Ｏアクセスが生じた場合に、Ｉ／Ｏ処理サーバ２０１、２０２、２０３のうちＩ／Ｏアクセスに対応するＩ／Ｏ処理サーバに暗号処理を依頼する。
【００６６】
漏洩監視部１１４は、マッピング情報１０１ａを含む情報の漏洩に繋がる操作を監視し、漏洩の可能性が検知された場合に漏洩リスクの発生を漏洩監視サーバ４０１に通知する。なお、暗号化制御部１１３、漏洩監視部１１４の機能は、ハイパーバイザが有する機能の一部として提供されてもよい。
【００６７】
仮想化ホストサーバ１０２は、図６に示すように、記憶部１２１、仮想マシン制御部１２２、暗号化制御部１２３、及び漏洩監視部１２４を有する。
記憶部１２１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。仮想マシン制御部１２２、暗号化制御部１２３、及び漏洩監視部１２４の機能は、上述したＣＰＵ９０２などを用いて実現できる。
【００６８】
記憶部１２１には、仮想化ホストサーバ１０１の記憶部１１１に格納されるマッピング情報１０１ａと同じ内容のマッピング情報１０２ａが格納される。また、仮想マシン制御部１２２、暗号化制御部１２３、漏洩監視部１２４は、それぞれ仮想マシン制御部１１２、暗号化制御部１１３、漏洩監視部１１４と同じ機能を有する。
【００６９】
（Ｉ／Ｏ処理サーバ）
次に、図８を参照しながら、Ｉ／Ｏ処理サーバ２０１、２０２、２０３の機能について説明する。図８は、第２実施形態に係るＩ／Ｏ処理サーバが有する機能の一例を示したブロック図である。
【００７０】
図８に示すように、Ｉ／Ｏ処理サーバ２０１は、記憶部２１１、暗号処理部２１２、及び漏洩検知部２１３を有する。
記憶部２１１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。暗号処理部２１２、及び漏洩検知部２１３の機能は、上述したＣＰＵ９０２などを用いて実現できる。
【００７１】
記憶部２１１には、鍵情報２１１ａが格納される。鍵情報２１１ａは、図９に示すように、鍵ＩＤと、暗号鍵の実体とを含む情報である。図９は、第２実施形態に係る鍵情報の一例を示した図である。鍵ＩＤの欄には、通常鍵ＩＤの欄と、一時鍵ＩＤの欄とがある。通常鍵ＩＤは、通常の運用時に利用される暗号鍵の鍵ＩＤである。一時鍵ＩＤは、一時鍵の鍵ＩＤである。暗号鍵の欄には、暗号鍵の実体となるデータが記載される。
【００７２】
暗号処理部２１２は、仮想化ホストサーバ１０１、１０２から受け付けたＩ／Ｏアクセスの要求に応じて暗号処理を実行する。
例えば、仮想化ホストサーバ１０１からＷｒｉｔｅ要求を受け付けた場合、暗号処理部２１２は、Ｗｒｉｔｅ要求で指定された鍵ＩＤの暗号鍵を用いて、仮想ディスクファイル３０１に書き込むデータを暗号化する。一方、Ｒｅａｄ要求を受け付けた場合、暗号処理部２１２は、Ｒｅａｄ要求で指定された鍵ＩＤの暗号鍵を用いて、指定された領域にあるデータを復号する。
【００７３】
漏洩検知部２１３は、鍵情報２１１ａを含む情報の漏洩に繋がる操作を監視し、漏洩の可能性が検知された場合に漏洩リスクの発生を漏洩監視サーバ４０１に通知する。
Ｉ／Ｏ処理サーバ２０２は、図８に示すように、記憶部２２１、暗号処理部２２２、及び漏洩検知部２２３を有する。Ｉ／Ｏ処理サーバ２０３は、記憶部２３１、暗号処理部２３２、及び漏洩検知部２３３を有する。
【００７４】
記憶部２２１、２３１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。暗号処理部２２２、２３２、及び漏洩検知部２２３、２３３の機能は、上述したＣＰＵ９０２などを用いて実現できる。
【００７５】
鍵情報２２１ａ、２３１ａは、鍵情報２１１ａと同様に、鍵ＩＤと暗号鍵の実体とを含む情報である。暗号処理部２２２、２３２、及び漏洩検知部２２３、２３３は、それぞれＩ／Ｏ処理サーバ２０１の暗号処理部２１２、及び漏洩検知部２１３と同じである。
【００７６】
（漏洩監視サーバ、状態管理サーバ）
次に、図１０を参照しながら、漏洩監視サーバ４０１、及び状態管理サーバ４０２の機能について説明する。図１０は、第２実施形態に係る漏洩監視サーバ及び状態管理サーバが有する機能の一例を示したブロック図である。
【００７７】
漏洩監視サーバ４０１は、監視状態制御部４１１を有する。監視状態制御部４１１の機能は、上述したＣＰＵ９０２などを用いて実現できる。
監視状態制御部４１１は、仮想化ホストサーバ１０１、１０２、及びＩ／Ｏ処理サーバ２０１、２０２、２０３に対し、情報漏洩の可能性がある操作の監視を開始させる制御を実行する。また、監視状態制御部４１１は、情報漏洩の可能性がある操作を検知した旨の通知（漏洩リスクの通知）を受けた場合に監視を停止させる制御を実行する。また、監視状態制御部４１１は、漏洩リスクに対する対処が完了した場合に、停止させていた監視を再開させる制御を実行する。
【００７８】
状態管理サーバ４０２は、記憶部４２１、状態制御部４２２、及び対処指示部４２３を有する。
記憶部４２１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。状態制御部４２２、及び対処指示部４２３の機能は、上述したＣＰＵ９０２などを用いて実現できる。
【００７９】
記憶部４２１には、状態情報４２１ａが格納される。状態情報４２１ａは、図１１に示すように、仮想ディスクファイル名と、暗号化フラグと、通常鍵ＩＤとを対応付ける情報である。図１１は、第２実施形態に係る状態情報の一例を示した図である。
【００８０】
仮想ディスクファイル名の欄には、仮想ディスクファイルの名称が記載される。暗号化フラグは、対応する仮想ディスクファイルが暗号化されているか否かを示すフラグである。例えば、暗号化フラグ「０」は暗号化されていないことを示し、暗号化フラグ「１」は暗号化されていることを示す。通常鍵ＩＤの欄には、対応する仮想ディスクファイルの暗号化に利用される暗号鍵（通常鍵）の鍵ＩＤ（通常鍵ＩＤ）が格納される。
【００８１】
状態制御部４２２は、ポータルサイト（ポータルサーバ４０３）を介して仮想ディスクファイルの作成依頼を受けると、その作成及び暗号化を仮想化ホストサーバ（例えば、仮想化ホストサーバ１０１）に依頼する。また、状態制御部４２２は、新規に作成される仮想ディスクファイルに関する情報（仮想ディスクファイル名、暗号化フラグ、通常鍵ＩＤ）を状態情報４２１ａに追加する。
【００８２】
対処指示部４２３は、漏洩監視サーバ４０１から漏洩リスクの発生を通知された際、仮想化ホストサーバ１０１、１０２、及びＩ／Ｏ処理サーバ２０１、２０２、２０３に対し、操作制限、鍵ＩＤの変更、暗号鍵の変更及び領域の再暗号化などの対処を指示する。なお、操作制限とは、メモリダンプの取得など、ユーザによる特定の操作を制限する制御である。また、対処が完了した場合、対処指示部４２３は、状態情報４２１ａを更新する。
【００８３】
以上、仮想化ホストサーバ１０１、１０２、Ｉ／Ｏ処理サーバ２０１、２０２、２０３、漏洩監視サーバ４０１、及び状態管理サーバ４０２の機能について説明した。
［２−４．処理の流れ］
次に、仮想ディスクファイルの作成と暗号化、Ｉ／Ｏ処理、及び、漏洩リスクへの対処（鍵ＩＤの変更処理、暗号鍵の変更処理）に関する処理の流れについて説明する。
【００８４】
（仮想ディスクファイルの作成と暗号化）
まず、図１２及び図１３を参照しながら、仮想ディスクファイルの作成と暗号化に関する処理の流れについて説明する。
【００８５】
図１２は、第２実施形態に係る仮想ディスクファイルの作成と暗号化に関する処理の流れを示した第１のシーケンス図である。図１３は、第２実施形態に係る仮想ディスクファイルの作成と暗号化に関する処理の流れを示した第２のシーケンス図である。
【００８６】
（Ｓ１０１）仮想マシンを利用するユーザは、ポータルサイトを介して仮想ディスクファイルの作成操作を行う。この操作を受け、ポータルサーバ４０３は、状態管理サーバ４０２に仮想ディスクファイルの作成（ファイル作成）を依頼する。
【００８７】
（Ｓ１０２）ポータルサーバ４０３からファイル作成の依頼を受け付けた状態管理サーバ４０２は、状態制御部４２２により、１つの仮想化ホストサーバ（図１２の例では仮想化ホストサーバ１０１）に対し、仮想ディスクファイルの作成を依頼する。
【００８８】
（Ｓ１０３）仮想化ホストサーバ１０１は、仮想マシン制御部１１２（ハイパーバイザ）により、仮想ディスクファイルを作成する。なお、仮想マシン制御部１１２により作成される仮想ディスクファイルは、暗号化されていない状態のファイルである。
【００８９】
（Ｓ１０４）仮想ディスクファイルの作成を完了した仮想化ホストサーバ１０１は、仮想マシン制御部１１２により、ファイル作成の完了を状態管理サーバ４０２に通知する。
（Ｓ１０５）ファイル作成の完了通知を受信した状態管理サーバ４０２は、状態制御部４２２により、仮想化ホストサーバ１０１の暗号化制御部１１３に対して仮想ディスクファイルの暗号化を依頼する。
【００９０】
（Ｓ１０６）状態管理サーバ４０２から暗号化の依頼を受け付けた仮想化ホストサーバ１０１は、暗号化制御部１１３により、仮想ディスクファイルに設定する複数の領域を決定する。つまり、暗号化制御部１１３は、仮想ディスクファイルを複数の領域に分割する。なお、仮想ディスクファイルに設定される領域の数は、Ｉ／Ｏ処理サーバの数や再暗号化にかかる時間の許容値などの予め設定された条件に基づいて決定される。また、各領域のサイズは、任意に設定することができる。
【００９１】
（Ｓ１０７）仮想化ホストサーバ１０１は、暗号化制御部１１３により、仮想ディスクファイルに設定された複数の領域のそれぞれに対応する暗号鍵を作成する。この暗号鍵は、対応する領域の暗号処理（暗号化、復号）に利用される。また、暗号化制御部１１３は、作成した複数の暗号鍵のそれぞれについて、暗号鍵の識別に用いる鍵ＩＤを決定する。
【００９２】
（Ｓ１０８）仮想化ホストサーバ１０１は、暗号化制御部１１３により、作成した暗号鍵を用いて仮想ディスクファイルの各領域を暗号化する。
（Ｓ１０９）仮想化ホストサーバ１０１は、暗号化制御部１１３により、作成した暗号鍵の格納先（Ｉ／Ｏ処理サーバ）を決定する。つまり、暗号化制御部１１３は、暗号鍵の配置を決定する。このとき、暗号化制御部１１３は、１つのＩ／Ｏ処理サーバに同じ暗号鍵が重複して配置されず、かつ、全ての暗号鍵がいずれかのＩ／Ｏ処理サーバに配置されるように暗号鍵の配置を決定する。
【００９３】
例えば、暗号鍵の数がＮ（Ｎは２以上の自然数）、Ｉ／Ｏ処理サーバの数がＭ（Ｍは２以上の自然数）の場合、暗号化制御部１１３は、１つのＩ／Ｏ処理サーバが保持する暗号鍵の数Ｗ（Ｗ＝Ｎ／Ｍ）を計算する。そして、暗号化制御部１１３は、異なるＷ個の暗号鍵が各Ｉ／Ｏ処理サーバに格納されるように配置する。なお、Ｗは管理者により予め設定されていてもよい。
【００９４】
（Ｓ１１０）仮想化ホストサーバ１０１は、暗号化制御部１１３により、暗号鍵及び鍵ＩＤを含む鍵情報をＩ／Ｏ処理サーバ２０１に送信する。このとき、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０１への配置が決定された暗号鍵の実体と、その暗号鍵に対応する鍵ＩＤとを含む鍵情報をＩ／Ｏ処理サーバ２０１に送信する。
【００９５】
（Ｓ１１１）仮想化ホストサーバ１０１は、暗号化制御部１１３により、暗号鍵及び鍵ＩＤを含む鍵情報をＩ／Ｏ処理サーバ２０３に送信する。このとき、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０３への配置が決定された暗号鍵の実体と、その暗号鍵に対応する鍵ＩＤとを含む鍵情報をＩ／Ｏ処理サーバ２０３に送信する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【００９６】
（Ｓ１１２、Ｓ１１３）Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、仮想化ホストサーバ１０１から受信した鍵情報の暗号鍵及び鍵ＩＤを記憶部２１１に格納する。つまり、暗号処理部２１２は、受信した暗号鍵及び鍵ＩＤを鍵情報２１１ａ（図９を参照）に追加する。そして、暗号処理部２１２は、鍵情報の格納が完了した旨を仮想化ホストサーバ１０１に通知する。
【００９７】
（Ｓ１１４、Ｓ１１５）Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、仮想化ホストサーバ１０１から受信した鍵情報の暗号鍵及び鍵ＩＤを記憶部２３１に格納する。つまり、暗号処理部２３２は、受信した暗号鍵及び鍵ＩＤを鍵情報２３１ａに追加する。そして、暗号処理部２３２は、鍵情報の格納が完了した旨を仮想化ホストサーバ１０１に通知する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【００９８】
（Ｓ１１６）仮想化ホストサーバ１０１は、全てのＩ／Ｏ処理サーバ（Ｉ／Ｏ処理サーバ２０１、…、２０３）から鍵情報の格納が完了した旨の通知を受けるまで待機する。全てのＩ／Ｏ処理サーバから通知を受けた場合、仮想化ホストサーバ１０１は、暗号化制御部１１３により、作成した暗号鍵を消去する。このように、Ｉ／Ｏ処理サーバへの配置が完了すると仮想化ホストサーバ１０１から暗号鍵が消去されるため、以後、仮想化ホストサーバ１０１のメモリダンプが解析されても暗号鍵の漏洩は生じない。
【００９９】
（Ｓ１１７）仮想化ホストサーバ１０１は、暗号化制御部１１３により、作成した暗号鍵に関する情報をマッピング情報１０１ａ（図７を参照）に追加して、マッピング情報１０１ａを更新する。
【０１００】
暗号化制御部１１３は、新たに作成した仮想ディスクファイルに設定された仮想ディスクファイル名に対応付けて、Ｓ１０６で領域を決定する際に得られる各領域の開始アドレス及び終了アドレスをマッピング情報１０１ａに追加する。また、暗号化制御部１１３は、各領域に対応する暗号鍵の鍵ＩＤを通常鍵ＩＤとしてマッピング情報１０１ａに追加し、その暗号鍵を配置したＩ／Ｏ処理サーバの情報を格納先としてマッピング情報１０１ａに追加する。なお、再暗号化フラグは「１」（再暗号化の対象外）に設定される。
【０１０１】
（Ｓ１１８）仮想化ホストサーバ１０１は、暗号化制御部１１３により、仮想化ホストサーバ１０２にマッピング情報１０２ａの更新を依頼する。このとき、暗号化制御部１１３は、更新後のマッピング情報１０１ａを仮想化ホストサーバ１０２に送信する。なお、更新部分の情報だけが仮想化ホストサーバ１０２に送信されてもよい。
【０１０２】
（Ｓ１１９）仮想化ホストサーバ１０２は、暗号化制御部１２３により、仮想化ホストサーバ１０１から受信した更新後のマッピング情報１０１ａで、記憶部１２１に格納されているマッピング情報１０２ａを更新する。この処理により、仮想化ホストサーバ１０１、１０２が保持するマッピング情報の同期が完了する。
【０１０３】
（Ｓ１２０）仮想化ホストサーバ１０２は、暗号化制御部１２３により、マッピング情報１０２ａの更新が完了した旨を仮想化ホストサーバ１０１に通知する。
（Ｓ１２１）仮想化ホストサーバ１０１は、暗号化制御部１１３により、仮想ディスクファイルの暗号化が完了した旨を状態管理サーバ４０２に通知する。このとき、暗号化制御部１１３は、仮想ディスクファイルの暗号化に用いた暗号鍵の鍵ＩＤのリストを状態管理サーバ４０２に通知する。
【０１０４】
（Ｓ１２２）仮想化ホストサーバ１０１から暗号化完了の通知を受信した状態管理サーバ４０２は、状態制御部４２２により、状態情報４２１ａ（図１１を参照）を更新する。
状態制御部４２２は、新たに作成された仮想ディスクファイルの仮想ディスクファイル名を状態情報４２１ａに追加し、対応する暗号化フラグを「１」（暗号化済み）に設定する。また、状態制御部４２２は、対応する通常鍵ＩＤの欄に、仮想化ホストサーバ１０１から通知された鍵ＩＤのリストを記載する。
【０１０５】
（Ｓ１２３）状態管理サーバ４０２は、状態制御部４２２により、暗号化された仮想ディスクファイルの作成が完了した旨をポータルサーバ４０３に通知する。そして、ポータルサーバ４０３が提供するポータルサイトを介してユーザに仮想ディスクファイルの作成完了が通知される。Ｓ１２３の処理が完了すると、図１２及び図１３に示した一連の処理は終了する。
【０１０６】
（Ｉ／Ｏ処理）
次に、図１４を参照しながら、Ｉ／Ｏ処理（Ｒｅａｄ要求／Ｗｒｉｔｅ要求に応じた処理）の流れについて説明する。図１４は、第２実施形態に係るＩ／Ｏ処理の流れを示したシーケンス図である。
【０１０７】
（Ｓ１３１）仮想化ホストサーバ１０１の仮想マシン制御部１１２が稼働させる仮想マシン内で動作するゲストＯＳからＩ／Ｏ命令（Ｒｅａｄ要求／Ｗｒｉｔｅ要求）が発行された場合、仮想マシン制御部１１２は、そのＩ／Ｏ命令を受け付ける。
【０１０８】
（Ｓ１３２）仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ命令の対象となる仮想ディスクファイルの領域（対象領域）を特定する。また、暗号化制御部１１３は、特定した対象領域毎にＩ／Ｏ命令を分割する。例えば、鍵ＩＤ「ｋ１０１」に対応する領域Ａ１と、鍵ＩＤ「ｋ１０２」に対応する領域Ａ２とが対象領域の場合、暗号化制御部１１３は、領域Ａ１向けのＩ／Ｏ命令と領域Ａ２向けのＩ／Ｏ命令とを生成する。
【０１０９】
（Ｓ１３３）仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ処理サーバ２０１に対し、Ｉ／Ｏ処理サーバ２０１が保持する暗号鍵の鍵ＩＤに対応する領域向けのＩ／Ｏ命令を送信する。つまり、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０１が保持する暗号鍵で暗号処理が可能な対象領域のＩ／Ｏ処理をＩ／Ｏ処理サーバ２０１に依頼する。このとき、暗号化制御部１１３は、マッピング情報１０１ａを参照し、対象領域に関する再暗号化フラグの情報（フラグ情報）をＩ／Ｏ処理サーバ２０１に送信する。
【０１１０】
（Ｓ１３４）仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ処理サーバ２０３に対し、Ｉ／Ｏ処理サーバ２０３が保持する暗号鍵の鍵ＩＤに対応する領域向けのＩ／Ｏ命令を送信する。つまり、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０３が保持する暗号鍵で暗号処理が可能な対象領域のＩ／Ｏ処理をＩ／Ｏ処理サーバ２０３に依頼する。このとき、暗号化制御部１１３は、マッピング情報１０１ａを参照し、対象領域に関する再暗号化フラグの情報（フラグ情報）をＩ／Ｏ処理サーバ２０３に送信する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１１１】
（Ｓ１３５）Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、仮想化ホストサーバ１０１から受信したＩ／Ｏ処理の依頼に応じたストレージ装置３００に対するＩ／Ｏ処理を実行する。なお、Ｓ１３５でＩ／Ｏ処理サーバ２０１が実行する処理の流れについては後段において詳述する。Ｉ／Ｏ処理が完了すると、暗号処理部２１２は、Ｉ／Ｏ処理の結果を仮想化ホストサーバ１０１に返す。
【０１１２】
（Ｓ１３６）後述するように、Ｉ／Ｏ処理サーバ２０１が実行するＩ／Ｏ処理の中で、対象領域の再暗号化が実施されうる。そのため、Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、再暗号化が実施された場合に更新される再暗号化フラグの情報（フラグ情報）を仮想化ホストサーバ１０１に送信する。
【０１１３】
（Ｓ１３７）Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、仮想化ホストサーバ１０１から受信したＩ／Ｏ処理の依頼に応じたストレージ装置３００に対するＩ／Ｏ処理を実行する。なお、Ｓ１３７でＩ／Ｏ処理サーバ２０３が実行する処理の流れは、Ｓ１３５でＩ／Ｏ処理サーバ２０１が実行する処理の流れと同様である。Ｉ／Ｏ処理が完了すると、暗号処理部２３２は、Ｉ／Ｏ処理の結果を仮想化ホストサーバ１０１に返す。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１１４】
（Ｓ１３８）Ｉ／Ｏ処理サーバ２０３が実行するＩ／Ｏ処理の中で、対象領域の再暗号化が実施されうる。そのため、Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、再暗号化が実施された場合に更新される再暗号化フラグの情報（フラグ情報）を仮想化ホストサーバ１０１に送信する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１１５】
（Ｓ１３９）仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ処理サーバ２０１、２０２、２０３から分割したＩ／Ｏ命令に対するＩ／Ｏ処理の結果及びフラグ情報を受信する。なお、暗号化制御部１１３は、あるＩ／Ｏ処理サーバからＩ／Ｏ処理の結果を受信できずに一定時間が経過した場合、そのＩ／Ｏ処理サーバと同じ暗号鍵を保持する他のＩ／Ｏ処理サーバに同じＩ／Ｏ命令を送信する。
【０１１６】
全てのＩ／Ｏ処理の結果を受信した暗号化制御部１１３は、受信したＩ／Ｏ処理の結果を１つに統合する。
例えば、Ｉ／Ｏ命令がＲｅａｄ要求である場合、暗号化制御部１１３は、各対象領域から読み出されたデータを統合する。また、Ｉ／Ｏ命令がＷｒｉｔｅ要求である場合、暗号化制御部１１３は、各対象領域に対する書き込み完了の通知を統合する。そして、暗号化制御部１１３は、仮想マシン制御部１１２を介して、統合したＩ／Ｏ処理の結果をゲストＯＳに通知する。
【０１１７】
なお、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０１、２０２、２０３から受信したフラグ情報に基づいてマッピング情報１０１ａの再暗号化フラグを更新する。また、暗号化制御部１１３は、更新後のマッピング情報１０１ａを仮想化ホストサーバ１０２に送信し、マッピング情報１０２ａの更新を依頼する（非図示）。マッピング情報１０２ａの更新が完了した旨の通知が仮想化ホストサーバ１０２から仮想化ホストサーバ１０１へ到達すると、図１４に示した一連の処理は終了する。
【０１１８】
（Ｉ／Ｏ処理中に再暗号化を進める仕組み）
ここで、図１５及び図１６を参照しながら、Ｉ／Ｏ処理サーバによるデータの読み書きに関する処理及び再暗号化に関する処理（Ｓ１３５の処理に対応）の流れについて、さらに説明する。なお、Ｉ／Ｏ処理サーバ２０３が実行するＳ１３７の処理の流れも同様であるため、Ｓ１３７の処理については、さらなる説明を省略する。
【０１１９】
さて、暗号鍵の漏洩リスクが生じた場合、暗号鍵が変更され、新しい暗号鍵でデータが暗号化される。この処理が再暗号化である。
漏洩リスクが生じた際にＩ／Ｏ処理を停止し、暗号鍵の変更と再暗号化とを迅速に完了させることは安全性の確保に有用である。一方、漏洩が確定していない段階で頻繁にＩ／Ｏ処理が停止することはＩ／Ｏ処理の停滞を招き、運用に支障が生じうる。こうした事情に鑑み、図１５及び図１６に示した処理は、Ｉ／Ｏ処理が発生したタイミングで対象領域の再暗号化が行われる仕組みを採用している。
【０１２０】
図１５は、第２実施形態に係るＩ／Ｏ処理の中で、Ｉ／Ｏ処理サーバによるデータの読み書きに関する処理及び再暗号化に関する処理の流れを示した第１のフロー図である。図１６は、第２実施形態に係るＩ／Ｏ処理の中で、Ｉ／Ｏ処理サーバによるデータの読み書きに関する処理及び再暗号化に関する処理の流れを示した第２のフロー図である。なお、図１５及び図１６に示す処理は主に暗号処理部２１２が実行する。
【０１２１】
（Ｓ１５１）暗号処理部２１２は、仮想化ホストサーバ１０１から受信したフラグ情報に基づいて、対象領域が再暗号化の対象であるか否かを判定する。対象領域の再暗号化フラグが「０」の場合、暗号処理部２１２は、対象領域が再暗号化の対象であると判定する。一方、対象領域の再暗号化フラグが「１」の場合、暗号処理部２１２は、対象領域が再暗号化の対象ではないと判定する。
【０１２２】
対象領域が再暗号化の対象である場合、処理はＳ１５２へと進む。一方、対象領域が再暗号化の対象ではない場合、処理はＳ１６０へと進む。
（Ｓ１５２）暗号処理部２１２は、対象領域のデータをストレージ装置３００から読み出し、読み出したデータを古い鍵で復号する。
【０１２３】
（Ｓ１５３）暗号処理部２１２は、Ｉ／Ｏ命令がＲｅａｄ要求であるかを判定する。Ｉ／Ｏ命令がＲｅａｄ要求である場合、処理はＳ１５４へと進む。一方、Ｉ／Ｏ命令がＲｅａｄ要求でない場合（Ｗｒｉｔｅ要求である場合）、処理はＳ１５６へと進む。
【０１２４】
（Ｓ１５４）暗号処理部２１２は、古い鍵で復号した対象領域のデータのうちＲｅａｄ要求で指定されたデータ（Ｒｅａｄ対象のデータ）を仮想化ホストサーバ１０１にＩ／Ｏ処理の結果として返す。
【０１２５】
（Ｓ１５５）暗号処理部２１２は、古い鍵で復号した対象領域のデータを新しい鍵で暗号化し、暗号化したデータをストレージ装置３００に書き込む。この処理により、対象領域のデータは、新しい鍵で暗号化されたデータに置き換えられる。つまり、対象領域の再暗号化が完了する。再暗号化が完了した場合、暗号処理部２１２は、古い鍵を削除する。Ｓ１５５の処理が完了すると、処理はＳ１５９へと進む。
【０１２６】
（Ｓ１５６）暗号処理部２１２は、古い鍵で復号した対象領域のデータを新しい鍵で暗号化し、暗号化したデータをストレージ装置３００に書き込む。この処理により、対象領域のデータは、新しい鍵で暗号化されたデータに置き換えられる。つまり、対象領域の再暗号化が完了する。再暗号化が完了した場合、暗号処理部２１２は、古い鍵を削除する。
【０１２７】
（Ｓ１５７）暗号処理部２１２は、Ｗｒｉｔｅ要求で指定されたデータ（Ｗｒｉｔｅ対象のデータ）を新しい鍵で暗号化する。
（Ｓ１５８）暗号処理部２１２は、暗号化したＷｒｉｔｅ対象のデータをストレージ装置３００の対象領域に書き込む。そして、暗号処理部２１２は、仮想化ホストサーバ１０１に対し、Ｗｒｉｔｅ対象のデータの書き込みが完了した旨をＩ／Ｏ処理の結果として通知する。
【０１２８】
（Ｓ１５９）暗号処理部２１２は、対象領域の再暗号化フラグが「１」（再暗号化の完了）であることを示すフラグ情報を設定する。このフラグ情報が仮想化ホストサーバ１０１に通知されることで、マッピング情報１０１ａ、１０２ａの再暗号化フラグが更新される。Ｓ１５９の処理が完了すると、図１５及び図１６に示した一連の処理は終了する。
【０１２９】
（Ｓ１６０）暗号処理部２１２は、Ｉ／Ｏ命令がＲｅａｄ要求であるかを判定する。Ｉ／Ｏ命令がＲｅａｄ要求である場合、処理はＳ１６１へと進む。一方、Ｉ／Ｏ命令がＲｅａｄ要求でない場合（Ｗｒｉｔｅ要求）である場合、処理はＳ１６３へと進む。
【０１３０】
（Ｓ１６１）暗号処理部２１２は、ストレージ装置３００から対象領域のデータを読み出し、読み出したデータを通常鍵（通常鍵ＩＤに対応する暗号鍵）で復号する。なお、対象領域が再暗号化の対象ではない場合、Ｉ／Ｏ処理時には通常鍵を用いて暗号処理が実行される。また、対象領域に対応する古い鍵は既に削除されていることが好ましい。
【０１３１】
（Ｓ１６２）暗号処理部２１２は、通常鍵で復号した対象領域のデータのうちＲｅａｄ対象のデータを仮想化ホストサーバ１０１に返す。Ｓ１６２の処理が完了すると、図１５及び図１６に示した一連の処理は終了する。
【０１３２】
（Ｓ１６３）暗号処理部２１２は、通常鍵でＷｒｉｔｅ対象のデータを暗号化する。
（Ｓ１６４）暗号処理部２１２は、通常鍵で暗号化したＷｒｉｔｅ対象のデータをストレージ装置３００の対象領域に書き込む。そして、暗号処理部２１２は、Ｗｒｉｔｅ対象のデータの書き込みが完了した旨をＩ／Ｏ処理の結果として仮想化ホストサーバ１０１に通知する。Ｓ１６４の処理が完了すると、図１５及び図１６に示した一連の処理は終了する。
【０１３３】
（鍵ＩＤの変更処理：仮想化ホストサーバにおける漏洩リスクへの対処）
次に、図１７及び図１８を参照しながら、鍵ＩＤの変更処理の流れについて説明する。この処理は、仮想化ホストサーバにおいて漏洩リスクが生じた場合の対処に関する。
【０１３４】
図１７は、第２実施形態に係る鍵ＩＤの変更処理の流れを示した第１のシーケンス図である。図１８は、第２実施形態に係る鍵ＩＤの変更処理の流れを示した第２のシーケンス図である。
【０１３５】
（Ｓ１７１）漏洩監視サーバ４０１は、監視状態制御部４１１により、仮想化ホストサーバ１０１の漏洩監視部１１４に対して監視の開始を命令する。例えば、監視状態制御部４１１は、漏洩監視部１１４に対し、マッピング情報１０１ａの漏洩リスクがある操作を監視するように命令する。この命令により、漏洩監視部１１４による監視が開始される。
【０１３６】
漏洩リスクのある操作としては、例えば、メモリダンプの採取やカーネルモードデバッグなどの操作がある。メモリダンプの採取は、メモリダンプファイルの有無やＯＳのイベントログを確認することで検知できる。カーネルモードデバッグの実行は、カーネルモードデバッグフラグが有効かを確認することで検知できる。
【０１３７】
（Ｓ１７２）漏洩監視サーバ４０１は、監視状態制御部４１１により、仮想化ホストサーバ１０２の漏洩監視部１２４に対して監視の開始を命令する。例えば、監視状態制御部４１１は、漏洩監視部１２４に対し、マッピング情報１０２ａの漏洩リスクがある操作を監視するように命令する。この命令により、漏洩監視部１２４による監視が開始される。
【０１３８】
（Ｓ１７３、Ｓ１７４）仮想化ホストサーバ１０１は、漏洩監視部１１４により、漏洩リスクがある操作を検知する。この場合、漏洩監視部１１４は、漏洩監視サーバ４０１に対してマッピング情報１０１ａが漏洩した可能性（漏洩リスク）を通知する。
【０１３９】
（Ｓ１７５）漏洩リスクの通知を受けた漏洩監視サーバ４０１は、監視状態制御部４１１により、仮想化ホストサーバ１０１に対して監視の停止を命令する。
（Ｓ１７６）漏洩リスクの通知を受けた漏洩監視サーバ４０１は、監視状態制御部４１１により、仮想化ホストサーバ１０２に監視の停止を命令する。
【０１４０】
（Ｓ１７７）漏洩監視サーバ４０１から監視の停止を命令された仮想化ホストサーバ１０１は、漏洩監視部１１４により、マッピング情報１０１ａの漏洩リスクがある操作の監視を停止する。なお、この例では漏洩監視部１１４が漏洩リスクを検知しているため、漏洩監視部１１４は、漏洩監視サーバ４０１から命令を受けずに自律的に監視を停止してもよい。
【０１４１】
（Ｓ１７８）漏洩監視サーバ４０１から監視の停止を命令された仮想化ホストサーバ１０２は、漏洩監視部１２４により、マッピング情報１０２ａの漏洩リスクがある操作の監視を停止する。
【０１４２】
（Ｓ１７９）漏洩監視サーバ４０１は、監視状態制御部４１１により、マッピング情報１０１ａの漏洩リスクが発生した旨を状態管理サーバ４０２に通知する。つまり、監視状態制御部４１１は、仮想化ホストサーバ１０１に漏洩リスクが生じた旨を通知する。
【０１４３】
（Ｓ１８０）状態管理サーバ４０２は、対処指示部４２３により、一時鍵ＩＤを生成する。一時鍵ＩＤは、マッピング情報１０１ａに含まれる通常鍵ＩＤの欄に記載された鍵ＩＤを代替するための鍵ＩＤである。対処指示部４２３は、全ての領域について、領域毎に異なる一時鍵ＩＤを生成する。このとき、対処指示部４２３は、各領域に対応する既存の通常鍵ＩＤと新たに生成した一時鍵ＩＤとが異なるように一時鍵ＩＤを決定する。
【０１４４】
なお、各領域に対応する鍵ＩＤが変更できればよいため、通常鍵ＩＤを一時鍵ＩＤに流用してもよい。例えば、対処指示部４２３は、領域Ａ１に通常鍵ＩＤ「ｋ１０１」、領域Ａ２に通常鍵ＩＤ「ｋ１０２」が割り当てられている場合、領域Ａ１の一時鍵ＩＤを「ｋ１０２」、領域Ａ２の一時鍵ＩＤを「ｋ１０１」に決定してもよい。
【０１４５】
（Ｓ１８１）状態管理サーバ４０２は、対処指示部４２３により、鍵ＩＤの変更を仮想化ホストサーバ１０１に依頼する。このとき、対処指示部４２３は、Ｓ１８０で生成した一時鍵ＩＤの情報と、一時鍵ＩＤと領域との対応関係を示す情報とを仮想化ホストサーバ１０１に送信する。
【０１４６】
（Ｓ１８２）状態管理サーバ４０２は、対処指示部４２３により、鍵ＩＤの変更を仮想化ホストサーバ１０２に依頼する。このとき、対処指示部４２３は、Ｓ１８０で生成した一時鍵ＩＤの情報と、一時鍵ＩＤと領域との対応関係を示す情報とを仮想化ホストサーバ１０１に送信する。
【０１４７】
（Ｓ１８３）鍵ＩＤの変更依頼を受けた仮想化ホストサーバ１０１は、暗号化制御部１１３により、マッピング情報１０１ａに一時鍵ＩＤを設定する。つまり、暗号化制御部１１３は、状態管理サーバ４０２から受信した一時鍵ＩＤと領域との対応関係を示す情報に基づいて、マッピング情報１０１ａに含まれる一時鍵ＩＤの欄（図７を参照）に一時鍵ＩＤを記載する。この処理により、マッピング情報１０１ａの各領域に対応する鍵ＩＤの欄には、通常鍵ＩＤと一時鍵ＩＤとが記載された状態になる。
【０１４８】
（Ｓ１８４）鍵ＩＤの変更依頼を受けた仮想化ホストサーバ１０２は、暗号化制御部１２３により、マッピング情報１０２ａに一時鍵ＩＤを設定する。つまり、暗号化制御部１２３は、状態管理サーバ４０２から受信した一時鍵ＩＤと領域との対応関係を示す情報に基づいて、マッピング情報１０２ａに含まれる一時鍵ＩＤの欄に一時鍵ＩＤを記載する。この処理により、マッピング情報１０２ａの各領域に対応する鍵ＩＤの欄には、通常鍵ＩＤと一時鍵ＩＤとが記載された状態になる。
【０１４９】
（Ｓ１８５）仮想化ホストサーバ１０１は、暗号化制御部１１３により、一時鍵ＩＤが生成された旨と、一時鍵ＩＤと通常鍵ＩＤとの対応関係をＩ／Ｏ処理サーバ２０１に通知する。このとき、暗号化制御部１１３は、マッピング情報１０１ａを参照し、Ｉ／Ｏ処理サーバ２０１が保持する暗号鍵に対応する一時鍵ＩＤの情報を送信する。
【０１５０】
（Ｓ１８６）仮想化ホストサーバ１０１は、暗号化制御部１１３により、一時鍵ＩＤが生成された旨と、一時鍵ＩＤと通常鍵ＩＤとの対応関係をＩ／Ｏ処理サーバ２０３に通知する。このとき、暗号化制御部１１３は、マッピング情報１０１ａを参照し、Ｉ／Ｏ処理サーバ２０３が保持する暗号鍵に対応する一時鍵ＩＤの情報を送信する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１５１】
（Ｓ１８７）Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、仮想化ホストサーバ１０１から受信した一時鍵ＩＤの情報に基づいて鍵情報２１１ａを更新する。つまり、暗号処理部２１２は、一時鍵ＩＤと通常鍵ＩＤとの対応関係に基づいて暗号鍵を特定し、特定した暗号鍵に対応する一時鍵ＩＤの欄に、仮想化ホストサーバ１０１から通知された一時鍵ＩＤを記載する。
【０１５２】
（Ｓ１８８）Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、仮想化ホストサーバ１０１から受信した一時鍵ＩＤの情報に基づいて鍵情報２３１ａを更新する。つまり、暗号処理部２３２は、一時鍵ＩＤと通常鍵ＩＤとの対応関係に基づいて暗号鍵を特定し、特定した暗号鍵に対応する一時鍵ＩＤの欄に、仮想化ホストサーバ１０１から通知された一時鍵ＩＤを記載する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１５３】
（Ｓ１８９）Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、鍵情報２１１ａの更新が完了した旨の通知を仮想化ホストサーバ１０１に送信する。
（Ｓ１９０）Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、鍵情報２３１ａの更新が完了した旨の通知を仮想化ホストサーバ１０１に送信する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１５４】
（Ｓ１９１）Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、鍵情報２１１ａの更新が完了した旨の通知を仮想化ホストサーバ１０２に送信する。
（Ｓ１９２）Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、鍵情報２３１ａの更新が完了した旨の通知を仮想化ホストサーバ１０２に送信する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１５５】
（Ｓ１９３、Ｓ１９４）Ｉ／Ｏ処理サーバ２０１、２０２、２０３から鍵情報の更新が完了した旨の通知を受信した仮想化ホストサーバ１０１は、暗号化制御部１１３により、マッピング情報１０１ａに記載されている通常鍵ＩＤを一時鍵ＩＤで更新する。つまり、暗号化制御部１１３は、各領域について、マッピング情報１０１ａの一時鍵ＩＤの欄に記載された鍵ＩＤを通常鍵ＩＤの欄に記載する。そして、暗号化制御部１１３は、マッピング情報１０１ａの一時鍵ＩＤの欄に記載された鍵ＩＤを削除する。
【０１５６】
（Ｓ１９５）仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ処理サーバ２０１に対して通常鍵ＩＤの設定（一時鍵ＩＤを通常鍵ＩＤに置き換え、一時鍵ＩＤを削除する処理）を依頼する。
【０１５７】
（Ｓ１９６）仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ処理サーバ２０３に対して通常鍵ＩＤの設定（一時鍵ＩＤを通常鍵ＩＤに置き換え、一時鍵ＩＤを削除する処理）を依頼する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１５８】
（Ｓ１９７、Ｓ１９８）仮想化ホストサーバ１０１から通常鍵ＩＤの設定依頼を受けたＩ／Ｏ処理サーバ２０１は、暗号処理部２１２により、鍵情報２１１ａの通常鍵ＩＤを一時鍵ＩＤで置き換え、一時鍵ＩＤを削除する処理を実行する。
【０１５９】
（Ｓ１９９、Ｓ２００）仮想化ホストサーバ１０１から通常鍵ＩＤの設定依頼を受けたＩ／Ｏ処理サーバ２０３は、暗号処理部２３２により、鍵情報２３１ａの通常鍵ＩＤを一時鍵ＩＤで置き換え、一時鍵ＩＤを削除する処理を実行する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１６０】
（Ｓ２０１）Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、通常鍵ＩＤの設定が完了した旨を仮想化ホストサーバ１０１に通知する。
（Ｓ２０２）Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、通常鍵ＩＤの設定が完了した旨を仮想化ホストサーバ１０１に通知する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１６１】
（Ｓ２０３）Ｉ／Ｏ処理サーバ２０１、２０２、２０３から通常鍵ＩＤの設定が完了した旨の通知を受けた仮想化ホストサーバ１０１は、暗号化制御部１１３により、鍵ＩＤの変更が完了した旨の通知を状態管理サーバ４０２に送信する。
【０１６２】
（Ｓ２０４、Ｓ２０５）Ｉ／Ｏ処理サーバ２０１、２０２、２０３から鍵情報の更新が完了した旨の通知を受信した仮想化ホストサーバ１０２は、暗号化制御部１２３により、マッピング情報１０２ａに記載されている通常鍵ＩＤを一時鍵ＩＤで更新する。
【０１６３】
つまり、暗号化制御部１２３は、各領域について、マッピング情報１０２ａの一時鍵ＩＤの欄に記載された鍵ＩＤを通常鍵ＩＤの欄に記載する。そして、暗号化制御部１２３は、マッピング情報１０２ａの一時鍵ＩＤの欄に記載された鍵ＩＤを削除する。
【０１６４】
（Ｓ２０６）仮想化ホストサーバ１０２は、暗号化制御部１２３により、鍵ＩＤの変更が完了した旨の通知を状態管理サーバ４０２に送信する。
（Ｓ２０７）状態管理サーバ４０２は、対処指示部４２３により、全ての仮想化ホストサーバ（仮想化ホストサーバ１０１、１０２）から鍵ＩＤの変更が完了した旨の通知を受けるまで待機する。そして、仮想化ホストサーバ１０１、１０２から通知を受けた場合、対処指示部４２３は、鍵ＩＤの変更が完了した旨の通知を漏洩監視サーバ４０１に送信する。
【０１６５】
（Ｓ２０８）状態管理サーバ４０２から鍵ＩＤの変更が完了した旨の通知を受けた漏洩監視サーバ４０１は、監視状態制御部４１１により、仮想化ホストサーバ１０１に対し、マッピング情報１０１ａの漏洩リスクがある操作の監視を再開するように命令する。
【０１６６】
（Ｓ２０９）状態管理サーバ４０２から鍵ＩＤの変更が完了した旨の通知を受けた漏洩監視サーバ４０１は、監視状態制御部４１１により、仮想化ホストサーバ１０２に対し、マッピング情報１０２ａの漏洩リスクがある操作の監視を再開するように命令する。
【０１６７】
（Ｓ２１０）漏洩監視サーバ４０１から監視の再開を命令された仮想化ホストサーバ１０１は、漏洩監視部１１４により、マッピング情報１０１ａの漏洩リスクがある操作の監視を再開する。
【０１６８】
（Ｓ２１１）漏洩監視サーバ４０１から監視の再開を命令された仮想化ホストサーバ１０２は、漏洩監視部１２４により、マッピング情報１０２ａの漏洩リスクがある操作の監視を再開する。Ｓ２１１の処理が完了すると、図１７及び図１８に示した一連の処理（漏洩リスクへの対処）は終了する。
【０１６９】
（暗号鍵の変更処理：Ｉ／Ｏ処理サーバにおける漏洩リスクへの対処）
次に、図１９を参照しながら、暗号鍵の変更処理の流れについて説明する。この処理は、Ｉ／Ｏ処理サーバにおいて漏洩リスクが生じた場合の対処に関する。図１９は、第２実施形態に係る暗号鍵の変更処理の流れを示したシーケンス図である。
【０１７０】
（Ｓ２３１）漏洩監視サーバ４０１は、監視状態制御部４１１により、Ｉ／Ｏ処理サーバ２０１の漏洩検知部２１３に対して監視の開始を命令する。例えば、監視状態制御部４１１は、漏洩検知部２１３に対し、鍵情報２１１ａの漏洩リスクがある操作を監視するように命令する。この命令により、漏洩検知部２１３による監視が開始される。
【０１７１】
漏洩リスクのある操作としては、例えば、メモリダンプの採取やカーネルモードデバッグなどの操作がある。メモリダンプの採取は、メモリダンプファイルの有無やＯＳのイベントログを確認することで検知できる。カーネルモードデバッグの実行は、カーネルモードデバッグフラグが有効かを確認することで検知できる。
【０１７２】
（Ｓ２３２）漏洩監視サーバ４０１は、監視状態制御部４１１により、Ｉ／Ｏ処理サーバ２０３の漏洩検知部２３３に対して監視の開始を命令する。例えば、監視状態制御部４１１は、漏洩検知部２３３に対し、鍵情報２３１ａの漏洩リスクがある操作を監視するように命令する。この命令により、漏洩検知部２３３による監視が開始される。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１７３】
（Ｓ２３３、Ｓ２３４）Ｉ／Ｏ処理サーバ２０１は、漏洩検知部２１３により、鍵情報２１１ａの漏洩リスクがある操作を検知する。この場合、漏洩検知部２１３は、漏洩監視サーバ４０１に対し、鍵情報２１１ａが漏洩した可能性（漏洩リスク）がある旨、及び鍵情報２１１ａに含まれる鍵ＩＤを通知する。
【０１７４】
（Ｓ２３５）漏洩監視サーバ４０１は、監視状態制御部４１１により、Ｉ／Ｏ処理サーバ２０１に対し、鍵情報２１１ａの漏洩リスクがある操作の監視を停止するように命令する。
【０１７５】
（Ｓ２３６）漏洩監視サーバ４０１から監視の停止を命令されたＩ／Ｏ処理サーバ２０１は、鍵情報２１１ａの漏洩リスクがある操作の監視を停止する。
（Ｓ２３７）漏洩監視サーバ４０１は、監視状態制御部４１１により、暗号鍵の漏洩リスクが発生した旨を状態管理サーバ４０２に通知する。このとき、監視状態制御部４１１は、Ｉ／Ｏ処理サーバ２０１から通知された漏洩リスクのある暗号鍵の鍵ＩＤ（通常鍵ＩＤ）を状態管理サーバ４０２に通知する。
【０１７６】
（Ｓ２３８）漏洩監視サーバ４０１から漏洩リスクの通知を受けた状態管理サーバ４０２は、対処指示部４２３により、仮想化ホストサーバ１０１に対して、マッピング情報１０１ａが漏洩する可能性のある操作を禁止する操作制限を指示する。
【０１７７】
禁止される操作としては、例えば、メモリダンプの採取やカーネルモードデバッグなどの操作がある。メモリダンプの採取は、メモリダンプファイルの有無やＯＳのイベントログを確認することで検知できる。カーネルモードデバッグの実行は、カーネルモードデバッグフラグが有効かを確認することで検知できる。なお、設定の無効化や操作権限の一時無効化などの方法を用いることで操作を禁止することができる。
【０１７８】
（Ｓ２３９）状態管理サーバ４０２は、対処指示部４２３により、仮想化ホストサーバ１０２に対して、マッピング情報１０２ａが漏洩する可能性のある操作を禁止する操作制限を指示する。
【０１７９】
（Ｓ２４０）状態管理サーバ４０２は、対処指示部４２３により、Ｉ／Ｏ処理サーバ２０１に対して、鍵情報２１１ａが漏洩する可能性のある操作を禁止する操作制限を指示する。
【０１８０】
禁止される操作としては、例えば、メモリダンプの採取やカーネルモードデバッグなどの操作がある。メモリダンプの採取は、メモリダンプファイルの有無やＯＳのイベントログを確認することで検知できる。カーネルモードデバッグの実行は、カーネルモードデバッグフラグが有効かを確認することで検知できる。なお、設定の無効化や操作権限の一時無効化などの方法を用いることで操作を禁止することができる。
【０１８１】
（Ｓ２４１）状態管理サーバ４０２は、対処指示部４２３により、Ｉ／Ｏ処理サーバ２０３に対して、鍵情報２３１ａが漏洩する可能性のある操作を禁止する操作制限を指示する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１８２】
（Ｓ２４２）操作制限の指示を受けた仮想化ホストサーバ１０１は、漏洩監視部１１４により、マッピング情報１０１ａの漏洩リスクがある操作を禁止する。
（Ｓ２４３）操作制限の指示を受けた仮想化ホストサーバ１０２は、漏洩監視部１２４により、マッピング情報１０２ａの漏洩リスクがある操作を禁止する。
【０１８３】
（Ｓ２４４）操作制限の指示を受けたＩ／Ｏ処理サーバ２０１は、漏洩検知部２１３により、鍵情報２１１ａの漏洩リスクがある操作を禁止する。
（Ｓ２４５）操作制限の指示を受けたＩ／Ｏ処理サーバ２０３は、漏洩検知部２３３により、鍵情報２３１ａの漏洩リスクがある操作を禁止する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１８４】
（Ｓ２４６）状態管理サーバ４０２は、対処指示部４２３により、仮想化ホストサーバ１０１の暗号化制御部１１３に対して、漏洩リスクの発生した暗号鍵の鍵ＩＤを通知し、その暗号鍵で暗号化されている領域の再暗号化を依頼する。なお、仮想化ホストサーバ１０１が稼働させる仮想マシンの仮想ディスクファイルに再暗号化の対象領域が含まれているものとする。対象領域と無関係の仮想化ホストサーバに再暗号化の依頼は送られない。
【０１８５】
（Ｓ２４７）状態管理サーバ４０２は、対処指示部４２３により、仮想化ホストサーバ１０２の暗号化制御部１２３に対して、漏洩リスクの発生した暗号鍵の鍵ＩＤを通知し、その暗号鍵で暗号化されている領域の再暗号化を依頼する。なお、仮想化ホストサーバ１０２が稼働させる仮想マシンの仮想ディスクファイルに再暗号化の対象領域が含まれているものとする。
【０１８６】
（Ｓ２４８）仮想化ホストサーバ１０１は、暗号化制御部１１３により、状態管理サーバ４０２から通知された鍵ＩＤに対応する領域（対象領域）の再暗号化を実行する。なお、再暗号化の処理については、後段において詳述する。
【０１８７】
（Ｓ２４９）仮想化ホストサーバ１０２は、暗号化制御部１２３により、状態管理サーバ４０２から通知された鍵ＩＤに対応する領域（対象領域）の再暗号化を実行する。なお、再暗号化の処理については、後段において詳述する。
【０１８８】
（Ｓ２５０）仮想化ホストサーバ１０１は、暗号化制御部１１３により、対象領域の再暗号化が完了した旨の通知を状態管理サーバ４０２に送信する。
（Ｓ２５１）仮想化ホストサーバ１０２は、暗号化制御部１２３により、対象領域の再暗号化が完了した旨の通知を状態管理サーバ４０２に送信する。
【０１８９】
（Ｓ２５２）再暗号化の依頼を送った全ての仮想化ホストサーバ（仮想化ホストサーバ１０１、１０２）から再暗号化の完了通知を受けた状態管理サーバ４０２は、対処指示部４２３により、再暗号化の完了を漏洩監視サーバ４０１に通知する。
【０１９０】
（Ｓ２５３）状態管理サーバ４０２から再暗号化の完了通知を受けた漏洩監視サーバ４０１は、監視状態制御部４１１により、Ｉ／Ｏ処理サーバ２０１に鍵情報２１１ａの漏洩リスクがある操作の監視を再開するように命令する。
【０１９１】
（Ｓ２５４）漏洩監視サーバ４０１から監視再開の命令を受けたＩ／Ｏ処理サーバ２０１は、漏洩検知部２１３により、鍵情報２１１ａの漏洩リスクがある操作の監視を再開する。
【０１９２】
（Ｓ２５５）状態管理サーバ４０２は、対処指示部４２３により、仮想化ホストサーバ１０１に対してマッピング情報１０１ａの漏洩リスクがある操作を禁止する操作制限の解除を指示する。
【０１９３】
（Ｓ２５６）状態管理サーバ４０２は、対処指示部４２３により、仮想化ホストサーバ１０２に対してマッピング情報１０２ａの漏洩リスクがある操作を禁止する操作制限の解除を指示する。
【０１９４】
（Ｓ２５７）状態管理サーバ４０２は、対処指示部４２３により、Ｉ／Ｏ処理サーバ２０１に対して鍵情報２１１ａの漏洩リスクがある操作を禁止する操作制限の解除を指示する。
【０１９５】
（Ｓ２５８）状態管理サーバ４０２は、対処指示部４２３により、Ｉ／Ｏ処理サーバ２０３に対して鍵情報２３１ａの漏洩リスクがある操作を禁止する操作制限の解除を指示する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０１９６】
（Ｓ２５９）状態管理サーバ４０２から操作制限の解除を指示された仮想化ホストサーバ１０１は、漏洩監視部１１４により、禁止されていた操作を許可する。
（Ｓ２６０）状態管理サーバ４０２から操作制限の解除を指示された仮想化ホストサーバ１０２は、漏洩監視部１２４により、禁止されていた操作を許可する。
【０１９７】
（Ｓ２６１）状態管理サーバ４０２から操作制限の解除を指示されたＩ／Ｏ処理サーバ２０１は、漏洩検知部２１３により、禁止されていた操作を許可する状態に変更する。
（Ｓ２６２）状態管理サーバ４０２から操作制限の解除を指示されたＩ／Ｏ処理サーバ２０３は、漏洩検知部２３３により、禁止されていた操作を許可する状態に変更する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。Ｓ２６２の処理が完了すると、図１９に示した一連の処理（漏洩リスクへの対処）は終了する。
【０１９８】
ここで、図２０及び図２１を参照しながら、再暗号化に関する処理（Ｓ２４８の処理に対応）の流れについて、さらに説明する。なお、仮想化ホストサーバ１０２が実行するＳ２４９の処理の流れも同様であるため、Ｓ２４９の処理については、さらなる説明を省略する。
【０１９９】
図２０は、第２実施形態に係る暗号鍵の変更処理の中で、再暗号化に関する処理の流れを示した第１のシーケンス図である。図２１は、第２実施形態に係る暗号鍵の変更処理の中で、再暗号化に関する処理の流れを示した第２のシーケンス図である。
【０２００】
（Ｓ２７１）仮想化ホストサーバ１０１は、暗号化制御部１１３により、マッピング情報１０１ａを参照し、漏洩リスクのある暗号鍵の鍵ＩＤ（再暗号化対象の鍵ＩＤ）に対応する仮想ディスクファイル名を特定する。
【０２０１】
（Ｓ２７２）仮想化ホストサーバ１０１は、暗号化制御部１１３により、特定した仮想ディスクファイル名が、仮想マシン制御部１１２が管理する仮想マシンの仮想ディスクファイル（自身が利用する仮想ディスクファイル）に該当するかを確認する。そして、暗号化制御部１１３は、その条件に該当する仮想ディスクファイル名を抽出する。また、暗号化制御部１１３は、抽出した仮想ディスクファイル名の再暗号化フラグを「０」（再暗号化の対象）に設定する。
【０２０２】
（Ｓ２７３）仮想化ホストサーバ１０１は、暗号化制御部１１３により、再暗号化フラグを「０」に設定した鍵ＩＤを１つ選択する。再暗号化フラグを「０」に設定した鍵ＩＤが存在しない場合、図２０及び図２１に示した一連の処理は終了する。つまり、再暗号化の対象となる領域が存在しない場合、再暗号化の処理は終了する。
【０２０３】
（Ｓ２７４）仮想化ホストサーバ１０１は、暗号化制御部１１３により、新しい暗号鍵を生成し、記憶部１１１に格納する。
（Ｓ２７５）仮想化ホストサーバ１０１は、暗号化制御部１１３により、鍵情報（鍵ＩＤ、暗号鍵）の更新をＩ／Ｏ処理サーバ２０１に依頼する。このとき、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０１が暗号処理に利用する暗号鍵に対応する鍵ＩＤと、その鍵ＩＤに対応する暗号鍵として新たに生成した暗号鍵をＩ／Ｏ処理サーバ２０１に送信する。なお、鍵情報の更新は、漏洩リスクのある暗号鍵を保持するＩ／Ｏ処理サーバに依頼される。
【０２０４】
（Ｓ２７６）仮想化ホストサーバ１０１は、暗号化制御部１１３により、鍵情報（鍵ＩＤ、暗号鍵）の更新をＩ／Ｏ処理サーバ２０３に依頼する。このとき、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０３が暗号処理に利用する暗号鍵に対応する鍵ＩＤと、その鍵ＩＤに対応する暗号鍵として新たに生成した暗号鍵をＩ／Ｏ処理サーバ２０３に送信する。なお、漏洩リスクのある暗号鍵をＩ／Ｏ処理サーバ２０３が保持していない場合、Ｉ／Ｏ処理サーバ２０３に対する鍵情報の更新依頼は省略される。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２０５】
（Ｓ２７７）鍵情報の更新依頼を受けたＩ／Ｏ処理サーバ２０１は、暗号処理部２１２により、仮想化ホストサーバ１０１から受信した新たな暗号鍵と鍵ＩＤとを鍵情報２１１ａに追加し、鍵情報２１１ａを更新する。
【０２０６】
（Ｓ２７８）鍵情報の更新依頼を受けたＩ／Ｏ処理サーバ２０３は、暗号処理部２３２により、仮想化ホストサーバ１０１から受信した新たな暗号鍵と鍵ＩＤとを鍵情報２３１ａに追加し、鍵情報２３１ａを更新する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２０７】
（Ｓ２７９）Ｉ／Ｏ処理サーバ２０１は、暗号処理部２１２により、鍵情報２１１ａの更新が完了した旨を仮想化ホストサーバ１０１に通知する。
（Ｓ２８０）Ｉ／Ｏ処理サーバ２０３は、暗号処理部２３２により、鍵情報２３１ａの更新が完了した旨を仮想化ホストサーバ１０１に通知する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２０８】
（Ｓ２８１）鍵情報の更新を依頼した全てのＩ／Ｏ処理サーバ（Ｉ／Ｏ処理サーバ２０１、２０２）から更新完了の通知を受けた仮想化ホストサーバ１０１は、暗号化制御部１１３により、該当領域の再暗号化をＩ／Ｏ処理サーバ２０１に依頼する。
【０２０９】
つまり、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０１が保持する暗号鍵を用いて暗号化される再暗号化の対象領域（該当領域）を再暗号化するようにＩ／Ｏ処理サーバ２０１に依頼する。このとき、暗号化制御部１１３は、マッピング情報１０１ａを参照して該当領域の開始アドレス及び終了アドレスを特定し、特定した開始アドレス及び終了アドレスをＩ／Ｏ処理サーバ２０１に通知する。
【０２１０】
（Ｓ２８２）仮想化ホストサーバ１０１は、暗号化制御部１１３により、該当領域の再暗号化をＩ／Ｏ処理サーバ２０３に依頼する。
つまり、暗号化制御部１１３は、Ｉ／Ｏ処理サーバ２０３が保持する暗号鍵を用いて暗号化される再暗号化の対象領域（該当領域）を再暗号化するようにＩ／Ｏ処理サーバ２０３に依頼する。このとき、暗号化制御部１１３は、マッピング情報１０１ａを参照して該当領域の開始アドレス及び終了アドレスを特定し、特定した開始アドレス及び終了アドレスをＩ／Ｏ処理サーバ２０３に通知する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２１１】
（Ｓ２８３）該当領域の再暗号化を依頼されたＩ／Ｏ処理サーバ２０１は、暗号処理部２１２により、ストレージ装置３００から該当領域のデータを読み出し、読み出したデータを古い暗号鍵で復号する。また、暗号処理部２１２は、古い暗号鍵で復号したデータを新しい暗号鍵で暗号化し、暗号化したデータをストレージ装置３００に書き込む。この処理により、古い暗号鍵で暗号化された該当領域のデータが新しい暗号鍵で暗号化されたデータに置き換えられる。
【０２１２】
（Ｓ２８４）該当領域の再暗号化を依頼されたＩ／Ｏ処理サーバ２０３は、暗号処理部２３２により、ストレージ装置３００から該当領域のデータを読み出し、読み出したデータを古い暗号鍵で復号する。また、暗号処理部２３２は、古い暗号鍵で復号したデータを新しい暗号鍵で暗号化し、暗号化したデータをストレージ装置３００に書き込む。この処理により、古い暗号鍵で暗号化された該当領域のデータが新しい暗号鍵で暗号化されたデータに置き換えられる。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２１３】
（Ｓ２８５）該当領域の再暗号化を完了したＩ／Ｏ処理サーバ２０１は、暗号処理部２１２により、再暗号化の完了を仮想化ホストサーバ１０１に通知する。
（Ｓ２８６）該当領域の再暗号化を完了したＩ／Ｏ処理サーバ２０３は、暗号処理部２３２により、再暗号化の完了を仮想化ホストサーバ１０１に通知する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２１４】
（Ｓ２８７）再暗号化を依頼した全てのＩ／Ｏ処理サーバ（Ｉ／Ｏ処理サーバ２０１、２０２、２０３）から再暗号化の完了が通知された仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ処理サーバ２０１に古い暗号鍵の削除を依頼する。
【０２１５】
（Ｓ２８８）仮想化ホストサーバ１０１は、暗号化制御部１１３により、Ｉ／Ｏ処理サーバ２０３に古い暗号鍵の削除を依頼する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２１６】
（Ｓ２８９）仮想化ホストサーバ１０１から古い暗号鍵の削除を依頼されたＩ／Ｏ処理サーバ２０１は、暗号処理部２１２により、古い暗号鍵を鍵情報２１１ａから削除する。
（Ｓ２９０）仮想化ホストサーバ１０１から古い暗号鍵の削除を依頼されたＩ／Ｏ処理サーバ２０３は、暗号処理部２３２により、古い暗号鍵を鍵情報２３１ａから削除する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２１７】
（Ｓ２９１）古い暗号鍵の削除を完了したＩ／Ｏ処理サーバ２０１は、暗号処理部２１２により、古い暗号鍵の削除が完了した旨を仮想化ホストサーバ１０１に通知する。
（Ｓ２９２）古い暗号鍵の削除を完了したＩ／Ｏ処理サーバ２０３は、暗号処理部２３２により、古い暗号鍵の削除が完了した旨を仮想化ホストサーバ１０１に通知する。なお、Ｉ／Ｏ処理サーバ２０２についても同様である。
【０２１８】
（Ｓ２９３）古い暗号鍵の削除を依頼した全てのＩ／Ｏ処理サーバ（Ｉ／Ｏ処理サーバ２０１、２０２、２０３）から削除完了の通知を受けた仮想化ホストサーバ１０１は、暗号化制御部１１３により、マッピング情報１０１ａの再暗号化フラグを更新する。つまり、暗号化制御部１１３は、該当領域に対応するマッピング情報１０１ａの再暗号化フラグを「１」に設定する。なお、新しい暗号鍵を生成する際に鍵ＩＤを変更した場合、該当領域に対応するマッピング情報１０１ａの鍵ＩＤも更新される。
【０２１９】
（Ｓ２９４）仮想化ホストサーバ１０１は、暗号化制御部１１３により、マッピング情報１０２ａの更新を仮想化ホストサーバ１０２に依頼する。このとき、暗号化制御部１１３は、マッピング情報１０１ａを仮想化ホストサーバ１０２に送信する。
【０２２０】
（Ｓ２９５）仮想化ホストサーバ１０２は、暗号化制御部１２３により、仮想化ホストサーバ１０１から受信したマッピング情報１０１ａに基づいてマッピング情報１０２ａを更新する。この処理により、マッピング情報１０１ａ、１０２ａが同期される。
【０２２１】
（Ｓ２９６）仮想化ホストサーバ１０２は、暗号化制御部１２３により、マッピング情報１０２ａの更新が完了した旨を仮想化ホストサーバ１０１に通知する。Ｓ２９６の処理が完了すると、Ｓ２７３の処理に戻る。そして、再暗号化フラグが「０」に設定された全ての該当領域について再暗号化が完了すると、図２０及び図２１に示した一連の処理は終了する。
【０２２２】
以上、第２実施形態について説明した。
【符号の説明】
【０２２３】
１０  データ保護装置
１１  記憶部
１２  制御部
２０  第１群
２１、２２、３１  処理装置
２１ａ、２２ａ  暗号鍵
３０  第２群
３１ａ  対応関係
４０  データ
４１、４２  データ領域
５０  漏洩通知
【図１】
0006721825.tif 000002
【図２】
0006721825.tif 000003
【図３】
0006721825.tif 000004
【図４】
0006721825.tif 000005
【図５】
0006721825.tif 000006
【図６】
0006721825.tif 000007
【図７】
0006721825.tif 000008
【図８】
0006721825.tif 000009
【図９】
0006721825.tif 000010
【図１０】
0006721825.tif 000011
【図１１】
0006721825.tif 000012
【図１２】
0006721825.tif 000013
【図１３】
0006721825.tif 000014
【図１４】
0006721825.tif 000015
【図１５】
0006721825.tif 000016
【図１６】
0006721825.tif 000017
【図１７】
0006721825.tif 000018
【図１８】
0006721825.tif 000019
【図１９】
0006721825.tif 000020
【図２０】
0006721825.tif 000021
【図２１】
0006721825.tif 000022