JP2014085855A - ファイル自動暗号化システムおよびプログラム - Google Patents

ファイル自動暗号化システムおよびプログラム Download PDF

Info

Publication number
JP2014085855A
JP2014085855A JP2012234532A JP2012234532A JP2014085855A JP 2014085855 A JP2014085855 A JP 2014085855A JP 2012234532 A JP2012234532 A JP 2012234532A JP 2012234532 A JP2012234532 A JP 2012234532A JP 2014085855 A JP2014085855 A JP 2014085855A
Authority
JP
Japan
Prior art keywords
file
application
automatic
encryption
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP2012234532A
Other languages
English (en)
Inventor
Tadashi Kaji
忠司 鍛
Hisashi Umeki
久志 梅木
Nobutaka Kawaguchi
信隆 川口
Masaru Kai
賢 甲斐
Tetsuo Kito
哲郎 鬼頭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2012234532A priority Critical patent/JP2014085855A/ja
Publication of JP2014085855A publication Critical patent/JP2014085855A/ja
Ceased legal-status Critical Current

Links

Images

Abstract

【課題】 アプリケーションが暗号化処理・復号処理機能を持たない場合でも、当該アプリケーションを改変せずに、暗号化ファイルを操作する。
【解決手段】 ファイル自動暗号化システムは、ファイル共有プロトコルによるファイル共有サーバを実現し、アプリケーションからのファイルのオープン要求を受け付けるネットワークファイル共有サーバ手段、ネットワークファイル共有サーバ手段が受け付けたオープン要求に対応するファイルをファイルサーバから取得するファイル取得手段、アプリケーションを識別する識別情報をOSに問い合わせ、識別情報で特定されるアプリケーションが、ファイルへのアクセスが事前に許可されたアプリケーションであるかどうかを確認するアプリケーション識別手段、およびアプリケーション識別手段により、アプリケーションが、ファイルへのアクセスが事前に許可されたアプリケーションであると確認されたとき、ファイル取得手段が取得したファイルを復号するファイル暗復号手段を有する。
【選択図】 図1

Description

