(57)【特許請求の範囲】
【請求項１】
携帯型ストレージデバイスを共有利用するユーザごとに配布されたトークンを利用して、前記携帯型ストレージデバイスの共有利用を管理する方法であって、
前記携帯型ストレージデバイスは、前記携帯型ストレージデバイスの利用が許可されたユーザが所持するトークンに記憶された認証情報を記憶しており、
前記携帯型ストレージデバイスがコンピュータに装着されたときに、前記携帯型ストレージデバイスが前記トークンの検出動作を行う工程（ａ）と、
前記工程（ａ）で検出された前記トークンの数が１つのときに、前記携帯型ストレージデバイスが、前記工程（ａ）で検出した前記トークンから前記認証情報を読取り、前記携帯型ストレージデバイスが記憶している前記認証情報の中から、前記トークンから読取った前記認証情報を検索することで、読取った前記認証情報を認証し、前記認証情報の認証に成功した場合、前記携帯型ストレージデバイスをストレージデバイスとして前記コンピュータに認識させるための処理を実行する工程（ｂ）と、
前記工程（ａ）で検出された前記トークンの数が２つのときに、前記携帯型ストレージデバイスが、前記工程（ａ）で検出した２つの前記トークンから前記認証情報を読み取り、前記携帯型ストレージデバイスが記憶している前記認証情報の中から、前記トークンから読取った前記認証情報をそれぞれ検索することで、読取った２つの前記認証情報を認証し、検索できた前記認証情報が１つの場合、検索できなかった認証情報を前記携帯型ストレージデバイスに登録する工程（ｃ）と、
を含むことを特徴とする携帯型ストレージデバイスの共有管理方法。
【請求項２】
請求項１に記載の携帯型ストレージデバイスの共有管理方法であって、
前記工程（ｃ）において、前記携帯型ストレージデバイスは、検索できた前記認証情報の下位に、検索できなかった前記認証情報を登録することで、デフォルトで設定された前記認証情報を起点とし、前記認証情報の世代を階層的に管理することを特徴とする携帯型ストレージデバイスの共有管理方法。
【請求項３】
請求項２に記載の携帯型ストレージデバイスの共有管理方法であって、
前記工程（ｃ）において、検索できなかった前記認証情報を新規に登録するときに、前記携帯型ストレージデバイスは、登録する前記認証情報の世代を確認し、予め定められた世代を超えているときは、前記認証情報の登録を中止することを特徴とする携帯型ストレージデバイスの共有管理方法。
【請求項４】
請求項１から請求項３のいずれか一つに記載の携帯型ストレージデバイスの共有管理方法であって、
前記トークンは、アンチコリジョンの機能を備えた非接触型のＩＣカードであることを特徴とする携帯型ストレージデバイスの共有管理方法。
【請求項５】
コンピュータに接続されたときにストレージデバイスとして動作する携帯型ストレージデバイスであって、
前記携帯型ストレージデバイスの利用が許可されたユーザが所持するトークンに記憶された前記認証情報を記憶する認証情報記憶手段と、
ユーザが所持するトークンと通信するためのインターフェース手段と、前記携帯型ストレージデバイスが前記コンピュータに装着されたときに前記トークンの検出動作を行い、検出した前記トークンの数に従い、前記携帯型ストレージデバイスの振る舞いを制御する制御手段を備え、
前記制御手段は、
検出した前記トークンの数が１つのときに、検出した前記トークンから認証情報を読取り、前記トークンから読取った前記認証情報が前記認証情報記憶手段に記憶されているか検索することで、読取った前記認証情報を認証し、前記認証情報の認証に成功した場合は、前記携帯型ストレージデバイスをストレージデバイスとしてコンピュータに認識させる処理を実行する認証部と、
検出した前記トークンの数が２つのときに、検出した２つの前記トークンから読取り、前記トークンから読取った前記認証情報それぞれが前記認証情報記憶手段に記憶されているか検索し、検索できた前記認証情報が１つのとき、検索できなかった前記認証情報を前記認証情報記憶手段に登録する登録部と、
を有することを特徴とする携帯型ストレージデバイス。
【請求項６】
請求項５に記載の携帯型ストレージデバイスであって、
前記制御手段の前記登録部は、検索できた前記認証情報の下位に、検索できなかった前記認証情報を登録することで、デフォルトで設定された前記認証情報を起点とし、前記認証情報の世代を階層的に管理することを特徴とする携帯型ストレージデバイス。
【請求項７】
請求項６に記載の携帯型ストレージデバイスであって、
前記制御手段の前記登録部は、検索できなかった前記認証情報を前記認証情報記憶手段に登録するときに、登録する前記認証情報の世代を確認し、予め定められた世代を超えているときは、前記認証情報の登録を中止することを特徴とする携帯型ストレージデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＵＳＢメモリに代表される携帯型ストレージデバイスの共有利用を管理するための方法、および、この方法で利用される携帯型ストレージデバイスに関する。
【背景技術】
【０００２】
フラッシュメモリの大容量化・低価格化やインフラ（ＵＳＢインタフェースの普及やＯＳの標準対応）の整備によって、ＵＳＢメモリに代表される携帯型ストレージデバイスが普及している。
【０００３】
携帯型ストレージデバイスを利用することで、ユーザは大容量のデータを容易に持ち運びできるようになるが、その反面、携帯型ストレージデバイスを紛失してしまうと、大容量のデータが漏洩する可能性があり、社会的な問題になっている。
【０００４】
従来、携帯型ストレージデバイスに記憶されたデータの保護にはパスワードが用いられることが一般的で、特許文献１では、携帯型ストレージデバイスに記憶されたセキュリティデータと入力されたパスワードの照合に成功した場合のみ、携帯型ストレージデバイスの管理領域のデータをコンピュータに送信することで、携帯型ストレージデバイスの利用が可能になる発明が開示されている。
【０００５】
更に、特許文献２では、携帯型ストレージデバイスにアクセスするときにパスワードの照合を必要とし、パスワード照合に成功したときは、携帯型ストレージデバイスの揮発フォルダ内の全データを「０」で上書き処理する発明が開示されている。
【０００６】
更に、特許文献３では、携帯型ストレージデバイスがコンピュータから取り外しされる要求を受けたときに、携帯型ストレージデバイスに記憶させたデータファイルの暗号化／復号に用いるパスフレーズの入力を受け付けて、携帯型ストレージデバイスに記憶されたデータファイルを自動的に暗号化する発明が開示されている。
【特許文献１】特開２００１−３５０９２号公報
【特許文献２】特開２００６−１９５６２９号公報
【特許文献３】特開２００４−２９５３５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した発明のように、携帯型ストレージデバイスに記憶されたデータの保護にパスワードを使用し、携帯型ストレージデバイスを複数のユーザで利用することを想定すると、複数のユーザ間で同じパスワードを共有するため、故意的であるかないかに係らず、一旦パスワードが漏洩してしまうと、意図しないユーザも利用できてしまう問題がある。
【０００８】
そこで、本発明は、複数のユーザ間で同一の携帯型ストレージデバイスを共有利用する場合、携帯型ストレージデバイスに記憶されたデータを保護するために利用されるパスワードなどの認証情報が漏洩することのない、携帯型ストレージデバイスの共有管理方法、および、携帯型ストレージデバイスを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決する第１の発明は、携帯型ストレージデバイスを共有利用するユーザごとに配布されたトークンを利用して、前記携帯型ストレージデバイスの共有利用を管理する方法であって、前記携帯型ストレージデバイスは、前記携帯型ストレージデバイスの利用が許可されたユーザが所持するトークンに記憶された認証情報を記憶しており、前記携帯型ストレージデバイスがコンピュータに装着されたときに、前記携帯型ストレージデバイスが前記トークンの検出動作を行う工程（ａ）と、前記工程（ａ）で検出された前記トークンの数が１つのときに、前記携帯型ストレージデバイスが、前記工程（ａ）で検出した前記トークンから前記認証情報を読取り、前記携帯型ストレージデバイスが記憶している前記認証情報の中から、前記トークンから読取った前記認証情報を検索することで、読取った前記認証情報を認証し、前記認証情報の認証に成功した場合、前記携帯型ストレージデバイスをストレージデバイスとして前記コンピュータに認識させるための処理を実行する工程（ｂ）と、前記工程（ａ）で検出された前記トークンの数が２つのときに、前記携帯型ストレージデバイスが、前記工程（ａ）で検出した２つの前記トークンから前記認証情報を読み取り、前記携帯型ストレージデバイスが記憶している前記認証情報の中から、前記トークンから読取った前記認証情報をそれぞれ検索することで、読取った２つの前記認証情報を認証し、検索できた前記認証情報が１つの場合、検索できなかった認証情報を前記携帯型ストレージデバイスに登録する工程（ｃ）と、を含むことを特徴とする携帯型ストレージデバイスの共有管理方法である。
【００１０】
上述した第１の発明によれば、携帯型ストレージデバイスを利用するときに認証する認証情報は、ユーザが所持するトークンに秘匿に記憶されるため、認証情報が漏洩する問題は解消される。なお、ここで、携帯型ストレージデバイスとは、ＵＳＢメモリや携帯型のハードディスクなど、ユーザが容易に持ち運び可能で、コンピュータに接続されたときは大容量のストレージデバイスとして動作するデバイスを意味し、更に、トークンとは、ＩＣカードなどの携帯可能な媒体を意味する。また、第１の発明によれば、携帯型ストレージデバイスが、携帯型ストレージの利用が許可されたユーザが所持するトークンに記憶された認証情報を記憶し、携帯型ストレージデバイスが、トークンから読み取った認証情報が携帯型ストレージに記憶されているか検索することで、認証情報を認証すれば、携帯型ストレージデバイスに記憶された認証情報を変更することで、携帯型ストレージデバイスを利用できるユーザを容易に変更できるようになる。また、第１の発明によれば、携帯型ストレージデバイスを利用するユーザを容易に登録することが可能になる。ただし、認証情報が１つ検索されることは、携帯型ストレージデバイスの利用が既に許可されたユーザが携帯型ストレージデバイスを利用していることを意味するため、新規に登録されるユーザは、既に利用が許可されたユーザが認可したユーザのみになる。
【００１５】
更に、第２の発明は、第１の発明に記載の携帯型ストレージデバイスの共有管理方法であって、前記工程（ｃ）において、前記携帯型ストレージデバイスは、検索できた前記認証情報の下位に、検索できなかった前記認証情報を登録することで、デフォルトで設定された前記認証情報を起点とし、前記認証情報の世代を階層的に管理することを特徴とする携帯型ストレージデバイスの共有管理方法である。
【００１６】
更に、第３の発明は、第２の発明に記載の携帯型ストレージデバイスの共有管理方法であって、前記工程（ｃ）において、検索できなかった前記認証情報を新規に登録するときに、前記携帯型ストレージデバイスは、登録する前記認証情報の世代を確認し、予め定められた世代を超えているときは、前記認証情報の登録を中止することを特徴とする携帯型ストレージデバイスの共有管理方法である。
【００１７】
上述した第２の発明によれば、認証情報の世代を階層的に管理することで、どのユーザが認可したユーザであるか把握できるようになる。また、第３の発明によれば、予め定められた世代を超えているときは、認証情報の登録を中止することで、無制限に認証情報は登録できなくなり、信頼性のあるユーザの認証情報のみを携帯型ストレージデバイスに登録できる。
【００１８】
更に、第４の発明は、第１の発明から第３の発明のいずれか一つに記載の携帯型ストレージデバイスの共有管理方法であって、前記トークンは、アンチコリジョンの機能を備えた非接触型のＩＣカードであることを特徴とする。
【００１９】
上述した第４の発明のように、トークンを非接触型のＩＣカードとすることで、交通用途や社員証用途で普及している非接触型ＩＣカードを、本発明に利用できるようになる。
【００２０】
更に、第５の発明は、コンピュータに接続されたときにストレージデバイスとして動作する携帯型ストレージデバイスであって、前記携帯型ストレージデバイスの利用が許可されたユーザが所持するトークンに記憶された前記認証情報を記憶する認証情報記憶手段と、ユーザが所持するトークンと通信するためのインターフェース手段と、前記携帯型ストレージデバイスが前記コンピュータに装着されたときに前記トークンの検出動作を行い、検出した前記トークンの数に従い、前記携帯型ストレージデバイスの振る舞いを制御する制御手段を備え、前記制御手段は、検出した前記トークンの数が１つのときに、検出した前記トークンから認証情報を読取り、前記トークンから読取った前記認証情報が前記認証情報記憶手段に記憶されているか検索することで、読取った前記認証情報を認証し、前記認証情報の認証に成功した場合は、前記携帯型ストレージデバイスをストレージデバイスとしてコンピュータに認識させる処理を実行する認証部と、検出した前記トークンの数が２つのときに、検出した２つの前記トークンから読取り、前記トークンから読取った前記認証情報それぞれが前記認証情報記憶手段に記憶されているか検索し、検索できた前記認証情報が１つのとき、検索できなかった前記認証情報を前記認証情報記憶手段に登録する登録部と、を有することを特徴とする携帯型ストレージデバイスである。
【００２３】
更に、第６の発明は、第５の発明に記載の携帯型ストレージデバイスであって、前記制御手段の前記登録部は、検索できた前記認証情報の下位に、検索できなかった前記認証情報を登録することで、デフォルトで設定された前記認証情報を起点とし、前記認証情報の世代を階層的に管理することを特徴とする携帯型ストレージデバイスである。
【００２４】
更に、第７の発明は、第６の発明に記載の携帯型ストレージデバイスであって、前記制御手段の前記登録部は、検索できなかった前記認証情報を前記認証情報記憶手段に登録するときに、登録する前記認証情報の世代を確認し、予め定められた世代を超えているときは、前記認証情報の登録を中止することを特徴とする携帯型ストレージデバイスである。
【発明の効果】
【００２５】
上述した本発明によれば、複数のユーザ間で同一の携帯型ストレージデバイスを共有利用する場合、携帯型ストレージデバイスに記憶されたデータを保護するために利用されるパスワードなどの認証情報が漏洩することのない、携帯型ストレージデバイスの共有管理方法、および、携帯型ストレージデバイスを提供できる。
【発明を実施するための最良の形態】
【００２６】
ここから、本発明に係る携帯型ストレージデバイスの共有管理方法および携帯型ストレージデバイスについて、携帯型ストレージデバイスをＵＳＢメモリとしたときの実施形態について、図を参照しながら詳細に説明する。
【００２７】
図１は、携帯型ストレージデバイスであるＵＳＢメモリ１の利用形態を説明する図で、図１（ａ）は、ＵＳＢメモリ１を利用するときの図で、図１（ｂ）は、ＵＳＢメモリ１にユーザを登録するときの図である。
【００２８】
図１で図示したように、複数のユーザ間で共有利用される携帯型ストレージデバイスであるＵＳＢメモリ１は、コンピュータ３に接続されると大容量のストレージデバイスとして動作し、本発明を実施するために、ユーザが所持するトークンである非接触型のＩＣカード２と無線通信する非接触ＩＣカードリーダライタ（以下、「Ｒ／Ｗ」と記す。）が具備されている。
【００２９】
ユーザが所持する非接触型のＩＣカード２は、ＩＳＯ／１４４４３規格で規格化されているＴｙｐｅＡやＴｙｐｅＢのように、アンチコリジョンの機能を備えた非接触型のＩＣカードで、ＵＳＢメモリ１が具備しているＲ／Ｗもアンチコリジョンに対応している。
【００３０】
図１（ａ）で図示したように、ユーザがＵＳＢメモリ１をストレージデバイスとして利用するために、ＵＳＢメモリ１をコンピュータ３に接続させると、ＵＳＢメモリ１は、ＩＣカード２を検出する動作を行い、ユーザがＩＣカード２をＵＳＢメモリ１にかざすと、ＵＳＢメモリ１は、ユーザが所持するＩＣカード２から認証情報を読取り、認証情報の認証に成功したときのみ、ＵＳＢメモリ１をストレージデバイスとしてコンピュータに認識させる処理を実行する。
【００３１】
ＵＳＢメモリ１を利用するために認証する認証情報をＩＣカード２に記憶させることで、認証情報を許可されていないユーザに知られることを防ぐことができるようになる。
【００３２】
更に、図１（ｂ）で図示したように、ＵＳＢメモリ１を共有利用するユーザをＵＳＢメモリ１に登録するときは、ＵＳＢメモリ１をコンピュータ３に接続させ、ＵＳＢメモリ１の利用が許可されているユーザが所持しているＩＣカード２と、ＵＳＢメモリ１に登録するユーザが所持しているＩＣカード２の２枚のＩＣカード２をＵＳＢメモリ１にかざすと、ＵＳＢメモリ１は、非接触型のＩＣカード２が有するアンチコリジョンの機能を利用して、２枚のＩＣカード２を同時に検出し、それぞれのＩＣカード２から認証情報を読取る。そして、ＵＳＢメモリ１は、どちらか一方のＩＣカード２から読み出された認証情報の認証に成功すると、もう片方のＩＣカード２に記憶されている認証情報がＵＳＢメモリ１に登録される。
【００３３】
認証情報をＵＳＢメモリ１に登録する機能を利用することで、複数のユーザ間でＵＳＢメモリ１の共有利用が容易可能になるが、意図しないユーザの認証情報がＵＳＢメモリ１に登録されてしまう可能性があるため、ＵＳＢメモリ１は、認証情報を登録するときに、認証情報と共に世代情報をも登録し、設定された世代以上の登録を防止する。
【００３４】
なお、本実施形態では、認証情報を格納するハードウェアトークンを非接触型のＩＣカード２としているが、ＩＣカード２以外のトークンであってもよく、例えば、特開２００４−１１８７７１号公報で公開されているＳＩＭホルダーでもよく、更には、ブルートゥースに対応した携帯電話などもトークンとして用いることができる。
【００３５】
ここから、上述した内容について、更に詳しく説明する。まず、携帯型ストレージデバイスであるＵＳＢメモリ１について詳細に説明する。図２は、ＵＳＢメモリ１の回路ブロック図である。
【００３６】
図２で図示しているように、ＵＳＢメモリ１には、電気部品として、ＵＳＢコネクタ１８、コントローラチップ１０、Ｒ／Ｗ回路１５およびアンテナコイル１６が実装され、コントローラチップ１０にはフラッシュメモリチップ１７およびＲ／Ｗ回路１５が接続され、Ｒ／Ｗ回路１５にはアンテナコイル１６が接続され、コントローラチップ１０およびＲ／Ｗ回路１５は、ＵＳＢコネクタ１８から供給されるバスパワーで動作する。
【００３７】
ＵＳＢコネクタ１８は、コンピュータ３のＵＳＢ端子と接続するためにＵＳＢメモリ１に設けられ、コントローラチップ１０は、ＵＳＢに準拠したシリアル通信を制御する通信コントローラの機能と、ＵＳＢマスストレージクラス（USB mass storage class）のインターフェースを少なくとも提供するためにＵＳＢメモリ１に実装され、コントローラチップ１０は、中央処理装置１１（CPU: Central Processing Unit）と、読出し専用のメモリであるＲＯＭ１２（Read-Only Memory）と、揮発性のメモリであるＲＡＭ１３と、電気的に書換え可能なセキュアメモリ１４（例えば、フラッシュメモリ）を備え、これらのメモリにはコントローラチップ１０のみからアクセス可能である。
【００３８】
ＩＣカード２に記憶された認証情報を認証し、ＵＳＢメモリ１の利用を管理する機能や、ＩＣカード２に記憶された認証情報を登録するための機能は、コントローラチップ１０に備えられ、コントローラチップ１０のＲＯＭ１２には、これらの機能を実現するためのプログラムが記憶され、コントローラチップのセキュアメモリ１４には、ＵＳＢメモリ１の利用が許可されたユーザが所持するＩＣカード２に記憶された認証情報が登録されている。
【００３９】
本実施形態では、ＩＣカード２に記憶された認証情報は、コントローラチップ１０のセキュアメモリ１４に登録しているが、ＩＣカード２に記憶された認証情報は、コントローラチップ１０からのみアクセス可能なフラッシュメモリチップ１７の領域に登録することもできる。
【００４０】
フラッシュメモリチップ１７は、ユーザが利用するデータを記憶するためにＵＳＢメモリ１に実装され、コントローラチップ１０を介して、ブロック単位でデータの読み書きやデータの消去が可能である。
【００４１】
Ｒ／Ｗ回路１５およびアンテナコイル１６は、ユーザが所持するＩＣカード２と無線通信し、ＩＣカード２に記憶された認証情報を読取るためにＵＳＢメモリ１に備えられている。
【００４２】
Ｒ／Ｗ回路１５は、アンチコリジョンに対応し、一般的な非接触ＩＣカードリーダライタの回路と同様な機能を備え、アンテナコイル１６から得られる電気信号をデコードする機能、アンテナコイル１６を利用し、コマンドなどをエンコードした電気信号をＩＣカード２に送信する機能、ＩＣカード２に対応した伝送制御プロトコルを制御する機能などを備える。
【００４３】
図３は、図１で図示したＵＳＢメモリ１の機能ブロック図で、本発明を実現するために必要な機能ブロックのみを図示している。図３に図示したように、ユーザが所持するＩＣカード２には、ＵＳＢメモリ１を利用するときに認証される認証情報として、ＩＣカード２毎に異なるカード番号が記憶されている。
【００４４】
携帯型ストレージデバイスであるＵＳＢメモリ１は、ＩＣカード２と非接触通信するインターフェース手段１１０（以下、「Ｉ／Ｆ手段１１０」と記す。）と、ユーザが所持するＩＣカード２に記憶されたカード番号を記憶する手段となるデータファイル１２０と、Ｉ／Ｆ手段１１０を作動させて、ＩＣカード２を検出し、検出したＩＣカード２の枚数に応じて、ＵＳＢメモリ１の振る舞いを制御する制御手段１００とを備え、制御手段１００は、検出したＩＣカード２の枚数が１枚のときに作動させる認証部１０１と、検出したＩＣカード２の枚数が２枚のときに作動させる登録部１０２とを有している。
【００４５】
ＵＳＢメモリ１に備えられた制御手段１００は、ＵＳＢメモリ１のコントローラチップ１０に備えられたＣＰＵ１１を、制御手段１００として機能させるためのコンピュータプログラムで、このコンピュータプログラムはコントローラチップ１０のＲＯＭ１２に記憶されている。
【００４６】
データファイル１２０は、認証情報であるカード番号を記憶するメモリに設けられたファイルで、本実施形態では、コントローラチップ１０のセキュアメモリ１４内に設けられる。ＵＳＢメモリ１に備えられたＩ／Ｆ手段１１０は、ＵＳＢメモリ１に備えられたＲ／Ｗ回路１５およびアンテナコイル１６で実現される。
【００４７】
ＵＳＢメモリ１の制御手段１００は、ＵＳＢメモリ１がコンピュータ３に接続されたときに起動し、制御手段１００は起動すると、Ｉ／Ｆ手段１１０を作動させてＩＣカード２の検出動作を行い、Ｉ／Ｆ手段１１０が検出したＩＣカード２の枚数が１枚のときは認証部１０１を作動させ、２枚のときは登録部１０２を作動させる。
【００４８】
制御手段１００の認証部１０１は、検出したＩＣカード２から読み出したカード番号を認証し、認証に成功したときのみ、ＵＳＢメモリ１をストレージデバイスとしてコンピュータに認識させる処理を実行する。
【００４９】
具体的には、制御手段１００の認証部１０１は、検出したＩＣカード２から読み出したカード番号をデータファイル１２０から検索し、検出したＩＣカード２から読み出したカード番号がデータファイル１２０に登録されている場合、ＵＳＢのディスクリプタを所定の値に設定などすることで、ＵＳＢメモリ１はストレージデバイスとしてコンピュータ３に認識され、ユーザはコンピュータ３を操作することで、ＵＳＢメモリ１のフラッシュメモリチップ１７を初期化したり、フラッシュメモリチップ１７をブロック単位で読み書きできるようになる。
【００５０】
制御手段１００の登録部１０２は、検出した２枚のＩＣカード２それぞれからカード番号を読出し、読み出したそれぞれのカード番号をデータファイル１２０から検索し、１枚のＩＣカード２から読み出したカード番号がデータファイル１２０に登録されている場合、ＵＳＢメモリ１の利用が許可されたユーザが他のユーザを紹介していると判断し、他方のＩＣカード２から読み出したカード番号をデータファイル１２０に登録することで、他方のＩＣカード２を所持しているユーザがＵＳＢメモリ１を利用できるようにする。
【００５１】
ただし、ユーザの紹介が繰返し実行されると、予期せないユーザに対してもＵＳＢメモリ１の利用が許可されてしまう可能性があるため、本実施形態の制御手段１００の登録部１０２は、カード番号をデータファイル１２０に登録するときに、カード番号に関連付けて世代情報を登録し、カード番号を階層的に管理することで、予め定められた世代以上の登録を防止する機能を備えている。
【００５２】
ここから、本実施形態の制御手段１００の登録部１０２が、カード番号を階層的に管理する内容について、詳細に説明する。図４は、カード番号の階層モデルを説明する図で、図５は、ＵＳＢメモリ１のデータファイル１２０に記憶されるデータを説明する図である。
【００５３】
図４は、２世代までの階層モデルで、図４で図示しているように、カード番号の階層モデルにおいて、起点となるユーザは一人で、起点となるユーザの世代は０世代である。好ましくは、起点となるユーザはＵＳＢメモリ１の所有者で、例えば、ＵＳＢメモリ１が企業の部署で利用される場合、起点となるユーザは、ＵＳＢメモリ１を管理する管理者とするとよい。
【００５４】
起点となるユーザの下位には、起点となるユーザから紹介された１世代のユーザが登録され、図４では、１世代のユーザとして、日本太郎、日本一郎および日本Ａ子の３人が図示されている。
【００５５】
１世代のユーザの下位には、１世代のユーザから紹介された２世代のユーザが登録される。図４では、１世代のユーザである日本太郎から紹介された２世代のユーザとして日本次郎が登録され、１世代のユーザである日本一郎から紹介された２世代のユーザとして日本二郎および日本三郎が登録され、１世代のユーザである日本Ａ子から紹介された２世代のユーザとして日本Ｂ子および日本Ｃ子が登録されている。
【００５６】
ＵＳＢメモリ１の制御手段１００の登録部１０２は、既にＵＳＢメモリ１の利用権限を得ているユーザから新たなユーザが紹介されるとき、紹介されたユーザの世代情報を確認し、予め定められている値を超えている場合、紹介されたユーザの登録する動作、すなわち、ＩＣカード２に記憶されたカード番号をデータファイル１２０に登録する動作を行わない。
【００５７】
本実施形態では、カード番号の登録が許可されている世代は２世代までで、起点となるユーザである管理者、または、管理者から紹介された１世代のユーザである日本太郎、日本一郎および日本Ａ子から紹介されたユーザは、ＵＳＢメモリ１に登録されるが、２世代のユーザである日本次郎、日本二郎、日本三郎、日本Ｂ子および日本Ｃ子から紹介されたユーザは、ＵＳＢメモリ１に登録されない。
【００５８】
図５は、図４で図示したカード番号の階層モデルがＵＳＢメモリ１に登録されたときのデータファイル１２０に記憶される情報を説明する図である。本実施形態において、データファイル１２０には、ユーザに係る情報を記憶するためのレコードがユーザごとに設けられ、このレコードには、ユーザのレコード番号に関連付けて、ユーザのカード番号、ユーザの氏名、親のレコード番号および、ユーザの世代情報が記憶される。
【００５９】
ユーザのレコード番号とは、カード番号が新規にデータレコードに登録されるときに、制御手段１００の登録部１０２によって割り振られる連番で、当然のことながらレコード番号はデータファイル１２０のレコードごとに異なる。
【００６０】
ユーザのカード番号とは、ＵＳＢメモリ１の利用が許可されたユーザが所持しているＩＣカードに記憶されているカード番号で、制御手段１００の登録部１０２が動作し、データファイル１２０に新規レコードを生成するときは、データファイル１２０に登録されていないカード番号が新規レコードに記述される。ユーザの氏名とは、ユーザの氏名を表す情報で、本実施形態において、ユーザの氏名はＩＣカード２に記憶されている。
【００６１】
親のレコード番号とは、制御手段１００が２枚のＩＣカード２を同時に検出したときに、既にデータファイル１２０に記憶されていたカード番号が記憶されているレコードのレコード番号で、すなわち、データファイル１２０に登録するカード番号が記憶されたＩＣカード１を所持するユーザを紹介し、既にＵＳＢメモリ１の利用が許可されたユーザが所持しているＩＣカードに記憶されたカード番号が記述されているレコードのレコード番号である。
【００６２】
世代情報は、カード番号の世代を示す情報で、世代情報は、親のレコード番号で特定されるレコードに記憶されている世代情報を一つインクリメントすることで算出され、親のレコード番号に記憶されている世代情報を一つインクリメントした値が、所定の値を超えているとき、制御手段１００の登録部１０２は、カード番号をデータファイル１２０に登録する処理を中止する。
【００６３】
図５において、起点となるユーザのレコードに付与されるレコード番号は常に「００」で、起点となるユーザのカード番号は「００００００００」で、ユーザの氏名は「管理者」である。起点となるユーザは紹介されることがないため親のレコード番号は記憶されず、世代情報は「０」である。
【００６４】
１世代のユーザのレコードに付与されるレコード番号は、レコードが生成されたときに、制御手段１００の登録部１０２によって自動的に付与され、図５では、例えば、１世代のユーザである日本太郎のレコード番号は「０１」、カード番号は「０００００００１」である。１世代のユーザは、０世代のユーザ、すなわち、ルートのユーザによって紹介されたユーザであるため、親のレコード番号は「００」で、親のレコード番号で特定されるレコードに記述されている世代情報（ここでは、「０」）に「１」を加算することで、世代情報は「１」になる。
【００６５】
２世代のユーザのレコードに付与されるレコード番号は、レコードが生成されたときに、制御手段１００の登録部１０２によって自動的に付与され、図５では、例えば、２世代のユーザである日本次郎のレコード番号は「０４」、カード番号は「０００００００４」である。２世代のユーザの日本次郎は、１世代のユーザである日本太郎によって紹介されたユーザであるため、１世代のユーザである日本太郎のカード番号「０００００００１」が記述されているレコードのレコード番号が親のレコード番号となり、その値は「０１」で、親のレコード番号で特定されるレコードに記述されている世代情報（ここでは、「１」）を一つだけインクリメントすることで、世代情報は「２」になる。
【００６６】
ここから、本発明に係るＵＳＢメモリ１共有システムの動作を参照しながら、本発明に係る方法について説明する。図６は、ＵＳＢメモリ１の一連の動作を示したフロー図で、図７は、認証情報であるカード番号を認証し、ＵＳＢメモリ１の利用を許可する処理を示したフロー図で、図８は、認証情報であるカード番号をＵＳＢメモリ１に登録する処理を示したフロー図である。
【００６７】
まず、図６を参照しながら、ＵＳＢメモリ１の一連の動作について説明する。ＵＳＢメモリ１が、コンピュータ３のＵＳＢポートと電気的に接続すると、ＵＳＢのバスパワーによってＵＳＢメモリ１に電力が供給され、ＵＳＢメモリ１は起動する（Ｓ１）。
【００６８】
ＵＳＢメモリ１が起動すると、ＵＳＢメモリ１のコントローラチップ１０に実装され、コントローラチップ１０のＣＰＵ１１を制御手段１００として機能させるためのコンピュータプログラムが起動することで、ＵＳＢメモリ１に備えられた制御手段１００は起動し、制御手段１００が起動すると、ストレージデバイスを意味する値にＵＳＢのディスクリプタの値を設定することなく、Ｉ／Ｆ手段１１０を作動させて、アンチコリジョンに対応したＩＣカード２の検出動作を行う（Ｓ２）。
【００６９】
本実施形態において、ＵＳＢメモリ１のＩ／Ｆ手段１１０はＲ／Ｗ回路１５とアンテナコイル１６で実現されており、ＵＳＢメモリ１のＲ／Ｗ回路１５が、アンテナコイル１６を利用して、初期応答コマンドをエンコードした電波を発信し、初期応答コマンドを発信してから一定時間内に、カード識別子（例えば、カード番号の一部）を含む初期応答レスポンスをＩＣカード２から受信し、ＩＣカード２に対応したプロトコルに従いアンチコリジョンの処理を実行することで、ＵＳＢメモリ１の近傍に存在する１枚或いは複数のＩＣカード２を検出する。
【００７０】
ＵＳＢメモリ１のＩ／Ｆ手段１１０がＩＣカード２を検出した場合は、次のステップに進み、ＩＣカード２を検出できなかった場合は、ステップＳ２に戻り、ＩＣカード２を検出する動作、すなわち、初期応答コマンドを発信する動作を行う（Ｓ３）。
【００７１】
ＵＳＢメモリ１のＩ／Ｆ手段１１０は、ＩＣカード２を検出すると、ＩＣカード２を検出したときに得られたカード識別子すべてを制御手段１００に引渡し、制御手段１００は、引渡されたカード識別子を参照し、ＩＣカード２の検出枚数に応じて処理を分岐させる（Ｓ４）。
【００７２】
ＵＳＢメモリ１のＩ／Ｆ手段１１０が１枚のＩＣカード２を検出した場合、すなわち、引渡されたカード識別子が１つである場合、制御手段１００は認証部１０１を呼び出し、認証情報であるカード番号を認証する処理を実行し（Ｓ５）、ＵＳＢメモリ１のＩ／Ｆ手段１１０が２枚のＩＣカード２を検出した場合、すなわち、引渡されたカード識別子が２つである場合、制御手段１００は登録部１０２を呼び出し、認証情報であるカード番号を登録する処理を実行し（Ｓ６）、３枚以上のときはこの手順を終了する。
【００７３】
制御手段１００の認証部１０１が、認証情報であるカード番号を認証する処理を実行した後、或いは、制御手段１００の登録部１０２が、認証情報であるカード番号を登録する処理を実行した後に、この手順は終了する。
【００７４】
次に、図７を参照しながら、図６のＳ５で実行され、認証情報であるカード番号を認証する処理について詳細に説明する。図６のＳ４で、ＵＳＢメモリ１のＩ／Ｆ手段１１０が１枚のＩＣカード２を検出した場合、ＩＣカード２を検出したときに得られたカード識別子が制御手段１００に引渡され、制御手段１００は認証部１０１を呼び出し、認証情報であるカード番号を認証する処理を開始する。
【００７５】
制御手段１００の認証部１０１が、認証情報であるカード番号を認証するとき、制御手段１００の認証部１０１は、引渡された識別子で特定されるＩＣカード２に対し、ＩＣカード２に記憶されているカード番号を読み出すコマンドメッセージの送信をＩ／Ｆ手段１１０に指示し、このコマンドメッセージをＩＣカード２に送信し、Ｉ／Ｆ手段１１０は、ＩＣカード２から受信したカード番号を制御手段１００の認証部１０１に引渡す（Ｓ１０）。
【００７６】
制御手段１００の認証部１０１は、認証情報であるカード番号が引渡されると、引渡されたカード番号を認証する（Ｓ１１）。本実施形態では、制御手段１００の認証部１０１は、読取ったカード番号をデータファイル１２０から検索することで、ＩＣカード２から読取ったカード番号を認証する。
【００７７】
制御手段１００の認証部１０１は、認証情報であるカード番号を認証すると、認証結果に基づいて処理を分岐させる（Ｓ１２）。認証情報であるカード番号の認証に成功したときは、すなわち、引渡されたカード番号がデータファイル１２０に記憶されているときは、ストレージデバイスを意味する値にＵＳＢのディスクリプターの値を設定などすることで、ＵＳＢメモリ１の利用を許可し（Ｓ１３）、この手順を終了する。また、認証情報であるカード番号の認証に失敗したときは、すなわち、引渡されたカード番号がデータファイル１２０に記憶されていないときは、ストレージデバイスを意味する値にＵＳＢのディスクリプターの値を設定することなく、ＵＳＢメモリ１の利用を許可せずに、この手順を終了する。
【００７８】
次に、図８を参照しながら、制御手段１００の登録部１０２が、認証情報であるカード番号を登録する動作について説明する。図６のＳ４で、ＵＳＢメモリ１のＩ／Ｆ手段１１０が２枚のＩＣカード２を検出した場合、ＩＣカード２を検出したときに得られた２つの識別子を制御手段１００が制御手段１００に引渡され、制御手段１００は登録部１０２を呼び出し、カード番号を登録する動作を開始する。
【００７９】
制御手段１００の登録部１０２が、認証情報であるカード番号をデータファイル１２０に登録するとき、制御手段１００の登録部１０２は、引渡されたカード識別子で特定されるそれぞれのＩＣカード２に対し、ＩＣカード２に記憶されているカード番号を読み出すコマンドメッセージの送信をＩ／Ｆ手段１１０に指示し、Ｉ／Ｆ手段１１０は、このコマンドメッセージをそれぞれのＩＣカード２に送信し、それぞれのＩＣカード２から受信した２つのカード番号を制御手段１００の登録部１０２に引渡す（Ｓ２０）。
【００８０】
制御手段１００の登録部１０２は、Ｉ／Ｆ手段１１０から２つのカード番号が引渡されると、２つのカード番号それぞれを認証する。なお、カード番号の認証については、既に説明しているため、ここでは説明を省く。
【００８１】
制御手段１００の登録部１０２は、認証に成功したカード番号の数に応じて処理を分岐させる（Ｓ２２）。認証に成功したカード番号が２つの場合は、すでに２つのカード番号共に、データファイル１２０登録されているため、この手順を終了する。また、２つのカード番号の認証に失敗した場合は、紹介できるユーザが存在しないと判断し、この手順を終了する。
【００８２】
認証に成功したカード番号が１つの場合は、次のステップに進み、制御手段１００の登録部１０２は、認証に成功していないカード番号を登録する処理を開始し、制御手段１００の登録部１０２は、認証に成功していないカード番号を登録するときの世代情報を算出する（Ｓ２３）。
【００８３】
本実施形態において、制御手段１００の登録部１０２がカード番号を登録するときの世代情報を算出するときは、データファイル１２０に含まれるレコードの中から、認証に成功したカード番号が記述されたレコードを検索し、検索したレコードに記述された世代情報を一つだけインクリメントすることで、認証に成功していないカード番号を登録するときの世代情報を算出する。
【００８４】
制御手段１００の登録部１０２は、認証に成功していないカード番号を登録するときの世代情報を算出すると、算出した世代情報と所定値とを比較し、比較結果に応じて処理を分岐させる（Ｓ２４）。算出した世代情報が所定値を超えている場合は、認証に成功していないカード番号を登録することなく、この手順を終了し、算出した世代情報が所定値以下の場合は、認証に成功していないカード番号を登録する処理を実行する（Ｓ２５）。
【００８５】
認証に成功していないカード番号を登録する処理を実行するとき、制御手段１００の登録部１０２は、認証に成功していないカード番号を登録するための新規レコードをデータファイル１２０に生成し、このレコードにレコード番号を振り、認証に成功していないカード番号が記憶されたＩＣカード２から読取った氏名データと、認証に成功していないカード番号と、算出した世代情報と、認証に成功したカード番号が記述されているレコード番号を親のレコード番号として、新規に生成したレコードに書き込み、この手順を終了する。
【図面の簡単な説明】
【００８６】
【図１】ＵＳＢメモリの利用形態を説明する図。
【図２】ＵＳＢメモリの回路ブロック図。
【図３】ＵＳＢメモリの機能ブロック図。
【図４】カード番号の階層モデルを説明する図。
【図５】データファイルに記憶される情報を説明する図。
【図６】ＵＳＢメモリの一連の動作を示したフロー図。
【図７】ＵＳＢメモリの利用を許可する処理を示したフロー図。
【図８】カード番号をＵＳＢメモリに登録する処理を示したフロー図。
【符号の説明】
【００８７】
１  ＵＳＢメモリ
１０  コントローラチップ
１５  Ｒ／Ｗ回路
１６  アンテナコイル
１００  制御手段
１０１  認証部、１０２  登録部
１１０  インターフェース手段
１２０  データファイル
２  ＩＣカード
３  コンピュータ
【図１】
0004993114.tif 000002
【図２】
0004993114.tif 000003
【図３】
0004993114.tif 000004
【図４】
0004993114.tif 000005
【図５】
0004993114.tif 000006
【図６】
0004993114.tif 000007
【図７】
0004993114.tif 000008
【図８】
0004993114.tif 000009