(57)【要約】【課題】従来、テープにバックアップされるデータを暗号化するための暗号鍵を、論理的なデータ管理単位ごとに割り当てることができなかった。【解決手段】ディスク記憶装置と、テープ記憶媒体を装着可能なテープ記憶装置と、前記ディスク記憶装置及び前記テープ記憶装置を制御するコントローラと、を備えるストレージシステムであって、前記コントローラは、前記一つ以上のテープ記憶媒体を含むテープグループを設定する要求を受信すると、前記要求によって設定されるテープグループに格納されるデータを暗号化するために使用されるべき第１暗号鍵を生成し、前記生成された第１暗号鍵と前記テープグループとを対応付ける情報を保持する。【選択図】図１
2009193125.tif 000002
【特許請求の範囲】
【請求項１】
ディスク記憶装置と、テープ記憶媒体を装着可能なテープ記憶装置と、前記ディスク記憶装置及び前記テープ記憶装置を制御するコントローラと、を備えるストレージシステムであって、
前記コントローラは、ネットワークに接続される第１インターフェースと、前記ディスク記憶装置及び前記テープ記憶装置に接続される一つ以上の第２インターフェースと、前記第１インターフェース及び前記第２インターフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、
前記コントローラは、
一つ以上の前記テープ記憶媒体を含むテープグループを設定する要求を受信すると、前記要求によって設定されるテープグループに格納されるデータを暗号化するために使用されるべき第１暗号鍵を生成し、
前記生成された第１暗号鍵と前記テープグループとを対応付ける情報を保持することを特徴とするストレージシステム。
【請求項２】
前記コントローラは、
前記ディスク記憶装置に格納されたデータを前記テープグループにバックアップする要求を受信すると、前記テープ記憶装置が前記ディスク記憶装置に格納されたデータを前記テープグループに対応付けられた前記第１暗号鍵を用いて暗号化するように制御し、
前記テープ記憶装置が、前記暗号化されたデータ、前記テープグループを識別する情報、及び、前記第１暗号鍵を識別する情報を、前記テープグループに含まれる複数の前記テープ記憶媒体に格納するように制御することを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記コントローラは、
前記テープグループに格納されたデータを前記ディスク記憶装置にリストアする要求を受信すると、前記テープ記憶装置が前記テープグループに含まれる複数の前記テープ記憶媒体からデータを読み出すように制御し、
前記テープ記憶装置が、前記読み出されたデータを、前記テープグループに対応付けられた前記第１暗号鍵を用いて復号化するように制御し、
前記復号化されたデータを前記ディスク記憶装置に格納することを特徴とする請求項２に記載のストレージシステム。
【請求項４】
前記コントローラは、
前記第１暗号鍵をバックアップする要求及びパスワードを受信し、
前記パスワードに基づいて第２暗号鍵を生成し、
前記第２暗号鍵を用いて前記第１暗号鍵を暗号化し、
前記暗号化された第１暗号鍵を出力することを特徴とする請求項１に記載のストレージシステム。
【請求項５】
前記コントローラは、
前記第１暗号鍵を変更する要求を受信すると、新たな暗号鍵を前記第１暗号鍵として生成し、
前記生成された新たな第１暗号鍵と前記テープグループとを対応付ける情報を保持することを特徴とする請求項１に記載のストレージシステム。
【請求項６】
第１ストレージシステムを備える計算機システムであって、
前記第１ストレージシステムは、第１ディスク記憶装置と、テープ記憶媒体を装着可能な第１テープ記憶装置と、前記第１ディスク記憶装置及び前記第１テープ記憶装置を制御する第１コントローラと、を備え、
前記第１コントローラは、ネットワークに接続される第１インターフェースと、前記第１ディスク記憶装置及び前記第１テープ記憶装置に接続される一つ以上の第２インターフェースと、前記第１インターフェース及び前記第２インターフェースに接続される第１プロセッサと、前記第１プロセッサに接続される第１メモリと、を備え、
前記第１ストレージシステムは、
一つ以上の前記第１テープ記憶媒体を含むテープグループを設定する要求を受信すると、前記要求によって設定されるテープグループに格納されるデータを暗号化するために使用されるべき第１暗号鍵を生成し、
前記生成された第１暗号鍵と前記テープグループとを対応付ける情報を保持することを特徴とする計算機システム。
【請求項７】
前記計算機システムは、前記第１ストレージシステムに接続される管理端末をさらに備え、
前記第１ストレージシステムは、
前記管理端末から、前記第１暗号鍵をバックアップする要求及びパスワードを受信し、
前記パスワードに基づいて第２暗号鍵を生成し、
前記第２暗号鍵を用いて前記第１暗号鍵を暗号化し、
前記暗号化された第１暗号鍵を前記管理端末に送信することを特徴とする請求項６に記載の計算機システム。
【請求項８】
前記計算機システムは、前記管理端末に接続される第２ストレージシステムをさらに備え、
前記第２ストレージシステムは、第２ディスク記憶装置と、第２テープ記憶装置と、前記第２ディスク記憶装置及び前記第２テープ記憶装置を制御する第２コントローラと、を備え、
前記第２コントローラは、ネットワークに接続される第３インターフェースと、前記第２ディスク記憶装置及び前記第２テープ記憶装置に接続される一つ以上の第４インターフェースと、前記第３インターフェース及び前記第４インターフェースに接続される第２プロセッサと、前記第２プロセッサに接続される第２メモリと、を備え、
前記第２ストレージシステムは、
前記第１暗号鍵をリストアする要求、前記暗号化された第１暗号鍵、及び、前記パスワードを前記管理端末から受信すると、前記パスワードに基づいて前記第２暗号鍵を生成し、
前記暗号化された第１暗号鍵を、前記第２暗号鍵を用いて復号化し、
前記復号化された第１暗号鍵を保持することを特徴とする請求項７に記載の計算機システム。
【請求項９】
前記第１ストレージシステムは、
前記第１ディスク記憶装置に格納されたデータを前記テープグループにバックアップする要求を受信すると、前記第１ディスク記憶装置に格納されたデータを、前記テープグループに対応付けられた前記第１暗号鍵を用いて暗号化し、
前記暗号化されたデータ、前記テープグループを識別する情報、及び、前記第１暗号鍵を識別する情報を、前記テープグループに含まれる複数の前記テープ記憶媒体に格納することを特徴とする請求項８に記載の計算機システム。
【請求項１０】
前記第２ストレージシステムは、
前記テープグループに含まれる複数の前記テープ記憶媒体から、前記テープグループを識別する情報、及び、前記第１暗号鍵を識別する情報を読み出し、
前記読み出された情報に基づいて、前記第１暗号鍵と前記テープグループとを対応付ける情報を保持することを特徴とする請求項９に記載の計算機システム。
【請求項１１】
前記第２ストレージシステムは、
前記テープグループに格納されたデータを前記第２ディスク記憶装置にリストアする要求を受信すると、前記テープグループに含まれる複数の前記テープ記憶媒体からデータを読み出し、
前記読み出されたデータを、前記テープグループに対応付けられた前記第１暗号鍵を用いて復号化し、
前記復号化されたデータを前記第２ディスク記憶装置に格納することを特徴とする請求項１０に記載の計算機システム。
【請求項１２】
前記第１ストレージシステムは、
前記第１暗号鍵を変更する要求を受信すると、新たな暗号鍵を前記第１暗号鍵として生成し、
前記生成された新たな第１暗号鍵と前記テープグループとを対応付ける情報を保持することを特徴とする請求項６に記載の計算機システム。
【請求項１３】
第１ストレージシステムを備える計算機システムを制御する方法であって、
前記第１ストレージシステムは、第１ディスク記憶装置と、テープ記憶媒体を装着可能な第１テープ記憶装置と、前記第１ディスク記憶装置及び前記第１テープ記憶装置を制御する第１コントローラと、を備え、
前記第１コントローラは、ネットワークに接続される第１インターフェースと、前記第１ディスク記憶装置及び前記第１テープ記憶装置に接続される一つ以上の第２インターフェースと、前記第１インターフェース及び前記第２インターフェースに接続される第１プロセッサと、前記第１プロセッサに接続される第１メモリと、を備え、
前記方法は、
前記第１ストレージシステムが、一つ以上の前記第１テープ記憶媒体を含むテープグループを設定する要求を受信すると、前記要求によって設定されるテープグループに格納されるデータを暗号化するために使用されるべき第１暗号鍵を生成する手順と、
前記第１ストレージシステムが、前記生成された第１暗号鍵と前記テープグループとを対応付ける情報を保持する手順と、を含むことを特徴とする方法。
【請求項１４】
前記計算機システムは、前記第１ストレージシステムに接続される管理端末をさらに備え、
前記方法は、さらに、
前記第１ストレージシステムが、前記管理端末から、前記第１暗号鍵をバックアップする要求及びパスワードを受信する手順と、
前記第１ストレージシステムが、前記パスワードに基づいて第２暗号鍵を生成する手順と、
前記第１ストレージシステムが、前記第２暗号鍵を用いて前記第１暗号鍵を暗号化する手順と、
前記第１ストレージシステムが、前記暗号化された第１暗号鍵を前記管理端末に送信する手順と、を含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
前記計算機システムは、前記管理端末に接続される第２ストレージシステムをさらに備え、
前記第２ストレージシステムは、第２ディスク記憶装置と、第２テープ記憶装置と、前記第２ディスク記憶装置及び前記第２テープ記憶装置を制御する第２コントローラと、を備え、
前記第２コントローラは、ネットワークに接続される第３インターフェースと、前記第２ディスク記憶装置及び前記第２テープ記憶装置に接続される一つ以上の第４インターフェースと、前記第３インターフェース及び前記第４インターフェースに接続される第２プロセッサと、前記第２プロセッサに接続される第２メモリと、を備え、
前記方法は、さらに、
前記第２ストレージシステムが、前記第１暗号鍵をリストアする要求、前記暗号化された第１暗号鍵、及び、前記パスワードを前記管理端末から受信すると、前記パスワードに基づいて前記第２暗号鍵を生成する手順と、
前記第２ストレージシステムが、前記暗号化された第１暗号鍵を、前記第２暗号鍵を用いて復号化する手順と、
前記第２ストレージシステムが、前記復号化された第１暗号鍵を保持する手順と、を含むことを特徴とする請求項１４に記載の方法。
【請求項１６】
前記方法は、さらに、
前記第１ストレージシステムが、前記第１ディスク記憶装置に格納されたデータを前記テープグループにバックアップする要求を受信すると、前記第１ディスク記憶装置に格納されたデータを、前記テープグループに対応付けられた前記第１暗号鍵を用いて暗号化する手順と、
前記第１ストレージシステムが、前記暗号化されたデータ、前記テープグループを識別する情報、及び、前記第１暗号鍵を識別する情報を、前記テープグループに含まれる複数の前記テープ記憶媒体に格納する手順と、を含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記方法は、さらに、
前記第２ストレージシステムが、前記テープグループに含まれる複数の前記テープ記憶媒体から、前記テープグループを識別する情報、及び、前記第１暗号鍵を識別する情報を読み出す手順と、
前記第２ストレージシステムが、前記読み出された情報に基づいて、前記第１暗号鍵と前記テープグループとを対応付ける情報を保持する手順と、を含むことを特徴とする請求項１６に記載の方法。
【請求項１８】
前記方法は、さらに、
前記第２ストレージシステムが、前記テープグループに格納されたデータを前記第２ディスク記憶装置にリストアする要求を受信すると、前記テープグループに含まれる複数の前記テープ記憶媒体からデータを読み出す手順と、
前記第２ストレージシステムが、前記読み出されたデータを、前記テープグループに対応付けられた前記第１暗号鍵を用いて復号化する手順と、
前記第２ストレージシステムが、前記復号化されたデータを前記第２ディスク記憶装置に格納する手順と、を含むことを特徴とする請求項１７に記載の方法。
【請求項１９】
前記方法は、さらに、
前記第１ストレージシステムが、前記第１暗号鍵を変更する要求を受信すると、新たな暗号鍵を前記第１暗号鍵として生成する手順と、
前記第１ストレージシステムが、前記生成された新たな第１暗号鍵と前記テープグループとを対応付ける情報を保持する手順と、を含むことを特徴とする請求項１３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願明細書で開示される技術は、ストレージシステムにおけるデータの管理に関し、特に、暗号化されたデータをテープに格納するために使用される暗号鍵の管理に関する。
【背景技術】
【０００２】
企業等の計算機システムが扱うデータの量は、増大する傾向にある。これに伴い、障害等によるデータ消失を防ぐためのバックアップデータの量も増大している。
【０００３】
大量のデータを低コストで保存するため、一般に、階層化されたストレージシステムが使用される。階層化されたストレージシステムにおいて、アクセス頻度が高いデータは、磁気ディスクのように、比較的高価であるが高性能な記憶媒体に格納される。一方、例えばバックアップデータのようにアクセス頻度が低いデータは、磁気テープのように、比較的安価な記憶媒体に格納される。
【０００４】
このような階層化されたストレージシステムとして、例えば特許文献１及び特許文献２が開示されている。
【０００５】
特許文献１には、ホストコンピュータに対してディスクインターフェースを持ち、論理ボリュームのデータを磁気テープに格納する機能を有するストレージシステムが開示されている。
【０００６】
特許文献２には、正データストレージシステムから、テープライブラリを備える副データストレージシステムへのデータのバックアップが開示されている。
【０００７】
さらに、データを安全に保持するために、暗号化されたデータをテープに格納する技術が、例えば非特許文献１に開示されている。
【０００８】
非特許文献１によれば、テープライブラリ装置ごとの暗号鍵から、テープごとの暗号鍵まで、種々の粒度の暗号鍵が管理される。さらに、非特許文献１には、データの暗号化及び復号化が開示されている。これによると、テープライブラリは、テープを読み出すときにＳｅｃｕｒｅ  Ｋｅｙ  Ｍａｎａｇｅｒから暗号鍵を取り出す。
【特許文献１】特開２００６−１６３４５４号公報
【特許文献２】米国特許第６、３５３、８７８号明細書
【非特許文献１】"HP StorageWorks Secure Key Manager", [online], Hewlett-Packard Development Company, L.P., [平成２０年１月１７日検索],インターネット<URL:http://h18000.www1.hp.com/products/quickspecs/12814_div/12814_div.html>
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来の鍵管理サーバ又は鍵管理アプライアンス（例えばＳｅｃｕｒｅ  Ｋｅｙ  Ｍａｎａｇｅｒ）は、物理的な装置（例えばテープカートリッジ、テープドライブ又はテープライブラリ）を識別することはできるが、論理的なデータ管理単位（例えば複数のテープからなるテープグループ）を識別することができない。このため、従来の鍵管理サーバ等は、物理的な装置ごとに暗号鍵を割り当てることはできるが、論理的なデータ管理単位に対して、そのデータ管理単位が実際に生成される前に暗号鍵を割り当てることができなかった。このため、セキュリティ強度を確保するために必要以上の鍵を管理する必要が生じ、その結果鍵の管理が複雑になるという問題があった。
【課題を解決するための手段】
【００１０】
本願で開示する代表的な発明は、ディスク記憶装置と、テープ記憶媒体を装着可能なテープ記憶装置と、前記ディスク記憶装置及び前記テープ記憶装置を制御するコントローラと、を備えるストレージシステムであって、前記コントローラは、ネットワークに接続される第１インターフェースと、前記ディスク記憶装置及び前記テープ記憶装置に接続される一つ以上の第２インターフェースと、前記第１インターフェース及び前記第２インターフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、前記コントローラは、一つ以上の前記テープ記憶媒体を含むテープグループを設定する要求を受信すると、前記要求によって設定されるテープグループに格納されるデータを暗号化するために使用されるべき第１暗号鍵を生成し、前記生成された第１暗号鍵と前記テープグループとを対応付ける情報を保持することを特徴とする。
【発明の効果】
【００１１】
本発明の一実施形態によれば、テープにバックアップされるデータを暗号化するための暗号鍵を、論理的なデータ管理単位ごとに割り当てることができるため、使用される暗号鍵の数を必要最小限に抑えることができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態を、図面を参照して説明する。
【００１３】
図１は、本発明の実施形態の計算機システムの構成を示すブロック図である。
【００１４】
本実施形態の計算機システムは、少なくとも、ストレージシステム１０１Ａ、ホスト１０２及び管理端末１０３を備える。
【００１５】
ストレージシステム１０１Ａは、ネットワーク１０５を介してホスト１０２と接続され、ネットワーク１０６を介して管理端末１０３と接続される。ホスト１０２は、ネットワーク１０４を介して管理端末１０３と接続される。
【００１６】
ネットワーク１０４〜１０６は、いかなる種類のネットワークであってもよい。例えば、ネットワーク１０４及び１０６は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）のようなＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ネットワークであってもよい。ネットワーク１０５は、ネットワーク１０４及び１０６と同様のネットワークであってもよいし、ＦＣ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ）プロトコルが適用されるいわゆるストレージエリアネットワークであってもよい。
【００１７】
ホスト１０２は、ユーザに種々のサービスを提供する計算機である。ホスト１０２は、ネットワーク１０４及び１０５に接続されるインターフェース（図示省略）、インターフェースに接続されるプロセッサ（図示省略）及びプロセッサに接続されるメモリ（図示省略）を備える。
【００１８】
ホスト１０２のメモリには、アプリケーションプログラム２１０及び指示プログラム２２０が格納される。アプリケーションプログラム２１０は、ホスト１０２がユーザにサービスを提供するためにプロセッサによって実行されるプログラムである。アプリケーションプログラム２１０を実行するプロセッサは、必要に応じて、ストレージシステム１０１Ａ内のデータへのアクセス要求（すなわち、データ書き込み要求又はデータ読み出し要求）を発行する。指示プログラム２２０は、ユーザがストレージシステム１０１Ａにデータのバックアップを指示するためにプロセッサによって実行されるプログラムである。
【００１９】
なお、図１の例では、ホスト１０２が指示プログラム２２０を保持する。しかし、計算機システム内のどの装置が指示プログラム２２０を保持し、実行してもよい。例えば、管理端末１０３又はストレージシステム１０１Ａが指示プログラム２２０を保持及び実行してもよい。
【００２０】
管理端末１０３は、本実施形態の計算機システムを管理する計算機である。管理端末１０３は、ネットワーク１０４及び１０６に接続されるインターフェース（図示省略）、インターフェースに接続されるプロセッサ（図示省略）及びプロセッサに接続されるメモリ（図示省略）を備える。
【００２１】
管理端末１０３のメモリには、管理プログラム３１０が格納される。管理プログラム３１０は、ストレージシステム１０１Ａによるデータバックアップを管理するためにプロセッサによって実行されるプログラムである。以下の説明において管理プログラム３１０が実行する処理は、実際には、管理端末１０３のプロセッサ（図示省略）によって実行される。
【００２２】
ストレージシステム１０１Ａは、ホスト１０２によって書き込まれたデータを格納する。本実施形態のストレージシステム１０１Ａは、コントローラ１１０、一つ以上のディスク装置１５０及び一つ以上のテープライブラリ装置１３０を備える。
【００２３】
コントローラ１１０は、ディスク装置１５０及びテープライブラリ装置１３０を制御するために、少なくともコピー制御プログラム１１７、ディスク制御プログラム１１８、テープ制御プログラム１１９及び鍵管理プログラム１２０を保持する。コントローラ１１０の構成については、後で詳細に説明する（図２参照）。
【００２４】
ディスク装置１５０は、典型的には磁気ディスクドライブであるが、フラッシュメモリのような半導体記憶装置又はその他の種類の記憶装置であってもよい。図１に示すディスク装置Ａ１５０Ａ及びディスク装置Ｂ１５０Ｂの各々は、複数のディスク装置１５０の一つである。ストレージシステム１０１Ａは、さらに多くのディスク装置１５０（例えば図３に示すディスク装置１５０Ｎ）を備えてもよい。複数のディスク装置１５０がＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）を構成してもよい。
【００２５】
ここで、ディスク装置１５０が提供する記憶領域について図３を参照して説明する。
【００２６】
図３は、本発明の実施形態のディスク装置１５０が提供する記憶領域の説明図である。
【００２７】
図３の例では、複数のディスク装置１５０の記憶領域が一つ以上の内部ＬＵ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ）１４１に分割して管理される。例えば、図３に示すように、各ディスク装置１５０の記憶領域の一部の集合が一つの内部ＬＵ１４１として管理されてもよい。
【００２８】
図３に示す内部ＬＵ１４１Ａ及び１４１Ｂの各々は、複数の内部ＬＵ１４１の一つである。図３に示すＬＵＮ１０及びＬＵＮ１１は、それぞれ、内部ＬＵ１４１Ａ及び１４１Ｂの識別子である。コントローラ１１０は、任意の容量の内部ＬＵ１４１を任意の数設定することができる。
【００２９】
各内部ＬＵ１４１は、それぞれ一つの論理ボリューム１４０と対応付けられる。図３の例では、論理ボリューム１４０Ａ及び１４０Ｂが、それぞれ、内部ＬＵ１４１Ａ及び１４１Ｂと対応付けられる。この例において、論理ボリューム１４０Ｃは、内部ＬＵ１４１と対応付けられていない。論理ボリューム１４０Ａ、１４０Ｂ及び１４０Ｃの各々は、複数の論理ボリューム１４０の一つである。図３に示すＬＵＮ０、ＬＵＮ１及びＬＵＮ２は、それぞれ、論理ボリューム１４０Ａ、１４０Ｂ及び１４０Ｃの識別子である。
【００３０】
各論理ボリューム１４０は、ホスト１０２によって一つの論理的な記憶装置として認識される。例えば、ホスト１０２が論理ボリューム１４０Ａにデータを書き込む要求を発行すると、コントローラ１１０は、要求されたデータを、論理ボリューム１４０Ａに対応する内部ＬＵ１４１Ａに格納する。
【００３１】
各論理ボリューム１４０に格納されたデータ（すなわち、実際には各内部ＬＵ１４１に格納されたデータ）は、指示プログラム２２０からのバックアップ指示に応じて、一つ以上のテープ１３２にバックアップされる。言い換えると、バックアップ指示に応じて、各論理ボリューム１４０に格納されたデータの複製が一つ以上のテープ１３２に格納される。
【００３２】
再び図１を参照すると、テープライブラリ装置１３０は、一つ以上のテープドライブ１３１及び一つ以上のテープ１３２を備える。図１に示すテープライブラリ装置１３０は、テープドライブＡ１３１Ａ、テープドライブＢ１３１Ｂ、テープＡ１３２Ａ及びテープＢ１３２Ｂを備える。テープドライブＡ１３１Ａ及びテープドライブＢ１３１Ｂの各々は、複数のテープドライブ１３１の一つである。テープＡ１３２Ａ及びテープＢ１３２Ｂの各々は、複数のテープ１３２の一つである。
【００３３】
一つ以上のテープ１３２が一つのテープグループ１４２を構成してもよい（図４参照）。テープライブラリ装置１３０は、さらに多くのテープドライブ１３１及びテープ１３２を備えてもよい。
【００３４】
各テープ１３２は、具体的には一つのテープ記憶媒体（テープメディア）に相当する。一つのテープメディアは、例えば、巻き取られた１巻のテープ（磁気記録テープ）と、そのテープを内包するケースと、からなるいわゆるテープカートリッジであってもよい。テープメディアは、さらに、巻き取られたテープ以外の記憶媒体を含んでもよい。巻き取られたテープ以外の記憶媒体とは、例えば、ケースに取り付けられたバーコード、磁気記憶媒体又はフラッシュメモリのような不揮発性の記憶媒体である。ケースにこのような記憶媒体が含まれる場合、テープドライブ１３１は、このような記憶媒体からデータを読み出す機能を備える。
【００３５】
本実施形態の計算機システムは、図１に示すように、さらにストレージシステム１０１Ｂを備えてもよい。ストレージシステム１０１Ｂは、ネットワーク１０４に接続される。ストレージシステム１０１Ｂの構成は、ストレージシステム１０１Ａと同様であるため、その説明は省略する。
【００３６】
図２は、本発明の実施形態のコントローラ１１０の構成を示すブロック図である。
【００３７】
本実施形態のコントローラ１１０は、メモリ１１１、ＣＰＵ１１２、上位インターフェース（Ｉ／Ｆ）１１３、下位Ｉ／Ｆ１１４、Ｉ／Ｆ１１５及びブリッジ１１６を備える。
【００３８】
メモリ１１１は、例えば半導体記憶装置のようなデータ記憶装置である。メモリ１１１には、ＣＰＵ１１２によって実行されるプログラム及びＣＰＵ１１２によって参照されるデータが格納される。本実施形態のメモリ１１１には、少なくとも、コピー制御プログラム１１７、ディスク制御プログラム１１８、テープ制御プログラム１１９及び鍵管理プログラム１２０が格納される。
【００３９】
ディスク制御プログラム１１８は、ディスク管理テーブル１１８１を含む。
【００４０】
テープ制御プログラム１１９は、テープ管理テーブル１１９１を含む。
【００４１】
鍵管理プログラム１２０は、鍵情報テーブル１１２１及びテープグループ（ＴＧ）鍵情報テーブル１１２２を含む。
【００４２】
これらのプログラム及びテーブルについては、後で詳細に説明する。
【００４３】
ＣＰＵ１１２は、メモリ１１１に格納されたプログラムを実行するプロセッサである。以下の説明において各プログラムが実行する処理は、実際には、各プログラムを実行するＣＰＵ１１２によって実行される。
【００４４】
上位Ｉ／Ｆ１１３は、コントローラ１１０を、ネットワーク１０５を介してホスト１０２に接続するためのインターフェースである。下位Ｉ／Ｆ１１４は、コントローラ１１０をディスク装置１５０に接続するためのインターフェースである。上位Ｉ／Ｆ１１３及び下位Ｉ／Ｆ１１４は、例えばＳＣＳＩアダプタ又はＦＣアダプタであってもよい。
【００４５】
Ｉ／Ｆ１１５は、コントローラ１１０を、ネットワーク１０６を介して管理端末１０３に接続するためのインターフェースである。ネットワーク１０６がＬＡＮである場合、Ｉ／Ｆ１１５はいわゆるネットワークインターフェースカードであってもよい。
【００４６】
ブリッジ１１６は、メモリ１１１、ＣＰＵ１１２、上位Ｉ／Ｆ１１３、下位Ｉ／Ｆ１１４及びＩ／Ｆ１１５を接続し、これらの間で行われる通信を制御する。
【００４７】
図４は、本発明の実施形態のテープグループ１４２の説明図である。
【００４８】
一つ以上のテープ１３２からなる各テープグループ１４２は、バックアップされたデータの論理的な管理単位である。例えば、一つの論理ボリューム１４０に割り当てられた記憶容量が一つのテープ１３２の記憶容量より大きい場合がある。その場合、複数のテープ１３２からなる一つのテープグループに、一つの論理ボリューム１４０のデータが格納されてもよい。また、複数の論理ボリュームのデータを一つのテープグループに格納してもよい。
【００４９】
なお、以下の説明では、バックアップの代表的な例として、論理ボリューム１４０に格納されたデータをテープグループ１４２にバックアップする例を示すが、テープグループ１４２に格納されたデータが別のテープグループ１４２にバックアップされてもよい。
【００５０】
図４の例では、テープグループ番号「０」が付与されたテープグループ１４２Ａは、テープ１３２Ａ〜１３２Ｊを含む。テープグループ番号「１」が付与されたテープグループ１４２Ｂは、テープ１３２Ｋ〜１３２Ｎを含む。
【００５１】
図５は、本発明の実施形態のディスク管理テーブル１１８１の説明図である。
【００５２】
ディスク管理テーブル１１８１は、ディスク装置１５０の記憶領域を管理するために必要な情報を保持する。
【００５３】
ディスク管理テーブル１１８１は、論理ボリューム１１８１１、内部ＬＵＮ１１８１２、ＬＵサイズ１１８１３及び物理ディスクアドレス１１８１４を含む。
【００５４】
論理ボリューム１１８１１は、論理ボリューム１４０の識別子（すなわち外部ＬＵＮ）を示す。例えば、図５では、論理ボリューム１１８１１として「０」及び「１」が格納されている。これらは、それぞれ、図３に示すＬＵＮ０及びＬＵＮ１に相当する。
【００５５】
内部ＬＵＮ１１８１２は、論理ボリューム１４０に対応付けられた内部ＬＵ１４１の識別子を示す。例えば、図５では、ＬＵＮ０及びＬＵＮ１に対応する内部ＬＵＮ１１８１２として「１０」及び「１１」が格納されている。これらは、それぞれ、図３に示すＬＵＮ１０及びＬＵＮ１１に相当する。
【００５６】
ＬＵサイズ１１８１３は、各内部ＬＵ１４１に割り当てられている記憶領域のサイズ、すなわち、その記憶領域に格納できるデータの容量を示す。例えば、図５では、ＬＵＮ００及びＬＵＮ０１に対応するＬＵサイズ１１８１３として、それぞれ、「１テラバイト（ＴＢ）」及び「５００ギガバイト（ＧＢ）」が格納されている。これらは、ＬＵＮ１０及びＬＵＮ１１としてそれぞれ１ＴＢ及び５００ＧＢの記憶領域が割り当てられていることを示す。
【００５７】
物理ディスクアドレス１１８１４は、各内部ＬＵ１４１に割り当てられているディスク装置１５０内の記憶領域のアドレスを示す。例えば、図５では、ＬＵＮ１０に対応する物理ディスクアドレス１１８１４として、「Ａ：０−２０００、Ｂ：０−２０００、・・・、Ｎ：０−２０００」が格納されている。これは、少なくとも、ディスク装置１５０Ａのアドレス０からアドレス２０００までの記憶領域、ディスク装置１５０Ｂのアドレス０からアドレス２０００までの記憶領域、及び、ディスク装置１５０Ｎのアドレス０からアドレス２０００までの記憶領域が、ＬＵＮ１０として割り当てられていることを示す。
【００５８】
図６は、本発明の実施形態のテープ管理テーブル１１９１の説明図である。
【００５９】
テープ管理テーブル１１９１は、テープグループ１４２を管理するために必要な情報を保持する。
【００６０】
テープ管理テーブル１１９１は、ＴＧ１１９１１、ＴＧ固有識別子１１９１２、Ｔａｐｅ１１９１３、Ｋｅｙｗｏｒｄ１１９１４及び暗号化１１９１５を含む。
【００６１】
ＴＧ１１９１１は、各テープグループ１４２に割り当てられた番号を示す。例えば、図６では、ＴＧ１１９１１として「０」及び「１」が格納されている。これらは、それぞれ、図４に示すテープグループ１４２Ａ及び１４２Ｂに割り当てられた番号である。なお、図４では省略されているが、本実施形態の計算機システムはさらに多くのテープグループ１４２を含んでもよい。例えば図６では、ＴＧ１１９１１としてさらに「２」及び「３」が格納されている。これらは、それぞれ、図示しないテープグループ１４２に割り当てられた番号である。
【００６２】
なお、以下の説明では、便宜上、テープグループ番号「０」、「１」、「２」及び「３」で識別されるテープグループ１４２を、それぞれ、ＴＧ＃０、ＴＧ＃１、ＴＧ＃２及びＴＧ＃３とも記載する。
【００６３】
ＴＧ１１９１１は、テープグループ１４２を管理するためにコントローラ１１０によって割り当てられる。コントローラ１１０は、そのコントローラによる管理が及ぶ範囲内において一意の番号を、ＴＧ１１９１１として各テープグループ１４２に割り当てる。しかし、ＴＧ１１９１１が計算機システム全体で一意であることは保証されない。
【００６４】
ＴＧ固有識別子１１９１２は、各テープグループ１４２に割り当てられた固有の（すなわち計算機システム内で一意の）識別子を示す。
【００６５】
Ｔａｐｅ１１９１３は、各テープグループ１４２に含まれる各テープ１３２の識別子である。例えば、図６では、ＴＧ＃０に対応するＴａｐｅ１１９１３として、「１０００、１００１、１００２」が格納されている。これは、ＴＧ＃０が、識別子「１０００」、「１００１」及び「１００２」によって識別される三つのテープ１３２を含むことを示す。
【００６６】
Ｋｅｙｗｏｒｄ１１９１４は、ユーザがテープグループ１４２を検索するときに使用されるキーワードを示す。ユーザは、データをテープグループ１４２にバックアップするときに、任意のキーワードを指定することができる（図１６参照）。例えば、ユーザは、バックアップ元である論理ボリューム１４０の識別子、及び、バックアップが実行された日時等をキーワードとして指定してもよい。このようにして指定されたキーワードが、Ｋｅｙｗｏｒｄ１１９１４として格納される。図６の例では、ＴＧ＃０に対応するＫｅｙｗｏｒｄ１１９１４として、「ＡＢＣＤ」が格納されている。
【００６７】
ユーザは、テープグループ１４２に格納されたデータを論理ボリューム１４０にコピーすることによって、論理ボリューム１４０を復元（リストア）することができる。このコピーを実行するときに、ユーザは、コピー元のテープグループ１４２を、Ｋｅｙｗｏｒｄ１１９１４に格納されたキーワードによって指定することができる（図１７参照）。
【００６８】
暗号化１１９１５は、各テープグループ１４２に暗号化されたデータが格納されるか否かを示す情報である。「ＯＮ」は暗号化されたデータが格納されることを、「ＯＦＦ」は暗号化されていない（すなわち平文の）データが格納されることを示す。ユーザは、テープグループ１４２へのデータのバックアップを実行する場合、そのデータを暗号化してテープグループ１４２に格納するか否かを予め決定し、その決定の結果を示す値（すなわち「ＯＮ」又は「ＯＦＦ」）を暗号化１１９１５として設定することができる。
【００６９】
図７は、本発明の実施形態の鍵情報テーブル１１２１の説明図である。
【００７０】
鍵情報テーブル１１２１は、テープグループ１４２に格納されるデータを暗号化するために使用される暗号鍵自体を保持する。具体的には、鍵情報テーブル１１２１は、鍵ＩＤ１１２１１及び鍵データ１１２１２を含む。
【００７１】
鍵ＩＤ１１２１１は、暗号鍵の識別子である。
【００７２】
鍵データ１１２１２は、暗号鍵、すなわち、テープグループ１４２に格納されるデータを暗号化するために使用されるデータ列である。この暗号鍵は、平文の状態で記録されてもよいが、暗号鍵の不正な読み出し及び使用を防ぐため、この暗号鍵自体が例えばコントローラ１１０が保持する所定の暗号鍵によって暗号化されていることが望ましい。
【００７３】
例えば、鍵ＩＤ１１２１１及び鍵データ１１２１２としてそれぞれ「ａａａａａａａａ」及び「Ｍｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」が記録される。この場合、識別子「ａａａａａａａａ」によって得られる暗号鍵が「Ｍｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」である。この暗号鍵が所定の暗号鍵によって暗号化されている場合、「Ｍｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」を復号化することによって得られたデータ列が暗号鍵として使用される。
【００７４】
図８は、本発明の実施形態のＴＧ鍵情報テーブル１１２２の説明図である。
【００７５】
ＴＧ鍵情報テーブル１１２２は、各テープグループ１４２に格納されるデータを暗号化するために使用される暗号鍵を管理する。具体的には、ＴＧ鍵情報テーブル１１２２は、ＴＧ番号１１２２１、予約鍵ＩＤ１１２２２及び取得鍵ＩＤ１１２２３を含む。
【００７６】
ＴＧ番号１１２２１は、各テープグループ１４２に付与された番号である。
【００７７】
予約鍵ＩＤ１１２２２は、次回に各テープグループ１４２に格納されるデータを暗号化するために使用される暗号鍵の識別子である。
【００７８】
取得鍵ＩＤ１１２２３は、現在各テープグループ１４２に格納されているデータを暗号化するために使用された暗号鍵の識別子である。
【００７９】
例えば、図８において、ＴＧ＃０に対応する予約鍵ＩＤ１１２２２及び取得鍵ＩＤ１１２２３としてそれぞれ「ａａａａａａａａ」及び「ａａａａａａａａ」が記録されている。これは、ＴＧ＃０に現在格納されているデータが、「ａａａａａａａａ」によって識別される暗号鍵によって暗号化されていること、及び、ＴＧ＃０に次回格納されるデータも「ａａａａａａａａ」によって識別される暗号鍵によって暗号化されることを示す。
【００８０】
一方、図８において、ＴＧ＃２に対応する予約鍵ＩＤ１１２２２として「ｃｃｃｃｃｃｃｃ」が格納され、取得鍵ＩＤ１１２２３には有効な値が格納されていない。これは、ＴＧ＃２に暗号化されたデータがまだ格納されていないこと、及び、ＴＧ＃２に次回格納されるデータは「ｃｃｃｃｃｃｃｃ」によって識別される暗号鍵によって暗号化されることを示す。
【００８１】
図９は、本発明の実施形態の鍵バックアップファイル９００の説明図である。
【００８２】
鍵バックアップファイル９００は、鍵情報テーブル１１２１に記録された暗号鍵をバックアップするために作成され、管理者によって保管される。
【００８３】
例えば、論理ボリューム１４０に格納されたデータの複製をバックアップのために暗号化してテープグループ１４２に格納した場合、そのデータをテープから読み出して、暗号化に使用された暗号鍵を用いて復号化しない限り、そのデータを論理ボリューム１４０にリストアすることができない。したがって、バックアップからリストアまでの間に暗号鍵が失われた場合、リストアをすることができなくなる。
【００８４】
あるいは、あるストレージシステム（例えばストレージシステム１０１Ａ）のコントローラ１１０によって暗号化されたデータを格納するテープグループ１４２を、別のストレージシステム（例えばストレージシステム１０１Ｂ）に装着して、そのストレージシステム１０１Ｂの論理ボリューム１４０にデータをリストアする場合がある。暗号化に使用された暗号鍵は、その暗号化を実行したコントローラ１１０（上記の例ではストレージシステム１０１Ａのコントローラ１１０）の鍵情報テーブル１１２１に記録される。したがって、その暗号鍵をストレージシステム１０１Ｂのコントローラ１１０にも保持させない限り、ストレージシステム１０１Ｂのコントローラ１１０は、そのテープグループ１４２のデータをリストアすることができない。このことは、バックアップデータの不正な読み出しを防ぐためには有効である。しかし、正当な使用のためにテープグループ１４２を別のストレージシステム１０１Ｂにマウントする場合には、暗号鍵を安全にストレージシステム１０１Ｂに与える必要がある。
【００８５】
鍵バックアップファイル９００は、上記のような場合に備えて暗号鍵を安全に保管するために作成される。
【００８６】
鍵バックアップファイル９００は、鍵ＩＤ９００１及び暗号化された鍵データ９００２を含む。
【００８７】
鍵ＩＤ９００１は、暗号鍵の識別子である。この識別子は、鍵情報テーブル１１２１の鍵ＩＤ１１２１１に対応する。
【００８８】
暗号化された鍵データ９００２は、鍵情報テーブル１１２１に記録された暗号鍵を別の暗号鍵によって暗号化することによって生成されたデータである。鍵情報テーブル１１２１に記録された暗号鍵が所定の暗号鍵によって暗号化されている場合、その所定の暗号鍵によって復号化した後、それをさらに後述する保護鍵によって暗号化することによって、鍵データ９００２が生成される。
【００８９】
なお、これらの暗号鍵を区別するために、以下の説明において、鍵情報テーブル１１２１に登録されている暗号鍵（すなわち、テープグループ１４２に格納されるデータを暗号化するために使用される暗号鍵）は、データ暗号鍵とも記載される。一方、データ暗号鍵を暗号化するために使用される暗号鍵は、保護鍵とも記載される。
【００９０】
保護鍵は、鍵情報テーブル１１２１に記録された暗号鍵を安全にバックアップするために使用される暗号鍵である。鍵管理プログラム１２０は、管理者によって入力された任意のパスワードに基づいて、保護鍵を生成することができる。
【００９１】
例えば、図９において、鍵ＩＤ９００１の値「ａａａａａａａａ」に対応する暗号化された鍵データ９００２として「Ｐｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」が記録されている。これは、「Ｐｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」が、図７に示す鍵ＩＤ１１２１１の値「ａａａａａａａａ」に対応する暗号鍵「Ｍｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」を保護鍵によって暗号化することによって生成されたデータであることを示す。
【００９２】
管理者は、生成された鍵バックアップファイル９００を、任意の場所、例えば、管理端末１０３、ホスト１０２、又は、図１に示す計算機システムに含まれない記憶媒体（図示省略）に格納することができる。
【００９３】
図１０は、本発明の実施形態のテープ格納情報１０００の説明図である。
【００９４】
テープ格納情報１０００は、テープグループ１４２にバックアップのためにデータが格納されるときに、そのテープグループに含まれるテープメディアに格納される。例えば、テープ格納情報１０００は、テープメディアに含まれる、巻き取られたテープの先頭又は末尾に格納されてもよい。あるいは、テープ格納情報１０００の一部がテープの先頭に、別の一部がテープの末尾に格納されてもよい。あるいは、テープメディアが、ケースに取り付けられたフラッシュメモリのような記憶媒体を含む場合、テープ格納情報１０００はその記憶媒体に格納されてもよい。
【００９５】
テープ格納情報は、ＴＧ１０００１、ＴＧ固有識別子１０００２、Ｔａｐｅ１０００３、Ｋｅｙｗｏｒｄ１０００４、暗号化１０００５及び鍵ＩＤ１０００６を含む。
【００９６】
ＴＧ１０００１、ＴＧ固有識別子１０００２、Ｔａｐｅ１０００３、Ｋｅｙｗｏｒｄ１０００４及び暗号化１０００５は、それぞれ、図６のＴＧ１１９１１、ＴＧ固有識別子１１９１２、Ｔａｐｅ１１９１３、Ｋｅｙｗｏｒｄ１１９１４及び暗号化１１９１５に対応する。鍵ＩＤ１０００６は、図７の鍵ＩＤ１１２１１に対応する。
【００９７】
次に、本実施形態において実行される処理について、フローチャートを参照して説明する。ＴＧ設定処理（図１１）及び鍵バックアップ処理（図１２）は、論理ボリューム１４０に格納されたデータをテープグループ１４２にバックアップする前に実行される。鍵リストア処理（図１３）及びテープインポート処理（図１４）は、テープグループ１４２にバックアップされたデータを論理ボリューム１４０にリストアする前に実行される。鍵変更処理（図１５）は、暗号鍵を変更するために実行される。バックアップ取得処理（図１７）及びテープからのリストア処理（図１８）は、それぞれ、論理ボリューム１４０に格納されたデータをテープグループ１４２にバックアップする処理、及び、テープグループ１４２に格納されたデータを論理ボリューム１４０にリストアする処理である。以下、これらの処理について詳細に説明する。
【００９８】
図１１は、本発明の実施形態のＴＧ設定処理を示すフローチャートである。
【００９９】
ＴＧ設定処理は、データのバックアップ先となるテープグループ１４２を新たに設定するために実行される。
【０１００】
最初に、管理者は、少なくともテープグループ番号及び暗号化ＯＮ／ＯＦＦを指定して、テープグループ１４２の設定を指示する（Ｓ１１０１）。具体的には、例えば管理者は、上記の指定を管理端末１０３に入力する。
【０１０１】
テープグループ番号は、新たに設定されるテープグループ１４２に付与される番号である。管理者は、テープ管理テーブル１１９１のＴＧ１１９１１にまだ登録されていない番号のうち、任意の番号を指定することができる。管理者は、複数のテープグループ１４２を新たに設定する必要がある場合、複数のテープグループ番号を指定してもよい。
【０１０２】
暗号化ＯＮ／ＯＦＦは、新たに設定されるテープグループ１４２に暗号化されたデータを格納するか否かを示す値である。管理者は、バックアップされるデータの内容等に基づいて、暗号化「ＯＮ」（すなわち、暗号化されたデータをテープグループ１４２に格納すること）、又は、暗号化「ＯＦＦ」（すなわち、暗号化されていないデータをテープグループ１４２に格納すること）を指定することができる。
【０１０３】
上記の指定を入力された管理プログラム３１０は、入力された指定を含む情報をコントローラ１１０に送信する（Ｓ１１０２）。
【０１０４】
この情報を受信したコントローラ１１０のテープ制御プログラム１１９は、指定に従って、テープグループ１４２をテープ管理テーブル１１９１に登録する（Ｓ１１０３）。具体的には、テープ制御プログラム１１９は、テープ管理テーブル１１９１に新たな行を追加し、その行のＴＧ１１９１１に、指定されたテープグループ番号を登録する。
【０１０５】
次に、テープ制御プログラム１１９は、このＴＧ設定処理によって新たに設定されるテープグループ１４２に暗号化されたデータが格納されるか否かを判定する（Ｓ１１０４）。具体的には、テープ制御プログラム１１９は、暗号化「ＯＮ」又は「ＯＦＦ」のいずれが指定されたかを判定する。
【０１０６】
暗号化「ＯＦＦ」が指定された場合、新たに設定されたテープグループ１４２に格納されるデータを暗号化するための暗号鍵を新たに生成する必要はない。このため、処理はＳ１１０８に進む。
【０１０７】
一方、暗号化「ＯＮ」が指定された場合、鍵管理プログラム１２０は、新しい鍵ＩＤ及び鍵データを生成する（Ｓ１１０５）。
【０１０８】
次に、鍵管理プログラム１２０は、生成した鍵ＩＤ及び鍵データを、それぞれ、鍵情報テーブル１１２１の鍵ＩＤ１１２１１及び鍵データ１１２１２に登録する（Ｓ１１０６）。
【０１０９】
次に、鍵管理プログラム１２０は、生成した鍵ＩＤを、ＴＧ鍵情報テーブル１１２２の指定されたテープグループ番号（ＴＧ番号１１２２１）に対応する予約鍵ＩＤ１１２２２に登録する（Ｓ１１０７）。
【０１１０】
次に、コントローラ１１０は、ステップ１１０１において指定されたテープグループ番号の全てについて上記のＳ１１０３からＳ１１０７までの処理が終了したか否かを判定する（Ｓ１１０８）。全てのテープグループ番号について上記の処理が終了していない場合、処理はＳ１１０３に戻り、残りのテープグループ番号についてＳ１１０３以降の処理が実行される。一方、全てのテープグループ番号について上記の処理が終了した場合、ＴＧ設定処理が終了する。
【０１１１】
例えば、Ｓ１１０１においてテープグループ番号「２」及び暗号化「ＯＮ」が指定された場合、テープ管理テーブル１１９１に新たに追加された行のＴＧ１１９１１及び暗号化１１９１５に、それぞれ、「２」及び「ＯＮ」が登録される（Ｓ１１０３）。この時点で、テープグループ番号「２」が付与されたテープグループ１４２（すなわちＴＧ＃２）にデータを格納するバックアップ処理は、まだ実行されていない。このため、ＴＧ＃２には、まだＴＧ固有識別子１１９１２が付与されておらず、テープ１３２もまだ割り当てられておらず、ＴＧ＃２を検索するためのキーワードもまだ決定されていない。したがって、この時点で、ＴＧ固有識別子１１９１２、Ｔａｐｅ１１９１３及びＫｅｙｗｏｒｄ１１９１４には有効な値が登録されていない（図６参照）。
【０１１２】
その後、Ｓ１１０５において例えば新たな鍵ＩＤ及び鍵データとしてそれぞれ「ｃｃｃｃｃｃｃｃ」及び「Ｍｚｚｚｚｚｚｚｚｚｚｚｚｚｚｚｚ」が生成された場合、鍵情報テーブル１１２１に新たに追加された行にこれらの値が登録される（Ｓ１１０６）（図７参照）。
【０１１３】
さらに、ＴＧ鍵情報テーブル１１２２の、テープグループ番号「２」に対応する予約鍵ＩＤ１１２２２に、生成された「ｃｃｃｃｃｃｃｃ」が登録される（Ｓ１１０７）。この時点で、まだ新たに生成されたデータ暗号鍵によって暗号化されたデータがテープグループ１４２に格納されていないため、テープグループ番号「２」に対応する取得鍵ＩＤ１１２２３には有効な値が登録されていない（図８参照）。
【０１１４】
通常、テープグループ１４２にバックアップされるデータは、論理ボリューム１４０から読み出された後、圧縮され、必要に応じて暗号化されてから、テープグループ１４２に格納される。圧縮後のデータ量は、圧縮前のデータの冗長性及び使用される圧縮アルゴリズム等に依存する。このため、圧縮を実行する前に圧縮後のデータ量を予測することは困難である。したがって、バックアップを実行する前に予めテープグループ１４２にテープ１３２を割り当てることはできない。
【０１１５】
しかし、本実施形態によれば、上記の図１１の処理を実行することによって、まだテープ１３２が割り当てられていないテープグループ１４２にデータ暗号鍵を割り当てることができる。
【０１１６】
図１２は、本発明の実施形態の鍵バックアップ処理を示すフローチャートである。
【０１１７】
鍵バックアップ処理は、生成されたデータ暗号鍵、すなわち、鍵情報テーブル１１２１に登録されている暗号鍵の少なくとも一つをバックアップするために実行される。この暗号鍵は、安全な保管のために、保護鍵によって暗号化されてからバックアップされる。
【０１１８】
管理者は、鍵バックアップ処理の対象となるテープグループ１４２のテープグループ番号及び派生用パスワードを管理プログラム３１０に入力する（Ｓ１２０１）。管理者は、鍵バックアップ処理の対象として複数のテープグループ１４２を指定してもよい。その場合、Ｓ１２０１において複数のテープグループ番号が入力される。
【０１１９】
派生用パスワードは、後述するように、保護鍵を生成するために使用される。管理者は、任意の文字列等を派生用パスワードとして入力することができる。
【０１２０】
次に、管理プログラム３１０は、入力された情報をコントローラ１１０に送信する（Ｓ１２０２）。
【０１２１】
この情報を受信したコントローラ１１０の鍵管理プログラム１２０は、派生用パスワードに基づいて保護鍵を生成し、生成した保護鍵を用いてデータ暗号鍵を暗号化する（Ｓ１２０３）。
【０１２２】
具体的には、鍵管理プログラム１２０は、ＴＧ鍵情報テーブル１１２２を参照して、入力されたテープグループ番号と同一のテープグループ番号１１２２１に対応する予約鍵ＩＤ１１２２２及び取得鍵ＩＤ１１２２３の少なくとも一方に登録されている鍵ＩＤを特定する。そして、鍵管理プログラム１２０は、鍵情報テーブル１１２１を参照して、特定された鍵ＩＤと同一の鍵ＩＤ１１２１１に対応する鍵データ１１２１２を取得し、その鍵データ１１２１２を暗号化する。
【０１２３】
なお、Ｓ１２０１において複数のテープグループ番号が入力された場合、入力された全てのテープグループ番号についてＳ１２０３の処理が実行される。
【０１２４】
次に、鍵管理プログラム１２０は、暗号化されたデータ暗号鍵及び鍵属性情報を管理プログラム３１０に送信する（Ｓ１２０４）。鍵属性情報は、少なくとも、暗号化されたデータ暗号鍵に対応する鍵ＩＤ１１２１１の値を含む。暗号化されたデータ暗号鍵及び鍵属性情報は、鍵バックアップファイル９００として送信されてもよい。
【０１２５】
管理者は、鍵バックアップファイル９００を取得し、保管する（Ｓ１２０５）。管理者は、Ｓ１２０１において自分が管理しようとするテープグループ１４２のみを指定することによって、自分が必要とする暗号鍵のみを含む鍵バックアップファイル９００を取得することができる。
【０１２６】
上記の図１１及び図１２の処理によれば、鍵バックアップファイル９００の取得は、まだテープグループ１４２に実際にバックアップデータが格納される前に実行することができる。このため、管理者は、自分が管理しようとするテープグループ１４２が既に決定している場合、そのテープグループ１４２がまだ使用されていない段階（例えば、初期設定の段階）で鍵バックアップファイル９００を取得しておけば、以後、暗号鍵を変更しない限り、再度鍵バックアップファイル９００を取得する必要がない。
【０１２７】
この鍵バックアップファイル９００は、漏洩して不正に使用されたり、紛失したりすることのないように安全に保管される必要がある。例えば、鍵バックアップファイル９００は、図１の計算機システムとは別のサイトで保管されてもよい。さらに、Ｓ１２０３において使用された派生用パスワードは、暗号化されたデータ暗号鍵を復号化するために必要であるため、管理者によって安全に保管される必要がある。
【０１２８】
以上で、鍵バックアップ処理が終了する。
【０１２９】
図１３は、本発明の実施形態の鍵リストア処理を示すフローチャートである。
【０１３０】
鍵リストア処理は、鍵バックアップファイル９００を用いてデータ暗号鍵をコントローラ１１０内に復元（リストア）するために実行される。
【０１３１】
例えば、ストレージシステム１０１Ａのコントローラ１１０においてデータ暗号鍵が生成され、そのデータ暗号鍵を使用したストレージシステム１０１Ａの論理ボリューム１４０からストレージシステム１０１Ａのテープグループ１４２へのバックアップが実行された後で、ハードウェア障害、ソフトウェア障害又は人為的な誤操作等によってデータ暗号鍵が失われる場合がある。データ暗号鍵が失われると、テープグループ１４２にバックアップされたデータを読み出しても、それを復号化して利用することができない。このような場合、鍵リストア処理を実行することによって、ストレージシステム１０１Ａのコントローラ１１０にデータ暗号鍵をリストアすることができる。
【０１３２】
あるいは、上記と同様にストレージシステム１０１Ａのテープグループ１４２へのバックアップが実行された後、そのテープグループ１４２がストレージシステム１０１Ａから取り出され、別のストレージシステム、例えばストレージシステム１０１Ｂに装着される場合がある。ストレージシステム１０１Ｂのコントローラ１１０は、そのテープグループ１４２のデータ暗号鍵を保持していなければ、そのデータを復号化して利用することができない。このような場合、鍵リストア処理を実行することによって、ストレージシステム１０１Ｂのコントローラ１１０にデータ暗号鍵をリストアすることができる。
【０１３３】
データ暗号鍵をリストアされると、コントローラ１１０は、テープグループ１４２から読み出されたデータを復号化して利用することができる。
【０１３４】
最初に、管理者は、鍵バックアップファイル９００及び派生用パスワードを管理プログラム３１０に入力する（Ｓ１３０１）。
【０１３５】
管理プログラム３１０は、入力された情報を、リストア先のコントローラ１１０に送信する（Ｓ１３０２）。
【０１３６】
この情報を受信したコントローラ１１０の鍵管理プログラム１２０は、派生用パスワードに基づいて保護鍵を生成し、生成された保護鍵を用いてデータ暗号鍵を復号化する（Ｓ１３０３）。
【０１３７】
次に、鍵管理プログラム１２０は、復号化されたデータ暗号鍵、及び、そのデータ暗号鍵に対応する鍵ＩＤを、それぞれ、鍵情報テーブル１１２１の鍵データ１１２１２及び鍵ＩＤ１１２１１に登録する（Ｓ１３０４）。
【０１３８】
以上で鍵リストア処理が終了する。
【０１３９】
図１４は、本発明の実施形態のテープインポート処理を示すフローチャートである。
【０１４０】
テープインポート処理は、テープメディアに格納されたテープ格納情報１０００をテープ管理テーブル１１９１に登録するために実行される。この処理は、例えば、テープグループを構成するテープメディアがテープライブラリ装置１３０に挿入されたときに実行される。
【０１４１】
最初に、テープ制御プログラム１１９は、テープメディアからテープ格納情報１０００を読み込む（Ｓ１４０１）。
【０１４２】
次に、テープ制御プログラム１１９は、読み込まれたテープ格納情報１０００のＴＧ１０００１と、既にテープ管理テーブル１１９１に登録されているＴＧ１１９１１とが重複するか否か（すなわち、ＴＧ１０００１と同一の値が既にＴＧ１１９１１として登録されているか否か）を判定する（Ｓ１４０２）。
【０１４３】
既に説明したように、コントローラ１１０は、そのコントローラ１１０によって制御される範囲内で一意のテープグループ番号を各テープグループ１４２に付与するが、その番号は計算機システム内で一意ではない。言い換えると、一つの計算機システム内に、同一のテープグループ番号が付与された、互いに異なるテープグループ１４２が存在する可能性がある。このため、あるコントローラ１１０によってテープグループ番号を付与されたテープグループ１４２が、そのコントローラ１１０とは別のコントローラ１１０によって制御されるテープライブラリ装置１３０に挿入された場合、そのコントローラ１１０によって制御される範囲内でテープグループ番号の重複が発生する可能性がある。
【０１４４】
しかし、コントローラ１１０が正しくデータの暗号化及び復号化を制御するためには、少なくとも、一つのコントローラ１１０によって制御される範囲内で、テープグループ番号が一意である必要がある。このため、Ｓ１４０２においてテープグループ番号の重複が検出された場合、テープグループ番号を変更することによって重複を解消する必要がある。
【０１４５】
Ｓ１４０２において、読み込まれたＴＧ１０００１と同一の値が既にＴＧ１１９１１として登録されていると判定された場合、解消すべきテープグループ番号の重複が発生している。この場合管理者は、少なくともコントローラ１１０が制御する範囲内で一意の新たなテープグループ番号を指定する（Ｓ１４０３）。
【０１４６】
次に、テープ制御プログラム１１９は、読み込まれたテープ格納情報１０００をテープ管理テーブル１１９１に登録する（Ｓ１４０４）。具体的には、テープ制御プログラム１１９は、読み込まれたテープ格納情報１０００のＴＧ１０００１、ＴＧ固有識別子１０００２、Ｔａｐｅ１０００３、Ｋｅｙｗｏｒｄ１０００４及び暗号化１０００５の値を、テープ管理テーブル１１９１に新たに追加された行のＴＧ１１９１１、ＴＧ固有識別子１１９１２、Ｔａｐｅ１１９１３、Ｋｅｙｗｏｒｄ１１９１４及び暗号化１１９１５に登録する。
【０１４７】
ただし、Ｓ１４０３において新たなテープグループ番号が指定された場合、読み込まれたＴＧ１０００１の代わりに、Ｓ１４０３において指定された新たなテープグループ番号がＴＧ１１９１１に登録される。
【０１４８】
一方、Ｓ１４０２において、読み込まれたＴＧ１０００１と同一の値が既にＴＧ１１９１１として登録されていないと判定された場合、解消すべきテープグループ番号の重複が発生していない。この場合、Ｓ１４０３は実行されない。このため、Ｓ１４０４において、読み込まれたＴＧ１０００１がＴＧ１１９１１に登録される。
【０１４９】
なお、Ｓ１４０２において、読み込まれたＴＧ１０００１と同一の値が既にＴＧ１１９１１として登録されていると判定された場合であっても、それらのＴＧ１０００１及びＴＧ１１９１１に対応するＴＧ固有識別子１０００２及びＴＧ固有識別子１１９１２が同一である場合がある。この場合、読み込まれたＴＧ１０００１と、それと同一のＴＧ１１９１１とは、同一のテープグループ１４２に付与されたものである。したがって、この場合は解消すべきテープグループ番号の重複が発生していないため、Ｓ１４０３は実行されない。
【０１５０】
次に、テープ制御プログラム１１９は、読み込まれたテープ格納情報１０００に対応するテープグループ１４２（すなわち、読み込まれたテープ格納情報１０００が格納されたテープメディアによって構成されるテープグループ１４２）に格納されているデータが暗号化されているか否かを判定する（Ｓ１４０５）。具体的には、テープ制御プログラム１１９は、読み込まれたテープ格納情報１０００の暗号化１０００５の値が「ＯＮ」であるか否かを判定する。
【０１５１】
データが暗号化されていると判定された場合、鍵管理プログラム１２０は、読み込まれたテープ格納情報１０００の鍵ＩＤ１０００６の値を、ＴＧ鍵情報テーブル１１２２に登録する（Ｓ１４０６）。具体的には、鍵管理プログラム１２０は、ＴＧ鍵情報テーブル１１２２に新たな行を追加し、その行のテープグループ番号１１２２１及び取得鍵ＩＤ１１２２３に、それぞれ、読み込まれたＴＧ１０００１（又はＳ１４０３で指定されたテープグループ番号）及び読み込まれた鍵ＩＤ１０００６の値を登録する。
【０１５２】
以上でテープインポート処理が終了する。なお、Ｓ１４０５において、データが暗号化されていないと判定された場合、Ｓ１４０６は実行されずにテープインポート処理が終了する。
【０１５３】
図１５は、本発明の実施形態の鍵変更処理を示すフローチャートである。
【０１５４】
鍵変更処理は、データ暗号鍵を変更するために実行される。
【０１５５】
最初に、管理者は、テープグループ１４２を選択し、そのテープグループ１４２に格納されるデータを暗号化するためのデータ暗号鍵を変更する指示を管理プログラム３１０に入力する（Ｓ１５０１）。
【０１５６】
管理プログラム３１０は、入力された情報をコントローラ１１０に送信する（Ｓ１５０２）。
【０１５７】
この情報を受信したコントローラ１１０の鍵管理プログラム１２０は、新しい鍵ＩＤ及び新しい鍵データを生成する（Ｓ１５０３）。
【０１５８】
次に、鍵管理プログラム１２０は、生成した新しい鍵ＩＤ及び新しい鍵データを、それぞれ、鍵情報テーブル１１２１の鍵ＩＤ１１２１１及び鍵データ１１２１２に登録する（Ｓ１５０４）。
【０１５９】
次に、鍵管理プログラム１２０は、生成した新しい鍵ＩＤをＴＧ鍵情報テーブル１１２２に登録する（Ｓ１５０５）。具体的には、鍵管理プログラム１２０は、Ｓ１５０１において選択されたテープグループ１４２のテープグループ番号１１２２１に対応する予約鍵ＩＤ１１２２２に、生成した新しい鍵ＩＤを登録する。
【０１６０】
以上で鍵変更処理が終了する。
【０１６１】
図１６は、本発明の実施形態のバックアップ取得処理を示すフローチャートである。
【０１６２】
バックアップ取得処理は、論理ボリューム１４０に格納されているデータをテープグループ１４２にバックアップするために実行される。あるいは、バックアップ取得処理は、あるテープグループ１４２に格納されているデータを別のテープグループ１４２にバックアップするために実行されてもよい。
【０１６３】
最初に、指示プログラム２２０は、バックアップ指示を発行する（Ｓ１６０１）。このバックアップ指示は、一つ又は複数のバックアップ対象及びキーワードの指定を含む。
【０１６４】
バックアップ対象の指定は、バックアップ元（すなわちデータのコピー元）である論理ボリューム１４０又はテープグループ１４２の指定、及び、バックアップ先（すなわちデータのコピー先）であるテープグループ１４２の指定を含む。キーワードは、ユーザがテープグループ１４２を検索するときに使用されるキーワードであり、後でテープ管理テーブル１１９１のＫｅｙｗｏｒｄ１１９１４として登録される。例えば、ユーザ又は管理者が任意のバックアップ対象及び任意のキーワードを指定してもよい。
【０１６５】
次に、コピー制御プログラム１１７は、テープ管理テーブル１１９１を参照する（Ｓ１６０２）。
【０１６６】
次に、コピー制御プログラム１１７は、バックアップ先として指定されたテープグループ１４２に対応する暗号化１１９１５の値が「ＯＮ」であるか否かを判定する（Ｓ１６０３）。
【０１６７】
暗号化１１９１５の値が「ＯＮ」であると判定された場合、バックアップ先として指定されたテープグループ１４２に暗号化されたデータをバックアップする必要がある。このため、コピー制御プログラム１１７は、指定されたテープグループ１４２に予め割り当てられているデータ暗号鍵をテープドライブ１３１に設定する（Ｓ１６０４）。
【０１６８】
具体的には、コピー制御プログラム１１７は、ＴＧ鍵情報テーブル１１２２を参照して、バックアップ先として指定されたテープグループ１４２に対応する予約鍵ＩＤ１１２２２を特定する。そして、コピー制御プログラム１１７は、鍵情報テーブル１１２１を参照して、特定された予約鍵ＩＤ１１２２２と同一の鍵ＩＤ１１２１１によって識別される鍵データ１１２１２をテープドライブ１３１に設定する。
【０１６９】
さらに、Ｓ１６０４においてコピー制御プログラム１１７は、特定された予約鍵ＩＤ１１２２２の値を、バックアップ先として指定されたテープグループ１４２に対応する取得鍵ＩＤ１１２２３として登録する。
【０１７０】
次に、コピー制御プログラム１１７は、指示されたバックアップのためのデータコピーを実行する（Ｓ１６０５）。具体的には、コピー制御プログラム１１７は、指定されたバックアップ元からデータを読み出す。そして、コピー制御プログラム１１７は、バックアップ先として指定されたテープグループ１４２に読み出されたデータを格納することをテープドライブ１３１に指示する。テープドライブ１３１は、Ｓ１６０４において設定された鍵データ１１２１２を用いてデータを暗号化し、暗号化されたデータをテープグループ１４２に含まれる各テープ１３２に格納する。
【０１７１】
さらに、Ｓ１６０５においてコピー制御プログラム１１７は、テープ格納情報１０００を生成し、そのテープ格納情報１０００をテープメディアに格納することをテープドライブ１３１に指示する。
【０１７２】
具体的には、Ｓ１６０５のコピーの実行の結果、テープ管理テーブル１１９１のうち、コピー先（すなわちバックアップ先）のテープグループ１４２に関する内容が確定する。コピー制御プログラム１１７は、確定した内容をテープ管理テーブル１１９１に反映させる。さらに、コピー制御プログラム１１７は、確定した内容が反映されたテープ格納情報１０００を生成し、テープメディアに格納させる。
【０１７３】
図１１を参照して説明したように、ＴＧ設定処理が終了した時点で、設定されたテープグループ１４２に対応するＴＧ固有識別子１１９１２、Ｔａｐｅ１１９１３及びＫｅｙｗｏｒｄ１１９１４の値は確定していない。その後、Ｓ１６０５のコピーが実行されると、これらの値が確定し、テープ管理テーブル１１９１に登録される。
【０１７４】
例えば、Ｓ１６０１において、バックアップ先としてＴＧ＃０、キーワードとして「ＡＢＣＤ」が指定された場合について説明する。
【０１７５】
バックアップ取得処理が実行される前の時点において、テープ管理テーブル１１９１のＴＧ＃０に対応するＴＧ固有識別子１１９１２、Ｔａｐｅ１１９１３及びＫｅｙｗｏｒｄ１１９１４には有効な値が登録されていない。
【０１７６】
その後、Ｋｅｙｗｏｒｄ１１９１４には、Ｓ１６０１において指定された「ＡＢＣＤ」が登録される。
【０１７７】
Ｓ１６０５のコピーの実行の結果、ＴＧ＃０の固有識別子として「ＡＡＡＡＡＡＡＡ」が決定された場合、「ＡＡＡＡＡＡＡＡ」がＴＧ固有識別子１１９１２として登録される。
【０１７８】
Ｓ１６０５のコピーの実行の結果、コピー元の論理ボリューム１４０のデータが、テープ番号「１００１」、「１００２」及び「１００３」によって識別される三つのテープ１３２に格納された場合、「１００１」、「１００２」及び「１００３」がＴａｐｅ１１９１３として登録される。
【０１７９】
この場合、Ｓ１６０５において生成されるテープ格納情報１０００のＴＧ１０００１、ＴＧ固有識別子１０００２、Ｔａｐｅ１０００３、Ｋｅｙｗｏｒｄ１０００４及び暗号化１０００５として、それぞれ、ＴＧ＃０に対応するＴＧ１１９１１、ＴＧ固有識別子１１９１２、Ｔａｐｅ１１９１３、Ｋｅｙｗｏｒｄ１１９１４及び暗号化１１９１５と同じ値が設定される。さらに、ＴＧ鍵情報テーブル１１２２に基づいて、ＴＧ＃０に対応する取得鍵ＩＤ１１２２３の値「ａａａａａａａａ」が鍵ＩＤ１０００６として設定される。
【０１８０】
ただし、既に説明したように、一般にバックアップされるデータは圧縮されるため、一つのテープグループが最終的にいくつのテープ１３２を含むか、Ｓ１６０５のコピーの実行が終了するまでわからない。
【０１８１】
例えば、テープ番号「１００１」、「１００２」及び「１００３」によって識別される三つのテープ１３２に、バックアップされるデータがそのテープ番号の順に格納される場合、テープ番号「１００１」によって識別されるテープ１３２へのデータの格納が終了した時点では、残りのデータがどのテープ１３２に格納されるか確定していない。
【０１８２】
このため、例えば、テープ番号「１００１」及び「１００２」によって識別されるテープ１３２のテープメディアに格納されるテープ格納情報１０００のＴａｐｅ１０００３には、情報を登録せず、コピーが終了した際の最終テープであるテープ番号「１００３」によって識別されるテープ１３２のテープメディアに格納されるテープ格納情報１０００のＴａｐｅ１０００３のみ、「１００１」、「１００２」及び「１００３」が登録されてもよい。
【０１８３】
一方、Ｓ１６０３において暗号化１１９１５の値が「ＯＦＦ」であると判定された場合、バックアップ先として指定されたテープグループ１４２にバックアップするデータを暗号化する必要がない。このため、コピー制御プログラム１１７は、暗号化「ＯＦＦ」（すなわち、暗号化しないことを示す情報）をテープドライブ１３１に設定する（Ｓ１６０６）。
【０１８４】
次に、コピー制御プログラム１１７は、指示されたバックアップを実行する（Ｓ１６０７）。Ｓ１６０７において実行される処理は、Ｓ１６０５において実行されるものと同様である。ただし、データを暗号化する必要がないため、テープドライブ１３１は、データを暗号化せずに各テープ１３２に格納する。
【０１８５】
Ｓ１６０５又はＳ１６０７が実行された後、テープ制御プログラム１１９は、指定されたキーワードを、バックアップ先として指定されたテープグループ１４２に対応するＫｅｙｗｏｒｄ１１９１４として、テープ管理テーブル１１９１に登録する。さらに、テープ制御プログラム１１９は、決定されたＴＧ固有識別子及びテープ番号をテープ管理テーブル１１９１のＴＧ固有識別子１１９１２及びＴａｐｅ１１９１３に登録する（Ｓ１６０８）。
【０１８６】
次に、コピー制御プログラム１１７は、指定された全てのテープグループ１４２について上記のバックアップの実行が終了したか否かを判定する（Ｓ１６０９）。
【０１８７】
全てのテープグループ１４２についてバックアップの実行が終了していない場合、処理はＳ１６０２に戻り、残りのテープグループ１４２についてのバックアップが実行される。
【０１８８】
全てのテープグループ１４２についてバックアップの実行が終了した場合、バックアップ取得処理が終了する。
【０１８９】
図１７は、本発明の実施形態のテープからのリストア処理を示すフローチャートである。
【０１９０】
テープからのリストア処理は、テープグループ１４２に格納されているデータを論理ボリューム１４０（又は別のテープグループ１４２）にリストアするために実行される。
【０１９１】
最初に、指示プログラム２２０は、リストア指示を発行する（Ｓ１７０１）。このリストア指示は、一つ又は複数のリストア対象又はキーワードの指定を含む。
【０１９２】
リストア対象の指定は、リストア元（すなわちデータのコピー元）であるテープグループ１４２の指定、及び、リストア先（すなわちデータのコピー先）である論理ボリューム１４０又はテープグループ１４２の指定を含む。キーワードは、図１６におけるものと同様、ユーザがテープグループ１４２を検索するときに使用されるキーワードである。
【０１９３】
キーワードが指定された場合、コントローラ１１０のテープ制御プログラム１１９は、テープ管理テーブル１１９１を参照して、指定されたキーワードと同一のＫｅｙｗｏｒｄ１１９１４に対応するテープグループ１４２、及び、そのテープグループ１４２に含まれるテープ１３２を、リストア元（すなわちデータのコピー元）として指定する（Ｓ１７０２）。
【０１９４】
次に、コピー制御プログラム１１７は、テープ管理テーブル１１９１を参照して、リストア元として指定されたテープグループ１４２に対応する暗号化１１９１５の値が「ＯＮ」であるか否かを判定する（Ｓ１７０３）。
【０１９５】
暗号化１１９１５の値が「ＯＮ」であると判定された場合、リストア元として指定されたテープグループ１４２には暗号化されたデータが格納されている。すなわち、そのテープグループ１４２から読み出されたデータを復号化する必要がある。このため、コピー制御プログラム１１７は、データ暗号鍵をテープドライブ１３１に設定する（Ｓ１７０４）。
【０１９６】
具体的には、コピー制御プログラム１１７は、ＴＧ鍵情報テーブル１１２２を参照して、バックアップ先として指定されたテープグループ１４２に対応する取得鍵ＩＤ１１２２３を特定する。そして、コピー制御プログラム１１７は、鍵情報テーブル１１２１を参照して、特定された取得鍵ＩＤ１１２２３と同一の鍵ＩＤ１１２１１によって識別される鍵データ１１２１２をテープドライブ１３１に設定する。
【０１９７】
次に、コピー制御プログラム１１７は、指示されたリストアのためのデータコピーを実行する（Ｓ１７０５）。具体的には、まず、テープライブラリ装置１３０が、コピー制御プログラム１１７からの指示に従って、指定されたテープグループ１４２に含まれるテープ１３２をテープドライブ１３１に装着する。テープドライブ１３１は、装着されたテープからデータを読み出し、設定された鍵データ１１２１２を用いて読み出されたデータを復号化する。コピー制御プログラム１１７は、復号化されたデータをリストア先にコピーする。
【０１９８】
一方、Ｓ１７０３において暗号化１１９１５の値が「ＯＦＦ」であると判定された場合、リストア元として指定されたテープグループ１４２には暗号化されていないデータが格納されている。すなわち、そのテープグループ１４２から読み出されたデータを復号化する必要がない。この場合、コピー制御プログラム１１７は、指示されたリストアのためのデータコピーを実行する（Ｓ１７０６）。
【０１９９】
Ｓ１７０６において実行される処理は、Ｓ１７０５において実行されるものと同様である。ただし、格納されているデータが暗号化されていないため、テープドライブ１３１は、データを復号化しない。
【０２００】
次に、コピー制御プログラム１１７は、指定された全てのテープグループ１４２について上記のリストアの実行が終了したか否かを判定する（Ｓ１７０８）。
【０２０１】
全てのテープグループ１４２についてリストアの実行が終了していない場合、処理はＳ１７０２に戻り、残りのテープグループ１４２についてのリストアが実行される。
【０２０２】
全てのテープグループ１４２についてリストアの実行が終了した場合、テープからのリストア処理が終了する。
【０２０３】
以上の本発明の実施形態によれば、論理的な管理単位であるテープグループごとに暗号鍵を割り当てることによって、使用される暗号鍵の数を必要最小限に抑えることができる。また、本実施形態によれば、まだ実際にテープが割り当てられていないテープグループに予め暗号鍵を割り当てることができる。このため、管理者は、自分が管理する必要があるテープグループの暗号鍵のバックアップファイルを初期設定時に保存すれば、以後、暗号鍵が変更されない限り、再び暗号鍵のバックアップファイルを取得する必要がない。このため、鍵の管理が容易になる。
【０２０４】
さらに、従来の鍵管理サーバ等は暗号化されていない暗号鍵を扱うため、鍵管理サーバ等を安全に保つ必要があった。このため、従来の鍵管理サーバ等は、暗号鍵を安全に保つための特殊なハードウェア等を備える必要があり、その結果コストが上昇するという問題があった。しかし、本実施形態によれば、暗号鍵のバックアップファイルは、保護鍵によって暗号化される。したがって、暗号鍵のバックアップファイルを高価な鍵管理サーバ等に保管する必要がないため、低コストで安全に鍵を管理することができる。
【図面の簡単な説明】
【０２０５】
【図１】本発明の実施形態の計算機システムの構成を示すブロック図である。
【図２】本発明の実施形態のコントローラの構成を示すブロック図である。
【図３】本発明の実施形態のディスク装置が提供する記憶領域の説明図である。
【図４】本発明の実施形態のテープグループの説明図である。
【図５】本発明の実施形態のディスク管理テーブルの説明図である。
【図６】本発明の実施形態のテープ管理テーブルの説明図である。
【図７】本発明の実施形態の鍵情報テーブルの説明図である。
【図８】本発明の実施形態のＴＧ鍵情報テーブルの説明図である。
【図９】本発明の実施形態の鍵バックアップファイルの説明図である。
【図１０】本発明の実施形態のテープ格納情報の説明図である。
【図１１】本発明の実施形態のＴＧ設定処理を示すフローチャートである。
【図１２】本発明の実施形態の鍵バックアップ処理を示すフローチャートである。
【図１３】本発明の実施形態の鍵リストア処理を示すフローチャートである。
【図１４】本発明の実施形態のテープインポート処理を示すフローチャートである。
【図１５】本発明の実施形態の鍵変更処理を示すフローチャートである。
【図１６】本発明の実施形態のバックアップ取得処理を示すフローチャートである。
【図１７】本発明の実施形態のテープからのリストア処理を示すフローチャートである。
【符号の説明】
【０２０６】
１０１Ａ、１０１Ｂ  ストレージシステム
１１０  コントローラ
１１１  メモリ
１１２  ＣＰＵ
１１３  上位インターフェース（Ｉ／Ｆ）
１１４  下位Ｉ／Ｆ
１１５  Ｉ／Ｆ
１１６  ブリッジ
１１７  コピー制御プログラム
１１８  ディスク制御プログラム
１１９  テープ制御プログラム
１２０  鍵管理プログラム
１５０Ａ〜１５０Ｎ  ディスク装置
１３０  テープライブラリ装置
１３１Ａ、１３１Ｂ  テープドライブ
１３２Ａ〜１３２Ｎ  テープ
１４０Ａ〜１４０Ｃ  論理ボリューム
１４２Ａ、１４２Ｂ  テープグループ
【図１】
2009193125.tif 000003
【図２】
2009193125.tif 000004
【図３】
2009193125.tif 000005
【図４】
2009193125.tif 000006
【図５】
2009193125.tif 000007
【図６】
2009193125.tif 000008
【図７】
2009193125.tif 000009
【図８】
2009193125.tif 000010
【図９】
2009193125.tif 000011
【図１０】
2009193125.tif 000012
【図１１】
2009193125.tif 000013
【図１２】
2009193125.tif 000014
【図１３】
2009193125.tif 000015
【図１４】
2009193125.tif 000016
【図１５】
2009193125.tif 000017
【図１６】
2009193125.tif 000018
【図１７】
2009193125.tif 000019