本発明は、ファイルを事前に許可を受けていないアプリケーションのアクセスから保護するための技術に関するものである。
標的型攻撃と呼ばれる、攻撃対象を特定の組織や機関に限定した新しいタイプのサイバー攻撃による情報漏えいが大きな問題となっている。標的型攻撃は、電子メールに添付された悪意のあるプログラム(マルウェア、と呼ばれる)を従業員が実行したりすることにより、攻撃対象の内部に侵入させる。その後、侵入したマルウェアが外部の指令サーバなどと連携して組織の内部に拡散し、従来のサイバー攻撃では到達することができなかった攻撃対象の内部に存在する機密情報を外部の攻撃者が窃取するというものである。
標的型攻撃への対策としては、従来のように組織の内部にマルウェアを侵入させないための対策(入口対策、と呼ばれる)に加え、たとえマルウェアが侵入したとしても機密情報を漏洩させないための対策(出口対策、と呼ばれる)を強化することが重要である。
このような機密情報を漏洩させないための対策としては、機密情報を暗号化し、権利のある人のみが復号用の鍵を取得して閲覧するという対応方法がある。これは、アプリケーションにファイルを暗号化処理・復号処理する機能を組み込むことで可能となる。例えば、アプリケーションがファイルを読み込む際に、アプリケーションに組み込まれた復号化処理によってデータを復号し、アプリケーションによる処理を行う。アプリケーションがファイルを書き込む際には、アプリケーションに組み込まれた暗号化処理によってデータを暗号化し、ファイルに出力するというようなものである。
一方、アプリケーションによっては、暗号化処理・復号処理を持たないものが存在する。この場合は、特許文献1に開示されているように、アプリケーションを改変せずに、暗号化ファイルの操作を、ファイル単位で行う技術がある。
特許文献1では、監視層が、アプリケーションからのAPI呼び出しをフックし、復号命令を復号制御モジュールに送る。復号制御モジュールは、復号命令に基づき、OSカーネルに復号処理を依頼する。OSカーネルは、復号制御モジュールからの依頼に基づき、ファイルを復号処理し、復号済みファイルを復号制御モジュールに返す。復号制御モジュールは、OSカーネルから返された復号済みファイルをアプリケーションに返す。
以上により、アプリケーションを改変せずに、暗号化ファイルの操作を、ファイル単位で行う。
特開2009−59008号公報
アプリケーションにファイルを暗号化処理・復号処理する機能を持たせたい場合、アプリケーション自身が暗号化処理・復号処理機能を持たないと、ファイルが保護できないという課題がある。
また、特許文献1に開示されている技術では、ファイルにアクセスしようとしているアプリケーションには透過的にOSで復号処理が行われるため、マルウェアがアクセスしたとしても復号処理されたデータが取得できるという課題がある。
さらに、特許文献1に開示されている技術では、API呼び出しをフックしたり、OSカーネルが復号処理を行ったりする必要があるため、カーネル空間で動作するモジュールが必要であり、当該モジュールが原因でOSがクラッシュする可能性があるという課題がある。
開示するファイル自動暗号化プログラムは、ネットワークファイル共有サーバモジュールがアプリケーションプログラムからのファイルオープン要求を受信すると、アプリケーション識別モジュールがファイルオープン要求で指定されたファイルをオープンしているアプリケーションの識別情報をOSに問い合わせ、アプリケーションの識別情報に基づいて、当該アプリケーションが事前に許可されたアプリケーションであると判定した場合にはファイル暗復号モジュールが上記ファイルを復号する。
また、復号したファイルはRAMディスクモジュールに保持して、当該事前に許可されたアプリケーションが復号されたデータを処理できるようにする。以降、当該事前に許可されたアプリケーションからのファイルアクセスはRAMディスクモジュール上のファイルに対して処理を行い、ネットワークファイル共有サーバモジュールがファイルクローズ要求を受信した場合に再度暗号化を行って記憶装置に保存する。
開示するファイル自動暗号化システム及びプログラムは、ファイルの暗号化処理・復号処理を、アプリケーションやOSと異なるファイル自動暗号化プログラムが行うため、アプリケーションが暗号化処理・復号処理機能を持たない場合でも、当該アプリケーションを改変せずに、暗号化ファイルを操作できる。
ファイル自動暗号化プログラムを適用した情報処理システムの一例である。 情報処理装置、ファイルサーバ、情報管理サーバ、または鍵管理サーバが動作するコンピュータの構成の一例である。 ファイルをオープンする場合の処理の一例を示す図である。 ファイルをクローズする場合の処理の一例を示す図である。 ファイルの読込み・書き込みの場合の処理の一例を示す図である。 ファイル名変換規則テーブル、ローカル ファイル名変換規則テーブル、ホワイトリスト管理テーブル、および鍵管理テーブルの一例を示す図である。 ファイルオープン処理の場合の、ファイル自動暗号化プログラムの動作フローを示す図である。
以下、本発明の一実施形態を、図面を参照して説明する。
まず、ファイル自動暗号化プログラムを適用した情報処理システムを、図1を用いて説明する。
図1の情報処理システムは、文書作成や表計算、Webブラウジングなどの情報処理を行う少なくとも一つのアプリケーションが動作する情報処理装置1と、情報処理装置1が情報処理を行うためのファイルを保存するファイルサーバ5と、ファイルへのアクセスを許可するアプリケーションの識別情報を管理する情報管理サーバ6と、情報処理装置1がファイルを暗号化処理・復号処理するために使用する鍵を管理する鍵管理サーバ7とが、ネットワーク0を介して接続されている。ファイルサーバ5、情報管理サーバ6、および鍵管理サーバ7の各々は、信頼できる第三者により運営される情報処理サイトにあってもよい。
情報処理装置1では、文書作成や表計算、Webブラウジングなどの情報処理を行う少なくとも一つのアプリケーション20と、アプリケーション20からの要求にしたがってファイルサーバ5からファイルを取得し、自動的に暗号化処理・復号処理を行うファイル自動暗号化プログラム10と、オペレーティングシステム30(以下、「OS30」と記載する)と、通信モジュール40と、が動作している。
なお、ファイル自動暗号化プログラム10は、WebDAV、SMB、NFS等のファイル共有プロトコルによるファイル共有サーバを実現するネットワークファイル共有サーバモジュール11と、ファイルサーバからファイルを取得するためのファイル取得モジュール13と、ファイル取得モジュール13が取得したファイルを暗号化処理・復号処理を行うためのファイル暗復号モジュール12と、ファイル取得モジュール13が取得したファイルへのアクセスを要求しているアプリケーションを識別し、アクセスが事前に許可されたアプリケーションであるかどうかを確認するためのアプリケーション識別モジュール15と、ファイル暗復号モジュール12が復号したファイルをメモリ空間に保存しておくRAMディスクモジュール14と、を含んでいる。ここで、ファイル自動暗号化プログラム10は、ネットワークファイル共有サーバモジュール11によって、OS30やアプリケーション20からはネットワークファイル共有サーバとして認識される。このため、アプリケーション20は、通信モジュール40を介してファイル共有プロトコルを用いてファイル自動暗号化プログラム10と通信することで、ファイル自動暗号化プログラム10がファイルサーバ5から取得したファイルに対して、通常のファイルアクセス処理(ファイルオープン、ファイルクローズ、書き込み、読み込み、など)を行うことができるようになる。なお、通信モジュール40を介してファイル共有プロトコルを用いてファイル自動暗号化プログラム10と通信する機能はOS30が備えていてもよい。
また、OS30は、絶対パス形式のファイル名を入力として受け取ると、当該絶対パス形式のファイル名に対応するファイルをオープンしているアプリケーションの識別情報を出力するファイルアクセスアプリケーション特定機能31と、アプリケーションの識別情報(ID)を入力として受け取ると、当該識別情報に対応するアプリケーションに関する情報を出力するアプリケーション情報提供機能32とを備えている。ここで、アプリケーション情報提供機能32が提供するアプリケーションに関する情報には、当該アプリケーションの実行ファイルの絶対パス形式のファイル名が含まれる。
さらに、ファイルサーバ5は、情報処理装置1から受信したファイルを保存するファイル保存モジュール51と、情報処理装置1にファイル取得モジュール13を提供するファイル取得モジュール提供モジュール52と、情報処理装置1からのアクセス要求が、ファイル取得モジュール提供モジュール52が当該情報処理装置1に提供したファイル取得モジュール13からのアクセスであるのかを認証するファイル提供先認証モジュール53と、を含んでいる。
情報処理装置1、ファイルサーバ5、情報管理サーバ6、または鍵管理サーバ7は、例えば図2に示すような構成のコンピュータによって実現される。
図2のコンピュータは、CPU101と、メモリ102と、インターネットやLAN等のネットワーク0を介して他のコンピュータと通信を行うための通信装置103と、キーボードやマウス等の入力装置104と、モニタやプリンタ等の出力装置105と、読取装置106と、ハードディスク等の外部記憶装置107とを備え、これらの各構成要素はインタフェース100を介して互いに接続されている。また、読取装置106にはICカードやUSBメモリのような、可搬性を有する記憶媒体108を接続することができる。
図2のコンピュータは、情報処理装置1、ファイルサーバ5、情報管理サーバ6、および鍵管理サーバ7の中のいずれか1つの装置として機能する。図2のコンピュータは、当該いずれか1つの装置の機能を実現するプログラムをメモリ102にロードし、当該プログラムをCPU101により実行することで、対応する装置の機能を実現する。これらのプログラムは、予め外部記憶装置107に格納されていてもよく、必要なときに、読取装置106または通信装置103により当該コンピュータが利用可能な媒体を介して、他の装置から取得されて外部記憶装置107に格納されてもよい。
媒体とは、例えば、読取装置106に着脱可能な記憶媒体108、または、通信装置103に接続されているネットワーク0またはネットワーク0を伝搬する搬送波やディジタル信号を指す。そして、これらのプログラムは、一旦外部記憶装置107に格納された後、そこからメモリ102上にロードされてCPU101に実行されてもよく、あるいは外部記憶装置107に格納されることなく、直接メモリ102上にロードされて、CPU101により実行されてもよい。
次に、図1の情報処理システムの動作について図面を用いて説明する。
図3は、ファイルをオープンする場合の処理の一例を示す図である。具体的には、図1の情報処理システムにおいて、情報処理装置1で動作するアプリケーション20がファイル自動暗号化プログラム10に対してファイルオープンを要求した場合の図1の情報処理システムの各構成要素間でのメッセージ交換動作を示した図である。
情報処理装置1で動作するアプリケーション20がファイル自動暗号化プログラム10のネットワークファイル共有サーバモジュール11に対してファイルオープン要求M1001を送信する、ファイル自動暗号化プログラム10は、まず、ファイルサーバ5からファイル取得モジュール13の取得を要求するためファイル取得モジュール提供要求M1002をファイルサーバ5に送信する。ファイルサーバ5のファイル取得モジュール提供モジュール52は、ファイル取得モジュール13と、ファイル取得モジュール13からのアクセスであることを確認するための認証情報を引数としてファイル取得モジュール取得応答M1003を作成し、応答する。
次に、ファイル自動暗号化プログラム10のファイル取得モジュール13がアプリケーション20からオープンを要求されたファイルのファイルサーバ5におけるURI形式のファイル名を図6の(a)に示したファイル名変換規則テーブル16を参照して求め、ファイルサーバ5に対してURI形式のファイル名を引数としてファイル提供要求M1004を送信する。
なお、ファイル名変換規則テーブル16では、ファイル自動暗号化プログラム10で管理しているURI形式のファイル名をLocalというカラムに記載し、ファイルサーバ5で管理しているURI形式のファイル名をGlobalというカラムに記載している。例えば、ファイル自動暗号化プログラム10で管理している「https://localhost/files/home/text1.doc」というファイルは、ファイルサーバ5で管理している「https://webdav.example.com/files/home/user/text1.doc」というファイルに該当することを示している。
ファイル自動暗号化プログラム10からファイル取得要求を受信したファイルサーバ5は、ファイル保存モジュール51が引数に指定されているURI形式のファイルを検索し、当該ファイルをM1005としてファイル自動暗号化プログラム10に応答する。
ファイルサーバ5からファイルをM1005として受信したファイル自動暗号化プログラム10は、アプリケーション20に対してファイルオープン応答M1006を応答する。
次に、ファイル自動暗号化プログラム10のアプリケーション識別モジュール15が、ファイルオープンを要求してきたアプリケーション20を識別する識別情報をOS30に要求する。具体的には、ファイル自動暗号化プログラム10は、アプリケーション識別モジュール15がM1005として受信したファイルのファイル自動暗号化プログラム10が管理しているURI形式のファイル名から絶対パス形式のファイル名(図6(b)のFile Name)を図6の(b)に示したローカルファイル名変換規則テーブル17を参照して求め、OS30に対して当該絶対パス形式のファイル名で指定されるファイルをオープンしているアプリケーション20のIDを特定するため、ファイルアクセスアプリケーション特定要求M1007を要求する。
OS30は、ファイルアクセスアプリケーション特定機能31がファイルアクセスアプリケーション特定要求M1007を処理し、指定されたファイルをオープンしているアプリケーション20のIDをアプリケーションIDM1008として応答する。
次に、アプリケーション識別モジュール15は、OS30からアプリケーションIDを受信すると、当該アプリケーションIDを引数として、当該アプリケーションIDで識別されるアプリケーション20の情報をアプリケーション情報取得要求M1009としてOS30に要求する。
OS30は、アプリケーション情報提供機能32がM1009の要求を処理し、指定されたアプリケーション20に関する情報をアプリケーション情報M1010として応答する。アプリケーション情報M1010がアプリケーション20を識別する識別情報である。
次に、アプリケーション識別モジュール15は、M1010で取得したアプリケーション20に関する情報から当該アプリケーション20の実行ファイル名を取得し、当該実行ファイルがアクセス許可を得ているかどうかをアクセス可否判定要求M1011として情報管理サーバ6に問い合わせる。
情報管理サーバ6は、ホワイトリスト管理モジュール61がM1011の要求に含まれている、ファイル名、ハッシュ値、ファイルサイズ、バージョン番号、の情報に合致するエントリが、ホワイトリスト管理モジュール61が管理しているホワイトリスト管理テーブル62(図6の(c)にホワイトリスト管理テーブル62の例を示す。)に存在するかどうかを確認し、エントリが存在している場合は「アクセス許可」を、存在していない場合には「アクセス不可」をアクセス可否判定応答M1012として応答する。ホワイトリスト管理テーブル62には、事前に許可を受けているプログラムに関する実行ファイル名等が格納されている。
アプリケーション識別モジュール15が「アクセス許可」の応答を受信すると、ファイル暗復号モジュール12がファイルサーバ5で管理しているURI形式のファイル名を引数として、ファイル取得モジュール13が取得したファイルを復号するための鍵を要求するため、鍵取得要求M1013を鍵管理サーバ7に送信する。
鍵管理サーバ7は、鍵管理モジュール71が鍵取得要求M1013に含まれるURI形式のファイル名に該当するエントリが鍵管理テーブル72(図6の(d)に一例を示す。)に存在するかどうかを確認し、エントリが存在する場合には鍵の値と暗号化アルゴリズムを鍵取得応答M1014として応答する。
ファイル暗復号モジュール12は、鍵管理サーバ7から受信した鍵とアルゴリズムを利用してファイル取得モジュール13が取得したファイルを復号し、RAMディスクモジュール14に復号したファイルを保持する。
以上が、アプリケーション20がファイル自動暗号化プログラム10に対してファイルオープンを要求した場合の図1の情報処理システムの各構成要素間でのメッセージ交換動作である。
図7を用いて、図3におけるファイル自動暗号化プログラム10の動作をより詳細に説明する。
まず、ファイル自動暗号化プログラム10は、ネットワークファイル共有サーバモジュール11が通信モジュール40を介してアプリケーション20からファイルオープン要求M1001を受信すると、通信モジュール40を介してファイルサーバ5に対してファイル取得モジュール提供要求M1002を送信する(S1001)。ファイル自動暗号化プログラム10は、ファイルサーバ5からファイル取得モジュール13をファイル取得モジュール提供応答M1003として受信する(S1002でYes)と、ファイルサーバ5から取得したファイル取得モジュール13を起動する(S1003)。
ファイル取得モジュール13は、ファイル名変換規則テーブル16を参照して、ファイルオープン要求M1001でオープンを要求されているファイルの、ファイルサーバ5におけるURI形式(Global)のファイル名を取得する(S1004)。
次に、ファイル取得モジュール13は、S1004で取得したURI形式のファイル名を引数として、ファイルサーバ5に対してファイル提供要求M1004を送信する(S1005)。このとき、ファイル取得モジュール提供応答M1003に含まれるファイル取得モジュール13は、ファイルサーバ5のファイル提供先認証モジュール53から認証を受け、S1003で取得したファイル取得モジュール13であることを証明する認証情報を引数としてファイル提供要求M1004を送信する。
ファイル提供先認証モジュール53が認証に成功し、かつ、ファイル提供要求M1004で要求したファイルが存在する場合、ファイル取得モジュール13は、ファイルサーバ5からファイルを正しく受信することができる(S1006でYes)ため、ネットワークファイル共有サーバモジュール11が通信モジュール40を介してアプリケーション20にファイルオープンに成功した旨のファイルオープン応答M1006を応答する(S1007)。
次に、アプリケーション識別モジュール15が、ローカルファイル名変換規則テーブル17を参照し、ファイルオープン要求M1001でオープンを要求されたファイルの、情報処理装置1における絶対パス形式のファイル名を取得する(S1008)と、OS30にファイルアクセスアプリケーション特定要求M1007を送信する(S1009)。
アプリケーション識別モジュール15が、OS30からM1007で指定したファイルをオープンしているアプリケーション20のIDを取得できた場合(S1010でYes)、当該アプリケーションIDを引数として、OS30にアプリケーション情報要求M1009を送信する(S1011)。
アプリケーション識別モジュール15が、OS30からM1009で指定したアプリケーションIDのアプリケーション20に関する情報を取得できた場合(S1012でYes)、当該アプリケーション情報から当該アプリケーション20の実行ファイル名やバージョンを取得(S1013)し、当該実行ファイル名で指定されるファイルのハッシュ値を計算し、ファイルサイズを取得する(S1014)。
次に、アプリケーション識別モジュール15はS1013およびS1014で取得して求めた、実行ファイル名、バージョン、ハッシュ値、ファイルサイズを引数として、情報管理サーバ6にアクセス可否判定要求M1011を送信する(S1015)。
情報管理サーバ6から、M1011に対する応答を受信し、かつその応答が「アクセス許可」である場合(S1016でYes)には、ファイル暗復号モジュール12が、ファイルサーバ5におけるURI形式のファイル名を引数として、鍵管理サーバ7に鍵取得要求M1013を送信する(S1017)。
鍵管理サーバ7からM1014として鍵と暗号アルゴリズムの取得に成功した場合(S1018でYes)、ファイル暗復号モジュール12は、ファイル取得モジュール13が保持している、S1006で受信したファイルを取得し、取得した鍵と暗号アルゴリズムを用いて、当該ファイルを復号する(S1019)と、復号したファイルをRAMディスクモジュール14に保存する(S1020)。
なお、S1002、S1006でファイルサーバ5からファイル取得モジュール13やファイルが正しく受信できなかった場合には、S1101に遷移し、アプリケーション20にファイルオープンに失敗したことを応答し、処理を終了する。
また、S1010でアプリケーションIDの取得に失敗した場合、S1012でアプリケーション情報の取得に失敗した場合、S1016でアクセス許可が得られなかった場合、S1018で鍵の取得に失敗した場合には、S1201に遷移し、ファイル取得モジュール13が保持しているファイルを削除し、処理を終了する。
ところで、図1の情報処理システムにおいてマルウェアが正規のアプリケーション20に成りすましてファイル自動暗号化プログラム10にファイルオープンを要求した場合の動作について説明する。
マルウェアがファイル自動暗号化プログラム10にファイルオープンを要求すると、ファイル自動暗号化プログラム10は、図7に示したフローにしたがって処理を進めていく。すなわち、ファイル取得モジュール13を取得(S1002)し、ファイル取得モジュール13がファイルサーバ5からマルウェアがオープンを要求したファイルを取得する(S1006)。しかしながら、S1006で取得するファイルは暗号化されているため、情報処理装置1の外部記憶装置に記録されたとしてもマルウェアが内容を読み取ることはできない。
次に、S1007でネットワークファイル共有サーバモジュール11がマルウェアに対してファイルオープンを応答M1006するが、この段階でも、マルウェアはファイルの内容を知ることはできない。
その後、アプリケーション識別モジュール15がS1008からS1015までの処理を実施すると、ファイルへのアクセスを要求しているのが事前に許可を受けていないプログラムであることが判明し、S1016で「アクセス不可」が応答される。このため、S1201でファイル取得モジュール13が保持しているファイルは削除される。
以上のように、情報処理システム1ではマルウェアがファイルオープンを試みた場合、ファイルを読み込むことはできない。
図4は、ファイルをクローズする場合の処理の一例を示す図である。図4を用いて、図1の情報処理システム1において、情報処理装置1で動作するアプリケーション20がファイル自動暗号化プログラム10に対してファイルクローズを要求した場合の図1の情報処理システムの各構成要素間でのメッセージ交換動作を説明する。
アプリケーション20がファイル自動暗号化プログラム10に対してファイルクローズを要求するため、ファイルクローズ要求M2001を送信すると、ファイル自動暗号化プログラム10のネットワークファイル共有サーバモジュール11がファイルクローズ要求M2001を受信し、ファイル暗復号モジュール12にファイルのクローズを指示する。
ファイル暗復号モジュール12は、RAMディスクモジュール14が保持している、ファイルクローズ要求M2001で指定されたファイルを取得し、取得したファイルを暗号化して暗号化ファイルを作成する。次に、ファイル暗復号モジュール12は、暗号化した暗号化ファイルをファイル取得モジュール13に渡し、当該暗号化ファイルを保存するように指示する。
ファイル取得モジュール13は、当該暗号化ファイルを含む、ファイル保存要求M2002をファイルサーバ5に送信し、当該暗号化ファイルの保存を要求する。
ファイル保存要求M2002を受信したファイルサーバ5は、ファイル保存モジュール51がファイル保存要求M2002に含まれる暗号化ファイルを取得し、保存すると、ファイル保存に成功したことをファイル保存応答M2003として応答する。
ファイル保存応答M2003を受信したファイル取得モジュール13は、ファイル保存に成功したことをファイル暗復号モジュール12に応答する。ファイル暗復号モジュール12は、次に、ファイルクローズ要求M2001で指定されたファイルの暗号化に使用した鍵とアルゴリズム情報、暗号化した暗号化ファイルのファイルサーバ5におけるURI形式のファイル名を引数として、鍵管理サーバ7に対して鍵登録要求M2004を送信して、鍵の登録を要求する。
鍵登録要求M2004を受信した鍵管理サーバ7は、鍵管理モジュール71が鍵登録要求M2004から、鍵とアルゴリズム情報、URI形式のファイル名を取得し、鍵管理テーブル72を更新する。次に、鍵管理モジュール71は、鍵の登録に成功したことを鍵登録応答M2005として応答する。
鍵登録応答M2005を受信したファイル暗復号モジュール12は、ファイルのクローズ処理が完了したことをネットワークファイル共有サーバモジュール11に応答するとともに、RAMディスクモジュール14に対して暗号化されていない前記ファイルを削除するように指示する。
ファイルクローズ処理が完了した旨の応答を受けたネットワークファイル共有サーバモジュール11は、アプリケーション20に対して、ファイルクローズ応答M2006を応答する。
以上が、アプリケーション20がファイル自動暗号化プログラム10に対してファイルクローズを要求した場合の図1の情報処理システムの各構成要素間でのメッセージ交換動作である。
図5は、ファイルの読込み・書き込みの場合の処理の一例を示す図である。アプリケーション20がファイル自動暗号化プログラム10に対してファイルの読み込みを要求した場合の図1の情報処理システム1の各構成要素間でのメッセージ交換動作について図5の(a)を参照して説明する。
アプリケーション20が、ファイル自動暗号化プログラム10に対してファイル読込み要求M3001を送信すると、ファイル自動暗号化プログラム10のネットワークファイル共有サーバモジュール11がM3001を受信する。
ネットワークファイル共有サーバモジュール11は、M3001を解析して、アプリケーション20が読込みを要求しているファイル名と当該ファイルの読込みたい場所、読み込むサイズに関する情報を取得し、ファイル暗復号モジュール12に読込みを指示する。
ファイル暗復号モジュール12は、ネットワークファイル共有サーバモジュール11の指示に従ってRAMディスクモジュール14が保持しているファイルを読込み、ネットワークファイル共有サーバモジュール11に応答する。
ネットワークファイル共有サーバモジュール11は、ファイル暗復号モジュール12が応答したデータを引数として、アプリケーション20に、ファイル読込み応答M3002を応答する。
以上が、アプリケーション20がファイル自動暗号化プログラム10に対してファイルの読み込みを要求した場合の図1の情報処理システム1の各構成要素間でのメッセージ交換動作である。
次に、アプリケーション20がファイル自動暗号化プログラム10に対してファイルの書き込みを要求した場合の図1の情報処理システムの各構成要素間でのメッセージ交換動作について図5の(b)を参照して説明する。
アプリケーション20が、ファイル自動暗号化プログラム10に対してファイル書込要求M4001を送信すると、ファイル自動暗号化プログラム10のネットワークファイル共有サーバモジュール11がM4001を受信する。
ネットワークファイル共有サーバモジュール11は、M4001を解析して、アプリケーション20が書き込み要求しているファイル名と当該ファイルの書き込み場所、書き込むサイズ、書き込むデータに関する情報を取得し、ファイル暗復号モジュール12に書き込みを指示する。
ファイル暗復号モジュール12は、ネットワークファイル共有サーバモジュール11の指示に従ってRAMディスクモジュール14が保持しているファイルのデータを更新し、更新結果(正常に終了したかどうか)をネットワークファイル共有サーバモジュール11に応答する。
ネットワークファイル共有サーバモジュール11は、ファイル暗復号モジュール12が応答した更新結果を引数として、アプリケーション20に、ファイル書込み応答M4002を応答する。
以上が、アプリケーション20がファイル自動暗号化プログラム10に対してファイルの書き込みを要求した場合の図1の情報処理システムの各構成要素間でのメッセージ交換動作である。
なお、図1の情報処理システム1では、暗号化されたファイルはファイルサーバ5で保存するようにしているが、情報処理装置1の外部記憶装置107に保存するようにしても良い。このようにすることで、ファイル名変換規則テーブル16が不要となり、プログラムが必要とするメモリ領域を節約することができる。また、S1004のURI形式ファイル名取得処理や、S1005のファイル取得要求処理が不要となり、ファイル処理にかかる時間を短縮することができる。
また、図1の情報処理システム1では、事前に許可されたアプリケーション20を管理するホワイトリスト管理モジュール61を情報管理サーバ6に持たせるようにしているが、ファイル自動暗号化プログラム10が保持するようにしても良い。このようにすることで、事前に許可されたアプリケーションかどうかを確認するための通信が不要となり、ファイル処理に必要となる時間を短縮することができる。
あるいは、ホワイトリスト管理テーブル62をファイル管理サーバ5で保存している暗号化ファイルに含めるようにしてもよい。このようにすることで、事前に許可されたアプリケーションかどうかを確認するための通信が不要となり、ファイル処理に必要となる時間を短縮することができる。
さらに、図1の情報処理システム1では、鍵を管理する鍵管理モジュール71を鍵管理サーバ7に持たせるようにしているが、ファイル自動暗号化プログラム10が保持するようにしても良い。このようにすることで、鍵を取得するための通信が不要となり、ファイル処理に必要となる時間を短縮することができる。
本実施形態によれば、ファイル自動暗号化システム及びプログラムは、ファイルの暗号化処理・復号処理を、アプリケーションやOSと異なるファイル自動暗号化プログラムが行うため、アプリケーションが暗号化処理・復号処理機能を持たない場合でも、当該アプリケーションを改変せずに、暗号化ファイルを操作できる。
また、ファイル自動暗号化プログラムは、アプリケーションが事前に許可されたアプリケーションであるかどうかを確認し、当該事前に許可されたアプリケーションである場合に復号されたデータを処理できるようにするため、マルウェアがアクセスしたとしてもマルウェアは復号されたデータを取得できない。
さらに、ユーザ空間で動作するモジュールを利用し、API呼び出しをフックしたり、OSカーネルが復号処理を行ったりしないため、当該モジュールが原因でOSがクラッシュする可能性がなく、安定した動作を実現できるという効果がある。
0:ネットワーク、1:情報処理装置、5:ファイルサーバ、6:情報管理サーバ、7:鍵管理サーバ、10:ファイル自動暗号化プログラム、11:ネットワークファイル共有サーバモジュール、12:ファイル暗復号モジュール、13:ファイル取得モジュール、14:RAMディスクモジュール、15:アプリケーション識別モジュール、16:ファイル名変換規則テーブル、17:ローカルファイル名変換規則テーブル、20:アプリケーション、30:オペレーティングシステム(OS)、31:ファイルアクセスアプリケーション特定機能、32:アプリケーション情報提供機能、40:通信モジュール、51:ファイル保存モジュール、52:ファイル取得モジュール提供モジュール、53:ファイル提供先認証モジュール、61:ホワイトリスト管理モジュール、62:ホワイトリスト管理テーブル、71:鍵管理モジュール、72:鍵管理テーブル。

