(57)【特許請求の範囲】
【請求項１】
コンピュータ又はネットワークから外部に出ようとするデータが監視対象であるか否かを、登録された少なくとも１つの判定ルールに基づき判定し、そのデータが監視対象であると判定した場合に監視のための所定の処理を実行する監視処理部であって、前記登録された少なくとも１つの判定ルールには、前記外部に出ようとするデータが監視対象の文字列を含んでいる場合に、当該データを監視対象と判定する第１の判定ルールが含まれる監視処理部、と協働するコンピュータを、
暗号化処理が行われる場合に、暗号化処理の対象のデータが前記第１の判定ルールに基づいて監視対象であるかどうかを検査する検査部、
前記暗号化処理の対象のデータが監視対象であると前記検査部の検査により判明した場合に、そのデータに対して暗号化処理を施した結果得られる暗号化結果のデータを監視対象と判定する第２の判定ルールを前記監視処理部に登録するための要求を前記監視処理部に通知し、前記暗号化処理の対象のデータが監視対象でないと前記検査部の検査により判明した場合には前記要求の前記監視処理部への通知は行わない通知部、
として機能させるためのプログラム。
【請求項２】
請求項１記載のプログラムであって、
前記通知部は、前記暗号化結果のデータの所定の特徴量を求め、その特徴量を持つデータを監視対象とする判定ルールを前記第２の判定ルールとして前記監視処理部に登録するための要求を前記監視処理部に通知する、
ことを特徴とするプログラム。
【請求項３】
請求項２記載のプログラムであって、前記特徴量は前記暗号化結果のデータのハッシュ値であることを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれか１項に記載のプログラムであって、前記検査部は、前記暗号化処理の対象のデータが監視対象であるか否かを、前記監視処理部に問い合わせることを特徴とするプログラム。
【請求項５】
コンピュータ又はネットワークから外部に出ようとするデータが監視対象であるか否かを、登録された少なくとも１つの判定ルールに基づき判定し、そのデータが監視対象であると判定した場合に監視のための所定の処理を実行する監視処理部であって、前記登録された少なくとも１つの判定ルールには、前記外部に出ようとするデータが監視対象の文字列を含んでいる場合に、当該データを監視対象と判定する第１の判定ルールが含まれる監視処理部、と協働するデータ通信監視システムであって、
暗号化処理が行われる場合に、暗号化処理の対象のデータが前記第１の判定ルールに基づいて監視対象であるかどうかを検査する検査部、
前記暗号化処理の対象のデータが監視対象であると検査部の検査により判明した場合に、そのデータに対して暗号化処理を施した結果得られる暗号化結果のデータを監視対象と判定する第２の判定ルールを前記監視処理部に登録するための要求を前記監視処理部に通知し、前記暗号化処理の対象のデータが監視対象でないと検査部の検査により判明した場合には前記要求の前記監視処理部への通知は行わない通知部、
を備えるデータ通信監視システム。
【請求項６】
コンピュータ又はネットワークから外部に出ようとするデータが監視対象であるか否かを、登録された少なくとも１つの判定ルールに基づき判定し、そのデータが監視対象であると判定した場合に監視のための所定の処理を実行する監視処理部であって、前記登録された少なくとも１つの判定ルールには、前記外部に出ようとするデータが監視対象の文字列を含んでいる場合に、当該データを監視対象と判定する第１の判定ルールが含まれる監視処理部、と協働してデータ通信を監視するための方法であって、
検査部が、暗号化処理が行われる場合に、暗号化処理の対象のデータが前記第１の判定ルールに基づいて監視対象であるかどうかを検査し、
前記暗号化処理の対象のデータが監視対象であると前記検査部の検査により判明した場合に、通知部が、そのデータに対して暗号化処理を施した結果得られる暗号化結果のデータを監視対象と判定する第２の判定ルールを前記監視処理部に登録するための要求を前記監視処理部に通知し、前記暗号化処理の対象のデータが監視対象でないと前記検査部の検査により判明した場合には、前記通知部は、前記要求の前記監視処理部への通知は行わない、
データ通信監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータから外部へ、又はコンピュータが属する内部ネットワークから外部ネットワークへのデータ送信の監視のための技術に関する。
【背景技術】
【０００２】
重要情報や個人情報が、コンピュータから外部へ、あるいは企業内のネットワークから外部へと、意図的にあるいは意図せずに流出する情報漏えいが大きな問題となっている。そこで、従来より、転送されるデータの内容や特徴量を元に監視対象の重要データであるか否かを判断し、監視対象のデータであると判断された場合に管理者に警告を発したり転送を中止したりする監視技術が開発され、利用されてきた。
【０００３】
またその一方で、データの機密を保持するため、データの暗号化が励行されている。
【０００４】
ところが、このようにデータを暗号化すると、データの内容や特徴量をもとに監視を行う装置がデータの内容を判別できないため、監視が行えない。かといってデータを平文のままにすれば機密性が損なわれるという矛盾があった。
【０００５】
データ監視の技術として、例えば特許文献１には、監査人が暗号化された送信データも監査できるように、一部分だけは監査人にも解読できるように暗号化する方式が示される。しかしながら、この方式では、監査人の解読鍵で一部分を解読可能に暗号化するため、その解読鍵が漏洩した場合の影響が多大である。
【０００６】
また、特許文献２の請求項５には、メール送信の通信を取得し、添付ファイルの有無および／または文字列中に禁止されたものが含まれないこと等で判断して、メール送信の中止を要求し管理者にレポートを生成するシステムが開示されている。しかしながら、この考案では、メール送信の通信を取得し解析するものである。データが暗号化されている場合には、このような文字列解析の方式は利用できない。この文献の方式では、暗号化されて解析しえないデータがメール送信の通信に含まれる場合については考慮されていない。
【０００７】
また、特許文献３には、ネットワークに文字データを送信する際に文字データの検査を行い、予め特定の文字列を格納したプロファイルを使って検査を行うことで、流出してはならないデータがネットワークに対して送り出されないかどうかを判定する方式が示される。しかし、この方式では、送信に当たって文書データに特定の文字列が含まれているか否かを検査するものであり、暗号化されて検査しえない文書データの送信については考慮されていない。
【０００８】
また、特許文献４には、転送するデータに含まれる電子透かしの内容によりデータ転送の可否を判断する方式が示される。しかし、この方式では、あらかじめ付与された電子透かしを元に判断を行うが、暗号化等によって電子透かしを取得できない形態に変換された場合の取り扱いについては明確には示されていない。
【０００９】
以上、送信されるデータが暗号化される場合の問題を説明したが、暗号化以外にも例えば、データ圧縮などのように、データが元の内容から変換される処理はいくつもあり、そのようなデータ変換処理一般についても、データを暗号化した場合と同様の問題がある。
【００１０】
【特許文献１】特許第３６０４２６４号明細書
【特許文献２】特開２００２−２３２４５１号公報
【特許文献３】特開２００４−２２７０５６号公報
【特許文献４】特開２００１−５７５７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
本発明は、データの流出を監視するためのシステムにおいて、データが変換されてもそのデータの流出を監視できるようにする。
【課題を解決するための手段】
【００１２】
本発明の１つの側面では、コンピュータ又はネットワークから外部に出ようとするデータが監視対象であるか否かを、登録された少なくとも１つの判定ルールに基づき判定し、そのデータが監視対象であると判定した場合に監視のための所定の処理を実行する監視処理部であって、前記登録された少なくとも１つの判定ルールには、前記外部に出ようとするデータが監視対象の文字列を含んでいる場合に、当該データを監視対象と判定する第１の判定ルールが含まれる監視処理部、と協働するデータ通信監視システムであって、暗号化処理が行われる場合に、暗号化処理の対象のデータが前記第１の判定ルールに基づいて監視対象であるかどうかを検査する検査部、前記暗号化処理の対象のデータが監視対象であると検査部の検査により判明した場合に、そのデータに対して暗号化処理を施した結果得られる暗号化結果のデータを監視対象と判定する第２の判定ルールを前記監視処理部に登録するための要求を前記監視処理部に通知し、前記暗号化処理の対象のデータが監視対象でないと検査部の検査により判明した場合には前記要求の前記監視処理部への通知は行わない通知部、を備えるデータ通信監視システムを提供する。
【００１３】
参考例では、データ変換が行われる場合に、変換対象のデータが監視対象であるかどうかを検査する検査部、変換対象のデータに対してデータ変換を施した結果得られる変換後データに対し、検査部の検査結果に関する情報を付加する情報付加部、コンピュータ又はネットワークから外部に出ようとするデータが監視対象であるか否かを判定しそのデータが監視対象である場合に監視のための所定の処理を実行する監視処理部であって、そのデータに検査部の検査に関する情報が付加されている場合、その情報に基づきそのデータが監視対象であるか否かを判定する監視処理部、とを備えるデータ通信監視システムを提供する。
【００１４】
別の参考例では、コンピュータ又はネットワークから外部に出ようとするデータが監視対象であるか否かを判定しそのデータが監視対象である場合に監視のための所定の処理を実行する監視処理部と協働するデータ通信監視システムであって、データ変換が行われる場合に、変換対象のデータが監視対象であるかどうかを検査する検査部、変換対象のデータが監視対象であると検査部の検査により判明した場合に、そのデータに対するデータ変換を取りやめさせる制御部、を備えるデータ通信監視システムを提供する。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して、本発明の実施の形態（以下「実施形態」と呼ぶ）について説明する。
【００１６】
図１は、実施形態の通信監視システムの構成の例を示す機能ブロック図である。図１に示すシステムは、暗号化ツール１０、監視装置２０、及びファイアウォール３０を含む。
【００１７】
１つの例では、これら暗号化ツール１０、監視装置２０、及びファイアウォール３０は、同じ１台のコンピュータの中に設けられる。この場合、監視装置２０及びファイアウォール３０が守る「内部」は、当該コンピュータ自体であり、「外部」はそのコンピュータの外のネットワークということになる。ファイアウォール３０は、このコンピュータ上で実行されるプログラムとして構成され、そのコンピュータと外部との間での不正なデータの流れを遮断する。ファイアウォール３０は、また、監視装置２０は、そのコンピュータ上で実行されるソフトウエアとして構成され、そのコンピュータから外部に送出されようとするデータ（又はファイル）が監視対象であるかどうかを判定し、判定結果に応じた処理を実行する。
【００１８】
また、別の例として、暗号化ツール１０が実行されるコンピュータと、監視装置２０と、ファイアウォール３０とが、同じネットワークに接続された別のコンピュータ上に実装されるシステム構成も考えられる。この場合、監視装置２０及びファイアウォール３０が守る「内部」は、それら三者が接続されている内部ネットワークであり、それに対する「外部」はその内部ネットワークの外のネットワークということになる。
【００１９】
本実施形態では、暗号化ツール１０で暗号化されたデータが「内部」から「外部」にでようとする際の監視を実現する。
【００２０】
このシステムにおいて、監視装置２０は、判定ルール記憶部２２、監視処理部２４及びルール登録部２６を備える。判定ルール記憶部２２には、データが監視対象であるかどうかを判定するための判定ルールが１以上登録される。判定ルールは、例えば、「特定のキーワード＊＊＊を含んでいる」、「特定のキーワード＊＊＊を含んでおり、送信先がＸＸＸＸである」等といったデータの内容や属性に関するルールである。判定ルールには、監視対象に該当するデータが満足するようなルールもあれば、監視対象でないデータが満足するようなルールがあってもよい。
【００２１】
監視処理部２４は、他の装置或いはプログラム（例えばファイアウォール３０や暗号化ツール１０）からの、データ自体又はそのデータの特徴量の情報を受け取り、それを判定ルール記憶部２２に記憶された各判定ルールと照らし合わせ、そのデータが監視対象であるか否かを判定する。監視処理部２４は、その判定結果を問合せ元に回答する。問合せ元は、その判定結果に応じて処理を実行する。また、監視処理部２４は、データが監視対象であると判定した場合、電子メールや専用のアプリケーションを用いて管理者に警告を発してもよく、また監視対象のデータが検出された旨を示すログを例えばそのデータ自体と問合せ元（及び／又はデータの送信を依頼したユーザ）の情報と時刻などの情報と共にログ記録部（図示省略）に記録してもよい。
【００２２】
ルール登録部２６は、監視装置２０の管理者などの予め定められた特定のユーザからの要求に応じ、判定ルール記憶部２２に対して判定ルールを登録したり削除したり、すでに登録されている判定ルールを編集したりする機能を備える。
【００２３】
以上に説明したような判定ルール記憶部２２、監視処理部２４及びルール登録部２６の機能は、従来の監視装置２０が有している機能と同様のものである。すなわち、判定ルールの内容や、それに基づき監視処理部２４が行う判定やその判定結果に応じた後処理（回答や警告、ログ記録など）などは、基本的には従来通りの処理内容でかまわない。ただ、監視処理部２４が暗号化ツール１０から問合せを受けることができる点、及びルール登録部２６が暗号化ツール１０から判定ルールの登録要求を受け付けることができる点、暗号化データを監視対象として判定するための判定ルールが判定ルール記憶部２２に登録できる点は、従来にない機能である。
【００２４】
暗号化ツール１０は平文の元データ１００を暗号化するプログラムである。暗号化ツール１０において、暗号化のための処理を担うのが暗号化部１４である。暗号化ツール１０は、この暗号化部１４の他に、検査部１２と通知部１６を備える。
【００２５】
検査部１２は、暗号化ツール１０に入力された元データ１００を受け取り、その元データ１００が監視対象のデータであるかどうかを監視装置２０に問い合わせる。このとき検査部１２は、その元データ１００そのものを監視装置２０に渡してもよいし、元データ１００の特徴量を求め、その特徴量を監視装置２０に渡してもよい。また、元データ１００又はその特徴量の情報と共に、その元データ１００の属性情報（例えばファイル名や作成者、ファイルサイズ、作成日時など）及び／又は検査部１２の識別情報を監視装置２０に渡してもよい。また、検査部１２の識別情報に代えて、又はそれに加えて、暗号化ツール１０の識別情報又はそのツール１０がインストールされたコンピュータの識別情報（例えばＭＡＣアドレスなど）、或いはその元データ１００の暗号化を指示したユーザの識別情報を監視装置２０に伝えてもよい。これらの情報は、監視装置２０において、元データ１００が監視対象であるか否かを判定するのに用いられる。また、これらの情報は、監視対象のデータを発見したことを示すログデータに記録してもよい。
【００２６】
そして、検査部１２は、元データ１００が監視対象であるか否かの判定結果を監視装置２０から受け取る。元データ１００が監視対象でなければ、検査部１２は特別な処理は行わない。この場合、元データ１００は暗号化部１４で暗号化され、暗号化データ１１０のファイルとして出力される。一方、元データ１００が監視対象と判定された場合、検査部１２は、その旨を通知部１６に知らせる。
【００２７】
通知部１６は、元データ１００が監視対象である場合、暗号化部１４から元データ１００の暗号化結果（すなわち暗号化データ１１０）を受け取り、その暗号化データ１１０を監視対象として判定するための新たな判定ルールを登録するよう、ルール登録部２６に要求する。ルール登録部２６は、この要求に応じて、判定ルール記憶部２２に暗号化データ１１０を監視対象と判定する判定ルールを追加する。
【００２８】
通知部１６からの要求に応じて新たに追加される判定ルールは、例えば、判定対象のデータが、暗号化データ１１０の所定の特徴量を持っている場合にそのデータを監視対象と判定するルールでよい。特徴量としては、例えばハッシュ値を用いることができる。この場合、監視処理部２４は、ファイアウォール３０から送られてきた判定対象のデータから、その所定の特徴量を求め、その特徴量が該当する判定ルールが判定ルール記憶部２２にあれば、その判定対象のデータが監視対象であると判定する。また、暗号化データ１１０そのものを組み込んだ判定ルールを追加するようにしてもよい。この場合、判定対象のデータがその暗号化データ１１０と一致する場合に、その判定ルールが満足され、監視処理部２４がそのデータを監視対象と判定することになる。また、暗号化データ１１０のファイル属性（ファイル名又は作成者又は作成日時又はデータサイズなど、或いはそれらのうちの２以上の組合せ）を組み込んだ判定ルールを追加してもよい。この場合、判定対象のデータの属性がその判定ルールに示された属性と一致する場合に、その判定ルールが満足され、監視処理部２４がそのデータを監視対象と判定することになる。
【００２９】
暗号化データ１１０を監視対象として判定するための判定ルールの例をいくつか示したが、これらはあくまで一例に過ぎない。また、以上に例示した判定ルールのうちの複数を判定ルール記憶部２２に追加するようにしてもよい。
【００３０】
このような判定ルールは、通知部１６が作成してルール登録部２６に送ってもよいし、また通知部１６は暗号化データ１１０自体又はそのデータ１１０の所定の特徴量又は属性データなど（又はそれらのうちの２以上）をルール登録部２６に送り、ルール登録部２６がそれらの情報から判定ルールを作成してもよい。
【００３１】
以上のように、図１の実施形態によれば、元データ１００が暗号化ツール１０で暗号化される際に、元データ１００が監視対象であるか否かを暗号化ツール１０の検査部１２が監視装置２０に問い合わせる。元データ１００は平文なので、監視装置２０はそれが監視対象であるか否かを判定できる。そして、元データ１００が監視対象であれば、通知部１６が、その元データ１００を暗号化して得られた暗号化データ１１０を監視対象とする判定ルールが監視装置２０に追加される。これにより、例えば元データ１００が監視対象であるような暗号化データ１１０がファイアウォール３０を介して内部から外部へ出ようとしている場合、ファイアウォール３０がその暗号化データ１１０を監視装置２０に送って判定を求めると、監視装置２０は追加された判定ルールにより、その暗号化データ１１０が監視対象であると判定することができる。この判定結果を受け取ったファイアウォール３０は、例えば、その暗号化データ１１０の外部への送出を取りやめることができる。もちろん、監視対象のデータの外部への送出を取りやめるかどうかは、セキュリティポリシーに依存するものである。例えば監視対象のデータの送出は認め、その送出の事実をログに記録したり、管理者に通知したりするというようなポリシーもあり、このようなポリシーの場合、ファイアウォール３０はそのデータを外部へ送出し、管理者に通知を行うなどの処置をとる。
【００３２】
以上に説明したように、図１の実施形態によれば、監視対象のデータが暗号化され、そのデータ内容が変化しても、監視装置２０はその暗号化データを監視対象として認識することができる。
【００３３】
以上では、監視装置２０が、データが監視対象であるか否かを判定するものであるとして説明したが、同じ監視対象とはいっても、データの流出を阻止すべきものや、阻止まではしなくてもよいが流出したことを記録しておくべきものなど、その重要性（言い換えれば流出によるリスク）において複数のレベルを設定する場合もある。そのような場合、監視装置２０の判定ルール記憶部２２には、レベルごとの判定ルールが登録され、監視処理部２４は対象となるデータが該当した判定ルールのレベルに応じた処理（例えばファイアウォール３０にそのデータの送出を阻止させる、又は送出は認めるが送出の事実をログに記録する）を実行する。このように監視対象にレベル分けがある場合、監視処理部２４は、検査部１２からの問合せに応じ、データが監視対象である場合はそのレベルの情報も返す。検査部１２は、監視対象のレベルの情報を受け取った場合、その情報を通知部１６に渡す。通知部１６は、そのレベルの情報を暗号化データ１１０と共にルール登録部２６に送る。これに応じ、ルール登録部２６は、その暗号化データ１１０をそのレベルの監視対象として判定する判定ルールを作成し、判定ルール記憶部２２に登録する。また、この代わりに、通知部１６が、レベルに応じた判定ルールを作成し、それをルール登録部２６に送ってもよい。
【００３４】
次に、図１の実施形態の変形例を、図２を参照して説明する。図１の例では、検査部１２と通知部１６とが暗号化部１４とともに暗号化ツール１０として１まとまりにパッケージングされていた。それに対し図２には、検査部５２及び通知部５６を、暗号化プログラム５４とは別のプログラムとして実装した場合の例を示した。
【００３５】
暗号化プログラム５４は、図１の暗号化部１４と同様、暗号化処理を行うものである。このほか、監視装置２０及びファイアウォール３０は、図１に示した対応のものと同様のものでよい。
【００３６】
ユーザが、暗号化プログラム５４を起動してあるファイル（元データ１００）の暗号化を指示すると、起動された暗号化プログラム５４のプロセスは、ＯＳ（オペレーティングシステム）４０に対してそのファイルの読み出しを依頼する。この依頼に応じ、ファイル読出ライブラリ４２が起動され、ファイルシステム４６からそのファイルを読み出す。
【００３７】
この変形例では、暗号化プログラム５４のプロセスがファイル読出ライブラリ４２を用いて元データ１００を読み出そうとすると、ＯＳ４０がそれを検知して検査部５２を呼び出す。検査部５２のプログラムは、そのように、特定のプログラム（この場合は暗号化プログラム５４）がファイルを読み出そうとする際に呼び出されるようプログラムされており、検査部５２が起動されるとそのような呼び出しを行うために必要な情報がＯＳ４０に登録される。
【００３８】
呼び出された検査部５２は、そのライブラリ４２が読み出したファイルをフックし、そのファイルが監視対象であるかどうかを監視装置２０の監視処理部２４に問い合わせる。そして、その問合せに対する監視処理部２４から判定結果を受け取り、その判定結果を、その元データ１００を暗号化しようとするプロセスと対応づけて（例えばプロセスＩＤと対応づけるなどして）監視情報記憶部５５に記憶する。
【００３９】
また、検査部５２は、元データ１００のファイルを暗号化プログラム５４に渡す。暗号化プログラム５４は、その元データ１００を暗号化する。
【００４０】
通知部５６は、暗号化プログラム５４のプロセスが暗号化結果のファイル（暗号化データ１１０）の出力を完了するとＯＳ４０から呼び出される。通知部５６のプログラムは、特定のプログラムのファイル出力の完了をトリガとしてＯＳ４０から呼び出されるようにプログラムされている。呼び出された通知部５６は、その暗号化プログラム５４のプロセスに対応した判定結果を監視情報記憶部５５から求め、その判定結果が「監視対象である」旨を示していれば、暗号化データ１１０のファイルを監視対象とする新たな判定ルールの登録をルール登録部２６に依頼する。判定結果が「監視対象ではない」というものであれば、通知部５６は特に何も処理を行わない。ファイル書込ライブラリ４４は、暗号化プログラム５４が出力した暗号化データ１１０をファイルシステム４６にファイルとして書き込む。
【００４１】
以上に説明したように、検査部５２及び通知部５６は、ＯＳ４０から呼び出される以外は、基本的な機能は図１の構成の検査部１２及び通知部１６と同様でよい。
【００４２】
このように、図２の変形例のように、検査部５２や通知部５６と暗号化プログラム５４とを別のプログラムとしても、図１の実施形態と同様の機能を実現することができる。
【００４３】
以上では、検査部５２は、監視情報記憶部５５に対し、監視処理部２４の判定結果を暗号化プログラム５４のプロセスに対応づけて記憶させたが、監視情報記憶部５５に記憶させるデータはこれに限られるわけではない。暗号化プログラム５４のファイル出力に対して通知部５６が取るべき処理を規定するような情報であれば、どのような情報を記憶させてもよい。
【００４４】
このように、図２の変形例でも、監視対象の元データ１００が暗号化されたとしても、その暗号化結果のデータ１１０が監視対象として監視装置２０に登録されるので、暗号化データ１１０がファイアウォール３０を介して外部に出ようとした際に、それを監視装置２０が検知することができる。
【００４５】
図１の構成では検査部１２及び通知部１６は暗号化ツール１０に組み込まれていたのに対し、図２の構成では、検査部５２や監視情報記憶部５５、通知部５６は、暗号化プログラム５４とも監視装置２０とも独立したプログラムとして構成された。このように、検査部５２や通知部５６などの各機能モジュールをどのように実装するかには自由度がある。例えば、単一のコンピュータからのデータの流出を監視するシステムの場合（すなわち監視装置２０やファイアウォール３０が暗号化プログラム５４やＯＳ４０と同じコンピュータ上にある場合）、検査部５２や監視情報記憶部５５、通知部５６は監視装置２０に組み込んでもかまわない。検査部５２や監視情報記憶部５５、通知部５６は、暗号化プログラム５４やＯＳ４０がインストールされたコンピュータにあればよい。
【００４６】
次に、図３を参照して、更なる変形例を説明する。図１及び図２の変形例では、元データ１００が監視対象と判定された場合、通知部１６が、その暗号化結果である暗号化データ１１０を監視対象とする判定ルールを監視装置２０に登録した。これに対し、図３の変形例では、通知部１６の代わりに情報付加部１８を備える。情報付加部１８は、元データ１００が監視対象と判定された場合に、元データ１００の暗号化結果に対し、その判定結果の情報を付加する。例えば、監視対象であると判定された場合にのみその旨を示す情報を暗号化結果に付加してもよいし、それとは逆に、監視対象でないと判定された場合にのみその旨の情報を暗号化結果に付加してもよい。また、監視対象の場合もそうでない場合も、判定結果の情報を暗号化結果に付加するようにしてもよい。また、このように判定結果の情報を付加する代わりに、監視装置２０がその暗号化結果のデータをどのように取り扱うべきかを示す情報を付加してもよい。例えば、外部へのデータ送出を禁止するなどといった処置を示すコードを付加するなどである。また、監視処理部２４の判定結果が、監視対象のレベルの情報を含む場合は、情報付加部１８は、そのレベルの情報を暗号化結果に付加する。また、暗号化を指示したユーザの識別情報、又は暗号化処理を行った時刻（日時）、又は暗号化を行ったコンピュータの識別情報などの各種属性情報（或いはそれらのうちの２以上の組合せ）を、追跡情報としてその暗号化結果に付加してもよい。
【００４７】
一例として、情報付加部１８は、暗号化結果に対する情報の付加を、例えば、その情報を電子透かし又はステガノグラフィ等の手法で暗号化結果に埋め込むことで行うことができる。また、付加する情報を暗号化結果と共に所定のデータ形式のファイルへとまとめてもよい。これは暗号化データと付加情報とをいわばカプセル化する方式である。また、暗号化データと付加情報とまとめたデータに対して情報付加部１８が電子署名を付加してもよい。電子署名は、例えば、そのデータのハッシュ値を情報付加部１８の秘密鍵で暗号化したものをそのデータに付加するなどの方法で行えばよい。いずれの方式でも、監視処理部２４がそのフォーマットを把握していれば、付加情報を抽出できる。
【００４８】
このようにして判定結果の情報が付加された付加情報付暗号化データ１２０が、暗号化ツール１０から処理結果として出力される。
【００４９】
判定ルール記憶部２２には、判定対象のデータから抽出された付加情報に基づき、そのデータが監視対象か否かや、監視対象のレベルを決めるための判定ルールが登録される。
【００５０】
監視処理部２４は、ファイアウォール３０からデータを受け取った場合、そのデータから付加情報を抽出し、判定ルール記憶部２２から、その付加情報に該当する判定ルールを探し、その判定ルールに従って判定を行う。
【００５１】
そのデータが電子署名付きの付加情報を含んでいる場合は、監視処理部２４はその電子署名を検証し、その検証が成功（正しい署名と判明すること）した場合は、その付加情報に応じてそのデータが監視対象であるか否かを判定する。また、電子署名の検証が失敗（不正な署名と判明すること）した場合は、そのデータに対して改ざん等の不正がなされている可能性があるので、付加情報の内容によらず、そのデータを最もレベルの高い監視対象と判定するようにしてもよい。この例では、電子署名が正しくない場合に、当該データを最高レベルの監視対象としたが、これは一例であり、電子署名が正しくない場合に当該データをどのように取り扱うかはシステムのセキュリティポリシーによる。いずれにしても、監視処理部２４は、外部に流出仕様とするデータ又はその中に含まれる付加情報に対して付されていた電子署名の検証結果を、そのデータが監視対象であるか否かの判定の根拠として用いることができるし、また監視対象としての重要性のレベルの判定の根拠として用いることができる。
【００５２】
図３の変形例において、以上に説明した事項以外は、図１の実施形態と同様でよい。
【００５３】
このように、元データ１００に対する判定結果やこれに応じた取扱を指示する情報を暗号化結果に付加し、監視処理部２４がその付加された情報に応じて判定を行うようにする方式でも、上記実施形態と同様、暗号化されたデータの流出を監視できる。
【００５４】
次に、図４を参照して、図３の構成の変形例を説明する。図４の構成は、検査部５２及び情報付加部５８を、暗号化プログラム５４とは別のプログラムとして構成した場合の例である。
【００５５】
検査部５２は、図２の構成の検査部５２と同様、暗号化プログラム５４のプロセスがファイル読出ライブラリ４２を用いて元データ１００を読み出そうとしたときに、ＯＳ４０から呼び出される。そして、検査部５２は、ライブラリ４２が読み出したファイルを監視処理部２４に渡して判定を行わせる。以降の処理は、図２の検査部５２と同様でよい。
【００５６】
情報付加部５８は、図２の構成の通知部５６と同様、暗号化プログラム５４のプロセスが暗号化結果のファイルの出力を完了するとＯＳ４０から呼び出され、そのファイルに対して図３の情報付加部１８と同様の情報の付加を行う。これにより、ファイルシステム４６には、付加情報付の暗号化データ１２０が格納されることになる。
【００５７】
その他、検査部５２及び情報付加部５８の基本的な機能は、図３の検査部１２及び情報付加部１８と同様でよい。
【００５８】
次に図５を参照して、更なる変形例を説明する。図５において、図１に示した構成要素と同一又は類似の構成要素には、同一符号を付す。
【００５９】
図５の変形例では、検査部１２は、入力された元データ１００を監視処理部２４に渡し、その元データ２４が監視対象か否かを判定させる。そして、監視対象であると判定された場合、検査部１２は、暗号化部１４に対し、その元データ１００の暗号化を取りやめさせる。その一方、元データ１００が監視対象でなければ、検査部１２は暗号化部１４に対しその元データ１００の暗号化を許可する。
【００６０】
このように、図５の変形例によれば、元データ１００が監視対象であれば、その元データ１００の暗号化自体が禁止されるので、元データ１００が暗号化されて外部に流出することを防止できる。
【００６１】
以上の図１〜図５の変形例では、元データ１００に対して暗号化を施す場合を説明した。しかし、本発明の方式は、暗号化以外のデータ変換を元データ１００に施す場合にも適用できる。図６には、暗号化以外のデータ変換の例として、元データ１００を仮想プリンタドライバにより画像ファイルに変換する場合の例を示している。仮想プリンタドライバは、例えばアドビ・システムズ社のAcrobat（登録商標）や富士ゼロックス株式会社のDocuWorks（登録商標）に代表されるように、ワードプロセッサなどのアプリケーションのファイルを処理してそのファイルの印刷イメージを表す画像データを生成する。このように生成された画像データからは、元のファイルに含まれる文字列の情報などがなくなっている場合があり、元のファイルを監視対象として監視装置２０に登録していても、それから生成した画像データファイルを監視対象として認識できない場合がある。図６の変形例は、そのようなケースに対応するためのものである。
【００６２】
なお、図５の変形例の場合も、検査部５２を暗号化ツール１０と別のプログラムとして構成することができる。
【００６３】
図６の構成では、仮想プリンタドライバアプリケーション１１は、検査部１２と画像ファイル生成部１５と透かし埋込部１９とを備える。ワードプロセッサ等のアプリケーションは、この仮想プリンタドライバアプリケーション１１に対し、元データ１００を示す一連の印刷コマンドの列（例えばＧＤＩ（Graphic Device Interface）などで表現される）を入力する。これを受け取った検査部１２は、そのコマンド列のデータを監視処理部２４に渡して、それが監視対象であるかどうかを判定させる。また、この代わりに、検査部１２が、それら印刷コマンドから、例えば印刷する文字部分のみを取り出して連結して文字列を生成するなどして検査対象データを生成し、これを監視処理部２４に送信して監視対象であるかを判定させてもよい。
【００６４】
また、画像ファイル生成部１５は、入力された印刷コマンド列を画像ファイルに変換する。
【００６５】
検査部１２は、監視処理部２４から受け取った判定結果の情報（又はその判定結果に応じて決まる、監視処理部２４の処理内容を示す情報）を、透かし埋込部１９に渡す。透かし埋込部１９は、受け取った情報を、画像ファイル生成部１５が生成した画像ファイルに対して電子透かしとして埋め込む。なお、判定結果等の情報に加え、画像ファイルの生成を指示したユーザの名前、日時、コンピュータの名前等の情報を電子透かしとして埋め込んでもよい。
【００６６】
監視処理部２４は、ファイアウォール３０から判定対象のデータを受け取った場合、そのデータから電子透かしとして埋め込まれた情報を抽出し、その情報に基づき、そのデータが監視対象であるか否か、及び／又はそのレベルなどを判定し、その判定結果に応じてファイアウォール３０にそのデータの流出を阻止するか否かを指示する。また、監視処理部２４は、電子透かしから抽出したユーザ名や日時、コンピュータ名などをログに記録してもよい。
【００６７】
以上、元データ１００を暗号化する場合や画像データに変換する場合を例に取ったが、これ以外にも、例えばデータ圧縮する場合など、元データ１００の内容が変更されるデータ変換には様々なものがあり、そのようなデータ変換一般に対して本発明の方式は適用可能である。
【００６８】
以上の実施形態及び各変形例では、検査部１２又は５２は、ファイアウォール３０と連携して流出しようとするデータを監視する監視装置２０に対して、元データ１００の判定を依頼していた。しかしこれに限らず、検査部１２又は５２自体が監視装置２０と同様の判定ルールに従って判定を行ってもよい。
【００６９】
また、以上の例では、「内部」から「外部」へのデータの流出をファイアウォール３０が制御したが、ファイアウォール３０に限らず、フォワードプロキシなど、そのような制御の機能を持つ他のソフトウエア又はハードウエアをファイアウォール３０の代わりに用いてもよい。
【００７０】
以上に説明したシステムは、典型的には、汎用のコンピュータにて以上に説明した各要素の機能又は処理内容を記述したプログラムを実行することにより実現される。コンピュータは、ハードウエアとして、図７に示すように、ＣＰＵ（中央演算装置）６０、メモリ（一次記憶）６２、各種Ｉ／Ｏ（入出力）インタフェース６４等がバス６６を介して接続された回路構成を有する。また、そのバス６６に対し、例えばＩ／Ｏインタフェース６４経由で、ハードディスクドライブ６８やＣＤやＤＶＤ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ７０が接続される。このようなドライブ６８又は７０は、メモリに対する外部記憶装置として機能する。上記各例のシステムの処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、又はネットワーク経由で、ハードディスクドライブ６８等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されＣＰＵにより実行されることにより、上記各例の処理が実現される。暗号化ツール１０と監視装置２０とが別のコンピュータ上に実装される場合も、それぞれ各々の機能を記述したプログラムをそれら各コンピュータで実行させればよい。
【００７１】
以上説明したように、実施形態又は変形例によれば、元データを変換する際に、元データを検査することにより、重要データの利用を監視し、あるいは不適当な利用を抑止できる。さらには、データの変換において変換後のデータ（それ自身、あるいはその特徴量）を監視対象として登録するか、或いはその変換後のデータに監視対象か否かの判定結果の情報を付加することで、データの変換による利便性を享受しつつデータの監視が実現可能である。
【図面の簡単な説明】
【００７２】
【図１】実施形態の通信監視システムの構成の例を示す機能ブロック図である。
【図２】図１の構成の変形例のシステム構成を示す機能ブロック図である。
【図３】更なる変形例のシステム構成を示す機能ブロック図である。
【図４】図３の構成の変形例のシステム構成を示す機能ブロック図である。
【図５】更なる変形例のシステム構成を示す機能ブロック図である。
【図６】更なる変形例のシステム構成を示す機能ブロック図である。
【図７】汎用コンピュータのハードウエア構成の一例を示す図である。
【符号の説明】
【００７３】
１０  暗号化ツール、１２  検査部、１４  暗号化部、１６  通知部、２０  監視装置、２２  判定ルール記憶部、２４  監視処理部、２６  ルール登録部、３０  ファイアウォール、１００  元データ、１１０  暗号化データ。
【図１】
0004802732.tif 000002
【図２】
0004802732.tif 000003
【図３】
0004802732.tif 000004
【図４】
0004802732.tif 000005
【図５】
0004802732.tif 000006
【図６】
0004802732.tif 000007
【図７】
0004802732.tif 000008