(57)【要約】【課題】携帯端末において、アプリケーションが管理するパーミッションが、誤って他のアプリケーションに対してアクセス許可に設定されているとしても不正アプリケーションによる情報漏洩を防止する。【解決手段】暗号処理部１２１は、アプリケーション１１０に固有の固有情報１１１と、全てのアプリケーションについて共通の鍵情報１２６とを組み合わせてアプリケーション１１０の暗号鍵を生成する。そして、暗号処理部１２１は、生成されたアプリケーション１１０の暗号鍵を用いて、ＯＳを構成するレイヤ間、例えば、ＯＳファイルＡＰＩ１１２とファイルシステム１１３との間で受け渡されるアプリケーション１１０のデータに対して暗号化処理または復号処理を行う。【選択図】図２
2013074386.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーション毎に固有の固有情報と、全てのアプリケーションについて共通の鍵情報とを組み合わせてアプリケーション毎の暗号鍵を生成する暗号鍵生成手段と、
前記暗号鍵生成手段によって生成されたアプリケーション毎の暗号鍵を用いて、複数のレイヤで構成されるオペレーティングシステムにおいて当該レイヤ間で受け渡される各アプリケーションに関するデータに対して暗号化処理または復号処理を行う暗号処理手段と、
を備えることを特徴とする携帯端末用情報漏洩防止システム。
【請求項２】
前記レイヤ間は、オペレーティングシステムファイルＡＰＩとファイルシステムの間であることを特徴とする請求項１に記載の携帯端末用情報漏洩防止システム。
【請求項３】
前記レイヤ間は、ファイルシステムとデバイスドライバの間であることを特徴とする請求項１に記載の携帯端末用情報漏洩防止システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションが使用するアプリケーションデータの漏洩を防止する携帯端末用情報漏洩防止システムに関する。
【背景技術】
【０００２】
スマートフォン等の携帯端末は、高機能化に伴い、端末内に大量の重要な情報を保持するようになっている。
一方、携帯端末を標的としたウイルスが相次いで発見されている。ウイルスの中には、正規のアプリケーションによって作成されたアプリケーションデータを取得し、外部に送信する不正アプリケーションをインストールするものがある。そのため、不正アプリケーションによる情報漏洩を防止するシステムが強く求められている。
【０００３】
携帯端末内のアプリケーションデータの漏洩を防止する最もシンプルな技術としては、アプリケーション毎に暗号処理を実装し、また暗号鍵もアプリケーション側で管理することである。しかし、鍵の管理をアプリケーション開発者に委ねてしまうことは、情報漏洩に対するセキュリティの管理をアプリケーション開発者に委ねることを意味する。また、アプリケーション開発の容易さという点でも利便性に欠ける。
【０００４】
一方、携帯端末の紛失や盗難による情報漏洩を防止する技術としては、携帯端末内のデータを常時暗号化することにより情報漏洩を防止するもの（例えば、特許文献１参照）や、携帯端末紛失時等の緊急時に携帯端末内のデータを暗号化したり、データをサーバへ転送した後に削除したりすることによって情報漏洩を防止するもの（例えば、特許文献２参照）がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２５３７８３号公報
【特許文献２】特開２０１０−１４６４７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
アプリケーション毎に暗号処理を実装し、暗号鍵をアプリケーション側で管理した場合、アプリケーション開発者が誤って他のアプリケーションからも参照可能なパーミッションを設定してしまうと、参照可能なパーミッションの設定されているデータが上述した不正アプリケーションによって取得されてしまう。パーミッションの設定ミスによって情報漏えいした事例が実際に発生しており、対策が急務な状況となっている。
【０００７】
また、特許文献１の技術の場合、携帯端末で保持されている暗号化されたデータを復号する前にユーザ認証を行い、正規のユーザでないと判断した場合には携帯端末に保持されている復号用の鍵を消去するが、正規のユーザが携帯端末を利用しており認証されている限りは不正アプリケーションも復号用の鍵を用いて正しく復号できるため、不正アプリケーションよってデータが取得されてしまう。このため、不正アプリケーションによる情報漏洩を防止することはできない。
特許文献２の技術の場合、通常は暗号化していない為性能面での優位性はあるものの、不正アプリケーションによってデータが取得されてしまう点は特許文献１の技術と同様である。
【０００８】
本発明は、上述した課題を解決するためのものであり、アプリケーションが管理するパーミッションが、誤って他のアプリケーションに対してアクセス許可に設定されているとしても不正アプリケーションによる情報漏洩を防止することができる携帯端末用情報漏洩防止システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の携帯端末用情報漏洩防止システムは、
アプリケーション毎に固有の固有情報と、全てのアプリケーションについて共通の鍵情報とを組み合わせてアプリケーション毎の暗号鍵を生成する暗号鍵生成手段と、
前記暗号鍵生成手段によって生成されたアプリケーション毎の暗号鍵を用いて、複数のレイヤで構成されるオペレーティングシステムにおいて当該レイヤ間で受け渡される各アプリケーションに関するデータに対して暗号化処理または復号処理を行う暗号処理手段と、
を備えることを特徴とする。
【００１０】
好ましくは、
前記レイヤ間は、オペレーティングシステムファイルＡＰＩとファイルシステムの間であることを特徴とする。
【００１１】
また、好ましくは、
前記レイヤ間は、ファイルシステムとデバイスドライバの間であることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、アプリケーションが管理するパーミッションが、誤って他のアプリケーションに対してアクセス許可に設定されているとしても不正アプリケーションによる情報漏洩を防止することができる。
【図面の簡単な説明】
【００１３】
【図１】携帯端末のハードウェア構成の一例を示す図である。
【図２】本発明の第１の実施形態に係る携帯端末用情報漏洩防止システムの構成の一例を示す図である。
【図３】端末起動時における処理の一例のフローチャートを示す図である。
【図４】ファイル書き込みにおける処理の一例のフローチャートを示す図である。
【図５】ファイル読み込みにおける処理の一例のフローチャートを示す図である。
【図６】アプリケーション毎に生成される暗号鍵の違いを示す図である。
【図７】データ書き込み時のデータフローの一例を示す図である。
【図８】データを書き込んだアプリケーションがデータを読み込む際のデータフローの一例を示す図である。
【図９】データを書き込んだアプリケーション以外のアプリケーションがデータを読み込む際のデータフローの一例を示す図である。
【図１０】本発明の第２の実施形態に係る携帯端末用情報漏洩防止システムの構成の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態に係る携帯端末用情報漏洩防止システムについて図面を参照しながら説明する。
なお、明細書と図面全体に渡って同一の構成要素には同一の符号を付す。
【００１５】
図１は、携帯端末１０のハードウェア構成の一例を示す。
携帯端末１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、メモリ１２と、ブロックデバイス１３と、無線送受信部１４と、入力部１５と、表示部１６とを有している。携帯端末１０は、例えば、携帯電話機、スマートフォン、タブレットコンピュータ等である。
ブロックデバイス１３は、所定の大きさのブロック単位（例えば、５１２〜２０４８バイト）でランダムにデータを読み書きできるデバイスである。ブロックデバイス１３は、例えばハードディスク装置やフラッシュメモリで構成される。ブロックデバイス１３は、ＯＳ（オペレーティングシステム）と、アプリケーションプログラムと、アプリケーションデータが格納されたファイルと、携帯端末用情報漏洩防止プログラムとを記憶している。
メモリ１２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される。ＣＰＵ１１はブロックデバイス１３からＯＳとアプリケーションプログラムと携帯端末用情報漏洩防止プログラムをメモリ１２に読み出し、メモリ１２に記憶されているＯＳとアプリケーションプログラムと携帯端末用情報漏洩防止プログラムを実行する。以下で説明する本発明の第１の実施形態と第２の実施形態に係る携帯端末用情報漏洩防止システムの機能は、ＣＰＵ１１が携帯端末用情報漏洩防止プログラムを実行することによって実現される。
無線送受信部１４は、携帯端末の基地局や無線ＬＡＮのアクセスポイント等と無線で通信し、音声やデータを送受信する。
入力部１５は、キーボードやタッチパネル等で構成される。
表示部１６は、ディスプレイ等で構成される。
【００１６】
図２は、本発明の第１の実施形態に係る携帯端末用情報漏洩防止システム１２０の構成の一例を示す。
ＣＰＵ１１がアプリケーションプログラムを実行することにより、アプリケーション１１０の機能が実現される。固有情報１１１は、個々のアプリケーション１１０に固有の情報である。固有情報１１１は、個々のアプリケーションを識別できる情報であればよく、例えば、パッケージ名やアプリケーションプログラムの実行コードに含まれるバイナリデータ等である。固有情報１１１は、アプリケーション１１０のインストール時に決定されるものであり、アプリケーション１１０が任意に変更することはできない。
ＯＳは、ＯＳファイルＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）１１２と、ファイルシステム１１３と、デバイスドライバ１１４という３層のレイヤで構成される。ＣＰＵ１１は、必要に応じてブロックデバイス１３からメモリ１２にＯＳファイルＡＰＩ１１２とファイルシステム１１３とデバイスドライバ１１４とを読み出して実行する。
ファイルシステム１１３は、ディレクトリによる階層構造を有する。
【００１７】
携帯端末用情報漏洩防止システム１２０は、暗号処理部１２１と、暗号処理対象制御部１２２と、暗号情報管理部１２３とから構成される。ＣＰＵ１１が、ブロックデバイス１３からメモリ１２に携帯端末用情報漏洩防止プログラムを読み出して実行することにより、携帯端末用情報漏洩防止システム１２０の機能が実現される。すなわち、暗号処理部１２１と暗号処理対象制御部１２２と暗号情報管理部１２３との各機能が実現される。
暗号情報管理部１２３は、暗号処理に必要な情報として暗号情報１２５を有する。暗号情報１２５は、鍵情報１２６と、暗号方式情報１２７と、暗号処理対象情報１２８から構成される。
暗号情報１２５は、後述するように固有情報１１１と組み合わせて暗号化のための暗号鍵を生成するための情報である。
暗号方式情報１２７は、ＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）やＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）等の暗号化と復号に用いられる暗号方式を指定する情報である。
暗号処理対象情報１２８は、暗号化の対象をディレクトリ単位で指定する情報である。暗号化の対象として上位階層のディレクトリが指定されている場合には、そのディレクトリの下層のディレクトリも暗号化の対象となる。また、例えば、暗号化の対象としてブロックデバイス１３全体を意味するディレクトリパスが指定されている場合には、ブロックデバイス１３に記憶される全てのディレクトリが暗号化の対象となる。
【００１８】
まず、携帯端末用情報漏洩防止システム１２０の処理の概略を説明する。
暗号情報管理部１２２は、携帯端末１０の起動時に、鍵情報１２６と暗号方式情報１２７を暗号処理部１２１に設定し、暗号処理対象情報１２８を暗号処理対象制御部１２２に設定する。
アプリケーション１１０は、ＯＳファイルＡＰＩ１１２をコールし、ブロックデバイス１３に記憶されているファイル１３１の書き込み、読み込みを要求する。
暗号処理部１２１は、ＯＳファイルＡＰＩ１１２とファイルシステム１１３というレイヤ間で受け渡されるアプリケーション１１０のデータに対して暗号化処理または復号処理を行う。
暗号処理対象制御部１２２は、暗号情報管理部１２３によって設定された暗号処理対象情報１２８によって指定されるディレクトリへのアクセス要求である場合、暗号処理部１２１に暗号化または復号することを指示する。暗号処理部１２１は暗号鍵を生成してデータを処理する。一方、暗号処理対象情報１２８によって指定されるディレクトリ以外へのアクセス要求である場合、暗号処理対象制御部１２２は、暗号処理部１２１にデータを処理させず、直接ファイルシステム１１３とＯＳファイルＡＰＩ１１２の間でデータが受け渡される。
【００１９】
暗号情報管理部１２３は、携帯端末１０の起動時等に、暗号情報１２５がブロックデバイス１３に保存されていない場合には、鍵情報１２６を生成し、生成された鍵情報１２６と、入力部１５から利用者によって入力された暗号方式情報１２７と、所定の暗号処理対象情報１２８とを含む暗号情報１２５を暗号化してブロックデバイス１３に保存する。このとき、暗号情報１２５を携帯端末１０のブロックデバイス１３ではなく、外部サーバ等の他の装置に保存しても良い。なお、暗号情報管理部１２３は、例えば、乱数やユーザによって予め指定されたパスワード情報等に基づいて鍵情報１２６を生成する。また、暗号処理対象情報１２８は、アプリケーション１１０がアクセス可能なディレクトリを全て含むように予め定められる。
暗号情報管理部１２３は、携帯端末１０の起動時に、暗号情報１２５がブロックデバイス１３に保存されている場合には、ブロックデバイス１３から暗号情報１２５を取得し復号する。
【００２０】
アプリケーション１１０がファイル書き込みを要求した場合、暗号処理部１２１はＯＳファイルＡＰＩ１１２から渡された書き込みデータを暗号化する。このとき、暗号情報管理部１２３から指定された鍵情報１２６と固有情報１１１を元に生成した暗号鍵を利用し、暗号方式情報１２２で指定される暗号方式で暗号化する。
暗号処理部１２１で暗号化された書き込みデータはファイルシステム１１３へ渡される。ファイルシステム１１３はデバイスドライバ１１４へそのままデータを渡し、デバイスドライバ１１４によって、ブロックデバイス１３へファイル１３１として保存される。
【００２１】
アプリケーション１１０がファイル読み込みを要求した場合、ブロックデバイス１３からファイル１３１の暗号化されたデータがデバイスドライバ１１４、ファイルシステム１１３を通じて、暗号処理部１２１に渡される。
暗号処理部１２１は、ファイルシステム１１３から渡されたデータを復号する。この際、暗号情報管理部１２３から指定された鍵情報１２１と固有情報１１１を元に生成した暗号鍵を利用し、暗号方式情報１２２で指定される暗号方式で復号する。
このような構成によりアプリケーション１１０からは暗号化、復号を意識せずにデータの書き込み、読み込みを行うことができる。
【００２２】
次に、より具体的な処理内容について説明する。
図３は、端末起動時における処理の一例のフローチャートを示す。
まず、暗号情報管理部１２３は、ブロックデバイス１３から暗号情報１２５を取得することを試みる（Ｓ１０１）。ブロックデバイス１３に暗号情報１２５が保存されており暗号情報１２５が取得できた場合（Ｓ１０１：Ｙｅｓ）、暗号情報管理部１２３は取得した暗号情報１２５を復号する（Ｓ１０５）。
ブロックデバイス１３に暗号情報１２５が保存されておらず暗号情報１２５が取得できなかった場合（Ｓ１０１：Ｎｏ）、暗号情報管理部１２３は、鍵情報１２６を生成する。そして、暗号情報管理部１２３は、暗号方式情報１２７を入力するように求めるメッセージを表示部１６に表示する。暗号情報管理部１２３は、入力部１５から利用者によって入力された暗号方式情報１２７を受け付けると、生成した鍵情報１２６と入力された暗号方式情報１２７と所定の暗号処理対象情報１２８とを含む暗号情報１２５を生成する（Ｓ１０２）。
【００２３】
更に、暗号情報管理部１２３は暗号情報１２５を暗号化して（Ｓ１０３）、ブロックデバイス１３に保存する（Ｓ１０４）。
暗号情報管理部１２３は、暗号処理対象情報１２８を暗号処理対象制御部１２２へ設定し、鍵情報１２６と暗号方式情報１２７を暗号処理部１２１へ設定する（Ｓ１０６）。暗号処理部１２１はメモリ１２内のカーネルメモリ上に鍵情報１２６と暗号方式情報１２７を保持する。
【００２４】
図４は、ファイル書き込みにおける処理の一例のフローチャートを示す。
アプリケーション１１０がファイル書き込みを要求した時（Ｓ２０１）、暗号処理対象制御部１２２は、その書き込み要求が暗号処理対象情報１２８によって指定される暗号処理対象のディレクトリへのアクセス要求ではなかった場合（Ｓ２０２：Ｎｏ）、書き込みデータをそのままファイルシステム１１３へ流す（Ｓ２０８）。
暗号処理対象制御部１２２は、書き込み要求が暗号処理対象１２８によって指定される暗号処理対象のディレクトリへのアクセス要求であった場合（Ｓ２０２：Ｙｅｓ）、書き込みデータを暗号処理部１２１へ流す（Ｓ２０３）。暗号処理部１２１は、ファイル書き込みを要求してきたアプリケーション１１０の固有情報１１１を取得し（Ｓ２０４）、後述するようにカーネルメモリ上に保存していた鍵情報１２６と結合する（Ｓ２０５）。
暗号処理部１２１は、ステップＳ２０５で生成したデータに対して所定の演算を施して、実際に暗号処理を行う為の暗号鍵を生成する（Ｓ２０６）。そして、ステップＳ２０６で生成した暗号鍵を利用して暗号方式情報１２７により指定される暗号方式で書き込みデータを暗号化し（Ｓ２０７）、データをファイルシステム１１３へ流す（Ｓ２０８）。
【００２５】
図５は、ファイル読み込みにおける処理の一例のフローチャートを示す。
アプリケーション１１０がファイル読み込みを要求した時（Ｓ３０１）、暗号処理対象制御部１２２は、その読み込み要求が暗号処理対象情報１２８によって指定される暗号処理対象のディレクトリへのアクセス要求ではなかった場合（Ｓ３０２：Ｎｏ）、読み込んだファイルのデータをそのままアプリケーション１１０へ流す（Ｓ３０８）。
暗号処理対象制御部１２２は、読み込み要求が暗号処理対象情報１２８によって指定される暗号処理対象のディレクトリへのアクセス要求であった場合（Ｓ３０２：Ｙｅｓ）、読み込んだファイルのデータを暗号処理部１２１へ流す（Ｓ３０３）。暗号処理部１２１は、ファイル読み込みを要求してきたアプリケーション１１０の固有情報１１１を取得し（Ｓ３０４）、カーネルメモリ上に保存していた鍵情報１２６と結合する（Ｓ３０５）。
暗号処理部１２１は、ステップＳ３０５で生成したデータに対して所定の演算を施して、実際に暗号処理を行う為の暗号鍵を生成する（Ｓ３０６）。そして、Ｓ３０６で生成した暗号鍵を利用して暗号方式情報１２７により指定される暗号方式で読み込んだファイルのデータを復号し（Ｓ３０７）、データをアプリケーション１１０へ流す（Ｓ３０８）。
【００２６】
図６は、アプリケーション１１０毎に生成される暗号鍵の違いを示す。
データを暗号化するための暗号鍵は、鍵情報１２６とアプリケーション１１０毎の固有情報１１１とを結合したデータに対して所定の演算を施して生成される。アクセス要求元のアプリケーション１１０が異なる場合、固有情報１１１が変わってくるため、生成される暗号鍵は異なるものとなる。
図６（Ａ）に示すように、暗号鍵ＡはアプリケーションＡの固有情報１１１Ａと鍵情報１２６とを元に生成され、図６（Ｂ）に示すように、暗号鍵ＢはアプリケーションＢの固有情報１１１Ｂと鍵情報１２６とを元に生成される。アプリケーションＡの固有情報１１１ＡとアプリケーションＢの固有情報１１１Ｂは必ず異なる値であるため、生成された暗号鍵Ａと暗号鍵Ｂは必ず異なる値となる。
【００２７】
図７は、データ書き込み時のデータフローの一例を示す。
アプリケーションＡ１１０ＡからＯＳファイルＡＰＩ１１２へ渡されるデータは、平文データである。同様にＯＳファイルＡＰＩ１１２から暗号処理部１２１へ渡されるデータも、平文データである。
暗号処理部１２１は、アプリケーションＡの固有情報１１１Ａと鍵情報１２６を元に作成した暗号鍵Ａを利用して暗号化する。そのため、暗号処理部１２１からファイルシステム１１３へ渡されるデータは暗号化されたデータである。
ファイルシステム１１３からデバイスドライバ１１４へ渡されるデータも暗号化されたデータである。同様に、デバイスドライバ１１４からブロックデバイス１３へ渡されるデータも暗号化されたデータである。
以上のデータの流れにより、アプリケーション１１０によって書き込み要求されたデータは、暗号化されてブロックデバイス１３へと保存される。
【００２８】
図８は、データを書き込んだアプリケーションＡ１１０Ａがデータを読み込む際のデータフローの一例を示す。
ブロックデバイス１３からデバイスドライバ１１４へ渡されるデータは暗号化されたデータである。同様に、デバイスドライバ１１４からファイルシステム１１３に渡されるデータも暗号化されたデータである。また、ファイルシステム１１３から暗号処理部１２１へ渡されるデータも同様に暗号化されたデータである。
暗号処理部１２１は、アプリケーションＡ１１０Ａの固有情報１１１Ａと鍵情報１２６を元に作成した暗号鍵を利用して復号する。暗号処理部の作成した暗号鍵とファイルシステム１１３から暗号処理部１２１へ渡されたデータの暗号鍵とは一致するため、正しく復号される。そのため、暗号処理部１２１からＯＳファイルＡＰＩ１１２へ渡されるデータは平文データとなる。
ＯＳファイルＡＰＩ１１２からアプリケーションＡ１１０Ａへ渡されるデータは平文データである。
以上のデータの流れにより、データを書き込んだアプリケーションＡ１１０Ａ自身がデータを読み込む場合は、暗号化してブロックデバイス１３に保存していたデータを正しく復号して読み込むことができる。
【００２９】
図９は、データを書き込んだアプリケーションＡ１１０Ａ以外のアプリケーションＢ１１０Ｂがデータを読み込む際のデータフローの一例を示す。
ブロックデバイス１３からデバイスドライバ１１４へ渡されるデータは暗号化されたデータである。同様に、デバイスドライバ１１４からファイルシステム１１３に渡されるデータも暗号化されたデータである。また、ファイルシステム１１３から暗号処理部１２１へ渡されるデータも同様に暗号化されたデータである。
暗号処理部１２１は、アプリケーションＢ１１０Ｂの固有情報１１１Ｂと鍵情報１２６を元に作成した暗号鍵を利用して復号を試みる。しかし、ファイルシステム１１３から暗号処理部１２１へ渡されたデータは、アプリケーションＡの固有情報１１１Ａと鍵情報１２６を元に作成された暗号鍵を利用して暗号化されたものである。このため、正しく復号されず、意味を成さないデータとなる。従って、暗号処理部１２１からＯＳファイルＡＰＩ１１２へ渡されるデータは復号に失敗したデータとなる。
ＯＳファイルＡＰＩ１１２からアプリケーションＢ１１０Ｂへ渡されるデータも同様に復号に失敗したデータとなる。
以上のデータの流れにより、データを書き込んだアプリケーション以外がデータを読み込む場合は、暗号化してブロックデバイスに保存していたデータを復号することができない、すなわちデータを読み込むことができない。
【００３０】
図１０は、本発明の第２の実施形態に係る携帯端末用情報漏洩防止システム２２０の構成の一例を示す。
携帯端末用情報漏洩防止システム２２０は、暗号処理部２２１と、暗号処理対象制御部２２２と、暗号情報管理部２２３とから構成される。ＣＰＵ１１が、ブロックデバイス１３からメモリ１２に携帯端末用情報漏洩防止プログラムを読み出して実行することにより、携帯端末用情報漏洩防止システム２２０の機能が実現される。すなわち、暗号処理部２２１と暗号処理対象制御部２２２と暗号情報管理部２２３との各機能が実現される。
暗号情報管理部２２３は、暗号処理に必要な情報として暗号情報２２５を有する。暗号情報２２５は、鍵情報２２６と、暗号方式情報２２７と、暗号処理対象情報２２８から構成される。
暗号情報２２５は、固有情報１１１と組み合わせて暗号化のための暗号鍵を生成するための情報である。
【００３１】
第２の実施形態に係る携帯端末用情報漏洩防止システム２２０は、暗号処理部２２１が、ＯＳファイルＡＰＩ１１２とファイルシステム１１３というレイヤ間で受け渡されるアプリケーション１１０のデータに対して暗号化処理または復号処理を行うのではなく、ファイルシステム１１３とデバイスドライバ１１４というレイヤ間で受け渡されるアプリケーション１１０のデータに対して暗号化処理または復号処理を行う点が第１の実施形態に係る携帯端末用情報漏洩防止システム１２０と異なる。このため、暗号処理対象情報２２８によって指定される暗号処理対象はディレクトリ単位ではなく、論理デバイス単位となる。この点を除き、携帯端末用情報漏洩防止システム２２０と携帯端末用情報漏洩防止システム１２０の機能は同一である。
【００３２】
なお、上述した実施形態では、ＯＳは、ＯＳファイルＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）１１２と、ファイルシステム１１３と、デバイスドライバ１１４という３層のレイヤで構成されるとしたが、３層に限らず、ＯＳは２層または４層以上のレイヤで構成されていてもよい。
【００３３】
なお、上述した実施形態では、ブロックデバイス１３に暗号情報１２５が保存されておらず暗号情報１２５を取得できなかった場合には、暗号情報管理部１２３は、暗号方式情報１２７を入力するように求めるメッセージを表示部１６に表示し、入力部１５から利用者によって入力された暗号方式情報１２７を受け付けるとしたが、暗号情報管理部１２３は、メッセージを表示することなく、予め定められた暗号方式情報１２７を用いて暗号情報１２５を生成することとしてもよい。
【００３４】
また、上述した実施形態では、ブロックデバイス１３が、ＯＳと、アプリケーションプログラムと、アプリケーションデータが格納されたファイルと、携帯端末用情報漏洩防止プログラムとを記憶しているとしたが、例えばスタック可能なファイルシステムを通じてアプリケーションプログラムと、アプリケーションデータが格納されたファイルと、携帯端末用情報漏洩防止プログラムとを暗号化し、暗号化されたアプリケーションプログラムと、アプリケーションデータが格納されたファイルと、携帯端末用情報漏洩防止プログラムとをブロックデバイス１３に記憶させてもよい。すなわち、２重に暗号化してもよい。
【００３５】
以上説明したように、本発明によれば、アプリケーション毎に暗号化を行う暗号鍵が必ず異なったものとなり、また、暗号鍵の生成および暗号化処理をアプリケーションではなくＯＳを構成するレイヤ間で受け渡されるアプリケーションデータについて行うため、アプリケーションは他のアプリケーションが暗号化して保存したデータを復号することが不可能となる。
従って、アプリケーションが管理するパーミッションが、誤って他のアプリケーションに対してアクセス許可に設定されているとしても不正アプリケーションによる情報漏洩を防止することができる。
【符号の説明】
【００３６】
１０…携帯端末、１１…ＣＰＵ、１２…メモリ、１３…ブロックデバイス、１４…無線送受信部、１５…入力部、１６…表示部、１１０…アプリケーション、１１０Ａ…アプリケーションＡ、１１０Ｂ…アプリケーションＢ、１１１…アプリケーションの固有情報、１１１Ａ…アプリケーションＡの固有情報、１１１Ｂ…アプリケーションＢの固有情報、１１２…ＯＳファイルＡＰＩ、１１３…ファイルシステム、１１４…デバイスドライバ、１２０、２２０…携帯端末用情報漏洩防止システム、１２１、２２１…暗号処理部、１２２、２２２…暗号処理対象制御部、１２３、２２３…暗号情報管理部、１２５、２２５…暗号情報、１２６、２２６…鍵情報、１２７、２２７…暗号方式情報、１２８、２２８…暗号処理対象情報、１３１…ファイル
【図１】
2013074386.tif 000003
【図２】
2013074386.tif 000004
【図３】
2013074386.tif 000005
【図４】
2013074386.tif 000006
【図５】
2013074386.tif 000007
【図６】
2013074386.tif 000008
【図７】
2013074386.tif 000009
【図８】
2013074386.tif 000010
【図９】
2013074386.tif 000011
【図１０】
2013074386.tif 000012