Claims (12)

  1. 情報処理装置に実行させる、ファイル自動暗号化プログラムであって、
    アプリケーションからのファイルのオープン要求に応答して、前記ファイルをファイルサーバから取得し、
    前記アプリケーションを識別する識別情報をOSに問い合わせ、
    前記識別情報で特定される前記アプリケーションが、前記ファイルへのアクセスが事前に許可されたアプリケーションであるかどうかを確認し、
    前記アプリケーションによる前記ファイルへのアクセスが事前に許可されているとき、取得した前記ファイルを復号することを特徴とするファイル自動暗号化プログラム。
  2. 請求項1に記載のファイル自動暗号化プログラムであって、
    前記アプリケーションが、前記ファイルへのアクセスが事前に許可されたアプリケーションであるかどうかの確認を、前記アプリケーションからの前記オープン要求に対応する前記ファイルの取得を正常に実行した後に実行することを特徴とするファイル自動暗号化プログラム。
  3. 請求項2に記載のファイル自動暗号化プログラムであって、
    前記アプリケーションを識別する前記識別情報の前記OSへの問い合わせは、
    当該ファイル自動暗号化プログラムが管理しているファイル名から、前記OSが前記ファイルをオープンしているアプリケーションを特定するために用いる絶対パス形式のファイル名に変換する処理を含むことを特徴とするファイル自動暗号化プログラム。
  4. 請求項1〜3のいずれか1項に記載のファイル自動暗号化プログラムであって、
    復号した前記ファイルを該情報処理装置のメモリ空間に保存することを特徴とするファイル自動暗号化プログラム。
  5. 請求項1〜4のいずれか1項に記載のファイル自動暗号化プログラムであって、
    前記アプリケーションから前記ファイルのクローズ要求に応答して、
    前記ファイルを暗号化することを特徴とするファイル自動暗号化プログラム。
  6. 請求項1〜5のいずれか1項に記載のファイル自動暗号化プログラムであって、
    前記識別情報で特定される前記アプリケーションが、前記ファイルへのアクセスが事前に許可されたアプリケーションであるかどうかを、信頼できる第三者により運営される情報管理サーバにより確認されることを特徴とするファイル自動暗号化プログラム。
  7. ファイル共有プロトコルによるファイル共有サーバを実現し、アプリケーションからのファイルのオープン要求を受け付けるネットワークファイル共有サーバ手段、
    前記ネットワークファイル共有サーバ手段が受け付けた前記オープン要求に対応する前記ファイルをファイルサーバから取得するファイル取得手段、
    前記アプリケーションを識別する識別情報をOSに問い合わせ、前記識別情報で特定される前記アプリケーションが、前記ファイルへのアクセスが事前に許可されたアプリケーションであるかどうかを確認するアプリケーション識別手段、および
    前記アプリケーション識別手段により、前記アプリケーションが、前記ファイルへのアクセスが事前に許可されたアプリケーションであると確認されたとき、前記ファイル取得手段が取得した前記ファイルを復号するファイル暗復号手段を有することを特徴とするファイル自動暗号化システム。
  8. 請求項7に記載のファイル自動暗号化システムであって、
    前記アプリケーション識別手段による、アクセスが事前に許可されたアプリケーションであるかどうかを確認は、前記ファイル取得手段による、前記ファイルの取得が正常に終了した後に実施すること、を特徴とするファイル自動暗号化システム。
  9. 請求項8に記載のファイル自動暗号化システムであって、
    前記アプリケーション識別手段による、前記アプリケーションを識別する前記識別情報の前記OSへの問い合わせは、該ファイル自動暗号化システムが管理しているファイル名から、前記OSが前記ファイルをオープンしているアプリケーションを特定するために用いる絶対パス形式のファイル名への変換を含むことを特徴とするファイル自動暗号化システム。
  10. 請求項7〜9のいずれか1項に記載のファイル自動暗号化システムであって、
    復号した前記ファイルを、該ファイル自動暗号化システムを構成する情報処理装置のメモリ空間に保存することを特徴とするファイル自動暗号化システム。
  11. 請求項7〜10のいずれか1項に記載のファイル自動暗号化システムであって、
    前記ネットワークファイル共有サーバ手段は前記アプリケーションから前記ファイルのクローズ要求を受け付け、
    前記ネットワークファイル共有サーバ手段が受け付けた前記クローズ要求に対応する前記ファイルを、前記ファイル暗復号手段が暗号化することを特徴とするファイル自動暗号化システム。
  12. 請求項7〜11のいずれか1項に記載のファイル自動暗号化システムであって、
    前記アプリケーション識別手段は、前記識別情報で特定される前記アプリケーションが、前記ファイルへのアクセスが事前に許可されたアプリケーションであるかどうかを、信頼できる第三者により運営される情報管理サーバに確認することを特徴とするファイル自動暗号化システム。
