(57)【要約】【課題】不特定の装置から電子機器にコピーさせたデータを、より簡単に、漏洩を防ぎつつ電子機器から特定の装置にだけコピーすることができるようにする。【解決手段】出向いた先にあるPC３にUSBメモリ１を接続したとき、PC３においては、USBメモリ１は外部の記憶媒体として認識され、PC３からデータをコピーすることが可能になる。PC３からUSBメモリ１に転送された顧客のデータは、初期設定のときにオフィスにあるPC２から提供された暗号鍵を用いてUSBメモリ１の内部で暗号化され、暗号化された状態でフラッシュメモリに記憶される。USBメモリ１により暗号化されたデータの復号は、USBメモリ１の内部では行われずに、USBメモリ１からデータを読み出したPC側で行われる。本発明は、USBメモリに適用することができる。【選択図】図３
2009169759.tif 000002
【特許請求の範囲】
【請求項１】
フラッシュメモリを内蔵し、情報処理装置に接続可能な電子機器において、
データの暗号化に用いる暗号鍵の生成機能を有するソフトウエアがインストールされた情報処理装置により生成された第１の暗号鍵を管理する管理手段と、
前記ソフトウエアがインストールされた情報処理装置を含む所定の情報処理装置から転送されてきた書き込み対象のデータが、ファイルを管理するためのデータである場合には、前記書き込み対象のデータをそのままの状態で前記フラッシュメモリに記憶させ、ファイルを管理するための前記データでない場合には、前記管理手段により管理されている前記第１の暗号鍵を用いて前記書き込み対象のデータを暗号化し、暗号化した状態の前記書き込み対象のデータを前記フラッシュメモリに記憶させる書き込み手段と、
ファイルを管理するための前記データを参照した前記所定の情報処理装置からデータの読み出しが指示されたとき、指示されたデータを前記フラッシュメモリに記憶されている状態のまま、データの読み出しを指示してきた前記所定の情報処理装置に転送する読み出し手段と
を備える電子機器。
【請求項２】
前記書き込み手段は、前記ソフトウエアがインストールされた情報処理装置により設定された前記フラッシュメモリのアドレスと、書き込み先として指定されたアドレスに基づいて、前記書き込み対象のデータが前記ファイルを管理するためのデータであるのか否かを判断する
請求項１に記載の電子機器。
【請求項３】
前記管理手段は、前記フラッシュメモリと異なるメモリに記憶されている第２の暗号鍵を用いて暗号化した前記第１の暗号鍵を前記フラッシュメモリに記憶させて管理する
請求項１に記載の電子機器。
【請求項４】
バイオメトリクスによってユーザの認証を行う認証手段をさらに備え、
前記書き込み手段は、前記認証手段による認証が成功した後、書き込み対象のデータを前記フラッシュメモリに記憶させる
請求項１に記載の電子機器。
【請求項５】
前記読み出し手段は、前記所定の情報処理装置にデータを転送した後、転送したデータを前記フラッシュメモリから消去する
請求項１に記載の電子機器。
【請求項６】
フラッシュメモリを内蔵し、情報処理装置に接続可能な電子機器の情報処理方法において、
データの暗号化に用いる暗号鍵の生成機能を有するソフトウエアがインストールされた情報処理装置により生成された暗号鍵を管理し、
前記ソフトウエアがインストールされた情報処理装置を含む所定の情報処理装置から転送されてきた書き込み対象のデータが、ファイルを管理するためのデータである場合には、前記書き込み対象のデータをそのままの状態で前記フラッシュメモリに記憶させ、ファイルを管理するための前記データでない場合には、管理している前記暗号鍵を用いて前記書き込み対象のデータを暗号化し、暗号化した状態の前記書き込み対象のデータを前記フラッシュメモリに記憶させ、
ファイルを管理するための前記データを参照した前記所定の情報処理装置からデータの読み出しが指示されたとき、指示されたデータを前記フラッシュメモリに記憶されている状態のまま、データの読み出しを指示してきた前記所定の情報処理装置に転送する
ステップを含む情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、および情報処理方法に関し、特に、不特定の装置から電子機器にコピーさせたデータを、より簡単に、漏洩を防ぎつつ電子機器から特定の装置にだけコピーすることができるようにした電子機器、および情報処理方法に関する。
【背景技術】
【０００２】
近年、情報の漏洩に関するニュースが頻繁に取り上げられている。漏洩の原因としては、USB(Universal Serial Bus)メモリなどの記憶媒体の紛失や盗難の他に、仕事で顧客のところへ出向き、出向いた先にあるPC(Personal Computer)からデータをコピーさせたUSBメモリを、職場に戻る途中のインターネットカフェなどに用意されているPCに接続させたときにウイルスに感染していたそのPCにより顧客のデータが読み出されてしまうといったこともある。
【０００３】
このように、USBメモリにコピーさせたデータをUSBメモリから他のPCにコピーすることは至って簡単な行為であることから、例えば顧客のところでUSBメモリにコピーさせたデータを、途中で漏洩させることなく、職場などにある特定のサーバまで運んだりすることは非常に難しい。
【０００４】
情報の漏洩を防ぐ一つの方法として、顧客からデータをもらうときに、USBメモリを接続する顧客のPCにデータの暗号化機能を有する特別なソフトウエアをインストールし、起動させておく方法が考えられ、商品化もされている。例えば、職場のサーバにも同様のソフトウエアをインストールしておくことにより、職場のサーバ以外のPCでは、顧客からもらったデータをそのUSBメモリからコピーすることができなくなる。
【０００５】
【特許文献１】特開２００４−３１８７２０号公報
【特許文献２】特開２００７−１４０７９８号公報
【特許文献３】特開２００７−２６５４００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、データをもらう側の人間が、出向いた先の顧客のPCに特別なソフトウエアをインストールしたりすることは実際には難しい。従って、このような特別なソフトウエアをインストールすることなく簡単に、データの漏洩を防止する仕組みが求められる。
【０００７】
本発明はこのような状況に鑑みてなされたものであり、不特定の装置から電子機器にコピーさせたデータを、より簡単に、漏洩を防ぎつつ電子機器から特定の装置にだけコピーすることができるようにするものである。
【課題を解決するための手段】
【０００８】
本発明の一側面の電子機器は、フラッシュメモリを内蔵し、情報処理装置に接続可能な電子機器において、データの暗号化に用いる暗号鍵の生成機能を有するソフトウエアがインストールされた情報処理装置により生成された第１の暗号鍵を管理する管理手段と、前記ソフトウエアがインストールされた情報処理装置を含む所定の情報処理装置から転送されてきた書き込み対象のデータが、ファイルを管理するためのデータである場合には、前記書き込み対象のデータをそのままの状態で前記フラッシュメモリに記憶させ、ファイルを管理するための前記データでない場合には、前記管理手段により管理されている前記第１の暗号鍵を用いて前記書き込み対象のデータを暗号化し、暗号化した状態の前記書き込み対象のデータを前記フラッシュメモリに記憶させる書き込み手段と、ファイルを管理するための前記データを参照した前記所定の情報処理装置からデータの読み出しが指示されたとき、指示されたデータを前記フラッシュメモリに記憶されている状態のまま、データの読み出しを指示してきた前記所定の情報処理装置に転送する読み出し手段とを備える。
【０００９】
前記書き込み手段には、前記ソフトウエアがインストールされた情報処理装置により設定された前記フラッシュメモリのアドレスと、書き込み先として指定されたアドレスに基づいて、前記書き込み対象のデータが前記ファイルを管理するためのデータであるのか否かを判断させることができる。
【００１０】
前記管理手段には、前記フラッシュメモリと異なるメモリに記憶されている第２の暗号鍵を用いて暗号化した前記第１の暗号鍵を前記フラッシュメモリに記憶させて管理させることができる。
【００１１】
バイオメトリクスによってユーザの認証を行う認証手段をさらに設けることができる。この場合、前記書き込み手段には、前記認証手段による認証が成功した後、書き込み対象のデータを前記フラッシュメモリに記憶させることができる。
【００１２】
前記読み出し手段には、前記所定の情報処理装置にデータを転送した後、転送したデータを前記フラッシュメモリから消去させることができる。
【００１３】
本発明の一側面の情報処理方法は、フラッシュメモリを内蔵し、情報処理装置に接続可能な電子機器の情報処理方法において、データの暗号化に用いる暗号鍵の生成機能を有するソフトウエアがインストールされた情報処理装置により生成された暗号鍵を管理し、前記ソフトウエアがインストールされた情報処理装置を含む所定の情報処理装置から転送されてきた書き込み対象のデータが、ファイルを管理するためのデータである場合には、前記書き込み対象のデータをそのままの状態で前記フラッシュメモリに記憶させ、ファイルを管理するための前記データでない場合には、管理している前記暗号鍵を用いて前記書き込み対象のデータを暗号化し、暗号化した状態の前記書き込み対象のデータを前記フラッシュメモリに記憶させ、ファイルを管理するための前記データを参照した前記所定の情報処理装置からデータの読み出しが指示されたとき、指示されたデータを前記フラッシュメモリに記憶されている状態のまま、データの読み出しを指示してきた前記所定の情報処理装置に転送するステップを含む。
【００１４】
本発明の一側面においては、データの暗号化に用いる暗号鍵の生成機能を有するソフトウエアがインストールされた情報処理装置により生成された暗号鍵が管理される。また、前記ソフトウエアがインストールされた情報処理装置を含む所定の情報処理装置から転送されてきた書き込み対象のデータが、ファイルを管理するためのデータである場合には、前記書き込み対象のデータがそのままの状態でフラッシュメモリに記憶され、ファイルを管理するための前記データでない場合には、管理されている前記暗号鍵を用いて前記書き込み対象のデータが暗号化され、暗号化された状態の前記書き込み対象のデータが前記フラッシュメモリに記憶される。さらに、ファイルを管理するための前記データを参照した前記所定の情報処理装置からデータの読み出しが指示されたとき、指示されたデータが前記フラッシュメモリに記憶されている状態のまま、データの読み出しを指示してきた前記所定の情報処理装置に転送される。
【発明の効果】
【００１５】
本発明の一側面によれば、不特定の装置から電子機器にコピーさせたデータを、より簡単に、漏洩を防ぎつつ電子機器から特定の装置にだけコピーすることができる。
【発明を実施するための最良の形態】
【００１６】
図１は、本発明の一実施形態に係るUSBメモリ１の外観の例を示す図である。
【００１７】
USBメモリ１は一般的なUSBメモリと同様の外観を有しており、筐体の側面に設けられるUSBコネクタ１Ａが差し込まれることによって、USBコネクタが設けられるPCなどに接続される。
【００１８】
USBメモリ１にはフラッシュメモリとそのコントローラが内蔵されている。ユーザは、USBメモリ１をPCに差し込み、USBメモリ１を外部の記憶媒体としてPCに認識させることによって、PCに記憶されている各種のデータをUSBメモリ１にコピーすることができる。
【００１９】
USBメモリ１においては、書き込み（記憶）対象のデータとしてPCから供給されたデータのうち、ファイルを管理するためのデータは暗号化されずに平文のまま記憶され、それ以外の、テキストデータ、音声データなどのファイルを構成するデータそのものはUSBメモリ１により暗号化された状態で記憶される。このように、USBメモリ１はデータの暗号化機能を有している。データを書き込むとき、PCからは、書き込み対象のデータとともに、書き込み先となるフラッシュメモリのアドレスの情報がUSBメモリ１に対して供給されるようになされており、例えば、USBメモリ１においては、書き込み先のアドレスと、あらかじめ設定された基準のアドレスが比較されることによって、書き込み対象のデータがファイルを管理するためのデータであるのか否かが判断される。
【００２０】
ここで、USBメモリ１の使い方について説明する。
【００２１】
例えば、USBメモリ１のユーザである、ある会社の人が顧客のところに出向き、その出向いた先にあるPCからUSBメモリ１に顧客のデータをコピーさせる場合を想定する。ユーザは、顧客のデータが記憶されたUSBメモリ１を自分の職場（オフィス）に持ち帰り、オフィスにあるPCに顧客のデータをUSBメモリ１からコピーするものとする。このような使い方をするためには、ユーザは、USBメモリ１の初期設定を始めに行う必要がある。
【００２２】
図２は、初期設定の様子を示す図である。
【００２３】
図２のPC２は、ユーザのオフィスにあるPCである。PC２には、データの暗号化に用いる暗号鍵の生成機能などを有する特別なソフトウエアがインストールされている。
【００２４】
例えば、この特別なソフトウエアを起動させたPC２にUSBメモリ１を接続し、初期設定の開始をユーザが指示したとき、PC２においては、暗号鍵が生成され、それがUSBメモリ１に転送される。USBメモリ１に転送された暗号鍵と同じ暗号鍵は、USBメモリ１から読み出された、暗号化された状態のデータを復号するのに用いる鍵としてPC２内に保存される。
【００２５】
また、USBメモリ１のフラッシュメモリのフォーマットが行われ、分離アドレスの情報がPC２からUSBメモリ１に転送される。
【００２６】
後に詳述するように、分離アドレスは、USBメモリ１のフラッシュメモリに形成されるファイルシステムエリアの分離位置を指定するアドレスである。フラッシュメモリの記憶領域の開始位置のアドレスを０、開始位置以降のアドレスをそれぞれ所定のアドレス値で順に表すとすると、PC２などの所定のPCから転送された書き込み対象のデータがファイルを管理するためのデータである場合、そのデータは、ファイルシステムエリアの分離アドレスのアドレス値より低いアドレス値の位置に記憶される。一方、書き込み対象のデータがファイルを管理するためのデータ以外のデータである場合、そのデータは、ファイルシステムエリアの分離アドレスのアドレス値より高いアドレス値の位置に記憶される。
【００２７】
PC２から転送されてきた暗号鍵、分離アドレスの情報はフラッシュメモリのパラメータエリアに記憶される。特別なソフトウエアを起動しているPC２は、パラメータエリア内のアドレスを書き込み先として指定して、暗号鍵、分離アドレスの情報を転送することになる。
【００２８】
USBメモリ１の初期設定は以上のようにして行われる。ユーザは、初期設定を行ったUSBメモリ１を、PC２を含む所定のPCに接続し、データをUSBメモリ１にコピーすることができる。
【００２９】
図３は、出向いた先のPCからUSBメモリ１に顧客のデータをコピーし、顧客のデータが記憶されたUSBメモリ１をオフィスに持ち帰って、USBメモリ１からPC２に顧客のデータをコピーする様子を示す図である。図３の例においては、ユーザが出向いた先にある顧客のPC はPC３として示されている。
【００３０】
PC３にUSBメモリ１を接続したとき、PC３においては、USBメモリ１は一般的なUSBメモリと同様に外部の記憶媒体として認識される。ユーザは、図３の白抜き矢印Ａ1で示されるようにPC３からUSBメモリ１にコピーすることによって顧客のデータを受け取ることができる。PC３からUSBメモリ１に転送された、ファイルを管理するためのデータではないテキストデータなどの顧客のデータは、初期設定のときにPC２から提供された暗号鍵を用いてUSBメモリ１の内部で暗号化され、暗号化された状態でフラッシュメモリに記憶される。
【００３１】
このように、ユーザは、特別なソフトウエアをPC３インストールするなどの煩雑な操作を行うことなく、顧客のデータをPC３からUSBメモリ１にコピーし、暗号化された状態で記憶させておくことができる。
【００３２】
USBメモリ１により暗号化されたデータの復号は、USBメモリ１の内部では行われずに、USBメモリ１からデータを読み出したPC側で行われる。すなわち、USBメモリ１に記憶されている顧客のデータは、暗号化された状態のまま、USBメモリ１が接続されたPCにより読み出されることになる。
【００３３】
顧客のデータは暗号化された状態でUSBメモリ１に記憶されているため、USBメモリ１の初期設定を行ったPC２以外のPCは、仮に、顧客のデータをUSBメモリ１から読み出せたとしても、その内容を解読することはできない。従って、これにより、USBメモリ１の紛失などによる情報漏洩を防ぐことが可能になる。
【００３４】
オフィスに帰ったユーザがUSBメモリ１をPC２に接続し、PC２を操作して図３の白抜き矢印Ａ2で示されるように顧客のデータをUSBメモリ１から読み出したとき、暗号化された状態のままの顧客のデータがUSBメモリ１からPC２に転送される。USBメモリ１から転送されてきた顧客のデータを受信したPC２においては、初期設定時に保存しておいた暗号鍵が用いられて顧客のデータが復号され、取得される。
【００３５】
このように、書き込み時にUSBメモリ１の内部でデータの暗号化が行われ、読み出し時には暗号化された状態のままデータが読み出されるようにすることにより、特別なソフトウエアを必要とせずにPCからUSBメモリ１にデータをコピーすることはできるが、一旦、USBメモリ１にコピーさせたデータを読み出し、復号するには、特別なソフトウエアがPC側に必要になるシステムを実現することができる。
【００３６】
以上のような使い方をされるUSBメモリ１の処理についてはフローチャートを参照して後述する。
【００３７】
図４は、USBメモリ１のハードウエア構成例を示すブロック図である。
【００３８】
図４に示されるように、USBメモリ１は、基本的に、コントローラLSI(Large Scale Integration)１１に対してフラッシュメモリ１２、および水晶発振子１３が接続されることによって構成される。これらの構成のうちの少なくとも一部は、USBメモリ１が、PC２のUSBコネクタに差し込まれているときに供給される電力を用いて動作する。図４の例においては、USBメモリ１はPC２に接続されているが、他のPCに接続されているときにも同様に動作する。
【００３９】
コントローラLSI１１は、USB I/F(Interface)２１、CPU(Central Processing Unit)２２、暗号処理エンジン２３、EEPROM(Electrically Erasable and Programmable Read Only Memory)２４、プログラム用RAM/ROM(Random Access Memory/Read Only Memory)２５、PLL(Phase Lock Loop)２７、およびフラッシュメモリI/F２８がバス２６を介して接続されることによって構成される。
【００４０】
USB I/F２１は、PC２とUSB規格に従って通信を行う。USB I/F２１は、PC２から転送されてきたデータを受信し、受信したデータをバス２６に出力する。バス２６に出力されたデータは、必要に応じて暗号処理エンジン２３により暗号化された後、フラッシュメモリI/F２８に供給され、フラッシュメモリ１２に記憶される。
【００４１】
また、USB I/F２１は、フラッシュメモリ１２からフラッシュメモリI/F２８により読み出されたデータがバス２６を介して供給されたとき、それをPC２に転送する。
【００４２】
CPU２２は、プログラム用RAM/ROM２５内のROMに記憶されているプログラムをRAMに展開して実行することによって、バス２６を介して接続される各部の動作を制御する。
【００４３】
暗号処理エンジン２３は、PC２から転送された書き込み対象のデータがバス２６を介して供給されたとき、そのデータを、暗号鍵を用いて暗号化し、暗号化して得られたデータをフラッシュメモリI/F２８に出力する。書き込み対象のデータの暗号化に用いられる、初期設定時にPC２から提供された暗号鍵は、EEPROM２４に記憶されている暗号鍵を用いて暗号化され、フラッシュメモリ１２に記憶されている。暗号処理エンジン２３は、書き込み対象のデータを暗号化するとき、フラッシュメモリ１２から読み出した暗号化された状態の暗号鍵を、EEPROM２４に記憶されている暗号鍵を用いて復号し、復号して得られた暗号鍵を用いて書き込み対象のデータの暗号化を行う。
【００４４】
以下、適宜、書き込み対象のデータの暗号化に用いられる、初期設定時にPC２から提供された暗号鍵を暗号鍵Ｋ1という。また、暗号鍵Ｋ1の暗号化、または、暗号化されている暗号鍵Ｋ1の復号に用いられる、EEPROM２４に記憶されている暗号鍵を暗号鍵Ｋ2という。
【００４５】
EEPROM２４は、RSA、AES(Advanced Encryption Standard)、DES(Data Encryption Standard)など所定のアルゴリズムに従って生成された暗号鍵Ｋ2を記憶する。暗号鍵Ｋ2は、初期設定時などにUSBメモリ１の内部で生成される。
【００４６】
プログラム用RAM/ROM２５は、CPU２２により実行されるプログラムの他、CPU２２が各種の処理を実行する上で必要な各種のデータを記憶する。
【００４７】
PLL２７は、コントローラLSI１１内の各部が動作するのに必要なクロックを水晶発振子１３から供給されたクロックに基づいて生成し、生成したクロックを各部に供給する。
【００４８】
フラッシュメモリI/F２８は、フラッシュメモリ１２に対するデータの書き込み、またはフラッシュメモリ１２に記憶されているデータの読み出しを制御する。
【００４９】
例えば、フラッシュメモリI/F２８は、暗号処理エンジン２３により暗号化され、バス２６を介して供給されたデータをフラッシュメモリ１２に記憶させる。また、フラッシュメモリI/F２８は、暗号化された状態でフラッシュメモリ１２に記憶されているデータを読み出し、読み出したデータをバス２６を介してUSB I/F２１に出力する。
【００５０】
フラッシュメモリ１２は、フラッシュメモリI/F２８による制御に従って各種のデータを記憶する。
【００５１】
水晶発振子１３は所定の周波数のクロックをPLL２７に出力する。
【００５２】
図５は、フラッシュメモリ１２に形成される領域の例を示す図である。
【００５３】
図５に示されるように、フラッシュメモリ１２の記憶領域はパラメータエリアＡ1とファイルシステムエリアＡ2から構成される。ファイルシステムエリアＡ2は、PCのOS(Operating System)に用意されているUSBデバイス用のドライバを用い、ファイルシステムを参照することでデータの読み書きが可能なエリアである。これに対して、パラメータエリアＡ1は、特別なソフトウエアに含まれるAPI(Application Programming Interface)を介してドライバを用いなければデータの読み書きができないエリアである。
【００５４】
パラメータエリアＡ1には、暗号鍵Ｋ2によって暗号化された暗号鍵Ｋ1と、分離アドレスの情報が記憶される。
【００５５】
ファイルシステムエリアＡ2には、図５の右側に示されるように領域＃１と＃２が形成される。分離アドレスは、領域＃１と＃２の境界のアドレスである。分離アドレスのアドレス値は、ファイルシステムのルートディレクトリの最終アドレスに１を加えた値で表される。
【００５６】
領域＃１には、MBR(Master Boot Recorder)、BPB(BIOS Parameter Block)、FAT(File Allocation Table)、およびルートディレクトリがその順番で記憶される。MBRはUSBメモリ１の起動時に読み出されるプログラムであり、BPBはBIOSにより参照されるパラメータである。FATはメモリアロケーションテーブルであり、ルートディレクトリは、ファイルシステムにおける大元のディレクトリである。FATとルートディレクトリはファイルを管理するためのデータとなる。
【００５７】
領域＃１に対するデータの書き込み時、書き込み対象のデータは暗号化されずに記憶される。従って、PC２、PC３を含む、USBメモリ１が接続されたPCは、領域＃１に記憶されているFATやルートディレクトリなどを参照することができ、領域＃２に対してデータを書き込んだり、領域＃２に記憶されているデータを読み出したりすることができる。
【００５８】
領域＃２には、サブディレクトリの情報や、ファイルを構成するデータそのものが記憶される。テキストデータや音声データなどの顧客のデータも、この領域＃２に記憶される。
【００５９】
領域＃２に対するデータの書き込み時、書き込み対象のデータは暗号化されてから記憶される。領域＃１に記憶されている情報を参照することによって、USBメモリ１が接続されたPCは領域＃２に記憶されているデータを読み出すことはできるが、それを復号することができるのは、初期設定を行い、暗号鍵を有しているPC２だけとなる。
【００６０】
なお、サブディレクトリの情報もファイルを管理するデータであり、ファイルを構成するデータそのものではないので、暗号化されずに平文のまま領域＃２に記憶されるようにしてもよい。
【００６１】
図６は、USBメモリ１の機能構成例を示すブロック図である。図６に示す機能部のうちの少なくとも一部は、図４のCPU２２により所定のプログラムが実行されることによって実現される。
【００６２】
図６に示されるように、USBメモリ１においては、情報管理部４１、書き込み制御部４２、および読み出し制御部４３が実現される。
【００６３】
情報管理部４１は、初期設定時にPC２により生成され、USB I/F２１を介して転送されてきた暗号鍵Ｋ1を管理する。例えば、情報管理部４１は、PC２から暗号鍵Ｋ1が転送されてきたとき、暗号鍵Ｋ1を暗号処理エンジン２３に出力し、暗号鍵Ｋ2を用いて暗号鍵Ｋ1を暗号化させる。情報管理部４１は、暗号化された暗号鍵Ｋ1を暗号処理エンジン２３から取得し、取得した暗号鍵Ｋ1をフラッシュメモリI/F２８に出力して、フラッシュメモリ１２のパラメータエリアＡ1に記憶させる。
【００６４】
また、情報管理部４１は、書き込み対象のデータの暗号化を暗号処理エンジン２３に行わせるとき、フラッシュメモリI/F２８を制御して、暗号化された状態の暗号鍵Ｋ1をパラメータエリアＡ1から読み出し、暗号化された状態の暗号鍵Ｋ1を暗号処理エンジン２３に出力する。暗号処理エンジン２３においては、暗号鍵Ｋ2を用いて暗号鍵Ｋ1が復号され、復号された暗号鍵Ｋ1を用いて、書き込み対象のデータの暗号化が行われる。
【００６５】
書き込み制御部４２は、フラッシュメモリ１２に対するデータの書き込みを制御する。例えば、書き込み制御部４２は、書き込み対象のデータがUSB I/F２１を介して転送されてきたとき、書き込み対象のデータを暗号処理エンジン２３に出力し、暗号化を行わせる。書き込み制御部４２は、暗号化された書き込み対象のデータを暗号処理エンジン２３から取得し、取得したデータをフラッシュメモリI/F２８に出力して、ファイルシステムエリアＡ2の領域＃２に記憶させる。
【００６６】
読み出し制御部４３は、フラッシュメモリ１２からのデータの読み出しを制御する。例えば、読み出し制御部４３は、データを読み出すことがPC２から指示されたとき、フラッシュメモリI/F２８を制御して、読み出しが指示されたデータを読み出し、読み出したデータをその状態のまま、USB I/F２１からPC２に転送させる。ファイルシステムエリアＡ2の領域＃２から読み出されたデータは、暗号化された状態のままPC２に転送されることになる。
【００６７】
図７は、PC２のハードウエア構成例を示すブロック図である。
【００６８】
CPU５１は、ROM５２に記憶されているソフトウエア、HDD５８からRAM５３にロードされたソフトウエアに従って各種の処理を実行する。RAM５３にはまた、CPU５１が各種の処理を実行する上において必要なデータなどが適宜記憶される。暗号鍵の生成機能などを有する特別なソフトウエアもCPU５１により実行される。
【００６９】
CPU５１、ROM５２、およびRAM５３は、バス５４を介して相互に接続されている。このバス５４にはまた、入出力インタフェース５５も接続されている。
【００７０】
入出力インタフェース５５には、キーボード、マウスなどよりなる入力部５６、LCD(Liquid Crystal Display)などよりなるディスプレイ５７、各種のデータが記憶されるHDD５８、ネットワークを介して他の装置と通信を行う通信部５９が接続されている。
【００７１】
入出力インタフェース５５にはUSBコントローラ６０も接続される。USBコントローラ６０は、PC２の筐体に設けられるUSBコネクタに差し込まれたUSBメモリ１との間で通信を行う。
【００７２】
入出力インタフェース５５にはまた、必要に応じてドライブ６１が接続され、磁気ディスク、光ディスク、光磁気ディスク、メモリカードなどよりなるリムーバブルメディア６２が適宜装着される。
【００７３】
ここで、以上のような構成を有するUSBメモリ１とPC２の処理について説明する。
【００７４】
はじめに、図８のフローチャートを参照して、初期設定を行うPC２の処理について説明する。
【００７５】
この処理は、例えば、USBメモリ１がPC２に接続され、インストールされた特別なソフトウエアがCPU５１により実行されている状態で初期設定の開始がユーザにより指示されたときに開始される。
【００７６】
ステップＳ１において、CPU５１は、書き込み対象のデータの暗号化に用いる暗号鍵である暗号鍵Ｋ1を生成する。また、CPU５１は、フラッシュメモリ１２のフォーマットを行い、分離アドレスを決定する。
【００７７】
ステップＳ２において、CPU５１は、暗号鍵Ｋ1と分離アドレスの情報をUSBメモリ１に転送する。
【００７８】
ステップＳ３において、CPU５１は、USBメモリ１に転送した暗号鍵Ｋ1と同じ暗号鍵を、USBメモリ１から読み出したデータの復号鍵としてHDD５８などに保存し、処理を終了させる。
【００７９】
次に、図９のフローチャートを参照して、図８の処理に対応して行われるUSBメモリ１の処理について説明する。
【００８０】
ステップＳ１１において、情報管理部４１は、PC２から転送されてきた暗号鍵Ｋ1を暗号処理エンジン２３に出力し、EEPROM２４に記憶されている暗号鍵Ｋ2を用いて暗号化させる。情報管理部４１は、暗号化された暗号鍵Ｋ1を暗号処理エンジン２３から取得し、フラッシュメモリ１２のパラメータエリアＡ1に記憶させる。
【００８１】
ステップＳ１２において、情報管理部４１は、暗号鍵Ｋ1とともにPC２から転送されてきた分離アドレスの情報をフラッシュメモリ１２のパラメータエリアＡ1に記憶させる。
【００８２】
以上の処理により、USBメモリ１には、暗号鍵Ｋ1が用意されるとともに、分離アドレスが設定される。
【００８３】
次に、図１０のフローチャートを参照して、フラッシュメモリ１２にデータを書き込むUSBメモリ１の処理について説明する。
【００８４】
この処理は、PC２、PC３を含む、USBメモリ１が接続されたPCから、書き込み対象のデータが転送されてきたときに開始される。
【００８５】
ステップＳ２１において、書き込み制御部４２は、PCから転送されてきた書き込み対象のデータを受信する。PCから書き込み制御部４２に対しては、書き込み先のアドレスを表すアドレス値の情報も転送されてくる。
【００８６】
ステップＳ２２において、書き込み制御部４２は、書き込み先のアドレスを表すアドレス値が、分離アドレスのアドレス値より低いか否かを判定する。
【００８７】
書き込み先のアドレスを表すアドレス値が分離アドレスのアドレス値より低い、すなわち、ファイルシステムエリアＡ2の領域＃１内のアドレスが書き込み先として指定されているとステップＳ２２において判定した場合、ステップＳ２３において、書き込み制御部４２は、PCから転送されてきた書き込み対象のデータを、指定されたアドレスにその状態のまま書き込む。
【００８８】
一方、書き込み先のアドレスを表すアドレス値が分離アドレスのアドレス値より高い、すなわち、ファイルシステムエリアＡ2の領域＃２内のアドレスが書き込み先として指定されているとステップＳ２２において判定した場合、ステップＳ２４において、書き込み制御部４２は、PCから転送されてきた書き込み対象のデータを暗号処理エンジン２３に出力し、暗号鍵Ｋ1を用いて暗号化させる。
【００８９】
ステップＳ２５において、書き込み制御部４２は、暗号化された書き込み対象のデータを、指定されたアドレスに記憶させる。ステップＳ２３またはＳ２５においてデータが書き込まれた後、処理は終了される。
【００９０】
顧客のデータの書き込み先としてファイルシステムエリアＡ2の領域＃２がPC３により指定されるため、以上の処理により、その顧客のデータは暗号化された状態でフラッシュメモリ１２に記憶されることになる。
【００９１】
次に、図１１のフローチャートを参照して、USBメモリ１の読み出し処理について説明する。
【００９２】
この処理は、USBメモリ１に記憶されているFATやルートディレクトリを参照したPCから、所定のデータを読み出すことが指示されたときに開始される。
【００９３】
ステップＳ３１において、読み出し制御部４３は、PCからの指示を受信する。PCからの指示には、読み出しの対象とするデータの記憶位置を表すアドレスなどの情報も含まれる。
【００９４】
ステップＳ３２において、読み出し制御部４３は、読み出しが指示されたデータをフラッシュメモリ１２から読み出し、読み出したデータをその状態のまま、データの読み出しを指示したPCに転送する。その後、処理は終了される。ファイルシステムエリアＡ2の領域＃２から読み出されたデータは暗号化された状態のまま転送され、領域＃１から読み出されたデータは、どのPCでも解読可能な平文の状態で転送されることになる。
【００９５】
次に、図１２のフローチャートを参照して、USBメモリ１からデータを読み出すPC２の処理について説明する。
【００９６】
ステップＳ４１において、PC２のCPU５１は、読み出しの対象とするデータの記憶位置を表すアドレスをUSBメモリ１に転送し、データの読み出しを指示する。この指示に応じて、USBメモリ１においては図１１を参照して説明した処理が行われ、読み出しを指示したデータが転送される。
【００９７】
ステップＳ４２において、CPU５１は、USBコントローラ６０を制御し、USBメモリ１から転送されてきたデータを受信する。
【００９８】
ステップＳ４３において、CPU５１は、受信したデータに施されている暗号を、初期設定時に保存しておいた暗号鍵を用いて復号し、データを取得する。その後、処理は終了される。PC２においては、USBメモリ１から読み出した顧客のデータを用いて所定の処理が行われる。初期設定を行っているPCであるから、このように、PC２は領域＃２から読み出したデータを解読することが可能となる。
【００９９】
以上の処理により、ユーザは、不特定のPCからUSBメモリ１にコピーさせたデータを漏洩を防ぎつつ特定のPCにだけコピーするといったことを、その不特定のPCに特別なソフトウエアをインストールするなどの煩雑な操作を行うことなく、簡単に行うことができる。
【０１００】
なお、PC２によりデータの復号が行われた後、データの復号を行ったことがPC２からUSBメモリ１に対して通知されるようにしてもよい。PC２からの通知に応じて、PC２により取得されたデータがUSBメモリ１から消去されることにより、より確実にデータの漏洩を防ぐことが可能になる。
【０１０１】
また、バイオメトリクスによる認証機能がUSBメモリ１に搭載されている場合、認証に成功した後だけ、USBメモリ１に対するデータの書き込みや、USBメモリ１に記憶されているデータの読み出しが可能となるようにしてもよい。
【０１０２】
図１３は、指紋照合機能が搭載されたUSBメモリである指紋照合機能付きUSBメモリ１０１の外観の例を示す図である。
【０１０３】
指紋照合機能を実現する構成がさらに設けられている点を除いて、指紋照合機能付きUSBメモリ１０１はUSBメモリ１と同様の構成を有する。
【０１０４】
指紋照合機能付きUSBメモリ１０１の筐体表面には指紋センサ１１１が露出して設けられている。ユーザは、指紋照合機能付きUSBメモリ１０１をPCの外部の記憶媒体として用いるとき、指紋照合機能付きUSBメモリ１０１をPCに差し込んだ状態で１本の指の腹を指紋センサ１１１にあて、指紋の照合を行わせる必要がある。指紋センサ１１１により読み取られたユーザの指紋のデータは、ユーザによってあらかじめ登録され、指紋照合機能付きUSBメモリ１０１内に記憶されている指紋のデータと指紋照合機能付きUSBメモリ１０１によって照合され、それらが一致したとき、ユーザは、指紋照合機能付きUSBメモリ１０１に対してPCからデータを記憶させたり、指紋照合機能付きUSBメモリ１０１に記憶されているデータをPCから読み出したりすることが可能となる。
【０１０５】
指紋照合機能付きUSBメモリ１０１の筐体表面には指置き指示用LED(Light Emitting Diode)１１２も設けられている。指置き指示用LED１１２は、指紋照合機能付きUSBメモリ１０１がPCに差し込まれ、PCから電力が供給されたときに点滅を開始し、それにより、指紋センサ１１１に指を置き、指紋による認証を行うことをユーザに促す。
【０１０６】
図１４は、指紋照合機能付きUSBメモリ１０１のハードウエア構成例を示すブロック図である。図１３に示される構成と同じ構成には同じ符号を付してある。また、図４に示される構成と同じ構成にも同じ符号を付してある。重複する説明については適宜省略する。
【０１０７】
LEDコントローラ１２１は、CPU２２による制御に従って指置き指示用LED１１２を発光させる。
【０１０８】
指紋照合エンジン１２２は、指紋センサ１１１において指紋が読み取られることによって出力されるRF信号の信号レベルの積算値が閾値を超えたとき、指紋センサ１１１に指が置かれたと判断し、指紋の読み取りを開始する。
【０１０９】
また、指紋照合エンジン１２２は、指紋センサ１１１からの出力に基づいて読み取った指紋を照合対象の指紋とし、フラッシュメモリ１２に記憶されている指紋テンプレートを用いて特徴の照合を行う。指紋照合エンジン１２２は、照合対象の指紋の特徴と、指紋テンプレートにより表される特徴が一致する場合、指紋センサ１１１に指を置いたユーザが正当なユーザであると判定し、指紋による認証が成功したことをCPU２２に通知する。CPU２２は、指紋による認証が成功したことが指紋照合エンジン１２２から通知されたとき、フラッシュメモリ１２に対するアクセスを指紋照合機能付きUSBメモリ１０１が接続されているPCに許可する。
【０１１０】
指紋テンプレートはEEPROM２４に記憶されている暗号鍵によって暗号化された状態でフラッシュメモリ１２に記憶されている。指紋の照合を行うとき、指紋照合エンジン１２２に対しては、暗号鍵を用いて暗号処理エンジン２３により復号された指紋テンプレートが供給される。
【０１１１】
ここで、以上のような構成を有する指紋照合機能付きUSBメモリ１０１の処理について説明する。
【０１１２】
はじめに、図１５のフローチャートを参照して、ユーザの指紋を登録する指紋照合機能付きUSBメモリ１０１の処理について説明する。
【０１１３】
この処理は、指紋照合機能付きUSBメモリ１０１が接続されるPC２が操作され、指紋の登録を行うことがユーザにより指示されたときに開始される。指紋の登録を行うことが指示されたとき、指紋の登録を開始することを指示するコマンドがPC２から指紋照合機能付きUSBメモリ１０１に送信される。
【０１１４】
ステップＳ５１において、指紋照合エンジン１２２は、指紋センサ１１１に指が置かれたか否かを判定し、指が置かれたと判定するまで待機する。
【０１１５】
指が置かれたとステップＳ５１において判定した場合、ステップＳ５２において、指紋照合エンジン１２２は、指紋センサ１１１から供給されたRF信号を指紋読み取りデータとして取り込む。
【０１１６】
ステップＳ５３において、指紋照合エンジン１２２は、指紋センサ１１１により読み取られた指紋の特徴を表すデータを指紋テンプレートとして取り出す。指紋照合エンジン１２２により取り出された指紋テンプレートはバス２６を介して暗号処理エンジン２３に出力される。
【０１１７】
ステップＳ５４において、暗号処理エンジン２３は、EEPROM２４に記憶されている暗号鍵を用いて指紋テンプレートを暗号化し、暗号化した指紋テンプレートをパラメータエリアＡ1などのフラッシュメモリ１２の所定の領域に記憶させる。暗号化された指紋テンプレートが、フラッシュメモリ１２ではなくEEPROM２４に記憶されるようにしてもよい。
【０１１８】
次に、図１６のフローチャートを参照して、ユーザの認証を行う指紋照合機能付きUSBメモリ１０１の処理について説明する。
【０１１９】
この処理は、ユーザが指紋照合機能付きUSBメモリ１０１をPC２のUSB端子に差し込んだときに開始される。指紋照合機能付きUSBメモリ１０１をPC２のUSB端子に差し込んだとき、PC２から指紋照合機能付きUSBメモリ１０１に対して電力が供給され、指紋照合機能付きUSBメモリ１０１の状態が電源オンの状態になる。
【０１２０】
ステップＳ６１において、指紋照合エンジン１２２は、指紋センサ１１１に指が置かれたか否かを判定し、指が置かれたと判定するまで待機する。
【０１２１】
指が置かれたとステップＳ６１において判定した場合、指紋照合エンジン１２２は、ステップＳ６２において、指紋センサ１１１から供給されたRF信号に基づいて指紋読み取りデータを取り込む。
【０１２２】
ステップＳ６３において、指紋照合エンジン１２２は、指紋読み取りデータによって表される指紋を照合対象の指紋とし、照合対象の指紋から抽出した特徴と、EEPROM２４に記憶されている暗号鍵によって復号され、暗号処理エンジン２３から供給された指紋テンプレートにより表される特徴との照合を行う。
【０１２３】
ステップＳ６４において、指紋照合エンジン１２２は、指紋の特徴の照合結果に基づいて、認証が成功したか否かを判定する。認証が成功したか否かの判定結果はCPU２２に通知される。
【０１２４】
照合対象の指紋から抽出した特徴と、指紋テンプレートにより表される特徴が一致しないことから、認証が失敗したとステップＳ６４において判定された場合、処理は終了される。
【０１２５】
一方、認証が成功したとステップＳ６４において判定された場合、ステップＳ６５において、CPU２２は、フラッシュメモリ１２にアクセスすることをPC２に許可し、PC２から供給されたデータの書き込み、PC２から指定されたデータの読み出しを制御する。その後、処理は終了される。
【０１２６】
このように、指紋の認証が指紋照合機能付きUSBメモリ１０１内で行われるため、ユーザは、認証を行う専用のソフトウエアをPC２にインストールしておく必要がない。これにより、非常に使い勝手のよい、かつセキュアなUSBメモリが実現される。
【０１２７】
このように、指紋による認証が成功してからデータの読み書きが可能となることにより、フラッシュメモリ１２に記憶されているデータが指紋照合機能付きUSBメモリ１０１の持ち主（ユーザ）の許可を得て記憶されたものであるということが確認できる点と、指紋照合機能付きUSBメモリ１０１の紛失や盗難にあっても内部に記憶されたデータをより確実に守ることができる点の２つのメリットがある。
【０１２８】
また、指紋による認証が所定の回数だけ連続して失敗したとき、内部に記憶されているデータを自動的に消去することにより、より安全な情報漏洩防止システムを構築することが可能になる。
【０１２９】
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のPCなどにインストールされる。
【０１３０】
インストールされる実行するプログラムは、例えば、磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアである図７に示されるリムーバブルメディア６２に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。プログラムは、ROM５２やHDD５８にあらかじめインストールしておくことができる。
【０１３１】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１３２】
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１３３】
【図１】本発明の一実施形態に係るUSBメモリの外観の例を示す図である。
【図２】初期設定の様子を示す図である。
【図３】データをコピーする様子を示す図である
【図４】USBメモリのハードウエア構成例を示すブロック図である。
【図５】フラッシュメモリに形成される領域の例を示す図である。
【図６】USBメモリの機能構成例を示すブロック図である。
【図７】PCのハードウエア構成例を示すブロック図である。
【図８】PCの初期設定処理について説明するフローチャートである。
【図９】USBメモリの初期設定処理について説明するフローチャートである。
【図１０】USBメモリの書き込み処理について説明するフローチャートである。
【図１１】USBメモリの読み出し処理について説明するフローチャートである。
【図１２】PCの読み出し処理について説明するフローチャートである。
【図１３】指紋照合機能付きUSBメモリの外観の例を示す図である。
【図１４】指紋照合機能付きUSBメモリのハードウエア構成例を示すブロック図である。
【図１５】指紋照合機能付きUSBメモリの指紋登録処理について説明するフローチャートである。
【図１６】指紋照合機能付きUSBメモリの認証処理について説明するフローチャートである。
【符号の説明】
【０１３４】
１  USBメモリ，  ２  PC，  １１  コントローラLSI，  １２  フラッシュメモリ，  ４１  情報管理部，  ４２  書き込み制御部，  ４３  読み出し制御部
【図１】
2009169759.tif 000003
【図２】
2009169759.tif 000004
【図３】
2009169759.tif 000005
【図４】
2009169759.tif 000006
【図５】
2009169759.tif 000007
【図６】
2009169759.tif 000008
【図７】
2009169759.tif 000009
【図８】
2009169759.tif 000010
【図９】
2009169759.tif 000011
【図１０】
2009169759.tif 000012
【図１１】
2009169759.tif 000013
【図１２】
2009169759.tif 000014
【図１３】
2009169759.tif 000015
【図１４】
2009169759.tif 000016
【図１５】
2009169759.tif 000017
【図１６】
2009169759.tif 000018