(57)【要約】【課題】サーバ用またはＰＣ用のいずれとしても利用することができる暗号化機能搭載のデータ蓄積装置を提供することである。【解決手段】実施形態によれば、データ蓄積装置は、コントローラを具備する。コントローラは、暗号化によるデータの保護を、第１のモードまたは第２のモードのいずれかによって実行する。コントローラは、第１のモードまたは第２のモードのいずれにも設定されていない初期状態であって、データの保護機能が非稼働の状態である第１の状態を取り得る。コントローラは、第１のモードの設定を要求する第１のコマンドに応じて、第１のモード下における初期状態であって、データの保護機能が非稼働の状態である第２の状態へ移行し、第２のモードの設定を要求する第２のコマンドに応じて、第２のモード下における初期状態であって、データの保護機能が非稼働の状態である第３の状態へ移行する。【選択図】図２
2019057811.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリと、
暗号化による前記不揮発性メモリ上のデータの保護を、第１の用途向けの第１のモードまたは第２の用途向けの第２のモードのいずれかによって実行するコントローラと、
を具備し、
前記コントローラは、
前記第１のモードまたは前記第２のモードのいずれにも設定されていない初期状態であって、データの保護機能が非稼働の状態である第１の状態を再現するための第１の初期設定と、前記第１のモード下における初期状態であって、データの保護機能が非稼働の状態である第２の状態を再現するための第２の初期設定と、前記第２のモード下における初期状態であって、データの保護機能が非稼働の状態である第３の状態を再現するための第３の初期設定とを保存する初期設定保存部と、
前記第１の状態にある場合において前記第１のモードの設定を要求する第１のコマンドに応じて、前記初期設定保存部が保存する前記第２の初期設定を用いて前記第１の状態から前記第２の状態へ移行する第１の処理を実行し、前記第１の状態にある場合において前記第２のモードの設定を要求する第２のコマンドに応じて、前記初期設定保存部が保存する前記第３の初期設定を用いて前記第１の状態から前記第３の状態へ移行する第２の処理を実行するモード設定部と、
を具備するデータ蓄積装置。
【請求項２】
前記第２の状態にある場合において前記第１のモード下でデータの保護機能が稼働する状態である第４の状態への移行を要求する第３のコマンドに応じて、前記第２の状態から前記第４の状態へ移行する第３の処理を実行し、前記第３の状態にある場合において前記第２のモード下でデータの保護機能が稼働する状態である第５の状態への移行を要求する第４のコマンドに応じて、前記第３の状態から前記第５の状態へ移行する第４の処理を実行する処理反映部と、
前記第４の状態にある場合において前記第２の状態への移行を要求する第５のコマンドに応じて、データの暗号化または暗号化されたデータの復号に用いられる暗号鍵を更新することによって前記不揮発性メモリに蓄積されるデータを無効化するとともに、ホスト装置の利用者を認証するためのＰＩＮ（Personal Identification Number）を初期化して、前記初期設定保存部が保存する前記第２の初期設定を用いて前記第４の状態から前記第２の状態へ移行する第５の処理を実行し、前記第５の状態にある場合において前記第３の状態への移行を要求する第６のコマンドに応じて、前記暗号鍵の更新および前記ＰＩＮの初期化を行って、前記初期設定保存部が保存する前記第３の初期設定を用いて前記第５の状態から前記第３の状態へ移行する第６の処理を実行し、前記第４の状態または前記第５の状態にある場合において前記第１の状態への移行を要求する第７のコマンドに応じて、前記暗号鍵の更新および前記ＰＩＮの初期化を行って、前記初期設定保存部が保存する前記第１の初期設定を用いて前記第４の状態または前記第５の状態から前記第１の状態へ移行する第７の処理を実行する初期化処理部と、
を具備する請求項１に記載のデータ蓄積装置。
【請求項３】
前記ＰＩＮを管理するＰＩＮ管理部と、
前記ＰＩＮ管理部によって管理されるＰＩＮを用いて、前記ホスト装置の利用者を認証する認証処理部と、
前記ホスト装置からコマンドが発行された場合、前記認証処理部による認証が前記コマンドの発行権限が付されたＰＩＮを用いて成功しているか否かを判定し、前記コマンドの発行権限が付されたＰＩＮを用いて成功している場合、前記コマンドに対応する処理の実行を許可する認可処理部と、
を具備し、
前記ＰＩＮ管理部は、管理者権限の管理者ＰＩＮと、一般ユーザ権限のユーザＰＩＮとに加えて、前記第１のコマンド、前記第２のコマンドおよび前記第７のコマンドの発行権限が与えられた専用ＰＩＮを管理する、
請求項２に記載のデータ蓄積装置。
【請求項４】
前記専用ＰＩＮは、変更不可である請求項３に記載のデータ蓄積装置。
【請求項５】
前記専用ＰＩＮは、前記第１の状態にある場合においてのみ変更可能である請求項３に記載のデータ蓄積装置。
【請求項６】
前記第１の状態、前記第２の状態、前記第３の状態、前記第４の状態または前記第５の状態のいずれの状態にあるかを管理する状態管理部を具備する請求項２乃至５のいずれか１項に記載のデータ蓄積装置。
【請求項７】
前記初期化処理部は、前記第５の処理または前記第６の処理の実行時における前記暗号鍵の更新有無を選択する鍵更新選択部を具備する請求項２乃至６のいずれか１項に記載のデータ蓄積装置。
【請求項８】
前記暗号鍵は、前記第１のモード用の第１の暗号鍵と、前記第２のモード用の第２の暗号鍵とを含み、
前記初期化処理部は、前記第５の処理の実行時において前記鍵更新選択部によって前記暗号鍵を更新することが選択された場合、前記第１の暗号鍵の更新を実行し、前記第６の処理の実行時において前記鍵更新選択部によって前記暗号鍵を更新することが選択された場合、前記第２の暗号鍵の更新を実行する、
請求項７に記載のデータ蓄積装置。
【請求項９】
前記第２のモードは、プリブート認証機構を構築する機能を有するモードであり、
前記初期化処理部は、前記第６の処理の実行時における前記プリブート認証機構の初期化有無を選択するプリブート認証機構更新選択部を具備する、
請求項２乃至８のいずれか１項に記載のデータ蓄積装置。
【請求項１０】
前記初期化処理部は、前記第１のモードから前記第２のモードへの切り替えを要求するコマンドであって、前記第４の状態にある場合において前記第３の状態への移行を要求する第８のコマンドに応じて、前記初期設定保存部が保存する前記第３の初期設定を用いて前記第４の状態から前記第３の状態へ移行する第８の処理を実行し、前記第２のモードから前記第１のモードへの切り替えを要求するコマンドであって、前記第５の状態にある場合において前記第２の状態への移行を要求する第９のコマンドに応じて、前記初期設定保存部が保存する前記第２の初期設定を用いて前記第５の状態から前記第２の状態へ移行する第９の処理を実行する請求項２乃至９のいずれか１項に記載のデータ蓄積装置。
【請求項１１】
前記初期化処理部は、前記第８の処理または前記第９の処理を実行する場合、前記不揮発性メモリに蓄積されるデータの無効化を行わない請求項１０に記載のデータ蓄積装置。
【請求項１２】
前記初期設定保存部は、前記第２の初期設定および前記第３の初期設定の一方または両方について標準仕様および特別仕様の２種類を保存し、
前記初期化処理部は、前記第５のコマンド、前記第６のコマンドまたは前記第７のコマンドに付されるパラメータに基づき、前記標準仕様または前記特別仕様の一方を選択して用いる、
請求項２乃至１１のいずれか１項に記載のデータ蓄積装置。
【請求項１３】
前記初期設定保存部は、前記第２の初期設定および前記第３の初期設定の一方または両方について、前記標準仕様および前記特別仕様として、異なる初期設定が適用され、プログラムが各々格納される２種類の初期イメージを保存する請求項１２項に記載のデータ蓄積装置。
【請求項１４】
前記第１のモードは、ＴＣＧ（Trusted Computing Group） Enterprise規格に準拠して動作するモードであり、前記第２のモードは、ＴＣＧOpal規格に準拠して動作するモードである請求項１乃至１３のいずれか１項に記載のデータ蓄積装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、データ蓄積装置に関する。
【背景技術】
【０００２】
近年、データの漏洩防止に対する関心が高まっている。その対策の一つとして、データの暗号化が広く行われている。また、データを暗号化して蓄積する暗号化機能を搭載するデータ蓄積装置を用いることも一般的になりつつある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１０−５０３０９０号公報
【特許文献２】特表２０１４−５１３４８４号公報
【特許文献３】特表２０１６−５３５４７６号公報
【非特許文献】
【０００４】
【非特許文献１】Trusted Computing Group, Storage Work Group Storage Security Subsystem Class: Enterprise Specification <URL: https://trustedcomputinggroup.org/storage-work-group-storage-security-subsystem-class-enterprise-specification/>
【非特許文献２】Trusted Computing Group, Storage Work Group Storage Security Subsystem Class: Opal (URL: https://trustedcomputinggroup.org/storage-work-group-storage-security-subsystem-class-opal/>
【発明の概要】
【発明が解決しようとする課題】
【０００５】
たとえばＳＳＤ（Solid State Drive）やＨＤＤ（Hard Disk Drive）などのデータ蓄積装置は、大きく分けて、主に企業向けであるサーバ用として利用される場合と、ＰＣ（Personal Computer）用として利用される場合とが想定される。また、データ蓄積装置に搭載される暗号化機能は、現状、サーバ用とＰＣ用とで異なるモジュール（ファームウェア）が実装されている。換言すれば、暗号化機能を搭載するデータ蓄積装置は、サーバ用とＰＣ用とで異なる製品として製造・流通している。
【０００６】
暗号化機能を搭載するデータ蓄積装置が、サーバ用とＰＣ用とで異なる製品として存在することは、供給者側の視点に立つと、２種類の製品を製造することが必要となり、顧客側の視点に立つと、購入や在庫管理を各々行うことが必要となる。
本発明が解決しようとする課題は、サーバ用またはＰＣ用のいずれとしても利用することができる暗号化機能搭載のデータ蓄積装置を提供することである。
【課題を解決するための手段】
【０００７】
実施形態によれば、不揮発性メモリと、コントローラとを具備する。前記コントローラは、暗号化による前記不揮発性メモリ上のデータの保護を、第１の用途向けの第１のモードまたは第２の用途向けの第２のモードのいずれかによって実行する。前記コントローラは、初期設定保存部と、モード設定部とを具備する。前記初期設定保存部は、前記第１のモードまたは前記第２のモードのいずれにも設定されていない初期状態であって、データの保護機能が非稼働の状態である第１の状態を再現するための第１の初期設定と、前記第１のモード下における初期状態であって、データの保護機能が非稼働の状態である第２の状態を再現するための第２の初期設定と、前記第２のモード下における初期状態であって、データの保護機能が非稼働の状態である第３の状態を再現するための第３の初期設定とを保存する。前記モード設定部は、前記第１の状態にある場合において前記第１のモードの設定を要求する第１のコマンドに応じて、前記初期設定保存部が保存する前記第２の初期設定を用いて前記第１の状態から前記第２の状態へ移行する第１の処理を実行し、前記第１の状態にある場合において前記第２のモードの設定を要求する第２のコマンドに応じて、前記初期設定保存部が保存する前記第３の初期設定を用いて前記第１の状態から前記第３の状態へ移行する第２の処理を実行する。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態のデータ蓄積装置の構成の一例を示す図。
【図２】第１実施形態のデータ蓄積装置が具備するコントローラの機能ブロックの一例を示す図。
【図３】第１実施形態のデータ蓄積装置がサーバ用またはＰＣ用のいずれとしても利用することができるようにするために備える仕組みの概要を説明するための図。
【図４】第１実施形態のデータ蓄積装置で管理されるＰＩＮの種類を示す図。
【図５】第１実施形態のデータ蓄積装置の状態移行に関するコマンドおよびその発行権限の一例を示す図。
【図６】第１実施形態のデータ蓄積装置が初期イメージを保持するパターンのバリエーションを示す図。
【図７】第１実施形態の記憶装置において想定され得る使用事例を説明するための第１の図。
【図８】第１実施形態の記憶装置において想定され得る使用事例を説明するための第２の図。
【図９】第１実施形態の記憶装置において想定され得る使用事例を説明するための第３の図。
【図１０】第２実施形態のデータ蓄積装置が具備するコントローラの機能ブロックの一例を示す図。
【図１１】第２実施形態のデータ蓄積装置の状態移行に関するコマンドおよびその発行権限の一例を示す図。
【図１２】第２実施形態のデータ蓄積装置における暗号鍵の保持状態の遷移の一例を示す図。
【図１３】第３実施形態のデータ蓄積装置が具備するコントローラの機能ブロックの一例を示す図。
【図１４】第３実施形態のデータ蓄積装置がShadow MBRの消去有無を指定できるようにするために備える仕組みの概要を説明するための図。
【図１５】Shadow MBRの概要を説明するための図。
【図１６】第４実施形態のデータ蓄積装置が具備するコントローラの機能ブロックの一例を示す図。
【図１７】第４実施形態のデータ蓄積装置がEnterpriseモード−Opalモード間をダイレクトに遷移することができるようにするために備える仕組みの概要を説明するための図。
【図１８】第４実施形態のデータ蓄積装置の状態移行に関するコマンドおよびその発行権限の一例を示す図。
【発明を実施するための形態】
【０００９】
以下、実施の形態について図面を参照して説明する。
（第１実施形態）
まず、第１実施形態について説明する。
図１は、本実施形態に係るデータ蓄積装置１の構成の一例を示す図である。このデータ蓄積装置１は、暗号化機能を搭載するストレージであり、たとえばＳＳＤやＨＤＤなどとして実現され得る。図１に示すように、データ蓄積装置１は、コントローラ１１と、揮発性メモリ１２と、不揮発性メモリ１３とを有している。
【００１０】
コントローラ１１は、ホスト装置２からreadまたはwriteのコマンドを受け付け、揮発性メモリ１２をキャッシュとして使用しながら、ホスト装置２から要求されたデータの不揮発性メモリ１３からの読み出し、または、ホスト装置２から転送されるデータの不揮発性メモリ１３への書き込みを行う処理回路である。なお、キャッシュは、コントローラ１１内に設けられてもよい。つまり、揮発性メモリ１２は必須ではない。なお、揮発性メモリ１２は、キャッシュとして以外にも、たとえば不揮発性メモリ１３からのプログラムのロード先や当該プログラムの作業領域などとして使用され得る。
【００１１】
コントローラ１１は、データを不揮発性メモリ１３へ書き込む場合、そのデータを暗号鍵によって暗号化し、一方、データを不揮発性メモリ１３から読み出す場合、暗号化されているデータを、暗号化に用いた同じ暗号鍵によって復号する。コントローラ１１は、この暗号鍵を更新することによって、不揮発性メモリ１３上のデータを一括的に無効化することができる。暗号鍵の更新は、たとえば、乱数を発生させ、暗号鍵の値を当該発生させた乱数の値に置き換えることによって実行される。また、コントローラ１１は、このような暗号化によるデータの保護を、Enterpriseモード（第１のモード）またはOpalモード（第２のモード）のいずれかによって実行する。Enterpriseモードは、データ蓄積装置１が主に企業向けであるサーバ用として利用される場合に設定されるモードであり、Opalモードは、ＰＣ用として利用される場合に設定されるモードである。たとえば、Enterpriseモードは、ＴＣＧ（Trusted Computing Group） Enterprise規格に準拠して動作するモードであり、また、Opalモードは、ＴＣＧ Opal規格に準拠して動作するモードである。つまり、本実施形態のデータ蓄積装置１は、サーバ用またはＰＣ用のいずれとしても利用することができるものであり、以下、この点について詳述する。
【００１２】
なお、EnterpriseモードとOpalモードとの間には、たとえば、Opalモードでは起動時の認証機構（Shadow MBR）を構築する機能が必須であるのに対して、Enterpriseモードでは不要であったり、Opalモードでは管理者権限でユーザ領域のUnlockとデータ消去が可能であるのに対して、Enterpriseモードでは管理者権限であってもユーザ領域のUnlockは不可（Eraseのみ可能）であり、データ消去しかできなかったりといった違いが存在する。
【００１３】
揮発性メモリ１２は、たとえばＤＲＡＭ（Dynamic RAM）である。また、不揮発性メモリ１３は、たとえばＮＡＮＤフラッシュメモリやハードディスクである。
データ蓄積装置１とホスト装置２とは、たとえば、ＴＣＧ ＳＩＩＳ（Storage Interface Interactions Specification）仕様に規定される、ＳＣＳＩインタフェース、ＡＴＡインタフェース、ＮＶＭ Express（ＮＶＭｅ（登録商標））、ｅ・ＭＭＣインタフェースなどによって接続される。図１には、データ蓄積装置１とホスト装置２とが、ＮＶＭｅ（登録商標）インタフェースによって接続されている例を示している。
【００１４】
ホスト装置２は、データ蓄積装置１をストレージとして利用する、データ蓄積装置１に対してreadやwriteを発行する装置であり得るが、ここでは、データ蓄積装置１をEnterpriseモードに設定したり、データ蓄積装置１をOpalモードに設定したり、データ蓄積装置１をEnterpriseモードからOpalモードに切り替えたり、データ蓄積装置１をOpalモードからEnterpriseモードに切り替えたりするためのモード設定・モード切替用の装置であることを想定する。
【００１５】
図２は、コントローラ１１の機能ブロックの一例を示す図である。
図２に示すように、コントローラ１１は、インタフェース処理部１１１、コマンド処理部１１２、認可処理部１１３、設定管理部１１４および初期設定保存部１１５を有している。また、コントローラ１１は、状態管理部１１６、モード設定部１１７、処理反映部１１８、初期化処理部１１９および鍵管理部１２０を有している。さらに、コントローラ１１は、暗号処理部１２１およびread/write処理部１２２を有している。
【００１６】
図１に示した不揮発性メモリ１３の所定の領域には、コントローラ１１に様々な手順を実行させるためのプログラムが格納されている。このプログラムは、たとえばデータ蓄積装置１の起動時などに、コントローラ１１が具備するプロセッサによって、その一部または全部が、図１に示した揮発性メモリ１２（コントローラ１１内に設けられる、キャッシュとしても用いられる揮発性メモリであってもよい。）にロードされる。コントローラ１１のプロセッサは、揮発性メモリ１２上のプログラムを実行する。このプログラムの記述によって、図２に示される各処理部を含む様々な処理部をコントローラ１１内に構築することができる。
【００１７】
ここで、コントローラ１１の各処理部の理解を助けるために、図３を参照して、本実施形態のデータ蓄積装置１が、サーバ用またはＰＣ用のいずれとしても利用することができるようにするために備える仕組みの概要について説明する。
本実施形態のデータ蓄積装置１は、第１に、データ蓄積装置１が取り得る状態、換言すれば、データ蓄積装置１が管理し得る状態として、符号Ｓ１で示されるNeutral Original Factory State (Neutral OFS：第１の状態)と、符号Ｓ２で示されるEnterprise Original Factory State (Enterprise OFS：第２の状態)とを追加する。
【００１８】
Neutral OFSは、EnterpriseモードまたはOpalモードのいずれにも設定されていない非稼働（Inactive）の状態であって、たとえば出荷時の初期状態である。Enterprise OFSは、Enterpriseモードにおける初期状態である。
【００１９】
符号Ｓ３で示されるOpal Original Factory State (Opal OFS：第３の状態)と、符号Ｓ５で示されるOpal Active (第５の状態)とは、たとえば、ＴＣＧ Opal規格において定義されている、データ蓄積装置１が取り得る既存の状態、換言すれば、データ蓄積装置１が管理し得る既存の状態である。Opal OFSは、Opalモードにおける初期状態（出荷状態）であり、Opal Activeは、Opalモードで稼働中の状態である。また、符号４で示されるEnterprise Active（第４の状態）は、Enterpriseモードで稼働中の状態である。従来、データ蓄積装置１は、サーバ用またはＰＣ用のいずれか向けの製品として製造され、サーバ用の製品は、顧客の要望に沿った設定がなされたEnterprise Activeの状態で出荷され、ＰＣ用の製品は、顧客が設定を行うOpal OFSの状態で出荷される。つまり、従来、データ蓄積装置１は、ＰＣ用の製品として製造・出荷される場合において、Opal OFSの状態に復帰（Opal OFSの状態を再現）するための初期イメージ（初期設定）のみを保持する。これに対して、Neutral OFSとEnterprise OFSとを追加する本実施形態のデータ蓄積装置１は、Neutral OFS用の初期イメージと、Enterprise OFS用の初期イメージと、Opal OFS用の初期イメージとの複数の初期イメージを保持する。ここで、初期イメージとは、たとえば、所定の初期設定が適用されたファーム（プログラム）イメージである。あるいは、初期イメージは、所定の初期設定を格納する設定ファイルなどであってもよい。
【００２０】
なお、Enterprise OFSおよびOpal OFSの初期イメージは、generic（標準仕様）とcustomized（特別仕様）とが、たとえば排他選択的に存在し得る。genericは、製造・販売元が定める初期設定が適用され、一方、customizedは、顧客の要望に沿った初期設定が適用される。たとえば、Enterprise OFSについてはユーザ数を（generic時における数から）増減させたり、Opal OFSについては管理者ＰＩＮ（Personal Identification Number）の初期値を(たとえばgenericではマニュアルなどに記載の値であるものを)その時の所有者ＰＩＮの値にしたりといった変更が施される。また、Enterprise OFSとOpal OFSとのそれぞれについて、genericとcustomizedとの双方の初期イメージを保持し、いずれか一方を選択して使用できるようにしてもよい。
【００２１】
また、本実施形態のデータ蓄積装置１は、第２に、Neutral OFSの状態においてEnterpriseモードを設定し、Enterprise OFSの状態へ移行させるコマンド（Enterprise mode：第１のコマンド［ｂ１］）と、Neutral OFSの状態においてOpalモードを設定し、Opal OFSの状態へ移行させるコマンド（Opal mode：第２のコマンド［ｂ２］）と、Enterprise Activeの状態またはOpal Activeの状態からNeutral OFSの状態に移行させるコマンド（Neutral Revert：第７のコマンド［ｂ３］）とを新設する。さらには、本実施形態のデータ蓄積装置１は、Enterprise OFSの状態からEnterprise Activeの状態に移行させるコマンド（Activate(Enterprise)：第３のコマンド［ｂ１１］）と、Enterprise Activeの状態からEnterprise OFSの状態に移行させるコマンド（Revert(Enterprise)：第５のコマンド［ｂ１２］）とについても新設する。
【００２２】
なお、Activate(Enterprise)およびRevert(Enterprise)は、後述する既存のActivateおよびRevertと共通化してもよい。より詳しくは、Enterprise OFSの状態においてActivateが発行されたならば、Activate(Enterprise)と解釈し、Opal OFSの状態においてActivateが発行されたならば、既存のActivateと解釈し、また、Enterprise Activeの状態においてRevertが発行されたならば、Revert(Enterprise) と解釈し、Opal Activeの状態においてRevertが発行されたならば、既存のRevertと解釈するようにしてもよい。
【００２３】
また、たとえばEnterprise mode (w/param)の(w/param)は、Enterprise modeがパラメータ付きで発行され得ることを示している（with parameter）。たとえばEnterprise OFSの初期イメージとしてgenericとcustomizedとの双方が保持されている場合、パラメータによって、それらのうちのいずれを選択して使用するのかを指定することができるようにしてもよい。
【００２４】
さらに、本実施形態のデータ蓄積装置１は、Enterprise mode、Opal modeおよびNeutral Revertを発行するための専用の権限（Authority）を定義する。権限の種類については後述するが、Enterprise modeにおいては、管理者ＰＩＮ（Admin PIN）およびユーザＰＩＮ（User PIN）に加えて、専用ＰＩＮを定義し、Opal modeにおいては、所有者ＰＩＮ（SID PIN）、管理者ＰＩＮ（Admin PIN）およびユーザＰＩＮ（User PIN）に加えて、専用ＰＩＮを定義する。Activate(Enterprise)およびRevert(Enterprise)を発行する権限は、管理者ＰＩＮに与えられる。専用ＰＩＮは、変更不可とすること、または、一定の条件下においてのみ変更可能とすることが好ましい。
【００２５】
Opal OFSの状態からOpal Activeの状態に移行させるコマンド（Active：第４のコマンド［ｂ１３］）と、Opal Activeの状態からOpal OFSの状態に移行させるコマンド（Revert：第６のコマンド［ｂ１４］）は、たとえば、ＴＣＧ Opal規格において定義されている既存のコマンドであり、その発行権限は、所有者ＰＩＮに与えられる。
【００２６】
Revert(Enterprise)によってEnterprise OFSの状態に移行する場合と、RevertによってOpal OFSの状態に移行する場合と、Neutral RevertによってNeutral OFSの状態に移行する場合とのいずれの場合も、暗号鍵の更新によるデータの無効化が行われ、また、その時の状態（Enterpriseモード下またはOpalモード下）において管理されるＰＩＮの初期化が行われる。
【００２７】
つまり、本実施形態のデータ蓄積装置１は、出荷時の状態（Neutral OFSの状態）においてEnterpriseモードを設定することによってサーバ用として利用し得るし、出荷時の状態（Neutral OFSの状態）においてOpalモードを設定することによってＰＣ用として利用し得る。さらに、本実施形態のデータ蓄積装置１は、サーバ用として利用していたものを、出荷時の状態（Neutral OFSの状態）に戻して、ＰＣ用に転用し得るし、ＰＣ用として利用していたものを、出荷時の状態（Neutral OFSの状態）に戻して、サーバ用に転用し得る。また、専用の権限を定義することで、その権限者以外によるモード切り替えを制限することができる。
【００２８】
以上を踏まえて、図２に戻り、コントローラ１１の各処理部について説明する。
インタフェース処理部１１１は、ホスト装置２との間でたとえばＮＶＭｅ（登録商標）規格に準拠したプロトコルによって通信する。より詳しくは、インタフェース処理部１１１は、ホスト装置２から発行されるコマンドを受信してコマンド処理部１１２へ引き渡すとともに、そのコマンドに対応する処理の結果をコマンド処理部１１２から受け取ってホスト装置２へ送信する。
【００２９】
コマンド処理部１１２は、まず、インタフェース処理部１１１から受け取ったコマンドを認可処理部１１３に転送する。認可処理部１１３は、ホスト装置２の操作者が、そのコマンドを発行する権限を有するか否かを判定し、その結果をコマンド処理部１１２に通知する。コマンド処理部１１２は、権限を有するとの通知を認可処理部１１３から受けた場合、インタフェース処理部１１１から受け取ったコマンドを、そのコマンドに対応する処理を実行する処理部に転送する。
【００３０】
認可処理部１１３は、コマンドの発行権限の有無を、そのコマンドを発行する権限が与えられたＰＩＮで認証が成功しているかによって判定する。ＰＩＮによる認証は、設定管理部１１４の認証処理部１１４Ｂによって実行される。設定管理部１１４は、ＰＩＮ管理部１１４Ａを有している。認証処理部１１４Ｂは、ＰＩＮ管理部１１４Ａが管理するＰＩＮに基づき、認証を実行する。図４に、ＰＩＮ管理部１１４Ａが管理するＰＩＮの種類を示す。
【００３１】
図４に示すように、ＰＩＮ管理部１１４Ａは、Enterpriseモードの場合、管理者ＰＩＮ、専用ＰＩＮおよびユーザＰＩＮを管理する。専用ＰＩＮは、前述した、Neutral Revertを発行する権限が与えられた新たに定義されるＰＩＮである。また、ＰＩＮ管理部１１４Ａは、Opalモードの場合、所有者ＰＩＮ、管理者ＰＩＮ、専用ＰＩＮおよびユーザＰＩＮを管理する。この専用ＰＩＮも、前述した、Neutral Revertを発行する権限が与えられた新たに定義されるＰＩＮである。また、ＰＩＮ管理部１１４Ａは、EnterpriseモードまたはOpalモードのいずれにも設定されていない場合、つまり、Neutral OFSの状態にある場合、少なくとも専用ＰＩＮを管理する。この専用ＰＩＮは、前述した、Enterprise mode、Opal modeおよびNeutral Revertを発行する権限が与えられた新たに定義されるＰＩＮである。つまり、本実施形態のデータ蓄積装置１におけるＰＩＮ管理部１１４Ａは、専用ＰＩＮをさらに管理するように機能追加されている。
【００３２】
専用ＰＩＮ以外のＰＩＮは、ホスト装置２からコマンドを発行することによって変更することができる。このコマンドも、インタフェース処理部１１１およびコマンド処理部１１２経由で認可処理部１１３に転送され、その発行権限の有無が判定される。権限を有する場合、そのコマンドは設定管理部１１４に転送され、ＰＩＮ管理部１１４Ａが管理するＰＩＮの変更が実行される。専用ＰＩＮの値は、たとえば、データ蓄積装置１の製造・販売元から顧客側の特定者のみに通知され、または、データ蓄積装置１の製造・販売元において管理される。また、専用ＰＩＮについても、たとえばNeutral OFSの状態にある場合においてのみ変更することができるようにしてもよい。
【００３３】
また、ＰＩＮによる認証も、ホスト装置２からのコマンドの発行に起因して実行されるものであって、そのコマンドが、インタフェース処理部１１１およびコマンド処理部１１２経由で認可処理部１１３に転送され、さらに、認可処理部１１３から設定管理部１１４に転送されて、認証処理部１１４Ｂによって、ＰＩＮ管理部１１４Ａが管理するＰＩＮに基づく認証が実行される。認証処理部１１４Ｂは、たとえば、ホスト装置２の操作者にＰＩＮの入力を促し、入力されたＰＩＮとＰＩＮ管理部１１４Ａが管理するＰＩＮとを比較して、ホスト装置２の操作者を認証する。
【００３４】
図５に、本実施形態のデータ蓄積装置１の状態移行に関するコマンドおよびその発行権限の一例を示す。
図５中、（Ａ）は、EnterpriseモードまたはOpalモードのいずれにも設定されていないNeutral OFSの状態において発行されるコマンドを示し、（Ｂ）は、Enterpriseモード下において発行されるコマンドを示し、（Ｃ）は、Opalモード下において発行されるコマンドを示している。
また、図５中の符号ｂ１〜ｂ３，ｂ１１〜１４は、図５中の符号ｂ１〜ｂ３，ｂ１１〜１４と対応している。前述したように、Enterprise mode（ｂ１）、Opal mode（ｂ２）、Neutral Revert（ｂ３）、Revert(Enterprise)（ｂ１２）およびActivate(Enterprise)（ｂ１１）は、新設のコマンドであって、Enterprise mode（ｂ１）、Opal mode（ｂ２）およびNeutral Revert（ｂ３）を発行する権限は、専用ＰＩＮに与えられ、Revert(Enterprise)（ｂ１２）およびActivate(Enterprise)（ｂ１１）を発行する権限は、管理者ＰＩＮに与えられる。また、Revert（Ｂ１４）およびActivate（Ｂ１３）は、たとえば、ＴＣＧ Opal規格において定義されている既存のコマンドであって、それらを発行する権限は、所有者ＰＩＮに与えられる。たとえばEnterprise mode（ｂ１）の発行時、認可処理部１１３は、専用ＰＩＮで認証が成功している場合に限り、当該Enterprise modeの実行について許可と判定する。
【００３５】
初期設定保存部１１５は、Neutral OFSイメージ１５１と、Enterprise OFSイメージ１５２と、Opal OFSイメージ１５３とを保持する。Neutral OFSイメージ１５１は、Neutral Revertの発行によってNeutral OFSの状態に移行（Neutral OFSの状態を再現）するための前述したNeutral OFS用の初期イメージである。Enterprise OFSイメージ１５２は、Enterprise modeまたはRevert(enterprise) の発行によってEnterprise OFSの状態に移行（Enterprise OFSの状態を再現）するための前述したEnterprise OFS用の初期イメージである。Opal OFSイメージ１５３は、Opal modeまたはRevertの発行によってOpal OFSの状態に移行（Opal OFSの状態を再現）するための前述したOpal OFS用の初期イメージである。つまり、本実施形態のデータ蓄積装置１における初期設定保存部１１５は、Enterprise OFSとOpal OFSとの両方の初期イメージを保存する。
【００３６】
なお、前述したように、Enterprise OFSおよびOpal OFSの初期イメージは、genericとcustomizedとが排他選択的に存在し得るし、または、それらの両方が存在し、それらを排他選択的に使用し得る。図２に示したEnterprise OFSイメージ１５２およびOpal OFSイメージ１５３は、genericの初期イメージである。したがって、初期設定保存部１１５によって保持される初期イメージは、Neutral OFSイメージ１５１と、Enterprise OFSイメージ１５２と、Opal OFSイメージ１５３とに限られない。たとえば、図６に示すように、（Ａ）Neutral OFSイメージ１５１と、Enterprise OFSのcustomizedの初期イメージであるEnterprise OFS(customized)イメージ１５２−２と、Opal OFSイメージ１５３とを保持する、（Ｂ）Neutral OFSイメージ１５１と、Enterprise OFSイメージ１５２と、Opal OFSのcustomizedの初期イメージであるOpal OFS(customized)イメージ１５３−２とを保持する、（Ｃ）Neutral OFSイメージ１５１と、Enterprise OFS(customized)イメージ１５２−２と、Opal OFS(customized)イメージ１５３−２とを保持する、（Ｄ）Neutral OFSイメージ１５１と、Enterprise OFSイメージ１５２と、Enterprise OFS(customized)イメージ１５２−２と、Opal OFSイメージ１５３と、Opal OFS(customized)イメージ１５３−２とを保持する、なども考えられる。
【００３７】
状態管理部１１６は、データ蓄積装置１が、Neutral OFS、Enterprise OFS、Opal OFS、Enterprise ActiveまたはOpal Activeのいずれの状態にあるのかを管理する。つまり、本実施形態のデータ蓄積装置１における状態管理部１１６は、Neutral OFSの状態とEnterprise OFSの状態とをさらに管理するように機能追加されている。
【００３８】
モード設定部１１７は、Enterprise modeまたはOpal modeが発行された場合であって、認可処理部１１３によってその実行について許可と判断された場合に、コマンド処理部１１２から転送されてくる当該Enterprise modeまたはOpal modeに対応する処理を実行する。より詳しくは、データ蓄積装置１を、Neutral OFSの状態からEnterprise OFSの状態に移行させる処理（第１の処理）またはNeutral OFSの状態からOpal OFSの状態に移行させる処理（第２の処理）を実行する。認可処理部１１３は、状態管理部１１６によって管理される状態がNeutral OFSの状態ではない場合、エラーをコマンド処理部１１２に通知する。モード設定部１１７は、Neutral OFSの状態からEnterprise OFSの状態またはOpal OFSの状態への移行を完了させた場合、その状態遷移を状態管理部１１６に通知するとともに、処理完了をコマンド処理部１１２に通知する。このモード設定部１１７は、本実施形態のデータ蓄積装置１固有の処理部である。
【００３９】
処理反映部１１８は、Activate(Enterprise)またはActivateが発行された場合であって、認可処理部１１３によってその実行について許可と判断された場合に、コマンド処理部１１２から転送されてくる当該Activate(Enterprise) またはActivateに対応する処理を実行する。より詳しくは、データ蓄積装置１を、Enterprise OFSの状態からEnterprise Activeの状態に移行させる処理（第３の処理）またはOpal OFSの状態からOpal Activeの状態に移行させる処理（第４の処理）を実行する。認可処理部１１３は、状態管理部１１６によって管理される状態がEnterprise OFSの状態ではない場合（Activate(Enterprise)発行時）またはOpal OFSの状態ではない場合（Activate発行時）、エラーをコマンド処理部１１２に通知する。モード設定部１１７は、Enterprise OFSの状態からEnterprise Activeの状態への移行またはOpal OFSの状態からOFS Activeの状態への移行を完了させた場合、その状態遷移を状態管理部１１６に通知するとともに、処理完了をコマンド処理部１１２に通知する。つまり、本実施形態のデータ蓄積装置１における処理反映部１１８は、Activate(Enterprise)に応じて、Enterprise OFSの状態からEnterprise Activeの状態に移行させる処理を実行するように機能追加されている。
【００４０】
初期化処理部１１９は、Revert(Enterprise)、RevertまたはNeutral Revertが発行された場合であって、認可処理部１１３によってその実行について許可と判断された場合に、コマンド処理部１１２から転送されてくる当該Revert(Enterprise)、RevertまたはNeutral Revertに対応する処理を実行する。より詳しくは、初期設定保存部１１５に保持される初期イメージを用いて、データ蓄積装置１を、Enterprise Activeの状態からEnterprise OFSの状態に移行させる処理（第５の処理）、Opal Activeの状態からOpal OFSの状態に移行させる処理（第６の処理）またはEnterprise Activeの状態もしくはOpal Activeの状態からNeutral OFSの状態に移行させる処理（第７の処理）を実行する。認可処理部１１３は、状態管理部１１６によって管理される状態がEnterprise Activeの状態ではない場合（Revert(Enterprise)発行時）またはOpal Activeの状態ではない場合（Revert発行時）、エラーをコマンド処理部１１２に通知する（Neutral Revert発行時は、Enterprise ActiveまたはOpal Activeのいずれの状態でもない場合）。モード設定部１１７は、Enterprise Activeの状態からEnterprise OFSもしくはNeutral OFSの状態への移行またはOpal Activeの状態からOpal OFSもしくはNeutral OFSの状態への移行を完了させた場合、その状態遷移を状態管理部１１６に通知するとともに、処理完了をコマンド処理部１１２に通知する。つまり、本実施形態のデータ蓄積装置１における初期化処理部１１９は、Neutral Revertに応じて、データ蓄積装置１を、Enterprise ActiveまたはOpal Activeの状態からNeutral OFSの状態に移行させる処理を実行するように機能追加されている。また、本実施形態のデータ蓄積装置１における初期化処理部１１９は、Revert(Enterprise)に応じて、データ蓄積装置１を、Enterprise Activeの状態からEnterprise OFSの状態に移行させる処理も実行するように機能追加されている。
【００４１】
また、初期化処理部１１９は、データ蓄積装置１を、Neutral OFS、Enterprise OFSまたはOpal OFSの状態に移行させる場合、不揮発性メモリ１３上のデータを無効化するために、暗号鍵を管理する鍵管理部１２０に対して、暗号鍵の更新を指示する。暗号鍵が更新されると、不揮発性メモリ１３上に蓄積されている暗号化されたデータを正しく復号することができなくなるので、データが一括的に無効化されることになる。なお、この更新後は、更新後の暗号鍵を使って、データの暗号化と、暗号化されたデータの復号とが行われることになる。つまり、暗号鍵の更新は、データ蓄積装置１を使用できないようにするものではない。
【００４２】
暗号処理部１２１は、鍵管理部１２０によって管理される暗号鍵を使って、不揮発性メモリ１３に書き込まれるデータを暗号化し、または、不揮発性メモリ１３から読み出された暗号化されているデータを復号する処理を実行する。そして、read/write処理部１２２は、不揮発性メモリ１３からデータを読み出し、または、不揮発性メモリ１３にデータを書き込む処理を実行する。
【００４３】
次に、図７乃至図９を参照して、以上のような構成を有する本実施形態のデータ蓄積装置１において想定され得る使用事例について説明する。
ここでは、たとえば、サーバやＰＣを販売する企業（サーバベンダ）が、データ蓄積装置１の製造・販売元（サプライヤ）からデータ蓄積装置１を購入し、販売品であるサーバやＰＣに適用する場合を想定する。
【００４４】
図７中、サーバ３は、サーバベンダが販売するコンピュータであり、たとえばその筐体内に多数のデータ蓄積装置１が収容される。なお、クライアント機器４は、たとえばサーバベンダからサーバ３を購入して使用する企業の社員など（エンドユーザ）が使用するコンピュータである。ネットワークＮは、サーバ３とクライアント機器４とを繋ぐたとえばインターネットなどのネットワークである。
【００４５】
また、図７中、ストレージ設定用機器２−１は、たとえばデータ蓄積装置１の在庫管理者が使用するコンピュータであり、サーバ管理者機器２−２は、たとえばサーバ３の運用管理者が使用するコンピュータであり、ＰＣ２−３は、サーバベンダが販売するたとえばノートＰＣなどのコンピュータである。ストレージ設定用機器２−１は、（専用ＰＩＮにて認証が成功しているという条件下で）図１および図２に示されるホスト装置２としてEnterprise mode、Opal mode、Neutral Revertを発行し得る。サーバ管理者機器２−２は、（管理者ＰＩＮにて認証が成功しているという条件下で）図１および図２に示されるホスト装置２としてActivate(Enterprise)、Revert(Enterprise)を発行し得る。ＰＣ２−３は、（所有者ＰＩＮにて認証が成功しているという条件下で）図１および図２に示されるホスト装置２としてActivate、Revertを発行し得る。
【００４６】
サーバベンダは、サーバ３用およびＰＣ２−３用としてサプライヤからデータ蓄積装置１を購入して適用する場合、従来、たとえば、サーバ３用のデータ蓄積装置１をいくつ購入して、ＰＣ２−３用のデータ蓄積装置１をいくつ購入するかや、サーバ３用のデータ蓄積装置１はいくつ在庫が存在して、ＰＣ２−３用のデータ蓄積装置１はいくつ在庫が存在するかなど、購入や在庫管理をサーバ３用とＰＣ２−３用とで各々行うことが必要であった。これに対して、本実施形態のデータ蓄積装置１は、サーバ３用またはＰＣ２−３用のいずれとしても利用することができるので、サーバベンダは、サーバ３用なのかＰＣ２−３用なのかを区別する必要なく、サプライヤからデータ蓄積装置１を一括して購入することができる。一方、サプライヤは、サーバ用とＰＣ用との２種類の製品（２種類のデータ蓄積装置１）を製造することが不要となる。
【００４７】
データ蓄積装置１は、Neutral OFSの状態でサプライヤから出荷される。また、サプライヤからは、出荷されたデータ蓄積装置１の専用ＰＩＮの値が購入者（たとえばサーバベンダの在庫管理者）に通知される。在庫管理者は、この専用ＰＩＮを使って、ストレージ設定用機器２−１により、サーバ３に適用するデータ蓄積装置１については、Enterprise modeを発行して、Enterpriseモードに設定することで、Enterprise OFSの状態に移行させ（ａ１）、ＰＣ２−３に適用するデータ蓄積装置１については、Opal modeを発行して、Opalモードに設定することで、Opal OFSの状態に移行させる（ａ２）。
【００４８】
Enterprise OFSの状態でサーバ３に収容されたデータ蓄積装置１は、（管理者ＰＩＮにて認証が成功している）サーバ管理者機器２−２からActive(Enterprise)の発行を受けて、Enterprise Activeの状態に移行する。または、（管理者ＰＩＮで認証が成功している）ストレージ設定用機器２−１でデータ蓄積装置１をEnterprise Activeの状態に移行させて、Enterprise Activeの状態のデータ蓄積装置１をサーバ３に収容するようにしてもよい。（管理者ＰＩＮにて認証が成功している）サーバ管理者機器２−２からは、Revert(Enterprise)を発行することが可能であり、Enterprise OFSの状態に移行させることができる。
【００４９】
同様に、Opal OFSの状態でＰＣ２−３に収容されたデータ蓄積装置１は、（所有者ＰＩＮにて認証が成功している）ＰＣ２−３からActiveの発行を受けて、Activeの状態に移行する。（所有者ＰＩＮにて認証が成功している）ＰＣ２−３からは、Revertを発行することが可能であり、Opal OFSの状態に移行させることができる。
【００５０】
また、本実施形態のデータ蓄積装置１は、たとえば、サーバ３用からＰＣ２−３用に流用することなどが可能である（ａ３）。逆に、ＰＣ２−３用からサーバ３用への流用も可能である（ａ４）。換言すれば、Enterpriseモード−Opalモード間でのモード切り替えが可能である。サーバ３用からＰＣ２−３用に流用されるデータ蓄積装置１は、Enterprise Activeの状態でサーバ３から取り外され、（専用ＰＩＮにて認証が成功している）ストレージ設定用機器２−１からNeutral Revertの発行を受け、Neutral OFSの状態に移行する。Neutral OFSの状態は、出荷時の状態なので、前述の手順で、Opal OFSの状態に移行した後、ＰＣ２−３に収容される。
【００５１】
ＰＣ２−３用からサーバ３用に流用されるデータ蓄積装置１も、Opal Activeの状態でＰＣ２−３から取り外され、（専用ＰＩＮにて認証が成功している）ストレージ設定用機器２−１からNeutral Revertの発行を受け、Neutral OFSの状態に移行する。Neutral OFSの状態に移行した後は、前述の手順で、Enterprise OFSまたはEnterprise Activeの状態に移行した後、サーバ３に収容される。
【００５２】
なお、サプライヤから出荷されるデータ蓄積装置１の状態は、必ずしもNeutral OFSの状態としなくともよい。たとえば、サーバ用とＰＣ用とで個別にサーバベンダからの発注を受け、Enterprise OFSまたはEnterprise Activeの状態のデータ蓄積装置１と、Opal OFSの状態のデータ蓄積装置１とを納品するようにしてもよい。たとえばサーバ用のデータ蓄積装置１をＰＣ用に流用したいという事情がサーバベンダ側に生じた場合、図８に示すように、そのデータ蓄積装置１をサーバベンダから回収し、サプライヤが、（専用ＰＩＮにて認証が成功している）ストレージ設定用機器２−１によって、EnterpriseモードからOpalモードへの切り替えを行った上で、サーバベンダに返却するようにしてもよい。この場合、専用ＰＩＮの値をサーバベンダに通知することは不要である。ＰＣ用のデータ蓄積装置１をサーバ用に流用したいという事情がサーバベンダ側に生じた場合も同様である。専用ＰＩＮの値をサーバベンダに通知することが不要となると、サプライヤにおいては、たとえばサーバベンダごとに専用ＰＩＮの値を分けて管理するといったことを行う必要がなくなり、管理すべき専用ＰＩＮの数を大幅に削減することができる。
また、たとえば図９に示すように、サプライヤ側のストレージ設定用機器２−１−１とサーバベンダ側のストレージ設定用機器２−１−２とをネットワークＮ２で接続し、サーバベンダ側のストレージ設定用機器２−１−２に収容されたデータ蓄積装置１へサプライヤ側のストレージ設定用機器２−１−１からリモートでアクセスできるようにして、サプライヤ側のストレージ設定用機器２−１−１から（サーバベンダ側のストレージ設定用機器２−１−２経由で）データ蓄積装置１へ直接的に専用ＰＩＮを送信できるようにしてもよい。この場合も、たとえば、サーバ用のデータ蓄積装置１をＰＣ用に流用したいという事情がサーバベンダ側に生じた場合において、専用ＰＩＮの値をサーバベンダに通知することを不要とすることができる。
【００５３】
つまり、データ蓄積装置１のモード設定やモード切り替えについて、サーバベンダ側において実行可能とすることは必須ではない。この場合も、サプライヤにおいては、サーバ用とＰＣ用との２種類の製品を製造することが不要となるという効果がある。
このように、本実施形態のデータ蓄積装置１は、サーバ用またはＰＣ用のいずれとしても利用することができる。
【００５４】
（第２実施形態）
次に、第２実施形態について説明する。第１実施形態と同一の構成要素については、同一の符号を使用し、重複する説明は省略する。
図１０は、本実施形態に係るデータ蓄積装置１が具備するコントローラ１１の機能ブロックの一例を示す図である。
【００５５】
図１０に示すように、本実施形態のデータ蓄積装置１は、コントローラ１１の初期化処理部１１９が、鍵更新選択部１１９Ａを具備する。
鍵更新選択部１１９Ａは、Enterprise Activeの状態からEnterprise OFSの状態またはOpal Activeの状態からOpal OFSの状態に移行する場合において、データを無効化しない、つまり、暗号鍵の更新を行わないオプションを提供するために設けられる処理部である。そのために、本実施形態のデータ蓄積装置１においては、たとえば、図１１に示すように、Enterprise OFSの状態に移行するためのコマンドとして、RevertSP(Enterprise)（ｂ１２−２）を新設するとともに、Opal OFSの状態に移行するためのコマンドとして、RevertSP（ｂ１４−２）を新設する。図５と同様、図１１中、（Ａ）は、EnterpriseモードまたはOpalモードのいずれにも設定されていないNeutral OFSの状態において発行されるコマンドを示し、（Ｂ）は、Enterpriseモード下において発行されるコマンドを示し、（Ｃ）は、Opalモード下において発行されるコマンドを示している。RevertSP(Enterprise)またはRevertSPが発行された場合、鍵更新選択部１１９Ａは、暗号鍵の更新を行わないと判断する。なお、Activate(Enterprise)およびRevert(Enterprise)と同様、RevertSP(Enterprise)は、RevertSPと共通化してもよい。つまり、Enterprise ActiveまたはOpal Activeのいずれの状態にあるかによって、RevertSP(Enterprise)またはRevertSPのいずれであるのかを判断してもよい。また、RevertSP(Enterprise)およびRevertSPを新設することに代えて、Revert(Enterprise)またはRevertにパラメータを付すことで、暗号鍵の更新を行うか否かを指定することができるようにしてもよい（w/param)。
【００５６】
初期化処理部１１９は、鍵更新選択部１１９Ａによって暗号鍵の更新を行うと判断された場合、鍵管理部１２０に対して、暗号鍵の更新を指示し、一方、鍵更新選択部１１９Ａによって暗号鍵の更新を行わないと判断された場合、鍵管理部１２０に対する暗号鍵の更新の指示は行わない。
【００５７】
RevertSP(Enterprise)およびRevertSPを新設することによって、本実施形態のデータ蓄積装置１においては、Enterpriseモード下において使用される暗号鍵と、Opalモード下において使用される暗号鍵との両方が、鍵管理部１２０によって管理され得る。つまり、本実施形態のデータ蓄積装置１における鍵管理部１２０は、２つの鍵を管理するように機能追加されている。初期化処理部１１９は、暗号鍵の更新を鍵管理部１２０に指示する場合、それらのうちのいずれを更新するのかを指示する。より詳しくは、初期化処理部１１９は、RevertSP(Enterprise)が発行された場合であって、状態管理部１１６によって管理される状態がEnterprise Activeである場合、Enterpriseモード下において使用される暗号鍵の更新を鍵管理部１２０に指示し、RevertSPが発行された場合であって、状態管理部１１６によって管理される状態がOpal Activeである場合、Opalモード下において使用される暗号鍵の更新を鍵管理部１２０に指示する。
【００５８】
図１２に、暗号鍵の保持状態の遷移の一例を示す。
図１２中、Act-Oは、Activateを表し、Act-Eは、Activate(Enterprise)を表している。また、Rvtは、Revert(Enterprise)またはRevertを表し、RvSPは、RevertSP(Enterprise)またはRevertSPを表している。さらに、No keyは、Opalモード下において使用される暗号鍵およびEnterpriseモード下において使用される暗号鍵のいずれもが保持されていない状態を表し、Opal keyは、Opalモード下において使用される暗号鍵のみが保持されている状態を表し、Ent keyは、Enterpriseモード下において使用される暗号鍵のみが保持されている状態を表し、Both keysは、Opalモード下において使用される暗号鍵およびEnterpriseモード下において使用される暗号鍵の両方が保持されている状態を表している。
【００５９】
図１２に示すように、Enterpriseモード下において使用される暗号鍵が保持されていない状態で、Activate(Enterprise)が発行されると、Enterpriseモード下において使用される暗号鍵が生成されて保持される。同様に、Opalモード下において使用される暗号鍵が保持されていない状態で、Activateが発行されると、Opalモード下において使用される暗号鍵が生成されて保持される。Enterpriseモード下において使用される暗号鍵が保持されている状態で、Activate(Enterprise)が発行された場合は、当該保持されている暗号鍵が継続して保持（使用）される。同様に、Opalモード下において使用される暗号鍵が保持されている状態で、Activateが発行された場合は、当該保持されている暗号鍵が継続して保持（使用）生成されて保持される。
【００６０】
また、図１２に示すように、RevertSP(Enterprise)またはRevertSPが発行された場合、暗号鍵の更新は行われずに、その時点で保持されている暗号鍵は継続して保持されることとなり、Revert(Enterprise)が発行された場合、Enterpriseモード下において使用される暗号鍵のみの更新が行われて、Opalモード下において使用される暗号鍵が保持されているならば、その暗号鍵は継続して保持されることとなり、Revertが発行された場合、Opalモード下において使用される暗号鍵のみの更新が行われて、Enterpriseモード下において使用される暗号鍵が保持されているならば、その暗号鍵は継続して保持されることとなる。
【００６１】
このオプションの提供によって、本実施形態のデータ蓄積装置１においては、初期化後（Enterprise OFSまたはOpal OFSの状態への移行後）におけるデータアクセスを許可するという運用も可能となる。
たとえば、あるデータ蓄積装置１がOpalモード→Enterpriseモード→Opalモードと使用された場合を想定する。また、このデータ蓄積装置１は、不揮発性メモリ１３が複数のパーティションに分けられ、Opalモードの場合とEnterpriseモードの場合とで異なるパーティションが用いられるものと想定する。このような場合、たとえば、Opal用の暗号鍵を更新しないようにモードの切り替えを行えば、１回目のOpalモード時に不揮発性メモリ１３に蓄積されたデータを（Enterpriseモードを経由した後の）２回目のOpalモード時に利用することが可能となる。
（第３実施形態）
次に、第３実施形態について説明する。第１実施形態または第２実施形態と同一の構成要素については、同一の符号を使用し、重複する説明は省略する。
【００６２】
図１３は、本実施形態に係るデータ蓄積装置１が具備するコントローラ１１の機能ブロックの一例を示す図である。
図１３に示すように、本実施形態のデータ蓄積装置１は、コントローラ１１の初期化処理部１１９が、Shadow MBR更新選択部１１９Ｂを具備する。
【００６３】
前述したように、Opalモードでは、Shadow MBRを構築する機能が必須である。このShadow MBRは、Opal OFSの状態への復帰時に消去される。この点に関して、Shadow MBR更新選択部１１９Ｂは、Opal OFSの状態への復帰時にShadow MBRを消去しないオプションを提供する。ここで、Shadow MBRの消去とは、Shadow MBRを初期化（ゼロ化）すること、より詳しくは、プリブート認証を実行するプログラムを稼働させるべくShadow MBRに記憶されている情報を消去することである。
【００６４】
たとえば、図１４に示すように、Opal Activeの状態からOpal OFSの状態に移行させるコマンドであるRevertにパラメータを付すことができるようにし、このパラメータによって、Shadow MBRを消去するか否かを指定できるようにしてもよい（ｂ１４´）。または、Revertとは別のコマンドを新設し、それらを使い分けることによって、Shadow MBRを消去するか否かを指定できるようにしてもよい.
Shadow MBRを消去しない場合の初期化処理部１１９の手順として、たとえば、Shadow MBRを退避してから、初期設定保存部１１５に保存されるOpal OFSイメージ１５３で初期化した後、待避しておいたShadow MBRを戻すことなどが考えられる。
【００６５】
ここで、図１５を参照して、Shadow MBRの概要について説明する。
Shadow MBR５２は、プリブート認証などと称される認証を行うためにデータ蓄積装置１内に構築される。Shadow MBR５２が構築されたデータ蓄積装置１に対して、ホスト装置２がMBR（Real MBR）５１へのアクセスを行うと、まず、そのアクセス先がShadow MBR５２に変換される（ｆ１）。Shadow MBR５２は、認証プログラム５２Ａを有し、認証プログラム５２Ａは、Real MBR５１へアクセスしようとするホスト装置２に対して、たとえばＰＩＮの転送を要求する。ホスト装置２から転送されるＰＩＮが、データ蓄積装置１内において管理されるＰＩＮと一致する場合、認証プログラム５２Ａは、認証成立（認証成功）と判定し、Real MBR５１の起動プロセスを開始させる（ｆ２）。これにより、ホスト装置２とデータ蓄積装置１との接続が確立する（ｆ３）。
【００６６】
Opal OFSの状態への復帰時にShadow MBRを消去しないオプションの提供によって、本実施形態のデータ蓄積装置１においては、Opal OFSの状態への復帰前に構築されていたShadow MBRを継続して利用すること、つまり、Shadow MBRを再構築（再設定）する手間を省くことが可能となる。
【００６７】
（第４実施形態）
次に、第４実施形態について説明する。第１実施形態乃至第３実施形態と同一の構成要素については、同一の符号を使用し、重複する説明は省略する。
図１６は、本実施形態に係るデータ蓄積装置１が具備するコントローラ１１の機能ブロックの一例を示す図である。
【００６８】
図１６に示すように、本実施形態のデータ蓄積装置１は、コントローラ１１の初期化処理部１１９が、ダイレクト遷移処理部１１９Ｃを具備する。
第１実施形態乃至第３実施形態においては、Enterpriseモード−Opalモード間の切り替え時には、Neutral OFSの状態を介在させていた。より詳しくは、EnterpriseモードからOpalモードへの切り替えは、Enterprise Activeの状態においてNeutral Revertを発行してNeutral OFSの状態に移行し、当該Neutral OFSの状態においてOpal modeを発行してOpal OFSの状態に移行することで実施する。また、OpalモードからEnterpriseモードへの切り替えは、Opal Activeの状態においてNeutral Revertを発行してNeutral OFSの状態に移行し、当該Neutral OFSの状態においてEnterprise modeを発行してEnterprise OFSの状態に移行することで実施する。
【００６９】
ダイレクト遷移処理部１１９Ｃは、これらとは別の手順で、図１７に示すように、Opal Activeの状態からNeutral OFSの状態を経ずにEnterprise OFSの状態に移行すること（ｂ４）と、Enterprise Activeの状態からNeutral OFSの状態を経ずにOpal OFSの状態に移行すること（ｂ５）を可能とするために設けられる処理部である。そのために、本実施形態のデータ蓄積装置１においては、図１７および図１８に示すように、Opal Activeの状態から直接的にEnterprise OFSの状態に移行するためのコマンドとして、Enterprise Revert（第８のコマンド［ｂ４］）を新設するとともに、Enterprise Activeの状態から直接的にOpal OFSの状態に移行するためのコマンドとして、Opal Revert（第９のコマンド［ｂ５］）を新設する。Enterprise RevertおよびOpal Revertを発行する権限は、専用ＰＩＮに与えられる。図５と同様、図１８中、（Ａ）は、EnterpriseモードまたはOpalモードのいずれにも設定されていないNeutral OFSの状態において発行されるコマンドを示し、（Ｂ）は、Enterpriseモード下において発行されるコマンドを示し、（Ｃ）は、Opalモード下において発行されるコマンドを示している。
【００７０】
ダイレクト遷移処理部１１９Ｃは、Enterprise Revertが発行された場合、初期設定保存部１１５に保持される初期イメージを用いて、データ蓄積装置１を、Opal Activeの状態からEnterprise OFSの状態に移行させる処理（第８の処理）を実行する。また、ダイレクト遷移処理部１１９Ｃは、Opal Revertが発行された場合、初期設定保存部１１５に保持される初期イメージを用いて、データ蓄積装置１を、Enterprise Activeの状態からOpal OFSの状態に移行させる処理（第９の処理）を実行する。
【００７１】
また、Enterprise RevertおよびOpal Revertについては、パラメータを付すことができるようにして、初期イメージとして、genericまたはcustomizedのいずれかを指定することができるようにしてもよい。
たとえば、Enterprise RevertまたはOpal Revertによって、Enterprise OFSまたはOpal OFSの状態に移行する場合、初期化処理部１１９は、鍵管理部１２０に対する暗号鍵の更新の指示を行わないようにしてもよい。つまり、EnterpriseモードまたはOpalモードの一方において蓄積されたデータを、EnterpriseモードまたはOpalモードの他方で初期化された後に使用できるようにしてもよい。
【００７２】
このように、本実施形態のデータ蓄積装置１においては、Enterpriseモード−Opalモード間の直接的な遷移が可能となる。
以上のように、前述した各実施形態に係るデータ蓄積装置１によれば、サーバ用またはＰＣ用のいずれとしても利用することができる暗号化機能搭載のデータ蓄積装置を提供することが実現される。
【００７３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７４】
１…データ蓄積装置、１１…コントローラ、１２…揮発性メモリ、１３…不揮発性メモリ、１１１…インタフェース処理部、１１２…コマンド処理部、１１３…認可処理部、１１４…設定管理部、１１４Ａ…ＰＩＮ管理部、１１４Ｂ…認証処理部、１１５…初期設定保存部、１１６…状態管理部、１１７…モード設定部、１１８…処理反映部、１１９…初期化処理部、１１９Ａ…鍵更新選択部、１１９Ｂ…Shadow MBR更新選択部、１１９Ｃ…ダイレクト遷移処理部、１２０…鍵管理部、１２１…暗号処理部、１２２…read/write処理部。
【図１】
2019057811.tif 000003
【図２】
2019057811.tif 000004
【図３】
2019057811.tif 000005
【図４】
2019057811.tif 000006
【図５】
2019057811.tif 000007
【図６】
2019057811.tif 000008
【図７】
2019057811.tif 000009
【図８】
2019057811.tif 000010
【図９】
2019057811.tif 000011
【図１０】
2019057811.tif 000012
【図１１】
2019057811.tif 000013
【図１２】
2019057811.tif 000014
【図１３】
2019057811.tif 000015
【図１４】
2019057811.tif 000016
【図１５】
2019057811.tif 000017
【図１６】
2019057811.tif 000018
【図１７】
2019057811.tif 000019
【図１８】
2019057811.tif 000020