JP2012234532A 2012-10-24 2012-10-24 ファイル自動暗号化システムおよびプログラム Ceased JP2014085855A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012234532A JP2014085855A (ja) 2012-10-24 2012-10-24 ファイル自動暗号化システムおよびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012234532A JP2014085855A (ja) 2012-10-24 2012-10-24 ファイル自動暗号化システムおよびプログラム

Publications (1)

Publication Number Publication Date
JP2014085855A true JP2014085855A (ja) 2014-05-12

Family

ID=50788858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012234532A Ceased JP2014085855A (ja) 2012-10-24 2012-10-24 ファイル自動暗号化システムおよびプログラム

Country Status (1)

Country Link
JP (1) JP2014085855A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015228216A (ja) * 2014-05-30 2015-12-17 アップル インコーポレイテッド コンテキストベースのデータアクセス制御
JP2019531564A (ja) * 2016-08-08 2019-10-31 ナムソフト カンパニー,リミテッド フィッシング又はランサムウェア攻撃を遮断する方法及びシステム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784904A (ja) * 1993-09-17 1995-03-31 Matsushita Electric Ind Co Ltd 遠隔ファイルアクセス装置
JP2009181238A (ja) * 2008-01-29 2009-08-13 Fujitsu Ltd ファイルアクセス方法およびファイルシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784904A (ja) * 1993-09-17 1995-03-31 Matsushita Electric Ind Co Ltd 遠隔ファイルアクセス装置
JP2009181238A (ja) * 2008-01-29 2009-08-13 Fujitsu Ltd ファイルアクセス方法およびファイルシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015228216A (ja) * 2014-05-30 2015-12-17 アップル インコーポレイテッド コンテキストベースのデータアクセス制御
JP2019531564A (ja) * 2016-08-08 2019-10-31 ナムソフト カンパニー,リミテッド フィッシング又はランサムウェア攻撃を遮断する方法及びシステム

