(57)【要約】【課題】ホストコンピュータに外付け可能な記憶デバイスを複数のユーザで共有する場合に、各ユーザに割り当てられた記憶領域に対して他のユーザがアクセスすることを抑制可能な技術を提供することを目的とする。【解決手段】記憶デバイスは、外付けデバイスとしてホストコンピュータに着脱可能であって、複数のユーザのそれぞれに割り当てられた割り当て済記憶領域を備えている。そして、この記憶デバイスは、ユーザの認証が成功した旨の認証成功情報をホストコンピュータ又は他の外部装置から受信すると、該ユーザに割り当てられている割り当て済記憶領域をマウントし、他のユーザに割り当てられている割り当て済記憶領域をマウントしない状態を模擬的に形成して、ホストコンピュータからのアクセスを制限する。【選択図】図１
2009087124.tif 000002
【特許請求の範囲】
【請求項１】
外付けデバイスとしてホストコンピュータに着脱可能な記憶デバイスであって、
複数のユーザのそれぞれに割り当てられた割り当て済記憶領域を備え、
前記記憶デバイスは、ユーザの認証が成功した旨の認証成功情報を前記ホストコンピュータ又は他の外部装置から受信すると、該ユーザに割り当てられている割り当て済記憶領域をマウントし、他のユーザに割り当てられている割り当て済記憶領域をマウントしない状態を模擬的に形成して、前記ホストコンピュータからのアクセスを制限する、記憶デバイス。
【請求項２】
請求項１に記載の記憶デバイスであって、さらに、
各ユーザ毎に、ユーザ識別情報と該ユーザの割り当て済記憶領域の構成に関する割り当て済記憶領域構成情報とを対応付けて記憶する構成情報記憶部と、
論理デバイス部と、
を備え、
前記認証成功情報は、認証したユーザのユーザ識別情報を含み、
前記論理デバイス部は、
（ｉ）前記記憶デバイスが前記ホストコンピュータに接続されると、前記記憶デバイスがリムーバブル記憶媒体を収容可能な記憶媒体処理装置であることを示すデバイス構成情報を前記ホストコンピュータに送信し、
（ｉｉ）前記ホストコンピュータ又は前記外部装置から前記認証成功情報を受信すると、前記ホストコンピュータに対して前記記憶媒体処理装置に前記リムーバブル記憶媒体がマウントされた旨を通知し、
（ｉｉｉ）さらに、前記ホストコンピュータから前記リムーバブル記憶媒体のデバイス構成情報を要求されると、前記受信した認証成功情報に含まれるユーザ識別情報の示すユーザについての割り当て済記憶領域に関するデバイス構成情報を、前記リムーバブル記憶媒体のデバイス構成情報として前記ホストコンピュータに送信する、記憶デバイス。
【請求項３】
請求項２に記載の情報処理システムにおいて、
前記リムーバブル記憶媒体はメモリカードであると前記ホストコンピュータが認識し、
前記記憶媒体処理装置はメモリカードリーダ又はメモリカードリーダ／ライタであると前記ホストコンピュータが認識する、記憶デバイス。
【請求項４】
請求項１ないし請求項３のいずれかに記載の情報処理システムにおいて、
前記記憶デバイスと前記ホストコンピュータとは、ＵＳＢインタフェース又はｅＳＡＴＡインタフェースで接続される、記憶デバイス。
【請求項５】
外付けデバイスとしてホストコンピュータに着脱可能な記憶デバイスに対して、前記ホストコンピュータからのアクセスを制御するためのアクセス制御方法であって、
（ａ）前記記憶デバイスにおいて、複数のユーザにそれぞれ割り当て済記憶領域を割り当てる工程と、
（ｂ）前記記憶デバイスにおいて、ユーザの認証が成功した旨の認証成功情報を前記ホストコンピュータ又は他の外部装置から受信すると、該ユーザに割り当てられている割り当て済記憶領域をマウントし、他のユーザに割り当てられている割り当て済記憶領域をマウントしない状態を模擬的に形成して、前記ホストコンピュータからのアクセスを許容する工程と、
を備える記憶デバイスアクセス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータに外付けされた記憶デバイスに対して、各ユーザ毎にアクセスを制御する技術に関する。
【背景技術】
【０００２】
近年、ＵＳＢ等のホットプラグをサポートしたインタフェースの発達により、フラッシュメモリやハードディスクドライブ等の外付け用の記憶デバイスを、コンピュータ（ホストコンピュータ）に接続して用いることが多い（下記特許文献１，２参照）。
【０００３】
【特許文献１】特開２００７−４２５１号公報
【特許文献２】特開２００７−１４１０８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ホストコンピュータが複数のユーザによって利用される場合には、このホストコンピュータに外付けされた記憶デバイスの記憶領域は、複数のユーザによって共有される。このような場合に、記憶デバイスに記憶されている各ユーザ用のファイルやディレクトリに対して他のユーザからアクセスされないようにしたいという要請があった。そこで、各ユーザ毎に記憶領域を割り当て、この記憶領域内のディレクトリやファイルにアクセス権を設定するというアクセス制御方法が採用されていた。
【０００５】
しかしながら、このようなアクセス制御方法を採用した場合であっても、ホストコンピュータで動作するオペレーションシステム（ＯＳ）からは、全てのユーザの記憶領域に対してアクセスすることは可能である。したがって、悪意のユーザによって、ＯＳを介して他のユーザの記憶領域にアクセスされ、ファイルやディレクトリの改ざんや盗聴等が行われるおそれがあった。
【０００６】
本発明は、ホストコンピュータに外付け可能な記憶デバイスを複数のユーザで共有する場合に、各ユーザに割り当てられた記憶領域に対して他のユーザがアクセスすることを抑制可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００８】
［適用例１］外付けデバイスとしてホストコンピュータに着脱可能な記憶デバイスであって、複数のユーザのそれぞれに割り当てられた割り当て済記憶領域を備え、前記記憶デバイスは、ユーザの認証が成功した旨の認証成功情報を前記ホストコンピュータ又は他の外部装置から受信すると、該ユーザに割り当てられている割り当て済記憶領域をマウントし、他のユーザに割り当てられている割り当て済記憶領域をマウントしない状態を模擬的に形成して、前記ホストコンピュータからのアクセスを制限する、記憶デバイス。
【０００９】
適用例１の記憶デバイスは、認証成功情報を受信すると、そのユーザに割り当てられている割り当て済記憶領域をマウントし、他のユーザに割り当てられている割り当て済記憶領域をマウントしない状態を模擬的に形成して、ホストコンピュータからのアクセスを制限するので、各ユーザ用の割り当て済記憶領域に対して、他のユーザがホストコンピュータからアクセスすることを抑制することができる。
【００１０】
［適用例２］適用例１に記載の記憶デバイスであって、さらに、各ユーザ毎に、ユーザ識別情報と該ユーザの割り当て済記憶領域の構成に関する割り当て済記憶領域構成情報とを対応付けて記憶する構成情報記憶部と、論理デバイス部と、を備え、前記認証成功情報は、認証したユーザのユーザ識別情報を含み、前記論理デバイス部は、（ｉ）前記記憶デバイスが前記ホストコンピュータに接続されると、前記記憶デバイスがリムーバブル記憶媒体を収容可能な記憶媒体処理装置であることを示すデバイス構成情報を前記ホストコンピュータに送信し、（ｉｉ）前記ホストコンピュータ又は前記外部装置から前記認証成功情報を受信すると、前記ホストコンピュータに対して前記記憶媒体処理装置に前記リムーバブル記憶媒体がマウントされた旨を通知し、（ｉｉｉ）さらに、前記ホストコンピュータから前記リムーバブル記憶媒体のデバイス構成情報を要求されると、前記受信した認証成功情報に含まれるユーザ識別情報の示すユーザについての割り当て済記憶領域に関するデバイス構成情報を、前記リムーバブル記憶媒体のデバイス構成情報として前記ホストコンピュータに送信する、記憶デバイス。
【００１１】
このようにすることで、ホストコンピュータに対して、ユーザの認証成功後にそのユーザの割り当て済記憶領域をリムーバブル記憶媒体として模擬的に見せると共に、そのリムーバブル記憶媒体が記憶媒体処理装置に収容されてマウントされた状態を模擬的に見せることができる。したがって、ホストコンピュータからは、マウントされたリムーバブル記憶媒体、すなわち、そのユーザの割り当て済記憶領域にのみアクセスすることができ、他のユーザの割り当て済記憶領域にはアクセスできないようにアクセス制御を実現することができる。
【００１２】
［適用例３］適用例２に記載の情報処理システムにおいて、前記リムーバブル記憶媒体はメモリカードであると前記ホストコンピュータが認識し、前記記憶媒体処理装置はメモリカードリーダ又はメモリカードリーダ／ライタであると前記ホストコンピュータが認識する、記憶デバイス。
【００１３】
このようにすることで、ホストコンピュータに対して、ユーザの認証成功後にそのユーザの割り当て済記憶領域をメモリカードとして模擬的に見せると共に、そのメモリカードがメモリカードリーダ又はメモリカードリーダ／ライタに収容されてマウントされた状態を模擬的に見せることができる。
【００１４】
［適用例４］適用例１ないし適用例３のいずれかに記載の情報処理システムにおいて、前記記憶デバイスと前記ホストコンピュータとは、ＵＳＢインタフェース又はｅＳＡＴＡインタフェースで接続される、記憶デバイス。
【００１５】
このようにすることで、ホストコンピュータは、ＵＳＢインタフェース又はｅＳＡＴＡインタフェースを用いて記憶デバイスの備える記憶領域をマウントすることができる。
【００１６】
なお、本発明は、種々の形態で実現することが可能であり、例えば、記憶デバイスアクセス制御方法等の形態で実現することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明を実施するための最良の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１の実施例：
Ｂ．第２の実施例：
Ｃ．変形例：
【００１８】
Ａ．第１の実施例：
Ａ１．システム構成：
図１は、本発明の一実施例としての記憶デバイスを適用した情報処理システムの装置構成を示す説明図である。この情報処理システム１０００は、ホストコンピュータ２００と、外付けの記憶デバイスとしてのＵＳＢフラッシュメモリ１００と、を備えている。ホストコンピュータ２００は、ＵＳＢ（Universal Serial Bus）ポートを備えており、このＵＳＢポートに、外付け記憶デバイスとしてのＵＳＢフラッシュメモリ１００を接続（外付け）することができる。図１の例では、ＵＳＢフラッシュメモリ１００は、ホストコンピュータ２００の側面において上下２段に設けられた２つのＵＳＢポートのうち、下段のポートに接続されている。なお、図１の例では、ホストコンピュータ２００とＵＳＢフラッシュメモリ１００とは有線接続されているが、ワイヤレスＵＳＢ等による無線接続とすることもできる。
【００１９】
図２は、図１に示すＵＳＢフラッシュメモリ１００の内部構成を示すブロック図である。このＵＳＢフラッシュメモリ１００は、ＣＰＵ１１０と、ＵＳＢバスインタフェース１２０と、ＥＥＰＲＯＭ１３０と、ＳＲＡＭ１４０と、フラッシュメモリ１５０と、電圧制御部１６０と、内部インタフェース１７０と、汎用入出力ポート１８０と、を備えており、それぞれ内部バスで接続されている。
【００２０】
ＵＳＢバスインタフェース１２０は、ＵＳＢの物理的な通信を実行する。ＥＥＰＲＯＭ１３０には、予め領域指定テーブル１３８が格納されている。領域指定テーブル１３８の詳細については後述する。フラッシュメモリ１５０は、記憶デバイスとしての記憶領域を提供する。フラッシュメモリ１５０の記憶容量としては、例えば、２ＧＢの容量とすることができる。内部インタフェース１７０は、フラッシュメモリ１５０とデータのやりとりを行うためのインタフェースを提供する。汎用入出力ポート１８０は、例えば、指紋認証装置等の付加デバイスを接続する場合に利用するパラレルインタフェースである。電圧制御部１６０は、ＵＳＢバスインタフェース１２０を介して接続されたホストコンピュータ２００から供給されるバスパワード電源を、例えば、３．３Ｖに調整して各部に供給する。
【００２１】
ＥＥＰＲＯＭ１３０には、ＵＳＢ制御用プログラム（図示省略）が記憶されており、ＣＰＵ１１０は、このプログラムをＳＲＡＭ１４０に展開して実行することで、ＵＳＢ論理デバイス部１１２として機能する。
【００２２】
図３は、図２に示すフラッシュメモリ１５０の記憶領域を模式的に示す説明図である。フラッシュメモリ１５０は、制御カード用領域１５２と、情報処理システム１０００の各ユーザに割り当てられている記憶領域と、空き領域１５９とを備えている。図３の例では、情報処理システム１０００のユーザとして、３名のユーザＡ，Ｂ，Ｃが登録されており、ユーザＡにユーザＡ領域１５４が割り当てられ、また、ユーザＢにユーザＢ領域１５６が、ユーザＣにユーザＣ領域１５８が、それぞれ割り当てられている。制御カード用領域１５２には、予め認証用プログラム１５２ａと、ユーザ認証テーブル１５２ｂと、が格納されている。認証用プログラム１５２ａは、情報処理システム１０００にログインするユーザの認証を行うためのプログラムである。なお、「制御カード」については、後述する。
【００２３】
図４は、図１に示すホストコンピュータ２００の内部構成を示すブロック図である。このホストコンピュータ２００は、ＣＰＵ２１０と、ＲＯＭ２２０と、ＵＳＢバスインタフェース２３０と、ＲＡＭ２４０と、ハードディスクドライブ２６０と、表示部２７０と、キーボード２８０と、を備えており、それぞれ内部バスで接続されている。ＵＳＢバスインタフェース部２３０は、ＵＳＢポートを有しており、ＵＳＢフラッシュメモリ１００を接続すると共に、図２におけるＵＳＢバスインタフェース１２０と同様に、ＵＳＢの物理的な通信を実行する。
【００２４】
ＣＰＵ２１０は、所定のオペレーティングシステムの下、前述の認証用プログラム１５２ａ（図３）をＵＳＢフラッシュメモリ１００から読み出して実行することで、ユーザ認証部２１２として機能する。ＲＯＭ２２０には、ＵＳＢ通信用の各種プログラム（ＵＳＢシステムソフトウェアやドライバソフトウェア）が格納されている。なお、オペレーティングシステムとしては、例えば、マイクロソフト社のウィンドウズ（登録商標）を採用することができる。
【００２５】
図５は、ホストコンピュータ２００とＵＳＢフラッシュメモリ１００との間でのデータのやりとりに関する機能の階層構造を示す説明図である。ホストコンピュータ２００では、物理層における信号転送を制御するＵＳＢバスインタフェース２３０が最下位となり、その上に、ＵＳＢシステムソフトウェア２３２と、ＵＳＢマスストレージクラスドライバ２３４と、オペレーティングシステム２９２と、ユーザ認証等のアプリケーション２９４と、がこの順番に配置されている。一方、ＵＳＢフラッシュメモリ１００では、ＵＳＢバスインタフェース１２０が最下位となり、その上に、ＵＳＢ論理デバイス部１１２が配置されている。ＵＳＢ論理デバイス部１１２は、ＵＳＢ基本処理部１１２ａと、専用マスストレージインタフェース１１２ｂと、を備えている。
【００２６】
ＵＳＢ基本処理部１１２ａは、エンドポイント１１４を備えており、ホストコンピュータ２００が備えるＵＳＢシステムソフトウェア２３２との間でメッセージパイプ３０１を形成してコントロール転送を実現している。ここで、「エンドポイント」とは、デバイス（ＵＳＢフラッシュメモリ１００）においてホストと通信を行うためのリソース（バッファ等）をいう。また、「メッセージパイプ」とは、双方向通信が可能な論理接続をいう。なお、このメッセージパイプ３０１はデフォルトパイプとも呼ばれ、ホスト（ホストコンピュータ２００）とデバイス（ＵＳＢフラッシュメモリ１００）との間における各種設定／制御を行うための通信（コントロール転送）専用の論理接続である。
【００２７】
専用マスストレージインタフェース１１２ｂとＵＳＢマスストレージクラスドライバ２３４との間には、ＩＮ方向（ホストコンピュータ２００に入力する方向）のストリームパイプ群３１２と、ＯＵＴ方向（ホストコンピュータ２００から出力する方向）のストリームパイプ群３１３とが設けられている。「ストリームパイプ」とは、コントロール転送以外の通信（バルク転送やインタラプト転送等）で用いられる片方向の論理接続をいう。なお、「バルク転送」は、比較的大容量データを一括して高速に転送する通信をいい、「インタラプト転送」は、小容量のデータを定期的に転送する通信をいう。そして、専用マスストレージインタフェース１１２ｂは、ストリームパイプ群３１２の各パイプに対応するエンドポイントからなるエンドポイント群１１６と、ストリームパイプ群３１３の各パイプに対応するエンドポイントからなるエンドポイント群１１８とを備えている。ここで、「専用マスストレージインタフェース１１２ｂ」と呼ぶのは、標準的なマスストレージインタフェースインタフェースとは異なる機能を有しているからである。
【００２８】
以上の構成を有する情報処理システム１０００は、複数のユーザ（例えば、ユーザＡ，ユーザＢ，ユーザＣ）によって利用される。そして、情報処理システム１０００では、各ユーザＡ，Ｂ，Ｃが他のユーザの記憶領域にアクセスできないようにアクセス制御を行っている。このアクセス制御の概要を、図６を用いて説明する。
【００２９】
図６は、情報処理システム１０００におけるアクセス制御のための模擬的な装置構成を示す説明図である。情報処理システム１０００における実際の装置構成は、図１に示すようにホストコンピュータ２００にＵＳＢフラッシュメモリ１００が外付けされている構成である。しかしながら、情報処理システム１０００では、ＵＳＢフラッシュメモリ１００が論理的なマルチカードリーダ５００として模擬的に振る舞い、この論理的なマルチカードリーダ５００がホストコンピュータ２００に外付けされている構成が模擬される。
【００３０】
論理的なマルチカードリーダ５００は２つのカードスロットＳＬ１，ＳＬ２を備え、第１のスロットＳＬ１にはアクセス制御を行うためのメモリカード（制御カード）ＭＣｍが常に挿入され、第２のスロットＳＬ２には初期状態ではメモリカードが挿入されていない、という構成が模擬される。そして、各ユーザがＵＳＢフラッシュメモリ１００にアクセスする際には、各ユーザ用の論理的なメモリカード（ユーザＡカードＭＣａ，ユーザＢカードＭＣｂ，ユーザＣカードＭＣｃ）が、マルチカードリーダ５００に挿入される構成が模擬される。ここで、ユーザＡカードＭＣａは、フラッシュメモリ１５０におけるユーザＡ領域１５４に相当する。同様に、ユーザＢカードＭＣｂはユーザＢ領域１５６に、ユーザＣカードＭＣｃはユーザＣ領域１５８に、それぞれ相当する。以上のような模擬的な装置構成を取ることによって、各ユーザＡ，Ｂ，Ｃは、マルチカードリーダ５００に挿入されている自己のメモリカードにのみアクセスすることができ、挿入されていない他のユーザのメモリカードにはアクセスすることができない。すなわち、各ユーザＡ，Ｂ，Ｃは、自己の記憶領域のみアクセスすることができ、他のユーザの記憶領域にはアクセスすることができず、アクセス制御が実現される。
【００３１】
Ａ２．接続時初期化処理：
図７は、ＵＳＢフラッシュメモリ１００がホストコンピュータ２００に接続された際に実行される接続時初期化処理の手順を示すフローチャートである。図７において左側はホストコンピュータ２００における手順を示し、右側はＵＳＢフラッシュメモリ１００における手順を示す。
【００３２】
ＵＳＢフラッシュメモリ１００がホストコンピュータ２００に接続されると、ホストコンピュータ２００（図５）においてＵＳＢバスインタフェース２３０は、電気的にデバイスの接続検出を行う（ステップ［１］）。ステップ［２］では、ＵＳＢソフトウェア２３２とＵＳＢ基本処理部１１２ａとの間でＵＳＢの初期化処理が実行される。この初期化処理は、ＵＳＢの標準仕様に規定されている初期化処理である。具体的には、例えば、ＵＳＢデバイスリクエストのやりとりや、ディスクリプタ（デバイスクラスやベンダＩＤやプロダクトＩＤ等）のやりとりが、メッセージパイプ３０１上のコントロール転送によって実行される。また、ＵＳＢシステムソフトウェア２３２は、検出したデバイスにアドレスを割り当て、割り当てたアドレスをＵＳＢ基本処理部１１２ａに通知する。例えば、アドレス「１」をＵＳＢフラッシュメモリ１００に割り当てることができる。
【００３３】
一般に、ＵＳＢフラッシュメモリのデバイスクラスとしては、「マスストレージクラス」が用いられる。ＵＳＢフラッシュメモリ１００でも、この「マスストレージクラス」が自己のデバイスクラスとして設定されている。したがって、ホストコンピュータ２００は、ＵＳＢフラッシュメモリ１００からのディスクリプタを見ることで、ＵＳＢフラッシュメモリがマスストレージクラスのデバイスであることを認識する。
【００３４】
ステップ［３］では、ホストコンピュータ２００において、ＯＳ２９２（図５）は、ＵＳＢフラッシュメモリ１００のデバイスクラスに応じたデバイスドライバをＲＯＭ２２０（図４）から読み出してインストールする。このとき、例えば、ＲＯＭ２２０に予め格納されているマスストレージクラス用の標準デバイスドライバをインストールすることもできる。ここまでの手順は、ＵＳＢにおけるいわゆるプラグアンドプレイの手順である。
【００３５】
ステップ［４］（図７）では、ホストコンピュータ２００において、ＯＳ２９２（図５）は、ＵＳＢマスストレージクラスドライバ２３４及びストリームパイプ群３１２を介して、ＵＳＢフラッシュメモリ１００（アドレス＝１）に対してドライブ構成を問い合わせる。ステップ［５］では、専用マスストレージインタフェース１１２ｂは、ドライブ構成として最大ＬＵＮ（Logical Unit Number）を回答する。なお、「ＬＵＮ」とは、１つのデバイスが有する論理的なデバイスを識別するための番号であり、最大ＬＵＮとは、論理的なデバイスに割り当てられたＬＵＮのうち最大値をいう。上述したように、ＵＳＢフラッシュメモリ１００は、２スロットを有する論理的なマルチカードリーダ５００として動作する。そして、図６に示すように、第１のスロットＳＬ１にはＬＵＮとして「０」が、第２のスロットＳＬ２にはＬＵＮとして「１」が割り当てられている。したがって、専用マスストレージインタフェース１１２ｂは、最大ＬＵＮとして「１」を回答する。
【００３６】
ステップ［６］（図７）では、ＯＳ２９２は、ＵＳＢフラッシュメモリ１００に対して各ＬＵＮについてのメディアの有無を問い合わせる。上述したように初期状態では、第１のスロットＳＬ１には制御カードＭＣｍが挿入され、第２のスロットＳＬ２にはカードが挿入されていない構成が模擬される。そこで、ステップ［７］において、専用マスストレージインタフェース１１２ｂは、第１のスロットＳＬ１（ＬＵＮ０）にはメディアが挿入されており、第２のスロットＳＬ２（ＬＵＮ１）にはメディアが挿入されていない旨を回答する。
【００３７】
ステップ［８］では、ＯＳ２９２は、ＵＳＢフラッシュメモリ１００に対して挿入されているメディア（ＬＵＮ０）の容量や終了アドレス等のメディア情報を問い合わせる。ステップ［７］では、専用マスストレージインタフェース１１２ｂは、ＥＥＰＲＯＭ１３０（図２）に格納されている領域指定テーブル１３８に基づいて、第１のスロットＳＬ１に挿入されている制御カードＭＣｍについてのメディア情報を回答する。
【００３８】
図８は、領域指定テーブル１３８の記載内容の一例を示す説明図である。この領域指定テーブル１３８では、登録されているユーザ毎に、それぞれ、ユーザＩＤと、物理領域情報と、論理領域情報とが設定されている。ユーザＩＤとして、ユーザＡには「１」が設定されており、また、ユーザＢには「２」が、ユーザＣには「３」が、それぞれ設定されている。なお、ユーザＩＤ「０」については、制御カードに対して設定されている。「物理領域情報」とは、フラッシュメモリ１５０内において各ユーザ用の記憶領域として割り当てられている物理的な記憶領域についてのトータル容量と、開始及び終了アドレスとをいう。また、「論理領域情報」とは、各物理領域内に設けられている論理的な領域（パーティション）についてのトータル容量と、開始及び終了アドレスとをいう。なお、図８の例では、物理領域のトータル容量と論理領域のトータル容量とが一致しているが、論理領域のトータル容量が比較的小さくなるように設定することもできる。各ユーザ毎のエントリは、各ユーザが情報処理システム１０００に登録される際に設定される。なお、ユーザＩＤ「０」の制御カード用のエントリは、情報処理システム１０００の初期設定時に予め設定されている。専用マスストレージインタフェース１１２ｂは、この領域指定テーブル１３８に基づいて制御カードＭＣｍのメディア情報として、トータル容量「５１２ＭＢ」や終了アドレス等「２２２２２２２２」を回答する。
【００３９】
ステップ［１０］では、ＯＳ２９２は、ＵＳＢフラッシュメモリ１００に対して挿入されているメディア（ＬＵＮ０）のパーティション情報を問い合わせる。ステップ［１１］では、専用マスストレージインタフェース１１２ｂは、前述の領域指定テーブル１３８（図８）に基づいて、第１のスロットＳＬ１に挿入されている制御カードＭＣｍについてのパーティション情報（トータル容量「５１２ＭＢ」や終了アドレス等「２２２２２２２２」）を回答する。以上の接続時初期化処理の結果、ＯＳ２９２からは、ホストコンピュータ２００にマルチカードリーダ５００が接続され、第１のスロットＳＬ１に制御カードＭＣｍが挿入され、また、第２のスロットＳＬ２にはカードが挿入されていない、という模擬的な構成が見えることとなる。そして、接続時初期化処理の後、ホストコンピュータ２００とＵＳＢフラッシュメモリ１００とは、構成更新処理を繰り返し実行する。
【００４０】
Ａ３．構成更新処理：
図９は、接続時初期化処理の後実行される構成更新処理の手順を示すフローチャートである。ステップ［６］，［７］は、上述した接続時初期化処理における処理と同じである。すなわち、ホストコンピュータ２００は、既に把握している各ＬＵＮの示す論理的なデバイス（第１のスロットＳＬ１，第２のスロットＳＬ２）に対し、メディアが挿入されているか否かを問い合わせる。それに対して専用マスストレージインタフェース１１２ｂが回答する。
【００４１】
ステップ［２１］では、ＯＳ２９２は、ステップ［７］における専用マスストレージインタフェース１１２ｂからの回答に基づいて構成変更があったか否かを判定する。そして、構成変更なし、すなわち、第１のスロットＳＬ１に制御カードＭＣｍが挿入され、第２のスロットＳＬ２にカードが挿入されていない状態のままである場合には、再びステップ［６］，［７］が実行される。一方、第２のスロットＳＬ２にいずれかのユーザのカードが挿入された場合には、ＯＳ２９２は、構成変更があったものと判定する。そして、この場合、上述したステップ［８］，［９］及び［１０］，［１１］が実行され、ＯＳ２９２は、新たに挿入されたカードについてのメディア情報及びパーティション情報を得ることができる。そして、再びステップ［６］に戻って構成更新処理が繰り返し実行される。このようにして、ホストコンピュータ２００において、ＵＳＢフラッシュメモリ１００（論理的なマルチカードリーダ５００）の構成の更新を検出するようにしている。
【００４２】
Ａ４．アクセス制御処理：
図１０は、情報処理システム１０００において実行されるアクセス制御処理の手順を示すフローチャートである。いずれかのユーザが、ホストコンピュータ２００において、第１のスロットＳＬ１内の制御カードＭＣｍにアクセスして認証用プログラム１５２ａの起動用アイコン（図示省略）を選択して実行したものとする。そうすると、認証用プログラム１５２ａが起動し、ユーザ認証部２１２（図４）は、ユーザ認証用画面を表示部２７０に表示させる。
【００４３】
図１１は、表示部２７０に表示されるユーザ認証用画面を示す説明図である。このユーザ認証用画面Ｗ１は、ユーザ名入力欄Ｃ１と、パスワード入力欄Ｃ２と、ＯＫボタンＢ１とを備えている。ユーザがユーザ名入力欄Ｃ１にユーザ名を入力し、パスワード入力欄Ｃ２にパスワードを入力してＯＫボタンＢ１を押下すると、ホストコンピュータ２００とＵＳＢフラッシュメモリ１００との間でアクセス制御処理が実行される。なお、図１１の例では、ユーザＢがユーザ認証用画面Ｗ１にユーザ名及びパスワードを入力している。
【００４４】
アクセス制御処理（図１０）が開始されると、ホストコンピュータ２００（図４）においてユーザ認証部２１２は、制御カード用領域１５２内のユーザ認証テーブル１５２ｂを参照して認証処理を行う（ステップ［３１］）。
【００４５】
図１２は、ステップ［３１］において参照されるユーザ認証テーブル１５２ｂの内容を示す説明図である。このユーザ認証テーブル１５２ｂでは、登録されているユーザ毎に、それぞれ、ユーザ名と、パスワードと、ユーザＩＤとが設定されている。したがって、ステップ［３１］において、ユーザ認証部２１２は、入力されたユーザ名及びパスワードと、各ユーザ毎のエントリと、を比較して認証処理を行う。
【００４６】
ステップ［３２］（図１０）では、ユーザ認証部２１２は、認証が成功したか否かを判定する。そして、ユーザ認証部２１２は、認証が成功したと判定した場合に、認証が成功した旨を示す情報として、認証したユーザのユーザＩＤをＵＳＢフラッシュメモリ１００に送信する（ステップ［３３］）。例えば、前述のようにユーザＢについて認証が成功した場合には、ユーザＩＤ「２」がＵＳＢフラッシュメモリ１００に送信される（図１２参照）。
【００４７】
上述したように、ホストコンピュータ２００とＵＳＢフラッシュメモリ１００との間では、構成更新処理が繰り返し実行されている（図９参照）。専用マスストレージインタフェース１１２ｂは、ユーザＩＤを受信した（図１０、ステップ［３３］）後において、構成更新処理の一手順としてメディアの有無の問い合わせがあると（ステップ［６］）、今度は、第１のスロットＳＬ１に加えて第２のスロットＳＬ２（ＬＵＮ１）にもメディアが挿入されていると回答する（ステップ［７］）。
【００４８】
そうすると、ステップ［２１］において、ＯＳ２９２は、構成変更があったと判定するので、新たに挿入されたメディアについて、メディア情報の問い合わせ（ステップ［８］）及びパーティション情報の問い合わせ（ステップ［１０］）を行う。これらの問い合わせに対して、専用マスストレージインタフェース１１２ｂは、領域指定テーブル１３８（図８）に基づいて回答する（ステップ［９］、［１１］）。例えば、前述のようにユーザＢについてのユーザＩＤ「２」を受信している場合、専用マスストレージインタフェース１１２ｂは、領域指定テーブル１３８のユーザＢのエントリ（図８、上から３段目）に基づき、メディア情報として、トータル容量「２５６ＭＢ」や終了アドレス「４４４４４４４４」等を回答する。また、パーティション情報として、トータル容量「２５６ＭＢ」や終了アドレス「１１１１１１１１」等を回答する。
【００４９】
したがって、ＯＳ２９２からは、ホストコンピュータ２００に論理的なマルチカードリーダ５００が接続され、第１のスロットＳＬ１に制御カードＭＣｍが挿入され、また、第２のスロットＳＬ２にユーザＢカードＭＣｂが挿入されている、という模擬的な構成が見えることとなる。したがって、ユーザＢは、ＯＳを介してユーザＢカードＭＣｂにアクセスすることができる。換言すると、ユーザＢは、ＵＳＢフラッシュメモリ１００内のユーザＢ領域１５６に、ＯＳ２９２を介してアクセスすることができる。なお、ＯＳ２９２からは、他のユーザのメモリカード（ユーザＡカードＭＣａ，ユーザＣカードＭＣｃ）は論理的なマルチカードリーダ５００に挿入されてないように見える。したがって、ＯＳ２９２は、これらのメモリカードＭＣａ，ＭＣｃにアクセスすることはできない。換言すると、ＯＳ２９２からは、ユーザＡ領域１５４やユーザＣ領域１５８にアクセスすることができないこととなる。それゆえ、ユーザＢは他のユーザＡ，Ｃに割り当てられたこれら記憶領域１５４，１５８にアクセスすることは不可能であり、アクセス制御が実現されている。なお、ユーザＢが情報処理システム１０００を使用する場合に限らず、ユーザＡ，Ｃが使用する場合についても同様にアクセス制御が実現される。
【００５０】
以上説明したように、情報処理システム１０００では、ＵＳＢフラッシュメモリ１００が論理的なマルチカードリーダ５００として振る舞い、この論理的なマルチカードリーダ５００に各ユーザ専用の論理的なメモリカードを挿入する構成を模擬している。したがって、各ユーザは、自己のメモリカード、すなわち、フラッシュメモリ１５０において自己のために割り当てられた記憶領域にアクセスすることができると共に、他のユーザ用のメモリカード、すなわち、他のユーザのために割り当てられた記憶領域にアクセスできない。また、情報処理システム１０００では、ＯＳ２９２からは、他のユーザ用の論理的なメモリカードは見えないようにしている。したがって、悪意のユーザがＯＳ２９２を介して他のユーザ用の記憶領域にアクセスすることを抑制することができる。
【００５１】
Ｂ．第２の実施例：
図１３は、第２の実施例における情報処理システムでのアクセス制御のための模擬的な装置構成を示す説明図である。第２の実施例におけるＵＳＢフラッシュメモリ１００は、ＵＳＢ−ＨＵＢ及びそのＵＳＢ−ＨＵＢの配下に接続された複数のカードリーダとして模擬的に振舞う点において第１の実施例と異なり、実際の装置構成は図１に示す情報処理システム１０００と同じである。
【００５２】
具体的には、第２の実施例では、ＵＳＢフラッシュメモリ１００は、ホストコンピュータ２００に外付けされた論理的なＵＳＢ−ＨＵＢ６００及びこの論理的なＵＳＢ−ＨＵＢ６００のポートに接続された２つの論理的なカードリーダ６１０，６１１として模擬的に振る舞う。これら２つのカードリーダ６１０，６１１は、それぞれ１つのスロットを備えている。そして、カードリーダ６１０には、上述の制御カードＭＣｍが常に挿入されている。カードリーダ６１１には、ユーザＡカードＭＣａと、ユーザＢカードＭＣｂと、ユーザＣカードＭＣｃとが、それぞれ挿入可能である。なお、初期状態においては、第１の実施例と同様に、ユーザ用の３つのカードＭＣａ，ＭＣｂ，ＭＣｃは、いずれもカードリーダ６１１に挿入されていない。
【００５３】
図１４は、第２の実施例におけるホストコンピュータ２００とＵＳＢフラッシュメモリ１００との間でのデータのやりとりに関する機能の階層構造を示す説明図である。上述した模擬的な装置構成の相違に伴い、ホストコンピュータ２００及びＵＳＢフラッシュメモリ１００の機能の階層構造は第１の実施例（図５）と異なる。
【００５４】
具体的には、ホストコンピュータ２００では、ＵＳＢシステムソフトウェア２３２の上位に、ＵＳＢマスストレージクラスドライバ２３４に加えてＵＳＢハブクラスドライバ２３５が配置されている。ＵＳＢフラッシュメモリ１００では、ＵＳＢ論理デバイス部１２２において、ＵＳＢ−ＨＵＢ６００（図１３）に対応するＵＳＢ基本処理部１２４ａ及び専用ハブインタフェース１２２ｂが設けられている。また、２つの論理的なカードリーダ６１０，６１１のそれぞれに対応する、２つのＵＳＢ基本処理部１２２ｃと２つの専用マスストレージインタフェース１２２ｄとが設けられている。ＵＳＢ基本処理部１２４ａはエンドポイント１３１を備えている。専用ハブインタフェース１２２ｂは、ＩＮ方向のエンドポイント群１３２と、ＯＵＴ方向のエンドポイント群１３３とを備えている。また、２つのＵＳＢ基本処理部１２２ｃは、それぞれエンドポイント１３４を備えている。２つの専用マスストレージインタフェース１２２ｄは、それぞれＩＮ方向のエンドポイント群１３５と、ＯＵＴ方向のエンドポイント群１３６とを備えている。
【００５５】
図１５及び図１６は、第２の実施例における接続時初期化処理の手順を示すフローチャートである。ステップ［１］（図１５）では、第１の実施例と同様にＵＳＢフラッシュメモリ１００の接続が検出される。ステップ［２］では、第１の実施例と異なり、ＵＳＢ−ＨＵＢ６００に対応するＵＳＢ基本処理部１２４ａ（図１４）が初期化処理を実行する。したがって、デバイスクラスとして「ハブクラス」がＵＳＢシステムソフトウェア２３２に通知される。なお、ハブクラスのディスクリプションとしてポート数が規定されており、図１３の例では、ＵＳＢ−ＨＵＢ６００は２ポートを有することから、ポート数「２」がＵＳＢシステムソフトウェア２３２に通知される。本実施例では、ＵＳＢ−ＨＵＢ６００に接続されるデバイス数は、各ユーザの模擬的なカード用のカードリーダ６１１と、制御カードＭＣｍ用のカードリーダ６１０との合計２台である。したがって、ＵＳＢ−ＨＵＢ６００のポート数は「２」としたが、３以上の任意のポート数であるものとしてディスクリプションを設定することもできる。なお、この初期化処理において、ＵＳＢ−ＨＵＢ６００にはアドレス「１」が割り当てられる。
【００５６】
ステップ［３］では、ホストコンピュータ２００のＯＳ２９２は、ハブクラスのデバイスドライバをインストールする。このとき、ホストコンピュータ２００は、ＲＯＭ２２０に予め格納されているハブクラス用の標準デバイスドライバをインストールすることもできる。ここまでは、ＵＳＢ−ＨＵＢ６００を接続デバイスとする初期化処理の手順であり、引き続き、各ポートに接続されている論理的なカードリーダ６１０，６１１を接続デバイスとする初期化処理が実行される。
【００５７】
ステップ［１ａ］では、ＵＳＢシステムソフトウェア２３２は、ＵＳＢ−ＨＵＢ６００の第１のポートにデバイスが接続されたことを検出する。これは、ＵＳＢ基本処理部１２４ａがＵＳＢシステムソフトウェア２３２に対して、デバイスの接続をコントロール転送で通知することによって検出する。ステップ［２ａ］では、ＵＳＢシステムソフトウェア２３２とカードリーダ６１０に対応するＵＳＢ基本処理部１２２ｃとの間で、初期化処理が実行される。このとき、ＵＳＢ基本処理部１２２ｃは、デバイスクラスとして「マスストレージクラス」を通知する。またこのカードリーダ６１０には、アドレス「２」が割り当てられる。ステップ［３ａ］では、ホストコンピュータ２００のＯＳ２９２は、マスストレージクラスに対応するデバイスドライバをインストールする。
【００５８】
以下、第１実施例と同様に、ＵＳＢシステムソフトウェア２３２とＵＳＢ基本処理部１２２ｃとの間で、ドライブ構成の問い合わせ及び回答（ステップ［４ａ］，［５ａ］）と、メディア有無問い合わせ及び回答（ステップ［６ａ］，［７ａ］）とが行われる。上述したように、カードリーダ６１０は１つだけスロットを有し、初期状態において制御カードＭＣｍが挿入されているので、最大ＬＵＮとして「０」を、第１のスロット（ＬＵＮ０）にメディアが挿入されている旨を回答する。この場合、第１の実施例と同様に、挿入されているメディアについて、メディア情報の問い合わせ及び回答（ステップ［８ａ］，［９ａ］）と、パーティション情報の問い合わせ及び回答（ステップ［１０ａ］，［１１ａ］）が実行される。
【００５９】
続いて、ステップ［１ｂ］〜［３ｂ］（図１６）では、ＵＳＢ−ＨＵＢ６００の第２のポートについて、前述のステップ［１ａ］〜［３ａ］（図１５）と同様の処理が行われる。その結果、カードリーダ６１１にはアドレス「３」が割り当てられ、ホストコンピュータ２００において、マスストレージクラスに対応するデバイスドライバがインストールされる。続いて、ステップ［４ｂ］〜［７ｂ］では、ＵＳＢ−ＨＵＢ６００の第２のポートについて、前述のステップ［４ａ］〜［７ａ］（図１５）と同様の処理が行われる。初期状態においていずれのカードもカードリーダ６１１には挿入されていない。したがって、ステップ［７ｂ］の処理の終了によって第２のポートについての初期化処理は終了し、接続時初期化処理は完了する。
【００６０】
以上の処理の結果、ＯＳ２９２からは、図１３に示す模擬的な装置構成が見えることとなる。接続時初期化処理の後、第１の実施例と同様に、ホストコンピュータ２００とＵＳＢフラッシュメモリ１００との間では構成更新処理（図９）が繰り返し実行されている。なお、この構成更新処理は、論理的な３つのデバイス（ＵＳＢ−ＨＵＢ６００と、２台のカードリーダ６１０，６１１）のそれぞれについて実行される。そして、いずれかのユーザがユーザ認証画面（図１１）から認証を試みると、第１の実施例と同様に、アクセス制御処理（図１０）が開始される。そして、ユーザ認証が成功すると、カードリーダ６１１に、認証されたユーザに対応するメモリカードが挿入されたものとしてＯＳ２９２に認識させることができる。したがって、第１の実施例と同様なアクセス制御を実現することができる。
【００６１】
Ｃ．変形例：
なお、上記各実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００６２】
Ｃ１．変形例１：
上述した各実施例では、各ユーザに割り当てられた記憶領域をそれぞれ論理的なメモリカードとし、この論理的なメモリカードが論理的なマルチカードリーダ５００或いは論理的な（シングル）カードリーダ６１１に挿入される、という構成を模擬するものであった。本発明はこれに限定されるものではなく、例えば、各ユーザに割り当てられた記憶領域を論理的なＣＤ−ＲＯＭとし、この論理的なＣＤ−ＲＯＭが論理的なＣＤ−ＲＯＭドライブに挿入される、という構成を模擬することもできる。或いは、論理的なＭＯが、論理的なＭＯドライブに挿入される、という構成を模擬することもできる。また、各ユーザに割り当てられた記憶領域をそれぞれ論理的な外付けハードディスクドライブとし、ユーザ認証が成功した場合に、そのユーザに対応する外付けハードディスクドライブがＵＳＢハブに接続される（ホストコンピュータにマウントされる）、という構成を模擬することもできる。すなわち、一般には、各ユーザに割り当てられた記憶領域をそれぞれ論理的な記憶媒体とし、ユーザ認証が成功した場合に、そのユーザに対応する論理的な記憶媒体がホストコンピュータにマウントされる、という構成を模擬することができる。
【００６３】
Ｃ２．変形例２：
上述した各実施例では、論理的なマルチカードリーダ５００又は論理的なカードリーダ６１１に挿入される論理的なメモリカードは、各ユーザ専用のものであったが、これに限らず、複数のユーザからなるグループ専用のものとしてもよい。具体的には、フラッシュメモリ１５０においてグループ単位で記憶領域を割り当てておく。そして、ユーザがログインした場合には、そのユーザが属するグループに割り当てた記憶領域に相当する論理的なメモリカードがマルチカードリーダ５００又はカードリーダ６１１に挿入された構成を模擬するようにする。このようにすることで、グループ内においては、フラッシュメモリ１５０内の記憶領域（ファイルやディレクトリ）を共有することができると共に、他グループのメンバからのアクセスを制限することができる。
【００６４】
Ｃ３．変形例３：
上述した各実施例では、認証プログラムの格納場所はフラッシュメモリ１５０内であったが、これに限らず、ホストコンピュータ２００の有するハードディスク２６０（図４）やＲＯＭ２２０内であってもよい。この場合、第１の実施例では、制御カードＭＣｍは不要となり、したがって、論理的なマルチカードリーダ５００に代えて１スロットのみを備える論理的なカードリーダを備える構成を模擬することもできる。また、第２の実施例では、制御カードＭＣｍ及び制御カードＭＣｍ用のカードリーダ６１０を省略することもできる。
【００６５】
Ｃ４．変形例４：
上述した各実施例では、ユーザ認証は、ホストコンピュータ２００側において実行されていたが、これに代えて、フラッシュメモリ１５０側において実行されるようにしてもよい。具体的には、例えば、フラッシュメモリ１５０（図２）の汎用入出力ポート１８０に認証装置（例えば、パスワードによる認証装置や、指紋や虹彩等の生体的特徴による認証装置など）を接続し、この認証装置を用いてユーザ認証を行うこともできる。この場合、ユーザ認証が成功した場合には、認証が成功した旨を示す情報としてのユーザＩＤを、この認証装置からＵＳＢ論理デバイス部１１２（専用マスストレージインタフェース１１２ｂ）に送信することもできる。すなわち、一般には、情報処理システム１０００内のいずれかにおいてユーザ認証を行い、認証が成功した場合にはユーザＩＤをＵＳＢ論理デバイス部１１２に送信する任意の構成を採用することができる。なお、登録しているユーザが一人であれば、ユーザＩＤに代えて、認証が成功した旨をＵＳＢ論理デバイス部１１２に通知する構成とすることもできる。この構成においても、当該ユーザがログインした場合に、このユーザに割り当てられた記憶領域に相当する論理的なメモリカードを論理的なカードリーダに挿入する構成を模擬することができる。
【００６６】
Ｃ５．変形例５：
上述した各実施例では、ホストコンピュータ２００とフラッシュメモリ１５０との接続インタフェースはＵＳＢであったが、ＵＳＢに限らず、外付けデバイスの接続を検出可能な任意のインタフェースを採用することができる。具体的には、例えば、ｅＳＡＴＡ（external Serial ATA）やＩＥＥＥ１３９４等を採用することもできる。
【００６７】
Ｃ６．変形例６：
上述した各実施例では、模擬的な装置構成（図６，図１３）において採用されるデバイスは、２スロットのマルチカードリーダ５００及び２台のシングルカードリーダ６１０，６１１であったが、これに代えて、３スロット以上のマルチカードリーダ／ライタ及び３台以上のシングルカードリーダ／ライタを採用することもできる。このような構成とすることで、より複雑なユーザ管理を実現できる。
【００６８】
Ｃ７．変形例７：
上述した実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【図面の簡単な説明】
【００６９】
【図１】本発明の一実施例としての記憶デバイスを適用した情報処理システムの装置構成を示す説明図。
【図２】図１に示すＵＳＢフラッシュメモリ１００の内部構成を示すブロック図。
【図３】図２に示すフラッシュメモリ１５０の記憶領域を模式的に示す説明図。
【図４】図１に示すホストコンピュータ２００の内部構成を示すブロック図。
【図５】ホストコンピュータ２００とＵＳＢフラッシュメモリ１００との間でのデータのやりとりに関する機能の階層構造を示す説明図。
【図６】情報処理システム１０００におけるアクセス制御のための模擬的な装置構成を示す説明図。
【図７】ＵＳＢフラッシュメモリ１００がホストコンピュータ２００に接続された際に実行される接続時初期化処理の手順を示すフローチャート。
【図８】領域指定テーブル１３８の記載内容の一例を示す説明図。
【図９】接続時初期化処理の後に実行される構成更新処理の手順を示すフローチャート。
【図１０】情報処理システム１０００において実行されるアクセス制御処理の手順を示すフローチャート。
【図１１】表示部２７０に表示されるユーザ認証用画面を示す説明図。
【図１２】ステップ［３１］において参照されるユーザ認証テーブル１５２ｂの内容を示す説明図。
【図１３】第２の実施例における情報処理システムでのアクセス制御のための模擬的な装置構成を示す説明図。
【図１４】第２の実施例におけるホストコンピュータ２００とＵＳＢフラッシュメモリ１００との間でのデータのやりとりに関する機能の階層構造を示す説明図。
【図１５】第２の実施例における接続時初期化処理の手順を示すフローチャート。
【図１６】第２の実施例における接続時初期化処理の手順を示すフローチャート。
【符号の説明】
【００７０】
１００…ＵＳＢフラッシュメモリ
１１０…ＣＰＵ
１１２…ＵＳＢ論理デバイス部
１１２ａ…ＵＳＢ基本処理部
１１２ｂ…専用マスストレージインタフェース
１１４，１３２，１３４…エンドポイント
１１６，１１８，１３２，１３３，１３５，１３６…エンドポイント群
１２０…ＵＳＢバスインタフェース
１２２ｂ…専用ハブインタフェース
１２２ｄ…専用マスストレージインタフェース
１３０…ＥＥＰＲＯＭ
１３８…領域指定テーブル
１４０…ＳＲＡＭ
１５０…フラッシュメモリ
１５２…制御カード用領域
１５２ａ…認証用プログラム
１５２ｂ…ユーザ認証テーブル
１５９…領域
１６０…電源制御部
１７０…内部インタフェース
１８０…汎用入出力ポート
２００…ホストコンピュータ
２１０…ＣＰＵ
２１２…ユーザ認証部
２２０…ＲＯＭ
２３０…ＵＳＢバスインタフェース
２４０…ＲＡＭ
２６０…ハードディスクドライブ
２７０…表示部
２８０…キーボード
２９２…オペレーティングシステム（ＯＳ）
２９４…アプリケーション
２３２…ＵＳＢシステムソフトウェア
２３４…ＵＳＢマスストレージクラスドライバ
３０１…メッセージパイプ
３１２…ストリームパイプ群
３１３…ストリームパイプ群
５００…マルチカードリーダ
６１０，６１１…カードリーダ
１０００…情報処理システム
ＭＣａ…ユーザＡカード
ＭＣｂ…ユーザＢカード
ＭＣｃ…ユーザＣカード
ＭＣｍ…制御カード
Ｗ１…ユーザ認証用画面
Ｃ１…ユーザ名入力欄
Ｃ２…パスワード入力欄
ＳＬ１…第１のスロット
ＳＬ２…第２のスロット
【図１】
2009087124.tif 000003
【図２】
2009087124.tif 000004
【図３】
2009087124.tif 000005
【図４】
2009087124.tif 000006
【図５】
2009087124.tif 000007
【図６】
2009087124.tif 000008
【図７】
2009087124.tif 000009
【図８】
2009087124.tif 000010
【図９】
2009087124.tif 000011
【図１０】
2009087124.tif 000012
【図１１】
2009087124.tif 000013
【図１２】
2009087124.tif 000014
【図１３】
2009087124.tif 000015
【図１４】
2009087124.tif 000016
【図１５】
2009087124.tif 000017
【図１６】
2009087124.tif 000018