(57)【特許請求の範囲】
【請求項１】
ファイルを分割して保存する情報分割記録機能を有する情報処理装置において、
ファイルを分割した第１の部分ファイルを保存する第１記憶部と、第２の部分ファイルを保存する第２記憶部と、情報処理装置の動作状態を確認し、その動作状態が特定の変化をしたことを検知する状態検知部と、
前記状態検知部が検知した状態が、不正アクセスが実行され得る危険状態であると判断される場合、前記第２記憶部に保存されている第２の部分ファイルに対して、前記検知した状態に対応したロック処理を実行する制御部と、
着脱可能な外部の不揮発性メモリが接続されているか否かを検知する外部メモリ検知部とを備え、
前記ロック処理が、同期済ファイルの消去処理と未同期ファイルの暗号化処理とを含み、前記同期済ファイルは、着脱可能な外部の不揮発性メモリにもすでに保存されている第２記憶部の第２の部分ファイルであり、前記未同期ファイルは、着脱可能な外部の不揮発性メモリには保存されていない第２記憶部の第２の部分ファイルであり、
前記外部メモリ検知部が不揮発性メモリが接続されたことを検知した場合に、
前記制御部が、前記第２記憶部に保存されていた第２の部分ファイルであって前記不揮発性メモリに保存されていなかった第２の部分ファイルを、前記不揮発性メモリに複写すること、および
前記外部メモリ検知部が、不揮発性メモリが接続されなくなったことを検知した場合に、
前記状態検知部によって複数の異常状態が検知されると、
前記制御部が、前記第２記憶部および前記不揮発性メモリの両方に保存されている第２の部分ファイルについて、前記第２記憶部に保存されている第２の部分ファイルのみを消去することを特徴とする情報処理装置。
【請求項２】
前記状態検知部は、ユーザを特定する識別情報およびユーザの存在を示す在席状態を検知するユーザ状態検知部と、情報処理装置を構成するハードウェアの動作状態を検知する端末状態検知部と、起動が許可されているソフトウェアの動作状態を検知するソフトウェア状態検知部のうち、少なくともいずれか１つ以上を備えていることを特徴とする請求項１の情報処理装置。
【請求項３】
前記外部メモリ検知部が、不揮発性メモリが接続されなくなったことを検知した場合に、前記制御部が、前記第２記憶部および前記不揮発性メモリの両方に保存されている第２の部分ファイルについて、現在編集中であれば、前記第２記憶部に保存されている第２の部分ファイルは消去しないことを特徴とする請求項１の情報処理装置。
【請求項４】
前記外部メモリ検知部が、不揮発性メモリが接続されなくなったことを検知した場合に、前記制御部が、前記第２記憶部に保存されている第２の部分ファイルと、前記不揮発性メモリに保存されている第２の部分ファイルとが一致しないときは、第２記憶部に保存されていた第２の部分ファイルを暗号化することを特徴とする請求項１の情報処理装置。
【請求項５】
前記暗号化された第２の部分ファイルは、外部の不揮発性メモリに保存された復号鍵を用いて復号化することを特徴とする請求項４の情報処理装置。
【請求項６】
前記状態検知部が前記危険状態を検知したとき、前記制御部は、前記同期済ファイルを消去するロック処理および前記未同期ファイルを暗号化するロック処理のいずれか一方または両方の処理を実行することを特徴とする請求項１の情報処理装置。
【請求項７】
前記状態検知部が、ユーザの存在が確認されず、かつユーザが許可していないソフトウェアが起動されていることを検知した場合、前記制御部は、その状態を危険状態と判断し、前記同期済ファイルの消去処理と、前記未同期ファイルの暗号化処理とを行うことを特徴とする請求項６の情報処理装置。
【請求項８】
前記状態検知部が、ユーザの存在が確認されず、かつ外部メモリが接続されていないことを検知した場合、前記制御部は、その状態を危険状態と判断し、前記同期済ファイルの消去処理を実行することを特徴とする請求項６の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置に関し、特に、パソコン等の情報処理装置に保存されているユーザデータの不正流出や不正利用を防止することの可能な情報分割記録機能を持つ情報処理装置に関する。
【背景技術】
【０００２】
パソコン等の情報処理装置で文書を作成した場合、その文書は、通常１つのファイルとして、ハードディスクや可搬型のメモリ媒体（たとえば、ＵＳＢメモリ）に保存される。しかし、単に１つのファイルとして保存した場合には、パソコンが盗難されてしまったとき、簡単にそのファイル内容を不正利用されるおそれがある。
そこで、ファイルを暗号化して保存するものやパスワード入力による読み出し制限をつけて保存するような盗難対策がされている。
【０００３】
さらにセキュリティを向上させるために、作成された文書を１つのファイルではなく、分割して２つの記録媒体に別々に保存する方法が採用されている。
たとえば、作成文書Ａを２つのファイル（Ａ１，Ａ２）に分割し、ファイルＡ１はパソコンに内蔵されたハードディスクに保存し、もう一方のファイルＡ２は可搬型のＵＳＢメモリに保存する。
文書Ａを読み出すときには、２つのファイル（Ａ１，Ａ２）を両方とも読み出し、文書Ａに組み立ててから表示等をする。したがって、もし、ＵＳＢメモリがないと、ファイルＡ２がないので文書Ａを読み出して編集できない。
すなわち、ＵＳＢメモリを取りはずした状態で、パソコンだけが盗まれたとしても、ファイルＡ１だけではパソコン内の文書Ａを開くことができないので、データが不正流出したり不正利用される危険性を減少させることができる。
【０００４】
また、特許文献１には、キャッシュメモリを利用した暗号システムにおいて、暗号処理されないデータが、キャッシュメモリ上に残ってしまうことを防止するために、暗号処理機能のＯＮ−ＯＦＦの切り替えに伴い、キャッシュメモリの古いデータを無効化するキャッシュ無効化処理機能を備えた暗号システムが提案されている。
また、特許文献２には、コンテンツを暗号化してＨＤＤに書き込み、コンテンツの読み出し時に、キャッシュメモリを一時格納用に用い、キャッシュメモリを使用した読み出しと書き込みの終了後には、キャッシュメモリの内容をすべて消去することにより、データの不正漏洩を防止するコンテンツ保護システムが提案されている。
【特許文献１】特開２００５−１０９５７号公報
【特許文献２】特開２００４−２４０６９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、従来のような不正利用の防止方法では、作成されたファイルを編集したり閲覧するためには、必ず、パソコンに、ＵＳＢメモリを接続しなければならない。正規の利用者であっても、ＵＳＢメモリを持っていない場合にはファイルの編集ができな場合がある。
【０００６】
また、ファイルの編集中は、ＵＳＢメモリを接続したままにする必要があり、ユーザにとって使いにくい場合があった。
したがって、たとえば、ごくわずかの間だけ離席する場合に、作業を中断したくないためにＵＳＢメモリをつけたまま席を離れたとすると、ＵＳＢメモリとパソコンの両方が盗難される危険性がある。
すなわち、データを分割して保存しているにもかかわらず、盗難によりデータが漏洩するリスクがある。
【０００７】
ユーザの自由なタイミングでＵＳＢメモリの抜き差しができないため、離席のときにＵＳＢメモリを抜き忘れた場合も同様のリスクがある。
ユーザの利便性を考慮して、さらに上記のようなリスクを少しでも改善するためには、ＵＳＢメモリが接続されていない状態でも編集作業ができるようにすることが望まれる。
【０００８】
また、特許文献１や特許文献２のように、キャッシュメモリにデータを保存することによりＵＳＢメモリがなくても編集を継続することができる場合もあるが、ファイルの読み出しや書き込みなどの処理の終了後に、キャッシュメモリの情報はすべて消去されてしまう。したがって、再度ファイルの編集をするためには、ＵＳＢメモリを接続する必要があり、ユーザの利便性が悪い。
そこで、この発明は、以上のような事情を考慮してなされたものであり、不揮発性のメモリに編集中のデータの一部分を保存するが、情報処理装置と外部メモリの状態に対応して不揮発性メモリに保存されたデータの暗号化または一部消去を行うことにより、データの不正流出と不正利用の危険性を低減させることのできる情報処理装置を提供することを課題とする。
【課題を解決するための手段】
【０００９】
この発明は、ファイルを分割して保存する情報分割記録機能を有する情報処理装置において、ファイルを分割した第１の部分ファイルを保存する第１記憶部と、第２の部分ファイルを保存する第２記憶部と、情報処理装置の動作状態を確認し、その動作状態が特定の変化をしたことを検知する状態検知部と、前記状態検知部が検知した状態が、不正アクセスが実行され得る危険状態であると判断される場合、前記第２記憶部に保存されている第２の部分ファイルに対して、前記検知した状態に対応したロック処理を実行する制御部と、着脱可能な外部の不揮発性メモリが接続されているか否かを検知する外部メモリ検知部とを備え、前記ロック処理が、同期済ファイルの消去処理と未同期ファイルの暗号化処理とを含み、前記同期済ファイルは、着脱可能な外部の不揮発性メモリにもすでに保存されている第２記憶部の第２の部分ファイルであり、前記未同期ファイルは、着脱可能な外部の不揮発性メモリには保存されていない第２記憶部の第２の部分ファイルであり、前記外部メモリ検知部が不揮発性メモリが接続されたことを検知した場合に、前記制御部が、前記第２記憶部に保存されていた第２の部分ファイルであって前記不揮発性メモリに保存されていなかった第２の部分ファイルを、前記不揮発性メモリに複写すること、および前記外部メモリ検知部が、不揮発性メモリが接続されなくなったことを検知した場合に、前記状態検知部によって複数の異常状態が検知されると、前記制御部が、前記第２記憶部および前記不揮発性メモリの両方に保存されている第２の部分ファイルについて、前記第２記憶部に保存されている第２の部分ファイルのみを消去することを特徴とする情報処理装置を提供するものである。
これによれば、不正アクセスが可能な危険状態を検知したときに、第２記憶部に保存されている第２の部分ファイルに対して検知した危険状態に対応したロック処理をするので、ユーザの利便性を考慮し、かつ不正アクセスによる情報の漏洩や改ざんを防止してファイルの不正利用をより低減させることができる。
【発明の効果】
【００１０】
この発明によれば、ユーザ，端末およびソフトウェアなどの装置の動作状態を確認して、検知した状態に対応させて、第２記憶部に保存されている分割された第２の部分ファイルについてロック処理をしているので、ユーザの利便性を確保した上で、ファイルの不正流出と不正利用をより低減させることができる。
特に、第２記憶部と着脱可能な外部の不揮発性メモリとの間で同期済の部分ファイルについては、第２記憶部からその同期済の部分ファイルを消去することにより、ファイルの不正流出と不正利用を防止できる。
また、第２記憶部と着脱可能な外部の不揮発性メモリとの間で未同期の部分ファイルについては、消去せずに暗号化することにより、不揮発性メモリを接続しなくても、正規ユーザによるその後の編集が容易にできるようにし、ユーザの利便性を確保するとともに、第三者が復号化の方法を知らない場合には、その第三者によるファイルの不正利用や不正流出を防止することができる。
【発明を実施するための最良の形態】
【００１１】
この発明は、前記ロック処理が、同期済ファイルの消去処理と未同期ファイルの暗号化処理とを含み、同期済ファイルは、着脱可能な外部の不揮発性メモリにもすでに保存されている第２記憶部の第２の部分ファイルであり、未同期ファイルは、着脱可能な外部の不揮発性メモリには保存されていない第２記憶部の第２の部分ファイルであることを特徴とする。
さらに、前記状態検知部は、ユーザを特定する識別情報およびユーザの存在を示す在席状態を検知するユーザ状態検知部と、情報処理装置を構成するハードウェアの動作状態を検知する端末状態検知部と、起動が許可されているソフトウェアの動作状態を検知するソフトウェア状態検知部のうち、少なくともいずれか１つ以上を備えていることを特徴とする。
【００１２】
また、この発明は、着脱可能な外部の不揮発性メモリが接続されているか否かを検知する外部メモリ検知部をさらに備え、前記外部メモリ検知部が不揮発性メモリが接続されたことを検知した場合に、前記制御部が、前記第２記憶部に保存されていた第２の部分ファイルであって前記不揮発性メモリに保存されていなかった第２の部分ファイルを、前記不揮発性メモリに複写することを特徴とする。
【００１３】
また、着脱可能な外部の不揮発性メモリが接続されているか否かを検知する外部メモリ検知部をさらに備え、前記外部メモリ検知部が、不揮発性メモリが接続されなくなったことを検知した場合に、前記制御部が、前記第２記憶部および前記不揮発性メモリの両方に保存されている第２の部分ファイルについて、前記第２記憶部に保存されている第２の部分ファイルのみを消去することを特徴とする。
これにより、編集ファイルの一部（第２の部分ファイル）を、着脱可能な外部不揮発性メモリに保存し、装置内部の第２記憶部から消去することにより、装置の盗難時における情報の不正流出と不正利用をより低減させることができる。
【００１４】
また、着脱可能な外部の不揮発性メモリが接続されているか否かを検知する外部メモリ検知部をさらに備え、前記外部メモリ検知部が、不揮発性メモリが接続されなくなったことを検知した場合に、前記制御部が、前記第２記憶部および前記不揮発性メモリの両方に保存されている第２の部分ファイルについて、現在編集中であれば、前記第２記憶部に保存されている第２の部分ファイルは消去しないことを特徴とする。
これによれば、外部の不揮発性メモリを取りはずした後でも、第２の部分ファイルが第２の記憶部に保存されているので、ファイルの編集作業を継続して行うことができ、ユーザの利便性を確保できる。
【００１５】
また、着脱可能な外部の不揮発性メモリが接続されているか否かを検知する外部メモリ検知部をさらに備え、前記外部メモリ検知部が、不揮発性メモリが接続されなくなったことを検知した場合に、前記制御部が、前記第２記憶部に保存されている第２の部分ファイルと、前記不揮発性メモリに保存されている第２の部分ファイルとが一致しないときは、第２記憶部に保存されていた第２の部分ファイルを暗号化することを特徴とする。
これによれば、外部不揮発性メモリが取りはずされた後、不揮発性メモリを接続しなくても、暗号化ファイルを復号させる鍵を知っている正規ユーザであれば、容易にファイルの編集作業を継続でき、ユーザの利便性の確保と、不正利用の低減によるセキュリティの確保とができる。
【００１６】
さらに、前記暗号化された第２の部分ファイルは、外部の不揮発性メモリに保存された復号鍵を用いて復号化することを特徴とする。
これによれば、暗号化されたファイルの復号をするために、着脱可能な外部の不揮発性メモリを接続させることが必要となるので、復号鍵を保存した不揮発性メモリを所有していない第三者はファイルを復元できず、ファイルの不正利用をより低減できる。
【００１７】
また、前記状態検知部が前記危険状態を検知したとき、前記制御部は、前記同期済ファイルを消去するロック処理および前記未同期ファイルを暗号化するロック処理のいずれか一方または両方の処理を実行することを特徴とする。
【００１８】
さらに、前記状態検知部が、ユーザの存在が確認されず、かつユーザが許可していないソフトウェアが起動されていることを検知した場合、前記制御部は、その状態を危険状態と判断し、前記同期済ファイルの消去処理と、前記未同期ファイルの暗号化処理とを行うことを特徴とする。
これによれば、外部の不揮発性メモリが接続されなくても、未同期ファイルの編集を継続できるので、ユーザの利便性を確保でき、同期済ファイルについては、装置内部から消去することによって不正利用されることを防止できる。
【００１９】
また、前記状態検知部が、ユーザの存在が確認されず、かつ外部メモリが接続されていないことを検知した場合、前記制御部は、その状態を危険状態と判断し、前記同期済ファイルの消去処理を実行することを特徴とする。
これによれば、同期済ファイルについての不正流出および不正利用を防止できる。
【００２０】
また、この発明は、ファイルをｎ（ｎ≧２）分割して保存する情報分割記録機能を有する情報処理装置において、分割された各部分ファイル（Ａ１，……Ａｎ）をそれぞれ保存する複数の記憶部（Ｍ１，……Ｍｎ）と、情報処理装置の動作状態を確認し、その動作状態が特定の変化をしたことを検知する状態検知部と、前記状態検知部が検知した状態が、不正アクセスが実行され得る危険状態であると判断される場合、前記第１の記憶部Ｍ１に保存されている第１の部分ファイルＡ１以外の部分ファイル（Ａ２，……Ａｎ）に対して、前記検知した状態に対応したロック処理を実行する制御部とを備えたことを特徴とする情報分割記録機能を有する情報処理装置を提供するものである。
【００２１】
この発明において、第１の記憶部には、装置内に固定配置され、かつデータの読み書きが可能な不揮発性の大容量記憶装置が用いられる。たとえば、ハードディスク（ＨＤＤ）が用いられる。
また、第２記憶部には、装置内に固定配置され、データの読み書きが可能な不揮発性の記録素子が用いられる。特に、不正アクセスができないように十分なセキュリティを確保するために、特殊な構造のメモリＬＳＩ，キャッシュメモリなどの記録素子を用いることが好ましい。
第２記憶部を、以下キャッシュメモリとも呼ぶ。
【００２２】
状態検知部および制御部は、主としてＣＰＵ，ＲＯＭ，ＲＡＭ，Ｉ／Ｏコントローラ，タイマー等を含むマイクロコンピュータにより実現できる。
また、これらの機能は、ＲＯＭ等に格納された制御プログラムに基づいて、ＣＰＵが種々のハードウェアを動作させることにより、実現される。
【００２３】
この発明において、情報処理装置の動作状態には、たとえば、装置を利用する正規ユーザを特定する識別情報を検出している状態、その正規ユーザが装置の近くに存在していることを検出した状態を含み、これらの状態が検知されている場合には、不正アクセスが実行され得る危険状態ではないと判断される。
逆に、正規ユーザの存在が検知できないような動作状態であれば、不正アクセスが実行され得る危険状態と判断される。
危険状態とは、たとえば、権限のない第三者が、装置内部に保存されている情報を、読み出したり書き換えたりすることができる状態をいい、不正アクセスによって情報の漏洩や改ざんが容易に可能な状態をいう。
【００２４】
また、情報処理装置の動作状態には、装置のハードウェアの動作状態および状態変化も含まれる。たとえば、装置自体が再起動されたこと、着脱可能な不揮発性メモリが接続されたこと、接続されているネットワークが変更されたこと、メモリボードが増設されたこと、ハードウェアの接続状態が特定の状態に変化したことなどのように、ハードウェアが変更，追加，削除等により変化したことが含まれる。
ここで、たとえば、許可されていないメモリボードが追加されたり、着脱可能な不揮発性メモリが接続された場合は、不正アクセスが実行され得る危険な状態と判断される。
【００２５】
また、情報処理装置の動作状態には、装置にインストールされているソフトウェアの動作状態および状態変化も含まれる。
たとえば、ウィルスやスパイウェアの検出，許可されていないソフトウェアの起動検出，正規ソフトウェアのアンインストール，設定の変更などの状態変化があった場合、不正アクセスが実行され得る危険な状態と判断される。
【００２６】
この発明において、ロック処理とは、第２記憶部に保存されている第２の部分ファイルに対して実行する処理をいい、単に第２の部分ファイルにアクセスできないようにするのではなく、正規の権限を有さない第三者が、第２の部分ファイルに対してその内容を読み出したり書き換えたりすることができないように、その第２の部分ファイルを変更等することを意味する。
したがって、ロック処理をした後、正規ユーザであれば第２の部分ファイルをもとに戻すことができ、通常のアクセスができる。
【００２７】
この発明では、ロック処理の一つとして、同期済ファイルの消去処理があるが、同期済ファイルを消去した後でも、正規ユーザであれば、その同期済ファイルを外部の不揮発性メモリからもとの第２記憶部に戻すことができるようにする。正規ユーザの確認のため、同期済ファイルを第２記憶部へ戻すとき、ユーザの識別情報の確認や不揮発性メモリの正当性判断をすることが好ましい。
ここで、同期済ファイルとは、第２記憶部と外部の不揮発性メモリの両方に保存されているファイルをいい、同一のファイルが第２記憶部と不揮発性メモリの両方に存在することを同期がとれているという。
【００２８】
また、未同期ファイルの暗号化処理も、ロック処理の一つである。復号化方法を知らない第三者が暗号化されたファイルをもとの未同期ファイルに戻せないという意味で、この暗号化処理もロック処理に相当する。正規ユーザは、予め定められた復号鍵を用いることにより、暗号化されたファイルをもとの未同期ファイルに復元できる。
ここで、未同期ファイルとは、第２記憶部に保存されているが外部の不揮発性メモリには保存されていない第２の部分ファイルを意味する。ただし、第２記憶部には保存されていないが外部の不揮発性メモリに保存されている第２の部分ファイルも、未同期ファイルに含めてもよい。
このように、第２記憶部と外部の不揮発性メモリのどちらか一方にのみ保存されている状態を、未同期状態あるいは同期がとれていないという。
【００２９】
この発明において、着脱可能な外部の不揮発性メモリとは、たとえば、ＵＳＢ端子に着脱可能なＵＳＢメモリ，ＩＣメモリカード，不揮発性メモリ内蔵あるいは小型HDD搭載の携帯電話、音楽プレーヤなどの外部記憶装置、無線接続のUSBメモリなどのようなメモリを意味する。読出しと書込みが可能な不揮発性メモリとしては、フラッシュメモリ，可搬型の小型ハードディスクなどが用いられる。
【００３０】
外部メモリ検知部とは、外部の不揮発性メモリを接続する部分を意味し、コネクタやＩ／Ｏバスなどが相当する。たとえば、不揮発性メモリとしてＵＳＢメモリを用いる場合は、ＵＳＢコネクタが外部メモリ検知部に相当する。
この発明の暗号化および復号化は、公知の暗号化手法を用いることができるが、たとえば、公開鍵暗号のRSA暗号，共通鍵暗号のAES暗号などを用いてもよい。
【００３１】
また、この発明の以下の実施例では、１つのファイルを、２つの部分ファイルに分割する場合について説明するが、３つ以上のファイルに分割するようにしてもよい。
たとえば、３つの部分ファイルに分割する場合は、１つの部分ファイルは、ハードディスクに保存し、他の２つの部分ファイルは、それぞれ装置内のキャッシュメモリと、外部のＵＳＢメモリに別々に保存すればよい。分割数が増えれば、セキュリティをより向上できるが、編集やファイルの復元処理の際に、操作が複雑となり、ユーザの利便性が低下する。
【００３２】
以下、図に示す実施例に基づいて本発明を詳述する。なお、本発明はこれによって限定されるものではない。
＜情報処理装置の構成ブロック＞
図１に、この発明の情報処理装置の一実施例の構成ブロック図を示す。
図１において、この発明の情報処理装置は、主として、制御部１，状態検知部２，ファイル記録部（ＨＤＤ）３，キャッシュメモリ４，外部メモリ検知部５，暗号化部６，復号化部７，データ消去部８とから構成される。
制御部１は、他の各機能ブロックの動作を制御する部分であり、ＣＰＵ，ＲＯＭ，ＲＡＭ，Ｉ／Ｏコントローラ，タイマー等からなるマイクロコンピュータにより構成される。
また、ＲＯＭ等に格納された制御プログラムに基づいて、ＣＰＵが各ハードウェアを動作させることにより、この発明の種々の機能が実現される。
【００３３】
ファイル記録部（ＨＤＤ）３は、前記した第１記憶部に相当し、文書，画像，音声データなど、ユーザによって作成または取得された情報を保存しておく不揮発性の比較的大容量の記録装置である。たとえば、ハードディスクが用いられる。
キャッシュメモリ４は、前記した第２記憶部に相当し、データを一時的に格納しておくための不揮発性のメモリであり、たとえば、BIOSだけがアクセスを許されるＨＤＤの隠しパーティションや、チップセットによってＢＩＯＳだけにアクセスが許される主記憶メモリの一部のようなメモリである。ここに、編集中のファイルの一部分が保存される。また、キャッシュメモリ４は、ＨＤＤ３のようにユーザが直接容易に読み書きすることのできないメモリであり、不正なアクセスができないように、ハードウェアによるアクセス制限下の中に設けることが好ましい。
【００３４】
外部メモリ検知部５は、外部メモリ５０をこの装置に接続するためのインタフェース部分である。
たとえば外部メモリ５０として、いわゆるＵＳＢメモリを使用する場合は、ＵＳＢインタフェースを持った外部デバイスを接続することのできるＵＳＢの規格に従った構造を有するインタフェースである。
また、外部メモリ検知部５は、外部メモリ５０が接続されたとき、接続されたことを検出する部分である。逆に、外部メモリ５０が装置から取りはずされたことも検出する。
このような外部メモリ５０の接続の有無は、所定の端子に流れる電流や電圧の有無によって検出できる。
外部メモリ５０とは、可搬型の着脱可能な不揮発性メモリであり、前記したように、ＵＳＢメモリなどのメモリが用いられる。
【００３５】
暗号化部６は、作成されたファイルや画像データ等を暗号化する部分であり、暗号化は、前記したような既存の暗号化手法を用いることができる。
復号化部７は、暗号化部６で暗号化されたファイル等をもとのファイルに復元する部分である。復号化は、セキュリティ確保のため、外部メモリ５０等に格納された復号鍵を用いて行う。
消去部８は、ユーザからの消去指示や、後述するようなロック処理により、ＨＤＤ３や、キャッシュメモリ４に保存されているファイルの全部あるいは一部分を消去するものである。
【００３６】
状態検知部２は、この情報処理装置のハードウェアやソフトウェアの状態を検知したり、この装置を使用するユーザの存在の有無を検知する部分である。この状態検知部２は、後述するロック処理の起動の可否の判断に用いられる。
ここでは、状態検知部２は、主として、ユーザ状態検知部２１，端末状態検知部２２，ソフトウェア状態検知部２３とを備える。
【００３７】
ユーザ状態検知部２１は、たとえばユーザが、この情報処理装置の近くにいるか否かを検知したり、定期的に端末から発信する信号への応答によりユーザの存在を検知したり、端末が備えるユーザ認証機構により使用するユーザが正当権限を持つユーザであるかを認証する部分である。ユーザの存在の検知は、たとえば、アクティブタグ，Bluetoothなどの非接触ＩＣカードの所有の有無によって行うことができる。
【００３８】
端末状態検知部２２は、主としてこの情報処理装置のハードウェアの状態変化を検出するものである。上記した外部メモリ検知部５も、この端末状態検知部２２の一つの機能ブロックと考えることもできる。
その他に、たとえば、装置自体が再起動されたこと、接続するネットワークが変化したことを検知する部分である。
ここで、再起動されたことは、セキュリティチップの状態により検知できる。また、ネットワークの接続が変化したことは、ネットワークチップの状態により検知できる。
【００３９】
ソフトウェア状態検知部２３は、情報処理装置にインストールされたソフトウェアが起動していないか否かをチェックする部分である。たとえば、この装置の所有ユーザが許可していないソフトウェアが起動していないか否かをチェックする。
以上の状態検知部２によって、予め想定された特定の状態が検知された場合は、不正利用やデータ漏洩を防止する観点から、所定のロック処理を行う。ロック処理とは、後述するように、キャッシュメモリに保存されたデータの一部消去や暗号化を意味する。
【００４０】
＜記録ファイル等の内容の説明＞
次に、ＨＤＤ３等に記録されるファイルについて説明する。
この発明の情報処理装置において、たとえば、ユーザが文書ファイルＡを作成し、保存指示をした場合、その文書ファイルＡは、２つのファイル（Ａ１，Ａ２）に分割され、１つのファイルＡ１はＨＤＤ３に保存され、もう一方のファイルＡ２は、キャッシュメモリ４に保存される。
また、外部メモリ５０が接続されている場合は、１つのファイルＡ１はＨＤＤ３に保存されるが、もう一方のファイルＡ２は、外部メモリ５０に保存される。
外部メモリ５０は、ファイルそのものを保存する領域（ファイル記録領域５１）と、保存されたファイルを識別するための管理テーブル５２を保存する領域とを有する。
【００４１】
図３に、外部メモリの管理テーブル５２の一実施例の説明図を示す。
ここで、管理テーブル５２は、外部メモリに保存されているファイルのファイル名と、最終編集日とからなる。
たとえば、ファイル名「A.txt」というファイルが、２００６年６月２２日に最後に編集され、このファイルの一部分が外部メモリ５０の中に保存されていることを示す。
また、外部メモリ５０には、その外部メモリを特定するシリアル番号（SNO）５３，署名データ（SIGN）５４，復号鍵（KEY2）５５が格納される。
これらの情報（５３，５４，５５）は、ユーザや第三者が容易には変更および消去できないような形式で保存しておくことが好ましい。
【００４２】
キャッシュメモリ４は、ファイルそのものを保存する領域（ファイル領域４１）と、ファイルの状態を管理する情報（管理情報４３）を保存するファイル管理領域４２とを備える。管理情報４３には、保存されたファイルの状態を示すファイル管理テーブル４４と、状態検知判断テーブル４５とが含まれる。
また、キャッシュメモリ４には、この装置で使用可能な外部メモリのシリアル番号（SNO）４６と、ファイル復号処理で用いる端末鍵（KEY1）４７とが保存される。
ただし、これらのテーブルとシリアル番号等の情報（４４〜４７）は、セキュアな状態であればキャッシュメモリ４以外のメモリ、たとえば、ハードディスク３に格納してもよい。
【００４３】
図２に、ファイル管理テーブル４４の一実施例の説明図を示す。
ここで、「状態」とは、キャッシュメモリ４と外部メモリ５０との間で、同期をとったか否かを示す情報であり、「済」は同期をとったことを意味し、「未」は同期をまだとっていないことを意味する。「保存場所」とは、そのファイルが現在保存されている場所を示す情報であり、「Disk」はキャッシュメモリ４の中に保存されていることを示し、「外部デバイス」は外部メモリ５０の中に保存されていることを示す。
「暗号」とは、そのファイルが暗号化されて保存されているか否かを示す情報であり、「未」は暗号化されていないことを示し、「済」は暗号化されて保存されていることを示す。
【００４４】
図４に、状態検知判断テーブル４５の一実施例の説明図を示す。
ここで、「ユーザ」とは、ユーザ状態検知によりチェックしたユーザの検知の有無を示す情報であり、「○」は正常にユーザが検知されていることを示し、「×」はユーザが検知されていない異常状態であることを示す。
「端末」とは、端末状態検知によりチェックした端末の状態を示す情報であり、たとえば「挿抜」は外部メモリが端末から抜かれたことを意味し、「×」は挿抜以外の異常が発生したことを意味する。
「ソフトウェア」とは、ソフトウェア状態検知によりチェックしたソフトウェアの状態を示す情報であり、「○」は不正なソフトウェアが起動されていないことを示し、「×」は不正なソフトウェアが起動されていることを示す。
【００４５】
ロック処理とは、このテーブル４５の３つの検知状態の組合せに対して、どのような処理をするかを記載したものであり、たとえば「消去」とは、キャッシュメモリ４の中のファイルを一部消去することを意味する。
また、「暗号」とは、キャッシュメモリ４の中のファイルを暗号化してそのままキャッシュメモリ４に保存することを意味する。
【００４６】
この発明では、特に、すでに同期をとった同期済ファイルを消去し、同期をまだとっていない未同期ファイルは暗号化することを特徴とする。
この発明では、３つの状態検知処理を実行した結果、それぞれの検知状態が、テーブル４５のいずれの組合せ状態に一致するかをチェックし、一致した組合せ状態のロック処理を実行する。
【００４７】
＜同期処理の説明＞
ここでは、ファイルの同期処理について説明する。
図５に、同期の必要性の説明図を示す。
作成したファイルＡは、２つのファイル（Ａ１，Ａ２）に分割され、ＨＤＤ３とキャッシュメモリ４に保存される（図５（ａ））。
また、外部メモリ５０が接続されているときはキャッシュメモリ４に保存されるファイルＡ２は、外部メモリ５０にも保存される（図５（ｂ））。
すなわち、キャッシュメモリ４に保存されたファイルと外部メモリ５０に保存されたファイルとが一致するように同期制御される。
【００４８】
この発明では、外部メモリ５０が接続されていない状態でも、ファイルの編集作業が可能とする。
したがって、外部メモリ５０のない状態でファイルＡの編集作業をし、ファイルの保存を実行すると、その編集後のファイルＡ'は、２つのファイル（Ａ１'，Ａ２'）に分割されて、一方のファイルＡ１'はＨＤＤ３に保存され、他方のファイルＡ２'は、キャッシュメモリ４に保存される（図５（ｃ））。
編集前のファイルＡが図５（ｂ）のようにＨＤＤ３と外部メモリ５０に分割されて保存されていたとすると、キャッシュメモリ４の保存ファイルＡ２'と外部メモリ５０の保存ファイルＡ２とは異なる。
すなわち、このような場合は、キャッシュメモリ４と外部メモリ５０との間で未同期の状態となっている。
【００４９】
図５（ｃ）の状態で、ファイルＡ２を保存した外部メモリ５０が接続されたとすると、その後の編集作業を継続させるためには、キャッシュメモリ４の保存ファイルと、外部メモリ５０の保存ファイルの状態を一致させる必要がある。
そこで、外部メモリ５０が接続されたときに同期がとれていないファイル（Ａ２'とＡ２）が存在する場合には、ファイルＡ２'を外部メモリ５０に複写して、同期をとる（図５（ｄ））。
【００５０】
また、状態検知部２により、予め設定された異常状態が検知された場合には、図５の（ｅ２）または（ｆ２）のような処理をする。
たとえば、図５（ｅ１）は、図５（ｂ）と同じ状態を示しているが、この状態で、外部メモリを抜いてユーザが離席したことを検知した場合には、セキュリティ確保のため、キャッシュメモリに保存されている同期済のファイルＡ２を消去する。これで、装置そのものだけが盗難されても、ファイルＡは編集できなくなる。
【００５１】
また、図５（ｆ１）は、図５（ｃ）と同じ状態であるが、編集しているファイルＡの部分ファイルＡ２'は、外部メモリ５０の部分ファイルＡ２と未同期である。
このような状態で、たとえば、不正なソフトウェアの起動が検出された場合、キャッシュメモリ４に保存されている部分ファイルＡ２'を暗号化して、暗号化ファイル♯Ａ２'として上書き保存する。
これにより、装置そのものが盗難されたとしても、ファイル♯Ａ２'が復号できなければ、ファイルＡは編集できない。
【００５２】
図６に、この発明の同期処理の一実施例の概略説明図を示す。
図６（ａ）は、未同期状態のＨＤＤ３，キャッシュメモリ４，外部メモリ５０およびファイルの状態の一実施例を示している。
【００５３】
ここで、ハードディスクＨＤＤ３とキャッシュメモリ４には、４つのファイル（Ａ，Ｂ，Ｃ，Ｙ）が分割して保存されているものとする。たとえば、ファイルＣは、ＨＤＤ３に部分ファイルＣ０，キャッシュメモリ４に部分ファイルＣ２が保存されているものとする。
一方、外部メモリ５０には、４つのファイル（Ａ，Ｂ，Ｃ，Ｘ）の一部分（Ａ１，Ｂ１，Ｃ１，Ｘ１）が保存されているものとする。
図６の部分ファイルＣ２と部分ファイルＣ１とは同じファイルＣの一部分であるが、最終編集日が異なるものとする。外部メモリ５０に保存されているファイルＣ１の方が、古い編集日であったとする。このような状態で、外部メモリ５０が装置に接続されると、同期処理が行われて、図６（ｂ）のようになる。
【００５４】
図６（ｂ）は、外部メモリ５０を接続した後のファイルの保存状態を示している。
まず、ファイルＡとＢとは、すでに同期がとられているので、何もしない。
ファイルＣについては、両テーブル（４４，５２）を比較すると、装置側に保存されている部分ファイルＣ２の方が新しいことがわかるので、キャッシュメモリ４に保存されている部分ファイルＣ２を、外部メモリ５０に複写する。これにより、ファイルＣの同期ができる。
【００５５】
ファイルＹについては、両テーブルを比較すると外部メモリ５０には存在しないので、キャッシュメモリ４に保存されているファイルＹの部分ファイルＹ１を、外部メモリ５０に複写する。
ファイルＸについては、両テーブル（４４，５２）を比較すると、外部メモリ５０にのみ存在することがわかるので、ファイルＸ１をキャッシュメモリ４へ複写する。これにより、ファイルＸは、ハードディスクＨＤＤ３に保存されている部分ファイルＸ０と合わせて、編集ができる状態となる。
【００５６】
以上のように、２つのテーブル（４４，５２）を比較し、部分ファイルの複写処理を行うことにより、キャッシュメモリ４と外部メモリ５０の同期がとれ、その後の編集処理が可能となる。同期をとった後は、両テーブル（４４，５２）の情報は、最新の状態に更新される。
【００５７】
＜この発明の情報処理装置の動作説明＞
図７に、この発明の情報処理装置の概略動作の一実施例を説明する全体フローチャートを示す。
図７において、まず、外部メモリ検知部５が、外部メモリ５０が接続されているかをチェックする。
外部メモリ５０が接続されていることが検知されると、ステップＳ１１に進み、その外部メモリ５０が正規ユーザのものか、あるいは、接続が許可されているものか否かのチェック（正当性判断）を行う。
【００５８】
ステップＳ１２において、正当であった場合、ステップＳ１３の同期処理へ進む。正当なものでなければ、次のステップＳ２へ進む。
ステップＳ１３において、キャッシュメモリ４と外部メモリ５の管理テーブル（４４，５２）を比較して、キャッシュメモリ４と外部メモリ５の同期がとれているか否かをチェックし、同期がとれていなかったファイルに対して同期をとる処理を行う。
【００５９】
次に、ステップＳ２において、外部メモリ５０が抜かれたか否かチェックする。
外部メモリ５０が接続されている状態から抜かれたことが検出されると、ステップＳ２１へ進み、ユーザに注意を喚起するメッセージを通知する。
次に、ステップＳ３において、状態検知部２によって３つの状態検知の確認を行う。
すなわち、ユーザ状態検知部２１によるユーザ状態のチェック、端末状態検知部２２による端末状態のチェック、ソフトウェア状態検知部２３によるソフトウェア状態のチェックを行う。
【００６０】
そして、ステップＳ４において、各状態検知処理によって得られた結果と、図４の状態検知判断テーブル４５との比較を行う。
その比較の結果、ロック処理が必要となるような状態が検知された場合、ステップＳ４１へ進み、ロック処理を行う。ロック処理では、現在のファイルの同期状態に基づいて暗号化または消去処理が行われる。
【００６１】
ステップＳ５において、ファイルの読み出し要求があるか否かチェックする。
ファイルの読み出し要求があった場合は、ステップＳ５１へ進み、ファイル管理テーブル４４を参照しながら要求のあったファイルの読み出しを行う。
ファイルは原則として分割して保存されているので、一つはＨＤＤ３から読み出されるが、もう一方はキャッシュメモリ４または外部メモリ５０から読み出される。
【００６２】
ステップＳ６において、ファイルの書き込み要求があるか否かチェックする。
ファイルの書込要求があった場合は、ステップＳ６１へ進みファイル管理テーブル４４を参照しながら、ファイルを２つに分割し、一方をＨＤＤ３に保存し、他方のファイルはキャッシュメモリ４に保存する。
外部メモリ５０が接続されている場合は、他方のファイルを外部メモリ５０にも保存する。
【００６３】
以上が、この装置の全体の概略フローであるが、必ずしもこのフローの順番どおりに実行しなくてもよい。
各分岐判断の順序は変更してもよく、各分岐判断を複数のタスクに分けて、時分割多重により別々に動作させてもよい。あるいは、分岐フラグを用いて割込み処理により、必要なタスクのみを動作させるようにしてもよい。
以下に、図７の状態検知処理（ステップＳ３）や分岐後の各処理の詳細な実施例について説明する。
【００６４】
＜外部メモリの正当性判断＞
図８に、この発明の外部メモリの正当性判断処理のフローチャートを示す。
外部メモリの正当性の判断をするために、外部メモリ５０に予め格納されているシリアル番号SNO５３を利用する。
このシリアル番号SNO５３は、外部メモリ５０固有の番号とし、始めて接続された後に、情報処理装置側に送信され、キャッシュメモリ４の中に保存されるものとする。キャッシュメモリ４には、シリアル番号SNO４６としてそのまま保存してもよいが、暗号化して保存してもよい。
【００６５】
また、制御部１は、シリアル番号SNO５３を受信したとき、キャッシュメモリ４に予め保存されている端末鍵KEY１（４１）を用いて、シリアル番号SNO５３を暗号化し、署名データSIGN（５４）を作成する。
制御部１は、この署名データSIGN（５４）を外部メモリ５０へ送信し、外部メモリ５０に保存しておくものとする。
【００６６】
ステップＳ１において、外部メモリ５０が接続されたことが検出されたとすると、図８のステップＳ１０１において、制御部１は、署名データSIGNの読出要求を、外部メモリ５０へ送信する。
この読出要求を受信した外部メモリ５０は、保存されていた署名データSIGN５４を読み出し、装置側へ送信する。
【００６７】
ステップＳ１０２において、署名データSIGNが外部メモリ５０から送信されてくるのを待ち、その受信を確認するとステップＳ１０３へ進む。
一方、図示していないが受信できなければ、正当でないと判断し、結果を「正当でない」として処理を終了する。
ステップＳ１０３において、受信した署名データSIGN５４を復号する。すなわち、端末鍵KEY１を用いて、署名データSIGN５４をもとのシリアル番号SNO５３に戻す。
【００６８】
ステップＳ１０４において、署名データSIGN５４から得たシリアル番号SNO５３と、キャッシュメモリ４に保存されているシリアル番号SNO４６とを比較検証する。
この比較の結果、一致した場合は、外部メモリ５０は正当なものであると考え、ステップＳ１０５へ進み、結果を「正当」として処理を終了する。
一方、両シリアル番号が一致しなかった場合は、外部メモリ５０は正当なものではないと考え、ステップＳ１０６へ進み、結果を「正当でない」として処理を終了する。
これにより、予めキャッシュメモリ４に保存されているシリアル番号SNO４６と異なるシリアル番号を持つ外部メモリ５０が接続された場合のセキュリティを確保でき、データの不正流出や不正利用を低減できる。
【００６９】
＜同期処理＞
図９に、この発明の同期処理の一実施例のフローチャートを示す。
ここでは、前記した図６のような処理が行われる。
図９のステップＳ１３１において、外部メモリ５０に対してその管理テーブル５２を送信するよう要求し、管理テーブル５２の内容を取得する。
ステップＳ１３２において、取得した管理テーブル５２と、キャッシュメモリ４の中のファイル管理テーブル４４とを比較しながら、未同期ファイルを検索する。
たとえば、両テーブルのファイル名を比較し、一致しないものがあれば未同期ファイルと判断する。また、同じファイル名であっても、最終アクセス日と最終編集日が異なるファイルは、未同期ファイルと判断する。
【００７０】
また、保存場所の情報が、「外部デバイス」となっているファイルであって、外部メモリ５０のテーブル５２に登録されているファイルは、未同期ファイルと判断する。
さらに、状態が「未」となっているファイルは、同期をとったことがないファイルであるので、未同期ファイルと判断する。
また、キャッシュメモリ４に存在するが、外部メモリ５０のテーブル５２には登録されていないファイルも、未同期ファイルと判断する。
【００７１】
ステップＳ１３３において、検索の結果、未同期ファイルがあるか否かチェックし、なければ処理を終了する。
一方、未同期ファイルがある場合は、ステップＳ１３４へ進む。ステップＳ１３４，Ｓ１３５およびＳ１３６において、検出された未同期ファイルについて、キャッシュメモリ４に記録されたファイルと、外部メモリ５０に記録されたファイルとを同期させる処理を行う。
【００７２】
ステップＳ１３４，Ｓ１３５およびＳ１３６の処理は例示であって、これに限るものではない。未同期の原因によって各処理が必要ない場合もあり、一方、これ以外の処理が必要となる場合もある。
ステップＳ１３４において、最終アクセス日と最終編集日が異なる場合、古い日付の方のファイルを削除し、新しい日付のファイルを複写する。
このとき、キャッシュメモリ４から外部メモリ５０へ複写をする場合と、外部メモリ５０からキャッシュメモリ４へ複写する場合とがある。
【００７３】
ステップＳ１３５において、保存場所が「外部メモリ」となっているファイルがある場合、外部メモリ５０のみに保存されているファイルを、キャッシュメモリ４へ複写する。
ステップＳ１３６において、状態が「未」となっているファイルがある場合、そのファイルを、外部メモリ５０へ複写する。
ステップＳ１３７において、上記のような同期化をしたファイルについて、ファイル管理テーブル４４の「状態」や「保存場所」等の情報を同期済を示すものに更新する。たとえば、状態の「未」を「済」に変更する。
さらに、ステップＳ１３３へ戻り、未同期ファイルが残っていないかどうかチェックする。
以上の同期処理により、接続された外部メモリとキャッシュメモリ４との内容を同一とすることができる。
以後、外部メモリ５０を抜かない限り、同期状態を保ったまま、ファイルの読出または書込み処理をすることができる。
【００７４】
＜メッセージ通知処理＞
図１０に、メッセージ通知処理のフローチャートを示す。
ステップＳ２において、接続されていた外部メモリ５０が抜かれたことを検出した場合、次のような警告メッセージをユーザに通知する。ただし、このメッセージは外部メモリ５０が抜かれたため、同期がとれていない旨などを注意喚起するためのものであり、通知後、ユーザはファイルの編集処理を継続してもよい。
すなわち、ユーザは、外部メモリ１５０を抜いても、特別な操作をせずにそのままファイルの編集を継続することができる。これは、外部メモリが抜かれた後に、編集によって変更されたファイルの一部分は、キャッシュメモリ４に保存されるからである。
【００７５】
図１０のステップＳ２０１において、制御部１は、キャッシュメモリ４の中のファイル管理テーブル４４の「状態」を確認し、キャッシュメモリ４の中に、未同期ファイルがあるかどうかチェックする。「状態」が「未」となっている未同期ファイルが存在する場合は、ステップＳ２０２へ進み、ファイル管理テーブル４４から未同期ファイルの一覧リストを作成し、未同期ファイルがあることをユーザに通知する。
この通知は、たとえば画面表示，用紙印刷あるいは音声による通報など種々の方法ですることができる。この通知を見たユーザは未同期ファイルがあることを確認できる。
【００７６】
未同期ファイルの存在を認めたくない場合は、外部メモリ５０を接続すればよい。ただし、未同期ファイルが存在したままでも、ユーザは、そのまま、その未同期ファイルの編集を継続してもよい。これにより、セキュリティよりもユーザの利便性を優先して、ファイルの編集の継続性を確保することができる。
ステップＳ２０１において、未同期ファイルが存在しない場合、ステップＳ２０３へ進み、すべてのファイルが同期がとれた状態であることを示すメッセージを、ユーザに通知する。
【００７７】
＜状態検知処理＞
図１１に、状態検知処理（ステップＳ３）のフローチャートを示す。
この状態検知処理は、セキュリティ確保の観点からできるだけリアルタイムで動作させることが好ましいので、図７のようなフローではなく、別タスクとして定期的に動作させてもよい。
ステップＳ３０１において、ユーザ状態検知部２１によるユーザ状態のチェックを行う。たとえば、ユーザを特定するＩＤ情報が格納された非接触ＩＣカードとの通信を試み、通信が確立し、ＩＤ情報が確認できた場合は、ユーザの状態は正常と判断する。正常な場合、現在のユーザ状態を示すフラグを「正常（○）」に設定する。
【００７８】
一方、通信が確立せず、ユーザの存在が確認できなかった場合、セキュリティ上危険な状態と考え、ユーザの状態は異常と判断する。そして、現在のユーザ状態を示すフラグを「異常（×）」に設定する。
【００７９】
この他に、ユーザ状態のチェックは、次のようにして行うこともできる。
たとえば、端末が、ユーザが持つ携帯電話などの無線認証デバイスと通信し、端末に登録されたID番号と、その携帯電話のID番号をチェックする。
【００８０】
ステップＳ３０２において、端末状態検知部２２による端末状態のチェックを行う。
ここでは、装置の再起動，接続ネットワークの変化，外部メモリの取りはずしなどの有無をチェックする。
外部メモリ５０を取りはずしたか否かは、外部メモリ検知部５で行う。
【００８１】
たとえば、装置が再起動されたことを検知した場合は、セキュリティ上危険な状態と考え、現在の端末の状態を示すフラグを「異常（×）」に設定する。
【００８２】
ステップＳ３０３において、ソフトウェア状態検出部２３によるソフトウェアの起動状態のチェックを行う。たとえば、ユーザが許可していないソフトウェアが起動されていないかどうかチェックする。これは、たとえば、ソフトウェアの起動状態を監視するプログラムがセキュリティチップに起動状態を逐次書き込み、その変化によりチェックできる。
許可していないソフトウェアが起動されている場合、セキュリティ上危険な状態と考え、現在のソフトウェアの状態フラグを、「異常（×）」に設定する。そのようなソフトウェアの起動が確認できなかった場合、ソフトウェアの起動状態は正常と考え、現在のソフトウェアの状態フラグを、「正常（○）」に設定する。
【００８３】
ステップＳ３０４において、上記３つの状態検知による現在の状態フラグの設定値が、状態検知判断テーブル４５のいずれに該当するかをチェックする。
たとえば、現在の３つの状態フラグのうち、ユーザ状態＝「○」、かつソフトウェア状態＝「×」であった場合は、テーブル４５のいちばん上位に該当するので、ロック処理をする必要があることがわかる。また、そのロック処理の内容は、消去処理と暗号化処理であることがわかる。
【００８４】
また、ユーザ状態＝「×」、かつソフトウェア状態＝「×」であった場合、テーブル４５のいちばん下位に該当するので、この場合も、「消去＋暗号化」のロック処理が必要であることがわかる。
一方、ユーザ状態＝「○」、かつソフトウェア状態＝「○」であれば、ロック処理はする必要がないと判断できる。
【００８５】
ステップＳ３０５において、上記比較判断の結果、ロック処理が必要な場合、ステップＳ３０６へ進み、結果を状態検知あり（ロック処理必要）に設定して、処理を終了する。ロック処理が必要でない場合は、ステップＳ３０７へ進み、結果を状態検知なし（ロック処理不要）に設定して、処理を終了する。
【００８６】
＜ロック処理＞
図１２に、ロック処理のフローチャートを示す。
ロック処理は、ファイルの消去か暗号化の少なくともどちらか一方を含むものである。
そこで、まず、ステップＳ４０１において、制御部１が、キャッシュメモリ４の状態検知判断テーブル４５を参照し、現在の状態フラグに該当した判断を探し、その判断に対応づけられたロック処理の内容を確認する。
ステップＳ４０２において、必要なロック処理に、消去が含まれている場合は、ステップＳ４０３へ進む。含まれていない場合は、ステップＳ４０４へ進む。
ステップＳ４０３において、ファイル管理テーブル４４の中の「状態」の情報のうち、「済」のファイルを抽出する。すなわち、同期済ファイルを抽出する。そして、消去部８が、同期済ファイルのキャッシュメモリ４の中に保存されている部分ファイルを消去する。
【００８７】
たとえば、図２の状態のテーブル４４では、「済」となっている２つのファイル（A.txt、BBBB.doc）が消去対応ファイルとなり、そのファイルのうちキャッシュメモリ４に保存されている部分ファイルが、消去される。
このようにキャッシュメモリ４の部分ファイルを消去することにより、装置のみが盗難されても、もとのファイルを編集することはできなくなる。すなわち、ファイルの不正流出と不正利用を低減できる。
また、キャッシュメモリの部分ファイルを消去しても、同期済であるその部分ファイルと同じものが、外部メモリ５０に保存されているので、外部メモリ５０を装置に接続することにより、そのもとのファイルを継続して編集できる。
【００８８】
ステップＳ４０４において、必要なロック処理に、暗号化が含まれている場合は、ステップＳ４０５へ進む。
ステップＳ４０５において、ファイル管理テーブル４４の中の「状態」が「未」のファイルを抽出し、暗号化部６が、そのファイルのうちキャッシュメモリ４に保存されている部分ファイルを暗号化する。
暗号化は、たとえば、端末鍵KEY１(４７)を用いて行う。暗号化された部分ファイルは、キャッシュメモリ４の中へ上書きする。
これにより、未同期ファイルのうち、キャッシュメモリ４に保存されている部分ファイルは暗号化されたので、端末鍵KEY１を知らない第三者は、その未同期ファイルは復元できない。
すなわち、装置のみを盗難されたとしても、ファイルの不正利用を低減することができる。
【００８９】
また、未同期ファイルの部分ファイルが暗号化された状態で、キャッシュメモリ４に保存されている場合、正規ユーザがその未同期ファイルを編集するためには、端末鍵KEY１を入力してやることにより、その暗号化された部分ファイルを復号すればよい。復号化されたファイルと、ＨＤＤ３に保存されている部分ファイルとを結合することにより、未同期ファイルが復元される。
すなわち、外部メモリ５０を接続しなくても、装置側での入力操作をするだけで、容易に未同期ファイルの編集を継続して行うことができ、ユーザの利便性が確保できる。
【００９０】
＜ファイル読出処理＞
図１３に、ファイル読出処理の一実施例のフローチャートを示す。
ユーザからの指示でファイルの読出要求があった場合、読出要求には、そのファイルを特定する情報が含まれる。たとえば、ファイル名が含まれる。
まず、ステップＳ５０１において、制御部１が読出要求されたファイル名のファイルがどこに保存されているかを確認する。このとき、図２に示したファイル管理テーブル４４が用いられる。
読出要求されたファイル名をファイル管理テーブル４４から探し出し、そのファイル名に関係づけられた「保存場所」を抽出する。
ステップＳ５０２において、保存場所が「キャッシュメモリ」か「外部メモリ」かを判断し、キャッシュメモリ４であればステップＳ５０９へ進み、外部メモリ５０であればステップＳ５０３へ進む。
【００９１】
ステップＳ５０３において、外部メモリ５０が現在接続されているか否かチェックする。接続されていなければ、ステップＳ５０４へ進み、ユーザに外部メモリの接続をするように促す通知を出力する。
ステップＳ５０５において、外部メモリ５０が接続されるのを待ち、接続されたことを確認した後、ステップＳ５０６へ進む。
ステップＳ５０５において、図８の外部メモリの正当性判断処理をしてもよい。
【００９２】
ステップＳ５０６において、読出要求されたファイルのうち、外部メモリ５０に保存されている部分ファイルを、外部メモリ５０から取得する。取得した部分ファイルは、キャッシュメモリ４に保存する。そして、この取得した部分ファイルを読み出す。
ステップＳ５０７において、読出要求されたファイルのうち、ハードディスクＨＤＤ３に保存されている部分ファイルを読み出す。そして、外部メモリ５０から読み出した部分ファイルと、ＨＤＤ３から読み出した部分ファイルとを結合し、読出要求のあったもとのファイルを復元する。
【００９３】
ステップＳ５０８において、この読出要求のあったファイルについて、ファイル管理テーブル４４を更新する。ここで、読出要求のあったファイルの「状態」を「済」とし、最終アクセス日を現在の日付に変更し、「保存場所」を「Disk」に変更する。
以後、読出要求ファイルについて、ユーザが編集可能な状態となる。
【００９４】
図１３のステップＳ５０２において、読出要求のあったファイルの部分ファイルが、キャッシュメモリ４に保存されていると判断された場合、ステップＳ５０９において、そのキャッシュメモリ４に保存されている部分ファイルが、暗号化されているか否か、チェックする。
暗号化されているか否かは、たとえばファイル先頭部分をチェックすることによりわかる。暗号化されている場合はステップＳ５１３へ進み、暗号化されていない場合はステップＳ５１０へ進む。
【００９５】
ステップＳ５１０において、キャッシュメモリ４に保存されている部分ファイルは暗号化されていないので、その部分ファイルをそのまま読み出す。
ステップＳ５１１において、読出要求のあったファイルのうち、ハードディスクＨＤＤ３に保存されている部分ファイルを読み出す。
そして、キャッシュメモリ４に保存されていた部分ファイルと、ＨＤＤ３に保存されていた部分ファイルとを結合する。これにより、読出要求のあったファイルが復元され、ユーザが編集可能な状態となる。
【００９６】
ステップＳ５０９において、キャッシュメモリ４に保存されている部分ファイルが暗号化されていることがわかった場合、ステップＳ５１３において、その部分ファイルを復号するために、まず、外部メモリ５０から復号鍵KEY２を入手する。
外部メモリ５０が接続されていない場合は、ステップＳ５０４およびＳ５０５と同様に、外部メモリ５０の接続をユーザに要求する。接続後、外部メモリ５０の内部に保存されている復号鍵KEY２（５５）を、装置側へ送る。
ステップＳ５１４において、入手した復号鍵KEY２（５５）を、端末鍵KEY１（４７）で復号し、新たな鍵KEY０を生成する。この生成された新たな鍵KEY０が、暗号化されている部分ファイルをもとに戻すための復号鍵である。
【００９７】
ステップＳ５１５において、復号化部７が、新たな鍵KEY０を用いて、キャッシュメモリ４の中の暗号化された部分ファイルを復号する。
ステップＳ５１６において、復号した部分ファイルを読み出す。
ステップＳ５１７において、ステップＳ５１１同様に、ハードディスクＨＤＤ３に保存されている部分ファイルを読出し、読出した２つの部分ファイルを結合し、読出要求のあったファイルを復元する。
以後、読出要求のあったファイルは、ユーザが編集可能な状態となる。
【００９８】
以上のように、ファイルの読出要求があった場合、正規のユーザは、そのファイルがどこに保存されているかを意識することなく、一般的な読出し指示の入力をするだけで、そのファイルを読出すことができる。不正なユーザがファイルの読出要求をしたとしても、そのファイルの部分ファイルが外部メモリ５０のみに保存されている場合は、外部メモリ５０がなければそのファイルを読出すことができず、不正流出と不正利用を防止できる。
さらに、読出要求されたファイルの部分ファイルがキャッシュメモリ４に保存されている場合において、その部分ファイルが暗号化されていれば、復号鍵KEY２を知らない第三者は、その部分ファイルを復号できないので、不正流出と不正利用を防止できる。
【００９９】
＜ファイル書込処理＞
図１４に、ファイル書込処理の一実施例のフローチャートを示す。
この発明では、ユーザから、編集したファイルの書込要求の指示があった場合、そのファイルは、２つに分割されて保存される。ただし、前記したように、分割数は、３以上でもよい。
ステップＳ６０１において、制御部１は、書込要求されたファイルを、２つに分割する。この分割処理は、既存の方法を用いることができる。たとえば、単純に、ほぼ同じサイズの２つのファイルに分割する方法がある。また、しきい値秘密分散法をすることにより、２つのファイルを生成する方法がある。
【０１００】
ステップＳ６０２において、分割によって生成された一方の部分ファイルを、ハードディスクＨＤＤ３へ書込む。このときその部分ファイルを、端末鍵KEY１を用いて暗号化してもよい。
ステップＳ６０３において、分割された他方の部分ファイルを、キャッシュメモリ４へ書込む。このとき、その部分ファイルも暗号化して保存してもよい。
【０１０１】
ステップＳ６０４において、外部メモリ５０が接続されている場合は、他方の部分ファイルを、外部メモリ５０へ書込む。
外部メモリ５０が接続されていない場合は、この処理をしなくてもよいが、外部メモリ５０を接続することをユーザに要求するメッセージを通知して、ユーザが外部メモリ５０を接続した後、ステップＳ６０４の処理を実行してもよい。
【０１０２】
ステップＳ６０５において、書込要求のあったファイルについて、ファイル管理テーブル４４を更新する。ここで、新規ファイルであれば、そのファイルの情報を追加し、上書きであれば、最終アクセス日を変更する。
また、外部メモリ５０にも書込んだ場合は、キャッシュメモリ４と外部メモリ５０とが同期がとれた状態となるので、「状態」を「済」とする。また、暗号化して書込んだ場合は、「暗号」を「未」とする。
【０１０３】
以上のように、ファイルを書込む場合、２つの部分ファイルに分割して保存しているので、装置または外部メモリのどちらか一方だけが盗難された場合の不正利用を防止できる。
また、一方の部分ファイルは、キャッシュメモリ４の内部に保存するので、外部メモリ５０が接続されていなくても、そのままファイルの編集を継続でき、ユーザの利便性が確保できる。
【０１０４】
＜ファイル編集の具体例＞
ここでは、ユーザがファイルを編集する実際の局面について、どのようにファイルが分割され、分割されたファイルがどのように変化するかの具体例を説明する。
図１５に、外部メモリを接続した場合や、許可していないソフトウェアが起動された場合などを含む一連の編集処理の具体例（ケース１）を示す。
このケース１の場合、まず、ファイルＡとファイルＸが存在し、どちらも２つに分割されているものとする。ここでは、部分ファイルを分割ファイルと呼ぶ。
【０１０５】
図１５（ａ）において、ファイルＸは、編集中ではなく、分割ファイルＸ１がＨＤＤ３に保存され、もう一方の分割ファイルＸ２がキャッシュメモリ４に保存されているものとする。
ファイルＡは、現在編集中であり、分割ファイルＡ１がＨＤＤ３に保存され、もう一方の分割ファイルＡ２がキャッシュメモリ４に保存されているものとする。このファイルＡの編集開始時には、ファイル読出処理（ステップＳ５１）が実行される。
【０１０６】
図１５（ｂ）において、ユーザが、外部メモリ５０を装置に接続したとする。
このとき、ファイルＸとファイルＡについて、キャッシュメモリ４と外部メモリ５０との間で、同期処理（ステップＳ１３）が行われ、同期がとられる。
すなわち、外部メモリ５０に、キャッシュメモリ４に保存されている分割ファイルＡ２とＸ２とが複写される。
【０１０７】
図１５（ｃ）において、ユーザが外部メモリ５０を取りはずし、離席したとする。このとき、状態検知処理（ステップＳ３）において、ユーザが離れたことによるユーザ不在検知と、外部メモリが抜かれたことによる端末状態検知が行われ、対応するロック処理（ステップＳ４１）が行われる。
たとえば、図４の状態検知判断テーブルの中の対応するロック処理の内容が「消去」である場合は、同期済のファイルＸの分割ファイルＸ２を、キャッシュメモリ４から消去する。ただし、外部メモリ５０はすべて抜かれているので、その中には分割ファイルＸ２がそのまま保存されている。
【０１０８】
また、ファイルＡは、現在編集中であるので、キャッシュメモリ４の中の分割ファイルＡ２は、そのまま残す。このとき、同期済の分割ファイルがキャッシュメモリから消去されたことと、未同期の分割ファイルＡ２のみがキャッシュメモリに残っていることを含む警告メッセージをユーザに通知する。
【０１０９】
図１５（ｄ）において、その後、ユーザが席に戻り、外部メモリを接続せずに、ファイルＡの編集を再開したとする。この編集中に書込処理（ステップＳ６１）が実行され、ファイルＡの分割ファイルは、Ａ１からＡ１０へ、Ａ２からＡ２０へ変化したとする。
【０１１０】
次に、図１５（ｅ）において、ユーザが許可していないソフトウェアを起動したとする。このとき、状態検知処理（ステップＳ３）において、不正なソフトウェアが検知されるので、ロック処理（ステップＳ４１）が実行される。
ここで、図４の状態検知判断テーブルの中の対応するロック処理の内容が、「暗号」であったとする。
図１５の場合、キャッシュメモリ４に保存されている分割ファイルＡ２０は、未同期ファイルであるので、ロック対象となり、端末鍵KEY１で暗号化する。すなわち、キャッシュメモリ４の分割ファイルは、Ａ２０から暗号化ファイル♯Ａ２０に変化する。
【０１１１】
この暗号化処理により、ファイルＡ自体もロックされ、編集できない状態となる。
また、ユーザに対して、許可していないソフトウェアが起動されたこと、ファイルＡがロックされたこと、許可されていないソフトウェアを終了するか除去しないと編集が再開されないこと、編集の再開をするためには外部メモリ５０を接続しなければならないことなどを含むメッセージを通知する。
【０１１２】
図１５（ｆ）において、この通知を見たユーザは、ソフトウェアを終了するなどの何らかの復旧作業を行い、外部メモリ５０を接続したとする。
外部メモリ５０が接続されると、図１３のステップＳ５１３からＳ５１６に相当する処理が実行され、暗号化ファイル♯Ａ２０の復号化が自動的に行われる。
すなわち、復号鍵KEY２が外部メモリ５０から取り出され、暗号化ファイル♯Ａ２０を復号するための鍵KEY０が生成され、この鍵KEY０を用いて、キャッシュメモリ４のもとの分割ファイルＡ２０を復元する。
これにより、ＨＤＤ３の中の分割ファイルＡ１０と、復元された分割ファイルＡ２０とによって、ファイルＡの編集が可能となる。
【０１１３】
図１５（ｇ）において、キャッシュメモリ４に復元された分割ファイルＡ２０を、外部メモリ５０に複写することにより、分割ファイルの同期をとる。この後、図１５（ｂ）と同じような状態となり、ファイルＡの編集作業を再開できる。
【０１１４】
図１６に、この発明の情報処理装置の紛失を含む一連の編集処理の他の具体例（ケース２）の説明図を示す。
ここでは、すでに作成されているファイルＢを閲覧する場合を説明する。
ファイルＢは、２つのファイル（Ｂ１，Ｂ２）に分割され、分割ファイルＢ１はハードディスクＨＤＤ３に保存され、もう一方の分割ファイルＢ２は外部メモリ５０に保存されているものとする。また、図１６（ａ）のように、キャッシュメモリ４にはファイルＢの分割ファイルはなかったとする。
このとき、図２のファイル管理テーブル４４は、「状態」が「未」で、「保存場所」が「外部デバイス」となっている。
【０１１５】
図１６（ａ）の状態で、ユーザが、ファイルＢの閲覧要求をしたとする。このとき、図１３のファイルの読出要求が実行される。
ファイル管理テーブル４４のチェックにより、ファイルＢの一方のファイルＢ２が外部メモリ５０に保存されていることがわかるので、ユーザに外部メモリ５０を接続する旨の通知を行う。
【０１１６】
この通知を見たユーザが外部メモリ５０を接続すると、図１６（ｂ）に示すように、同期処理が行われる。
外部メモリ５０に保存されていた分割ファイルＢ２が、キャッシュメモリ４に複写される。この後、２つの分割ファイル（Ｂ１，Ｂ２）の読出しと結合が行われ、ファイルＢが閲覧できる状態となる。
【０１１７】
図１６（ｃ）において、ユーザが外部メモリ５０を抜き取り、この装置をスタンバイ状態とし、持ったまま移動したとする。
この場合、状態検知処理（ステップＳ３）の端末検知により、ハードウェアの状態が変化したことが検知されたとする。ただし、ユーザがこの装置を持ったまま移動しているので、ユーザの存在を検知したままとする。
このような状態検知状態に対して、対応するロック処理がないとすると、キャッシュメモリ４の中の分割ファイルＢ２はそのまま残す。すなわち、図１６（ｃ）の場合、ロック処理は何も行わない。
【０１１８】
次に、図１６（ｄ）において、移動中に、情報処理装置のみで、ユーザがファイルＢの閲覧要求をしたとする。
ファイルＢの２つの分割ファイル（Ｂ１，Ｂ２）は装置内のＨＤＤ３とキャッシュメモリ４の中にそれぞれ存在するので、両者が暗号化されていないとすると、通常のファイル読出し処理（ステップＳ５１０，Ｓ５１１）を実行することにより、ファイルＢの閲覧ができる。
【０１１９】
次に、ユーザが移動中に、この情報処理装置を置き忘れたか、あるいは盗まれたとする。
この場合、装置とユーザとの距離が離れてしまうので、ユーザ検知処理によって、ユーザが不在となったことが検知される。
すなわち、状態検知処理（ステップＳ３）によりユーザが不在となったことが検知され、対応するロック処理が実行される。
【０１２０】
ここで、対応するロック処理に、「消去」が含まれていたとすると、キャッシュメモリ４に含まれるファイルＢ２は、同期済ファイルであるので、消去対象となり、消去される（図１６（ｅ））。
図１６（ｅ）において、ユーザの不在が検知されたことにより、情報処理装置には、ファイルＢの１つの分割ファイルＢ１のみが残ることになる。
【０１２１】
したがって、この後、第三者によって、ファイルＢの読出し要求がされたとしても、分割ファイルＢ２が保存された外部メモリ５０がなければ、ファイルＢを読み出すことはできない。
すなわち、この発明の情報処理装置のみが盗難されたとしても、ファイルの同期がとられていた場合、同期済ファイルの一方の分割ファイルが装置内にはないので、そのファイルの不正利用や不正流出を防止することができる。
また、図１６の場合、ユーザが外部メモリ５０を抜く操作をした後は、同期済のキャッシュメモリの分割ファイルＢ２に対して特別な処理をすることなく、ユーザが装置から遠く離れるだけで、キャッシュメモリ４内の分割ファイルＢ２が自動的に消去されるので、セキュリティ確保のためのユーザの負担は軽く、利便性を向上できる。
【図面の簡単な説明】
【０１２２】
【図１】この発明の情報処理装置の一実施例の構成ブロック図である。
【図２】この発明のファイル管理テーブルの一実施例の説明図である。
【図３】この発明の外部メモリの管理テーブルの一実施例の説明図である。
【図４】この発明の状態検知判断テーブルの一実施例の説明図である。
【図５】この発明の同期状態の一実施例の説明図である。
【図６】この発明の同期処理の一実施例の説明図である。
【図７】この発明の情報処理装置の全体の概略フローチャートである。
【図８】この発明の正規性判断処理のフローチャートである。
【図９】この発明の同期処理のフローチャートである。
【図１０】この発明のメッセージ通知処理のフローチャートである。
【図１１】この発明の状態検知処理のフローチャートである。
【図１２】この発明のロック処理のフローチャートである。
【図１３】この発明のファイル読出処理のフローチャートである。
【図１４】この発明のファイル書込処理のフローチャートである。
【図１５】この発明の分割ファイルの変化の具体例（ケース１）の説明図である。
【図１６】この発明の分割ファイルの変化の具体例（ケース２）の説明図である。
【符号の説明】
【０１２３】
１  制御部
２  状態検知部
３  記憶部（ＨＤＤ）
４  キャッシュメモリ
５  外部メモリ検知部
６  暗号化部
７  復号化部
８  消去部
２１  ユーザ状態検知部
２２  端末状態検知部
２３  ソフトウェア状態検知部
４１  ファイル記憶領域
４２  ファイル管理領域
４３  管理情報
４４  ファイル管理テーブル
４５  状態検知判断テーブル
４６  シリアル番号SNO
４７  端末鍵KEY１
５０  外部メモリ
５１  ファイル
５２  管理テーブル
５３  シリアル番号SNO
５４  署名データSIGN
５５  復号鍵KEY２
【図１】
0004787055.tif 000002
【図２】
0004787055.tif 000003
【図３】
0004787055.tif 000004
【図４】
0004787055.tif 000005
【図５】
0004787055.tif 000006
【図６】
0004787055.tif 000007
【図７】
0004787055.tif 000008
【図８】
0004787055.tif 000009
【図９】
0004787055.tif 000010
【図１０】
0004787055.tif 000011
【図１１】
0004787055.tif 000012
【図１２】
0004787055.tif 000013
【図１３】
0004787055.tif 000014
【図１４】
0004787055.tif 000015
【図１５】
0004787055.tif 000016
【図１６】
0004787055.tif 000017