(57)【要約】  【課題】  ファイル等のデータに対する十分な保護機能を提供することができる可搬型メモリを提供する。  【解決手段】  メモリユニット６では、マイクロコンピュータ４３において、フラッシュメモリ３５に記憶されているファイル（データ）を利用するたびに暗号鍵を変化させるのでセキュリティを向上させることができる。また、マイクロコンピュータ４３は、暗号鍵の整合性チェックを定期的に行うので、不正な解析による情報漏洩を防ぐことができる。  【選択図】  図２
2007265400.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータとの間でデータを入出力するインタフェースと、
データを記憶するメモリと、
乱数を発生する乱数発生手段と、
当該乱数発生手段が発生した乱数に基づいて生成した暗号鍵でデータを暗号化する暗号化機能と、データを復号化する復号化機能とを備えた暗号化／復号化手段と、
前記インタフェースを介して入力したデータを前記暗号化／復号化手段に暗号化させて前記メモリに書き込む書き込み動作と、前記メモリから読み出した暗号化されたデータを前記暗号化／復号化手段に復号化させた後に前記インタフェースを介して出力する読み出し動作と、を行う制御手段と、
を有する可搬型メモリ。
【請求項２】
前記制御手段は、前記読み出し動作を行った前記データを、新たに発生した乱数を用いて生成した新たな暗号鍵を基に前記暗号化／復号化手段で暗号化した後に、前記メモリに書き込む請求項１に記載の可搬型メモリ。
【請求項３】
前記制御手段は、前記メモリに記憶されたデータが不正に読み取りされたか否かを判別する不正読取判別手段をさらに有する請求項１または２に記載の可搬型メモリ。
【請求項４】
前記制御手段は、前記暗号鍵を前記メモリ以外の記憶手段に記憶すると共に、前記暗号鍵を当該暗号鍵を用いて暗号化されたデータに関連付けて前記メモリに記憶し、
前記不正読取判別手段は、
前記記憶手段に記憶した前記暗号鍵と、前記メモリに記憶した前記暗号鍵とを比較して前記データが不正に読み取られたか否かを判別する請求項３に記載の可搬型メモリ。
【請求項５】
前記制御手段は、不正に読み取られたと前記不正読取判別手段で判別されたデータを前記メモリから削除する請求項３または４に記載の可搬型メモリ。
【請求項６】
前記制御手段は、前記メモリに記憶されているデータに対応付けられた復号化条件を基に、当該データが利用不可であると判断すると、当該データが利用不可である場合に削除することが指定されていることを条件に当該データを削除する請求項１〜５のいずれかに記載の可搬型メモリ。
【請求項７】
生体認証を行う生体認証手段
をさらに有し、
前記制御手段は、前記生体認証手段による生体認証の結果に基づいて、前記メモリへのアクセスを制御する請求項１〜６のいずれかに記載の可搬型メモリ。
【請求項８】
前記制御手段は、前記生体認証手段による生体認証処理において否定判定の回数が規定回数を超えた場合に、所定の条件に基づいて、前記メモリに記憶されているデータを消去する請求項７に記載の可搬型メモリ。
【請求項９】
前記メモリ、前記暗号化／復号化手段および前記制御手段を収容し、前記インタフェースを構成するプラグを突出させる筐体と、
前記プラグをカバーする第1の位置と前記プラグをカバーしない第２の位置間で、前記筐体の外側をスライドする保護手段と、
を有する請求項１〜８のいずれかに記載の可搬型メモリ。
【請求項１０】
前記生体認証手段は、生体データをセンシングするセンサ部を有し、
前記保護手段には、当該保護手段が前記第２の位置に位置するときに前記センサ部を外部に露出させる開口部が形成されている請求項９に記載の可搬型メモリ。
【請求項１１】
前記乱数発生手段は、放射線源を利用して自然乱数を発生するものである請求項１〜１０のいずれかに記載の可搬型メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は可搬型メモリに関するものであり、特にファイル等に対する強力なデータ保護機能を提供することができる可搬型メモリに関するものである。
【背景技術】
【０００２】
近年、コンピュータの標準的なインターフェイスであるＵＳＢ(Universal Serial Bus)コネクタなどに接続して使用する不揮発性のフラッシュメモリ装置が督及している。そして、フラッシュメモリ装置内のファイルを暗号化等によって保護する方法も各種提案されている。
【０００３】
例えば下記の特許文献１には、外部から入力される暗証番号等が正しいものでなければ
他人はその記憶データへのアクセスができないフラッシュメモリ、メモリスティック等の
携帯型記憶媒体またはスマートメディア、ＳＤカード、マイクロメディアカード等に接続
される記憶媒体のアダプタが開示されている。
また、上記したような、従来のファイル保護方式においてはファイルの保護のためにキーボード等からパスワードを入力して認証を行っている。
【特許文献１】特開２００４−２１９５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来のファイル保護方式では、不正な手法でフラッシュメモリに対して直接アクセスしてデータを読み出されると、秘密情報が漏洩してしまうという問題がある。
また、記録媒体と共にパスワードが他人に盗まれるとファイルは保護できない。また、ユーザは長いパスワードを覚えておくか、手帳などに記載しておく必要があり、パスワードを忘れたり、漏洩する危険性があるなどという問題点があった。
【０００５】
本発明は、上述した従来技術の問題点を解決し、ファイル等のデータに対する十分な保護機能を提供することができる可搬型メモリを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した従来技術の問題点を解決し、上述した目的を達成するために、本発明の可搬型メモリは、コンピュータとの間でデータを入出力するインタフェースと、データを記憶するメモリと、乱数を発生する乱数発生手段と、当該乱数発生手段が発生した乱数に基づいて生成した暗号鍵でデータを暗号化する暗号化機能と、データを復号化する復号化機能とを備えた暗号化／復号化手段と、前記インタフェースを介して入力したデータを前記暗号化／復号化手段に暗号化させて前記メモリに書き込む書き込み動作と、前記メモリから読み出した暗号化されたデータを前記暗号化／復号化手段に復号化させた後に前記インタフェースを介して出力する読み出し動作と、を行う制御手段とを有する。
【０００７】
本発明の可搬型メモリでは、メモリにデータを暗号化して記憶する。そのため、メモリに対して直接不正にアクセスされた場合でも、データは暗号化されているため、秘密情報が流出することを回避できる。
また、本発明の可搬型メモリでは、乱数を発生させて暗号鍵を生成するため、暗号鍵を予測困難にでき、不正な解読を困難にできる。
【０００８】
また、本発明の可搬型メモリの前記制御手段は、好ましくは、前記読み出し動作を行った前記データを、新たに発生した乱数を用いて生成した新たな暗号鍵を基に前記暗号化／復号化手段で暗号化した後に、前記メモリに書き込む。
また、本発明の可搬型メモリの前記制御手段は、好ましくは、前記メモリに記憶されたデータが不正に読み取りされたか否かを判別する不正読取判別手段をさらに有する。
また、本発明の可搬型メモリの前記制御手段は、好ましくは、前記暗号鍵を前記メモリ以外の記憶手段に記憶すると共に、前記暗号鍵を当該暗号鍵を用いて暗号化されたデータに関連付けて前記メモリに記憶し、前記不正読取判別手段は、前記記憶手段に記憶した前記暗号鍵と、前記メモリに記憶した前記暗号鍵とを比較して前記データが不正に読み取られたか否かを判別する。
【０００９】
また、本発明の可搬型メモリの前記制御手段は、好ましくは、不正に読み取られたと前記不正読取判別手段で判別されたデータを前記メモリから削除する。
また、本発明の可搬型メモリの前記制御手段は、好ましくは、前記メモリに記憶されているデータに対応付けられた復号化条件を基に、当該データが利用不可であると判断すると、当該データが利用不可である場合に削除することが指定されていることを条件に当該データを削除する。
【００１０】
また、本発明の可搬型メモリは、好ましくは、生体認証を行う生体認証手段をさらに有し、前記制御手段は、前記生体認証手段による生体認証の結果に基づいて、前記メモリへのアクセスを制御する。
【００１１】
また、本発明の可搬型メモリの前記制御手段は、好ましくは、前記生体認証手段による生体認証処理において否定判定の回数が規定回数を超えた場合に、所定の条件に基づいて、前記メモリに記憶されているデータを消去する。
また、本発明の可搬型メモリは、好ましくは、前記メモリ、前記暗号化／復号化手段および前記制御手段を収容し、前記インタフェースを構成するプラグを突出させる筐体と、前記プラグをカバーする第1の位置と前記プラグをカバーしない第２の位置間で、前記筐体の外側をスライドする保護手段とを有する。
【００１２】
また、本発明の可搬型メモリの前記生体認証手段は、好ましくは、生体データをセンシングするセンサ部を有し、前記保護手段には、当該保護手段が前記第２の位置に位置するときに前記センサ部を外部に露出させる開口部が形成されている。
また、本発明の可搬型メモリの前記乱数発生手段は、好ましくは、放射線源を利用して自然乱数を発生するものである。
【発明の効果】
【００１３】
本発明によれば、ファイル等のデータに対する十分な保護機能を提供することができる可搬型メモリを提供することができる。
【発明を実施するための最良の形態】
【００１４】
＜第１実施形態＞
以下、本発明の実施形態に係わるメモリユニット６、並びにそれが装着されるコンピュータについて説明する。
図１は、本実施形態の後述するメモリユニット６が装着されるコンピュータ１０の構成図である。
【００１５】
コンピュータ１０は、周知の構成のパーソナルコンピュータであり、図１に示すように、例えば、バス２０を介して接続された、ＵＳＢインタフェース２１、ディスプレイ２２、操作部２３、メモリ２４、ネットワークインタフェース２５および処理回路２６を有する。ＵＳＢインタフェース２１は、例えば、ＵＳＢ規格に準拠したＵＳＢコネクタであるが、これに限定されるものではない。
【００１６】
コンピュータ１０は、インターネット、ＬＡＮ(Local Area
Network)、データ通信回線など任意の通信網を介してサーバと接続されていてもよい。
【００１７】
図２は、本実施形態に係る可搬型メモリとしてのメモリユニット６の構成図である。
メモリユニット６は、図２に示すように、ＵＳＢプラグ３１、ＵＳＢコントローラ３３、フラッシュメモリコントローラ３４、フラッシュメモリ３５、乱数発生器３７、タイマ３９、電池４１およびマイクロコンピュータ４３などを有する。
【００１８】
また、マイクロコンピュータ４３は耐タンパ性のモジュールであり、マイクロコンピュータ４３内の処理およびデータを外部から監視できないと共に、改竄もできない。
【００１９】
ＵＳＢプラグ３１は、コンピュータ１０のＵＳＢインタフェース２１のＵＳＢコネクタに接続される。
ＵＳＢコントローラ３３は、ＵＳＢプラグ３１を介してマイクロコンピュータ４３がＵＳＢのプロトコルに基づいて通信を行うように制御する。なお、このようなＵＳＢコントローラ３３は市販されている。
【００２０】
フラッシュメモリコントローラ３４は、マイクロコンピュータ４３からの指示に基づいて、フラッシュメモリ３５に対してのファイル（データ）の書き込み動作および読み出し動作を行う。フラッシュメモリコントローラ３４にはメモリユニット６固有のシリアル番号が格納されている。
なお、メモリユニット６にフラッシュメモリ３５を内蔵する代わりにフラッシュメモリを内蔵した任意のメディアカードを着脱可能とする構成としてもよい。
【００２１】
乱数発生手段としての乱数発生器３７は、例えば、特許第２９２６５３９号公報に開示されているような微弱な放射性線源とセンサを利用して自然乱数を発生する装置である。なお、他の方式のハードウェアによる乱数発生器、あるいはソフトウェアにより擬似乱数を発生する機能を有する乱数発生器を使用してもよい。
【００２２】
タイマ３９は、例えば水晶発振器を備えた計時機能を有し、電池４１によりバックアップされ、メモリユニット６をコンピュータ１０から抜いてＵＳＢプラグ３１から電源が供給されなくなっても動作を継続するように構成されている。
【００２３】
マイクロコンピュータ４３は、ＣＰＵ、ＲＡＭ、ＲＯＭ、フラッシュメモリ、外部とのインターフェイスポート（バス）等を備えた周知の1チップコンピュータである。
マイクロコンピュータ４３は、ＵＳＢコントローラ３３、フラッシュメモリコントローラ３４、乱数発生器３７およびタイマ３９と接続されており、内蔵されているＣＰＵはＲＯＭに格納されているプログラムを実行する。
本実施形態で説明するマイクロコンピュータ４３の処理は、上記プログラムに基づいて実行される。また、ＲＯＭにはマイクロコンピュータ４３に固有のシリアル番号も格納されている。
【００２４】
マイクロコンピュータ４３は、暗号化／復号化手段、制御手段を有している。暗号化／復号化手段は、フラッシュメモリ３５に記憶するデータを暗号化する暗号化機能、およびフラッシュメモリ３５に暗号化されて記憶されているデータを復号化する復号化機能を有する。制御手段は、メモリユニット６の動作を統括的に制御する制御機能を有する。  
【００２５】
図２に示すマイクロコンピュータ４３内のフラッシュメモリにはファイル管理情報が記憶されている。
ファイル管理情報としては、例えば、フラッシュメモリ３５に記憶されたデータ（ファイル）の名称（ファイル名）、ファイルサイズ、フラッシュメモリ３５内におけるファイル格納番地、ファイル更新日時、データの暗号化方式、暗号鍵、復号化条件、更新履歴情報などがある。
また、復号化条件としては、復号許可期間、復号許可期限、復号許可回数、期限切れ等の場合の削除の要否、不正使用時の処理などがある。
【００２６】
以下、メモリユニット６の動作例について説明する。
［初期動作］
メモリユニット６は、当該メモリユニット６が装着されたコンピュータ１０に対してユーザがアプリケーション開始の要求を出すことにより以下に示す初期動作を実行する。
すなわち、コンピュータ１０のＵＳＢインタフェースのＵＳＢコネクタに対してメモリユニット６のＵＳＢプラグ３１を差し込むと、コンピュータ１０が実行するＯＳ(Operating System)は、メモリユニット６を通常のＵＳＢメモリ装置と同じ外部記憶装置として認識し、ドライブを割り当てる。
コンピュータ１０のＯＳがWindows（登録商標） XPの場合には、例えば、マイコンピュータのフォルダ内において、メモリユニット６に対応するドライブが割り当てられる。
そして、ユーザがコンピュータ１０のディスプレイに表示された画面を基に、メモリユニット６のドライブに割り当てられたアイコンをダブルクリック等すると、メモリユニット６のマイクロコンピュータ４３はユーザ認証処理を行う。ユーザ認証処理としては、ユーザにＩＤとパスワードを入力させ、マイクロコンピュータ４３が、その入力されたＩＤとパスワードが予め登録されたデータと一致するか否かで判別する態様を例示することができる。
【００２７】
マイクロコンピュータ４３は、上記ユーザ認証処理の結果がＯＫである場合（正当なユーザであると判断した場合）に、図３に示す初期動作を実行する。
【００２８】
ステップＳ１１：マイクロコンピュータ４３は、後に詳細に説明する暗号鍵の整合性チェック処理を行う。
【００２９】
ステップＳ１２：マイクロコンピュータ４３は、後に詳細に説明するファイル監視処理を行う。
ステップＳ１３：マイクロコンピュータ４３は、終了指示有りか否かを判別する。そして、肯定判定で処理を終了する。一方、否定判定でステップＳ１４に進む。
ステップＳ１４：マイクロコンピュータ４３は、所定時間経過したか否かを判別する。そして、肯定判定でステップＳ１１の処理に戻り、否定判定でステップＳ１３以降の処理を繰り返す。
【００３０】
［暗号鍵の整合性チェック処理（図３のステップＳ１１）］
図４は、図３に示すステップＳ１１の暗号鍵の整合性チェック処理を説明するためのフローチャートである。
ステップＳ２１：マイクロコンピュータ４３は、フラッシュメモリ３５に記憶されている全ファイルのチェックが完了したか否かを判別する。そして、マイクロコンピュータ４３は、肯定判定でステップＳ１１の処理を終了し、否定判定でステップＳ２２へ進む。
【００３１】
ステップＳ２２：マイクロコンピュータ４３は、フラッシュメモリ３５に記憶されているファイルの中から未チェックファイルを一つ選択する。
ステップＳ２３：マイクロコンピュータ４３は、ステップＳ２２で選択したファイルの暗号鍵の整合性をチェックする。これは、マイクロコンピュータ４３が、フラッシュメモリ３５に記憶されているファイルのヘッダに記載されている暗号鍵と、ファイル管理情報に記載されているその選択されたファイルに対応する暗号鍵が同一であるか否かをチェックするものである。
暗号鍵は、通常、ファイルの読み出し、あるいは書き込みの度に更新され、マイクロコンピュータ４３内のファイル管理情報にも記憶（保存）される。メモリユニット６のフラッシュメモリ３５に記憶されたファイルが、他の装置によってマイクロコンピュータ４３と同様の処理で不正に読み出しが行われた場合には、この暗号鍵が更新され、正当なマイクロコンピュータ４３のファイル管理情報として記憶されている暗号鍵と整合しなくなる。ステップＳ２３においては、この暗号鍵が一致するか否かをチェックするものである。
【００３２】
ステップＳ２４：マイクロコンピュータ４３は、ステップＳ２３のチェックにおいて暗号鍵が整合していないと判定された場合、つまり不整合である場合にはＳ２５へ進み、一方、整合していると判定された場合にはステップＳ２６に進む。
【００３３】
ステップＳ２５：マイクロコンピュータ４３は、ステップＳ２４で暗号鍵が不整合であると判定されたファイルを削除する。当該処理については後に詳細に説明する。
ステップＳ２６：マイクロコンピュータ４３は、ステップＳ２３のチェック結果の履歴を記録する。
【００３４】
［削除処理（図４のステップＳ２５など）］
図５は、図４に示すステップＳ２５の削除処理を説明するためのフローチャートである。
ステップＳ３１：マイクロコンピュータ４３は、図４に示すステップＳ２４で不整合であると判定されたファイルのヘッダ情報からファイル長を取得する。
【００３５】
ステップＳ３２：マイクロコンピュータ４３は、ファイル長に従い、ファイルの情報領域を全てＮＵＬＬデータで上書する。
ステップＳ３３：マイクロコンピュータ４３は、ファイルのヘッダをＮＵＬＬデータで上書する。
ステップＳ３４：マイクロコンピュータ４３は、当該ファイルのファイル管理情報を削除する。
【００３６】
［ファイル監視処理（Ｓ１２）］
図６は、図３に示すステップＳ１２のファイル監視処理を説明するためのフローチャートである。
ステップＳ４１：マイクロコンピュータ４３は、フラッシュメモリ３５に記憶されている全ファイルのチェックが完了したか否かを判別する。そして、マイクロコンピュータ４３は、肯定判定で処理の実行を終了し、否定判定でＳ４２へ進む。
【００３７】
ステップＳ４２：マイクロコンピュータ４３は、フラッシュメモリ３５に記憶されているファイルの中から未チェックファイルを一つ選択する。
ステップＳ４３：マイクロコンピュータ４３は、ステップＳ４２で選択したファイルが期限設定有りか否かを判別する。これは、マイクロコンピュータ４３のフラッシュメモリに記憶されたファイル管理情報の一部である復号化条件として、復号化許可期間、復号化許可期限、復号化許可回数などが設定されているかどうかを判別するものである。そして、マイクロコンピュータ４３は、肯定判定の場合にはステップＳ４４へ進み、否定判定の場合にはステップＳ４１に戻る。
【００３８】
ステップＳ４４：マイクロコンピュータ４３は、ステップＳ４２で選択したファイルが期限切れか、あるいはすでに利用した回数が復号化許可回数を超えているか否かを判別する。これは、復号化条件として設定された、復号化許可期間、復号化許可期限、復号化許可回数などと、図２に示すタイマ３９の計時情報、利用ログなどを比較し判別するものである。そして、マイクロコンピュータ４３は、肯定判定の場合にはステップＳ４５へ進み、一方、否定判定の場合にはステップＳ４１の処理に戻る。
ステップＳ４５：マイクロコンピュータ４３は、ファイルが期限切れなどの場合に削除するよう指定されているか否かを判別する。これは、ファイル管理情報に、期限切れ等の場合には削除が必要であると設定されているかどうかを判別するものである。そして、肯定判定の場合にはステップＳ４６へ進み、そうでない場合にはステップＳ４７に進む。
【００３９】
ステップＳ４６：マイクロコンピュータ４３は、ステップＳ４２で選択したファイルの削除処理を行う。当該削除処理は、例えば、図５に示す手順で行われる。
ステップＳ４７：マイクロコンピュータ４３は、ステップＳ４２で選択したファイルの無効化処理を行う。当該無効化処理としては、そのファイルを使用できなくする処理であることを例示することができる。
【００４０】
ステップＳ４８：マイクロコンピュータ４３は、一連のチェック処理の結果の履歴を記録する。
【００４１】
［ファイル管理処理］
当該ファイル管理処理は、例えば、ドライブに割り当てられたメモリユニット６のアイコンをユーザがダブルクリック等で指定し、ユーザが認証されたことを条件に行われる。
図７は、メモリユニット６が行うファイル管理処理を説明するためのフローチャートである。
ステップＳ５１：マイクロコンピュータ４３は、ファイル管理画面を、図１に示すコンピュータ１０のディスプレイ２２に表示させる。ファイル管理画面には、図２に示すフラッシュメモリ３５に記憶されたファイルの一覧が表示されている。
【００４２】
ステップＳ５２：マイクロコンピュータ４３は、ユーザが図１に示す操作部２３を操作してファイル管理画面に表示されたファイル一覧からいずれのファイルを選択したかの情報を取得する。
ステップＳ５３：マイクロコンピュータ４３は、ステップＳ５２で選択されたファイルに対応するアプリケーションを呼び出してファイルを開く。この際に、マイクロコンピュータ４３は、フラッシュメモリ３５から読み出したファイルを、それに対応する暗号鍵で復号化する。
【００４３】
ステップＳ５４：マイクロコンピュータ４３は、乱数発生器３７に新たな乱数を発生させ、その乱数を基に暗号鍵を生成する。
ステップＳ５５：マイクロコンピュータ４３は、ファイルを開いたアプリケーションが終了するまでの間、ファイルの更新状況を監視する。
ステップＳ５６：マイクロコンピュータ４３は、ファイル利用を終了する際にファイルが更新されたか否かを判別し、肯定判定の場合にはステップＳ５７へ進む。一方、否定判定の場合にはステップＳ５８へ進む。
【００４４】
ステップＳ５７：マイクロコンピュータ４３は、ステップＳ５４で新たに生成した暗号鍵で更新後のファイルを暗号化してフラッシュメモリ３５に書き込む。
ステップＳ５８：マイクロコンピュータ４３は、ファイル管理情報を更新する。
ステップＳ５９：マイクロコンピュータ４３は、上述した処理の履歴を記録する。
【００４５】
なお、上記ファイル管理処理は、メモリユニット６が実行するものとして説明したが、特にかかる態様に限定されるものではなく、メモリユニット６が装着されたコンピュータ１０が実行してもよい。
すなわち、メモリユニット６が装着されたコンピュータ１０は、ファイル管理画面を、自身のディスプレイに表示させる。
そして、ユーザが、ファイル管理画面に表示されたファイル一覧からファイルを選択すると、コンピュータ１０は、選択されたファイルに対応するアプリケーションを呼び出して、選択されたファイルを開く。この際に、メモリユニット６のマイクロコンピュータ４３は、フラッシュメモリ３５から読み出したファイルを、それに対応する暗号鍵で復号化する。
【００４６】
そして、コンピュータ１０は、メモリユニット６に対して、乱数発生器３７により新たな乱数を発生させ、その乱数を基に暗号鍵を生成させる。
そして、コンピュータ１０は、ファイルを開いたアプリケーションが終了するまでの間、ファイルの更新状況を監視する。そして、コンピュータ１０は、ファイル利用を終了する際にファイルが更新されている場合には、メモリユニット６に、新たに生成した暗号鍵で更新後のファイルを暗号化させ、フラッシュメモリ３５に書き込ませる。
また、コンピュータ１０は、メモリユニット６に、ファイル管理情報を更新させ、これまでの処理の履歴を記録させる。
【００４７】
［ファイル読み出し動作］
図８は、メモリユニット６が行うファイル読み出し動作を説明するためのフローチャートである。
ステップＳ７１：図２に示すマイクロコンピュータ４３は、指定されたファイルをファイル管理情報に格納されている暗号鍵で復号化する。
ステップＳ７２：マイクロコンピュータ４３は、ステップＳ７１で復号化したファイルを、ＵＳＢコントローラ３３およびＵＳＢプラグ３１を介してコンピュータ１０に表示する。
【００４８】
ステップＳ７３：マイクロコンピュータ４３は、乱数発生器３７が発生した新たな乱数を基に新たな暗号鍵を生成する。
ステップＳ７４：マイクロコンピュータ４３は、ステップＳ７１で復号化したデータを、ステップＳ７３で生成した暗号鍵を基に再暗号化してフラッシュメモリ３５に書き込む。
ステップＳ７５：マイクロコンピュータ４３は、ステップＳ７３で生成した暗号鍵を含むファイル管理情報を更新する。
ステップＳ７６：マイクロコンピュータ４３は、更新履歴を記録する。
【００４９】
［ファイル書き込み動作］
図９は、メモリユニット６が行うファイル書き込み動作を説明するためのフローチャートである。
ステップＳ１０１：マイクロコンピュータ４３は、ＵＳＢプラグ３１を介してコンピュータ１０から書き込み対象のファイルを入力する。
【００５０】
ステップＳ１０２：マイクロコンピュータ４３は、乱数発生器３７が発生した新たな乱数を基に新たな暗号鍵を生成する。
ステップＳ１０３：マイクロコンピュータ４３は、ステップＳ１０１で入力したファイルを、ステップＳ１０２で生成した暗号鍵を基に暗号化してフラッシュメモリ３５に書き込む。
ステップＳ１０４：マイクロコンピュータ４３は、ステップＳ１０３で生成した暗号鍵を含むファイル管理情報を登録する。
ステップＳ１０５：マイクロコンピュータ４３は、履歴を記録する。
【００５１】
本実施形態で用いられる暗号化の方式はスクランブルなど公知の任意の方式を採用可能である。また、暗号化の度に乱数を利用して複数の暗号化方式の中からランダムに暗号化方式を選択し、更に乱数を用いて発生させた暗号鍵で暗号化してもよい。この場合には暗号化方式もファイル管理情報に記録する。
【００５２】
以上説明したように、メモリユニット６では、フラッシュメモリ３５に記憶されているファイル（データ）を利用するたびに暗号鍵を変化させるのでセキュリティを向上させることができる。
また、その暗号鍵の基になるのが自然乱数である場合には、式により作り出される擬似乱数と異なり予測することができないので、擬似乱数を用いる場合よりもセキュリティを向上させることができるとともに、計算や重複の検査等の作業が不要なので高速で乱数を生成することができる。
また、メモリユニット６では、暗号鍵の整合性チェックを定期的に行うので、不正な解析による情報漏洩を防ぐことができる。
【００５３】
また、メモリユニット６では、データをコンピュータ１０内ではなく、コンピュータ１０外のセキュアなモジュールに格納するため、データファイルに対する強力なデータ保護機能を提供することができる。
また、メモリユニット６では、メモリユニットのみを紛失したり盗難にあっても対応する暗号鍵がないとデータを復号化できないのでデータが漏洩する恐れが低い。
また、メモリユニット６では、複数種類の認証の要否、削除条件、使用期限等の復号化条件を設定可能であり、例えば業務上の秘密データファイルの保護の他、有料コンテンツの管理など各種のニーズに対応して保護機能を任意に設定可能である。
【００５４】
＜第２実施形態＞
本実施形態では、メモリユニットが生体認証機能を備えていることを特徴としている。
すなわち、メモリユニット６０６は、図１０に示すように、ＵＳＢプラグ３１、ＵＳＢコントローラ３３、フラッシュメモリコントローラ３４、フラッシュメモリ３５、乱数発生器３７、タイマ３９、電池４１、マイクロコンピュータ６４３および生体認証部６０２を有する。なお、図１０において、図２と同じ符号を付した構成要素の機能は、基本的に第１実施形態で説明したものと同じである。
【００５５】
生体認証部６０２は、例えば、マイクロコンピュータ６４３からの指示に基づいて、生体センサを使用して生体データを取得し、その生体データをマイクロコンピュータ６４３に出力するものである。そして、マイクロコンピュータ６４３は、生体認証部６０２から取得した生体データが、マイクロコンピュータ６４３のフラッシュメモリあるいはフラッシュメモリ３５などの記憶手段に予め登録されている生体データと照合して認証結果を出力する。
なお、認証する生体としては、例えば、指紋、血管パターン、目の光彩パターンなどを例示することができる。また、生体データは、ユーザ１人のみを登録しておいてもいいし、複数ユーザを登録しておいてもよい。
【００５６】
図１１および図１２は、本実施形態に係るメモリユニット６０６の外観斜視図である。
メモリ筐体５７は、図１０に示すＵＳＢコントローラ３３、フラッシュメモリコントローラ３４、フラッシュメモリ３５、乱数発生器３７、タイマ３９、電池４１およびマイクロコンピュータ４３、生体認証部６０２を、その内部に収容し、インタフェースを構成するＵＳＢプラグ３１を筐体外部に突出させる。
メモリ筐体５７の外側には保護部（保護手段）５０が設けられている。保護部５０は、その一端に、収容蓋５１ａ，５１ｂが設けられており、他端は開口している。収容蓋５１ａ，５１ｂは、蓋を閉じる回転向きに付勢された状態で、それぞれ軸５３ａ，５３ｂを中心に回転可能な状態で設けられている。
そして、保護部５０は、ＵＳＢプラグ３１をカバーする第1の位置とＵＳＢプラグ３１をカバーしない第２の位置間で、メモリ筐体５７の外側をスライドすることが可能になっている。
保護部５０が第１の位置に位置する状態の外観斜視図を示したのが図１２であり、かかる状態においては、上記付勢力によって収容蓋５１ａ，５１ｂが閉じた状態になり、ＵＳＢプラグ３１は、保護手段５０でカバーされる。
保護部５０が第２の位置に位置する状態の外観斜視図を示したのが図１１であり、かかる状態においては、ＵＳＢプラグ３１、メモリ筐体５７による押圧により、上記付勢力に抗して収容蓋５１ａ，５１ｂが開き、メモリ筐体５７の上／下面により開状態が保持され、ＵＳＢプラグ３１は、保護手段５０でカバーされない。
【００５７】
また、メモリ筐体５７の外側には、ユーザが、保護部５０をメモリ筐体５７に対してスライドさせ易いように、あるいは、メモリ筐体５７を保護部５０に対してスライドさせ易いように、操作部５５が設けられている。そして、この操作部５５に対応する保護部５０の側面５０ａには、操作部５５を保護部５０から突出させ、スライド可能にするためのスライド孔５０ｂが形成されている。
【００５８】
生体認証部６０２は、センシング部６０２ａを備え、センシング部６０２ａによって生体データを取得する。センシング部６０２ａは、図１１に示すように、ＵＳＢプラグ３１が保護部５０によりカバーされていない状態で保護部５０に形成された開口窓（開口部）５０ｃを介して外部に露出する。
一方、図１２に示すように、ＵＳＢプラグ３１が保護部５０によりカバーされている状態では、外部に露出しない。これにより、メモリユニット６０６をコンピュータ１０に装着していない時には、センシング部６０２ａを保護部５０にて保護できる。
【００５９】
［初期動作］
メモリユニット６０６は、当該メモリユニットが装着されたコンピュータ１０に対してユーザがアプリケーション開始の要求を出すことにより以下に示す初期動作を実行する。
すなわち、コンピュータ１０のＵＳＢインタフェースのＵＳＢコネクタに対して図１０に示すメモリユニット６０６のＵＳＢプラグ３１を差し込むと、コンピュータ１０が実行するＯＳ(Operating System)は、メモリユニット６０６を通常のＵＳＢメモリ装置と同じ外部記憶装置として認識し、ドライブを割り当てる。
パーソナルコンピュータのＯＳがWindows（登録商標） XPの場合には、例えば、マイコンピュータのフォルダ内において、メモリユニット６０６に対応するドライブが割り当てられる。
そして、ユーザがコンピュータ１０のディスプレイに表示された画面を基に、メモリユニット６０６のドライブに割り当てられたアイコンをダブルクリック等すると、メモリユニット６０６のマイクロコンピュータ６４３は初期動作を行う。
【００６０】
図１３は、メモリユニット６０６が実行する初期動作を説明するためのフローチャートである。
ステップＳ２０１：マイクロコンピュータ６４３は、生体（例えば、指紋）認証処理開始すべきか否かを判別し、肯定判定の場合にはステップＳ２０２へ進み、否定判定の場合には、処理を終了する。
初期動作が実行開始されると、コンピュータ１０の処理回路２６は、「生体認証開始」、「キャンセル」のアイコンが表示される生体認証画面をディスプレイ２２に表示する。そして、ユーザが「生体認証開始」のアイコンをダブルクリックすることにより、マイクロコンピュータ６４３において、生体認証処理開始すべきと判定される。一方、ユーザが「キャンセル」のアイコンをダブルクリックすると、マイクロコンピュータ６４３において、生体認証処理開始すべきではないと判定され、処理を終了する。
【００６１】
ステップＳ２０２：マイクロコンピュータ６４３は、後に詳細に説明する生体認証処理を実行する。
ステップＳ２０３：マイクロコンピュータ６４３は、ステップＳ２０２で行われた生体認証処理の結果、生体認証ＯＫか否かを判定し、肯定判定の場合にはステップＳ２０４へ進み、否定判定の場合には、処理を終了する。
ステップＳ２０４：マイクロコンピュータ６４３は、後に詳細に説明するファイル管理処理を実行する。
【００６２】
［ファイル管理処理（ステップＳ２０４）］
図１４は、図１３に示すステップＳ２０４のファイル管理処理を説明するためのフローチャートである。
ステップＳ２１１：マイクロコンピュータ６４３は、ファイル管理画面を、メモリユニット６０６が装着されたコンピュータ１０のディスプレイに表示させる。ファイル管理画面には、フラッシュメモリ３５に記憶されたファイルの一覧が表示されている。
【００６３】
ステップＳ２１２：ユーザが操作部２３を操作して、ファイル管理画面に表示されたファイル一覧からユーザが選択するファイルがいずれであるかの情報を取得する。
ステップＳ２１３：マイクロコンピュータ６４３は、ステップＳ２１２でユーザが選択したファイルを利用（読み出し）するために生体認証が必要であるか否かを判別する。そして、肯定判定の場合にはＳ２１４へ進み、否定判定の場合にはステップＳ２１６へ進む。
【００６４】
ステップＳ２１４：マイクロコンピュータ６４３は、後に詳細に説明する生体認証処理を実行する。。
ステップＳ２１５：マイクロコンピュータ６４３は、ステップＳ２１４で行った生体認証処理の結果が生体認証ＯＫであるか否かを判別する。そして、肯定判定の場合にはステップＳ２１６へ進む。一方、否定判定された場合には処理を終了する。
【００６５】
ステップＳ２１６：マイクロコンピュータ６４３は、ステップＳ２１２にてユーザが選択したファイルに対応するアプリケーションを呼び出して、ファイルを開く。この際に、マイクロコンピュータ６４３は、フラッシュメモリ３５から読み出したファイルを、それに対応する暗号鍵で復号化する。
【００６６】
ステップＳ２１７：マイクロコンピュータ６４３は、乱数発生器３７に新たな乱数を発生させ、その乱数を基に暗号鍵を生成する。
ステップＳ２１８：マイクロコンピュータ６４３は、ファイルを開いたアプリケーションが終了するまでの間、ファイルの更新状況を監視する。
ステップＳ２１９：マイクロコンピュータ６４３は、ファイル利用を終了する際にファイルが更新されたか否かを判別し、肯定判定の場合にはステップＳ２２０へ進む。一方、否定判定の場合にはステップＳ２２１へ進む。
【００６７】
ステップＳ２２０：マイクロコンピュータ６４３は、ステップＳ２１７で新たに生成した暗号鍵で更新後のファイルを暗号化してフラッシュメモリ３５に書き込む。
ステップＳ２２１：マイクロコンピュータ６４３は、ファイル管理情報を更新する。
ステップＳ２２２：マイクロコンピュータ６４３は、上述した処理の履歴を記録する。
【００６８】
［生体認証処理（ステップＳ２０２，Ｓ２１４）］
図１５は、図１３，図１４に示すステップＳ２０２，Ｓ２１４等の生体認証処理を説明するためのフローチャートである。
ステップＳ２３１：マイクロコンピュータ６４３は、ユーザに対して生体（例えば、指紋）認証を要求する。
このとき、マイクロコンピュータ６４３は、メモリユニットが装着されたコンピュータ１０に所定の要求を出して、当該要求に応じた画像をディスプレイに表示させる。
ステップＳ２３２：マイクロコンピュータ６４３は、ステップＳ２３１の要求により生体認証部６０２にて得られた生体データが、予め登録されている生体データと一致するか否かの判別をする。そして、マイクロコンピュータ６４３は、肯定判定である場合にステップＳ２３３に進み、否定判定である場合にステップＳ２３４に進む。
【００６９】
ステップＳ２３３：マイクロコンピュータ６４３は、生体認証部６０２にて得られた生体データと、予め登録されている生体データとが一致するので、生体認証ＯＫであるとして処理を終了する。
【００７０】
ステップＳ２３４：マイクロコンピュータ６４３は、ステップＳ２３２の処理を行ったのが規定回数以内か否かを判別し、肯定判定の場合にはステップＳ２３５に進み、否定判定の場合にはステップＳ２３６に進む。
ステップＳ２３５：マイクロコンピュータ６４３は、認証失敗と表示するとともに、再度の認証を要求し、ステップＳ２３２に戻る。
【００７１】
ステップＳ２３６：マイクロコンピュータ６４３は、不正利用対策が設定されているか否かを判別する。不正利用対策としては、生体データが登録されている正当なユーザ以外の者が利用しようとした場合に、フラッシュメモリ３５に記憶されているデータを削除するなどの対策が設定されるものである。また、不正利用対策が設定されているか否かはファイル管理情報などに含ませておく。また、不正利用対策は、フラッシュメモリ３５を１単位として設定してもよいし、フラッシュメモリ３５に設けられたフォルダ毎あるいはファイル毎に設定してもよい。
そして、本ステップで肯定判定の場合にはステップＳ２３７へ進み、否定判定の場合にはステップＳ２４１へ進む。
ステップＳ２３７：マイクロコンピュータ６４３は、削除指定が設定されているか否かを判別する。肯定判定の場合にはステップＳ２３８へ進む。一方、否定判定の場合には、ステップＳ２３９へ進む。
ステップＳ２３８：マイクロコンピュータ６４３は、フラッシュメモリ３５に記憶されているファイルの削除処理を行う。
【００７２】
ステップＳ２３９：マイクロコンピュータ６４３は、フラッシュメモリ３５に記憶されているファイルの無効化処理を行う。
ステップＳ２４０：マイクロコンピュータ６４３は、履歴を記録する。
ステップＳ２４１：マイクロコンピュータ６４３は、生体認証・ＮＧとして処理を終了する。
【００７３】
このように、本実施形態においては、生体認証処理を実行するマイクロコンピュータ６４３は、生体認証部６０２と協働して生体認証手段を構成する。
なお、マイクロコンピュータ６４３は、本実施形態で説明した動作以外の動作については第１実施形態で説明したマイクロコンピュータ４３と同様の動作を行う。
【００７４】
以上説明したように本実施形態のメモリユニット６０６によれば、パスワードではなく、生体認証によってユーザ認証を行うため、ユーザはパスワードを覚える必要がない。また、パスワードが漏れることによる不正利用をなくすことができる。
なお、メモリユニット６０６は、第１実施形態のメモリユニット６の効果も同様に得られる。
【００７５】
本発明は上述した実施形態には限定されない。
すなわち、当業者は、本発明の技術的範囲またはその均等の範囲内において、上述した実施形態の構成要素に関し、様々な変更、コンビネーション、サブコンビネーション、並びに代替を行ってもよい。
例えば、フラッシュメモリ３５に記憶されたデータが読み取られたあるいは改竄されたか否かの検証は、上述したように、ファイルに対応付けられた暗号鍵と、ファイル管理情報に格納された暗号鍵との一致以外の方法でもよい。
【００７６】
また、上述した実施形態では、本発明におけるメモリとしてフラッシュメモリ３５を例示したが、フラッシュメモリ３５以外の半導体メモリ、光ディスク、ＨＤＤ(Hard Disk Drive)等、その他の記録媒体を用いてもよい。
【００７７】
また、上述した実施形態では、マイクロコンピュータ４３，６４３において、暗号化機能、復号化機能および制御機能を実現する場合を例示したが、これらの機能を複数の回路で実現してもよい。
また、上述した実施形態では、コンピュータ１０とメモリユニット６，６０６との間のデータ入出力をＵＳＢ方式で行う場合を例示したが、それ以外の方式のプロトコルを採用してもよい。
【００７８】
また、上述した実施形態では、図２および図１０に示すように、メモリユニット６，６０６がタイマ３９および電池４１を内蔵する場合を例示したが、図６に示す期限切れ対応処理を行わない場合には、これらを内蔵していなくてもよい。
また、上述した実施形態では、コンピュータ１０としてパーソナルコンピュータを例示したが、パーソナルコンピュータ以外の電子機器であってもよい。
【産業上の利用可能性】
【００７９】
本発明は、コンピュータ等に着脱可能に接続されるメモリに適用可能である。
【図面の簡単な説明】
【００８０】
【図１】本発明の実施形態に係わるメモリユニットが装着されるコンピュータを説明するための図である。
【図２】本発明の第１実施形態に係わるメモリユニットの構成図である。
【図３】マイクロコンピュータの初期動作を説明するためのフローチャートである。
【図４】暗号鍵の整合性チェック処理を説明するためのフローチャートである。
【図５】削除処理を説明するためのフローチャートである。
【図６】ファイル監視処理を説明するためのフローチャートである。
【図７】第１実施形態に係るメモリユニットが行うファイル管理処理を説明するためのフローチャートである。
【図８】ファイル読み出し動作を説明するためのフローチャートである。
【図９】ファイル書き込み動作を説明するためのフローチャートである。
【図１０】本発明の第２実施形態のメモリユニットの構成図である。
【図１１】保護部が第２の位置に位置する時のメモリユニットの外観図である。
【図１２】保護部が第１の位置に位置する時のメモリユニットの外観図である。
【図１３】マイクロコンピュータの初期動作を説明するためのフローチャートである。
【図１４】第２実施形態に係るメモリユニットが行うファイル管理処理を説明するためのフローチャートである。
【図１５】生体認証処理を説明するためのフローチャートである。
【符号の説明】
【００８１】
６，６０６…メモリユニット、１０…コンピュータ、２１…ＵＳＢインタフェース、２２…ディスプレイ、２３…操作部、２４…メモリ、２５…ネットワークインタフェース、３１…ＵＳＢプラグ、３３…ＵＳＢコントローラ、３４…フラッシュメモリコントローラ、３５…フラッシュメモリ、３７…乱数発生器、３９…タイマ、４１…電池、４３，６４３…マイクロコンピュータ、５０…保護部、５０ｃ…開口窓、５１ａ，５１ｂ…収容蓋
【図１】
2007265400.tif 000003
【図２】
2007265400.tif 000004
【図３】
2007265400.tif 000005
【図４】
2007265400.tif 000006
【図５】
2007265400.tif 000007
【図６】
2007265400.tif 000008
【図７】
2007265400.tif 000009
【図８】
2007265400.tif 000010
【図９】
2007265400.tif 000011
【図１０】
2007265400.tif 000012
【図１１】
2007265400.tif 000013
【図１２】
2007265400.tif 000014
【図１３】
2007265400.tif 000015
【図１４】
2007265400.tif 000016
【図１５】
2007265400.tif 000017