(57)【要約】【課題】ファイルの透過的な暗号化・復号処理をＯＳへの負荷を低減させる簡易な構成で実現させるとともに、装置内のファイルの漏洩を防止できる情報処理装置、情報処理方法、及び情報処理プログラムを提供する。【解決手段】情報処理装置１０は、ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付ける起動受付部１７と、正規のアプリケーションとして登録されるアプリケーションの識別情報、及び同のグループに属するユーザを識別するユーザ情報を予め登録する登録データ保存部１８と、受け付けたアプリケーションの起動情報及びアプリケーションを起動させたユーザの識別情報を登録データ保存部１８の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、アプリケーションに挿入する制御部２１と、を備える。【選択図】図１
2020095546.tif 000002
【特許請求の範囲】
【請求項１】
ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付ける起動受付部と、
正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を予め登録する登録データ保存部と、
受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入する制御部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記制御プログラムは、挿入された前記アプリケーションにおいて、暗号化された前記ファイルを復号する一方、ファイルが保存される際に、前記ファイルを暗号化する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御プログラムは、装置外部に設けられた管理サーバを介して、前記ファイルを暗号化及び復号するための鍵を取得する、
ことを特徴とする請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記制御部は、ユーザにより選択された前記ファイルを暗号化及び復号するための鍵を一定時間保持し、
前記制御プログラムは、保持された暗号化及び復号するための鍵を用いてファイルの暗号化及び復号処理を実行する、
ことを特徴とする請求項１から請求項３のいずれか一項に記載の情報処理装置。
【請求項５】
前記デバイスドライバは、前記ファイルを保存する記憶部へのファイルの出力を検知して、
前記制御部は、検知された前記ファイルが前記記憶部に出力される際に、前記ファイルを暗号化、または削除する、
ことを特徴とする請求項１から請求項４のいずれか一項に記載の情報処理装置。
【請求項６】
前記制御部は、暗号化されてないファイルに、正規の前記アプリケーションとして登録されてないアプリケーションからアクセスされた場合に、前記ファイルへのアクセスを拒否して、前記ファイルを暗号化して保存する、
ことを特徴とする請求項１から請求項５のいずれか一項に記載の情報処理装置。
【請求項７】
前記制御プログラムは、
暗号化した前記ファイルを、装置外部のファイル管理サーバに送信して保存させて、
装置内部の記憶部は、暗号化されたファイルを識別するための識別ファイルが保存される、
ことを特徴とする請求項１から請求項６のいずれか一項に記載の情報処理装置。
【請求項８】
ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付けるステップと、
正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を登録データ保存部に予め登録するステップと、
受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入するステップと、
を含むことを特徴とする情報処理方法。
【請求項９】
コンピュータを、
ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付ける機能、
正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を登録データ保存部に予め登録する機能、
受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入する機能、
として機能させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
ユーザにより作成された文書データや画像データ等のファイルについて、権限を有するユーザのみがファイルの閲覧や編集等できるようにファイル管理を行うＩＲＭ（Information Rights Management）技術が広く利用されている。
【０００３】
従来では、作成されたファイルを暗号化・復号処理するため、専用のアプリケーションプログラムを用いて暗号化して、そのファイルを復号してアクセスすることができるユーザのアクセス権限をサーバで管理する技術が開示されている。この技術では、アクセス権限を有する者がファイルにアクセスした場合、暗号化されたファイルを復号する復号鍵がサーバを介してユーザに付与されて閲覧可能となる。
【０００４】
サーバを介してユーザのアクセス権限を管理することで、ファイルが電子メールに添付されて相手方に送信されるなど、ファイルが作成者の管理から離れた場合であっても、設定されたアクセス権限によってファイルへのアクセスを常に制限することが可能となる。
【０００５】
また、ファイルへのパスワード設定や暗号化処理の実施をユーザが忘れてしまうことを防止するために、ユーザがファイルを開くとき、あるいは閉じるときに自動的にファイルを暗号化・復号処理をすることで、ユーザに意識させることなく暗号化・復号処理する技術も開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−１５４４１９号公報
【特許文献２】特開２００９−５９００８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、作成されたファイルを暗号化・復号処理するための専用アプリケーションを利用する場合、ファイルの拡張子等、ファイル形式が変更される場合がある。この場合、暗号化されたファイルはファイル形式が変わってしまうため、暗号化されていないファイルなど、他のファイルとのデータ連携が難しくなる場合があり、ユーザが社内などのセキュリティが高い環境でファイルを使用しているにも関わらず、ユーザの利便性が低下するおそれがある。
【０００８】
一方で、上述のようなファイルの暗号化・復号処理を自動的に実行する技術は、ユーザの利便性を維持できるものの、暗号化・復号処理をＯＳに組み組まれたドライバ内に実装することで実現するものであり、この方法ではＯＳへの処理負荷が大きくなり、最悪の場合、ＯＳの動作が停止してしまうという問題がある。加えて、透過的に暗号化・復号処理する技術では、ユーザの端末が紛失などにより第３者に渡ってしまい、端末へのパスワードが不正に窃取されたときには、悪意の第３者であったとしても、端末を現実に保有する者のファイルへのアクセスを事後的に外部から制限することはできないため、第３者によって当該端末内のファイルに自由にアクセスすることができてしまい、ファイルが第３者に漏洩する場合がある。
【０００９】
本発明はこのような事情を考慮してなされたもので、ファイルの透過的な暗号化・復号処理を、ＯＳへの負荷を低減させる簡易な構成で実現させるとともに、装置内のファイルの漏洩を防止できる情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の実施形態に係る情報処理装置は、ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付ける起動受付部と、正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を予め登録する登録データ保存部と、受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入する制御部と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明の実施形態により、ファイルの透過的な暗号化・復号処理をＯＳへの負荷を低減させる簡易な構成で実現させるとともに、装置内のファイルの漏洩を防止できる情報処理装置、情報処理方法、及び情報処理プログラムが提供される。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態に係る情報処理装置の構成の一例を示す構成図。
【図２】第１実施形態に係る情報処理装置のハードウェア構成の一例を示す構成図。
【図３】（Ａ）正規のアプリケーションの識別情報の一例を示す図、（Ｂ）同一グループに属するユーザを識別するユーザ情報の設定例を示す図。
【図４】同一のグループに属するユーザに対応する複数の情報処理装置の一例を示す説明図。
【図５】第１実施形態に係る情報処理方法の一例を示すフローチャート（ファイルを復号する際のフローチャート）。
【図６】第１実施形態に係る情報処理方法の一例を示すフローチャート（ファイルを暗号化する際のフローチャート）。
【図７】第２実施形態に係る情報処理装置の一例を示す説明図。
【図８】第２実施形態に係る情報処理方法の一例を示すフローチャート。
【図９】第３実施形態に係る情報処理装置の一例を示す構成図。
【発明を実施するための形態】
【００１３】
（第１実施形態）
以下、本発明の実施形態を添付図面に基づいて説明する。
図１は、第１実施形態に係る情報処理装置１０の構成の一例を示す構成図である。図１では、情報処理装置１０におけるソフトウェアとハードウェアの構成を分けて記載しており、ハードウェアの構成については構成を省略して記載している。
【００１４】
情報処理装置１０は、アプリケーションにより作成されたファイルを暗号化及び復号処理するための制御プログラムをアプリケーションに挿入して組み込むことで、作成されたファイルをユーザに意識させること無く自動的に暗号化及び復号処理する装置である。ここで、アプリケーションとは、文書作成やファイル閲覧、表計算、描画用のソフトなどのプログラムを意味する。
【００１５】
情報処理装置１０は、例えばインターネットからの接続が制限される内部ネットワーク（例えば、社内ネットワーク）に配置される。また、情報処理装置１０は、外部ネットワークに設けられてもよい。
【００１６】
管理サーバ１１は、情報処理装置１０が属する内部のネットワークに配置されて、情報処理装置１０と通信を行い、情報処理装置１０において作成されたファイルを暗号化及び復号処理するための鍵情報などを管理する。また、管理サーバ１１は、外部ネットワークに設けられて、情報処理装置１０と通信を行う構成としてもよい。
【００１７】
図１を用いて、情報処理装置１０の具体的な構成について説明する。ここでは、情報処理装置１０のソフトウェアとして、ＯＳ（オペレーティングシステム）１２、ファイル制御部１３、及びアプリケーションが起動している場合について検討する。アプリケーションは、ハードディスク２２内に保存された暗号化ファイルがユーザにより選択されて起動される。
【００１８】
ＯＳ１２には、デバイスドライバ１５などが組み込まれており、本実施形態ではデバイスドライバ１６が組み込まれる。ハードディスク２２は、ＯＳ１２のデバイスドライバ１５を介して制御されて、ファイルの入出力が実行される。なお、図１では、ハードディスク２２を制御するためのデバイスドライバ１５を例示して記載しているが、ＯＳには各種デバイスを制御するためのドライバが組み込まれている。
【００１９】
デバイスドライバ１６は、ＯＳ１２に組み込まれて動作するドライバであり、ＯＳ１２のプロセスを監視して、ユーザによるアプリケーションの起動を検知する。デバイスドライバ１６は、アプリケーションの起動を検知した際、アプリケーションの起動情報をファイル制御部１３に送信する。アプリケーションの起動情報には、各種アプリケーションのそれぞれを識別するための、起動されたアプリケーションの識別情報が含まれている。
【００２０】
デバイスドライバ１６は、アプリケーションの起動情報をファイル制御部１３に送信するときに、アプリケーションのプロセスの進行を一時的に停止させる。アプリケーションのプロセスの進行が一時的に停止されたときに、ファイル制御部１３からアプリケーションに対して制御プログラムが挿入される。そして、デバイスドライバ１６は、制御プログラムの挿入後に、一時的に停止させていたアプリケーションの動作を再開させる。
【００２１】
また、デバイスドライバ１６は、ユーザによって選択されたファイルが、暗号化されたファイル、または、暗号化されてないファイルのいずれかであるかの識別情報をファイル制御部１３に送ってもよい。
【００２２】
ファイル制御部１３は、起動受付部１７と、登録データ保存部１８と、制御部２１と、を備えている。ファイル制御部１３は、ファイルを暗号化及び復号するためのアプリケーションプログラムであり、ＯＳ１２に組み込まれるのでは無く、アプリケーションとして動作する。
【００２３】
起動受付部１７は、ユーザによって起動されたアプリケーションの起動情報を、ＯＳ１２に組み込まれたデバイスドライバ１６から受け付ける。また、起動受付部１７は、アプリケーションを起動させたユーザの識別情報を受け付ける。ユーザの識別情報は、ユーザを識別できる情報であり、例えば情報処理装置１０のユーザのメールアドレスや情報処理装置１０の端末情報などを意味する。
【００２４】
登録データ保存部１８は、アプリケーション登録部１９と、ユーザ情報保存部２０と、を有する。
【００２５】
アプリケーション登録部１９は、正規のアプリケーションとして登録されるアプリケーションのリストと、アプリケーションのそれぞれを識別する識別情報とを保存する。アプリケーションの識別情報は、起動されたアプリケーションを一意に特定するための情報であり、ソフトウェアの名称、ファイルサイズ、ファイルのハッシュ値が例示される。
【００２６】
正規のアプリケーションとしては、アプリケーションに挿入される制御プログラムによって動作（例えば、コピー、印刷など）が制御可能となるアプリケーションが登録される。
【００２７】
アプリケーション登録部１９に登録されるアプリケーションは、例えば管理サーバ１１において管理者により登録されて、情報処理装置１０に送信されて保存される。また、登録されるアプリケーションは、管理サーバ１１から更新データを送信することで随時更新可能に構成してもよい。
【００２８】
図３（Ａ）は、正規のアプリケーションを識別するための識別情報の一例である。図３（Ａ）では、アプリケーションの識別情報として、ソフトウェアの名称、ファイルサイズが設定されている。例えば、起動されたアプリケーションが、ソフトウェア名「AAA Sheets」となり、ファイルサイズがｘｘｘとなった場合、登録されたアプリケーションであると判別できる。なお、登録されたアプリケーションであるか否かの判別は、設定された１つの識別情報による照合結果に基づき判別してもよいし、複数の識別情報を判別用に設定して、これらの識別情報との照合結果に基づき判別してもよい。
【００２９】
ユーザ情報保存部２０は、同一のグループに属するユーザを識別するためのユーザ情報を予め登録する。同一グループに属するユーザの設定方法は、例えばユーザが保有する情報処理装置１０に対応するメールアドレスのドメインに基づいて設定される。ドメインによりグループに属するユーザを設定することで、社内に属するユーザを一括して同一グループに設定できる。なお、メールアドレスや情報処理装置１０の端末情報（例えばＭＡＣアドレス）を用いて、同一グループに属するユーザを個別に設定してもよい。また、特定のユーザの情報処理装置１０をグループから外す設定をしてもよい。
【００３０】
なお、ユーザ情報保存部２０に保存されるユーザ情報は、例えば管理サーバ１１において管理者により登録されて、情報処理装置１０に送信される。また、ユーザ情報保存部２０に保存されるユーザ情報は、管理サーバ１１から更新データを送信することで随時更新可能に構成してもよい。
【００３１】
図３（Ｂ）は、同一のグループに属するユーザを識別するユーザ情報の設定例を示す図である。設定例１では、ドメイン名が「ｘｘｘ．ｃｏ．ｊｐ」となるメールアドレスに対応する情報処理装置１０のユーザを同一グループとして設定している。また、設定例２では、同一グループのユーザを、個別のメールアドレスを用いて設定している。
【００３２】
図４は、同一のグループに属するユーザに対応する複数の情報処理装置１０（１０ａ，１０ｂ，１０ｃ．１０ｄ）の一例を示す説明図である。このように、ドメイン名が「ｘｘｘ．ｃｏ．ｊｐ」となるメールアドレスのユーザに対応する４つの情報処理装置１０が同一グループとして設定されている。
【００３３】
なお、同一のグループとして情報処理装置１０を設定する方法として、図４に示すように複数の情報処理装置１０に対して設定する構成に限定されるものではなく、単一の情報処理装置１０に対してグループの設定を行ってもよい。
【００３４】
制御部２１は、デバイスドライバ１６から受け付けたアプリケーションの起動情報、及びアプリケーションを起動させたユーザの識別情報を登録データ保存部１８の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、アプリケーションに挿入する。
【００３５】
具体的には、起動されたアプリケーションの起動情報を、アプリケーション登録部１９の識別情報と照合して、一致する場合には、起動されたアプリケーションが正規なアプリケーションであると判定する。さらに、制御部２１は、アプリケーションを起動させたユーザの識別情報を、ユーザ情報保存部２０のユーザ情報と照合して、一致する場合には、当該ユーザの情報処理装置１０が設定されたグループに属すると判定する。
【００３６】
制御部２１は、起動されたアプリケーションが正規であり、かつユーザが設定されたグループに属すると判定した場合、ファイルの暗号化及び復号処理を実行する制御プログラムを、アプリケーションに挿入する。デバイスドライバ１６によりプロセスの進行が一時的に停止されているアプリケーションに対して制御プログラムを挿入することで、アプリケーションに制御プログラムが組み込まれる。
【００３７】
一方で、制御部２１は、起動されたアプリケーションが正規でない、または、ユーザの情報処理装置１０が設定されたグループに属しない場合には、制御プログラムは挿入されず、暗号化された状態のファイルがアプリケーションにより開かれる。なお、この場合において、ユーザにより選択されたファイルが暗号化されたファイルでないとき、すなわち平文のファイルであるときには、制御プログラムは挿入されることなく、平文のままファイルは開かれる。
【００３８】
アプリケーションに挿入される制御プログラムは、例えばＤＬＬ（Dynamic Link Library）により実装される。
【００３９】
アプリケーションに挿入された制御プログラムは、暗号化されているファイル（アプリケーションにより開かれるファイル）を復号する。具体的には、管理サーバ１１から制御部２１を介して復号用の鍵を取得して、ファイルを復号する。これにより、ファイルは、ユーザにより閲覧、編集などのアクセスが可能な状態となる。なお、新規でのファイル作成時には、復号処理の必要は無いため、制御プログラムは、ファイルのオープン動作をアプリケーションに実行させる。
【００４０】
一方、制御プログラムは、ファイルの保存動作が実行される際に、ファイルを暗号化する。具体的には、制御プログラムは、アプリケーションからファイルの保存動作を受け付けたときに、暗号鍵を取得して、ファイルを暗号化する。暗号化及び復号するための鍵は、ファイルが新規に作成されたときに、制御プログラムにおいて生成される。生成された暗号鍵は、ファイルに対応付けて管理サーバ１１で管理される。また、暗号化及び復号用の鍵は、ファイルが新規に作成されたときに、管理サーバ１１において生成されて、制御プログラムが取得する構成としてもよい。なお、ファイルを暗号化するための鍵と、暗号化されたファイルを復号する復号用の鍵とは、同一の暗号鍵であり、ファイルのそれぞれを識別する識別情報に対応付けて管理サーバ１１で管理される。
【００４１】
制御プログラムは、アプリケーションからファイルの保存動作を受け付けるたびに逐次ファイルを暗号化する。そして、暗号化されたファイルは、ハードディスク２２に保存される。
【００４２】
また、制御プログラムは、アプリケーションが実行するハードディスク２２への書き込み要求によって作成される一時ファイルについても暗号化してもよい。この場合、ユーザによりファイルがクローズされる際に、最終的に保存されるファイルがハードディスク２２内に暗号化された状態で保存される。
【００４３】
また、情報処理装置１０が管理サーバ１１との通信ができないオフライン状態の場合に、制御プログラムにおいてファイルに対応して暗号鍵が生成された場合には、制御部２１は鍵を保持してもよい。この場合、制御部２１は、管理サーバ１１との通信が可能なオンライン状態となったときに、ファイルに対応して生成された暗号鍵を管理サーバ１１に送信する。
【００４４】
また、制御部２１は、管理サーバ１１から、ファイルに対応する暗号鍵を取得した場合、鍵を一定時間（例えば８時間）保持してもよい。そして、情報処理装置１０が管理サーバ１１との通信ができないオフライン状態となった場合、一定時間内であれば、アプリケーションに挿入された制御プログラムは、制御部２１に保持された鍵を用いることでファイルの復号及び暗号化処理を行ってもよい。
【００４５】
より具体的には、制御部２１は、グループ内に属するユーザによって正規のアプリケーションが起動されて、暗号化鍵を管理サーバ１１から取得したときに、鍵を一定時間保持する。この設定された一定時間内に、情報処理装置１０がオフライン状態となり、暗号鍵を管理サーバ１１から取得できないとき、アプリケーションに挿入された制御プログラムは、制御部２１が保持する鍵を用いて、暗号化されたファイルを復号する。そして、ファイルが保存されるとき、保持している鍵を用いて暗号化する。
【００４６】
これにより、情報処理装置１０が管理サーバ１１と通信ができないオフライン状態となった場合であっても、グループ内に属するユーザによって正規のアプリケーションが起動されたときには、自動的なファイルの復号及び暗号化処理を一定時間内に限り継続することができる。
【００４７】
続けて、情報処理装置１０のハードウェア構成について説明する。
図２は、第１実施形態に係る情報処理装置１０のハードウェア構成の一例を示す構成図である。
【００４８】
情報処理装置１０は、ＣＰＵ２３と、ＲＡＭ２４と、ハードディスク２２と、ネットワークインターフェース２５と、操作部２６と、表示部２７と、を備える。
【００４９】
ＣＰＵ２３は、ハードディスク２２に格納された、ＯＳや各種アプリケーションをＲＡＭ２４にロードして、そのアプリケーションを展開することで、各種アプリケーションの機能を実現する。ファイル制御部１３を構成するアプリケーションプログラムを、ＣＰＵ２３で実行することで、ファイル制御部１３の各機能が実現される。
【００５０】
ハードディスク２２は、アプリケーションにより作成されて、ファイル制御部１３により暗号化されたファイルなどが格納される。なお、各種アプリケーションは、ＵＳＢ等の外部記憶媒体に保存しておき、プログラムを実行する際に外部記憶媒体から情報処理装置１０にインストールして情報処理装置１０で実行する構成としてもよい。また、アプリケーションにより作成されて、ファイル制御部１３により暗号化されたファイルは、ＵＳＢ等の外部記憶媒体に保存される構成としてもよい。
【００５１】
ネットワークインターフェース２５は、他の情報処理装置１０や管理サーバ１１等、外部との通信を行う。
【００５２】
操作部２６は、ユーザからの入力操作を受け付ける、例えばマウス、キーボード等の入力インターフェースである。表示部２７は、アプリケーションにより作成されるファイルなどを表示するディスプレイである。
【００５３】
続いて、第１実施形態に係る情報処理装置１０の動作について説明する。図５は、第１実施形態に係る情報処理方法の一例を示すフローチャートである（適宜、図１参照）。図５は、復号処理時の流れを示すフローを示している。
【００５４】
デバイスドライバ１６は、ＯＳ１２におけるプロセスの監視を行う（Ｓ１０）。ファイル制御部１３の起動受付部１７は、ユーザにより起動されたアプリケーションの起動情報を、デバイスドライバ１６から受け付ける（Ｓ１１）。
【００５５】
また、デバイスドライバ１６は、アプリケーションの起動情報をファイル制御部１３に送信するときに、アプリケーションのプロセスの進行を一時的に停止させる（Ｓ１２）。
【００５６】
制御部２１は、受け付けたアプリケーションの起動情報、及びアプリケーションを起動させたユーザの識別情報を登録データ保存部１８の登録データと照合する（Ｓ１３）。そして、この登録データと一致する場合には、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、アプリケーションに挿入する（Ｓ１４）。
【００５７】
デバイスドライバ１６は、制御プログラムの挿入後に、一時的に停止させていたアプリケーションの動作を再開させる（Ｓ１５）。
【００５８】
制御プログラムは、管理サーバ１１にアクセスして、ファイルに対応する暗号鍵を取得する（Ｓ１６）。制御プログラムは、暗号化されたファイルを復号する（Ｓ１７）。
【００５９】
続いて、図６のフローチャートを用いて、情報処理装置１０における、ファイルの暗号化処理の流れを説明する（適宜、図１参照）。
【００６０】
アプリケーションに挿入された制御プログラムは、ファイルの保存動作を受け付けた際に、ファイルに対応付けられた暗号鍵を管理サーバ１１に問い合わせて取得する（Ｓ２０、Ｓ２１）。
【００６１】
そして、制御プログラムは、ファイルを暗号化して、ハードディスク２２に保存する（Ｓ２２、Ｓ２３）。なお、制御プログラムは、アプリケーションからファイルの保存動作を受け付けるたびに逐次ファイルを暗号化して、ハードディスク２２に保存する。
【００６２】
なお、ハードディスク２２に保存されるファイルをグループ化するためのファルダにおいて、特定のフォルダを指定し、この特定のフォルダに保存されたファイルにユーザがアクセスする場合については、ファイルに対応するアプリケーションが正規なものであり、かつユーザが設定されたグループに属する場合であっても、制御プログラムは挿入されず、ファイルが自動的に暗号化されない、または、ファイルが自動的に復号されるように構成してもよい。
【００６３】
このように、アプリケーションに対して挿入される制御プログラムの動作によって、ファイルの暗号化及び復号処理が実行されることで、ファイルの透過的な暗号化・復号処理を簡易な構成で実現できる。加えて、ファイル制御部１３は、アプリケーションプログラムにより実装されており、ＯＳに組み込まれたドライバ内で暗号化・復号処理を実行されないため、ＯＳのバージョンアップが発生した場合であっても、ファイル制御部１３の修正等のメンテナンス作業が軽減されて、システムの運用が容易となる。
【００６４】
また、起動されたアプリケーションが、予め登録された正規なアプリケーションか否かを判定し、かつ同一グループのユーザの情報処理装置１０であるか否かを判定することで、起動可能なアプリケーションを制限できるとともに、アクセス権を任意に設定できる。これにより、第三者へのファイルの漏洩を防止できる。例えばユーザが情報処理装置１０を紛失した場合、この情報処理装置１０に対応するユーザ情報をグループから外すことで、この情報処理装置１０からはファイルにアクセスすることができない状態となり、第三者へのファイルの漏洩が防止される。
【００６５】
（第２実施形態）
図７は、第２実施形態に係る情報処理装置１０の一例を示す説明図である。なお、図７において第１実施形態（図１）と共通の構成又は機能を有する部分は、同一符号で示し、重複する説明を省略する。
【００６６】
第１実施形態に係る情報処理装置１０では、ユーザが正規のアプリケーションを起動させた場合に、アプリケーションに対して暗号化及び復号処理するための制御プログラムを挿入することで、ファイルの暗号化及び復号処理を実行した。一方、第２実施形態に係る情報処理装置１０では、例えばユーザが正規のアプリケーションを用いることなく、すなわちアプリケーション登録部１９に登録されていない非正規のアプリケーションを介してファイルを開いて、ファイルがハードディスク２２に出力された場合に、出力されたファイルを暗号化（または削除）することで、ファイルの保護を実行する。
【００６７】
ここでは、ファイルがハードディスク２２に出力される例として、インターネット閲覧用のＷｅｂブラウザからファイルがダウンロードされて、ハードディスク２２に出力された場合について検討する。なお、ファイルがハードディスク２２に出力される他の例として、ネットワークでファイルを共有するための共有フォルダから情報処理装置１０にファイルをコピーする場合等がある。
【００６８】
Ｗｅｂブラウザから装置内にダウンロードされたファイルは、デバイスドライバ１５を介してハードディスク２２に出力される。
【００６９】
デバイスドライバ１６は、ハードディスク２２へのファイルの出力を検知して、ファイルの出力情報をファイル制御部１３に送信する。
【００７０】
ファイル制御部１３の起動受付部１７は、デバイスドライバ１６からファイルの出力情報を受け付ける。そして、ファイル制御部１３の制御部２１は、ハードディスク２２への入出力を制御するデバイスドライバ１５を介して、出力が検知されたファイルのプロセスを監視する。
【００７１】
制御部２１は、ユーザによりファイルが保存されるなど、ハードディスク２２への出力動作を検知したとき、制御部２１においてファイルを暗号化するための鍵を生成して、この取得した鍵を用いてファイルを暗号化する。暗号化されたファイルは、デバイスドライバ１５を介してハードディスク２２に保存される。また、制御部２１は、ハードディスク２２への出力動作を検知したとき、当該ファイルを削除する構成としてもよい。なお、ファイルに対応して生成された暗号鍵は、管理サーバ１１に送信されて管理される。
【００７２】
さらに、ハードディスク２２にすでに保存されているファイルの内で、暗号化されていないファイルに対して、ユーザが非正規のアプリケーションを介してファイルをアクセスした場合について検討する。
【００７３】
ファイル制御部１３の制御部２１は、非正規のアプリケーションによりアクセスされたファイルが、暗号化されてないファイルであるとデバイスドライバ１６を介して識別された場合に、ファイルへのアクセス動作を拒否させる。そして、制御部２１は、ファイルへのアクセス動作を拒否したファイルを、制御部２１で生成した暗号鍵を用いて暗号化してハードディスク２２に保存する。なお、ファイルに対応して生成された暗号鍵は、管理サーバ１１に送信されて管理される。
【００７４】
このように、ハードディスク２２に保存された、暗号化されていないファイルに対して、非正規のアプリケーションによってアクセスされたときに、ファイルへのアクセスを拒否するとともに暗号化処理することで、暗号化されていないファイルを装置の外部へ取り出されないようにすることができる。
【００７５】
図８は、第２実施形態に係る情報処理方法の一例を示すフローチャートである（適宜、図７参照）。
【００７６】
デバイスドライバ１６は、ハードディスク２２へのファイルの出力を検知して、ファイルの出力情報をファイル制御部１３に送信する（Ｓ３０）。
【００７７】
ファイル制御部１３の制御部２１は、デバイスドライバ１５を介して、出力が検知されたファイルのプロセスを監視する（Ｓ３１）。
【００７８】
制御部２１は、デバイスドライバ１５を介してハードディスク２２への出力動作を検知したとき、管理サーバ１１からファイルを暗号化するための鍵を取得する（Ｓ３２；ＹＥＳ、Ｓ３３）。制御部２１は、取得した鍵を用いてファイルを暗号化する（Ｓ３４）。なお、制御部２１は、ファイルを暗号化するのではなく、ファイルの削除を実行してもよい。
【００７９】
暗号化されたファイルは、デバイスドライバ１５を介してハードディスク２２に保存される（Ｓ３５）。
【００８０】
このように、第２実施形態に係る情報処理装置１０では、ユーザが正規のアプリケーションを用いずダウンロード等して、ハードディスク２２にファイルが出力される場合に、ファイルの暗号化処理を自動的に行うことができ、ファイルを保護することができる。
【００８１】
（第３実施形態）
図９は、第３実施形態に係る情報処理装置１０の構成を示す構成図である。なお、図９において第１実施形態（図１）と共通の構成又は機能を有する部分は、同一符号で示し、重複する説明を省略する。
【００８２】
第３実施形態に係る情報処理装置１０では、アプリケーションに挿入された制御プログラムにより暗号化されたファイルを、装置外部に設けられたファイル管理サーバ２８で保存し、装置内部にはユーザがファイルを選択するための識別用ファイルが保存する。
【００８３】
ファイル管理サーバ２８は、情報処理装置１０において作成、編集されるファイルを管理するサーバである。
【００８４】
ファイル管理サーバ２８は、制御プログラムにより暗号化ファイルが作成されたとき、情報処理装置１０から暗号化ファイルを受信して保存する。一方、ユーザがファイルを選択してアプリケーションを起動させたときに、ファイル管理サーバ２８は、選択されたファイルに対応する暗号化ファイルを情報処理装置１０に送る。
【００８５】
ファイル管理サーバ２８は、情報処理装置１０が属する内部のネットワークと同一のネットワークに配置される。また、ファイル管理サーバ２８は、外部ネットワークに設けられて、情報処理装置１０と通信を行う構成としてもよい。なお、図９では、管理サーバ１１とファイル管理サーバ２８を別々に記載しているが、一体として構成してもよい。
【００８６】
制御プログラムは、ファイルの保存動作を受け付けて暗号化ファイルを作成したとき、暗号化ファイルをファイル管理サーバ２８に送る一方で、ファイルの実体的な内容を有しない、ファイルを識別するための識別ファイルをハードディスク２２に保存させる。
【００８７】
これにより、情報処理装置１０には、ファイルのそれぞれを識別するための識別用ファイルのみが保存されて、実体的なデータは保存されない。このため、紛失などにより情報処理装置１０を失った場合であっても、情報処理装置１０にはファイルが保存されず、ファイルの実体的な内容はファイル管理サーバ２８にアクセスしない限り取得できないため、ファイルのセキュリティをより向上させることができる。
【００８８】
以上述べた各実施形態の情報処理装置によれば、デバイスドライバからアプリケーションの起動を受け付けて、起動情報に応じてファイルを暗号化及び復号する制御プログラムを挿入することにより、ファイルの透過的な暗号化・復号処理をＯＳへの負荷を低減させる簡易な構成で実現させるとともに、装置内のファイルの漏洩を防止できる。
【００８９】
なお、実施形態におけるハードディスクや外部記憶媒体は、特許請求の範囲における記憶部の一例である。
【００９０】
なお、情報処理装置１０で実行されるプログラムは、ＲＯＭ等から構成されるハードディスクに予め組み込んで提供される。もしくは、このプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ、フレキシブルディスク等のコンピュータで読み取り可能な記憶媒体に記憶されて提供するようにしてもよい。また、情報処理装置１０で実行されるプログラムは、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせて提供するようにしてもよい。
【００９１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００９２】
１０…情報処理装置、１１…管理サーバ、１２…ＯＳ、１３…ファイル制御部、１５…デバイスドライバ、１６…デバイスドライバ、１７…起動受付部、１８…登録データ保存部、１９…アプリケーション登録部、２０…ユーザ情報保存部、２１…制御部、２２…ハードディスク、２３…ＣＰＵ、２４…ＲＡＭ、２５…ネットワークインターフェース、２６…操作部、２７…表示部、２８…ファイル管理サーバ。
【図１】
2020095546.tif 000003
【図２】
2020095546.tif 000004
【図３】
2020095546.tif 000005
【図４】
2020095546.tif 000006
【図５】
2020095546.tif 000007
【図６】
2020095546.tif 000008
【図７】
2020095546.tif 000009
【図８】
2020095546.tif 000010
【図９】
2020095546.tif 000011
【手続補正書】
【提出日】令和2年3月23日(2020.3.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付ける起動受付部と、
正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を予め登録する登録データ保存部と、
受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入する制御部と、を備えて、
前記デバイスドライバは、アプリケーションの起動時に当該アプリケーションを一時的に停止させて、
前記制御プログラムは、一時的に停止されたときに挿入された前記アプリケーションにおいて、暗号化された前記ファイルを復号する一方、ファイルが保存される際に、前記アプリケーションにおいて前記ファイルを暗号化する、
ことを特徴とする情報処理装置。
【請求項２】
前記制御プログラムは、装置外部に設けられた管理サーバを介して、前記ファイルを暗号化及び復号するための鍵を取得する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御部は、ユーザにより選択された前記ファイルを暗号化及び復号するための鍵を一定時間保持し、
前記制御プログラムは、保持された暗号化及び復号するための鍵を用いてファイルの暗号化及び復号処理を実行する、
ことを特徴とする請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記デバイスドライバは、前記ファイルを保存する記憶部へのファイルの出力を検知して、
前記制御部は、検知された前記ファイルが前記記憶部に出力される際に、前記ファイルを暗号化、または削除する、
ことを特徴とする請求項１から請求項３のいずれか一項に記載の情報処理装置。
【請求項５】
前記制御部は、暗号化されてないファイルに、正規の前記アプリケーションとして登録されてないアプリケーションからアクセスされた場合に、前記ファイルへのアクセスを拒否して、前記ファイルを暗号化して保存する、
ことを特徴とする請求項１から請求項４のいずれか一項に記載の情報処理装置。
【請求項６】
前記制御プログラムは、
暗号化した前記ファイルを、装置外部のファイル管理サーバに送信して保存させて、
装置内部の記憶部は、暗号化されたファイルを識別するための識別ファイルが保存される、
ことを特徴とする請求項１から請求項５のいずれか一項に記載の情報処理装置。
【請求項７】
ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付けるステップと、
正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を登録データ保存部に予め登録するステップと、
受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入するステップと、を含んで、
前記デバイスドライバは、アプリケーションの起動時に当該アプリケーションを一時的に停止させて、
前記制御プログラムは、一時的に停止されたときに挿入された前記アプリケーションにおいて、暗号化された前記ファイルを復号する一方、ファイルが保存される際に、前記アプリケーションにおいて前記ファイルを暗号化する、
ことを特徴とする情報処理方法。
【請求項８】
コンピュータを、
ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付ける機能、
正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を登録データ保存部に予め登録する機能、
受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入する機能、として機能させて、
前記デバイスドライバは、アプリケーションの起動時に当該アプリケーションを一時的に停止させて、
前記制御プログラムは、一時的に停止されたときに挿入された前記アプリケーションにおいて、暗号化された前記ファイルを復号する一方、ファイルが保存される際に、前記アプリケーションにおいて前記ファイルを暗号化する、
ことを特徴とする情報処理プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
本発明の実施形態に係る情報処理装置は、ユーザにより起動されたアプリケーションの起動情報を、オペレーティングシステムに組み込まれたデバイスドライバから受け付ける起動受付部と、正規の前記アプリケーションとして登録される前記アプリケーションの識別情報、及び同一のグループに属するユーザを識別するユーザ情報を予め登録する登録データ保存部と、受け付けた前記アプリケーションの起動情報及び前記アプリケーションを起動させた前記ユーザの識別情報を前記登録データ保存部の登録データと照合して、照合結果に応じて、作成されたファイルの暗号化及び復号処理を実行する制御プログラムを、前記アプリケーションに挿入する制御部と、を備えて、前記デバイスドライバは、アプリケーションの起動時に当該アプリケーションを一時的に停止させて、前記制御プログラムは、一時的に停止されたときに挿入された前記アプリケーションにおいて、暗号化された前記ファイルを復号する一方、ファイルが保存される際に、前記アプリケーションにおいて前記ファイルを暗号化する、を備えることを特徴とする。