(57)【要約】【課題】  ストレージ・ドライブを暗号化マネージャ及び鍵マネージャと通信するように構成するための方法、システム、及び製品を提供すること。【解決手段】  提供されるのは、ストレージ・ドライブを暗号化マネージャ及び鍵マネージャと通信するように構成するための方法、システム、及び製品である。ストレージ・ドライブは、ドライブ動作のために結合される取外し可能記憶媒体へのアクセス要求を受信する。ストレージ・ドライブは、結合される取外し可能記憶媒体に関する暗号化状態情報を暗号化マネージャから取得する。ストレージ・ドライブは、取得された暗号化状態情報から、アクセスのために結合される取外し可能記憶媒体を暗号化するかどうかを判断する。ストレージ・ドライブは、結合される取外し可能記憶媒体に関して暗号化する判断に応じて少なくとも１つの鍵を鍵マネージャから取得する。ストレージ・ドライブは、少なくとも１つの鍵を用いてデータ演算を実行してデータを暗号化する。【選択図】      図１
2010503301.tif 000002
【特許請求の範囲】
【請求項１】
ストレージ・ドライブを構成する方法であって、
ストレージ・ドライブにおいて、ドライブ動作のために結合可能な取外し可能記憶媒体へのアクセス要求を受信するステップと、
前記ストレージ・ドライブによって、前記結合可能な取外し可能記憶媒体に関する暗号化状態情報を暗号化マネージャから取得するステップと、
前記ストレージ・ドライブによって、前記取得された暗号化状態情報から、アクセスのために前記結合可能な取外し可能記憶媒体を暗号化するかどうかを判断するステップと、
前記ストレージ・ドライブによって、前記結合可能な取外し可能記憶媒体に対して暗号化する判断に応じて、少なくとも１つの鍵を鍵マネージャから取得するステップと、
前記ストレージ・ドライブによって、前記少なくとも１つの鍵を用いてデータ演算を実行しデータを暗号化するステップと
を含む方法。
【請求項２】
前記暗号化マネージャは、ホスト・アプリケーション、ホスト・システム・コンポーネント、及びストレージ・ライブラリを含む一組の暗号化マネージャの一要素である、請求項１に記載の方法。
【請求項３】
前記ストレージ・ドライブは、第１通信インターフェースにより前記ホスト・アプリケーション及びホスト・システム・コンポーネントから前記暗号化状態情報を取得し、第２通信インターフェースにより前記ストレージ・ライブラリから前記暗号化状態情報を取得する、請求項２に記載の方法。
【請求項４】
前記鍵マネージャは、ホスト・アプリケーション、ホスト・システム・コンポーネント又はストレージ・ライブラリに関連付けられる、請求項１に記載の方法。
【請求項５】
前記ストレージ・ドライブは、第１通信インターフェースにより、前記ホスト・アプリケーション及び前記ホスト・システム・コンポーネントに関連付けられた前記鍵マネージャから前記少なくとも１つの鍵を取得し、第２通信インターフェースにより、前記ストレージ・ライブラリに関連付けられた前記鍵マネージャから前記少なくとも１つの鍵を取得する、請求項４に記載の方法。
【請求項６】
前記ストレージ・ドライブにおいて、各々の暗号化方法が前記暗号化状態情報を供給する暗号化マネージャを指示する、少なくとも１つの暗号化方法を指示するドライブ構成情報を受信するステップと、
前記ストレージ・ドライブによって、前記受信した構成情報を前記ストレージ・ドライブにストアするステップと
をさらに含む、請求項１に記載の方法。
【請求項７】
前記構成情報は、暗号化マネージャの階層的暗号化マネージャ順序付けを示し、
前記階層的暗号化マネージャ順序付けにおける最高順序を有する利用可能な前記暗号化マネージャが前記暗号化状態情報を供給する、
請求項６に記載の方法。
【請求項８】
前記ストレージ・ドライブにおいて、各々の鍵パスが前記少なくとも１つの鍵を供給する前記鍵マネージャを指示する、少なくとも１つの鍵パスを指示する構成情報を受信するステップと、
前記ストレージ・ドライブによって、前記受信した構成情報を前記ストレージ・ドライブにストアするステップと
をさらに含む、請求項１に記載の方法。
【請求項９】
前記構成情報は、鍵パスの階層的鍵パス順序付けを示し、
前記少なくとも１つの鍵は、前記階層的鍵パス順序付けにおける最高順序を有する利用可能な前記鍵マネージャから取得される、
請求項８に記載の方法。
【請求項１０】
暗号化マネージャ及び鍵マネージャと通信するように動作可能であり且つ取外し可能記憶媒体に結合可能なシステムであって、
ドライブ動作のために前記結合可能な取外し可能記憶媒体へのアクセス要求を受信するように動作可能な入力／出力マネージャと、
暗号化マネージャから、前記結合可能な取外し可能記憶媒体に関する暗号化状態情報を取得し、
前記取得した暗号化状態情報から、前記結合可能な取外し可能記憶媒体をアクセスのために暗号化するかどうかを判断し、
前記結合可能な取外し可能記憶媒体に対して暗号化する判断に応じて、少なくとも１つの鍵を鍵マネージャから取得するように動作可能な鍵管理コードと、
前記少なくとも１つの鍵を用いてデータ演算を実行しデータを暗号化するように動作可能な暗号化エンジンと
を含むシステム。
【請求項１１】
前記暗号化マネージャは、ホスト・アプリケーション、ホスト・システム・コンポーネント、及びストレージ・ライブラリを含む一組の暗号化マネージャの一要素である、請求項１０に記載のシステム。
【請求項１２】
前記ホスト・アプリケーション及びホスト・システム・コンポーネントから前記暗号化状態情報がそれを通じて取得される、第１通信インターフェースと、
前記ストレージ・ライブラリから前記暗号化状態情報がそれを通じて取得される、第２通信インターフェースと
をさらに含む、請求項１１に記載のシステム。
【請求項１３】
前記鍵マネージャは、ホスト・アプリケーション、ホスト・システム・コンポーネント又はストレージ・ライブラリに関連付けられる、請求項１０に記載のシステム。
【請求項１４】
前記ホスト・アプリケーション及び前記ホスト・システム・コンポーネントに関連付けられる前記鍵マネージャから前記少なくとも１つの鍵がそれを通じて取得される、第１通信インターフェースと、
前記ストレージ・ライブラリに関連付けられる前記鍵マネージャから前記少なくとも１つの鍵がそれを通じて取得される、第２通信インターフェースと
をさらに含む、請求項１３に記載のシステム。
【請求項１５】
前記鍵管理コードは、
各々の暗号化方法が前記暗号化状態情報を供給する暗号化マネージャを指示する、少なくとも１つの暗号化方法を指示する構成情報を受信するステップと、
前記受信した構成情報を前記ストレージ・ドライブにストアするステップと
を実行するようにさらに動作可能である、
請求項１０に記載のシステム。
【請求項１６】
前記構成情報は、暗号化マネージャの階層的暗号化マネージャ順序付けを示し、
前記階層的暗号化マネージャ順序付けにおける最高順序を有する利用可能な前記暗号化マネージャが、前記暗号化状態情報を供給する、
請求項１５に記載のシステム。
【請求項１７】
前記鍵管理コードは、
各々の鍵パスが前記少なくとも１つの鍵を供給する前記鍵マネージャを指示する、少なくとも１つの鍵パスを指示する構成情報を受信するステップと、
前記受信した構成情報を前記ストレージ・ドライブにストアするステップと
を実行するようにさらに動作可能である、
請求項１０に記載のシステム。
【請求項１８】
前記構成情報は、鍵パスの階層的鍵パス順序付けを示し、
前記少なくとも１つの鍵は、前記階層的鍵パス順序付けにおける最高順序を有する利用可能な前記鍵マネージャから取得される、
請求項１７に記載のシステム。
【請求項１９】
前記暗号化エンジン、前記Ｉ／Ｏマネージャ、及び前記鍵管理コードがストレージ・ドライブの各々のインスタンス含まれる、少なくとも１つの前記ストレージ・ドライブと、
複数の取外し可能記憶媒体を含むストレージ・アレイと、
前記ストレージ・アレイ内の前記取外し可能記憶媒体を前記少なくとも１つのストレージ・ドライブに移動させて、前記取外し可能記憶媒体を前記少なくとも１つのストレージ・ドライブに結合させるように動作可能なオートチェンジャ機構と、
前記ストレージ・ドライブ及び前記オートチェンジャ機構の動作を制御するためのコントローラと
をさらに含む、請求項１０に記載のシステム。
【請求項２０】
コンピュータ上で実行されるとき、請求項１乃至請求項９のいずれか１項の全ステップを実行するように適合されたプログラム・コード手段を含む、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ・ドライブを暗号化マネージャ及び鍵マネージャと通信するように構成する方法、システム、及び製品に関する。
【背景技術】
【０００２】
取外し可能媒体カートリッジに保存されるデータは、データの保護のために暗号化エンジンによって暗号化することができる。データの暗号化は、彼らの顧客に関する個人データを保存するビジネスにとって特に有用である。最近の政府規制は、個人データを保存している企業に対して、暗号化されていない個人情報を含んだ記憶媒体のいかなる紛失をも報告するように要求及び法律上の義務を課している。
【０００３】
取外し可能媒体カートリッジ内のデータの暗号化及び復号化を処理する暗号化エンジンは、ホスト・システムにおけるアプリケーション・プログラムに、又はファイル・システム、オペレーティング・システム、デバイス・ドライバ等のようなシステム・プログラムに実装することができる。暗号化エンジンをアプリケーション・プログラム又はシステム・プログラムに組み入れることは、ホスト・システムに相当な計算負荷をかける可能性がある。
【０００４】
”Bump in the wire”解決法は、ホスト・システムと、取外し可能媒体カートリッジに結合されたストレージ・ドライブとの間にあって、ホスト・システムとストレージ・ドライブの間で転送されるデータを暗号化及び復号化する、暗号化デバイスを備えることである。ホスト・システムと、ライブラリ又はデータ・センタにおけるストレージ・ドライブとの間に多くの異なるデータ・パスがあると、これはコストが高く複雑な解決法となり得る。
【０００５】
暗号化エンジンをストレージ・ドライブに実装して一部の又は全てのデータを暗号化することができる。ストレージ・ドライブにおける暗号化は、いつデータを暗号化し、どこで及びどのようにしてあらゆる必要な暗号化鍵を取得するかの新しい課題を生じる。多くの場合、異なる取外し可能媒体カートリッジに対して異なる鍵が必要となる可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
当技術分野において、取外し可能媒体カートリッジのような取外し可能記憶媒体を暗号化するための暗号化鍵及び暗号化動作を管理するための必要性が存在する。
【課題を解決するための手段】
【０００７】
本発明は、暗号化マネージャ及び鍵マネージャと通信するようにストレージ・ドライブを構成する方法、システム及び製品を提供する。ストレージ・ドライブは、ドライブ動作のために結合される取外し可能記憶媒体にアクセスする要求を受信する。ストレージ・ドライブは、結合される取外し可能記憶媒体に関する暗号化状態情報を暗号化マネージャから取得する。ストレージ・ドライブは、取得した暗号化状態情報から、アクセスのために結合される取外し可能記憶媒体を暗号化するかどうかを判断する。ストレージ・ドライブは、結合される取外し可能記憶媒体に関して暗号化する判断に応じて、少なくとも１つの鍵を鍵マネージャから取得する。ストレージ・ドライブは、少なくとも１つの鍵を用いてデータ演算を実行してデータを暗号化する。
【発明を実施するための最良の形態】
【０００８】
図１は、コンピュータ環境の一実施形態を示す。ストレージ・ドライブ２は、複数の取外し可能記憶媒体４の１つに結合されて、結合される取外し可能記憶媒体４に対する読出し及び／又は書込み動作を実行することができる。ストレージ・ドライブ２は、結合される取外し可能記憶媒体４に対する読出し／書込み動作を実行するためのＩ／Ｏマネージャ・コード６を含む。ストレージ・ドライブ２は、ストレージ・ドライブを構成し及び／又は制御するための、ストレージ・ドライブ２に対するユーザ制御を含むユーザ・インターフェース８を含む。さらに、特定の実施形態においては、外部ユーザ・インターフェース１０を随意にストレージ・ドライブに結合して、ストレージ・ドライブ２を構成し及び／又は制御するのに用いる付加的なユーザ制御を与えることができる。ストレージ・ドライブ２はさらに、通信インターフェース１２ａ、１２ｂ、鍵管理コード１４、暗号化エンジン１６、及び不揮発性メモリ１７、例えば、それらに限定されないが、ＰＲＯＭ（プラグラム可能読取専用メモリ）、ＥＥＰＲＯＭ（電気的消去可能プラグラム可能読取専用メモリ）、フラッシュＰＲＯＭ（プラグラム可能読取専用メモリ）、ＮＶＲＡＭ（不揮発性ランダム・アクセス・メモリ）、ＭＲＡＭ（磁気抵抗ランダム・アクセス・メモリ）、バッテリ・バックアップＲＡＭ、ＣＤ（コンパクト・ディスク）、ＤＶＤ（デジタル多用途ディスク）、ハード・ディスク・ドライブなど、を含むことができる。
【０００９】
取外し可能記憶媒体４は、データを保存することができ且つ取外し可能媒体として機能することができる任意の型の媒体を含むことができ、それらに限定されないが、磁気媒体（磁気テープ又はディスクなど）、光学媒体（光学テープ又はディスクなど）、ホログラフィック媒体（ホログラフィック・カード、テープ又はディスクなど）、電子媒体（ＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュＰＲＯＭ、ＭＲＡＭ、ＣｏｍｐａｃｔＦｌａｓｈ（登録商標）、Ｓｍａｒｔｍｅｄｉａ（登録商標）、ＭｅｍｏｒｙＳｔｉｃｋ（登録商標）など）、又は他の適切な媒体を含む。特定の実施形態においては、取外し可能記憶媒体は、磁気テープ・カートリッジ又は光ディスク・カートリッジの場合のような、カートリッジ筐体を有する。
【００１０】
ユーザ・インターフェース８及び／又はオプションとして使用される外部ユーザ・インターフェース１０は、ストレージ・ドライブ２と相互作用するためのユーザ・インターフェース要素、例えば、取外し可能記憶媒体４を手動で取り出すためのイジェクト・ボタン、項目のリストを検索するための上／下ボタン、メニュー若しくはリストから項目を選択し又は終了するための入力／終了ボタン、及び、１つ又は複数の状態表示（例えば光又はＬＥＤ（発光ダイオード）、数値表示、英数字表示など）などを含むことができる。外部ユーザ・インターフェース１０は、コンピュータ、ワークステーション、パーソナル・コンピュータ、パーム・コンピュータ、オペレータ・パネル、入力キー、ディスプレイ、ウェブ・ユーザ・インターフェース、専用ユーザ・インターフェース、或いは、ストレージ・ドライブ２に関するユーザ・インターフェースを供給することができる任意の他のデバイス又はインターフェースを含むことができる。
【００１１】
鍵管理コード１４を用いて、１つ又は複数の暗号化鍵を鍵マネージャ３２ａ、３２ｂ、３２ｃから取得して暗号化エンジン１６に供給し、結合される取外し可能記憶媒体４に関するデータを暗号化及び／又は復号化することができる。暗号化エンジン１６は、対称暗号化アルゴリズム、非対称暗号化アルゴリズム、又は、対称暗号化アルゴリズムと非対称暗号化アルゴリズムの組合せ、例えば、それらに限定されないが、ＤＥＳ（データ暗号化標準）、トリプルＤＥＳ、ＡＥＳ（アドバンスト暗号化標準）、ＩＤＥＡ（国際データ暗号化アルゴリズム）、Ｔｗｏｆｉｓｈ、Ｂｌｏｗｆｉｓｈ、Ｓｅｒｐｅｎｔ、ＣＡＳＴ５、ＡＲＣ４、ＲＳＡ（Ｒｉｖｅｓｔ・Ｓｈａｍｉｒ・Ａｄｌｅｍａｎ）、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ、ＤＳＳ（デジタル署名標準）などを用いることができる。
【００１２】
一実施形態において、鍵管理コード１４は、取外し可能記憶媒体４上のデータを暗号化及び／又は復号化するための１つ又は複数の鍵を取得する。鍵はデータ鍵を含むことができ、及び／又は、１つ又は複数の鍵暗号化鍵（ＫＥＫ）を含むことができる。データ鍵は、取外し可能記憶媒体上のデータを暗号化／復号化するのに用いられ、一方、ＫＥＫ（存在する場合）は、データ鍵を守る又は保護する（包む又は暗号化する）のに用いられる。ＫＥＫは、データ鍵（１つ又は複数）を取外し可能記憶媒体４上にストアすることを可能にする。鍵が取外し可能記憶媒体上にストアされる場合には、それらは付随するカートリッジ・メモリにストアすることができ、又は、それらは媒体自体にストアすることができる。カートリッジ・メモリは、任意の型の有線若しくは無線メモリ又は当技術分野では公知のデータ記憶カートリッジに付随するＲＦＩＤタグを含むことができる。無線カートリッジ・メモリを含む取外し可能媒体カートリッジの一例は、ＬＴＯ（リニア・テープ・オープン）Ｕｌｔｒｉｕｍテープ・カートリッジである。有線カートリッジ・メモリを含む取外し可能媒体カートリッジの一例は、Ｓｏｎｙ  ＡＩＴ（アドバンスト・インテリジェント・テープ）カートリッジである。
【００１３】
鍵管理コード１４、暗号化エンジン１６、及びＩ／Ｏマネージャ・コード６は、ストレージ・ドライブ２内のハードウェア論理として、又は、ストレージ・ドライブ２内の１つ又は複数のプロセッサ（図示せず）によってアクセス及び実行されるコンピュータ実行可能命令内に実装することができる。
【００１４】
ストレージ・ドライブ２は、異なるデバイスと通信することを可能にする異なるインターフェース１２ａ、１２ｂを含み、例えば、インターフェース１２ａはストレージ・ライブラリ２２と通信するのに用いられ、インターフェース１２ｂはネットワーク２４及びネットワーク２４上のホスト・システム２６と通信するのに用いられる。異なるデバイス又はホスト・コンピュータに接続するための付加的な通信インターフェースを備えることができる。さらに、信頼性、利用可能性、接続性又は性能を改善するために冗長インターフェースを備えることができる。一実施形態において、インターフェース１２ａ、１２ｂは、異なるインターフェースを含み、異なる通信プロトコルを実装することができる。例えば、インターフェース１２ａは、ストレージ・ライブラリ２２と通信するためのシリアル又はパラレル・インターフェースを含むことができ、インターフェース１２ｂは、ネットワーク２４と通信するためのネットワーク・インターフェース、例えば、ローカル・エリア・ネットワークと通信するためのＴＣＰ／ＩＰプロトコルを実装するインターフェース、又はストレージ・エリア・ネットワークと通信するためのファイバー・チャネル・プロトコルを実装するインターフェースなどを含むことができる。インターフェース１２ａ及び／又は１２ｂは、シリアル、パラレル、又は光インターフェース、例えばＲＳ−２３２、ＵＳＢ（ユニバーサル・シリアル・バス）、シリアル又はパラレルＡＴＡ（ＡＴ接続）、ＳＣＳＩ（スモール・コンピューターズ・システム・インターフェース）、ＳＡＳ（シリアル接続ＳＣＳＩ）、ファイバー・チャネル、ＩＥＥＥ１３９４（ＦｉｒｅＷｉｒｅ又はｉＬｉｎｋ）、ＩＥＥＥ１２８４（パラレル・ポート）などを含むことができる。さらに、インターフェース１２ａ及び／又は１２ｂは、ネットワーク又は無線インターフェース、例えば、イーサネット、ＳＡＮ（ストレージ・エリア・ネットワーク）、ＷＡＮ（ワイド・エリア・ネットワーク）、ＣＡＮ（コントローラ・エリア・ネットワーク）、８０２．１１（Ｗｉ−Ｆｉ）、Ｘ．２５（ＷＡＮ）、Ｂｌｕｅｔｏｏｔｈなどを含むことができる。さらにまた、インターフェース１２ａ及び／又は１２ｂは、それらの組合せを含むことができる。一実施形態において、インターフェース１２ｂは、ホスト・システム２６からストレージ・ドライブ２への読出し／書込み要求の通信を可能にする帯域内ネットワーク・インターフェースを含むことができる。インターフェース１２ａは、接続されたストレージ・ライブラリ２２（又は他のデバイス）がストレージ・ドライブ２の構成のための命令及び／又はデータをそれを介して供給することができる帯域外インターフェースを含むことができる。インターフェース１２ａ及び／又は１２ｂは、鍵管理に関してストレージ・ドライブ２を構成するのに用いることができ、またストレージ・ドライブ２に構成情報２０を供給するのに用いることができる。
【００１５】
ストレージ・ライブラリ２２は、前述の取外し可能媒体を保持するストレージ・セル、即ちストレージ・スロットのアレイを含む、自動データ・ストレージ・ライブラリとしても知られる自動情報ストレージ及び検索システムを含むことができる。自動ライブラリ内のピッカ・アセンブリは、ライブラリ・システムに利用可能なスロットと１つ又は複数のテープ・ドライブとの間でテープ・カートリッジを移動させることができ、ここでテープ・ドライブは、図１におけるストレージ・ドライブ２のコンポーネントを実装する。ライブラリの一例はＩＢＭ３５８４  ＵｌｔｒａＳｃａｌａｂｌｅ  Ｔａｐｅ  Ｌｉｂｒａｒｙである。テープ・ドライブの一例はＩＢＭ３５９２  Ｔａｐｅ  Ｄｒｉｖｅである。
【００１６】
ホスト・システム２６は、アプリケーション・プログラム２８、例えばバックアップ・プログラム、アーカイバル・ソフトウェア又はデータを管理する任意の他のホスト・アプリケーションなどを含む。アプリケーション・プログラムの一例は、ＩＢＭ  Ｔｉｖｏｌｉ  Ｓｔｏｒａｇｅ  Ｍａｎａｇｅｒである。ホスト・システム２６はまた、１つ又は複数のシステム・コンポーネント３０を含み、これは、オペレーティング・システム、ファイル・システム、デバイス・ドライバ、ＤＬＬ（動的リンク・ライブラリ）等のようなホスト・システム・プログラムを含むことができる。ストレージ・ライブラリ２２、アプリケーション２８及びシステム・コンポーネント３０は、関連する鍵サーバ１８ａ、１８ｂ、１８ｃに結合することができる。ストレージ・ドライブ２は、鍵マネージャ３２ａ、３２ｂ、３２ｃ（それぞれ鍵サーバ１８ａ、１８ｂ、１８ｃに付随する）に対して、又は、それらが結合した鍵マネージャ３２ａ、３２ｂ、３２ｃのプロキシとして動作することができる、結合したストレージ・ライブラリ２２、アプリケーション２８、及び／又はシステム・コンポーネント３０に対して、暗号化鍵の要求をサブミットすることができる。代替として、ストレージ・ドライブ２は、暗号化鍵の要求を直接鍵サーバ１８ａ、１８ｂ、１８ｃ又は鍵マネージャ３２ａ、３２ｂ、３２ｃに送ることができ、或いは、ストレージ・ドライブ２に直接接続した鍵サーバ（図示せず）を置くことができる。
【００１７】
鍵サーバ１８ａ、１８ｂ、１８ｃの各々は、鍵関連動作を実行するための鍵マネージャ３２ａ、３２ｂ、３２ｃ、及び、鍵ストア３４ａ、３４ｂ及び３４ｃをそれぞれ含む。本明細書では、鍵サーバ及び鍵マネージャは、鍵マネージャ、鍵サーバ又はその両方を指すことができる。鍵ストア３４ａ、３４ｂ及び３４ｃは、異なる取外し可能記憶媒体４へ／からのデータを暗号化及び／又は復号化するのに用いられる暗号化鍵（即ちＫＥＫ及び／又はデータ鍵）をストアするデータベースを含むことができる。鍵ストア３４ａ、３４ｂ及び３４ｃは、アレイ、構造体、データベース、ファイル等のようなソフトウェア要素を含むことができる。さらに、鍵ストアは、メモリ、媒体、ハード・ドライブ、ストレージ・デバイス等のようなハードウェア要素を含むことができる。鍵サーバ１８ａ、１８ｂ、１８ｃは、ユーザが鍵マネージャ３２ａ、３２ｂ、３２ｃに関する鍵管理動作を実行することを可能にするユーザ・インターフェースをさらに含むことができる。
【００１８】
図１において、鍵マネージャ３２ａ、３２ｂ、３２ｃ及び鍵ストア３４ａ、３４ｂ及び３４ｃは、別々の鍵サーバ１８ａ、１８ｂ、１８ｃのデバイス内に保持され、これらデバイスが鍵管理サービスを、結合したストレージ・ライブラリ２２、アプリケーション２８、システム・コンポーネント３０、及び／又はストレージ・ドライブ２に提供する。図１のコンピュータ環境は、単一の鍵サーバを含むことができ、又は、図１に示すように複数の鍵サーバを含むことができる。代替の実施形態においては、鍵マネージャ及び鍵ストアは、ストレージ・ライブラリ２２、アプリケーション２８、システム・コンポーネント３０又はホスト・システム２６内に実装することができる。この場合には、いずれの鍵サーバも存在しなくてよい。付加的な実施形態において、コンピュータ環境は、図１に示した複数の鍵マネージャではなく、単一の鍵マネージャを含むことができる。例えば、ライブラリ２２は、鍵マネージャ（図示せず）を含むことができ、他の鍵マネージャはなにもなくてもよい。
【００１９】
ストレージ・ライブラリ２２、アプリケーション２８、及びシステム・コンポーネント３０の各々は、随意的なユーザ・インターフェース３６ａ、３６ｂ、３６ｃを含むように示されており、これらインターフェースは暗号化構成情報のような構成情報を供給するのに用いることができる。構成情報は、それぞれストレージ・ライブラリ２２、アプリケーション２８、及びシステム・コンポーネント３０に供給することができ、及び／又は、ストレージ・ドライブ２に供給することができる。ユーザ・インターフェース３６ａ、３６ｂ、３６ｃ、８及び１０によって供給される暗号化構成情報は、暗号化構成情報２０として不揮発性メモリ１７にストアすることができる。代替的に、一部又はすべての構成情報２０は、後述のように、ライブラリ２２、ホスト・アプリケーション２８、及び／又は、システム・コンポーネント３０にストアすることができる。オプションとしてのユーザ・インターフェース３６ａ、３６ｂ、及び／又は３６ｃは、コンピュータ、ワークステーション、パーソナル・コンピュータ、パーム・コンピュータ、オペレータ・パネル、入力キー及びディスプレイ、ウェブ・ユーザ・インターフェース、専用ユーザ・インターフェース、或いは、ストレージ・ライブラリ２２、アプリケーション２８、及び／又はシステム・コンポーネント３０のためのユーザ・インターフェースを提供することができる任意の他のデバイス又はインターフェースを含むことができる。さらに、ホスト・システム２６はユーザ・インターフェースを含むことができ、インターフェース３６ｂ及び／又はインターフェース３６ｃは、ホスト・システム・インターフェースを含むことができる。
【００２０】
図２は、暗号化構成情報２０を、暗号化方法４０及び鍵パス４２を有するものとして示す。暗号化方法は、どこで及び／又はいつデータを暗号化する判断がなされるかを指定する。例えば、暗号化方法は、アプリケーション管理の暗号化、システム管理の暗号化、又はライブラリ管理の暗号化を指示すことができる。アプリケーション管理の暗号化により、ホスト・アプリケーションはどのデータ及び／又はどのカートリッジが暗号化されるべきかを判断する。アプリケーション管理の暗号化が可能なホスト・アプリケーションの一例は、ＩＢＭ  Ｔｉｖｏｌｉ  Ｓｔｏｒａｇｅ  Ｍａｎａｇｅｒである。システム管理の暗号化により、ホスト・システム・コンポーネントは、どのデータ及び／又はどのカートリッジが暗号化されるべきかを判断する。ホスト・システム・コンポーネントの例には、限定的ではないが、オペレーティング・システム、ファイル・システム、デバイス・ドライバ、ＤＬＬ（動的リンク・ライブラリ）などが含まれる。ライブラリ管理の暗号化により、ライブラリは、どのデータ及び／又はどのカートリッジが暗号化されるべきかを判断する。付加的に又は代替的に、暗号化方法４０は、結合される取外し可能記憶媒体４に対する暗号化及び／又は復号化を実行するかどうかをストレージ・ドライブ２に命令する１つ又は複数の暗号化マネージャ２２、２８及び／又は３０を指示することができる。暗号化マネージャは、暗号化関連のアクティビティを支援する、ストレージ・ドライブ２から独立したハードウェア及び／又はソフトウェア・コンポーネントを含むことができる。これらのアクティビティは、限定的ではないが、鍵の受け渡し、いつ暗号化するかの判断、なにを暗号化するかの判断、暗号化設定の構成などを含むことができる。結果として、ライブラリ２２、アプリケーション２８、システム・コンポーネント３０、ホスト・システム２６、鍵サーバ１８ａ、１８ｂ、１８ｃ、鍵マネージャ３２ａ、３２ｂ、３２ｃは、暗号化マネージャを含むことができる。さらにまた、暗号化方法４０は、結合される取外し可能記憶媒体４に対する暗号化及び／又は復号化を実行するかどうかをストレージ・ドライブ２に命令するのに用いられることになるインターフェース又はパスを指示することができる。例えば、暗号化方法４０は、いつデータを暗号化するかに関する情報を供給するためのインターフェースとしてインターフェース１２ａを指示することができる。
【００２１】
鍵パス４２は、それを通じて暗号化鍵が伝送されるべきパス又は特定のインターフェース１２ａ、１２ｂを指示する。例えば、鍵パス４２は、インターフェース１２ａを指示することができる。この場合、ストレージ・ドライブ２が何らかの暗号化鍵を必要とするならば、インターフェース１２ａを通じて鍵（１つ又は複数）を要求することになる。特定のインターフェースは、ポート、ＵＡＲＴ、トランシーバ、チャネル、アドレス、エイリアスなどによって識別することができる。或いは、鍵パス４２は、鍵がそれを通じて伝送されるべき特定の鍵サーバ１８ａ、１８ｂ、１８ｃ又は特定の鍵マネージャ３２ａ、３２ｂ、３２ｃを含むことができる。鍵サーバ及び／又は鍵マネージャは、ＩＰアドレス、ＭＡＣアドレス、ワールド・ワイド・ネーム、ホスト・ネーム、エイリアス、ポート・ナンバー、又は、１つのデバイスを別のデバイスから識別する任意の他の方法によって識別することができる。さらにまた、鍵パス４２は、暗号化方法（アプリケーション管理の、システム管理の、ライブラリ管理の）を含むことができ、この方法はパスのインジケータとなる。例えば、暗号化方法４０は、システム・コンポーネントがいつ暗号化が実行されるべきかを判断するように指示する「システム」を含むことができ、鍵パス４２は、あらゆる必要な鍵がライブラリから得られることを指示する「ライブラリ」を含むことができる。図１の実施例においては、「システム」は、インターフェース１２ｂを指示することができ、「ライブラリ」はインターフェース１２ａを指示することができる。
【００２２】
鍵パス４２は、暗号化方法４０と同じ情報を含むことができる。例えば、それらは、同じ方法（アプリケーション管理の、システム管理の、又はライブラリ管理の暗号化）、又は同じ鍵サーバ（１８ａ、１８ｂ、１８ｃ）、又は同じ鍵マネージャ（３２ａ、３２ｂ、３２ｃ）、又は同じ暗号化マネージャ（２２、２８、３０）、又は同じインターフェース（１２ａ、１２ｂ）などを含むことができる。例えば、ライブラリ管理の暗号化において、ライブラリ２２はどのデータを暗号化するかを指定し、ライブラリ２２はまた、ストレージ・ドライブ２に暗号化鍵を供給することができる。代替的に、鍵パス４２は、暗号化方法４０とは異なってもよい。例えば、システム管理の暗号化において、ホスト・システム・コンポーネント３０はどのデータを暗号化するかを指定するが、実際にはライブラリ２２が暗号化鍵をストレージ・ドライブ２に供給することができる。
【００２３】
暗号化構成情報２０は、暗号化方法４０のみを含むことができ、又は鍵パス４２のみを含むことができる。さらに、構成情報２０は、暗号化方法４０及び鍵パス４２よりも多くの情報を含むことができる。さらにまた、暗号化構成情報２０は、前述のように１つよりも多くの場所にストアすることができる。
【００２４】
ドライブは暗号化鍵を要求することができる。例えば、ライブラリ２２は、暗号化された媒体をストレージ・ドライブ２にロードすることができる。鍵管理コード１４は、暗号化された取外し可能記憶媒体４が暗号化されていることを判断することができ、そしてさらに、データにアクセスするためにどの鍵又は複数の鍵が必要であるかを判断することができる。鍵管理コード１４は、鍵パス４２を用いて、指示された暗号化マネージャ、鍵マネージャ、鍵サーバ、ライブラリ、アプリケーション、システム・コンポーネント、インターフェース、又はパスから必要な鍵（１つ又は複数）を要求することができる。別の実施例において、ライブラリは、媒体をストレージ・ドライブ２に移動させることができ、またライブラリは、媒体が暗号化されるべきであるというメッセージ又は指令を、インターフェース１２ａによりドライブに伝えることができる。或いは、ドライブは、媒体がドライブに移された後で、暗号化状態情報（ロード又は結合される取外し可能媒体４及び／又は用いられるべき特定の鍵又は鍵ラベルに対してデータを暗号化するかどうか）を要求することができる。いずれの場合においても、次にドライブは、暗号化状態情報に基づいてライブラリから１つ又は複数の鍵を要求することができる。或いは、ドライブは、要求することなしに暗号化鍵を受け取ることができる。例えば、ライブラリ２２は、暗号化方法４０によるライブラリ管理の暗号化に対して構成することができる。ライブラリ２２が取外し可能記憶媒体４をストレージ・ドライブ２に移動させるとき、それはまた、あらゆる必要な暗号化鍵（１つ又は複数）及び／又は鍵ラベルをストレージ・ドライブ２に供給することができる。この場合、暗号化状態情報は、ライブラリが鍵をドライブに供給したという事実によって本質的に供給され又は指示される。
【００２５】
デバイス２２、ホスト・アプリケーション３０、システム・コンポーネント３２、又は別の結合されたデバイス（図示せず）は、ストレージ・ドライブ２と鍵マネージャ３２ａ、３２ｂ、３２ｃとの間のプロキシとして機能することができる。プロキシは、ソフトウェア又はハードウェアのプロトコル・コンバータとして機能することができ、又は、鍵マネージャとのより複雑な相互作用を提供することができる。さらに、ストレージ・ドライブ２は、いかなるプロキシにもよらずに鍵マネージャと直接結合することができる（図示せず）。
【００２６】
暗号化マネージャ２２、２８及び／又は３０はさらに、暗号化アルゴリズム及び／又は１つ又は複数の暗号化鍵若しくは鍵ラベルを暗号化エンジン１６に供給して、結合される取外し可能記憶媒体４に対して用いるようにすることができる。鍵ラベルは、エイリアス、ネーム、サイン、ハッシュ、又は、特定の暗号化鍵又は複数暗号化鍵を識別するのに用いられる識別子である。本明細書において、鍵、複数の鍵、暗号化鍵、複数の暗号化鍵、復号化鍵、複数の復号化鍵、鍵ラベル、及び複数の鍵ラベルは、全て、データを暗号化及び／又は復号化するのに用いることができる１つ又は複数の鍵又は他の鍵を指すのに用いられる。
【００２７】
一実施形態において、ストレージ・ライブラリ２２は、複数のストレージ・ドライブ２を有する１つ又は複数の論理ライブラリに分割することができる。各々のストレージ・ドライブ２は、どの他のドライブとも無関係に構成することができる。さらに、ストレージ・ドライブの群を、同時に又は同じ設定で構成することができる。これは、フレーム内の全てのストレージ・ドライブ、論理ライブラリ内の全てのストレージ・ドライブ、物理ライブラリ内の全てのストレージ・ドライブ、又は、ユーザ・インターフェース８、１０、３６ａ、３６ｂ、３６ｃなどによって供給されるリストから選択された全てのストレージ・ドライブを含むことができる。このようにして、異なるドライブ、ドライブの群、フレーム又は論理ライブラリの各々に対して、異なる暗号化管理方法４０及び／又は異なる鍵パス４２を指定することができる。
【００２８】
暗号化方法４０及び／又は鍵パス４２の情報は、暗号化管理方法（アプリケーション管理の、システム管理の、ライブラリ管理の）、暗号化マネージャ（ストレージ・ライブラリ２２、アプリケーション２８、システム・コンポーネント３０）、特定の通信インターフェース（１２ａ、１２ｂ）、特定のデバイス又はホスト・システム（２２、２６、２８、３０）、特定の鍵サーバ（１８ａ、１８ｂ、１８ｃ）、特定の鍵マネージャ（３２ａ、３２ｂ、３２ｃ）などの点によってストアすることができる。一部又は全ての暗号化構成情報２０は、ストレージ・ドライブ２、ライブラリ２２、ホスト・システム２６、アプリケーション３０、又はシステム・コンポーネント３２にストアし、それらによって保持し、又はそれらによって用いることができる。例えば、図１のコンピュータ環境は、ライブラリ管理の暗号化をサポートするように構成することができる。ライブラリ２２は、暗号化方法４０を用いて、ライブラリ管理の暗号化モードにおいていつ動作するべきかを判断することができる。別の実施例において、ライブラリ２２は、全ての暗号化構成情報２０を含むことができ、ストレージ・ドライブ２は何も含む必要はない。この実施例において、ライブラリ暗号化方法４０は、ライブラリ管理の暗号化に対して設定することができ、鍵パス４２は、ライブラリとして設定することができ、又はインターフェース１０ａを用いるように設定することができる。この場合、ライブラリは、どんなデータ又はカートリッジを暗号化するべきかを判断するだけでなく、ドライブが必要とするときに任意の鍵（１つ又は複数）をデータ・ストレージ・ドライブにインターフェース１０ａを通じて供給する。
【００２９】
暗号化構成情報２０はさらに、暗号化方法４０及び鍵パス４２の階層的順序付けを供給することができる。この場合、ストレージ・ドライブ２、ライブラリ２２、ホスト・システム２６、アプリケーション３０、又はシステム・コンポーネント３２は、利用可能な最高順序の方法により、結合される取外し可能記憶媒体４に関する暗号化方法情報を受け取ることを選び、利用可能な最高順序の鍵パスから暗号化鍵を受け取ることを選ぶ。暗号化方法及び鍵パスの階層は、より高位の暗号化方法又は鍵パスが利用できない場合に、要求された情報を階層的順序内でより低位に示されたものから取得することができるような冗長性を提供する。
【００３０】
図３は、暗号化方法４０及び／又は鍵パス４２、或いは暗号化方法及び／又は鍵パスの階層を指示する構成情報２０を受け取るときに（ブロック５０において）、ストレージ・ドライブ鍵管理コード１４によって実行される動作の実施形態を示す。それに応じて、鍵管理コード１４は、受け取った構成情報２０をストレージ・ドライブの不揮発性メモリ１６にストアする（ブロック５２において）。代替的に、前述のように、一部又はすべての構成情報２０をライブラリ２２、アプリケーション２８、及び／又はシステム・コンポーネント３０によって受け取り、ストアすることができる。
【００３１】
図４は、ストレージ・ドライブ２が、読出し及び／又は書込みアクセスのために結合される取外し可能記憶媒体４にアクセスする動作を開始する（ブロック１００で）のに応じて、ストレージ・ドライブ鍵管理コード１４によって実行される動作の実施形態を示す。結合される取外し可能記憶媒体は、データ・ストレージ・ドライブに移動されようとする、又は移動されている最中の、又は既に移動された媒体を指す。鍵管理コード１４は、暗号化方法、即ち、前述のように、アプリケーション管理の、システム管理の、又はライブラリ管理の暗号化を判断する（ブロック１０２において）。暗号化方法は、媒体暗号化状態情報を判断するために用いられ、この状態情報は、結合される取外し可能記憶媒体４に関するデータ又は鍵を暗号化及び／又は復号化するかどうかを指示することができ、及び／又は、特定の鍵又は鍵ラベルを含むことができ、或いは他の暗号化関連情報を指示することができる。一実施形態において、結合される取外し可能記憶媒体４に関する媒体暗号化状態情報は、要請なしに供給することができる。例えば、暗号化方法４０は、ライブラリ２２によって保持又はストアすることができる。ライブラリ２２は、結合される取外し可能記憶媒体４に関してデータを暗号化する必要があることを、インターフェース１２ａを通じてドライブに通知することができる。ライブラリはまた、要求された鍵（１つ又は複数）を供給することができ、又は要求された鍵（１つ又は複数）を識別する鍵ラベル（１つ又は複数）を供給することができる。代替の実施形態において、鍵管理コード１４は、指示された暗号化方法に基づいて取外し可能記憶媒体４に関する媒体暗号化状態情報を要求することができる。例えば、鍵管理コード１４は、暗号化方法４０がライブラリ管理の暗号化に設定される場合には、インターフェース１２ａによりライブラリ２２から媒体暗号化状態情報を要求することができる。さらに、鍵管理コード１４は、読出し及び／又は書込み動作を開始するとき、又は書込み動作を開始するときにのみ、暗号化マネージャからの暗号化状態を判断することができる。一実施形態において、鍵管理コード１４は、取外し可能記憶媒体４を読み取り、データが暗号化されていることを判断することによって、読み取り動作に関する媒体暗号化状態情報を判断することができる。カートリッジ・メモリ（使用する場合）もまた、結合される取外し可能記憶媒体４から読み取って媒体暗号化状態情報を判断することができる。暗号化方法４０が暗号化方法の階層的順序付けを示す場合には、鍵管理コード１４は、階層的順序付けにおいて示された、利用可能な最高順序の暗号化マネージャによって供給される暗号化方法情報を用いることができる。
【００３２】
暗号化マネージャ２２、２８又は３０が、結合される取外し可能記憶媒体４に対して必要な暗号化がないことを示す（ブロック１０４において）場合、Ｉ／Ｏマネージャ６は、暗号化エンジン１６を用いずに結合される取外し可能記憶媒体４にアクセスする（ステップ１０６において）。暗号化マネージャ２２、２８、３０が暗号化が必要であることを示す（ブロック１０４において）場合には、鍵管理コード１４は、構成情報２０の鍵パス４２において指定された情報を用いることによって、鍵マネージャ３２ａ、３２ｂ、３２ｃ又はプロキシ２２、２８、３０から１つ又は複数の鍵を取得する。一実施形態において、識別された鍵パス４２（鍵マネージャ３２ａ、３２ｂ、３２ｃ、又は結合される鍵サーバに関するプロキシとして機能するストレージ・ライブラリ２２、アプリケーション２８、又はシステム・コンポーネント３０を含むことができる）は、要請なしに暗号化鍵を供給することができ、又は、鍵管理コード１４が識別された鍵パスから鍵（１つ又は複数）を要求することができる。構成情報２０が鍵パスの階層的順序付けを指示する場合、鍵管理コード１４は、階層的順序付けにおいて指示された利用可能な最高順序の鍵パスによって供給される鍵パス情報を用いることができる。
【００３３】
図４の動作は、カートリッジがストレージ・ドライブ２にロードされるたびに実行させることができ、或いは、読出し及び／又は書込み動作が実行されようとするたびに実行させることができる。さらに、図４の動作は、異なる時点で実行させることができる。例えば、ストレージ・ドライブ２が電源投入又はリセットされるときに、或いはカートリッジがストレージ・ドライブ２にロードされるときに、暗号化方法及び／又は鍵パスを判断することができる。代替的に、暗号化の判断は、読出し及び／又は書込み動作が実行されようとするたびに行うことができる。
【００３４】
一実施形態において、鍵管理コード１４は、結合される取外し可能記憶媒体４から１つ又は複数の暗号化された鍵を読み出し、それらを識別された鍵パスに伝送して、暗号化エンジン１６によって用いることのできる非暗号化バージョンの鍵（１つ又は複数）を戻すことができる。
【００３５】
図５は、暗号化構成情報２０が暗号化方法及び／又は鍵パスの階層的順序付けを供給するときに、ストレージ・ドライブ２が読出し及び／又は書込み動作のために、結合される取外し可能記憶媒体４にアクセスする動作を開始する（ブロック１５０において）のに応じて、ストレージ・ドライブ鍵管理コード１４によって実行される動作の代替の実施形態を示す。鍵管理コード１４は、暗号化方法の階層的順序付けにおける最高順序として示される暗号化方法、例えばストレージ・ライブラリ２２、ホスト・アプリケーション２８、及びシステム・コンポーネント３０、を判断する（ブロック１５２において）。結合される取外し可能記憶媒体４の媒体暗号化状態情報についての要求が、判断された暗号化マネージャ２２、２８又は３０に送信され（ブロック１５４において）、ここで媒体暗号化状態情報は、結合される取外し可能記憶媒体４に関して暗号化を実行するかどうかを指示することができ、必要な鍵若しくは鍵ラベル、或いは、暗号化エンジン１６が用いるべき暗号化アルゴリズム又は他の情報の指示を含むことができる。問合せされた暗号化マネージャ２２、２８又は３０が応答しない（ブロック１５６において）場合、鍵管理コード１４は、暗号化方法４０における暗号化マネージャの階層的順序が、階層的順序付けにおける次の外部暗号化マネージャ２２、２８又は３０を指示するかどうかを判断する（ブロック１５８において）。考慮すべきさらに別の暗号化マネージャ２２、２８又は３０がない（ブロック１５８において）場合には、どの暗号化マネージャ２２、２８及び／又は３０も暗号化状態情報を供給することができると指示されないので、失敗が戻される（ブロック１６０において）。
【００３６】
考慮すべきさらに別の指示された暗号化方法がある場合（ブロック１５８において）には、構成情報２０において示された階層的順序における次の暗号化方法が判断され（ステップ１６２において）、制御がブロック１５４に戻り、暗号化状態情報（即ち暗号化するかどうか、特定の鍵又は鍵ラベルなど）を要求する。
【００３７】
問合せされた暗号化マネージャ２２、２８又は３０が暗号化状態情報を供給する（ブロック１５６において）場合、且つ、暗号化が結合される取外し可能記憶媒体４に対して必要ない（ブロック１６４において）場合に、Ｉ／Ｏマネージャ６は暗号化エンジン１６を用いずに結合される取外し可能記憶媒体４にアクセスすることができる（ブロック１６６において）。そうでなければ、暗号化が必要な場合（ブロック１６４において）、鍵管理コード１４が鍵パスの階層順序付けにおける最高順序を有する鍵サーバ（又は鍵サーバ２２、２８又は３０に関するプロキシ）を判断する（ブロック１６８において）。結合される取外し可能記憶媒体４に関する暗号化鍵についての要求が、判断された鍵サーバ（又はプロキシ２２、２８又は３０）に送られる（ブロック１７０において）。暗号化された鍵が結合される取外し可能記憶媒体４からアクセスされる場合、要求は暗号化された鍵を含むことができる。問合せされた鍵マネージャ１８ａ、１８ｂ、１８ｃ（又はプロキシ２２、２８又は３０）が正しい暗号化鍵、即ち結合される取外し可能記憶媒体４に対して機能するものを供給する場合（ブロック１７２において）、暗号化エンジン１６は、受け取った暗号化鍵を用いて（ブロック１７４において）、結合される取外し可能記憶媒体４に対して暗号化及び／又は復号化を行う。問合せされた鍵マネージャ１８ａ、１８ｂ、１８ｃ（又はプロキシ）が機能する暗号化鍵を供給しない、即ち、応答しない又は供給された鍵が機能しない場合（ブロック１７２において）には、鍵管理コード１４は、鍵パスの階層的順序が次の鍵マネージャ（又はプロキシ）を指示するかどうかを判断する（ブロック１７６において）。別の鍵パスが供給されない場合（ブロック１７６において）には、失敗が戻される（ブロック１６０において）。別の鍵パスが構成情報２０内に指示される場合には、鍵パスの階層的順序における次の鍵マネージャ３２ａ、３２ｂ、３２ｃ（又はプロキシ２２、２８又は３０）が判断され（ブロック１７８において）、制御がブロック１７０に進んで、次の鍵パスから暗号化鍵（１つ又は複数）を取得することを試みる。
【００３８】
図４及び図５の説明された実施形態では、暗号化構成情報２０は、鍵管理コード１４に暗号化方法４０を供給することができ、この方法は、例えば、結合される取外し可能記憶媒体４に対して暗号化を実施すべきかどうか、及び用いる暗号化アルゴリズムのような他の可能性のある情報を判断するために交信すべき、１つ又は複数の外部暗号化マネージャ２２、２８及び／又は３０を指示することができる。暗号化構成情報２０はさらに、暗号化鍵を供給するための１つ又は複数の鍵パス４２を指示することができるが、ここで鍵パスは、例えば、可能な暗号化マネージャ２２、２８及び／又は３０、或いはそれら可能性のある暗号化マネージャなどに結合された鍵サーバ１８ａ、１８ｂ、１８ｃのうちの１つを含むことができる。鍵パスとして識別された１つ又は複数の暗号化マネージャ２２、２８及び／又は３０（又は結合された鍵サーバ１８ａ、１８ｂ、１８ｃ）は、暗号化方法を供給するための外部暗号化マネージャとして識別された１つ又は複数の暗号化マネージャ２２、２８及び／又は３０とは異なるものとすることができる。
【００３９】
図６は、取外し可能記憶媒体２０４ｂ．．．２０４ｎを含む記憶セルのようなストレージ・アレイ２０２と、テープ・ドライブ、光ディスク・ドライブ又はアクセスのために取外し可能記憶媒体が結合される他の取外し可能媒体ストレージ・ドライブのようなストレージ・ドライブ２０６と、ストレージ・アレイ２０２とストレージ・ドライブ２０６の間で取外し可能記憶媒体２０４ａ、２０４ｂ．．．２０４ｎを移動させるための、ピッカ・アセンブリのようなオートチェンジャ機構２０８と、ライブラリ・コントローラ２１０とを含むストレージ・ライブラリ２２のような自動ストレージ・ライブラリ２００の実施形態を示す。ライブラリ２００の一例は、ＩＢＭ３５８４  ＵｌｔｒａＳｃａｌａｂｌｅ  Ｔａｐｅ  Ｌｉｂｒａｒｙである。
【００４０】
取外し可能記憶媒体２０４ａ、２０４ｂ．．．２０４ｎは、取外し可能記憶媒体４を含むことができる。特定の実施形態において、ライブラリ・コントローラ２１０は、マイクロプロセッサと、オートチェンジャ機構２０８及びストレージ・ドライブ２０６を含む自動ライブラリ２００内のコンポーネントの動作を制御するための種々の制御及びインターフェースとを備える。ライブラリ・コントローラ２１０は、ストレージ・アレイ２０２内のライブラリ要素のコンテンツを含む、ライブラリ２００内の取外し可能記憶媒体２０４ａ、２０４ｂ．．．２０４ｎの場所についての情報を保持する記憶媒体マップのような種々の情報を、メモリ２１２を用いてストアする。ライブラリ・コントローラ２１０は、単一の処理装置、複数の冗長処理装置、及び／又は複数の分散処理装置を含むことができる。
【００４１】
ライブラリ・コントローラ２１０はさらに、ライブラリ２００内の取外し可能記憶媒体２０４ａ、２０４ｂ．．．２０４ｎに対する読出し／書込み動作を管理することができる。ライブラリ・オペレータは、ライブラリ・コントローラ２１０とのインターフェースとなるディスプレイ装置及びキーボードからなる、ライブラリ２００に結合されたオペレータ端末２２０により、取外し可能記憶媒体２０４ａ、２０４ｂ．．．２０４ｎの動作及び管理を直接制御することができる。オペレータ端末２２０は、コンピュータ、ワークステーション、パーソナル・コンピュータ、パーム・コンピュータ、オペレータ・パネル、入力キー及びディスプレイ、ウェブ・ユーザ・インターフェース、専用ユーザ・インターフェース、或いは、ライブラリ２００に対するユーザ・インターフェースを供給することができる任意の他のデバイス又はインターフェースを含むことができる。さらに、ホスト・システム（図示せず）は、命令をライブラリ・コントローラ２１０に送って自動ライブラリ２００内での媒体の移動を制御することができる。ホスト・システム（図示せず）はまた、命令をストレージ・ドライブ２０６に送って取外し可能記憶媒体２０４ａ、２０４ｂ．．．２０４ｎに対する読出し及び／又は書込み動作を実行することができる。ホスト・システム（１つ又は複数）は、１つ又は複数のネットワーク又はインターフェースにより、ライブラリ２００及び／又はストレージ・ドライブ２０６と通信することができる。ホスト・インターフェース（１つ又は複数）は、シリアル、パラレル、又は光学インターフェース、例えば、非限定的に、ＲＳ−２３２、ＵＳＢ（ユニバーサル・シリアル・バス）、シリアル又はパラレルＡＴＡ（ＡＴ接続）、ＳＣＳＩ（スモール・コンピューターズ・システム・インターフェース）、ＳＡＳ（シリアル接続ＳＣＳＩ）、ファイバー・チャネル、ＩＥＥＥ１３９４（ＦｉｒｅＷｉｒｅ又はｉＬｉｎｋ）、ＩＥＥＥ１２８４（パラレル・ポート）などを含むことができる。さらに、ホスト・インターフェース（１つ又は複数）は、ネットワーク又は無線インターフェース、例えば、非限定的に、イーサネット、ＳＡＮ（ストレージ・エリア・ネットワーク）、ＷＡＮ（ワイド・エリア・ネットワーク）、ＣＡＮ（コントローラ・エリア・ネットワーク）、８０２．１１（Ｗｉ−Ｆｉ）、Ｘ．２５（ＷＡＮ）、Ｂｌｕｅｔｏｏｔｈなどを含むことができる。さらにまた、ホスト・インターフェース（１つ又は複数）はそれらの組合せを含むことができる。
【００４２】
付加的な実施形態の詳細
説明された動作は、ソフトウェア、ファームウェア、ハードウェア又はそれらの任意の組合せを作成するための、標準的なプログラミング及び／又は工学技術を用いて、方法、装置、又は製品として実施することができる。説明された動作は、「コンピュータ可読媒体」内に保持されるコードとして実施することができ、その場合１つ又は複数のプロセッサが１つ又は複数のコンピュータ可読媒体からコードを読出し実行することができる。コンピュータ可読媒体は、磁気記憶媒体（例えば、ハード・ディスク・ドライブ、フロッピー・ディスク、テープなど）、光記憶媒体（ＣＤ−ＲＯＭ、ＤＶＤ、光ディスクなど）、揮発性及び不揮発性メモリ・デバイス（例えば、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、ＭＲＡＭ、フラッシュ・メモリ、ファームウェア、プログラム可能論理など）などのような媒体を含むことができる。説明された動作を実施するコードはさらに、ハードウェア論理（例えば、集積回路チップ、プログラム可能ゲート・アレイ（ＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）など）において実施することができる。さらにまた、説明された動作を実施するコードは、「伝送信号」内で実施することができ、その場合伝送信号は、空間を通して、又は、光ファイバ、銅線などのような伝送媒体を通して伝播することができる。コード又は論理が内部に符号化された伝送信号は、無線信号、衛星伝送、電波、赤外信号、ブルートゥースなどをさらに含むことができる。コード又は論理が内部に符号化された伝送信号は、伝送ステーションによって伝送され、受信ステーションによって受信されることが可能であり、その場合、伝送信号中に符号化されたコード又は論理は、ハードウェア即ち受信及び伝送ステーション又はデバイスにおけるコンピュータ可読媒体内において復号化しストアすることができる。当該製品は、コードを内部で実施することができるコンピュータ可読媒体、ハードウェア論理、及び／又は伝送信号を含む。説明された動作の実施形態を実施するコードが内部で符号化されるデバイスは、コンピュータ可読媒体又はハードウェア論理を含むことができる。もちろん、当業者であれば、この構成に対する多くの修正を本発明の範囲から逸脱せずに施すことができること、及び製品が当技術分野で公知の適切な情報支持媒体を含むことができることを認識するであろう。
【００４３】
暗号化方法４０の中で指示することができる暗号化マネージャは、ストレージ・ライブラリ２２、アプリケーション２８及び／又は３０を含むものとして説明されている。さらに別の実施形態において、異なる型のコンポーネント、ハードウェア及び／又はソフトウェアを、暗号化方法４０の構成情報における暗号化マネージャとして指定することができる。
【００４４】
相互に通信するデバイスは、別様に明記されない限り、連続的に相互に通信する必要はない。さらに、相互に通信するデバイスは、直接的に、又は、１つ若しくは複数の媒介手段を通じて間接的に通信することができる。
【００４５】
相互に通信する幾つかのコンポーネントを有する実施形態の説明は、すべてのそれらコンポーネントが必要であることを意味するものではない。それとは逆に、本発明の多種多様な可能な実施形態を例示するために種々の随意のコンポーネントが説明されている。
【００４６】
さらに、プロセス・ステップ、方法ステップ、アルゴリズムなどを順番に説明することができるが、そのようなプロセス、方法及びアルゴリズムは、代りの順番で機能するように構成することができる。言い換えれば、説明することができるステップの如何なる順序又は順番も、そのステップをその順番で実行する必要性を必ずしも示すものではない。本明細書で説明されたプロセス・ステップは、任意の実際的な順序で実行することができる。さらに、幾つかのステップは同時に実行することができる。
【００４７】
本明細書において単一のデバイス又は製品が説明されるとき、単一のデバイス／製品の代わりに１つより多くのデバイス／製品（それらが協働するかどうかにかかわらず）を用いることができることは容易に明白となる。同様に、１つより多くのデバイス又は製品が本明細書で説明される場合（それらが協働するかどうかにかかわらず）、１つより多くのデバイス又は製品の代わりに単一のデバイス／製品を用いることができ、又は、示された数のデバイス又はプログラムの代わりに異なる数のデバイス／製品を用いることができることは容易に明白となる。デバイスの機能及び／又は特徴は、その機能／特徴を有するように明記されてない１つ又は複数の他のデバイスによって代替的に具体化することができる。従って、本発明の他の実施形態はデバイス自体を含む必要はない。
【００４８】
図３、図４及び図５の説明された動作は、特定の順番で起こる特定の事象を示す。代替の実施形態において、特定の動作を異なる順番で実行し、修正し又は除去することができる。さらに、前述の論理にステップを付加し、それでもなお説明された実施形態に適合させることが可能である。さらに、本明細書で説明された動作は順番に行うことができ、又は、ある特定の動作は並列に処理することができる。さらにまた、動作は、単一の処理装置により、又は、分散処理装置によって実行することができる。
【００４９】
本発明の種々の実施形態の上記の説明は、例証及び説明のために提示された。それは、網羅的であること、又は、本発明を開示された通りの形態に限定することを意図したものではない。上記の教示を考慮すれば多くの修正及び変形が可能となる。本発明の範囲は、この詳細な説明によって限定されるのではなく、添付の特許請求の範囲によって限定されることが意図されている。上記の明細、実施例及びデータは、本発明の構成物の製造及び用途の完全な説明を与える。本発明の多くの実施形態は本発明の精神及び範囲から逸脱せずに実施することができるので、本発明は添付の特許請求の範囲内に存在する。
【図面の簡単な説明】
【００５０】
【図１】コンピュータ環境の実施形態を示す。
【図２】暗号化構成情報の実施形態を示す。
【図３】鍵構成情報を受信するストレージ・ドライブ動作の実施形態を示す。
【図４】結合される取外し可能記憶媒体にアクセスするための暗号化方法及び暗号化鍵を取得するストレージ・ドライブ動作の実施形態を示す。
【図５】結合される取外し可能記憶媒体にアクセスするための暗号化方法及び暗号化鍵を取得するストレージ・ドライブ動作の実施形態を示す。
【図６】ストレージ・ライブラリ内のコンポーネントの実施形態を示す。
【符号の説明】
【００５１】
２、２０６：ストレージ・ドライブ
４、２０４ａ、２０４ｂ、２０４ｍ、２０４ｎ：取外し可能記憶媒体
６：Ｉ／Ｏマネージャ・コード
８：ユーザ・インターフェース
１０：外部ユーザ・インターフェース
１２ａ、１２ｂ：通信インターフェース
１４：鍵管理コード
１６：暗号化エンジン
１７：不揮発性メモリ
１８ａ、１８ｂ、１８ｃ：鍵サーバ
２０：暗号化構成情報
２２、２００：ストレージ・ライブラリ
２４：ネットワーク
２６：ホスト・システム
２８：アプリケーション
３０：システム・コンポーネント
３２ａ、３２ｂ、３２ｃ：鍵マネージャ
３４ａ、３４ｂ、３４ｃ：鍵ストア
３６ａ、３６ｂ、３６ｃ：ユーザ・インターフェース
４０：暗号化方法
４２：鍵パス
２０２：ストレージ・アレイ
２０８：オートチェンジャ機構
２１０：ライブラリ・コントローラ
２２０：オペレータ端末
【図１】
2010503301.tif 000003
【図２】
2010503301.tif 000004
【図３】
2010503301.tif 000005
【図４】
2010503301.tif 000006
【図５】
2010503301.tif 000007
2010503301.tif 000008
【図６】
2010503301.tif 000009
【国際調査報告】
2010503301.tif 000010
2010503301.tif 000011
2010503301.tif 000012