以下、メールの添付ファイルであり、暗号化された添付ファイルに対して暗号解除した場合、次に添付ファイルをオープンする際には、暗号解除のための入力が不要である暗号化メール処理装置等の実施形態について、図面を参照して説明する。なお、各実施の形態および変形例において同じ符号を付した構成要素やステップは同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態における暗号化メール処理装置1は、暗号解除済みの添付ファイルを、元の暗号化された添付ファイルに上書きすることで、暗号化された添付ファイルに対して暗号解除した場合、次に添付ファイルをオープンする際には、暗号解除のための入力が不要であるように構成した点を特徴としている。
図1は、本実施の形態における暗号化メール処理装置1のブロック図である。暗号化メール処理装置1は、格納部11、受付部12、処理部13、受信部14、送信部15を備える。
格納部11は、メール格納部111を備える。受付部12は、入力受付部121、指示受付部122を備える。処理部13は、暗号解除部131、ファイル処理部132、蓄積部133、要求部134を備える。
前提として、格納部11には、処理部13が各種の処理を行うための情報、例えば、暗号化メール処理装置1用のプログラムなどが格納される。なお、各種の処理およびプログラムについては、後述する。
また、格納部11には、暗号化メール処理装置1自身を識別する識別子、図示しないメールサーバ装置を識別する識別子、暗号化メール処理装置1がメールなどの情報をやり取りする相手の装置を識別する識別子なども格納される。こうした識別子は、通常、IPアドレス、MACアドレスなどであるが、種類は問わない。
なお、以下では特に言及しない場合もあるが、装置間で送受信される情報には、通常、こうした識別子が、送信元識別子または送信先識別子として付加される。
メール格納部111は、例えば、1または2以上のメール、それぞれのメールの添付ファイルであり、暗号化された添付ファイルなどの情報を格納し得る。なお、暗号化された添付ファイルは、メールとは別の情報でも、メールを構成する情報の一部であってもよい。
メールとは、電子メールの略称であり、例えば、暗号化メール処理装置1等のコンピュータ間で、インターネット等のネットワークを通じて伝達・蓄積される、電子化された文書・画像などの情報をいう。
メールは、通常、ヘッダおよびボディで構成される。ヘッダは、例えば、送信先、送信元などに関する情報(送信元識別子、送信先識別子等)を含む。ボディは、メール本文(文書、画像等)、添付ファイル(後述)などを含み得る。
格納部11に格納されるメールは、通常、受信メール、未送信メール、または送信済みメールであるが、種類は問わない。
受信メールとは、後述する受信部14が受信したメールである。未送信メールとは、後述する送信部15が送信しようとするメールであり、送信済みメールとは、送信部15が送信したメールに対応するメールである。
メールの添付ファイルとは、メールに添付され、メールと共に伝達・蓄積されるファイルをいう。メールと共にとは、メールの一部である場合も含む。
添付ファイルは、例えば、文書、画像、音声といった各種のコンテンツを含んでいてよい。
添付ファイルは、メールと共に伝達・蓄積し得るファイルであればよく、ファイルの内容、ファイル形式、添付の態様などは問わない。
暗号化とは、一般に、情報を伝達したり蓄積したりするに当たって、第三者による情報の閲覧・改ざん(編集)等を防ぐために、所定の手順に従って情報を変換することをいう。所定の手順とは、例えば、共通鍵暗号、公開鍵暗号などの暗号化アルゴリズムに従う手順であるが、方式は問わない。
共通鍵暗号は、暗号化と復号(暗号解除)とで同じ鍵(共通鍵)を用いる方式である。公開鍵暗号は、暗号化と復号とで異なる鍵(公開鍵と秘密鍵)を用いる方式(PGPやS/MIME等)である。
ただし、暗号化は、上記のような暗号鍵(以下、単に“鍵”という)を用いた暗号化アルゴリズムに従う情報の変換に限らず、例えば、暗号表による情報の並べ替えでもよいし、情報を閲覧・編集等が不可能または困難な状態にする(不能化または困難化する)手順であれば、種類や方式は問わない。
すなわち、この実施の形態でいう暗号化は、例えば、情報を分割したり圧縮したりすることによって、情報の閲覧・編集等を不能化または困難化する方式も含む。
また、暗号化は、情報自体を変換する方式に限らず、例えば、情報が格納されたファイルに対してパスワードを設定し、パスワードを入力しなければファイルがオープンできないようにすることにより、情報の閲覧・編集等を不能化または困難化する方式をも含み、広く解釈する。
暗号化は、例えば、圧縮を伴う暗号化(パスワード付きのZIPやLZH等)、暗号鍵によるスクランブルなどでもよい。
暗号化の対象は、例えば、メールの添付ファイルのみでもよいし、メールのボディ部分(メール本文および添付ファイル)でもよいし、メールの少なくとも添付ファイルを含む対象であればよい。
格納部11は、メール格納部111に格納されている1以上の暗号化された添付ファイルに関し、暗号解除されたか否かを示す暗号解除情報を格納し得る。
暗号解除情報は、例えば、暗号化された添付ファイルを識別する暗号化ファイルID(例えばCF1,CF2,…)と、当該暗号化された添付ファイルが暗号解除済みか否かを示すフラグ(例えばA1,A2,…)との対の集合で構成される。
フラグは、初期状態(未だ暗号解除されてない状態)ではオフであり、暗号解除されると、例えば処理部13の制御により、オンに変化する。
ただし、例えば、添付ファイル自体が暗号解除されたか否かを示す情報を有している場合など、処理部13が暗号解除情報以外の情報を基に暗号解除されたか否かの判別を行える場合には、暗号解除情報は必要ない。
処理部13は、格納部11、メール格納部111に格納されている情報(プログラム、メール、暗号解除情報等)を基に、例えば、上述したフラグの制御や、後述する各種の処理を行う。
受付部12は、後述する入力、指示などを受け付ける。
入力受付部121は、メールの添付ファイルであり、暗号化された添付ファイルに対し、暗号解除のための入力である解除入力を受け付ける。
解除入力とは、例えば、鍵(上記の共通鍵、秘密鍵、暗号鍵等)、パスワードなどであるが、暗号化された添付ファイルの暗号解除が可能な情報であれば種類は問わない。
解除入力は、暗号化された添付ファイルの暗号解除のための鍵またはパスワードを含む。
解除入力は、例えば、一の暗号化された添付ファイルを識別する暗号化ファイルIDと、当該暗号化された添付ファイルの暗号解除のための鍵またはパスワードとの対を含んでいてもよい。
受け付けとは、例えば、キーボード、マウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスク、磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。
暗号解除部131は、入力受付部121が受け付けた解除入力を基に、暗号化された添付ファイルに対し、暗号解除を行う。
暗号解除とは、添付ファイルの暗号化を解除して、例えば添付ファイルに含まれる暗号文(暗号化された文字列)を平文(暗号化されていない文字列)に戻すことであり、復号ともいう。さらに鍵が暗号化されている場合は、鍵に対する暗号解除も含んでいてよい。
圧縮を伴う暗号化の場合、暗号解除部131は、さらに圧縮解除(解凍)も行ってよい。
暗号化が暗号鍵によるスクランブルである場合、暗号解除部131は、例えば、当該暗号鍵によるデスクランブルを行ってもよい。
暗号化が添付ファイルに対するパスワードの設定を含んでいる場合、暗号解除部131は、パスワードの解除を行ってもよい。
格納部11は、暗号解除部131が暗号化された添付ファイルに対して暗号解除を行って得られる暗号解除済みの添付ファイルも格納し得る。
ファイル処理部132は、指示受付部122が指示(前述)を受け付ける度に、暗号解除済みの添付ファイルをオープンする。
ファイル処理部132は、暗号解除部131が解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して処理を行う。
ファイル処理部132は、例えば、指示の受け付けの時点で、メール格納部111に格納されているメールが暗号解除済みの添付ファイルを有する場合に、当該暗号解除済みの添付ファイルに対して処理を行う。
ファイル処理部132は、通常、暗号解除済みの添付ファイルをオープンして得られる平文に対して、検索、出力等の処理を行う。
検索とは、一般に、データの集合の中から目的とするデータを探し出すことをいい、例えば、キーワードによる文字列検索、ファイルの属性(受信日時や送信元識別子等)に基づく属性検索などを含む。
この実施の形態でいう検索指示とは、メール格納部111に格納されている1以上の暗号化された添付ファイルのうち1つまたは2以上を対象に、例えば文字列検索や属性検索などの検索処理を行うよう指示することである。
この実施の形態でいう検索処理とは、検索指示に応じて、1つまたは2以上の暗号化された添付ファイルに対して暗号解除を行い、得られた1つまたは2以上の暗号解除済みの添付ファイルを対象に、検索を行うことである。
この実施の形態でいう出力指示とは、メール格納部111に格納されている1以上の暗号化された添付ファイルのうち1つまたは2以上を対象に、そこに含まれている情報を、例えば、ディスプレイ等の出力デバイスを介して出力するように指示することである。
この実施の形態でいう出力処理とは、出力指示に応じて、1つまたは2以上の暗号化された添付ファイルに対して暗号解除を行い、得られた1つまたは2以上の暗号解除済みの添付ファイルを対象に、例えば、ディスプレイ等の出力デバイスを介した出力を行うことである。
ただし、上記のような指示または処理の対象は、例えば、メールの暗号化された添付ファイルのみでもよいし、暗号化されたメール本文および暗号化された添付ファイルであってもよい。また、暗号化された添付ファイル等に加えて、例えば、暗号化されていない添付ファイル、メール本文、ヘッダ部分等が、指示または処理の対象に含まれていてもよい。
なお、以下では、指示受付部122が受け付けた指示に対応する処理であって、暗号解除しなければ行えない処理を、“目的処理”と記す場合がある。目的処理は、具体的には、上述したような、検索指示に対応する検索処理、出力指示に対応する出力処理などであるが、例えば、添付ファイルの編集を行うための指示である編集指示に対応する編集処理、添付ファイルの解析を行うための指示である解析指示に対応する解析処理などでもよく、目的処理の種類は問わない。
処理部13は、ファイル処理部132によってオープンされた添付ファイルの内容や、ファイル処理部132による検索等の処理の結果などを、出力デバイスを介して出力し得る。
蓄積部133は、例えば、メール格納部111に格納されているメールが有する暗号化された添付ファイルに対し暗号解除部131が暗号解除を行って得られた暗号解除済みの添付ファイルを、当該暗号化された添付ファイルに上書きする。
従って、暗号解除済みの添付ファイルに対応する元の暗号化された添付ファイル(元ファイル)は、暗号解除済みの添付ファイルによって上書きされる結果、メール格納部111から失われる。
ただし、未送信メールの暗号化された添付ファイルは、上書きされる対象から除外するのが望ましい。すなわち、蓄積部133は、通常、受信メールの暗号化された添付ファイルと、送信済みメールの暗号化された添付ファイルとに対し、上記のような暗号解除済みの添付ファイルによる上書きを行う一方、未送信メールの暗号化された添付ファイルには、かかる上書きは行わない。この場合、暗号解除済みの添付ファイルを、未送信メールの暗号化された添付ファイルに上書きする代わりに、未送信メールの暗号化された添付ファイルと対に(例えば、元ファイルと対応付けて、同じまたは別の格納部に)蓄積してもよい。
または、蓄積部133は、暗号化された添付ファイルに対し入力受付部121が受け付けた解除入力を、当該暗号化された添付ファイルに対応付けて、例えば格納部11に蓄積してもよい。なお、これについては、実施の形態2で説明する。
または、蓄積部133は、暗号化された添付ファイルに対し暗号解除部131が暗号解除を行って得られる暗号解除済みの添付ファイルを、当該暗号化された添付ファイルに対応付けて、例えば格納部11に蓄積してもよい。なお、これについては、実施の形態3で説明する。
要求部134は、指示受付部122が暗号化された添付ファイルに対する処理に関する指示を受け付けたとき、解除入力(鍵、パスワード等)を要求する。
要求部134は、指示受付部122が暗号化された添付ファイルに対する処理に関する指示を受け付けたとき、フラグがオンである場合に、解除入力を要求する。
要求部134は、ディスプレイ等の出力デバイスを介して要求を出力する。
受信部14は、例えば、図示しないメールサーバ装置から送信されたメールを、インターネット等のネットワークおよび当該ネットワークに接続された無線または有線の通信モジュール(ネットワークカード等)を介して受信する。
送信部15は、例えば、上記の通信モジュールおよびネットワークを介してメールサーバ装置にメールを送信する。
上記の格納部11、メール格納部111、さらには、後述する格納部11a、格納部11b、入力格納部112、暗号解除済みファイル格納部113は、揮発性の記憶媒体が好適であるが、揮発性の記憶媒体でも実現可能である。
格納部11等は、通常、暗号化メール処理装置1自身が有する記憶媒体(ハードディスクや光ディスク等のストレージ、RAMやフラッシュメモリ等のメモリ、MPUの内部メモリなど)で実現されるが、インターネット等のネットワークに接続されたサーバ等のコンピュータ資源を活用するクラウドコンピューティングで実現されてもよい。
例えば、格納部11、格納部11a、格納部11b、入力格納部112、暗号解除済みファイル格納部113を、セキュリティ確保のために、暗号化メール処理装置1自身が有する記憶媒体で実現する一方、メール格納部111は、メールサーバが有する記憶媒体で実現することも可能である。この場合、受信メール、送信済みメール等のメールは、メールサーバが有する記憶媒体内のメール格納部111に格納され、暗号化メール処理装置1でメールアプリ(メーラー)が起動されると、インターネットを介して暗号化メール処理装置1の記憶媒体(格納部11等)にダウンロードされる。
なお、セキュリティ確保が可能であれば、格納部11、格納部11a、格納部11b、入力格納部112、暗号解除済みファイル格納部113もまた、メール格納部111と同様、メールサーバなどの外部装置が有する記憶媒体で実現してもよい。
格納部11等に、メール、プログラムといった各種の情報が格納される過程(いつどのように記憶されるか)は問わない。例えば、CD−ROM等の着脱可能な記憶媒体を介して情報が格納部11で記憶されるようになってもよく、通信回線等を介して送信された情報が格納部11で記憶されるようになってもよく、あるいは、キーボード等の入力デバイスを介して入力された情報が格納部11で記憶されるようになってもよい。
上記の処理部13、暗号解除部131、ファイル処理部132、蓄積部133、要求部134、さらには、後述する処理部13a、暗号解除部131a、蓄積部133a、処理部13b、蓄積部133bは、通常、MPUやメモリ(ROM、RAM等)やその他のハードウェア(ストレージ、出力デバイス等)と、メモリに格納されているソフトウェアとの協働により実現され得るが、ハードウェアのみ(専用回路)で実現してもよい。
なお、以下では、MPUおよびメモリ等を含むハードウェア全体を“コンピュータ”、このコンピュータを、格納部11、受付部12、処理部13、受信部14、送信部15等として機能させるソフトウェアを“プログラム”と呼ぶ場合がある。ただし、MPUおよびメモリを“コンピュータ”、このコンピュータを処理部13等として機能させるソフトウェアを“プログラム”と呼んでもよい。
受付部12、入力受付部121、指示受付部122は、入力デバイスを含むと考えてもよいし、含まないと考えてもよい。すなわち、受付部12等は、入力デバイスとそのドライバーソフトとで実現されるか、または、入力デバイスのドライバーソフトで実現され得る。入力デバイスは、例えば、キーボードやマウスやタッチパネル等、何でもよい。
処理部13、要求部134は、出力デバイスを含むと考えてもよいし、含まないと考えてもよい。すなわち、処理部13等の出力機能は、出力デバイスとそのドライバーソフトとで実現されるか、または、出力デバイスのドライバーソフトで実現され得る。出力デバイスは、例えば、ディスプレイやスピーカー等、何でもよい。
受信部14、送信部15は、ネットワークカード等の通信モジュールを含むと考えてもよいし、含まないと考えてもよい。すなわち、受信部14等は、通信モジュールスとそのドライバーソフトとで実現されるか、または、通信モジュールのドライバーソフトで実現され得る。
次に、暗号化メール処理装置1の動作について、図2のフローチャートと、図3のデータ構造とを用いて説明する。
図2は、実施の形態1における暗号化メール処理装置1の動作を説明するためのフローチャートである。
図2のフローチャートに従う処理は、例えば、暗号化メール処理装置1の電源がオンされると開始し、電源オフ操作や他の処理の割り込みといった終了イベントが発生すると終了する。
起動時、メール格納部111には、1以上のメール、それぞれのメールの暗号化された添付ファイル(例えばCF1,CF2,…)などが格納されている。
また、格納部11には、メール格納部111に格納されている1以上の暗号化された添付ファイル(例えばCF1,CF2,…)に関する暗号解除情報が格納されている。
図3は、暗号解除情報に関するデータ構造図である。暗号解除情報は、1以上の暗号化された添付ファイルを識別する暗号化ファイルID(例えばCF1,CF2,…)と、当該1以上の暗号化された添付ファイルが暗号解除済みか否かを示す1以上のフラグ(例えばA1,A2,…)との対の集合で構成される。
起動時、暗号化された添付ファイルCF1,CF2,…は、いずれも未だ暗号解除されておらず、従って、フラグA1,A2,…は、全てオフであるとする。
(ステップS201)処理部13は、指示受付部122が、メール格納部111に格納されている1以上の暗号化された添付ファイル(以下“暗号化ファイル”と記す場合がある)のうちいずれか1つに対し、暗号解除しなければ行えない処理(例えば検索処理、閲覧のための出力処理、編集処理、解析処理等。以下、単に“処理”、または“目的処理”と記す場合がある)に関する指示(例えば検索指示、出力指示、編集指示、解析指示等。以下、単に“指示”と記す場合がある)を受け付けた否かを判別する。
指示は、例えば、処理の対象となる暗号化ファイルを識別する暗号化ファイルIDと、処理の種類(例えば、検索指示、出力指示、編集指示、解析指示等のうちいずれか1つ)を示す処理種類情報との対を含む。
指示受付部122が暗号化ファイルに対する指示を受け付けたと判別された場合はステップS202に進み、受け付けていないと判別された場合は同様の判別を繰り返す。
(ステップS202)処理部13は、当該暗号化ファイルに対応するフラグがオンか否かを判別する。
当該暗号化ファイルに対応するフラグがオンであると判別された場合はステップS209に進み、オンではない(オフである)と判別された場合はステップS203に進む。
(ステップS203)要求部134は、当該暗号化ファイルに対する解除入力(鍵、パスワード等)を、ディスプレイ等の出力デバイスを介してユーザに要求する。
(ステップS204)処理部13は、入力受付部121が、当該暗号化ファイルに対する解除入力を受け付けた否かを判別する。
解除入力は、例えば、暗号解除の対象となる暗号化された添付ファイルを識別する暗号化ファイルIDと、暗号解除のための鍵またはパスワードとの対を有する。ただし、暗号化ファイルIDはなくてもよい。
入力受付部121が暗号化ファイルに対する解除入力を受け付けたと判別された場合はステップS205に進み、受け付けていない(未入力)と判別された場合は同様の判別を繰り返す。なお、未入力の期間が一定時間を超えた場合は、処理部13がタイムアウトと判断し、ステップS201に戻ってもよい。
(ステップS205)暗号解除部131は、当該解除入力を基に、当該暗号化ファイルに対し暗号解除を行う。
(ステップS206)処理部13は、暗号解除部131による暗号解除が成功したか否かを判別する。
暗号解除部131による暗号解除が成功した場合はステップS207に進み、成功しなかった場合はステップS203に戻る。
(ステップS207)処理部13は、当該暗号化ファイルに対する解除入力の再度の受け付けを不要にする再入力不要化処理を実行する。
この再入力不要化処理の一例として、蓄積部133が、暗号解除部131が当該暗号化ファイルに対し暗号解除を行って得られる暗号解除済みの添付ファイル(以下、“暗号解除済みファイル”と記す場合がある)を、当該暗号化ファイルに上書きする。
暗号解除済みファイルに対応する元の暗号化ファイルは、こうして当該暗号解除済みファイルにより上書きされる結果、メール格納部111から失われる(言い換えると、元の暗号化ファイルが暗号解除済みファイルに置き換わる)。
(ステップS208)処理部13は、格納部11に格納されている暗号解除情報が有する、当該暗号化ファイルを識別する暗号化ファイルIDに対応するフラグをオンにする。その後、ステップS209に進む。
(ステップS209)ファイル処理部132は、当該指示に対応する処理である目的処理を実行する。
この目的処理において、ファイル処理部132は、メール格納部111に格納されている1以上のメールが有する1以上の暗号解除済みファイルDF1,DF2,…のうち、当該指示が有する暗号化ファイルIDで識別される暗号解除済みファイルをオープンする。
次に、ファイル処理部132は、暗号解除済みファイルをオープンして得られる1以上の平文に対して、当該指示が有する処理種類情報に対応する処理(検索処理、閲覧のための出力処理等の目的処理)を行う。
その後、ファイル処理部132は、暗号解除済みファイルをクローズし、ステップS201に戻る。このファイルクローズは、例えば、目的処理の終了に応じ行われてもよいし、目的処理を終了するための指示である終了指示の受け付けに応じて行われてもよい。
このフローチャートによれば、メール格納部111に格納されている1以上のメールが有する1以上の暗号化ファイルCF1,CF2,…それぞれに対して、1回目の指示が受け付けられたとき、フラグはオフなので、上記ステップS203〜S208の処理を経て、ステップS209の目的処理が行われることで、当該1以上の暗号化ファイルCF1,CF2,…は、これと同じファイルIDで識別される暗号解除済みファイルCF1,CF2,…によって順次上書きされていく。これに伴い、処理部13は、暗号解除情報が有するフラグA1,A2,…を、オフからオンに順次変更していく。
このため、一の暗号化ファイルに対して、2回目以降の指示が受け付けられたときには、当該一の暗号化フィルに対応するフラグはオンなので、上記ステップS203〜S208の処理を経ることなく、ステップS209の目的処理が行われるので、解除入力の再度の受け付けが不要になる。
以下、本実施の形態における暗号化メール処理装置1の具体的な動作例について説明する。ただし、以下の動作は、一例に過ぎず、本願発明を何ら限定するものではない。
いま、メール格納部111には、2以上のメールM1,M2,…と、メールM1に添付されている暗号化された添付ファイル(暗号化ファイルCF1)と、メールM2に添付されている2以上の暗号化された添付ファイル(暗号化ファイルCF2,CF3,…)とが格納されている。
格納部11には、メール格納部111に格納されている暗号化ファイルCF1,CF2,CF3,…に関する暗号解除情報が格納されている。この暗号解除情報は、暗号化ファイルCF1,CF2,CF3,…を識別する暗号化ファイルID“CF1”,“CF2”,“CF3”,…と、当該暗号化ファイルID“CF1”,“CF2”,“CF3”,…に対応するフラグA1,A2,A3,…とを有する。
ただし、フラグA1,A2はオン、フラグA3はオフである。従って、メール格納部111内に格納されている暗号化ファイルCF1,CF2,CF3,…のうち、前者2つは、暗号解除済みファイルCF1,CF2によって既に上書き済みである。
処理部13は、入力受付部121が、メール格納部111に格納されている暗号化ファイルCF1,CF2,CF3,…のいずれかに対し、解除入力(鍵、パスワード等)を受け付けた否か、についての判別を繰り返し行っている。
入力受付部121が、暗号化ファイルCF3に対する解除入力を受け付けると、暗号解除部131は、当該解除入力を基に、暗号化ファイルCF3に対し暗号解除を行う。
蓄積部133は、暗号解除部131が暗号化ファイルCF3に対し暗号解除を行って得られた暗号解除済みファイルCF3を、元の暗号化ファイルCF3に上書きする。メール格納部111に格納されている暗号化ファイルCF3は、このような上書きの結果、暗号解除済みファイルCF3に置き換わる。これに伴い、処理部13は、格納部11に格納されている暗号解除情報が有する暗号化ファイルID“CF3”に対応するフラグA3をオンにする。
また、処理部13は、指示受付部122が、メール格納部111に格納されている暗号化ファイルCF1,CF2,CF3,…のうち、いずれか1つを対象に、暗号解除しなければ行えない処理(例えば、検索処理、出力処理等のうちいずれか1つ)に関する指示を受け付けたか否か、についての判別も行っている。
例えば、指示受付部122が、暗号化ファイルCF1を対象とする検索処理に関する検索指示を受け付けると、処理部13は、当該暗号化ファイルCF1に対応するフラグがオンか否かを、暗号解除情報を基に判別する。
ここでは、暗号化ファイルCF1が暗号解除済みなので、判別結果はYESであり、ファイル処理部132は、暗号化ファイルID“CF1”で識別される暗号解除済みファイルCF1をオープンする。
なお、検索指示の対象が、未だ暗号解除されていない暗号化ファイルである場合、その暗号化ファイルはオープンされない。
また、一の検索指示の対象は、1つの暗号化ファイルとは限らず、2以上の暗号化ファイルであってもよい。一の検索指示の対象が2以上の暗号化ファイルである場合は、各暗号化ファイルに対して順次、または並列的に、上記と同様の処理が行われる。
ファイル処理部132は、こうしてオープンされた暗号解除済みファイルCF1が有する平文に対して検索処理を行う。
また、指示受付部122が、例えば、暗号化ファイルCF3に対する閲覧のための出力指示を受け付けた場合、ファイル処理部132は、暗号化ファイルCF3に上書きされた暗号解除済みファイルCF3をオープンし、ファイル処理部132は、オープンされた暗号解除済みファイルCF3が有する平文に対して出力処理を行うことできる。
以上、本実施の形態によれば、メールの添付ファイルであり、暗号化された添付ファイルに対し、暗号解除のための入力である解除入力を受け付ける入力受付部121と、解除入力を基に、暗号化された添付ファイルに対し、暗号解除を行う暗号解除部131と、暗号化された添付ファイルに対し、暗号解除しなければ行えない処理(目的処理)に関する指示を受け付ける指示受付部122と、添付ファイルに対して解除入力が受け付けられた後に当該添付ファイルがクローズされた状態で、指示が受け付けられた場合に、暗号解除部131が当該解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して指示に対応する目的処理を行うファイル処理部132とを具備する暗号化メール処理装置1により、暗号化された添付ファイルに対する解除入力の再度の受け付けが不要になる。その結果、解除入力を一度受け付けるだけで、暗号解除しなければ行えない処理を何度でも行うことができるので、例えば、ユーザの操作の煩雑さが軽減され、また、処理負荷も軽減され得る。
また、上記暗号化メール処理装置1において、暗号化された添付ファイルを有するメールを格納し得るメール格納部111と、メール格納部111に格納されているメールが有する暗号化された添付ファイルに対し暗号解除部131が暗号解除を行って得られる暗号解除済みの添付ファイルを、暗号化された添付ファイルに上書きする蓄積部133とをさらに具備し、ファイル処理部132は、指示の受け付けの時点で、メール格納部111に格納されているメールが暗号解除済みの添付ファイルを有する場合に、当該暗号解除済みの添付ファイルに対して指示に対応する目的処理を行うことにより、暗号解除済みの添付ファイルを、元の暗号化された添付ファイル(元ファイル)に上書きするので、暗号解除済みの添付ファイルのための格納部を別途確保する必要がなく、記録媒体の資源を節約でき、かつ高速に処理できるし、また、一の添付ファイルに対する暗号解除は一度だけ行えばよく、処理負荷も軽減できる。
なお、メール格納部111は、この実施の形態では、暗号化メール処理装置1自身が有する記憶媒体に格納されているが、例えば、インターネット上のメールサーバなどの外部装置が有する記憶媒体に格納されていてもよく、どこに格納されているかは問わない。
メール格納部111が、外部装置が有する記憶媒体に格納されている場合、暗号解除部131は、暗号化された添付ファイルを外部装置から取得して、解除入力を基に、暗号化された添付ファイルに対し暗号解除を行い、蓄積部133は、メール格納部111に格納されているメールが有する暗号化された添付ファイルに対し暗号解除部131が暗号解除を行って得られる暗号解除済みの添付ファイルを、暗号化された添付ファイルに上書きするよう、当該外部装置に依頼(要求)する。ファイル処理部132は、指示の受け付けの時点で、メール格納部111に格納されているメールが暗号解除済みの添付ファイルを有する場合に、当該暗号化された添付ファイルを外部装置から取得して、当該暗号解除済みの添付ファイルに対して指示に対応する目的処理を行う。
また、上記暗号化メール処理装置1において、メールを受信する受信部14と、メールを送信する送信部15とをさらに具備し、暗号化された添付ファイルは、受信部14が受信した受信メール、送信部15が送信しようとする未送信メール、または送信部15が送信したメールに対応する送信済みメール、のいずれかに添付されていることにより、受信メール、未送信メールまたは送信済みメールのいずれかに添付されている暗号化された添付ファイルを対象に、解除入力を一度受け付けるだけで、暗号解除しなければ行えない目的処理(例えば検索、出力等の処理)を何度でも行うことができる。
さらに、本実施の形態における処理は、ソフトウェアで実現してもよい。そして、このソフトウェアをソフトウェアダウンロード等により配布してもよい。また、このソフトウェアをCD−ROMなどの記憶媒体に記録して流布してもよい。なお、このことは、本明細書における他の実施の形態またはその変形例においても該当する。
なお、本実施の形態における暗号化メール処理装置1を実現するソフトウェアは、例えば、コンピュータを上記各部(11〜15,111,121,122,131〜134)として機能させるためのプログラムである。
つまり、このプログラムは、コンピュータを、例えば、メールの添付ファイルであり、暗号化された添付ファイルに対し、暗号解除のための入力である解除入力を受け付ける入力受付部121と、解除入力を基に、暗号化された添付ファイルに対し、暗号解除を行う暗号解除部131と、暗号化された添付ファイルに対し、暗号解除しなければ行えない処理(目的処理)に関する指示を受け付ける指示受付部122と、添付ファイルに対して解除入力が受け付けられた後に当該添付ファイルがクローズされた状態で、指示が受け付けられた場合に、暗号解除部131が解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して指示に対応する目的処理を行うファイル処理部132として機能させる。
(実施の形態2)
本実施の形態における暗号化メール処理装置1aは、暗号化された添付ファイルに対する解除入力を管理(例えば、記録媒体に蓄積)することで、暗号化された添付ファイルに対して暗号解除した場合、次に添付ファイルをオープンする際には、解除入力が不要であるように構成した点を特徴としている。
図4は、本実施の形態における暗号化メール処理装置1aのブロック図である。暗号化メール処理装置1aは、格納部11a、受付部12、処理部13a、受信部14、送信部15を備える。
格納部11aは、メール格納部111、入力格納部112を備える。受付部12は、入力受付部121、指示受付部122を備える。処理部13aは、暗号解除部131a、ファイル処理部132a、蓄積部133a、要求部134を備える。
入力格納部112は、メール格納部111に格納されている1以上の各メールが有する暗号化された添付ファイルに対する1以上の解除入力(鍵、パスワード等)を格納し得る。1以上の解除入力は、1以上の暗号化された添付ファイルに対応付いている。
暗号解除部131aは、指示の受け付けの時点で入力格納部112に解除入力が格納されている場合に、入力格納部112に格納されている解除入力を基に、暗号化された添付ファイルに対し暗号解除を行う。
暗号解除部131aは、通常、指示受付部122による指示の受け付けに応じて、入力格納部112に格納されている解除入力を基に、暗号化された添付ファイルに対し暗号解除を行う。
ファイル処理部132aは、暗号解除部131aが入力格納部112に格納されている解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して、指示に対応する処理を行う。
蓄積部133aは、暗号化された添付ファイルに対し入力受付部121が受け付けた解除入力を、当該暗号化された添付ファイルに対応付けて、入力格納部112に蓄積する。
以上のように構成された暗号化メール処理装置1aの動作は、実施の形態1における暗号化メール処理装置1の動作に対し、ステップS207の再入力不要化処理およびステップS209の目的処理の詳細を除いて同様なので、暗号化メール処理装置1aの動作説明にも、図2のフローチャートを用いる。
メール格納部111には、実施の形態1と同様、1以上のメール、それぞれのメールの暗号化された添付ファイル(例えばCF1,CF2,…)などが格納されている。
格納部11aには、例えば図5に示すような対応情報が格納されている。この対応情報は、暗号化された添付ファイルと、解除入力との対応関係を示す情報である。
図5は、本実施の形態における対応情報に関するデータ構造図である。この対応情報には、メール格納部111に格納されている1以上の暗号化された添付ファイルを識別する1以上の暗号化ファイルID(例えば“CF1”,“CF2”,…)と対にして、入力受付部121が受け付けた1以上の解除入力(例えば“abc”,“ABC”,…)が登録され得る。
暗号化ファイルID“CF1”,“CF2”,…と、解除入力“abc”,”ABC”,…との対は、暗号化ファイルCF1,CF2,…に対する解除入力(鍵、パスワード等)が受け付けられ、暗号解除が成功する度に、登録されていく。
(ステップS207)蓄積部133aは、暗号化された添付ファイルに対し入力受付部121が受け付けた解除入力を、当該暗号化された添付ファイルに対応付けて、入力格納部112に蓄積する。これに伴い、例えば処理部13が、上記の対応情報に、当該暗号化された添付ファイルを識別する暗号化ファイルIDと対にして、当該解除入力を登録する。
このため、メール格納部111に格納されているメールが有する暗号化ファイルは、実施の形態1における暗号化ファイルとは異なり、暗号解除済みファイルで上書き(置換)されることはない。
(ステップS209)ファイル処理部132aは、当該指示に対応する処理である目的処理を実行する。
この目的処理において、ファイル処理部132aは、メール格納部111に格納されている1以上のメールが有する1以上の暗号化ファイルCF1,CF2,…のうち、当該指示が有する暗号化ファイルIDで識別される暗号化ファイルに対し、当該指示が有する解除入力を基に暗号解除を行い、得られた暗号解除済みの添付ファイルをオープンする。
次に、ファイル処理部132aは、暗号解除済みの添付ファイルをオープンして得られる1以上の平文に対して、当該指示が有する処理種類情報に対応する処理(検索処理、出力処理等)を行う。
その後、ファイル処理部132aは、暗号解除済みの添付ファイルをクローズし、ステップS201に戻る。
このフローチャートによれば、メール格納部111に格納されている1以上のメールが有する1以上の暗号化ファイルCF1,CF2,…それぞれに対して、1回目の指示が受け付けられたとき、フラグはオフなので、上記ステップS203〜S208の処理を経て、ステップS209の目的処理が行われることで、当該1以上の暗号化ファイルCF1,CF2,…に対する1以上の解除入力が入力格納部112に蓄積されていくと共に、対応情報には、当該1以上の暗号化ファイルCF1,CF2,…を識別する暗号化ファイルID“CF1”,“CF2”,…と対にして、当該1以上の解除入力“abc”,“ABC”,…が順次登録されていく。また、処理部13aは、暗号解除情報が有するフラグA1,A2,…を、オフからオンに順次変更していく。
このため、一の暗号化ファイルに対して、2回目以降の指示が受け付けられたときには、当該一の暗号化ファイルに対応するフラグはオンなので、上記ステップS203〜S208の処理を経ることなく、ステップS209に進んで、入力格納部112に格納されている解除入力を基に暗号解除が行われるので、解除入力の再度の受け付けが不要になる。
以下、本実施の形態における暗号化メール処理装置1aの具体的な動作例について説明する。以下の動作は、一例に過ぎず、本願発明を何ら限定するものではない。
いま、メール格納部111には、実施の形態1におけるものと同様、2以上のメールM1,M2,…と、メールM1に添付されている暗号化された添付ファイル(暗号化ファイルCF1)と、メールM2に添付されている2以上の暗号化された添付ファイル(暗号化ファイルCF2,CF3,…)とが格納されている。
入力格納部112には、暗号化ファイルCF1,CF2に対応する解除入力I1,I2が格納されている。ただし、暗号化ファイルCF3に対応する解除入力I3は、未だ格納されていない。
従って、現時点で、対応情報には、暗号化ファイルID“CF1”,“CF2”…と、解除入力“abc”,“ABC”との対が登録されている。
処理部13aは、実施の形態1におけるものと同様、入力受付部121がメール格納部111に格納されている暗号化ファイルCF1,CF2,CF3,…のいずれかに対し、解除入力(鍵、パスワード等)を受け付けた否か、についての判別を繰り返し行っている。
入力受付部121が、暗号化ファイルCF3に対する解除入力I3を受け付けると、蓄積部133aは、当該解除入力I3を入力格納部112に蓄積すると共に、対応情報に、暗号化ファイルID“CF3”と、解除入力“123”との対をさらに登録する。
こうして、入力格納部112には、暗号化ファイルCF1,CF2,CF3に対応する解除入力I1,I2,I3が格納され、対応情報には、暗号化ファイルID“CF1”,“CF2”,“CF3”と、解除入力“abc”,“abc”,“123”との対が登録される結果となる。
また、処理部13aは、実施の形態1におけるものと同様、指示受付部122が、メール格納部111に格納されている暗号化ファイルCF1,CF2,CF3,…のうちいずれか1つを対象に、暗号解除しなければ行えない処理(例えば、検索処理、出力処理等のうちいずれか1つ)に関する指示を受け付けたか否か、についての判別も行っている。
例えば、指示受付部122が、暗号化ファイルCF1を対象とする検索処理に関する検索指示を受け付けると、処理部13aは、当該暗号化ファイルCF1に対応する解除入力I1が入力格納部112に格納されているか否かを判別する。
ここでは、暗号化ファイルCF1に対する解除入力I1が入力格納部112に格納済みなので、判別結果はYESであり、暗号解除部131aは、当該解除入力I1を基に暗号化ファイルCF1に対する暗号解除を行う。ファイル処理部132aは、暗号解除により得られた暗号解除済みファイルCF1をオープンする。
なお、検索指示の対象が、未だ暗号解除されていない暗号化ファイルである場合、その暗号化ファイルはオープンされない。
また、一の検索指示の対象は、1つの暗号化ファイルとは限らず、2以上の暗号化ファイルであってもよい。一の検索指示の対象が2以上の暗号化ファイルである場合は、各暗号化ファイルに対して順次、または並列的に、上記と同様の処理が行われる。
ファイル処理部132aは、こうしてオープンされた暗号解除済みファイルCF1が有する平文に対して検索処理を行う。
また、指示受付部122が、例えば、暗号化ファイルCF3に対する出力指示を受け付けた場合、暗号解除部131aは、入力格納部112に格納されている解除入力I3を基に暗号化ファイルCF3に対する暗号解除を行い、ファイル処理部132aは、暗号解除済みファイルCF3をオープンし、オープンされた暗号解除済みファイルCF3が有する平文に対して出力処理を行うことできる。
以上、本実施の形態によれば、メールの添付ファイルであり、暗号化された添付ファイルに対し、暗号解除のための入力である解除入力を受け付ける入力受付部121と、解除入力を基に、暗号化された添付ファイルに対し、暗号解除を行う暗号解除部131aと、暗号化された添付ファイルに対し、暗号解除しなければ行えない処理(目的処理)に関する指示を受け付ける指示受付部122と、添付ファイルに対して解除入力が受け付けられた後に当該添付ファイルがクローズされた状態で、指示が受け付けられた場合に、暗号解除部131aが当該解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して指示に対応する目的処理を行うファイル処理部132aとを具備する暗号化メール処理装置1aにより、暗号化された添付ファイルに対する解除入力の再度の受け付けが不要になる。その結果、解除入力を一度受け付けるだけで、暗号解除しなければ行えない処理を何度でも行うことができるので、例えば、ユーザの操作の煩雑さが軽減され、また、処理負荷も軽減され得る。
また、上記暗号化メール処理装置1aにおいて、入力受付部121が受け付けた解除入力を格納し得る入力格納部112と、暗号化された添付ファイルに対し入力受付部121が受け付けた解除入力を、暗号化された添付ファイルに対応付けて、入力格納部112に蓄積する蓄積部133aとをさらに具備し、暗号解除部131aは、指示の受け付けの時点で入力格納部112に解除入力が格納されている場合に、入力格納部112に格納されている解除入力を基に、暗号化された添付ファイルに対し暗号解除を行い、ファイル処理部132aは、暗号解除部131aが入力格納部112に格納されている解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して処理を行うことにより、解除入力を一度受け付けると、その解除入力を入力格納部112に蓄積し、それ以降は、指示の受け付けの度に、入力格納部112に格納されている解除入力を基に暗号解除を行うので、解除入力は一度だけ受け付ければよく、操作の煩雑さを軽減できる。また、後述する実施の形態3のように、暗号化された添付ファイルとは別に暗号解除済みの添付ファイルを蓄積する場合と比べ、記録媒体の資源を節約できる。
なお、入力格納部112は、この実施の形態では、暗号化メール処理装置1自身が有する記憶媒体に格納されているが、例えば、メールサーバなどの外部装置が有する記憶媒体に格納されていてもよく、どこに格納されているかは問わない。
入力格納部112が、外部装置が有する記憶媒体に格納されている場合、蓄積部133aは、暗号化された添付ファイルに対し入力受付部121が受け付けた解除入力を、暗号化された添付ファイルに対応付けて、入力格納部112に蓄積するよう、当該外部装置に依頼(要求)する。暗号解除部131aは、指示の受け付けの時点で入力格納部112に解除入力が格納されている場合に、入力格納部112に格納されている解除入力を外部装置から取得し、取得した解除入力を基に、暗号化された添付ファイルに対し暗号解除を行う。
また、上記暗号化メール処理装置1aにおいて、メールを受信する受信部14と、メールを送信する送信部15とをさらに具備し、暗号化された添付ファイルは、受信部14が受信した受信メール、送信部15が送信しようとする未送信メール、または送信部15が送信したメールに対応する送信済みメール、のいずれかに添付されていることにより、受信メール、未送信メールまたは送信済みメールのいずれかに添付されている暗号化された添付ファイルを対象に、解除入力を一度受け付けるだけで、暗号解除しなければ行えない処理(例えば検索、出力等の処理)を何度でも行うことができる。
なお、本実施の形態における暗号化メール処理装置1aを実現するソフトウェアは、例えば、コンピュータを上記各部(11a,12,13a,14,15,111,112,121,122,131a,132a,133a,134)として機能させるためのプログラムである。
(実施の形態3)
本実施の形態における暗号化メール処理装置1bは、暗号化された添付ファイルとは別に、暗号化された添付ファイルに対応付けて暗号解除済みのファイルを蓄積する。そのため、暗号化された添付ファイルに対して暗号解除した場合、次に添付ファイルをオープンする際には、解除入力が不要であるように構成した点を特徴としている。
図6は、本実施の形態における暗号化メール処理装置1bのブロック図である。暗号化メール処理装置1bは、格納部11b、受付部12、処理部13b、受信部14、送信部15を備える。
格納部11bは、メール格納部111、暗号解除済みファイル格納部113を備える。受付部12は、入力受付部121、指示受付部122を備える。処理部13bは、暗号解除部131、ファイル処理部132b、蓄積部133b、要求部134を備える。
暗号解除済みファイル格納部113は、メール格納部111に格納されている1以上の各メールが有する暗号化された添付ファイルに対し暗号解除を行って得られた1以上の暗号解除済みの添付ファイルを格納し得る。
ファイル処理部132bは、暗号化された添付ファイルに対する指示(検索指示、出力指示等)の受け付けの時点で、当該暗号化された添付ファイルに対応する暗号解除済みの添付ファイルが暗号解除済みファイル格納部113に格納されている場合に、当該暗号解除済みファイル格納部113に格納されている暗号解除済みの添付ファイルに対して、指示に対応する処理(検索処理、出力処理等)を行う。
蓄積部133bは、暗号化された添付ファイルに対し暗号解除部131が暗号解除を行って得られる暗号解除済みの添付ファイルを、当該暗号化された添付ファイルに対応付けて、暗号解除済みファイル格納部113に蓄積する。
なお、かかる対応付けは、例えば、暗号化された添付ファイルと、暗号解除済みの添付ファイルとの対応情報(後述)を用いて行うことができる。
暗号化メール処理装置1bの動作は、実施の形態1における暗号化メール処理装置1の動作に対し、ステップS207の再入力不要化処理およびステップS209の目的処理の詳細を除いて同様なので、暗号化メール処理装置1bの動作説明にも、図2のフローチャートを用いる。
メール格納部111には、実施の形態1と同様、1以上のメール、それぞれのメールの暗号化された添付ファイル(例えばCF1,CF2,…)などが格納されている。
格納部11には、例えば図7に示すような対応情報が格納されている。この対応情報は、暗号化された添付ファイル(暗号化ファイル)と、暗号解除済みの添付ファイル(暗号解除済みファイル)との対応関係を示す情報である。ただし、例えば、共通のファイル識別子と、異なる拡張子との組み合わせや、その他のリンク付けなどによって、暗号化ファイルと暗号解除済みファイルとの対応がとれている場合には、対応情報はなくてもよい。
図7は、本実施の形態における対応情報に関するデータ構造図である。この対応情報には、暗号解除済みファイル格納部113に格納されている1以上の暗号解除済みファイルを識別する1以上の暗号解除済みファイルID(例えば“DF1”,“DF2”,…)が、メール格納部111に格納されている1以上の暗号化ファイルを識別する1以上の暗号化ファイルID(例えば“CF1”,“CF2”,…)と対にして登録され得る。
暗号化ファイルID“CF1”,“CF2”,…と、暗号解除済みファイルID“DF1”,“DF2”,…との対は、暗号化ファイルCF1,CF2,…に対する解除入力(鍵、パスワード等)が受け付けられ、暗号解除が行われて、暗号解除ファイル済みファイルDF1,DF2,…が得られる度に、登録されていく。
(ステップS207)蓄積部133bは、当該暗号化ファイルに対して暗号解除部131が暗号解除して得られた暗号解除済みファイルを、当該暗号化された添付ファイルに対応付けて、暗号解除済みファイル格納部113に蓄積する。これに伴い、例えば処理部13bが、上記の対応情報に、当該暗号解除済みファイルを識別する暗号解除済みファイルIDを、当該暗号化ファイルを識別する暗号化ファイルIDと対にして登録する。
(ステップS209)ファイル処理部132bは、当該指示に対応する処理である目的処理を実行する。
この目的処理において、ファイル処理部132bは、暗号解除済みファイル格納部113に格納されている1以上の暗号解除済みファイルDF1,DF2,…のうち、当該指示が有する暗号化ファイルIDに対応する暗号解除済みファイルIDで識別される暗号解除済みファイルをオープンする。
次に、ファイル処理部132bは、暗号解除済みの添付ファイルをオープンして得られる1以上の平文に対して、当該指示が有する処理種類情報に対応する処理(検索処理、出力処理等)を行う。
その後、ファイル処理部132bは、暗号解除済みの添付ファイルをクローズし、ステップS201に戻る。
このフローチャートによれば、メール格納部111に格納されている1以上のメールが有する1以上の暗号化ファイルCF1,CF2,…それぞれに対して、1回目の指示が受け付けられたとき、フラグはオフなので、上記ステップS203〜S208の処理を経て、ステップS209の目的処理が行われることで、当該1以上の暗号化ファイルCF1,CF2,…に対する1以上の暗号解除済みファイルが暗号解除済みファイル格納部113に蓄積されていくと共に、対応情報には、当該1以上の暗号化ファイルCF1,CF2,…を識別する暗号化ファイルID“CF1”,“CF2”,…と対にして、当該1以上の暗号解除済みファイルを識別する暗号解除済みファイルID“DF1”,“DF2”,…が順次登録されていく。また、これに伴い、処理部13bは、暗号解除情報が有するフラグA1,A2,…を、オフからオンに順次変更していく。
このため、2回目以降の指示が受け付けられたときには、フラグはオンなので、上記ステップS203〜S208の処理を経ることなく、ステップS209に進んで、暗号解除済みファイル格納部113に格納されている暗号解除済みファイルがオープンされるので、解除入力の再度の受け付けが不要になる。
以下、本実施の形態における暗号化メール処理装置1bの具体的な動作例について説明する。以下の動作は、一例に過ぎず、本願発明を何ら限定するものではない。
いま、メール格納部111には、実施の形態1におけるものと同様、2以上のメールM1,M2,…と、メールM1に添付されている暗号化された添付ファイル(暗号化ファイルCF1)と、メールM2に添付されている2以上の暗号化された添付ファイル(暗号化ファイルCF2,CF3,…)とが格納されている。
暗号解除済みファイル格納部113には、暗号化ファイルCF1,CF2に対応する暗号解除済みファイルDF1,DF2が格納されている。ただし、暗号化ファイルCF3に対応する暗号解除済みファイルDF3は、未だ格納されていない。
従って、現時点で、対応情報には、暗号化ファイルID“CF1”,“CF2”…と、暗号解除済みファイルID“DF1”,“DF2”との対が登録されている。
処理部13bは、実施の形態1におけるものと同様、入力受付部121がメール格納部111に格納されている暗号化ファイルCF1,CF2,CF3,…のいずれかに対し、解除入力(鍵、パスワード等)を受け付けた否か、についての判別を繰り返し行っている。
入力受付部121が、暗号化ファイルCF3に対する解除入力I3を受け付けると、暗号解除部131は、当該解除入力I3を基に暗号化ファイルCF3に対する暗号解除を行い、蓄積部133bは、得られた暗号解除済みファイルDF3を暗号解除済みファイル格納部113に蓄積すると共に、対応情報に、暗号化ファイルID“CF3”と、暗号解除済みファイルID“DF3”との対をさらに登録する。
こうして、暗号解除済みファイル格納部113には、暗号化ファイルCF1,CF2,CF3に対応する暗号解除済みファイルDF1,DF2,DF3が格納され、対応情報には、暗号化ファイルID“CF1”,“CF2”,“CF3”と、暗号解除済みファイルID“DF1”,“DF2”,“DF3”との対が登録される結果となる。
また、処理部13bは、実施の形態1におけるものと同様、指示受付部122が、メール格納部111に格納されている暗号化ファイルCF1,CF2,CF3,…のうちいずれか1つを対象に、暗号解除しなければ行えない処理(例えば、検索処理、出力処理等のうちいずれか1つ)に関する指示を受け付けたか否か、についての判別も行っている。
例えば、指示受付部122が、暗号化ファイルCF1を対象とする検索処理に関する検索指示を受け付けると、ファイル処理部132bは、暗号解除済みファイル格納部113に格納されている暗号解除済みファイルDF1をオープンする。
なお、検索指示の対象が、未だ暗号解除されていない暗号化ファイルである場合、その暗号化ファイルはオープンされない。
また、一の検索指示の対象は、1つの暗号化ファイルとは限らず、2以上の暗号化ファイルであってもよい。一の検索指示の対象が2以上の暗号化ファイルである場合は、各暗号化ファイルに対して順次、または並列的に、上記と同様の処理が行われる。
ファイル処理部132bは、こうしてオープンされた暗号解除済みファイルDF1が有する平文に対して検索処理を行う。
また、指示受付部122が、例えば、暗号化ファイルCF3に対する閲覧のための出力指示を受け付けた場合、ファイル処理部132bは、暗号解除済みファイル格納部113に格納されている暗号解除済みファイルDF3をオープンし、ファイル処理部132bは、オープンされた暗号解除済みファイルD3が有する平文に対して出力処理を行うことできる。
以上、本実施の形態によれば、メールの添付ファイルであり、暗号化された添付ファイルに対し、暗号解除のための入力である解除入力を受け付ける入力受付部121と、解除入力を基に、暗号化された添付ファイルに対し、暗号解除を行う暗号解除部131と、暗号化された添付ファイルに対し、暗号解除しなければ行えない処理(目的処理)に関する指示を受け付ける指示受付部122と、添付ファイルに対して解除入力が受け付けられた後に当該添付ファイルがクローズされた状態で、指示を受け付けた場合に、暗号解除部131が解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して指示に対応する目的処理を行うファイル処理部132bとを具備する暗号化メール処理装置1bにより、暗号化された添付ファイルに対する解除入力の再度の受け付けが不要になる。その結果、解除入力を一度受け付けるだけで、暗号解除しなければ行えない処理を何度でも行うことができるので、例えば、ユーザの操作の煩雑さが軽減され、また、処理負荷も軽減され得る。
また、上記暗号化メール処理装置1bにおいて、暗号解除済みの添付ファイルを格納し得る暗号解除済みファイル格納部113と、暗号化された添付ファイルに対し暗号解除部131が暗号解除を行って得られる暗号解除済みの添付ファイルを、暗号化された添付ファイルに対応付けて暗号解除済みファイル格納部113に蓄積する蓄積部133bをさらに具備し、ファイル処理部132bは、指示の受け付けの時点で、暗号解除済みファイル格納部113に暗号解除済みの添付ファイルが格納されている場合に、暗号解除済みファイル格納部113に格納されている暗号解除済みの添付ファイルに対して処理を行うことにより、解除入力を一度受け付けると、その解除入力を基に暗号解除を行い、得られた暗号解除済みの添付ファイルを暗号解除済みファイル格納部113に蓄積し、それ以降は、指示の受け付けの度に、暗号解除済みファイル格納部113に格納されている暗号解除済みの添付ファイルをオープンするので、解除入力は一度だけ受け付ければよく、操作の煩雑さを軽減できる。また、暗号解除は一度だけ行えばよいので、処理負荷も軽減できる。さらには、暗号解除済みの添付ファイルを、元の暗号化された添付ファイル(元ファイル)とは別に蓄積する(つまり元ファイルも残す)ことで、例えば、元ファイルを転送する場合に、再度の暗号化を行う必要がなく、処理負荷を一層軽減できる。
なお、暗号解除済みファイル格納部113は、この実施の形態では、暗号化メール処理装置1自身が有する記憶媒体に格納されているが、例えば、メールサーバなどの外部装置が有する記憶媒体に格納されていてもよく、どこに格納されているかは問わない。
暗号解除済みファイル格納部113が、外部装置が有する記憶媒体に格納されている場合、蓄積部133bは、暗号化された添付ファイルに対し暗号解除部131が暗号解除を行って得られる暗号解除済みの添付ファイルを、暗号化された添付ファイルに対応付けて暗号解除済みファイル格納部113に蓄積するよう、当該外部装置に依頼(要求)する。ファイル処理部132bは、指示の受け付けの時点で、暗号解除済みファイル格納部113に暗号解除済みの添付ファイルが格納されている場合に、暗号解除済みファイル格納部113に格納されている暗号解除済みの添付ファイルを外部サーバから取得し、取得した暗号解除済みの添付ファイルに対して処理を行う。
また、上記暗号化メール処理装置1bにおいて、メールを受信する受信部14と、メールを送信する送信部15とをさらに具備し、暗号化された添付ファイルは、受信部14が受信した受信メール、送信部15が送信しようとする未送信メール、または送信部15が送信したメールに対応する送信済みメール、のいずれかに添付されていることにより、受信メール、未送信メールまたは送信済みメールのいずれかに添付されている暗号化された添付ファイルを対象に、解除入力を一度受け付けるだけで、暗号解除しなければ行えない処理(例えば検索、出力等の処理)を何度でも行うことができる。
なお、本実施の形態における暗号化メール処理装置1bを実現するソフトウェアは、コンピュータを上記各部(11b,12、13b,14,15,111,113,131,132b,133b,134)として機能させるためのプログラムである。
なお、上記実施の形態2,3において、閲覧のための出力処理を行う場合は、(既に解除入力を受け付け済みであっても)解除入力を要求する一方、例えば検索処理など、出力以外の処理の場合は、暗号解除済みの添付ファイル(実施の形態2における入力格納部112に格納されている解除入力を基に暗号解除して得られる暗号解除済みファイル、または、実施の形態3における暗号解除済みファイル格納部113に格納されている暗号解除済みファイル)に対して検索等の処理を行うように、暗号化メール処理装置1a,1bを構成してもよい。以下、このような変形例について説明する。
(実施の形態2,3の変形例)
本変形例における暗号化メール処理装置1a,1bは、実施の形態2,3における暗号化メール処理装置1a,1bと同様の構成を有する。ただし、要求部134は、暗号化された添付ファイルに対する出力指示の受け付けの時点で、当該添付ファイルの暗号解除のための解除入力が受け付け済みである場合にも、当該添付ファイルの暗号解除のための解除入力を要求する。
すなわち、この変形例の要求部134は、暗号化された添付ファイルに対する指示の受け付けの時点で、当該添付ファイルに対する解除入力が受け付け済みである場合、当該指示が出力処理(第一の処理)を行うための出力指示(第一指示)であれば、解除入力を要求する一方、当該指示が検索処理(第一の処理以外の第二の処理)を行うための検索指示(第二指示)であれば、解除入力を要求しないことを特徴としている。
次に、本変形例における暗号化メール処理装置1a,1bの動作が、実施の形態2,3における暗号化メール処理装置1a,1bの動作と異なるのは、基本的にはステップS209の目的処理だけである。
図8は、本変形例における目的処理の詳細に関するフローチャートである。
(ステップS801)ファイル処理部132a,132bは、当該指示が閲覧のための出力指示であるか否かを判別する。
当該指示が閲覧のための出力指示である場合はステップS802に進み、当該指示が閲覧のための出力指示でない(例えば検索指示など、出力以外の指示である)場合はステップS811に進む。
(ステップS802)要求部134は、当該暗号化ファイルに対する解除入力(鍵、パスワード等)を、ディスプレイ等の出力デバイスを介してユーザに要求する。
(ステップS803)処理部13a,13bは、当該要求に対する解除入力を入力受付部121が受け付けたか否かを判別する。
当該要求に対する解除入力を入力受付部121が受け付けた場合はステップS804に進み、受け付けていない場合は同様の判別を繰り返す。なお、未入力の期間が一定時間を超えた場合は、処理部13a,13bがタイムアウトと判断し、図2のフローチャートにリターンしてもよい。
(ステップS804)暗号解除部131a,131は、当該解除入力を基に、当該暗号化ファイルに対し暗号解除を行う。
(ステップS805)処理部13a,13bは、暗号解除部131a,131による暗号解除が成功したか否かを判別する。
暗号解除部131a,131による暗号解除が成功した場合はステップS806に進み、成功しなかった場合はステップS802に戻る。
(ステップS806)処理部13a,13bは、実施の形態2,3におけるものと同様の再入力不要化処理を実行する。
(ステップS807)ファイル処理部132a,132bは、当該暗号化ファイルに対応する暗号解除済みの添付ファイル(実施の形態2における入力格納部112に格納されている解除入力を基に暗号解除して得られる暗号解除済みファイル、または、実施の形態3における暗号解除済みファイル格納部113に格納されている暗号解除済みファイル)をオープンする。
(ステップS808)処理部13a,13bは、ディスプレイ等の出力デバイスを介して、当該暗号化ファイルの閲覧のための出力処理を行う。これにより、例えばディスプレイに、当該暗号化ファイルに対応する暗号解除済み添付ファイルが有する平文が表示される。
(ステップS809)処理部13a,13bは、格納部11に格納されている暗号解除情報が有する、当該暗号化ファイルを識別する暗号化ファイルIDに対応するフラグをオンにする。
(ステップS810)ファイル処理部132a,132bは、当該暗号解除済みの添付ファイルをクローズする。
その後、図2のフローチャートにリターンする。
(ステップS811)ファイル処理部132a,132bは、当該暗号化ファイルに対応する暗号解除済みの添付ファイル(実施の形態2における入力格納部112に格納されている解除入力を基に暗号解除して得られる暗号解除済みファイル、または、実施の形態3における暗号解除済みファイル格納部113に格納されている暗号解除済みファイル)をオープンする。
(ステップS812)ファイル処理部132a,132bは、暗号解除済みの添付ファイルが有する平文に対し、当該指示に対応する処理(例えば検索処理など、出力以外の処理)を実行する。
(ステップS813)ファイル処理部132a,132bは、当該暗号解除済みの添付ファイルをクローズする。
その後、図2のフローチャートにリターンする。
以上、本変形例によれば、実施の形態2,3の暗号化メール処理装置1a,1bにおいて、指示は、暗号化された添付ファイルに対する閲覧のための出力処理に関する出力指示(第一指示)、または暗号化された添付ファイルに対する検索処理(第一の処理以外の第二の処理)に関する指示(第二指示)であり、出力指示(第一指示)の受け付けの時点で解除入力が受け付け済みである場合にも解除入力を要求する要求部134をさらに具備し、ファイル処理部132a,132bは、出力指示(第一指示)の受け付けに応じて、暗号解除部131a,131が要求に対する解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して出力処理(第一処理)を行い、検索指示(第二指示)の受け付けに応じて、暗号解除部131a,131が要求に対する解除入力を基に暗号解除を行って得られる暗号解除済みの添付ファイルに対して検索処理(第二の処理)を行うことにより、出力指示(第一指示)に対しては、暗号解除のための解除入力を要求し、この要求に対する解除入力を基に暗号解除を行うので、添付ファイルの第三者による閲覧を防止(使用を抑制)できる。他方、検索指示(第二指示)に対しては、かかる要求および当該要求に対する解除入力の受け付けなしで、暗号解除済みの添付ファイルに対して検索処理を行うので、ユーザの操作の煩雑さを軽減できる。
図9は、上記各実施の形態および変形例に記したプログラムを実行して、暗号化メール処理装置1,1a,1bを実現するコンピュータシステム900の外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図9において、コンピュータシステム900は、CD−ROMドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、ディスプレイ904とを備える。なお、キーボード902やマウス903やディスプレイ904をも含むシステム全体をコンピュータと呼んでもよい。
図10は、コンピュータシステム900の内部構成を示す図である。図10において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915と、インターネット等のネットワークへの接続を提供するネットワークカード916と、を備える。
コンピュータシステム900に、暗号化メール処理装置1,1a,1bの機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、インターネット等のネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは、実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。また、CD−ROM921に代えて他の記録媒体(例えば、DVDやメモリカード等)を介して、プログラムがコンピュータシステム900に読み込まれてもよい。
プログラムは、コンピュータの詳細を示す901に、暗号化メール処理装置1,1a,1bの機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
なお、暗号化メール処理装置1,1a,1bは、上記のような据え置き型のコンピュータシステム900に限らず、例えばスマートフォンやタブレット端末やノートPCといった携帯型のコンピュータシステムで実現されてもよい。この場合、図16および図17に記載のハードウェアのうち、ハードディスク914、CD−ROMドライブ905およびCD-ROM921は、例えば、フラッシュメモリ、メモリカードスロットおよびメモリカードにそれぞれ置き換えられてよいし、また、キーボード902およびマウス903は、例えばタッチパネルへの置き換えが可能である。
なお、上記各実施の形態および変形例に記したプログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェア(ネットワークカードなど)のみによって行われる処理は含まれない。
また、プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態および変形例において、一の装置に存在する2以上の通信手段(送信部15、受信部14など)は、物理的に一の媒体で実現されてもよいことはいうまでもない。
また、上記各実施の形態および変形例において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。