(57)【要約】【課題】  ホスト側装置１とディスク装置としてのハードディスク２とを結ぶ信号線上での情報盗用技術に対処できるコンピュータシステムを提供する。【解決手段】  ホストと、ディスク装置とを含み、ホストはディスク装置側で復号可能な暗号化パスワードを送信し、ディスク装置は、当該暗号化パスワードを受信して、パスワードを復号し、当該復号したパスワードが予め定められたパスワードに一致する場合に、ホスト側からのアクセスを受けて、情報をディスク媒体に記録し、ディスク媒体から情報を再生して出力する処理を行うコンピュータシステムである。【選択図】        図１
2006351160.tif 000002
【特許請求の範囲】
【請求項１】
ホストと、
前記ホストに接続されたディスク装置とを含み、
前記ホストは、前記ディスク装置側で復号可能な暗号化パスワードを送信し、
前記ディスク装置は、前記暗号化パスワードを受信して、パスワードを復号し、当該復号したパスワードが予め定められたパスワードに一致する場合に、前記ホスト側からのアクセスを受けて、情報をディスク媒体に記録し、ディスク媒体から情報を再生して出力することを特徴とするコンピュータシステム。
【請求項２】
ディスク媒体、
ホスト側で取得可能な公開鍵情報に対応する秘密鍵情報と、パスワードとを保持する鍵情報保持部、及び
ホスト側からの指示に従い、公開鍵情報をホスト側へ送出し、当該公開鍵情報を利用して暗号化されたパスワードを前記ホスト側から受信し、前記暗号化されたパスワードを、前記秘密鍵情報を用いて復号し、当該復号の結果をパスワードと比較し、これらが一致する場合に、前記ホスト側からのアクセスを受けて、情報をディスク媒体に記録し、ディスク媒体から情報を再生して出力するコントローラ、
を含むことを特徴とするディスク装置。
【請求項３】
請求項２に記載のディスク装置において、
前記コントローラは、
ホスト側から受信した乱数発生要求に応答して乱数を発生し、当該発生した乱数を前記秘密鍵情報を用いて、前記公開鍵情報で復号可能に暗号化してホスト側へ送出し、
ホスト側から、パスワードを当該乱数を用いて共通鍵暗号化方式で暗号化し、さらに前記公開鍵情報を利用して公開鍵暗号方式で暗号化された情報を受信し、
当該受信した情報を前記秘密鍵情報を用いて復号し、当該復号の結果をさらに前記発生した乱数を用いて復号し、
当該復号の結果をパスワードと比較し、これらが一致する場合に、前記ホスト側からのアクセスを受けて、情報をディスク媒体に記録し、ディスク媒体から情報を再生して出力する、
ことを特徴とするディスク装置。
【請求項４】
ホストと、
前記ホストに接続されたディスク装置とを含み、
前記ホストは、前記ディスク装置側で復号可能な暗号化パスワードを送信し、
前記ディスク装置は、前記暗号化パスワードを受信して、パスワードを復号し、当該復号したパスワードを保持し、該パスワードをパスワード照合に供することを特徴とするコンピュータシステム。
【請求項５】
ディスク媒体、
ホスト側で取得可能な公開鍵情報に対応する秘密鍵情報と、パスワードとを保持する鍵情報保持部、及び
コントローラを含み、
前記コントローラは、ホスト側からの指示に従い、公開鍵情報をホスト側へ送出し、当該公開鍵情報を利用して暗号化されたパスワードを前記ホスト側から受信し、前記暗号化されたパスワードを、前記秘密鍵情報を用いて復号し、当該復号の結果のパスワードを前記鍵情報保持部に保持するように動作し、
該パスワードをパスワード照合時に供することを特徴とするディスク装置。
【請求項６】
請求項５に記載のディスク装置において、
前記コントローラは、
ホスト側から受信した第１の乱数発生要求に応答して乱数を発生し、保持するとともに、当該発生した第１の乱数を前記秘密鍵情報を用いて、前記公開鍵情報で復号可能に暗号化してホスト側へ送出し、
ホスト側で生成した第２の乱数を前記公開鍵情報を利用して公開鍵暗号方式で暗号化された情報をホスト側から受信し、該受信情報を前記秘密鍵情報を用いて公開鍵暗号方式で復号し、当該復号した第２の乱数と、保持した前記第１の乱数とを加算した加算結果を生成し、
ホスト側から、暗号化されたパスワードの情報を受信し、
当該受信した情報を前記秘密鍵情報を用いて復号し、当該復号の結果をさらに前記加算結果を用いて共通鍵暗号方式で復号し、
当該復号の結果のパスワードを前記鍵情報保持部に保持するように動作し、
該パスワードをパスワード照合時に供することを特徴とするディスク装置。
【請求項７】
ホストと、
前記ホストに接続されたディスク装置とを含み、
前記ホストは、前記ディスク装置の公開鍵情報を取得し、前記ディスク装置へ第１の乱数発生要求をして、
前記ディスク装置は、ホスト側から受信した第１の乱数発生要求に応答して乱数を発生し、保持すると共に、当該発生した第１の乱数を前記秘密鍵情報を用いて、前記公開鍵情報で復号可能に暗号化した第１の乱数情報をホスト側へ送出し、
前記ホストは、ホスト側で生成した第２の乱数を前記公開鍵情報を利用して公開鍵暗号方式で暗号化した第２の乱数情報を前記ディスク装置に送出し、
前記ディスク装置は、該暗号化された第２の乱数情報をホスト側から受信し、該受信情報を前記秘密鍵情報を用いて公開鍵暗号方式で復号し、当該復号した第２の乱数と、保持した前記第１の乱数とを加算した加算結果を生成し、
前記ホストは、前記暗号化された第１の乱数情報を前記公開鍵情報を利用して公開鍵暗号方式で復号化した前記第１の乱数と、ホスト側で生成した前記第２の乱数とを加算した加算結果を用いてパスワードを共通鍵暗号化方式で暗号化し、さらに前記公開鍵情報を利用して公開鍵暗号方式で暗号化した情報を前記ディスク装置に送出し、
前記ディスク装置は、当該受信した情報を前記秘密鍵情報を用いて復号し、当該復号の結果をさらに前記加算結果を用いてパスワードを復号し、当該復号したパスワードを保持し、該パスワードをパスワード照合に供することを特徴とするコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パスワード保護されたディスク装置、及びそれを含むコンピュータシステムに関する。
【背景技術】
【０００２】
近年、情報セキュリティに対する意識が高まっており、ハードディスク等のディスク装置においても、それに保持されているデータの保護機能が要望されている。このような要望に応えるため、例えばＡＴＡ（AT Attachment）コマンドには、アクセス制限用のパスワードを設定するためのコマンドが用意されている。また、通信ユニット間で暗号化された通信を行う例が特許文献１に開示されている。
【特許文献１】特開２００５−１２３７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、近年では情報を盗み出す技術も高度化しており、例えばホスト内でマザーボードとハードディスクとを結ぶ信号線上に信号受信装置を設置し、この信号線を介して送受されるデータを盗み出す技術もある。こうした技術が利用されると、ＡＴＡコマンドでは信号線上をパスワードが平文で、暗号化されずに転送されるため、パスワード自体が盗み出されてしまう。
【０００４】
また、特許文献１に開示のように、通信ユニット間での暗号化が行われたとしても、通信ユニット内の信号を盗み出す技術によれば、情報を保護することはできない。
【０００５】
本発明は上記実情に鑑みて為されたもので、ホストとディスク装置とを結ぶ信号線上での情報盗用技術に対処できるコンピュータシステム、及びディスク装置を提供することを、その目的の一つとする。
【課題を解決するための手段】
【０００６】
上記従来例の問題点を解決するための本発明は、ホストと、前記ホストに接続されたディスク装置とを含む、コンピュータシステムであり、前記ホストは、前記ディスク装置側で復号可能な暗号化パスワードを送信し、前記ディスク装置は、前記暗号化パスワードを受信して、パスワードを復号し、当該復号したパスワードが予め定められたパスワードに一致する場合に、前記ホスト側からのアクセスを受けて、情報をディスク媒体に記録し、ディスク媒体から情報を再生して出力することを特徴としている。また、前記ホストは、前記ディスク装置側で復号可能な暗号化パスワードを送信し、前記ディスク装置は、前記暗号化パスワードを受信して、パスワードを復号し、当該復号したパスワードを保持し、該パスワードをパスワード照合に供することを特徴としている。
【発明を実施するための最良の形態】
【０００７】
本発明の実施の形態について図面を参照しながら説明する。本実施の形態に係るコンピュータシステムは、図１に示すように、ホスト側装置１と、ディスク装置としてのハードディスク２とを含んで構成されている。また、ホスト側装置１は、制御部１１、記憶部１２、操作部１３、表示部１４を含む。ハードディスク２は、ディスクユニット２１、コントローラ２２、記憶部２３を含む。これらホスト側装置１とハードディスク２とは、相互に信号線を介して接続されている。
【０００８】
ホスト側装置１の制御部１１は、ＣＰＵ等のプログラム制御デバイスである。この制御部１１は記憶部１２に格納されているプログラムに従って動作している。本実施の形態では、この制御部１１は、ハードディスク２側で復号可能な暗号化方法にて、ユーザから入力されたパスワードを暗号化する処理や、ハードディスク２に対してアクセスする処理等を実行する。この制御部１１の処理の内容例については、後に述べる。
【０００９】
記憶部１２は、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）等の記憶素子を含んで構成される、コンピュータ可読な記録媒体である。本実施の形態では、この記憶部１２に制御部１１によって実行されるプログラムが保持される。また、この記憶部１２は、制御部１１のワークメモリとしても動作する。
【００１０】
操作部１３は、キーボードやマウスなどであり、ユーザの指示操作を受けて、当該指示操作の内容を制御部１１に出力する。表示部１４は、ディスプレイ等であり、制御部１１から入力される指示に従って、情報を表示する。
【００１１】
ハードディスク２のディスクユニット２１は、ディスク媒体や、コントローラ２２から入力される指示に従って、このディスク媒体に対して磁気的に情報を記録し、ディスク媒体上に記録された情報を再生してコントローラ２２に出力するヘッドアセンブリ等を含んで構成される。このディスクユニット２１は、コントローラ２２によって制御される。
【００１２】
コントローラ２２は、ＣＰＵ等のプログラム制御デバイスを含んで構成されるハードディスク・コントローラ（ＨＤＣ）である。このコントローラ２２は、ホスト側装置１から暗号化されたパスワードの入力を受けて、当該パスワードを復号し、このパスワードが、設定されているパスワードに一致するか否かを調べる処理を実行する。そしてここでパスワードが一致する場合に、以降ホスト側装置１から入力される指示に従って、ディスクユニット２１を制御し、ディスク媒体に記録するべき情報を出力し、また、ディスク媒体に記録されている情報をディスクユニット２１から受けてホスト側装置１へ出力する。このコントローラ２２の処理の内容例については、後に詳しく説明する。
【００１３】
記憶部２３は、ＥＥＰＲＯＭ（Electronically Erasable and Programmable ROM）等の不揮発性の記録媒体であり、コントローラ２２によって実行されるプログラムや、予め設定されたパスワードの情報等を保持している。この記憶部２３は、コントローラ２２に内蔵されてもよい。
【００１４】
ここで制御部１１と、コントローラ２２との処理の内容について、図２を参照しながら説明する。なお、制御部１１によって行われるパスワードの暗号化の方法としては、ハードディスク２側で復号できればいかなるものであってもよい。例えば公開鍵方式の暗号化を用いることができる。そこで、以下、公開鍵方式の暗号化を用いる例について述べる。
【００１５】
公開鍵方式の暗号化の例では、ハードディスク２側に送信する情報の暗号化に用いる公開鍵と、これに対応する秘密鍵とが予め生成される。そして少なくとも秘密鍵がハードディスク２の記憶部２３に格納される。
【００１６】
また、ハードディスク２のコントローラ２２は、予めパスワードが設定されていれば電源が投入された直後は、ホスト側装置１からディスク媒体に情報を記録する指示や、ディスク媒体に記録された情報を読み出す指示を受けても、当該指示に関わらず、情報の記録、読み出しを行わないモード（アクセス禁止モード）で起動する。
【００１７】
制御部１１は、まず、ハードディスク２の公開鍵を取得する（Ｓ１）。このためには、公開鍵をホスト側装置１の記憶部１２に格納しておき、当該記憶部１２に格納されている公開鍵を読み出して取得することとしてもよい。また、着脱可能な記録媒体から読み出して、あるいはネットワークを介して受信することで、公開鍵を取得することとしてもよい。さらに、ハードディスク２の記憶部２３に公開鍵を格納しておき、コントローラ２２が、ホスト側装置１からの要求に応じて、公開鍵をホスト側装置１に送信することで、制御部１１が公開鍵を取得できるようになっていてもよい。
【００１８】
また、この公開鍵／秘密鍵のキーペアを用いる暗号化方式では、公開鍵で暗号化した情報を、秘密鍵を用いて復号でき、また秘密鍵で暗号化した情報は、公開鍵で復号できるようになっているものとする。なお、以下の説明では、この公開鍵をＫｐ、対応する秘密鍵をＫｓと呼ぶ。
【００１９】
また、制御部１１は、乱数の発生要求をコントローラ２２へ送信する（Ｓ２）。コントローラ２２では、乱数ｒｎを発生させ、Ｋｓで暗号化して（Ｓ３）、制御部１１へ送信する（Ｓ４）。コントローラ２２は、ここで発生させた乱数ｒｎを記憶部２３に格納して保持しておく。なお、公開鍵Ｋｐをコントローラ２２から送信する場合は、ここで乱数ｒｎとともに公開鍵Ｋｐを送信してもよい。
【００２０】
制御部１１では、この暗号化された乱数ｒｎを公開鍵Ｋｐで復号して取得する（Ｓ５）。またユーザにパスワードの入力を促す表示を行う（Ｓ６）。ユーザからパスワードＰの入力があると、制御部１１は、この入力されたパスワードＰを、処理Ｓ５で取得した乱数ｒｎをキーとして暗号化する（Ｓ７）。この処理Ｓ７における暗号化の方式は、同じ乱数ｒｎをキーとして復号可能な暗号化方式（いわゆる共通鍵暗号方式）とする。さらに、この処理Ｓ７での暗号化の結果、得られた情報を、公開鍵Ｋｐをキーとして暗号化する（Ｓ８）。この処理Ｓ８における暗号化方式は、公開鍵Ｋｐに対応する秘密鍵Ｋｓにて復号可能な公開鍵暗号方式である。
【００２１】
そして制御部１１は、この処理Ｓ８での暗号化の結果をコントローラ２２に対して送信する（Ｓ９）。コントローラ２２は、制御部１１から送信された暗号化の結果を受けて、秘密鍵Ｋｓにて復号する（Ｓ１０）。さらに、先に発生させ、記憶部２３に格納した乱数ｒｎを読み出して、この乱数ｒｎを用いて処理Ｓ１０での復号結果をさらに復号する（Ｓ１１）。この処理Ｓ１１での復号の結果は、ユーザが入力したパスワードＰそのものとなる。
【００２２】
コントローラ２２は、処理Ｓ１１の復号の結果と、記憶部２３に格納されているパスワード（予め設定されているパスワード）とを比較する（Ｓ１２）。ここで、処理Ｓ１１の復号の結果と、記憶部２３に格納されているパスワードとが一致する場合は、アクセス禁止モードを解除する（Ｓ１３）。このアクセス禁止モードの解除により、ホスト側装置１からディスク媒体に情報を記録する指示や、ディスク媒体に記録された情報を読み出す指示を受けたときに、当該指示に従って、情報の記録や読み出しの処理を実行するようになる。そして、ハードディスク２内に格納されたプログラムに従って、制御部１１が操作部１３から入力を受け入れ、あるいは表示部１４に情報を表示するといった処理を実行することとなる。
【００２３】
一方、処理Ｓ１２において、処理Ｓ１１の復号の結果と、記憶部２３に格納されているパスワードとが一致しない場合は、アクセス禁止モードを解除しない。
【００２４】
制御部１１は、以上の処理を例えば、コンピュータシステムの電源投入時に、記憶部１２内に記憶されているファームウエアの処理として実行する。また、オペレーティングシステムの起動後も、所定のタイミングでハードディスク２にアクセス禁止モードに移行させ、上記処理を実行してもよい。例えば、ユーザが指示したタイミングや、ログアウトしたタイミングなどが考えられる。
【００２５】
本実施の形態によると、制御部１１とコントローラ２２との間、つまりホスト側装置１とハードディスク２との間の信号線を流れる情報を盗み出しても、パスワードは暗号化された状態で送受信されているため、平文のパスワードが盗み出されることがない。
【００２６】
また、このパスワードは、ユーザが更新できるようにしてもよい。この場合、制御部１１とコントローラ２２とは、図３に示すように動作する。
【００２７】
すなわち、ユーザからパスワードの更新の指示とともに、新規パスワードの入力を受けた制御部１１は、ハードディスク２の公開鍵Ｋｐを取得する（Ｓ２１）。この公開鍵Ｋｐの取得方法は、既に述べた通りである。
【００２８】
制御部１１はまた、コントローラ２２に対して乱数を要求し（Ｓ２２）、コントローラ２２が当該要求に応答して乱数ｒｄを発生し、公開鍵Ｋｐに対応する秘密鍵Ｋｓで、この乱数ｒｄを暗号化して（Ｓ２３）、暗号化した乱数ｒｄを制御部１１に送信する（Ｓ２４）。ここでコントローラ２２側で発生させた乱数ｒｄを以下、区別のため第１乱数ｒｄと呼ぶ。コントローラ２２は、第１乱数ｒｄを記憶しておく。
【００２９】
制御部１１でも、別途、乱数ｒｈを発生する。ここで発生させた乱数ｒｈを区別のため、第２乱数ｒｈと呼ぶ。制御部１１は、この第２乱数ｒｈを公開鍵Ｋｐで暗号化して（Ｓ２５）、コントローラ２２に送信する（Ｓ２６）。
【００３０】
また制御部１１は、コントローラ２２から受信した第１乱数ｒｄを公開鍵Ｋｐを用いて復号し（Ｓ２７）、発生させた第２乱数ｒｈに加算し、加算結果ｒを生成する（Ｓ２８）。そしてこの加算結果ｒを用いて、新規パスワードを暗号化する（Ｓ２９）。この処理Ｓ２９における暗号化の方式は、同じ乱数ｒをキーとして復号可能な暗号化方式（共通鍵暗号方式）である。乱数ｒを得るための演算は、排他的論理和でもよい。また、そのほかの２つの乱数から結果が一意に決まる適当な演算を実施することでもよい。ここでは以下加算処理として説明する。
【００３１】
さらに、制御部１１は、処理Ｓ２９で暗号化した新規パスワードを公開鍵Ｋｐで暗号化し（Ｓ３０）、暗号化した情報をコントローラ２２に送信する（Ｓ３１）。この処理Ｓ３０の暗号化方式は、公開鍵Ｋｐに対応する秘密鍵Ｋｓにて復号可能な公開鍵暗号方式である。
【００３２】
コントローラ２２は、制御部１１から受信した第２乱数ｒｈの情報を秘密鍵Ｋｓを用いて復号し（Ｓ３２）、記憶していた第１乱数ｒｄと、復号して得た第２乱数ｒｈとを加算して加算結果ｒを得る（Ｓ３３）。
【００３３】
またコントローラ２２は、暗号化された新規パスワードの情報を受信して、この情報をまず秘密鍵Ｋｓで復号する（Ｓ３４）。さらに、この処理Ｓ３４の復号結果（共通鍵暗号方式の暗号）を、処理Ｓ３３で得た加算結果ｒを用いて復号する（Ｓ３５）。そして、この処理Ｓ３５の復号結果として得られた新規パスワードを記憶部２３に格納して（Ｓ３６）、処理を終了する。
【００３４】
この場合も、新規パスワードは、ホスト側装置１とハードディスク２との間の信号線上では暗号化された状態で送受信されるので、ホスト側装置１とハードディスク２との間の信号線を流れる情報を盗み出しても平文のパスワードが盗み出されることがない。
【００３５】
このように本実施の形態によると、ホスト側装置１とディスク装置としてのハードディスク２とを結ぶ信号線上での情報盗用技術に対処できる。
【図面の簡単な説明】
【００３６】
【図１】本発明の実施の形態に係るコンピュータシステムの構成ブロック図である。
【図２】本発明の実施の形態に係るコンピュータシステムにおけるハードディスクへのアクセス制限を解除する処理例を表すフローチャート図である。
【図３】本発明の実施の形態に係るコンピュータシステムにおけるハードディスクのパスワード更新処理の例を表すフローチャート図である。
【符号の説明】
【００３７】
１  ホスト側装置、２  ハードディスク、１１  制御部、１２，２３  記憶部、１３  操作部、１４  表示部、２１  ディスクユニット、２２  コントローラ。
【図１】
2006351160.tif 000003
【図２】
2006351160.tif 000004
【図３】
2006351160.tif 000005