(57)【要約】【課題】セキュリティ性の向上を図る。【解決手段】情報記憶装置は、フラッシュメモリ５０と、ユーザ端末１１０と通信するためのＵＳＢＩ／Ｆ２０と、フラッシュメモリ５０とＵＳＢＩ／Ｆ２０との間に設けられ、フラッシュメモリ５０に対する読み出し処理及び書き込み処理を制御するメインコントローラ１０と、認証情報を記憶したＩＣチップ３２を有するＩＣカード３０と、ＩＣカード３０がメインコントローラ１０に対して通信可能な状態で装着され、かつ、ＩＣカード３０が取り外し可能に装着されるカードコネクタ４０とを有する。【選択図】図２
2008015744.tif 000002
【特許請求の範囲】
【請求項１】
（Ａ）メモリと、
（Ｂ）ユーザ端末と通信するための通信インタフェースと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットと、
（Ｅ）前記チップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、
前記チップユニットが取り外し可能に装着されるチップユニット装着部と、
（Ｆ）を有する情報記憶装置。
【請求項２】
請求項１に記載の情報記憶装置であって、
前記メモリは、
読み出し情報が記憶される読み出し領域と、
保護対象情報が記憶されるセキュリティ領域とを備え、
前記コントローラは、
前記読み出し領域に対する前記読み出し情報の読み出し処理を、前記チップユニットの装着状態に関わらず行い、
前記セキュリティ領域に対する前記保護対象情報の読み出し処理及び書き込み処理を、前記チップユニットが前記チップユニット装着部に装着されていることを条件に行う、情報記憶装置。
【請求項３】
請求項２に記載の情報記憶装置であって、
前記読み出し領域には、
前記チップユニット装着部を前記ユーザ端末に使用させるためのプログラムが記憶されている、情報記憶装置。
【請求項４】
請求項２又は請求項３に記載の情報記憶装置であって、
前記読み出し領域には、
前記セキュリティ領域を前記ユーザ端末にて認識させるためのプログラムが記憶されている、情報記憶装置。
【請求項５】
請求項２から請求項４の何れかに記載の情報記憶装置であって、
前記読み出し領域には、
前記ユーザ端末によって読み出され、前記ユーザ端末に対する使用を許可するための許可情報が記憶されている、情報記憶装置。
【請求項６】
請求項２から請求項４の何れかに記載の情報記憶装置であって、
前記セキュリティ領域には、
前記ユーザ端末によって読み出され、前記ユーザ端末に対する使用を許可するための許可情報が記憶されている、情報記憶装置。
【請求項７】
請求項２から請求項６の何れかに記載の情報記憶装置であって、
前記セキュリティ領域は、
その記憶容量が前記読み出し領域の記憶容量よりも大きい、情報記憶装置。
【請求項８】
請求項２から請求項７の何れかに記載の情報記憶装置であって、
前記コントローラは、
前記セキュリティ領域に対する読み出し処理及び書き込み処理が許容されている場合に、前記読み出し領域に対する書き込み処理を許容する、情報記憶装置。
【請求項９】
請求項２から請求項８の何れかに記載の情報記憶装置であって、
前記コントローラは、
前記セキュリティ領域に対する読み出し処理及び書き込み処理を、前記ユーザ端末を通じて送られた認証情報が正規のものであることを条件に行う、情報記憶装置。
【請求項１０】
請求項９に記載の情報記憶装置であって、
前記ＩＣチップは、
予め記憶された比較用認証情報に基づいて前記認証情報が正規のものであるか判断し、正規のものであると判断した場合に、その旨を示す情報を前記コントローラに対して送信する、情報記憶装置。
【請求項１１】
請求項２から請求項８の何れかに記載の情報記憶装置であって、
前記ＩＣチップは、
前記ユーザ端末を通じて送られた認証情報が正規のものである場合であって、かつ、管理サーバとの間で外部認証が成立した場合に、前記コントローラに対して前記セキュリティ領域の全体に対する読み出し処理及び書き込み処理を許可し、
前記ユーザ端末を通じて送られた認証情報が正規のものである場合であって、かつ、前記管理サーバとの間で外部認証が成立しなかった場合に、前記コントローラに対して前記セキュリティ領域の一部に対する読み出し処理及び書き込み処理を許可する、情報記憶装置。
【請求項１２】
請求項２から請求項１１の何れかに記載の情報記憶装置であって、
前記ＩＣチップは、
前記セキュリティ領域に記憶すべき平文情報を暗号化情報に変換して前記コントローラへ送信し、前記ユーザ端末へ送信すべき前記暗号化情報を前記平文情報に変換して前記コントローラに送信する、情報記憶装置。
【請求項１３】
請求項１２に記載の情報記憶装置であって、
前記ＩＣチップは、
前記平文情報の暗号化に用いられる暗号化用鍵、及び、前記暗号化情報の復号に用いられる復号用鍵を記憶する、情報記憶装置。
【請求項１４】
請求項２から請求項１１の何れかに記載の情報記憶装置であって、
前記ＩＣチップは、
平文情報の暗号化に用いられる暗号化用鍵、及び、暗号化情報の復号に用いられる復号用鍵を記憶し、
前記コントローラは、
前記ＩＣチップから転送された前記暗号化用鍵を用いて、前記セキュリティ領域に記憶すべき前記平文情報を暗号化し、前記ＩＣチップから転送された前記復号用鍵を用いて、前記ユーザ端末へ送信すべき前記暗号化情報を復号する、情報記憶装置。
【請求項１５】
請求項１４に記載の情報記憶装置であって、
前記暗号化用鍵及び前記復号用鍵は、
共通暗号鍵であり、
前記コントローラは、
前記チップユニットが前記チップユニット装着部から取り外された場合に、転送された前記共通暗号鍵を消去する、情報記憶装置。
【請求項１６】
請求項２に記載の情報記憶装置であって、
前記チップユニットは、
或る固有識別情報を記憶したＩＣチップを有する第１のチップユニットと、
他の固有識別情報を記憶したＩＣチップを有する第２のチップユニットとを有し、
前記コントローラは、
前記第１のチップユニットが前記チップユニット装着部に装着されている場合に、前記セキュリティ領域の一部に対する前記保護対象情報の読み出し処理及び書き込み処理を行い、
前記第２のチップユニットが前記チップユニット装着部に装着されている場合に、前記セキュリティ領域の他の一部に対する前記保護対象情報の読み出し処理及び書き込み処理を行う、情報記憶装置。
【請求項１７】
請求項１から請求項１６の何れかに記載の情報記憶装置であって、
前記チップユニット装着部は、
前記チップユニットが挿入される開口と、
前記開口を通じて挿入された前記チップユニットを保持する保持部とを有する、情報記憶装置。
【請求項１８】
（Ａ）メモリと、
（Ｂ）ユーザ端末と通信するための通信インタフェースと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、
前記チップユニットが取り外し可能に装着されるチップユニット装着部と、
（Ｅ）を有する情報記憶装置。
【請求項１９】
（Ａ）ユーザ端末と通信するための通信インタフェースと、
（Ｂ）前記ユーザ端末が有する標準機能によって前記ユーザ端末から認識され、前記ユーザ端末から読み出し可能な第１領域、及び、前記標準機能によっては前記ユーザ端末から認識されない第２領域を有するメモリであって、
前記第２領域を前記ユーザ端末から認識させるための認識機能を前記ユーザ端末に付加する認識用プログラムを、前記第１領域に記憶しているメモリと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）を有する情報記憶装置。
【請求項２０】
請求項１９に記載の情報記憶装置であって、
ＩＣチップを有するチップユニットが装着されるチップユニット装着部であって、前記チップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部を有し、
前記メモリは、
前記チップユニット装着部を前記ユーザ端末に使用させるためのプログラムを、前記第１領域に記憶している、情報記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報記憶装置に関する。
【背景技術】
【０００２】
ユーザ端末と通信可能に接続され、ユーザ端末からの情報を記憶したり、記憶した情報をユーザ端末に読み出させたりする情報記憶装置がある。近年では、可搬性を有する情報記憶装置が普及している。この種の情報記憶装置では、可搬性を有するため、記憶した情報を保護することが重要である。この点を考慮し、暗号演算処理を行うＩＣチップを有する情報記憶装置が考えられている（例えば、特許文献１を参照。）。
この情報記憶装置を使用する場合、ユーザ端末からＩＣチップを使用できるようにする必要がある。この場合、ドライバ等の専用プログラムをユーザ端末にインストールする必要がある。このプログラムは、情報記憶装置とともに提供される。例えば、ＣＤ−ＲＯＭ等の記憶媒体に記憶されている。また、インターネットを通じてダウンロードすることも行われている。
【特許文献１】国際公開第２００２／０９９７４２号パンフレット
【発明の開示】
【発明が解決しようとする課題】
【０００３】
この種の情報記憶装置では、情報記憶装置の輸送時や保管時、或いは、情報記憶装置が盗難にあった場合において、情報の漏洩を確実に防止することが求められる。すなわち、この情報記憶装置に対する不正アクセスを、高いセキュリティで阻止する必要がある。この点、従来の情報記憶装置では、ＩＣチップが一体に構成されていた。このため、ＩＣチップを解析されてしまった場合、記憶された情報が漏洩してしまう可能性があった。
また、この情報記憶装置を出先のコンピュータで使用する場合、専用プログラムを記憶した記憶媒体を持ち歩くか、インターネットを通じて専用プログラムをダウンロードする必要があった。このため、使い勝手が悪いという問題があった。
本発明は、このような事情に鑑みてなされたものであり、その主たる目的は、セキュリティ性の向上を図ることである。また、他の主たる目的は、使い勝手の向上を図ることである。
【課題を解決するための手段】
【０００４】
前記目的を達成するための主たる発明は、
（Ａ）メモリと、
（Ｂ）ユーザ端末と通信するための通信インタフェースと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットと、
（Ｅ）前記チップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、
前記チップユニットが取り外し可能に装着されるチップユニット装着部と、
（Ｆ）を有する情報記憶装置である。
【０００５】
また、他の目的を達成するための他の主たる発明は、
（Ａ）ユーザ端末と通信するための通信インタフェースと、
（Ｂ）前記ユーザ端末が有する標準機能によって前記ユーザ端末から認識され、前記ユーザ端末から読み出し可能な第１領域、及び、前記標準機能によっては前記ユーザ端末から認識されない第２領域を有するメモリであって、
前記第２領域を前記ユーザ端末から認識させるための認識機能を前記ユーザ端末に付加する認識用プログラムを、前記第１領域に記憶しているメモリと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）を有する情報記憶装置である。
本発明の他の特徴は、本明細書、及び添付図面の記載により、明らかにする。
【発明を実施するための最良の形態】
【０００６】
本明細書の記載、及び添付図面の記載により、少なくとも次のことが明らかにされる。
すなわち、（Ａ）メモリと、（Ｂ）ユーザ端末と通信するための通信インタフェースと、（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、（Ｄ）セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットと、（Ｅ）前記チップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、前記チップユニットが取り外し可能に装着されるチップユニット装着部と、（Ｆ）を有する情報記憶装置が実現できること。
このような情報記憶装置によれば、チップユニットが取り外された状態において、保護対象情報をメモリから読み出したり、メモリに書き込んだりすることができなくなる。このため、セキュリティ性の向上が図れる。例えば、取り外されたチップユニットが本体とは別の経路で搬送されたり、本体とは別の場所に保管されたりすることで、高いセキュリティ性が得られる。
【０００７】
かかる情報記憶装置であって、前記メモリは、読み出し情報が記憶される読み出し領域と、保護対象情報が記憶されるセキュリティ領域とを備え、前記コントローラは、前記読み出し領域に対する前記読み出し情報の読み出し処理を、前記チップユニットの装着状態に関わらず行い、前記セキュリティ領域に対する前記保護対象情報の読み出し処理及び書き込み処理を、前記チップユニットが前記チップユニット装着部に装着されていることを条件に行う構成が好ましい。
このような情報記憶装置によれば、チップユニットが取り外された状態であっても、読み出し領域に記憶されている読み出し情報に基づいて、ユーザ端末に所望の動作をさせることができる。このため、利便性の向上が図れる。
【０００８】
かかる情報記憶装置であって、前記読み出し領域には、前記チップユニット装着部を前記ユーザ端末に使用させるためのプログラムが記憶されている構成が好ましい。
このような情報記憶装置によれば、チップユニット装着部をユーザ端末に使用させるためのプログラムが記憶された記憶媒体を別途持ち運ぶ必要がなくなる。このため、利便性の向上が図れる。
【０００９】
かかる情報記憶装置であって、前記読み出し領域には、前記セキュリティ領域を前記ユーザ端末にて認識させるためのプログラムが記憶されている構成が好ましい。
このような情報記憶装置によれば、セキュリティ領域をユーザ端末にて認識させるためのプログラムが記憶された記憶媒体を別途持ち運ぶ必要がなくなる。このため、利便性の向上が図れる。
【００１０】
かかる情報記憶装置であって、前記読み出し領域には、前記ユーザ端末によって読み出され、前記ユーザ端末に対する使用を許可するための許可情報が記憶されている構成が好ましい。
このような情報記憶装置によれば、チップユニットが取り外された状態であっても、この情報記憶装置を、ユーザ端末を使用するための鍵として用いることができる。このため、利便性の向上が図れる。
【００１１】
かかる情報記憶装置であって、前記セキュリティ領域には、前記ユーザ端末によって読み出され、前記ユーザ端末に対する使用を許可するための許可情報が記憶されている構成が好ましい。
このような情報記憶装置によれば、チップユニットが装着され、チップユニットに対する利用者認証が成立している場合にのみ、この情報記憶装置をユーザ端末の使用をするための鍵として用いることができる。このため、高いセキュリティと利便性の向上が図れる。
【００１２】
かかる情報記憶装置であって、前記セキュリティ領域は、その記憶容量が前記読み出し領域の記憶容量よりも大きい構成が好ましい。
このような情報記憶装置によれば、メモリを有効に使用することができる。
【００１３】
かかる情報記憶装置であって、
前記コントローラは、前記セキュリティ領域に対する読み出し処理及び書き込み処理が許容されている場合に、前記読み出し領域に対する書き込み処理を許容する
構成が好ましい。
このような情報記憶装置によれば、読み出し領域に対する書き込みができる者を制限できるので、セキュリティ性を維持しつつ利便性の向上が図れる。
【００１４】
かかる情報記憶装置であって、前記コントローラは、前記セキュリティ領域に対する読み出し処理及び書き込み処理を、前記ユーザ端末を通じて送られた認証情報が正規のものであることを条件に行う構成が好ましい。
このような情報記憶装置によれば、セキュリティ性を向上させることができる。
【００１５】
かかる情報記憶装置であって、前記ＩＣチップは、予め記憶された比較用認証情報に基づいて前記認証情報が正規のものであるか判断し、正規のものであると判断した場合に、その旨を示す情報を前記コントローラに対して送信する構成が好ましい。
このような情報記憶装置によれば、チップユニットが装着されていない状態では認証情報に基づく判断が行えない。このため、セキュリティ性を向上させることができる。
【００１６】
かかる情報記憶装置であって、前記ＩＣチップは、前記ユーザ端末を通じて送られた認証情報が正規のものである場合であって、かつ、管理サーバとの間で外部認証が成立した場合に、前記コントローラに対して前記セキュリティ領域の全体に対する読み出し処理及び書き込み処理を許可し、前記ユーザ端末を通じて送られた認証情報が正規のものである場合であって、かつ、前記管理サーバとの間で外部認証が成立しなかった場合に、前記コントローラに対して前記セキュリティ領域の一部に対する読み出し処理及び書き込み処理を許可する構成が好ましい。
このような情報記憶装置によれば、認証の度合いに応じてセキュリティ領域の使用可能範囲が定められるので、使い勝手の向上が図れる。
【００１７】
かかる情報記憶装置であって、前記ＩＣチップは、前記セキュリティ領域に記憶すべき平文情報を暗号化情報に変換して前記コントローラへ送信し、前記ユーザ端末へ送信すべき前記暗号化情報を前記平文情報に変換して前記コントローラに送信する構成が好ましい。
このような情報記憶装置によれば、チップユニットが装着されていない状態において、平文情報の暗号化情報への変換、及び、暗号化情報の平文情報への変換が行えない。このため、セキュリティ性を向上させることができる。
【００１８】
かかる情報記憶装置であって、前記ＩＣチップは、前記平文情報の暗号化に用いられる暗号化用鍵、及び、前記暗号化情報の復号に用いられる復号用鍵を記憶する構成が好ましい。
このような情報記憶装置によれば、暗号化用鍵や復号用鍵をチップユニットともに、本体部分から分離することができる。このため、セキュリティ性を向上させることができる。
【００１９】
かかる情報記憶装置であって、
前記ＩＣチップは、平文情報の暗号化に用いられる暗号化用鍵、及び、暗号化情報の復号に用いられる復号用鍵を記憶し、前記コントローラは、前記ＩＣチップから転送された前記暗号化用鍵を用いて、前記セキュリティ領域に記憶すべき前記平文情報を暗号化し、前記ＩＣチップから転送された前記復号用鍵を用いて、前記ユーザ端末へ送信すべき前記暗号化情報を復号する構成が好ましい。
このような情報記憶装置によれば、処理の高速化が図れる。
【００２０】
かかる情報記憶装置であって、前記暗号化用鍵及び前記復号用鍵は、共通暗号鍵であり、前記コントローラは、前記チップユニットが前記チップユニット装着部から取り外された場合に、転送された前記共通暗号鍵を消去する構成が好ましい。
このような情報記憶装置によれば、セキュリティ性を高めることができる。
【００２１】
かかる情報記憶装置であって、前記チップユニットは、或る固有識別情報を記憶したＩＣチップを有する第１のチップユニットと、他の固有識別情報を記憶したＩＣチップを有する第２のチップユニットとを有し、前記コントローラは、前記第１のチップユニットが前記チップユニット装着部に装着されている場合に、前記セキュリティ領域の一部に対する前記保護対象情報の読み出し処理及び書き込み処理を行い、前記第２のチップユニットが前記チップユニット装着部に装着されている場合に、前記セキュリティ領域の他の一部に対する前記保護対象情報の読み出し処理及び書き込み処理を行う構成が好ましい。
このような情報記憶装置によれば、チップユニット毎に、セキュリティ領域における異なる部分が使用対象となるので、使い勝手の向上が図れる。例えば、ユーザ毎に使用領域を分けることができる。
【００２２】
かかる情報記憶装置であって、前記チップユニット装着部は、前記チップユニットが挿入される開口と、前記開口を通じて挿入された前記チップユニットを保持する保持部とを有する構成が好ましい。
【００２３】
また、次の情報記憶装置が実現できることも明らかにされる。
すなわち、（Ａ）メモリと、（Ｂ）ユーザ端末と通信するための通信インタフェースと、（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、（Ｄ）セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、前記チップユニットが取り外し可能に装着されるチップユニット装着部と、（Ｅ）を有する情報記憶装置が実現できることも明らかにされる。
このような情報記憶装置によれば、チップユニットが取り外された状態において、保護対象情報をメモリから読み出したり、メモリに書き込んだりすることができなくなる。このため、セキュリティ性の向上が図れる。
【００２４】
また、次の情報記憶装置が実現できることも明らかにされる。
すなわち、（Ａ）ユーザ端末と通信するための通信インタフェースと、（Ｂ）前記ユーザ端末が有する標準機能によって前記ユーザ端末から認識され、前記ユーザ端末から読み出し可能な第１領域、及び、前記標準機能によっては前記ユーザ端末から認識されない第２領域を有するメモリであって、前記第２領域を前記ユーザ端末から認識させるための認識機能を前記ユーザ端末に付加する認識用プログラムを、前記第１領域に記憶しているメモリと、（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、（Ｄ）を有する情報記憶装置が実現できることも明らかにされる。
このような情報記憶装置によれば、認識用プログラムが記憶された記憶媒体を別途持ち運ぶ必要がなくなる。このため、利便性の向上が図れる。
【００２５】
かかる情報記憶装置であって、ＩＣチップを有するチップユニットが装着されるチップユニット装着部であって、前記チップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部を有し、前記メモリは、前記チップユニット装着部を前記ユーザ端末に使用させるためのプログラムを、前記第１領域に記憶している構成が好ましい。
このような情報記憶装置によれば、チップユニット装着部をユーザ端末に使用させるためのプログラムが記憶された記憶媒体を別途持ち運ぶ必要がなくなる。このため、利便性の向上が図れる。
【００２６】
＝＝＝第１実施形態＝＝＝
＜情報記憶装置について＞
可搬性を有する情報記憶装置用のメモリとしては、例えばフラッシュメモリやハードディスクがある。また、ユーザ端末と情報記憶装置とを通信可能に接続するための通信インタフェースとしては、例えばＵＳＢ（Universal Serial Bus）、ＩＥＥＥ１３９４、シリアルＩ／Ｆ（インタフェース）、及び、赤外線がある。本明細書では、情報記憶装置用のメモリとしてフラッシュメモリを用い、インタフェースとしてＵＳＢを用いたＵＳＢメモリ１を例に挙げて説明する。なお、ＵＳＢメモリ１は、可搬性を有する情報記憶装置の一種に相当する。
【００２７】
＜ＵＳＢメモリ１の構成＞
まず、ＵＳＢメモリ１の全体構成について説明する。ここで、図１Ａは、ＵＳＢメモリ１の外観を説明する斜視図である。図１Ｂは、ＵＳＢメモリ１の一部分を切り欠いて示した斜視図である。図２は、ＵＳＢメモリ１、及び、ユーザ端末１１０の構成を説明するブロック図である。図３は、カードコネクタ４０を説明する斜視図である。例示したＵＳＢメモリ１は、図１Ｂ及び図２に示すように、メインコントローラ１０と、ＵＳＢ_Ｉ／Ｆ２０と、ＩＣカード３０と、カードコネクタ４０と、フラッシュメモリ５０と、筐体６０とを有する。後述するように、ＩＣカード３０は、カードコネクタ４０に対して着脱可能に構成されている。このため、ＵＳＢメモリ１におけるＩＣカード３０を除いた部分のことを、ＵＳＢメモリ１の本体部１Ａともいう。この本体部１Ａは、情報記憶装置の本体部に相当する。
【００２８】
メインコントローラ１０は、ＵＳＢメモリ１における全体的な制御を担当する。例えば、ＵＳＢ_Ｉ／Ｆ２０を制御することで、ユーザ端末１１０から送信された情報を受信したり、ユーザ端末１１０に対して情報を送信したりする。また、フラッシュメモリ５０からの情報の読み出し処理やフラッシュメモリ５０への情報の書き込み処理も制御する。さらに、メインコントローラ１０は、カードコネクタ４０を通じ、ＩＣカード３０（ＩＣチップ３２）との間で情報を送受信する。なお、カードコネクタ４０によるこの機能は、カードリーダライタまたはその機能モジュールと等価である。このメインコントローラ１０は、ＣＰＵ１１と、内部メモリ１２と、内部バス１３とを有する。ＣＰＵ１１は、制御を行う中心部分であり、内部メモリ１２に記憶されたプログラムに従って動作する。内部メモリ１２には、ＣＰＵ１１によって実行されるプログラムや動作に必要な設定値等が記憶される。内部バス１３は、ＣＰＵ１１と内部メモリ１２との間でデータを伝送する。なお、内部バス１３には、カードコネクタ４０やフラッシュメモリ５０も通信可能に接続されている。
【００２９】
ＵＳＢ_Ｉ／Ｆ２０は、ユーザ端末１１０と通信するための通信インタフェースに相当する。このＵＳＢ_Ｉ／Ｆ２０は、プラグ２１とＵＳＢコントローラ２２とを有する。プラグ２１は、ユーザ端末１１０が有するＵＳＢ_Ｉ／Ｆ１１３のポート（以下、ＵＳＢポートともいう。）に装着されるものである。ＵＳＢコントローラ２２は、メインコントローラ１０によって制御され、ユーザ端末１１０側のＵＳＢ_Ｉ／Ｆ１１３との間における通信を制御する。
【００３０】
ＩＣカード３０は、ＩＣチップ３２を有するカード型の情報媒体であり、チップユニットに相当する。前述したように、このＩＣカード３０はＵＳＢメモリ１の本体部１Ａに対して着脱可能に装着される。なお、ＩＣカード３０については後で詳しく説明する。カードコネクタ４０は、ＩＣカード３０が装着される部材であり、チップユニット装着部に相当する。図３に示すように、このカードコネクタ４０は、ガイド部材４１と、基板側端子４２とを有する。ガイド部材４１は、チップユニットの保持部に相当し、チップユニットとしてのＩＣカード３０を案内して所定位置に導いて保持する。本実施形態のガイド部材４１は、側壁部と天井部とを有する部材であり、配線基板Ｂの表面に取り付けられる。ガイド部材４１が取り付けられることで、配線基板Ｂの表面には、ＩＣカード３０が挿入される開口と、この開口を通じて挿入されたＩＣカード３０が保持される保持空間とが区画される。基板側端子４２は、ＩＣチップ３２との間で通信をするための端子である。ＩＣカード３０がカードコネクタ４０に装着されると、ＩＣチップ３２が有する接点端子群３８と接触する。この基板側端子４２は、配線を通じてメインコントローラ１０に接続されている。このため、ＩＣカード３０がカードコネクタ４０に装着されると、メインコントローラ１０とＩＣチップ３２との間で通信が可能となる。前述のとおり、カードコネクタ４０は、カードリーダライタまたはその機能モジュールと機能的に等価である。
【００３１】
フラッシュメモリ５０は、ユーザ端末１１０から受信した情報やユーザ端末１１０へ送信する情報を記憶するものである。このフラッシュメモリ５０については後で詳しく説明する。
【００３２】
筐体６０は、前述した各部を収納するための部材である。図１Ａに示すように、このＵＳＢメモリ１において筐体６０は、直方体状の外観形状をしている。そして、ＵＳＢ_Ｉ／Ｆ２０のプラグ２１は、筐体６０よりも外側に突出した状態で設けられている。これにより、ユーザ端末１１０側のＵＳＢポートにプラグ２１を直接差し込むことができる。また、筐体６０におけるプラグ２１取付面とは反対側の面には、ＩＣカード３０が挿入される貫通口６１が形成されている。
【００３３】
＜ユーザ端末１１０及び管理サーバ１２０＞
ユーザ端末１１０は、ＣＰＵ１１１と、メモリ１１２と、ＵＳＢ_Ｉ／Ｆ１１３と、通信Ｉ／Ｆ１１４と、内部バス１１５とを有する。ＣＰＵ１１１は、制御を行う中心部分であり、メモリ１１２に記憶されたプログラムに従って動作する。メモリ１１２には、ＣＰＵ１１１によって実行されるプログラムや動作に必要な設定値等が記憶される。このプログラムとしては、例えば、オペレーティングシステム（以下ＯＳともいう。）やアプリケーションプログラムがある。ＯＳは、ユーザ端末１１０における基本的な制御を行ったり、ユーザインタフェースを提供したりするプログラムである。そして、ユーザ端末１１０が有する標準機能とは、ＯＳに搭載されている機能を意味する。例えば、マイクロソフト社製のWindows（登録商標）に標準で搭載されている機能を意味する。アプリケーションプログラムは、ユーザ端末１１０に特定の機能を実現させるためのプログラムである。ＵＳＢ_Ｉ／Ｆ１１３は、ＵＳＢメモリ１と通信するための通信インタフェースに相当する。このＵＳＢ_Ｉ／Ｆ１１３は、ＵＳＢポートとＵＳＢコントローラとを有する（何れも図示せず。）。ＵＳＢポートは、ＵＳＢメモリ１が有するプラグ２１が挿入される部分である。ＵＳＢコントローラは、ＵＳＢメモリ１側のＵＳＢ_Ｉ／Ｆ２０との間における通信を制御する。通信Ｉ／Ｆ１１４は、インターネット等の外部ネットワークと通信するためのネットワークインタフェースである。内部バス１１５は、ＣＰＵ１１１、メモリ１１２、ＵＳＢ_Ｉ／Ｆ１１３、及び、通信Ｉ／Ｆ１１４との間でデータを伝送する。
【００３４】
管理サーバ１２０は、ＵＳＢメモリ１の管理等を行う。この管理サーバ１２０は、ＣＰＵ１２１と、メモリ１２２と、通信Ｉ／Ｆ１２３と、内部バス１２４とを有する。これらの各部については、ユーザ端末１１０で説明したものと同様であるので、説明は省略する。そして、管理サーバ１２０のメモリ１２２には、ＩＣチップ３２の固有ＩＤ（ＣＵＩＤ：Chip Unique IDentifier）と、ＩＣチップ３２による外部認証用の、対応する暗号演算用鍵（本実施形態では、公開鍵を外部認証に用いられる情報の復号や暗号化に用いる。）とが記憶される。これらの情報は、例えば、ＩＣチップ３２の発行時において管理サーバ１２０へ記憶される。管理サーバ１２０は、例えば、ＵＳＢメモリ１が適正に使用されているかの判断時に、必要な処理を行う。本実施形態において、この判断は、ＩＣチップ３２による管理サーバ１２０の外部認証で行われる。この場合、管理サーバ１２０は、ＩＣチップ３２に対して必要な情報を送信する。簡単に説明すると、この判断では、まず、ＩＣチップ３２が、ユーザ端末１１０を通じて、管理サーバ１２０へチャレンジコードを送信する。管理サーバ１２０は、受信したチャレンジコードに対応するレスポンスを送信する。このレスポンスは、ユーザ端末１１０を通じてＩＣチップ３２に受信される。そして、受信したレスポンスが予定されている内容であった場合、ＩＣチップ３２は、正規の使用者による使用と判断して、セキュリティ保護領域５２（図５，後述する。）へのアクセスを許可する。なお、一連の認証動作については後で説明する。
【００３５】
＝＝＝ＵＳＢメモリ１の主要部＝＝＝
＜ＩＣカード３０＞
図４Ａは、ＩＣチップ３２の構成を説明するブロック図である。図４Ｂは、ＩＣチップ３２が有する内部メモリ１２の記憶領域を説明する概念図である。ＩＣカード３０は、基板３１と、この基板３１に実装されるＩＣチップ３２とを有する。本実施形態におけるＩＣカード３０は、切手程度或いはその半分程度の大きさである。また、その厚さは１ｍｍ前後である。基板３１は、電気絶縁性を有するもの、例えばプリント配線板が用いられる。ＩＣチップ３２は、ＣＰＵ３３と、内部メモリ３４と、暗号処理回路３５と、シリアルＩ／Ｆ３６と、内部バス３７と、接点端子群３８とを有する。
ＣＰＵ３３は、内部メモリ３４に記憶されたプログラムに従って動作する。内部メモリ３４には、ＣＰＵ３３によって実行されるプログラムや動作に必要な設定値等が記憶される。例えば、図４Ｂに示すように、プログラム本体と、暗号／復号鍵と、認証情報とが記憶される。
【００３６】
ここで、プログラム本体は、ＣＰＵ３３の動作を定めるものである。暗号／復号鍵は、平文（平文情報に相当する。）を暗号文（暗号化情報に相当する。）に変換する際、及び、暗号文を平文に変換する際に用いる情報である。そして、この暗号／復号鍵は、暗号処理回路３５で用いられる。認証情報は、セキュリティ情報の一種である。この認証情報は、例えば、ユーザ端末１１０の使用者が、ＵＳＢメモリ１の情報にアクセス可能な権限を有する者か否かを判断する際に用いられる。本実施形態における認証情報は、ＰＩＮ（Personal Identification Number）である。そして、出荷時においてＰＩＮは設定されていない。このため、初回の認証時においてＰＩＮの入力を求め、これを初期のＰＩＮとして用いる。
【００３７】
暗号処理回路３５は、セキュリティ保護領域５２に記憶される情報の暗号化等（平文の暗号化や暗号文の復号を）行う。このＵＳＢメモリ１では、情報の暗号化等に際し、共通暗号鍵方式が採られている。暗号処理回路３５は、内部メモリ３４に記憶された暗号／復号鍵を用いて情報の暗号化等を行う。シリアルＩ／Ｆ３６は、メインコントローラ１０との間で情報の送受信をするためのものである。内部バス３７は、ＣＰＵ３３、内部メモリ３４、暗号処理回路３５、及び、シリアルＩ／Ｆ３６の間でデータを伝送する。接点端子群３８は、電源端子３８ａ、グランド端子３８ｂ、クロック端子３８ｃ、及び、Ｉ／Ｏ端子３８ｄを有する。電源端子３８ａは、ＩＣチップ３２が動作するための電源（例えば直流３．３Ｖ）が与えられる。グランド端子３８ｂは、グランド電位を与える端子である。なお、ＩＣチップ３２内における電源用の配線、及び、グランド用の配線は図示を省略している。クロック端子３８ｃは、ＣＰＵ３３の動作等に用いられるクロックが供給される。Ｉ／Ｏ端子３８ｄは、メインコントローラ１０との間で送受信される情報が入出力される。
【００３８】
＜フラッシュメモリ５０＞
図５は、フラッシュメモリ５０の記憶領域を説明する概念図である。フラッシュメモリ５０は、ユーザ端末１１０との間で送受信される情報を記憶するメモリである。すなわち、フラッシュメモリ５０は、ユーザ端末１１０から受信した情報を記憶したり、ユーザ端末１１０へ送信する情報を記憶したりする。このフラッシュメモリ５０は、通常アクセス可能領域５１と、セキュリティ保護領域５２とを有する。
【００３９】
通常アクセス可能領域５１は、ユーザ端末１１０が有する標準機能（例えばＯＳによって提供される機能。）によってユーザ端末１１０から認識される領域である。この通常アクセス可能領域５１は、前述したＩＣカード３０が装着されていない状態において、情報の読み出し専用領域となっている。また、ＩＣカード３０が装着された状態であっても、ユーザ端末１１０の使用者が正規ユーザと認証されるまでは情報の読み出し専用領域となっている。従って、この通常アクセス可能領域５１は、読み出し情報が記憶される読み出し領域に相当する。そして、使用者が正規ユーザと認証されると、情報の読み出しに加え、情報の書き込みも可能となる。
【００４０】
セキュリティ保護領域５２は、ユーザ端末１１０が有する標準機能によっては、ユーザ端末１１０から認識されない領域である。従って、このセキュリティ保護領域５２は、保護対象情報が記憶されるセキュリティ領域に相当する。このセキュリティ保護領域５２をユーザ端末１１０に認識させるためには、専用のプログラムをユーザ端末１１０にインストールする必要がある。また、このセキュリティ保護領域５２には、情報が暗号化された状態で記憶される。すなわち、セキュリティ保護領域５２に記憶される情報は、保護対象情報に相当する。そして、情報の暗号化や復号は、ＩＣカード３０（暗号処理回路３５）によってなされる。従って、セキュリティ保護領域５２に対する情報の書き込みや読み出しを行うためには、ＩＣカード３０をカードコネクタ４０に装着し、認証情報等に基づき使用者が正規ユーザと認証される必要がある。
【００４１】
また、セキュリティ保護領域５２の容量は、通常アクセス可能領域５１の容量よりも十分に大きく定められている。これは、セキュリティ保護領域５２と通常アクセス可能領域５１の機能の差による。後述するように、通常アクセス可能領域５１には、セキュリティ保護領域５２をユーザ端末１１０に利用させるために必要なプログラムが格納される。そして、これらのプログラムの容量は既知である。従って、最小限の容量で足りる。一方、セキュリティ保護領域５２は、ユーザ端末１１０で扱われる情報を記憶する領域である。このため、容量が大きいほど使い勝手が向上する。これらのことを考慮して、このＵＳＢメモリ１では、セキュリティ保護領域５２の容量を通常アクセス可能領域５１の容量よりも大きくし、フラッシュメモリ５０を有効に使用できるようにしている。
【００４２】
＜通常アクセス可能領域５１＞
通常アクセス可能領域５１にはプログラムとして、セキュリティミドルウェア、セキュリティメモリデバイスドライバ、チップユニットドライバ、及び、インストーラなどが記憶されている。インストーラを除く各プログラムは、ユーザ端末１１０の標準機能によっては提供されない付加機能を、ユーザ端末１１０に付加するためのものである。以下、これらのプログラムについて説明する。
【００４３】
セキュリティミドルウェアは、ＵＳＢメモリ１をユーザ端末１１０用のセキュリティキーとして用いるための機能を付加する。セキュリティキーとは、ユーザ端末１１０の使用を制限するためのものである。例えば、ユーザ端末１１０が有するＵＳＢ_Ｉ／Ｆ１１３に装着されることで、使用者（ユーザ）による操作を受け付ける。一方、ＵＳＢ_Ｉ／Ｆ１１３から取り外されると、スクリーンセーバが起動するとともに、使用者（第三者）による操作は受け付けない。このため、ユーザは、ユーザ端末１１０を使用する際にＵＳＢメモリ１（セキュリティキー）を装着し、席を離れるとき等にＵＳＢメモリ１を取り外すことで、情報の漏洩を防止することができる。また、セキュリティミドルウェアは、ＵＳＢメモリ１を許可情報記憶媒体として用いるための機能も付与する。例えば、通常アクセス可能領域５１には、ユーザ端末１１０にログオンする際のユーザＩＤ（認証情報）、ログオン用のパスワード、及び、電子署名（証明書）が記憶される。そして、ユーザは、ユーザ端末１１０へのログオン時にＵＳＢメモリ１（許可情報記憶媒体）を装着しておくことで、ユーザＩＤやパスワード等を入力することなくユーザ端末１１０を使用できる。これにより、推測され難いユーザＩＤやパスワードを設定することができ、セキュリティ性を向上させることができる。これらの機能をユーザ端末１１０に実現させるセキュリティミドルウェアは、ユーザ端末１１０の使用を使用者（ユーザ）に許可するための許可情報に相当し、認証用に用いられる他の認証情報のデータ本体も含む。
【００４４】
セキュリティメモリデバイスドライバは、前述したセキュリティ保護領域５２をユーザ端末１１０に認識させるためのプログラムである。このセキュリティメモリデバイスドライバがユーザ端末１１０にインストールされると、ユーザ端末１１０は、通常アクセス可能領域５１のアドレスに加え、セキュリティ保護領域５２のアドレスも認識する。図５の例で説明すると、ユーザ端末１１０の標準機能ではアドレス［００００］から［ｎｎｎｎ］までが認識されるのに対し、セキュリティメモリデバイスドライバがインストールされると、アドレス［００００］から［ｎｎｎｎ］に加えて、アドレス［ｓ００００］から［ｓｎｎｎｎ］も認識される。なお、アドレスの先頭に付された［ｓ］の文字は、説明の便宜上付したものである。
【００４５】
また、セキュリティメモリデバイスドライバがインストールされた状態では、セキュリティ保護領域５２のアドレスが認識されるだけである。すなわち、セキュリティ保護領域５２に対する情報の読み出しや情報の書き込みを行うためには、ＩＣチップ３２による認証を経る必要がある。
【００４６】
チップユニットドライバは、ＩＣカード３０やカードコネクタ４０をユーザ端末１１０で使用可能にするためのプログラムである。カードコネクタ４０は、ユーザ端末１１０のＯＳによって使用可能となる装置の１つとして扱われている。また、ＩＣカード３０（ＩＣチップ３２）は、ユーザ端末１１０が有する外部セキュリティ装置の１つとして扱われる。従って、ＩＣカード３０やカードコネクタ４０を使用するためには、ユーザ端末１１０にそのためのプログラム（つまり、チップユニットドライバ）をインストールする必要がある。本実施形態におけるチップユニットドライバは、リーダライタドライバとチップドライバとから構成されている。リーダライタドライバは、カードコネクタ４０をユーザ端末１１０で使用可能にするためのプログラムであり、チップドライバは、ＩＣチップ３２との間における情報の送受信を可能にするためのプログラムである。
インストーラは、前述した各プログラム（セキュリティミドルウェア，セキュリティメモリデバイスドライバ，チップユニットドライバ）を、ユーザ端末１１０にインストールする際に用いられるプログラムである。
【００４７】
＝＝＝動作について＝＝＝
＜ユーザ端末１１０の標準機能による認識＞
次に、前述した構成を有するＵＳＢメモリ１の動作について説明する。まず、ユーザ端末１１０の標準機能によるフラッシュメモリ５０の認識状態について説明する。ここで、図６Ａは、ユーザ端末１１０とＵＳＢメモリ１との間でなされる認識処理を説明するための図である。図６Ｂは、ユーザ端末１１０におけるＵＳＢメモリ１の認識状態の一例を説明するための図である。
【００４８】
ユーザ端末１１０（ＣＰＵ１１１やＵＳＢ_Ｉ／Ｆ１１３）は、ＵＳＢメモリ１が有するプラグ２１の接続を監視している（Ｓ１）。そして、プラグ２１がユーザ端末１１０のＵＳＢポートに接続されると、ユーザ端末１１０はエニュメレーションを行う（Ｓ２）。エニュメレーションとは、接続されているＵＳＢ機器の識別やアドレスの指定等を行う一連の処理である。このとき、ユーザ端末１１０とＵＳＢメモリ１との間で、アドレスやディスクリプタ（識別情報）が送受信される。このエニュメレーションを行うことで、ＵＳＢメモリ１がユーザ端末１１０から使用できる状態になる。すなわち、図２に符号Ａで示す枠内の部分が有効になる。その結果、ＵＳＢメモリ１は、ユーザ端末１１０から外部ドライブとして認識される。この例においてＵＳＢメモリ１は、図６Ｂに示すようにＤドライブとして認識される。このＤドライブ内に、セキュリティミドルウェアが記憶されたフォルダ、及び、各種のドライバが記憶されたフォルダが作成されている。前述したように、これらのフォルダは、ユーザ端末１１０からは読み出し専用のフォルダとして認識される。従って、ユーザ端末１１０から、各フォルダに記憶されたプログラムが利用できる。例えば、インストーラを実行することができる。
【００４９】
＜ドライバ等のインストール後＞
次に、ドライバ等がインストールされた場合のフラッシュメモリ５０の認識状態について説明する。ここで、図７Ａは、ドライバ等のインストールを説明するための図である。図７Ｂは、ユーザ端末１１０におけるＵＳＢメモリ１の認識状態の一例を説明するための図である。
【００５０】
インストーラの実行（Ｓ３）により、必要なドライバが通常アクセス可能領域５１内のフォルダから読み出され、ユーザ端末１１０にインストールされる（Ｓ４）。その結果、セキュリティ保護領域５２も、ユーザ端末１１０から認識できるようになる。この例では、図５に示すアドレス［ｓ００００］からアドレス［ｓｎｎｎｎ］もあることが認識される。なお、この例において、セキュリティ保護領域５２は、図７Ｂに示すように１つのフォルダとして認識される。また、インストーラの実行により、カードコネクタ４０やＩＣカード３０も使用可能となる。そして、ＩＣカード３０が使用可能になったことに伴い、メインコントローラ１０は、初期のＰＩＮが設定されているか否かを確認する。ここで、初期のＰＩＮが設定されていなかった場合、メインコントローラ１０は、ユーザ端末１１０を通じてユーザ（使用者）にＰＩＮの入力を求める。入力されたＰＩＮはＩＣチップ３２の内部メモリ３４に記憶される。また、初期のＰＩＮが入力されることで、通常アクセス可能領域５１に対する情報の書き込みが可能となる。そこで、メインコントローラ１０は、ＵＳＢメモリ１をセキュリティキーとして用いるために必要な情報の入力を求める。例えば、ユーザＩＤ、ログオンパスワード、電子署名といった情報の入力を求める。入力されたこれらの情報は、通常アクセス可能領域５１に記憶される。なお、これらの情報は、ＩＣカード３０が装着され、かつ、使用者が正規ユーザと認証された場合に書き換えることができる。
【００５１】
＜セキュリティ保護領域５２に対する処理＞
次に、セキュリティ保護領域５２に対する情報の読み出しや書き込みについて説明する。ここで、図８は、セキュリティ保護領域５２に対する情報の読み出しや書き込みを説明するための図である。なお、以下の説明において、ユーザ端末１１０には必要なドライバ等がインストールされているものとする。また、ＩＣカード３０はＵＳＢメモリ１に装着され、ＵＳＢメモリ１のプラグ２１はユーザ端末１１０のＵＳＢポートに接続されているものとする。
【００５２】
＜初回のアクセス処理について＞
初回のアクセス処理とは、ユーザの認証が済んでいない状態でのアクセス処理のことである。言い換えれば、セキュリティ保護領域５２はユーザ端末１１０から認識できているが、この領域に対するアクセスの権限はユーザ端末１１０に与えられていない状態である。この処理において、ユーザがセキュリティ保護領域５２に対するアクセスを試みると（例えば、図７Ｂのセキュリティフォルダをダブルクリックすると）、ユーザ端末１１０は、ＵＳＢメモリ１のメインコントローラ１０に対し、この領域の読み出し要求を送信する（Ｓ１１）。この読み出し要求に基づき、メインコントローラ１０は、ＩＣチップ３２に対して認証が済んでいるか否かを問い合わせる（Ｓ１２）。このタイミングでは、認証が済んでいないため、ＩＣチップ３２は、未認証の旨を示す回答をメインコントローラ１０へ送信する（Ｓ１３）。この回答を受けて、メインコントローラ１０は、ＰＩＮの入力をユーザ端末１１０に要求する（Ｓ１４）。
【００５３】
使用者がＰＩＮを入力すると、ユーザ端末１１０は、入力されたＰＩＮをメインコントローラ１０に対して送信する（Ｓ１５）。メインコントローラ１０は、入力されたＰＩＮが正規のものであるか否かをＩＣチップ３２に問い合わせる（Ｓ１６）。このとき、ＩＣチップ３２は、ドライバ等のインストール時に入力された初期のＰＩＮ（その後に書き換えられた場合には書き換え後のＰＩＮ）と、入力されたＰＩＮとを比較し、両者が一致した場合に正規のＰＩＮが入力されたと判断する。なお、この例では、正規のＰＩＮであった場合について説明している。ここで、本実施形態では、比較対象となるＰＩＮ（初期のＰＩＮ又は書き換え後のＰＩＮ）がＩＣチップ３２に記憶されている。前述したように、ＩＣチップ３２が設けられたＩＣカード３０は、ＵＳＢメモリ１の本体部１Ａに対して着脱可能である。このため、ＩＣカード３０を取り外しておくことで、ＵＳＢメモリ１の本体部１Ａが解析されたとしても、ＰＩＮが取得されることはない。これにより、セキュリティ性を高めることができる。
【００５４】
ＩＣチップ３２は、そのＰＩＮが正規のものであるかを判断し、正規のものであった場合、管理サーバ１２０に対する外部認証を試みる。このため、ＩＣチップ３２は、チャレンジコードを生成する。そして、生成したチャレンジコードをメインコントローラ１０やユーザ端末１１０を通じて、管理サーバ１２０へ送信する（Ｓ１７〜Ｓ１９）。チャレンジコードは、乱数を含む情報を暗号化した暗号化情報と、ＩＣチップ３２の固有ＩＤ（ＣＵＩＤ）とを組にしたものである。この実施形態における暗号化情報は、ＩＣチップ３２で生成された乱数、ＣＵＩＤ及びフラッシュメモリ５０の固有ＩＤで構成される情報を、ＩＣチップ３２が保有する暗号鍵（秘密鍵または私有鍵ともいう）で暗号化したものである。また、チャレンジコードの一部を構成するＣＵＩＤは、平文情報である。
管理サーバ１２０は、チャレンジコードからＣＵＩＤを認識し、このＣＵＩＤに基づいて対応する暗号鍵を選択する。そして、選択した暗号鍵を用いて暗号化情報を復号し、暗号化情報に含まれる乱数を取得する。そして、取得した乱数を基にして構成される情報を、暗号鍵を用いて暗号化することで、レスポンスデータを生成する。管理サーバ１２０は、生成したレスポンスデータを、ユーザ端末１１０やメインコントローラ１０を通じて、ＩＣチップ３２へ送信する（Ｓ２０〜Ｓ２２）。ＩＣチップ３２は、保有する暗号鍵によってレスポンスデータを復号し、乱数を取得する。そして、取得した乱数がチャレンジコードの生成時に用いた乱数と一致した場合に、ＩＣチップ３２は外部認証の成立と判定する。
【００５５】
外部認証の成立に伴い、ＩＣチップ３２は、読み出しを許可する旨をメインコントローラ１０へ送信する（Ｓ２３）。そして、メインコントローラ１０は、セキュリティ保護領域５２に対する読み出し処理及び書き込み処理を許可する。この場合において、メインコントローラ１０は、読み出し対象となる対象データを、フラッシュメモリ５０のセキュリティ保護領域５２から読み出す（Ｓ２４）。このように、本実施形態では、ユーザ端末１１０を通じて送られたＰＩＮ（認証情報）が正規のものであること、及び、管理サーバ１２０との外部認証が成立したことを条件に、セキュリティ保護領域５２に対する読み出し処理及び書き込み処理が許可される。そして、管理サーバ１２０との外部認証は、ＩＣチップ３２が送信したチャレンジデータに対する管理サーバ１２０のレスポンスに基づいて行われる。このため、正規のＩＣチップ３２を装着していないと、セキュリティ保護領域５２に記憶された情報を読み出すことができない。このため、セキュリティ保護領域５２に記憶された情報を読み出そうとする悪意の試みを有効に防止できる。
【００５６】
ここで、読み出した対象データは暗号化された状態にある。このため、メインコントローラ１０は、この対象データをＩＣチップ３２に送信する（Ｓ２５）。ＩＣチップ３２では、暗号化されている対象データを、内部メモリ３４に記憶された暗号／復号鍵（復号用鍵に相当する。）によって復号し、平文にする。そして、平文の対象データをメインコントローラ１０へ送信する（Ｓ２６）。メインコントローラ１０は、平文の対象データをユーザ端末１１０に送信する（Ｓ２７）。これにより、ユーザ端末１１０では、平文の対象データが利用される。例えば、ユーザインタフェースを介して、セキュリティ保護領域５２に記憶された情報（対象データ）の内容が視認される。
【００５７】
＜２回目以降のアクセス処理について＞
次に、２回目以降のアクセス処理について説明する。まず、ユーザ端末１１０からの情報の書き込み処理について説明する。この場合、ユーザ端末１１０からメインコントローラ１０に対して書き込み要求が送信される（Ｓ３１）。この書き込み要求に基づき、メインコントローラ１０は、ＩＣチップ３２に対して認証が済んでいるか否かを問い合わせる（Ｓ３２）。このタイミングでは認証が済んでいるので、ＩＣチップ３２は、認証済みの旨を示す回答をメインコントローラ１０へ送信する（Ｓ３３）。この回答を受けて、メインコントローラ１０は、書き込み対象となる対象データをユーザ端末１１０から受信する（Ｓ３４）。この対象データは、平文であるので暗号化する必要がある。このため、メインコントローラ１０は、平文の対象データをＩＣチップ３２に送信する（Ｓ３５）。そして、ＩＣチップ３２は、内部メモリ３４に記憶された暗号／復号鍵（暗号化用鍵に相当する。）を用い、送信された対象データを暗号化する。そして、メインコントローラ１０に送信する（Ｓ３６）。さらに、メインコントローラ１０は、暗号化された対象データをフラッシュメモリ５０のセキュリティ保護領域５２に記憶する（Ｓ３７）。
【００５８】
次に、ユーザ端末１１０からの情報の読み出し処理について説明する。この場合、ユーザ端末１１０からメインコントローラ１０に対して読み出し要求が送信される（Ｓ４１）。この読み出し要求に基づき、メインコントローラ１０は、ＩＣチップ３２に対して認証が済んでいるか否かを問い合わせる（Ｓ４２）。このタイミングでも認証が済んでいるため、ＩＣチップ３２は、認証済みの旨を示す回答をメインコントローラ１０へ送信する（Ｓ４３）。この回答を受けて、メインコントローラ１０は、読み込み対象となる対象データをフラッシュメモリ５０のセキュリティ保護領域５２から読み込む（Ｓ４４）。この対象データは、暗号化されているので、ユーザ端末１１０で認識するためには復号する必要がある。このため、メインコントローラ１０は、暗号化された対象データをＩＣチップ３２に送信する（Ｓ４５）。そして、ＩＣチップ３２は、内部メモリ３４に記憶された暗号／復号鍵を用い、送信された対象データを平文にする（復号する）。そして、メインコントローラ１０に送信する（Ｓ４６）。さらに、メインコントローラ１０は、平文の対象データをユーザ端末１１０に送信する（Ｓ４７）。その結果、ユーザ端末１１０では、セキュリティ保護領域５２に記憶された情報を利用できる。
なお、一連の処理が済んでＵＳＢメモリ１が取り外された場合、次回の使用時に再度初回のアクセス処理で説明した認証が行われる。
【００５９】
＜まとめ＞
以上説明したように、このＵＳＢメモリ１では、チップユニットとしてのＩＣカード３０がＵＳＢメモリ１の本体部１Ａに対して着脱可能に構成されている。そして、フラッシュメモリ５０が有するセキュリティ保護領域５２に対し、ユーザ端末１１０からアクセスするためには認証を行う必要がある。ここで、認証情報としてのＰＩＮはＩＣカード３０が有するＩＣチップ３２に記憶されている。また、セキュリティ保護領域５２に対して記憶される情報は暗号化されている。このため、この情報を利用するためには、ＩＣチップ３２による暗号化や復号等を経る必要がある。従って、ＩＣカード３０が取り外された状態では、フラッシュメモリ５０のセキュリティ保護領域５２に対するアクセスができなくなる。すなわち、セキュリティ保護領域５２に対する情報の書き込みやセキュリティ保護領域５２からの情報の読み出しができなくなる。その結果、セキュリティ性の向上が図れる。例えば、機密情報を記憶したＵＳＢメモリ１を保管する場合において、ＵＳＢメモリ１の本体部１ＡとＩＣカード３０とを別々の場所に保管することで、記憶された機密情報への不正アクセス（盗難を含め）を、より高いセキュリティで防止することができる。同様に、このＵＳＢメモリ１を他の場所で使用する場合において、ＵＳＢメモリ１の本体部１Ａを郵送しＩＣカード３０を持参する等して物理的に分離することで、機密情報の漏洩が確実に防止できる。
【００６０】
また、セキュリティ保護領域５２は、ＩＣカード３０が装着され、かつ、認証が得られないとユーザ端末１１０からは認識されない。このように、セキュリティ保護領域５２が認識されないことによってもセキュリティ性の向上が図れる。加えて、ＩＣカード３０をＵＳＢメモリ１の本体部１Ａとは別工程で作成することもできる。このため、ＩＣカード３０内に記憶する情報（ＰＩＮ等の認証情報）を、ユーザ固有のものとすることもできる。例えばＳＩＭ（Subscriber Identity Module）によって構成することができる。これにより、本体部１Ａを共通化することができ、生産効率の向上が図れる。
【００６１】
また、このＵＳＢメモリ１では、フラッシュメモリ５０の通常アクセス可能領域５１に記憶された情報が利用できる。例えば、通常アクセス可能領域５１に記憶されたセキュリティミドルウェア（許可情報に相当し、認証用に含まれる他の認証情報のデータ本体も含まれる。）によって、ＵＳＢメモリ１をセキュリティキーとしても使用することができる。加えて、通常アクセス可能領域５１は、ユーザ端末１１０の標準機能によって認識される。このため、ＩＣカード３０が装着されていなくても種々の機能が実現できる。例えば、この通常アクセス可能領域５１には、ＵＳＢメモリ１が有するカードコネクタ４０用のドライバやＩＣカード３０用のドライバ、及び、セキュリティ保護領域５２をユーザ端末１１０に認識させるためのプログラム（セキュリティメモリデバイスドライバ）が記憶されている。このため、ＣＤ−ＲＯＭ等の記憶媒体を持ち運ばなくてもセキュリティ保護領域５２に記憶された情報（保護対象情報）を利用できる。このため、ＵＳＢメモリ１の利便性を向上させることができる。
【００６２】
加えて、この通常アクセス可能領域５１は、セキュリティ保護領域５２が利用できない状態では読み出し専用領域となっている。一方、セキュリティ保護領域５２に対するアクセスが可能となっている状態では書き込みも許容される。このため、通常アクセス可能領域５１に情報を書き込むことのできる者を正規ユーザ等に制限できる。従って、セキュリティ性を維持しつつ利便性の向上が図れる。
【００６３】
＝＝＝その他の実施形態＝＝＝
前述した実施形態では、情報記憶装置としてＵＳＢメモリ１を例に挙げて説明した。この説明の中には、情報の記憶方法や、情報記憶装置を制御するためのコンピュータプログラム及びコードの説明も含まれている。また、この実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることはいうまでもない。特に、以下に述べる実施形態であっても、本発明に含まれる。
【００６４】
＜情報記憶装置について＞
前述した実施形態では、情報記憶装置として、ユーザ端末１１０に用いられる情報をフラッシュメモリ５０に記憶するＵＳＢメモリ１について説明したが、この構成に限定されるものではない。例えば、ユーザ端末１１０に用いられる情報を他の種類の記憶媒体に記憶させてもよい。図９の例は、ユーザ端末１１０に用いられる情報をハードディスクに記憶するＵＳＢハードディスク７０（情報記憶装置の一種）である。なお、ＵＳＢハードディスク７０は、フラッシュメモリ５０がハードディスク７１に置き換わった点、及び、プラグ２１がポート７２に置き換わった点がＵＳＢメモリ１と相違するが、他の構成は同じである。このため、説明は省略する。
【００６５】
＜認証と使用可能領域の関係について＞
前述した実施形態では、ＩＣチップ３２による管理サーバ１２０の外部認証が成立した場合に、セキュリティ保護領域５２に対する情報の書き込みや読み出しができる構成となっていた。この点に関し、セキュリティ保護領域５２を複数のサブ領域に分割し、使用可能なサブ領域を、認証の成立状況に応じて定めてもよい。例えば、図１０に示すように、第１サブ領域５２ａ〜第４サブ領域５２ｄをセキュリティ保護領域５２に設けた場合について説明する。この場合、ＰＩＮ認証は成立したが、管理サーバ１２０との間で認証が成立しなかった場合には、一部のサブ領域が使用可能となる。例えば、第１サブ領域５２ａ及び第２サブ領域５２ｂが使用可能となり、第３サブ領域５２ｃ及び第４サブ領域５２ｄは使用できない。また、ＰＩＮ認証が成立し、かつ、管理サーバ１２０との認証も成立した場合には、第１サブ領域５２ａ〜第４サブ領域５２ｄの各領域が使用可能となる。
【００６６】
このときＩＣチップ３２は、ユーザ端末１１０を通じて送られたＰＩＮ（認証情報）が正規のものである場合であって、かつ、管理サーバ１２０との間で外部認証が成立した場合に、メインコントローラ１０に対してセキュリティ保護領域５２の全体に対する読み出し処理及び書き込み処理を許可し、ユーザ端末１１０を通じて送られたＰＩＮが正規のものである場合であって、かつ、管理サーバ１２０との間で外部認証が成立しなかった場合に、メインコントローラ１０に対してセキュリティ保護領域５２の一部に対する読み出し処理及び書き込み処理を許可する。このように、認証の段階に応じて、セキュリティ保護領域５２における書き込みや読み出しが行える領域を定めるようにすると、使用状況に応じてセキュリティレベルを異ならせることができる。例えば、社内のイントラネットなどセキュリティ性が高い環境では、セキュリティ保護領域５２の全体を使用できるようにし、出先のユーザ端末１１０で使用する場合には一部のセキュリティ保護領域５２ａ，５２ｂしか使用できないようにすると、出先のユーザ端末１１０からは使用できない領域５２ｃ，５２ｄに高い機密性を持たせることができる。その結果、１つのセキュリティ保護領域５２を有効に活用することができ、使い勝手を向上させることができる。
【００６７】
勿論、使用の簡便性を重視し、入力されたＰＩＮ（認証情報）が正規のものであったことを条件に、セキュリティ保護領域５２の全体を使用できるようにしてもよい。この場合、ユーザ端末１１０を通じて送られたＰＩＮが正規のものであると、ＩＣチップ３２は、その旨を示す情報（例えばチャレンジコードや専用情報）をメインコントローラ１０へ送信する。メインコントローラ１０は、この情報の受信に基づき、セキュリティ保護領域５２の全体に対して情報の読み書きができる状態になる。このように構成することで、管理サーバ１２０とは通信できない状態のユーザ端末１１０に対してＵＳＢメモリ１を用いる場合に、その使い勝手を向上させることができる。
【００６８】
＜暗号化処理について＞
前述した実施形態では、セキュリティ保護領域５２に記憶される情報の暗号化、及び、セキュリティ保護領域５２から読み出された情報の復号は、ＩＣチップ３２によってなされていた。これらの暗号化及び復号の処理を、メインコントローラ１０に行わせてもよい。この場合、ＩＣチップ３２からメインコントローラ１０に対し、暗号／復号鍵を秘密状態で転送する必要がある。また、前記暗号／復号鍵の暗号化／復号の手順を定める制御情報に関し、構成によっては、ＩＣチップ３２からメインコントローラ１０に対し、秘密状態での転送が必要となる場合も考えられる。さらに、ＩＣチップ３２が取り外された状態では、暗号／復号鍵を読み取られないようにする必要がある。これらを考慮すると、次の構成を採ることが好ましい。
【００６９】
まず、平文情報の暗号化に用いられる暗号化用鍵、及び、暗号化情報の復号に用いられる復号用鍵としては、共通暗号鍵を用いる。すなわち、図４Ｂに示す暗号／復号鍵として共通暗号鍵が用いられる。この共通暗号鍵は、ＩＣチップ３２における耐タンパを有する記憶領域に記憶される。また、メインコントローラ１０及びＩＣチップ３２のそれぞれには、共通暗号鍵や制御プログラム（以下、共通暗号鍵等ともいう。）のやり取りに用いる暗号化や復号の共通アルゴリズムが実装されている。
【００７０】
共通暗号鍵等の転送は、例えば、ＩＣチップ３２によるＰＩＮ認証が成立した後に行われる。この場合、まず、ＩＣチップ３２からメインコントローラ１０に対して乱数を要求する指令を送信する。この指令に基づき、メインコントローラ１０は乱数を生成する。生成した乱数は、メインコントローラ１０にて一時的に記憶される。また、メインコントローラ１０は、共通アルゴリズムによる符号化を行うことで、生成した乱数を含むレスポンスデータを生成し、このレスポンスデータをＩＣチップ３２へ送信する。ＩＣチップ３２は、受信したレスポンスデータを共通アルゴリズムで復号し、乱数を取得する。また、ＩＣチップ３２では、取得した乱数をいわゆるセッション鍵として用い、記憶している共通暗号鍵等を共通アルゴリズムで符号化する。これにより、レスポンスデータが生成される。そして、このレスポンスデータは、メインコントローラ１０へ送信される。ＩＣチップ３２からのレスポンスデータを受信すると、メインコントローラ１０は、一時的に記憶している乱数を用い、共通アルゴリズムによる復号を行うことで、レスポンスデータから共通暗号鍵等を取得する。この例では、ＩＣチップ３２からの明示的な要求に基づいて、メインコントローラ１０は乱数を生成している。このため、共通のプロトコルを実装した系でないと処理が行えない。すなわち、ＩＣチップ３２が装着されない状態では、情報の暗号化や復号が行えない。その結果、高いセキュリティを保つことができる。
【００７１】
これらの共通暗号鍵、及び、制御プログラムは、メインコントローラ１０が有する揮発性メモリに記憶される。この揮発性メモリは、メモリ１２の一部に設けられている。そして、ＣＰＵ１１は、共通暗号鍵等を用いてセキュリティ保護領域５２に記憶する情報の暗号化、及び、セキュリティ保護領域５２から読み出す情報の復号を行う。これらの場合において、メインコントローラ１０は、暗号化処理や復号処理を行う度に、ＩＣチップ３２の装着確認を行う。すなわち、暗号化処理や復号処理は、ＩＣカード３０がカードコネクタ４０に正常に（通信可能に）装着されていることを条件に行われる。そして、ＩＣカード３０がカードコネクタ４０から抜き取られた場合には、直ちに揮発性メモリから共通暗号鍵等が消去される。また、電源が切断された場合や、プラグ２１がＵＳＢ_Ｉ／Ｆ１１３のポートから取り外された場合も、直ちに揮発性メモリから共通暗号鍵等が消去される。このため、ＩＣカード３０が抜き取られた場合等におけるセキュリティレベルを高めることができる。なお、少なくとも共通暗号鍵が消去されれば、高いセキュリティ性を確保することができる。
以上説明したように、この例では、メインコントローラ１０による処理の高速性とセキュリティ性の確保とが、高いレベルで両立できる。
【００７２】
＜管理サーバ１２０について＞
前述した実施形態では、ＩＣチップ３２のメモリ３４に、暗号／復号鍵、及び、認証情報が記憶されていた。この構成では、ＩＣチップ３２が破損した場合や紛失した場合に、セキュリティ保護領域５２に記憶されている暗号化情報が読み出せなくなってしまうという問題が生じる。このような問題を解決するため、管理サーバ１２０に、暗号／復号鍵、及び、認証情報を記憶するようにしてもよい。このように構成することで、万一、ＩＣチップ３２が破損したり紛失したりしても、同じ情報を記憶したＩＣチップ３２を作製できる。要するに、キーリカバリ機能／キーエスクロー機能を持たせることができる。これにより、使い勝手を向上させることができる。この場合において、暗号／復号鍵等は、ＨＳＭ（Hardware Security Module）のような耐タンパ性を有するデバイスに記憶することが好ましい。
【００７３】
＜ＩＣカード３０について＞
前述の実施形態では、１つのＵＳＢメモリ１の本体部１Ａに対し、１種類のＩＣカード３０（固有ＩＤが１つ）が用いられていた。しかし、１つのＵＳＢメモリ１の本体部１Ａに対し、複数種類のＩＣカード３０を用いてもよい。この場合、セキュリティを考慮すると、或るＩＣカード３０が装着された場合にはセキュリティ保護領域５２の或る領域に対して情報の書き込みと読み出しが可能となり、他のＩＣカード３０が装着された場合にはセキュリティ保護領域５２の他の領域に対して情報の書き込みと読み出しが可能となることが求められる。そこで、或る固有ＩＤ（固有識別情報）を記憶したＩＣチップ３２を有するＩＣカード３０で暗号化された情報を記憶した領域は、他の固有ＩＤを記憶したＩＣチップ３２を有するＩＣカード３０ではアクセスできない構成としてもよい。
図１１に示す例では、或る固有ＩＤを記憶したＩＣチップ３２を有する第１のＩＣカード３０Ａで暗号化された情報が、セキュリティ保護領域５２の第１領域５２ｅに記憶されている。その後、第１のＩＣカード３０Ａが抜き取られ、他の固有ＩＤを記憶したＩＣチップ３２を有する第２のＩＣカード３０Ｂが装着される。そして、第２のＩＣカード３０Ｂで暗号化された情報が、第１領域５２ｅ以外の領域（例えば第２領域５２ｆ）に記憶される。
【００７４】
この例において、メインコントローラ１０は、固有ＩＤに基づいて、装着されたＩＣカード３０の種類を認識する。そして、情報の記憶可能領域を認識する。第１のＩＣカード３０Ａが装着された状態では、セキュリティ保護領域５２には情報が記憶されていない。このため、メインコントローラ１０は、全領域を情報の記憶可能領域として認識する。そして、第１領域５２ｅに情報が記憶されると、この第１領域５２ｅのアドレスを第１のＩＣカード３０Ａの専用領域としてメモリ１２に記憶する。次に、第２のＩＣカード３０Ｂが装着されると、メインコントローラ１０は、第１領域５２ｅを除く領域を情報の記憶可能領域として認識する。このとき、メインコントローラ１０は、第１領域５２ｅの存在を表示させない。このため、第２のＩＣカード３０Ｂのユーザには、第１領域５２ｅを除く領域が空き領域として表示される。そして、情報は、この空き領域の一部である第２領域５２ｆに記憶される。第２領域５２ｆに情報が記憶された後に、再度第１のＩＣカード３０Ａが装着されると、第２領域５２ｆを除く領域が情報の記憶や読み出しのできる対象領域として認識される。以後は、同様の処理がなされる。従って、第３のＩＣカード３０Ｃが装着された場合には、第１領域５２ｅ及び第２領域５２ｆを除く領域が空き領域として認識される。
【００７５】
このように、この例では、ＩＣカード３０Ａ〜３０Ｃ毎に専用領域が定められ、その専用領域に対して暗号化情報の書き込みや読み出しがなされる。その結果、セキュリティ性を確保しつつ、複数のユーザで記憶領域を有効に活用することができる。
【００７６】
＜セキュリティ保護領域５２について＞
前述の実施形態では、ＩＣカード３０の装着を条件に情報の書き込み等ができるセキュリティ保護領域５２を、フォルダで認識させるように構成していた。認識の態様はフォルダに限定されるものではない。例えば、「ボリューム」や「パーティション」といったように、論理ディスクとして認識させることもできる。そして、大容量記憶媒体としての利用によって制約をなくすことができる。すなわち、それぞれを独立した「論理ディスク」として利用することができる。
【００７７】
＜セキュリティミドルウェアについて＞
前述の実施形態では、セキュリティミドルウェアが通常アクセス可能領域５１に記憶されていた。このセキュリティミドルウェアを、セキュリティ保護領域５２に記憶させるように構成してもよい。この場合、ＩＣチップ３２がカードコネクタ４０に装着されないと、ＵＳＢメモリ１をセキュリティキーとして用いることができない。このため、高いセキュリティが確保できるとともに、利便性の向上が図れる。また、セキュリティミドルウェアのうち、ユーザ端末使用許可情報などの他の認証情報のデータ本体を、ＩＣチップ３２の記憶領域に記憶させるようにしてもよい。この場合も、ＩＣチップ３２がカードコネクタ４０に装着されないと、ＵＳＢメモリ１をセキュリティキーとして用いることができないため、高いセキュリティ性を確保することができる。
【００７８】
＜通常アクセス可能領域５１に記憶させる情報について＞
前述した実施形態では、通常アクセス可能領域５１に対してドライバやインストーラを記憶させていたが、この通常アクセス可能領域５１に他の情報を記憶させてもよい。この通常アクセス可能領域５１は、ＩＣカード３０が装着されていない状態では読み出し専用であるので、この点を利用して特定のアプリケーションプログラムのみが利用できる領域としてもよい。例えば、電子的著作権保護の対象となっているデータを記憶するようにしてもよい。この場合、必要に応じて、通常アクセス可能領域５１に記憶させる情報も暗号化してもよい。
【００７９】
＜ユーザ端末１１０との間のインタフェースについて＞
前述した実施形態では、ユーザ端末１１０との間のインタフェースとして、ＵＳＢを例に挙げて説明した。しかし、他の形式のインタフェースであってもよい。例えば、ＩＥＥＥ１３９４、シリアルＩ／Ｆ、或いは、赤外線であってもよい。
【００８０】
＜ＩＣチップ３２のインタフェースについて＞
前述した実施形態では、ＩＣチップ３２とメインコントローラ１０とは、チップユニット装着部の基板側端子４２を通じて接続されていた。この点に関し、ＩＣチップ３２とメインコントローラ１０とを無線（例えば電磁誘導方式）で接続するようにしてもよい。
【００８１】
＜認証情報について＞
前述した実施形態では、認証情報としてＰＩＮやチャレンジコードを用いていたが、認証情報はこれらに限定されるものではなく、種々の情報を用いることができる。例えば、指紋や静脈等の生体認証情報を用いてもよいし、パスワードを用いてもよい。
【００８２】
＜情報記憶装置について＞
前述した実施形態では、可搬性を有するＵＳＢメモリ１を例に挙げて説明したが、可搬性を有さない大容量の情報記憶装置であっても、同様に構成できる。
【図面の簡単な説明】
【００８３】
【図１】図１Ａは、ＵＳＢメモリの外観を説明する斜視図である。図１Ｂは、ＵＳＢメモリの一部分を切り欠いて示した斜視図である。
【図２】ＵＳＢメモリ、及び、ユーザ端末の構成を説明するブロック図である。
【図３】カードコネクタを説明する斜視図である。
【図４】図４Ａは、ＩＣチップの構成を説明するブロック図である。図４Ｂは、ＩＣチップが有する内部メモリの記憶領域を説明する概念図である。
【図５】フラッシュメモリの記憶領域を説明する概念図である。
【図６】図６Ａは、ユーザ端末とＵＳＢメモリとの間でなされる認識処理を説明するための図である。図６Ｂは、ユーザ端末におけるＵＳＢメモリの認識状態の一例を説明するための図である。
【図７】図７Ａは、ドライバ等のインストールを説明するための図である。図７Ｂは、ユーザ端末におけるＵＳＢメモリの認識状態の一例を説明するための図である。
【図８】セキュリティ保護領域に対する情報の読み出しや書き込みを説明するための図である。
【図９】情報記憶装置の他の構成を説明するための図である。
【図１０】情報記憶装置の応用例を説明するための図である。
【図１１】情報記憶装置の他の応用例を説明するための図である。
【符号の説明】
【００８４】
１  ＵＳＢメモリ，１Ａ  ＵＳＢメモリの本体部，
１０  メインコントローラ，１１  ＣＰＵ，１２  内部メモリ，１３  内部バス，
２０  ＵＳＢ_Ｉ／Ｆ，２１  プラグ，２２  ＵＳＢコントローラ，
３０（３０Ａ〜３０Ｃ）  ＩＣカード，３１  基板，３２  ＩＣチップ，
３３  ＣＰＵ，３４  内部メモリ，３５  暗号処理回路，３６  シリアルＩ／Ｆ，
３７  内部バス，３８  接点端子群，３８ａ  電源端子，３８ｂ  グランド端子，
３８ｃ  クロック端子，３８ｄ  Ｉ／Ｏ端子，
４０  カードコネクタ，４１  ガイド部材，４２  基板側端子，
５０  フラッシュメモリ，５１  通常アクセス可能領域，
５２  セキュリティ保護領域，６０  筐体，６１  貫通口，
７０  ＵＳＢハードディスク，７１  ハードディスク，７２  ポート，
１１０  ユーザ端末，１１１  ＣＰＵ，１１２  メモリ，
１１３  ＵＳＢ_Ｉ／Ｆ，１１４  通信Ｉ／Ｆ，１１５  内部バス，
１２０  管理サーバ，１２１  ＣＰＵ，１２２  メモリ，
１２３  通信Ｉ／Ｆ，１２４  内部バス，Ｂ  配線基板
【図１】
2008015744.tif 000003
【図２】
2008015744.tif 000004
【図３】
2008015744.tif 000005
【図４】
2008015744.tif 000006
【図５】
2008015744.tif 000007
【図６】
2008015744.tif 000008
【図７】
2008015744.tif 000009
【図８】
2008015744.tif 000010
【図９】
2008015744.tif 000011
【図１０】
2008015744.tif 000012
【図１１】
2008015744.tif 000013
【手続補正書】
【提出日】平成18年10月17日(2006.10.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（Ａ）読み出し情報が記憶される読み出し領域と、保護対象情報が記憶されるセキュリティ領域とを備えたメモリと、
（Ｂ）ユーザ端末と通信するための通信インタフェースと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）前記セキュリティ領域に対するアクセス権限を有する正規の使用者か否かを少なくとも前記ユーザ端末を通じて送られた認証情報に基づいて判断するセキュリティ処理を行うＩＣチップであって、前記セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットと、
（Ｅ）前記チップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、
前記チップユニットが取り外し可能に装着されるチップユニット装着部と、
を有し、
（Ｆ）前記コントローラは、
前記ユーザ端末からの要求に基づく前記読み出し領域に対する前記読み出し情報の読み出し処理を、前記チップユニットの装着状態に関わらず行い、
前記ユーザ端末からの要求に基づく前記セキュリティ領域に対する前記保護対象情報の読み出し処理及び書き込み処理を、前記チップユニットが前記チップユニット装着部に装着され、かつ、前記セキュリティ処理で、前記ユーザ端末の使用者が前記正規の使用者と判断されたことを条件に行う、情報記憶装置。
【請求項２】
請求項１に記載の情報記憶装置であって、
前記読み出し領域には、
前記チップユニット装着部を前記ユーザ端末に使用させるためのプログラムが記憶されている、情報記憶装置。
【請求項３】
請求項１又は請求項２に記載の情報記憶装置であって、
前記読み出し領域には、
前記セキュリティ領域を前記ユーザ端末にて認識させるためのプログラムが記憶されている、情報記憶装置。
【請求項４】
請求項１から請求項３の何れかに記載の情報記憶装置であって、
前記読み出し領域には、
前記ユーザ端末によって読み出され、前記ユーザ端末の使用が許可される特定の使用者か否かを、前記ユーザ端末に判断させるための許可情報が記憶されている、情報記憶装置。
【請求項５】
請求項１から請求項３の何れかに記載の情報記憶装置であって、
前記セキュリティ領域には、
前記ユーザ端末によって読み出され、前記ユーザ端末の使用が許可される特定の使用者か否かを、前記ユーザ端末に判断させるための許可情報が記憶されている、情報記憶装置。
【請求項６】
請求項１から請求項５の何れかに記載の情報記憶装置であって、
前記セキュリティ領域は、
その記憶容量が前記読み出し領域の記憶容量よりも大きい、情報記憶装置。
【請求項７】
請求項１から請求項６の何れかに記載の情報記憶装置であって、
前記コントローラは、
前記ＩＣチップによる前記セキュリティ処理で前記使用者が前記正規の使用者と判断され、前記セキュリティ領域に対する読み出し処理及び書き込み処理が許容されている場合に、前記読み出し領域に対する書き込み処理を許容する、情報記憶装置。
【請求項８】
請求項１から請求項７の何れかに記載の情報記憶装置であって、
前記ＩＣチップは、
前記ユーザ端末を通じて送られた認証情報が正規のものであるか否かを、予め記憶された比較用認証情報との比較により判断し、
前記コントローラは、
前記セキュリティ領域に対する読み出し処理及び書き込み処理を、前記認証情報が正規のものであることを条件に行う、情報記憶装置。
【請求項９】
請求項８に記載の情報記憶装置であって、
前記ＩＣチップは、
前記認証情報が正規のものであると判断した場合に、その旨を示す情報を前記コントローラに対して送信する、情報記憶装置。
【請求項１０】
請求項１から請求項７の何れかに記載の情報記憶装置であって、
前記ＩＣチップは、
前記ユーザ端末を通じて送られた認証情報が正規のものである場合であって、かつ、前記ユーザ端末と通信可能に接続された管理サーバとの間で外部認証が成立した場合に、前記コントローラに対して前記セキュリティ領域の全体に対する読み出し処理及び書き込み処理を許可し、
前記ユーザ端末を通じて送られた認証情報が正規のものである場合であって、かつ、前記管理サーバとの間で外部認証が成立しなかった場合に、前記コントローラに対して前記セキュリティ領域の一部に対する読み出し処理及び書き込み処理を許可する、情報記憶装置。
【請求項１１】
請求項１から請求項１０の何れかに記載の情報記憶装置であって、
前記ＩＣチップは、
前記ユーザ端末から送信された平文情報を前記セキュリティ領域に記憶すべき暗号化情報に変換して前記コントローラへ送信し、前記セキュリティ領域に記憶された前記暗号化情報を前記ユーザ端末へ送信すべき平文情報に変換して前記コントローラに送信する、情報記憶装置。
【請求項１２】
請求項１１に記載の情報記憶装置であって、
前記ＩＣチップは、
前記平文情報の暗号化に用いられる暗号化用鍵、及び、前記暗号化情報の復号に用いられる復号用鍵を記憶する、情報記憶装置。
【請求項１３】
請求項１から請求項１０の何れかに記載の情報記憶装置であって、
前記ＩＣチップは、
平文情報の暗号化に用いられる暗号化用鍵、及び、暗号化情報の復号に用いられる復号用鍵を記憶し、
前記コントローラは、
前記ＩＣチップから転送された前記暗号化用鍵を用いて、前記ユーザ端末から送信された前記平文情報を前記セキュリティ領域に記憶すべく暗号化し、前記ＩＣチップから転送された前記復号用鍵を用いて、前記セキュリティ領域に記憶された前記暗号化情報を前記ユーザ端末へ送信すべく復号する、情報記憶装置。
【請求項１４】
請求項１３に記載の情報記憶装置であって、
前記暗号化用鍵及び前記復号用鍵は、
共通暗号鍵であり、
前記コントローラは、
前記チップユニットが前記チップユニット装着部から取り外された場合に、転送された前記共通暗号鍵を消去する、情報記憶装置。
【請求項１５】
請求項１に記載の情報記憶装置であって、
前記チップユニットは、
或る固有識別情報を記憶したＩＣチップを有する第１のチップユニットと、
他の固有識別情報を記憶したＩＣチップを有する第２のチップユニットとを有し、
前記コントローラは、
前記第１のチップユニットが前記チップユニット装着部に装着され、かつ、前記ＩＣチップによる前記セキュリティ処理で、前記ユーザ端末の使用者が前記正規の使用者と判断された場合に、前記セキュリティ領域の一部に対する前記保護対象情報の読み出し処理及び書き込み処理を行い、
前記第２のチップユニットが前記チップユニット装着部に装着され、かつ、前記ＩＣチップによる前記セキュリティ処理で、前記ユーザ端末の使用者が前記正規の使用者と判断された場合に、前記セキュリティ領域の他の一部に対する前記保護対象情報の読み出し処理及び書き込み処理を行う、情報記憶装置。
【請求項１６】
請求項１から請求項１５の何れかに記載の情報記憶装置であって、
前記チップユニット装着部は、
前記チップユニットが挿入される開口と、
前記開口を通じて挿入された前記チップユニットを保持する保持部とを有する、情報記憶装置。
【請求項１７】
（Ａ）読み出し情報が記憶される読み出し領域と、保護対象情報が記憶されるセキュリティ領域とを備えたメモリと、
（Ｂ）ユーザ端末と通信するための通信インタフェースと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）前記セキュリティ領域に対するアクセス権限を有する正規の使用者か否かを少なくとも前記ユーザ端末を通じて送られた認証情報に基づいて判断するセキュリティ処理を行うＩＣチップを有するチップユニットであって、前記セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットが、前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、
前記チップユニットが取り外し可能に装着されるチップユニット装着部と、
を有し、
（Ｅ）前記コントローラは、
前記ユーザ端末からの要求に基づく前記読み出し領域に対する前記読み出し情報の読み出し処理を、前記チップユニットの装着状態に関わらず行い、
前記ユーザ端末からの要求に基づく前記セキュリティ領域に対する前記保護対象情報の読み出し処理及び書き込み処理を、前記チップユニットが前記チップユニット装着部に装着され、かつ、前記セキュリティ処理で、前記ユーザ端末の使用者が前記正規の使用者と判断されたことを条件に行う、情報記憶装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
この種の情報記憶装置では、情報記憶装置の輸送時や保管時、或いは、情報記憶装置が盗難にあった場合において、情報の漏洩を確実に防止することが求められる。すなわち、この情報記憶装置に対する不正アクセスを、高いセキュリティで阻止する必要がある。この点、従来の情報記憶装置では、ＩＣチップが一体に構成されていた。このため、ＩＣチップを解析されてしまった場合、記憶された情報が漏洩してしまう可能性があった。
また、この情報記憶装置を出先のコンピュータで使用する場合、専用プログラムを記憶した記憶媒体を持ち歩くか、インターネットを通じて専用プログラムをダウンロードする必要があった。このため、使い勝手が悪いという問題があった。
本発明は、このような事情に鑑みてなされたものであり、その主たる目的は、セキュリティ性の向上を図りつつ、利便性の向上を図ることである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
前記目的を達成するための主たる発明は、
（Ａ）読み出し情報が記憶される読み出し領域と、保護対象情報が記憶されるセキュリティ領域とを備えたメモリと、
（Ｂ）ユーザ端末と通信するための通信インタフェースと、
（Ｃ）前記メモリと前記通信インタフェースとの間に設けられ、前記メモリに対する読み出し処理及び書き込み処理を制御するコントローラと、
（Ｄ）前記セキュリティ領域に対するアクセス権限を有する正規の使用者か否かを少なくとも前記ユーザ端末を通じて送られた認証情報に基づいて判断するセキュリティ処理を行うＩＣチップであって、前記セキュリティ処理に用いられるセキュリティ情報を記憶したＩＣチップを有するチップユニットと、
（Ｅ）前記チップユニットが前記コントローラに対して通信可能な状態で装着されるチップユニット装着部であって、
前記チップユニットが取り外し可能に装着されるチップユニット装着部と、
を有し、
（Ｆ）前記コントローラは、
前記ユーザ端末からの要求に基づく前記読み出し領域に対する前記読み出し情報の読み出し処理を、前記チップユニットの装着状態に関わらず行い、
前記ユーザ端末からの要求に基づく前記セキュリティ領域に対する前記保護対象情報の読み出し処理及び書き込み処理を、前記チップユニットが前記チップユニット装着部に装着され、かつ、前記セキュリティ処理で、前記ユーザ端末の使用者が前記正規の使用者と判断されたことを条件に行う、情報記憶装置である。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
本発明の他の特徴は、本明細書、及び添付図面の記載により、明らかにする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
管理サーバ１２０は、ユーザ端末１１０と通信可能に接続され、ＵＳＢメモリ１の管理等を行う。この管理サーバ１２０は、ＣＰＵ１２１と、メモリ１２２と、通信Ｉ／Ｆ１２３と、内部バス１２４とを有する。これらの各部については、ユーザ端末１１０で説明したものと同様であるので、説明は省略する。そして、管理サーバ１２０のメモリ１２２には、ＩＣチップ３２の固有ＩＤ（ＣＵＩＤ：Chip Unique IDentifier）と、ＩＣチップ３２による外部認証用の、対応する暗号演算用鍵（本実施形態では、公開鍵を外部認証に用いられる情報の復号や暗号化に用いる。）とが記憶される。これらの情報は、例えば、ＩＣチップ３２の発行時において管理サーバ１２０へ記憶される。管理サーバ１２０は、例えば、ＵＳＢメモリ１が適正に使用されているかの判断時に、必要な処理を行う。本実施形態において、この判断は、ＩＣチップ３２による管理サーバ１２０の外部認証で行われる。この場合、管理サーバ１２０は、ＩＣチップ３２に対して必要な情報を送信する。簡単に説明すると、この判断では、まず、ＩＣチップ３２が、ユーザ端末１１０を通じて、管理サーバ１２０へチャレンジコードを送信する。管理サーバ１２０は、受信したチャレンジコードに対応するレスポンスを送信する。このレスポンスは、ユーザ端末１１０を通じてＩＣチップ３２に受信される。そして、受信したレスポンスが予定されている内容であった場合、ＩＣチップ３２は、正規の使用者による使用と判断して、セキュリティ保護領域５２（図５，後述する。）へのアクセスを許可する。なお、一連の認証動作については後で説明する。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００３６
【補正方法】変更
【補正の内容】
【００３６】
ここで、プログラム本体は、ＣＰＵ３３の動作を定めるものである。暗号／復号鍵は、平文（平文情報に相当する。）を暗号文（暗号化情報に相当する。）に変換する際、及び、暗号文を平文に変換する際に用いる情報である。そして、この暗号／復号鍵は、暗号処理回路３５で用いられる。認証情報は、セキュリティ情報の一種である。この認証情報は、例えば、ユーザ端末１１０の使用者が、ＵＳＢメモリ１の情報にアクセス可能な権限を有する者（つまり正規の使用者）か否かを判断する際に用いられる。本実施形態における認証情報は、ＰＩＮ（Personal Identification Number）である。そして、出荷時においてＰＩＮは設定されていない。このため、初回の認証時においてＰＩＮの入力を求め、これを初期のＰＩＮとして用いる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
セキュリティ保護領域５２は、ユーザ端末１１０が有する標準機能によっては、ユーザ端末１１０から認識されない領域である。従って、このセキュリティ保護領域５２は、保護対象情報が記憶されるセキュリティ領域に相当する。このセキュリティ保護領域５２をユーザ端末１１０に認識させるためには、専用のプログラムをユーザ端末１１０にインストールする必要がある。また、このセキュリティ保護領域５２には、情報が暗号化された状態で記憶される。すなわち、セキュリティ保護領域５２に記憶される情報は、保護対象情報に相当する。そして、情報の暗号化や復号は、ＩＣカード３０（暗号処理回路３５）によってなされる。従って、セキュリティ保護領域５２に対する情報の書き込みや読み出しを行うためには、ＩＣカード３０をカードコネクタ４０に装着し、認証情報等に基づき使用者が正規ユーザ（つまり正規の使用者）と認証される必要がある。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００４３
【補正方法】変更
【補正の内容】
【００４３】
セキュリティミドルウェアは、ＵＳＢメモリ１をユーザ端末１１０用のセキュリティキーとして用いるための機能を付加する。セキュリティキーとは、ユーザ端末１１０の使用を制限するためのものである。例えば、ユーザ端末１１０が有するＵＳＢ_Ｉ／Ｆ１１３に装着されることで、使用者（ユーザ）による操作を受け付ける。一方、ＵＳＢ_Ｉ／Ｆ１１３から取り外されると、スクリーンセーバが起動するとともに、使用者（第三者）による操作は受け付けない。このため、ユーザは、ユーザ端末１１０を使用する際にＵＳＢメモリ１（セキュリティキー）を装着し、席を離れるとき等にＵＳＢメモリ１を取り外すことで、情報の漏洩を防止することができる。また、セキュリティミドルウェアは、ＵＳＢメモリ１を許可情報記憶媒体として用いるための機能も付与する。例えば、通常アクセス可能領域５１には、ユーザ端末１１０にログオンする際のユーザＩＤ（認証情報）、ログオン用のパスワード、及び、電子署名（証明書）が記憶される。そして、ユーザは、ユーザ端末１１０へのログオン時にＵＳＢメモリ１（許可情報記憶媒体）を装着しておくことで、ユーザＩＤやパスワード等を入力することなくユーザ端末１１０を使用できる。これにより、推測され難いユーザＩＤやパスワードを設定することができ、セキュリティ性を向上させることができる。これらの機能をユーザ端末１１０に実現させるセキュリティミドルウェアは、ユーザ端末１１０の使用を特定の使用者（ユーザ）に許可するための許可情報、すなわち、ユーザ端末１１０の使用が許可される特定の使用者か否かを、ユーザ端末１１０に判断させるための許可情報に相当し、認証用に用いられる他の認証情報のデータ本体も含む。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００５５
【補正方法】変更
【補正の内容】
【００５５】
外部認証の成立に伴い、ＩＣチップ３２は、読み出しを許可する旨をメインコントローラ１０へ送信する（Ｓ２３）。そして、メインコントローラ１０は、セキュリティ保護領域５２に対する読み出し処理及び書き込み処理を行う。この場合において、メインコントローラ１０は、読み出し対象となる対象データを、フラッシュメモリ５０のセキュリティ保護領域５２から読み出す（Ｓ２４）。このように、本実施形態では、ユーザ端末１１０を通じて送られたＰＩＮ（認証情報）が正規のものであること、及び、管理サーバ１２０との外部認証が成立したことを条件に、セキュリティ保護領域５２に対する読み出し処理及び書き込み処理が許可される。そして、管理サーバ１２０との外部認証は、ＩＣチップ３２が送信したチャレンジデータに対する管理サーバ１２０のレスポンスに基づいて行われる。このため、正規のＩＣチップ３２を装着していないと、セキュリティ保護領域５２に記憶された情報を読み出すことができない。このため、セキュリティ保護領域５２に記憶された情報を読み出そうとする悪意の試みを有効に防止できる。