(57)【要約】【課題】安全なデータアクセスのためのデータストレージデバイス及び方法を提供すること。【解決手段】実施形態によれば、認証されていないアクセスに応じて、ハイブリッドドライブをロックする方法において、前記ハイブリッドドライブの不揮発性ストレージデバイスから第１のパスワードデータを受け取ることと、前記ハイブリッドドライブの磁気ストレージデバイスから第２のパスワードデータを受け取ることと、前記第１のパスワードデータを、前記第２のパスワードデータに比較することと、前記第１のパスワードデータが、前記第２のパスワードデータにマッチしないことに応じて、前記ハイブリッドドライブをロックする。【選択図】図４
2014174980.tif 000002
【特許請求の範囲】
【請求項１】
認証されていないアクセスに応じて、ハイブリッドドライブをロックする方法において、
前記ハイブリッドドライブの不揮発性ストレージデバイスから第１のパスワードデータを受け取ることと、
前記ハイブリッドドライブの磁気ストレージデバイスから第２のパスワードデータを受け取ることと、
前記第１のパスワードデータを、前記第２のパスワードデータに比較することと、
前記第１のパスワードデータが、前記第２のパスワードデータにマッチしないことに応じて、前記ハイブリッドドライブをロックすることと
を具備する方法。
【請求項２】
前記第１のパスワードデータと、前記第２のパスワードデータとのうちの少なくとも１つは、パスワードの暗号化されたバージョンを具備する、請求項１記載の方法。
【請求項３】
前記パスワードは、ホストデバイスから前記ハイブリッドドライブによって受け取られる、請求項２記載の方法。
【請求項４】
前記磁気ストレージデバイスから前記第２のパスワードデータを読み出すことは、前記磁気ストレージデバイスに対するアクセスをもたらすコマンドの受け取りに応じて実行される、請求項１記載の方法。
【請求項５】
前記第２のパスワードデータは、前記磁気ストレージデバイスの磁気ストレージディスクのシステムエリアに格納される、請求項１記載の方法。
【請求項６】
前記ハイブリッドドライブの別の不揮発性ストレージデバイスから、前記ハイブリッドドライブに関係する、第１のドライブ固有の識別データを受け取ることと、
前記磁気ストレージデバイスから、前記ハイブリッドドライブに関係する、第２のドライブ固有の識別データを受け取ることと、
前記第１のドライブ固有の識別データを、前記第２のドライブ固有の識別データに比較することと、
前記第１のドライブ固有の識別データが、前記第２のドライブ固有の識別データにマッチしないことに応じて、前記ハイブリッドドライブをロックすることと
をさらに具備する、請求項１記載の方法。
【請求項７】
前記第１のドライブ固有の識別データと、前記第２のドライブ固有の識別データとのうちの少なくとも１つは、前記ハイブリッドドライブに関係するドライブ固有の識別データの暗号化されたバージョンを具備する、請求項６記載の方法。
【請求項８】
磁気ストレージデバイスと、
不揮発性ストレージデバイスと、
制御装置と
を具備するデータストレージデバイスにおいて、
前記制御装置は、
前記不揮発性ストレージデバイスから第１のパスワードデータを受け取り、
前記磁気ストレージデバイスから第２のパスワードデータを受け取り、
前記第１のパスワードデータを、前記第２のパスワードデータに比較し、
前記第１のパスワードデータが、前記第２のパスワードデータにマッチしないことに応じて、前記データストレージデバイスをロックする、
データストレージデバイス。
【請求項９】
前記第１のパスワードデータと、前記第２のパスワードデータとのうちの少なくとも１つは、パスワードの暗号化されたバージョンを具備する、請求項８記載のデータストレージデバイス。
【請求項１０】
前記パスワードは、ホストデバイスから前記データストレージデバイスによって受け取られる、請求項９記載のデータストレージデバイス。
【請求項１１】
前記磁気ストレージデバイスから前記第２のパスワードデータを読み出すことは、前記磁気ストレージデバイスに対するアクセスをもたらすコマンドの受け取りに応じて実行される、請求項８記載のデータストレージデバイス。
【請求項１２】
前記第２のパスワードデータは、前記磁気ストレージデバイスの磁気ストレージディスクのシステムエリアに格納される、請求項８記載のデータストレージデバイス。
【請求項１３】
前記制御装置は、さらに、
前記データストレージデバイスの別の不揮発性ストレージデバイスから、前記データストレージデバイスに関係する、第１のドライブ固有の識別データを受け取り、
前記磁気ストレージデバイスから、前記データストレージデバイスに関係する、第２のドライブ固有の識別データを受け取り、
前記第１のドライブ固有の識別データを、前記第２のドライブ固有の識別データに比較し、
前記第１のドライブ固有の識別データが、前記第２のドライブ固有の識別データにマッチしないことに応じて、前記データストレージデバイスをロックする、
請求項８記載のデータストレージデバイス。
【請求項１４】
前記第１のドライブ固有の識別データと、前記第２のドライブ固有の識別データとのうちの少なくとも１つは、ドライブ固有の識別データの暗号化されたバージョンを具備する、請求項１３記載のデータストレージデバイス。
【請求項１５】
データストレージデバイスに関係するシステムデータを格納するように構成されている磁気ストレージデバイスと、
ユーザデータを格納するように構成されている第１の不揮発性ストレージデバイスと、
前記データストレージデバイスに関係するシステムデータを格納するように構成されている第２の不揮発性ストレージデバイスと、
制御装置と
を具備するデータストレージデバイスにおいて、
前記制御装置は、
前記第２の不揮発性ストレージデバイスから、前記システムデータの一部である、第１のドライブ固有の識別データを受け取り、
前記磁気ストレージデバイスから、前記システムデータの一部である、第２のドライブ固有の識別データを受け取り、
前記第１のドライブ固有の識別データを、前記第２のドライブ固有の識別データに比較し、
前記第１のドライブ固有の識別データが、前記第２のドライブ固有の識別データにマッチしないことに応じて、前記データストレージデバイスをロックする、
データストレージデバイス。
【請求項１６】
前記第１のドライブ固有の識別データと、前記第２のドライブ固有の識別データとのうちの少なくとも１つは、ドライブ固有の識別データの暗号化されたバージョンを具備する、請求項１５記載のデータストレージデバイス。
【請求項１７】
前記磁気ストレージデバイスから前記第２のドライブ固有の識別データを読み出すことは、前記磁気ストレージデバイスに対するアクセスをもたらすコマンドの受け取りに応じて実行される、請求項１５記載のデータストレージデバイス。
【請求項１８】
前記第２のドライブ固有の識別データは、前記磁気ストレージデバイスの磁気ストレージディスクのシステムエリアに格納される、請求項１５記載のデータストレージデバイス。
【請求項１９】
前記制御装置は、さらに、
前記第１の不揮発性ストレージデバイスから、第１のパスワードデータを受け取り、
前記磁気ストレージデバイスから、第２のパスワードデータを受け取り、
前記第１のパスワードデータを、前記第２のパスワードデータに比較し、
前記第１のパスワードデータが、前記第２のパスワードデータにマッチしないことに応じて、前記データストレージデバイスをロックする、
請求項１５記載のデータストレージデバイス。
【請求項２０】
前記第１のパスワードデータと、前記第２のパスワードデータとのうちの少なくとも１つは、パスワードの暗号化されたバージョンを具備する、請求項１９記載のデータストレージデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態はデータストレージデバイスおよび方法に関する。
【背景技術】
【０００２】
ハイブリッドハードディスクドライブ（ＨＤＤ）は、フラッシュメモリのような不揮発性ソリッドステートメモリに結合された１つ以上の回転する磁気ディスクを具備する。一般的に、ハイブリッドＨＤＤは、従来のＨＤＤの容量と、ソリッドステートドライブと同じくらいすばやくデータにアクセスする能力との両方を有することができ、この理由のために、ハイブリッドＨＤＤは、ラップトップコンピュータにおいて、一般に  使用されることが期待されている。
【０００３】
典型的に、パスワード保護を用いて、ディスクドライブおよび他のデータストレージデバイスにおいて、ディスクドライブまたはデータストレージデバイスをロック解除して、認証されたユーザによるディスクドライブまたはデータストレージデバイスに対するアクセスを可能にする。より良い性能のために、ハイブリッドＨＤＤは、ドライブの不揮発性ソリッドステートメモリ部分に、パスワードのハッシュされたバージョンおよび／またはドライブのロック／ロック解除ステータスのような、適切なドライブセキュリティデータのコピーを格納できる。ドライブセキュリティデータのコピーは、不揮発性ソリッドステートメモリにおいて利用可能であるので、パスワード保護されたログインのような、ドライブのスタートアップにおいて発生する初期セキュリティ対策は、ドライブの回転する磁気ディスクが回転数を上げる前にさえも実行することができる。結果として、ハイブリッドドライブの認証されたユーザは、ドライブセキュリティデータを、回転する磁気ディスクにだけ格納するドライブに対してログイン可能になるより数秒速く、このようなドライブにログインできる。
【０００４】
しかしながら、ドライブをロック解除するためのドライブセキュリティデータのコピーが、ハイブリッドドライブ中の２つのロケーション、すなわち、磁気ディスクに、および、不揮発性ソリッドステートメモリ中に格納されているとき、ドライブに対する認証されていないアクセスの可能性は増加する。例えば、ドライブの磁気ディスク上に格納されているデータをターゲットにする認証されていないユーザは、デフォルトのロック解除されている状態へと電源投入するように、同一のドライブを設定するかもしれず、このケースにおいて、不揮発性ソリッドステートメモリ中に格納されたドライブセキュリティデータは、電源投入の際にドライブがロック解除されており、パスワード保護されていないことを示す。認証されていないユーザは、ターゲットドライブの不揮発性ソリッドステートメモリを、同一だが、ロック解除されているドライブの不揮発性ソリッドステートメモリにより置き換えることができる。電源投入の際にドライブがロック解除されたままであることを示すドライブセキュリティデータを格納している不揮発性ソリッドステートメモリを、ここでターゲットドライブが電源投入の際に含むので、ターゲットドライブはロック解除される。したがって、認証されていないユーザは、ターゲットハイブリッドドライブの磁気ディスクに格納されたデータに容易にアクセスできる。それで、スタートアップにおいて、ハイブリッドドライブの改善された性能を提供しながら、認証されていないアクセスからハイブリッドドライブにおけるデータのセキュリティを維持することが問題となっている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許出願公開第２００９／０２７６８２９号明細書
【特許文献２】米国特許出願公開第２０１０／００３０９８２号明細書
【特許文献３】米国特許出願公開第２０１１／０１１３２５６号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は安全なデータアクセスのためのデータストレージデバイス及び方法を提供することである。
【課題を解決するための手段】
【０００７】
１つ以上の実施形態は、磁気ストレージデバイスに統合された、不揮発性ソリッドステートストレージデバイスを含むハイブリッドディスクドライブにおける安全なデータアクセスのためのシステムと方法を提供する。ドライブアクセスパスワードの暗号化されたバージョンのような、ドライブセキュリティデータの同一のコピーが、不揮発性ソリッドステートストレージデバイスと、磁気ストレージデバイスとに格納される。磁気ストレージデバイスに対するアクセスをもたらすホストデバイスからのコマンドの受け取りに応じて、不揮発性ソリッドステートストレージデバイスに格納されているドライブセキュリティデータのコピーが、磁気ストレージデバイスに格納されているドライブセキュリティデータのコピーにマッチする場合、アクセスが認可される。このようにして、不揮発性ソリッドステートストレージデバイスまたは磁気ストレージデバイスのどちらも、ドライブに対する認証されていないアクセスを可能にするために置き換えられていないことの確認が得られる。いくつかの実施形態では、ドライブに関係する暗号化されたドライブ固有の識別番号が、不揮発性ソリッドステートストレージデバイスと磁気ストレージデバイスとの両方に格納される。このような実施形態では、不揮発性ソリッドステートストレージデバイスに格納された暗号化されたドライブ固有の識別番号のコピーが、磁気ストレージデバイスに格納された暗号化されたドライブ固有の識別番号のコピーにマッチする場合、アクセスが認可される。
【０００８】
１つの実施形態にしたがうと、認証されていないアクセスに応じて、ハイブリッドドライブをロックする方法は、ハイブリッドドライブの不揮発性ストレージデバイスから第１のパスワードデータを受け取ることと、ハイブリッドドライブの磁気ストレージデバイスから第２のパスワードデータを受け取ることと、第１のパスワードデータを、第２のパスワードデータに比較することと、第１のパスワードデータが、第２のパスワードデータにマッチしないことに応じて、ハイブリッドドライブをロックすることとを具備する。
【０００９】
別の実施形態にしたがうと、データストレージデバイスは、磁気ストレージデバイスと、不揮発性ソリッドステートデバイスと、制御装置とを具備する。制御装置は、不揮発性ソリッドステートデバイスから第１のパスワードデータを受け取り、磁気ストレージデバイスから第２のパスワードデータを受け取り、第１のパスワードデータを、前記第２のパスワードデータに比較し、第１のパスワードデータが、前記第２のパスワードデータにマッチしないことに応じて、前記データストレージデバイスをロックするように構成されている。
【００１０】
別の実施形態にしたがうと、データストレージデバイスは、磁気ストレージデバイスと、ユーザデータを格納するように構成されている第１の不揮発性ソリッドステートストレージデバイスと、データストレージデバイスに関係するシステムデータを格納するように構成されている第２の不揮発性ソリッドステートストレージデバイスと、制御装置とを具備する。制御装置は、第２の不揮発性ソリッドステートストレージデバイスから、第１のドライブ固有の識別データを受け取り、磁気ストレージデバイスから、第２のドライブ固有の識別データを受け取り、第１のドライブ固有の識別データを、第２のドライブ固有の識別データに比較し、第１のドライブ固有の識別データが、第２のドライブ固有の識別データにマッチしないことに応じて、データストレージデバイスをロックするように構成されている。
【００１１】
上に記載した実施形態の特徴の方式が詳細に理解されるように、上に短く概要を示した実施形態のより詳細な記述を、添付の図面に対する参照によって行ってもよい。しかしながら、添付の図面は、典型的な実施形態のみを図示し、それゆえ、本発明の範囲を制限するとして考慮されるべきでなく、他の同等に有効な実施形態があってもよいことに留意すべきである。
【図面の簡単な説明】
【００１２】
【図１】図１は、１つの実施形態にしたがった、例示的なハイブリッドドライブの概念図である。
【図２】図２は、１つの実施形態にしたがって構成されるとして示した、電子回路のエレメントを有するハイブリッドドライブの動作図を図示する。
【図３】図３は、図１のハイブリッドドライブのブロック図であり、いくつかの実施形態にしたがったセキュリティおよびシステム情報のストレージロケーションを示す。
【図４】図４は、１つ以上の実施形態にしたがったハイブリッドディスクドライブ中の安全なデータアクセスのための方法のステップのフローチャートを示す。
【図５】図５は、１つ以上の実施形態にしたがったハイブリッドディスクドライブ中の安全なデータアクセスのための方法のステップのフローチャートを示す。
【発明を実施するための形態】
【００１３】
明瞭さのために、図面の間で共通する同一のエレメントを指すために、適用可能なところでは、同一の参照番号を使用した。１つの実施形態の特徴は、さらに記述することなく、他の実施形態において組み込むことができることが企図されている。
【００１４】
図１は、１つの実施形態にしたがった、例示的なハイブリッドドライブ１００の概念図である。明瞭さのために、トップカバーなしでハイブリッドドライブ１００を図示した。ハイブリッドドライブ１００は、スピンドルモータ１１４によって回転され、複数の同心データストレージトラックを含む、少なくとも１つのストレージディスク１１０を含む。スピンドルモータ１１４は、ベースプレート１１６上に搭載される。アクチュエータアームアセンブリ１２０もまた、ベースプレート１１６上に搭載され、データストレージトラックからデータを読み出し、データストレージトラックへとデータを書き込む、リード／ライトヘッド１２７を有する屈曲アーム１２２上に搭載されたスライダ１２１を有する。屈曲アーム１２２は、ベアリングアセンブリ１２６を中心に回転するアクチュエータアーム１２４に取り付けられている。ボイスコイルモータ１２８は、スライダ１２１を、ストレージディスク１１０に関して動かし、これにより、リード／ライトヘッド１２７を、ストレージディスク１１０の表面１１２上に配置される所望の同心データストレージトラック上で位置決めする。スピンドルモータ１１４、リード／ライトヘッド１２７、および、ボイスコイルモータ１２８は、プリント回路ボード１３２上に搭載されている電子回路１３０に結合される。
【００１５】
電子回路１３０は、リード／ライトチャネル１３７、マイクロプロセッサベースの制御装置１３３、（ダイナミックＲＡＭであってもよく、データバッファとして使用される）ランダムアクセスメモリ（ＲＡＭ）１３４、および／または、フラッシュメモリデバイス１３５とフラッシュマネージャデバイス１３６を備える。いくつかの実施形態では、リード／ライトチャネル１３７、および、マイクロプロセッサベースの制御装置１３３は、システムオンチップ１３１のような、単一のチップ中に含まれている。いくつかの実施形態では、ハイブリッドドライブ１００は、マイクロプロセッサベースの制御装置１３３からのコマンドを受け入れて、スピンドルモータ１１４およびボイスコイルモータ１２８の両方を駆動する、モータドライバチップ１２５をさらに備えてもよい。さらに、いくつかの実施形態では、ハイブリッドドライブ１００は、プリント回路ボード１３２上に搭載されており、ＮＡＮＤフラッシュまたは他の不揮発性データストレージデバイスで構成されている、シリアルフラッシュチップ１２３を具備する。
【００１６】
明瞭さのために、単一のストレージディスク１１０および単一のアクチュエータアームアセンブリ１２０とともに、ハイブリッドドライブ１００を図示する。ハイブリッドドライブ１００はまた、複数のストレージディスクおよび複数のアクチュエータアームアセンブリを備えていてもよい。さらに、ストレージディスク１１０の各面は、屈曲アームに結合された関係するリード／ライトヘッドを有していてもよい。
【００１７】
データが、ストレージディスク１１０へ、または、ストレージディスク１１０から転送されるとき、アクチュエータアームアセンブリ１２０は、ストレージディスク１１０の内径（ＩＤ）と外径（ＯＤ）との間で弧を描くように動く。アクチュエータアームアセンブリ１２０は、ボイスコイルモータ１２８のボイスコイルを通して１つの方向において電流が流れるとき、ある角方向において加速し、電流が反転されるとき、反対の方向において加速して、これにより、ストレージディスク１１０に関する、アクチュエータアームアセンブリ１２０および付属のリード／ライトヘッド１２７の位置の制御を可能にしている。ボイスコイルモータ１２８は当該技術分野において知られているサーボシステムに結合されており、サーボシステムは、リード／ライトヘッド１２７によってストレージディスク１１０上のサーボウェッジから読み出された位置決めデータを使用して、特定のデータストレージトラック上のリード／ライトヘッド１２７の位置を決定する。サーボシステムは、ボイスコイルモータ１２８のボイスコイルを通して、駆動するための適切な電流を決定し、現在のドライバと関係する回路を使用して、前記電流を駆動する。
【００１８】
ハイブリッドドライブ１００は、ハイブリッドドライブとして構成され、この中でストレージディスク１１０および／またはフラッシュメモリデバイス１３５を使用して、不揮発性データの格納を実行することができる。ハイブリッドドライブにおいて、フラッシュメモリデバイス１３５のような不揮発性メモリは、旋回しているストレージディスク１１０を補って、より急速な起動、休止状態になること、レジューム、および、他のデータ読み出し書き込み動作とともに、より低い電力消費を提供する。このようなハイブリッドドライブ構成は、モバイルコンピュータ、または、他のモバイルコンピューティングデバイスのようなバッテリ動作されるコンピュータシステムに対して特に有利である。好ましい実施形態では、フラッシュメモリデバイス１３５は、電気的に消去することができ、再プログラムでき、不揮発性ストレージ媒体としてハイブリッドドライブ１００中のストレージディスク１１０を補うようにサイズ変更される、ＮＡＮＤフラッシュチップのような、不揮発性ソリッドステートストレージ媒体である。例えば、いくつかの実施形態では、フラッシュメモリデバイス１３５は、例えば、ギガバイト（ＧＢ）対メガバイト（ＭＢ）のような、ＲＡＭ１３４より大きなオーダーである、データストレージ容量を有する。
【００１９】
図２は、１つの実施形態にしたがって構成されるとして示された電子回路１３０のエレメントを有するハイブリッドドライブ１００の動作の図を図示する。示したように、ハイブリッドドライブ１００は、ＲＡＭ１３４、フラッシュメモリデバイス１３５、フラッシュマネージャデバイス１３６、システムオンチップ１３１、および、高速データパス１３８を備える。ハイブリッドドライブ１００は、シリアルアドバンストテクノロジアタッチメント（ＳＡＴＡ）バスのようなホストインターフェース２０を介して、ホストコンピュータのようなホスト１０に接続されている。
【００２０】
図２に図示した実施形態では、フラッシュマネージャデバイス１３６は、フラッシュメモリデバイス１３５の高速データパス１３８とのインターフェースを制御し、ＮＡＮＤインターフェースバス１３９を介して、フラッシュメモリデバイス１３５に接続されている。システムオンチップ１３１は、マイクロプロセッサベースの制御装置１３３と、ハイブリッドドライブ１００の動作を制御するための（リード／ライトチャネル１３７を含む）他のハードウェアとを備え、高速データパス１３８を介して、ＲＡＭ１３４とフラッシュマネージャデバイス１３６とに接続されている。マイクロプロセッサベースの制御装置１３３は、ハイブリッドドライブ１００内の任意の制御回路、ＡＲＭマイクロプロセッサ、ハイブリッドドライブ制御装置のようなマイクロ制御装置を含んでもよい制御ユニットである。高速データパス１３８は、ダブルデータレート（ＤＤＲ）バス、ＤＤＲ２バス、ＤＤＲ３バス、または、類似物のような、当該技術分野において知られている高速バスである。
【００２１】
図３は、図１のハイブリッドドライブのブロック図であり、いくつかの実施形態にしたがった、セキュリティおよびシステム情報のストレージロケーションを示している。ユーザデータ３１０および３１５に加えて、ハイブリッドドライブ１００中に格納された他のデータは、シリアルフラッシュチップ１２３中に格納されるフラッシュシステム情報３２０と、ストレージディスク１１０上に格納されるシステム情報３３０と、ＰＣＢ１３２とストレージディスク１１０上のどこかにそれぞれ格納される、セキュリティ情報３４０およびドライブ特有キー３５０とを含む。シリアルフラッシュチップ１２３と、フラッシュメモリデバイス１３５と、ストレージディスク１１０とはすべて、ユーザデータ３１０および３１５、フラッシュシステム情報３２０、システム情報３３０、ならびに、セキュリティ情報３４０およびドライブ特有キー３５０の永続的な格納のための不揮発性ストレージを具備することに留意すべきである。
【００２２】
ユーザデータ３１０は、ホスト１０からハイブリッドドライブ１００によって受け取られた書き込みコマンドに応じて、ストレージディスク１１０に書き込まれたデータを含む。ユーザデータ３１５はまた、ホスト１０からハイブリッドドライブ１００によって受け取られた書き込みコマンドに応じて、ハイブリッドドライブ１００に格納されたデータを含む。いくつかの実施形態では、フラッシュメモリデバイス１３５は、ストレージディスク１１０に対する読み出しキャッシュとして構成されてもよく、このケースにおいて、ユーザデータ３１５は、ストレージディスク１１０上に既に格納されているデータを一般的に含む。このような実施形態において、ストレージディスク１１０からデータが読み出されるときはいつでも、将来におけるホスト１０の同一データの要求を見越して、前記データのコピーが、読み出しキャッシュとしてフラッシュメモリデバイス１３５中に引き続いて格納され、このデータは、ストレージディスク１１０からよりも、フラッシュメモリデバイス１３５からよりすばやく取り出される。他の実施形態では、フラッシュメモリデバイス１３５は、最初にストレージディスク１１０に書き込まれることない、直接の書き込みコマンドに関係するデータをホスト１０から受け取るように構成されていてもよく、このケースにおいて、ユーザデータ３１５のいくつかまたはすべては、ユーザデータ３１０の一部として、ストレージディスク１１０上にまだ格納されていないデータを含む。さらに他の実施形態では、フラッシュメモリデバイス１３５は、ハイブリッドドライブ１００の総データストレージ容量を拡張するための、ストレージディスク１１０の補助ストレージとして構成されてもよい。いくつかの実施形態では、ユーザデータ３１５のいくつかまたはすべては、ストレージディスク１１０中のユーザデータ３１０中に含まれなくてもよい。
【００２３】
フラッシュシステム情報３２０は、シリアルフラッシュチップ１２３中に格納され、ファームウェアコードのようなハイブリッドドライブ１００に対する演算情報、ストレージディスク１１０にデータを読出しおよび書き込みするための情報、および、他のシステムパラメータを含む。システム情報３３０は、ストレージディスク１１０のシステムエリア中に格納され、ディスク関連のシステム情報３３１、ホスト関連のシステム情報３３２、および、ドライブ特有キー３５０を含む。ディスク関連のシステム情報３３１は、一般的に、ストレージディスク１１０に関連する他の演算データおよび欠陥リストを含み、ホスト関連システム情報３３２は、ホスト１０にとって有用な他の情報および演算ログを含む。ドライブ特有キー３５０を以下に説明する。
【００２４】
図３に示したように、セキュリティ情報３４０は、パスワードデータ３４１およびロック／ロック解除状態データ３４２を含み、フラッシュメモリデバイス１３５に、および、ストレージディスク１１０に格納されている。フラッシュメモリデバイス１３５に格納されるとき、パスワードデータ３４１およびロック／ロック解除状態データ３４２は、それぞれ、パスワードデータ３４１ａおよびロック／ロック解除状態データ３４２ａとして呼ばれる。同様に、ストレージディスク１１０上に格納されるとき、パスワードデータ３４１およびロック／ロック解除状態データ３４２は、それぞれ、パスワードデータ３４１ｂおよびロック／ロック解除状態データ３４２ｂとして呼ばれる。さらに、パスワードデータ３４１ａおよび３４１ｂは、ここで集合的に“パスワードデータ３４１”として集合的に呼ばれ、ロック／ロック解除状態データ３４２ａおよび３４２ｂは、ここで集合的に、“ロック／ロック解除状態データ３４２”として集合的に呼ばれる。
【００２５】
パスワードデータ３４１は、ハイブリッドドライブ１００に対するアクセスをロック解除する際に用いられるホストパスワードデータを含む。ホスト１０から一般的に受け取られる、ホストパスワードのプレーンテキストバージョンを格納するのを避けるために、パスワードデータ３４１は、一般的に、前記パスワードの暗号化されたバージョンのみを含む。例えば、パスワードデータ３４１は、ホストパスワードのハッシュされたバージョンを含んでもよく、これは、暗号ハッシュ関数を使用して、ホストパスワードをエンコードすることによって、ハイブリッドドライブ１００によって生成される。他の何らかの当該技術分野において実行可能な暗号化スキームを使用して、本発明の範囲を超えることなく、パスワードデータ３４１を生成させてもよい。ロック／ロック解除状態データ３４２は、ハイブリッドドライブ１００が、ロック解除されている状態へと電源投入されるように設定されているか否かを示す、１つ以上のビットまたは他のフラグを含む。いくつかの実施形態では、ロック／ロック解除状態データ３４２は、単一のビットから構成されていてもよいのに対して、他の実施形態では、ロック／ロック解除状態データ３４２は、フラッシュメモリデバイス１３５のロック／ロック解除状態に関係するビットと、ストレージディスク１１０のロック／ロック解除状態に関係する第２のビットを含んでいてもよい。後者のケースでは、第２のビットの値は、ストレージディスク１１０にアクセスすることをもたらすコマンドが、スタートアップの後に、ハイブリッドドライブ１００によって受け取られた最初のときに、一般的にチェックされる。さらに、ロック／ロック解除状態データ３４２は、本発明の範囲を超えることなく、ハイブリッドドライブ１００、フラッシュメモリデバイス１３５、および／または、ストレージディスク１１０のロック／ロック解除ステータスを示す、他の任意の適切なデータ構造を含んでもよい。
【００２６】
ドライブ特有キー３５０は、シリアルフラッシュチップ１２３中に、および、システム情報３３０の一部として、ストレージディスク１１０のシステムエリア中に格納される。シリアルフラッシュチップ１２３に格納されるとき、ドライブ特有キー３５０はドライブ特有キー３５０ａとして呼ばれ、ストレージディスク１１０に格納されるとき、ドライブ特有キー３５０はドライブ特有キー３５０ｂとして呼ばれる。さらに、ドライブ特有キー３５０ａおよび３５０ｂは、ここで集合的に、“ドライブ特有キー３５０”として呼ばれる。
【００２７】
ドライブ特有キー３５０は、製造時にハイブリッドドライブ１００に割り当てられたドライブ固有の識別データを含み、または、製造時にハイブリッドドライブ１００に割り当てられたドライブ固有の識別データに基づいている。いくつかの実施形態では、ドライブ特有キー３５０は、このようなドライブ固有の識別データの暗号化されたバージョンを含む。フラッシュメモリデバイス１３５およびストレージディスク１１０は、同一のハイブリッドドライブの各部分であるので、シリアルフラッシュチップ１２３に格納されるドライブ特有キー３５０ａの値は、ストレージディスク１１０のシステムエリアに格納されるドライブ特有キー３５０ｂの値と同一である。
【００２８】
フラッシュシステム情報３２０およびドライブ特有キー３５０ａのような、シリアルフラッシュチップ１２３に格納されるデータ、または、システム情報３３０のようなストレージディスク１１０のシステムエリアに格納されるデータは、ユーザデータ３１０および３１５のような、フラッシュメモリデバイス１３５や、ストレージディスク１１０に格納される他のデータに比して、少なくとも１つの追加のセキュリティ層によって、一般的に保護されていることに留意すべきである。これは、ベンダ固有のコマンドおよび／またはパスワードが、ハイブリッドドライブ１００のこれらの領域に対して読み出しおよび／または書き込みするために、一般的に必要とされるためである。結果として、ドライブ特有キー３５０は、ホストデバイスまたは認証されていないユーザにとって、一般的にアクセス不可能である。
【００２９】
図４は、ハードディスクドライブ中の安全なデータアクセスのための方法のステップのフローチャートを述べる。方法のステップを、図１−３中のハイブリッドドライブ１００に関連して説明したが、当業者は、方法４００が、他のタイプのデータストレージシステムとともに実行されてもよいことを理解するだろう。方法４００の制御アルゴリズムは、マイクロプロセッサベースの制御装置１３３、ホスト１０、または、他の任意の適切な制御回路もしくはシステム中に駐在していてもよく、ならびに／あるいは、マイクロプロセッサベースの制御装置１３３、ホスト１０、または、他の任意の適切な制御回路もしくはシステムによって実行されてもよい。明瞭さのために、方法４００は、ステップ４０１−４１５を実行するマイクロプロセッサベースの制御装置１３３に関して説明する。
【００３０】
示したように、方法４００はステップ４０１において開始し、ここで、ハイブリッドドライブ１００およびホスト１０が電源投入される。ステップ４０２において、マイクロプロセッサベースの制御装置１３３は、次に、フラッシュメモリデバイス１３５のロック／ロック解除状態データ３４２ａの値を受け取る。図３に示したように、ロック／ロック解除状態データ３４２ａは、フラッシュメモリデバイス１３５に格納される。
【００３１】
ステップ４０３において、マイクロプロセッサベースの制御装置１３３は、フラッシュメモリデバイス１３５のデフォルト状態が、ロックされているのか、または、ロック解除されているのかを決定する。ハイブリッドドライブ１００のスタートアップの際に、フラッシュメモリデバイス１３５が、ロック解除されている状態にデフォルト設定されていることをロック／ロック解除状態データ３４２ａが示す場合、方法４００はステップ４０８に進む。ハイブリッドドライブ１００のスタートアップの際に、フラッシュメモリデバイス１３５が、ロックされている状態にデフォルト設定されていることをロック／ロック解除状態データ３４２ａが示す場合、方法４００はステップ４０４に進む。
【００３２】
ステップ４０４において、マイクロプロセッサベースの制御装置１３３は、フラッシュメモリデバイス１３５に対するホスト１０からのロック解除コマンドを受け取る。一般的に、ロック解除コマンドは、パスワードデータ３４１ａ中に含まれ、フラッシュメモリデバイス１３５に格納されている、暗号化されたホスト提供のパスワードにマッチすることを意図されている暗号化されたホスト提供のパスワードを含む。ステップ４０５において、マイクロプロセッサベースの制御装置１３３は、パスワードデータ３４１ａを受け取る。ステップ４０６において、マイクロプロセッサベースの制御装置１３３は、パスワードデータ３４１ａ中の暗号化されたパスワードであって、ステップ４０５中で受け取られた暗号化されたパスワードが、ステップ４０４においてロック解除コマンドの一部として受け取られた暗号化されたホスト提供のパスワードにマッチするか否かを決定する。パスワードデータ３４１ａのパスワードの暗号化されたコピーが、ステップ４０４において受け取られたホスト提供のパスワードにマッチする場合、方法４００はステップ４０８に進む。パスワードデータ３４１ａ中のパスワードの暗号化されたコピーが、ステップ４０４において受け取られたホスト提供のパスワードにマッチしない場合、方法４００はステップ４０７に進む。
【００３３】
パスワードデータ３４１ａがステップ４０４において受け取られた暗号化されたパスワードにマッチしないステップ４０７において、マイクロプロセッサベースの制御装置１３３は、フラッシュメモリデバイス１３５のロックされている状態を維持し、それに対するアクセスを拒否する。パスワードデータ３４１ａがステップ４０４において受け取られた暗号化されたパスワードにマッチし、または、ステップ４０３において、フラッシュメモリデバイス１３５のデフォルト状態がロック解除されていることが決定されるとき、ステップ４０８において、マイクロプロセッサベースの制御装置１３３は、フラッシュメモリデバイス１３５をロック解除して、フラッシュメモリデバイス１３５に対するアクセスを可能にする。さらに、ＲＡＭ１３４中の適切なフラグ、レジスタ、ビット、または、他のインジケータが更新されて、フラッシュメモリデバイス１３５が現在ロック解除されていることを示す。結果として、ハイブリッドドライブ１００が電源遮断されるまで、ハイブリッドドライブ１００の動作の間じゅう、フラッシュメモリデバイス１３５をロック解除するための、何のさらなるパスワードチェックも発生しない。電源投入の際に、上述のＲＡＭ１３４中のフラグ、レジスタ、ビット、または、他のインジケータがデフォルト設定に戻り、ホスト提供のパスワードは、フラッシュメモリデバイス１３５に対するアクセスが許容される前に、再びパスワードデータ３４１ａに比較されなければならないことを示すことに留意すべきである。
【００３４】
ステップ４０９において、マイクロプロセッサベースの制御装置１３３は、読み出しまたは書き込みコマンドのような、ホスト１０からのコマンドを受け取る。ステップ４１０において、マイクロプロセッサベースの制御装置１３３は、ステップ４０９において受け取られたホストコマンドが、ストレージディスク１１０に対するアクセスをもたらすか否かを決定する。例えば、ステップ４０９において受け取られたホストコマンドが、フラッシュメモリデバイス１３５に含まれていない論理ブロックアドレス（ＬＢＡ）を参照している読み出しコマンドを含むとき、ホストコマンドは、ストレージディスク１１０がアクセスされることをもたらす。別の例において、ステップ４０９において受け取られたホストコマンドが、フラッシュキャッシュコマンドを含むとき、それに対する有効なデータがフラッシュメモリデバイス１３５中にだけ存在するＬＢＡが、ストレージディスク１１０に書き込まれる。ステップ４０９において受け取られたホストコマンドが、ストレージディスク１１０に対するアクセスをもたらさない場合、方法４００はステップ４１１に進む。ステップ４０９において受け取られたホストコマンドが、ストレージディスク１１０に対するアクセスをもたらす場合、方法４００はステップ４１２に進む。
【００３５】
ステップ４１１において、マイクロプロセッサベースの制御装置１３３は、ステップ４０９において受け取られたホストコマンドを満たすために、フラッシュメモリデバイス１３５にアクセスし、方法４００はステップ４０９に戻り、すなわち、別のホストコマンドが受け取られるまで、ハイブリッドドライブ１００はアイドル状態である。ステップ４０９において受け取られたホストコマンドを満たすために、ストレージディスク１１０に対するアクセスが必要とされるステップ４１２において、マイクロプロセッサベースの制御装置１３３は、ストレージディスク１１０からパスワードデータ３４１ｂを受け取る。
【００３６】
ステップ４１３において、マイクロプロセッサベースの制御装置１３３は、ステップ４１２においてストレージディスク１１０から受け取られたパスワードデータ３４１ｂが、フラッシュメモリデバイス１３５から受け取られたパスワードデータ３４１ａにマッチするか否かを決定する。パスワードデータ３４１ａは、以前にステップ４０５において受け取られていてもよく、または、フラッシュメモリデバイス１３５のデフォルト状態が、ロック解除されているものであり、ステップ４０５がスキップされるとき、パスワードデータ３４１ａは、ステップ４１３の一部としてフラッシュメモリデバイス１３５から受け取られてもよい。フラッシュメモリデバイス１３５からの暗号化されたパスワードが、ストレージディスク１１０からの暗号化されたパスワードにマッチしない場合、マイクロプロセッサベースの制御装置１３３は、ハイブリッドドライブ１００をさらなるアクセスからロックして、方法４００は終了する。このことは、暗号化されたパスワードのこれらの２つのコピーがマッチしないとき、それに関係する異なるパスワードを有する異なるメモリデバイスまたは回路基板により、フラッシュメモリデバイス１３５またはプリント回路基板１３２を置き換えることのような、ハイブリッドドライブの物理的改ざんが発生しているためである。他方、フラッシュメモリデバイス１３５からの暗号化されたパスワードが、ストレージディスク１１０からの暗号化されたパスワードにマッチしない場合、方法４００はステップ４１５に進む。
【００３７】
ステップ４１５において、マイクロプロセッサベースの制御装置１３３は、ストレージディスク１１０に対するアクセスが許容されていることを決定し、ステップ４０９において受け取られたホストコマンドを満たすために、ストレージディスク１１０にアクセスする。さらに、いくつかの実施形態では、ＲＡＭ１３４中の適切なフラグ、レジスタ、ビット、または、他のインジケータが更新されて、ストレージディスク１１０および／またはハイブリッドドライブが全体として現在ロック解除されていることを示す。このようにして、ハイブリッドドライブ１００が電源遮断されるまで、ハイブリッドドライブ１００の動作の間じゅう、ストレージディスク１１０をロック解除するための、何のさらなるパスワードチェックも発生しない。電源投入の際に、上述のＲＡＭ１３４中のフラグ、レジスタ、ビット、または、他のインジケータがデフォルト設定に戻り、ホスト提供のパスワードは、ストレージディスク１１０に対するアクセスが許容される前に、再びパスワードデータ３４１ａに比較されなければならないことに留意すべきである。
【００３８】
認証されていないユーザが、フラッシュメモリデバイス１３５中のセキュリティ情報３４０のロケーションの知識を有するとき、認証されていないユーザは、このような知識を利用して、方法４００により提供されたさらなるセキュリティを欺く可能性がある。例えば、ストレージディスク１１０上に格納されたデータをターゲットにする認証されていないユーザは、ハイブリッドドライブ１００と実質的に同一のハイブリッドドライブにおいて、ロック／ロック解除状態データ３４２ａを、“ロック解除されている”に設定して、この同一のドライブ中のパスワードデータ３４１ａを、フラッシュメモリデバイス１３５中のパスワードデータ３４１ａの値へと変更するかもしれない。認証されていないユーザは、次に、ハイブリッドドライブ１００のフラッシュメモリデバイス１３５を、同一であるが、ロック解除されているドライブのフラッシュメモリデバイス１３５により、置き換えるかもしれない。ターゲットドライブの電源投入の際に、ターゲットドライブは現在、“ロック解除されている”にセットされている、ロック／ロック解除状態データ３４２ｂ、および、ターゲットハイブリッドドライブのストレージディスク１１０中のパスワードデータ３４１ｂと同一のパスワードデータ３４１ａを格納しているフラッシュメモリデバイス１３５を含む。したがって、たとえ方法４００が使用されたときでも、ターゲットハイブリッドドライブ１００を電源投入する際に、フラッシュメモリデバイス１３５中のパスワードデータ３４１ａの値は、ストレージディスク１１０中のパスワードデータ３４１ｂの値に等しいので、ストレージディスク１１０がロックされておらず、認証されていないユーザに対してアクセス可能である。
【００３９】
いくつかの実施形態にしたがうと、このような認証されていないアクセスを防ぐために、ハイブリッドドライブ１００は、ハイブリッドドライブ１００に関係するドライブ固有の識別データを含み、ドライブ固有の識別データは、フラッシュメモリデバイス１３５に、および、ストレージディスク１１０のシステムエリアに格納される。例えば、ドライブ固有の識別データは、ドライブ特有キー３５０に含まれてもよく、これは、シリアルフラッシュチップ１２３およびストレージディスク１１０に格納される。ストレージディスク１１０がアクセスされることをもたらすコマンドが、ハイブリッドドライブ１００により受け取られるとき、ハイブリッドドライブ１００は、シリアルフラッシュチップ１２３中に格納されるドライブ特有キー３５０ａの値を、ストレージディスク１１０に格納されるドライブ特有キー３５０ｂの値に比較する。ドライブ３５０ａの値が、ドライブ特有キー３５０ｂの値にマッチするとき、ストレージディスク１１０に対するアクセスは認められる。ドライブ特有キー３５０は、事実上、認証されていないユーザにとってアクセス不可能であるハイブリッドドライブ１００の領域において、すなわち、ストレージディスク１１０およびシリアルフラッシュチップ１２３中のシステムエリア中に格納されるので、ドライブ特有キーを改ざんし、ハッキングし、または、そうではなく変えることは、一般的に実現可能でない。
【００４０】
図５は、１つ以上の実施形態にしたがった、ハイブリッドディスクドライブ中の安全なデータアクセスのための方法のステップのフローチャートである。特に、ハイブリッドドライブを電源投入した際、または、ハイブリッドドライブの磁気ストレージ媒体がアクセスされる電源投入後の最初のときに、図５に図示した方法を使用する。方法のステップを、図１−３のハイブリッドドライブ１００に関連して記述したが、当業者は、方法５００が他のタイプのデータストレージシステムとともに実行されてもよいことを理解するだろう。方法５００に対する制御アルゴリズムは、マイクロプロセッサベースの制御装置１３３、ホスト１０、または、他の何らかの適切な制御回路もしくはシステム中に駐在していてもよく、ならびに／あるいは、マイクロプロセッサベースの制御装置１３３、ホスト１０、または、他の何らかの適切な制御回路もしくはシステムによって実行されてもよい。明瞭さのために、方法５００を、ステップ５０１−５０４を実行するマイクロプロセッサベースの制御装置１３３に関して説明する。
【００４１】
示したように、方法５００は、ステップ５０１において開始し、ここで、マイクロプロセッサベースの制御装置１３３は、シリアルフラッシュチップ１２３中に格納されているドライブ特有キー３５０ａのコピーのような、ハイブリッドドライブに関係する第１の組のドライブ固有の識別データを受け取る。ステップ５０２において、マイクロプロセッサベースの制御装置１３３は、ストレージディスク１１０から、ストレージディスク１１０のシステム情報３３０に格納されているドライブ特有キー３５０ｂのコピーのような、ハイブリッドドライブに関係する第２の組のドライブ固有の識別データを受け取る。ステップ５０３において、マイクロプロセッサベースの制御装置１３３は、第１の組のドライブ固有の識別データを、第２の組のドライブ固有の識別データに比較する。ステップ５０４において、第１の組のドライブ固有の識別データが、第２の組のドライブ固有の識別データにマッチしないことに応答して、フラッシュメモリデバイス１３５またはストレージディスク１１０に対するさらなるアクセスが防止されるように、マイクロプロセッサベースの制御装置１３３は、ハイブリッドドライブ１００をロックする。
【００４２】
方法５００において使用されたドライブ固有の識別データは、ベンダ固有コマンドを使用している間に、シリアルフラッシュチップ１２３に、および、ストレージディスク１１０に格納され、通常のユーザにとって利用可能でないハイブリッドドライブ中のロケーションに格納されるので、ステップ５０４において比較された２つのコピーは、一般的に変更できない。結果として、ステップ５０４において比較されたドライブ固有の識別データの２つのコピーが、マッチしないとき、ストレージディスク１１０またはシリアルフラッシュチップ１２３のいずれかに対する認証されていないアクセスをもたらす意図により、プリント回路基板１３２またはストレージディスク１１０のうちの１つが除去されて、その異なるコピーにより置き換えられてしまったとして仮定することができる。
【００４３】
方法５００は、ハイブリッドドライブ１００が使用のために電源投入されるそれぞれのときに、一般的に実行されることに留意すべきである。いくつかの実施形態では、方法５００を、ハイブリッドドライブ１００が電源投入された直後に実行して、シリアルフラッシュチップ１２３、プリント回路基板１３２、および／または、ストレージディスク１１０のそれぞれが、実質的に同一だが、保護されていないコンポーネントにより置き換えられていないかについて確認する。他の実施形態では、方法５００は、ストレージディスク１１０がアクセスされることをもたらすホスト１０からのコマンドが、ハイブリッドドライブ１００によって受け取られたときに実行される。このような実施形態では、ハイブリッドドライブ１００のフラッシュメモリデバイス１３５にアクセスを開始するために、ストレージディスク１１０が回転数を上げるまで、ユーザが待機する必要がないので、ハイブリッドドライブは、最初に電源投入されるときに、ソリッドステートドライブに関係して、改善した性能を有する。
【００４４】
さまざまな実施形態を、ここで、ハイブリッドハードディスクドライブに関して説明したが、実施形態はまた、光学ディスクドライブ等のような、データストレージディスクを含む、他のデータストレージデバイスも含んでもよい。
【００４５】
まとめると、ここで説明した実施形態は、磁気ストレージデバイスと統合された不揮発性ソリッドステートストレージデバイスを含むハイブリッドディスクドライブ中の、安全なデータアクセスのためのシステムと方法を提供する。ドライブアクセスパスワードの暗号化されたバージョンのような、ドライブセキュリティデータの同一のコピーが、不揮発性ソリッドステートストレージデバイスと、磁気ストレージデバイスとの両方において格納される。結果として、不揮発性ソリッドステートストレージデバイスと、磁気ストレージデバイスとのいずれも、物理的に改ざんされていないことの確認が可能になった。有利なことに、このようなハイブリッドディスクドライブは、認証されていないアクセスからのデータのセキュリティを維持しつつ、不揮発性ソリッドステートストレージデバイス中のドライブセキュリティデータのコピーを格納することに関して、スタートアップにおける改善された性能を提供する。
【００４６】
これまでの記述は、特定の実施形態に向けられているが、他の、および、さらなる実施形態が、これらの基本的範囲から、および、以下の特許請求の範囲によって決定される範囲から逸脱することなく企図されてもよい。
【符号の説明】
【００４７】
１０…ホスト、１００…ハイブリッドドライブ、１１０…ストレージディスク、１３１…システムオンチップ（ＳｏＣ）、１３３…制御装置、１３５…フラッシュメモリデバイス、１３６…フラッシュマネージャデバイス
【図１】
2014174980.tif 000003
【図２】
2014174980.tif 000004
【図３】
2014174980.tif 000005
【図４】
2014174980.tif 000006
【図５】
2014174980.tif 000007