Similar Documents

Publication Publication Date Title
US11057355B2 (en) Protecting documents using policies and encryption
JP6609010B2 (ja) 複数許可データセキュリティ及びアクセス
KR101852725B1 (ko) 컴퓨터 프로그램, 비밀관리방법 및 시스템
JP5019869B2 (ja) コンピュータ装置の暗号化データへのアクセスを提供する方法
US11290446B2 (en) Access to data stored in a cloud
JP2016513837A (ja) クラウドデータセキュリティのためのシステム及び方法
KR20120050742A (ko) 커널 네이티브 에이피아이의 후킹 처리를 통한 디지털 저작권 관리 장치 및 방법
JP2007157049A (ja) 暗号化機能内蔵ストレージシステム
US9202074B1 (en) Protection of shared data
JP4084971B2 (ja) 電子データ交換システムにおけるデータ保護装置及びデータ保護方法並びにそれに用いるプログラム
Ghazi et al. DB-SECaaS: a cloud-based protection system for document-oriented NoSQL databases
US20080184039A1 (en) Cryptographically controlling access to documents
US7694154B2 (en) Method and apparatus for securely executing a background process
JP2014085855A (ja) ファイル自動暗号化システムおよびプログラム
KR101945687B1 (ko) 하이브리드 클라우드를 이용한 전자 문서 관리 시스템 및 그 방법
JP2006190050A (ja) マルチタスク実行システム及びマルチタスク実行方法
WO2022186367A1 (ja) データ管理装置、データ管理システム、データ管理方法及びコンピュータ読み取り可能な記録媒体
KR101269095B1 (ko) 휴대 단말기를 이용한 이동식 저장 장치 및 그 구현 방법
JP2023154825A (ja) 分散情報処理システムおよび分散情報処理方法
JP2006139475A (ja) 既存アプリケーションの機密情報保護システム
Prateek et al. Mobile Data Protection Using AES Algorithm
NZ618683B2 (en) Access control to data stored in a cloud

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20140908

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150304

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160222

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160621

A045 Written measure of dismissal of application

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20161025