(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、電子メールを外部ネットワーク上のメールサーバに暗号化されていない電子メールが保持されている場合に比べて、メールサーバへの不正アクセスによる情報漏洩を低減させることを目的とする。
【課題を解決するための手段】
【0005】
本発明に係るプログラムは、コンピュータを、電子メールを暗号化する暗号化手段、前記暗号化手段により暗号化された電子メールを復号する復号手段、クライアント宛の電子メールを一時保持するメールサーバから前記暗号化手段により暗号化されていない電子メールを取得すると、当該電子メールを前記暗号化手段に暗号化させた後、前記メールサーバへ送信することで、前記メールサーバに保持されている暗号化されていない当該電子メールを暗号化された当該電子メールで置き換えるよう制御する暗号化制御手段、前記クライアントからの電子メール受信要求に応じて電子メールを前記メールサーバから受信すると、当該電子メールを前記復号手段に復号させた後、前記クライアントへ送信するよう電子メールの中継制御を行う中継制御手段、として機能させる。
【0006】
また、前記暗号化制御手段は、前記
メールサーバから取得
した暗号化されていない電子メールを一時記憶手段に一時記憶させ、前記中継制御手段は、前記クライアントにより受信要求された電子メールが前記一時記憶手段に記憶されていた場合、その記憶された電子メールを前記一時記憶手段から読み出して前記クライアントへ送信することを特徴とする。
【0007】
本発明に係る電子メール中継装置は、電子メールを暗号化する暗号化手段と、前記暗号化手段により暗号化された電子メールを復号する復号手段と、クライアント宛の電子メールを一時保持するメールサーバから前記暗号化手段により暗号化されていない電子メールを取得すると、当該電子メールを前記暗号化手段に暗号化させた後、前記メールサーバへ送信することで、前記メールサーバに保持されている暗号化されていない当該電子メールを暗号化された当該電子メールで置き換えるよう制御する暗号化制御手段と、前記クライアントからの電子メール受信要求に応じて電子メールを前記メールサーバから受信すると、当該電子メールを前記復号手段に復号させた後、前記クライアントへ送信するよう電子メールの中継制御を行う中継制御手段と、を有することを特徴とする。
【0008】
本発明に係る電子メールシステムは、クライアント宛の電子メールを一時保持するメールサーバと、前記メールサーバから前記クライアントへ送信される電子メールを中継する電子メール中継装置と、を有し、前記電子メール中継装置は、電子メールを暗号化する暗号化手段と、前記暗号化手段により暗号化された電子メールを復号する復号手段と、前記メールサーバから前記暗号化手段により暗号化されていない電子メールを取得すると、当該電子メールを前記暗号化手段に暗号化させた後、前記メールサーバへ送信するよう制御する暗号化制御手段と、前記クライアントからの電子メール受信要求に応じて電子メールを前記メールサーバから受信すると、当該電子メールを前記復号手段に復号させた後、前記クライアントへ送信するよう電子メールの中継制御を行う中継制御手段と、を有し、前記メールサーバは、保持している暗号化されていない当該電子メールを、前記電子メール中継装置から送信されてきた暗号化された当該電子メールで置き換えることを特徴とする。
【発明の効果】
【0009】
請求項1に記載の発明によれば、電子メールを外部ネットワーク上のメールサーバに暗号化されていない電子メールが保持されている場合に比べて、メールサーバへの不正アクセスによる情報漏洩を低減させることができる。
【0010】
請求項2に記載の発明によれば、電子メールを復号しなくても暗号化されていない電子メールをクライアントへ送信することができる。
【0011】
請求項3に記載の発明によれば、電子メールを外部ネットワーク上のメールサーバに暗号化されていない電子メールが保持されている場合に比べて、メールサーバへの不正アクセスによる情報漏洩を低減させることができる。
【0012】
請求項4に記載の発明によれば、電子メールを外部ネットワーク上のメールサーバに暗号化されていない電子メールが保持されている場合に比べて、メールサーバへの不正アクセスによる情報漏洩を低減させることができる。
【図面の簡単な説明】
【0013】
【
図1】本発明に係る電子メールシステムの実施の形態1における全体構成及びゲートウェイのブロック構成を示した図である。
【
図2】実施の形態1におけるゲートウェイのハードウェア構成図である。
【
図3】実施の形態1における暗号化処理を示したフローチャートである。
【
図4】実施の形態1における暗号化処理を示したシーケンス図である。
【
図5】実施の形態1における中継処理を示したフローチャートである。
【
図6】実施の形態1における中継処理を示したシーケンス図である。
【
図7】本発明に係る電子メールシステムの実施の形態2における全体構成及びゲートウェイのブロック構成を示した図である。
【
図8】実施の形態2における暗号化処理を示したフローチャートである。
【
図9】実施の形態2におけるUID対応テーブルのデータ構成例を示した図である。
【
図10】実施の形態2における中継処理を示したフローチャートである。
【
図11】実施の形態2におけるUIDLのデータ構成例を示した図である。
【発明を実施するための形態】
【0014】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【0015】
実施の形態1.
図1は、本実施の形態における電子メールシステムの全体構成及びゲートウェイのブロック構成を示した図である。
図1には、インターネット3上に設置された社外のメールサーバ2と、LAN(ローカルエリアネットワーク)4に接続された社内設置のゲートウェイ10及びクライアント1と、が示されている。メールサーバ2は、クライアント1宛の電子メールを保持管理するサーバコンピュータである。クライアント1は、PC等の情報処理装置により実現され、メールサーバ2により保持されている電子メールをゲートウェイ10を介して受信する。ゲートウェイ10は、本発明に係る電子メール中継装置に相当し、メールサーバ2からクライアント1へ送信される電子メールを中継する。
【0016】
なお、LAN4には、通常、複数台のクライアント1が接続されているが、本実施の形態では説明に用いないので便宜的に1台のクライアント1のみを図示した。
【0017】
図2は、本実施の形態におけるゲートウェイ10に内蔵されたコンピュータのハードウェア構成図である。本実施の形態においてゲートウェイ10に内蔵されるコンピュータは、従前から存在する汎用的なハードウェア構成で実現してよい。すなわち、コンピュータは、
図2に示したようにCPU31、ROM32、RAM33、ハードディスクドライブ(HDD)34、インターネット3との通信手段として設けられたネットワークインタフェース35、LAN4との通信手段として設けられたLANインタフェース36を内部バス37に接続して構成される。
【0018】
図1に戻り、本実施の形態においてゲートウェイ10は、第1通信処理部11、第2通信処理部12、暗号化部13、暗号化制御部14、復号部15、中継制御部16、ユーザ情報記憶部17及び共通鍵記憶部18を有している。なお、本実施の形態の説明に用いない構成要素については図から省略している。
【0019】
第1通信処理部11は、ネットワークインタフェース35により実現され、インターネット3を介してメールサーバ2との間でデータ通信を行う。第2通信処理部12は、LANインタフェース36により実現され、LAN4を介してクライアント1との間でデータ通信を行う。暗号化部13は、暗号化手段として設けられ、電子メールを暗号化する。暗号化制御部14は、暗号化制御手段として設けられ、メールサーバ2から暗号化部13により暗号化されていない電子メールを取得すると、当該電子メールを暗号化部13に暗号化させた後、メールサーバ2へ送信することで、メールサーバ2に保持されている暗号化されていない当該電子メールを暗号化された当該電子メールで置き換えるよう制御する。復号部15は、復号手段として設けられ、暗号化部13により暗号化された電子メールを復号する。
【0020】
中継制御部16は、中継制御手段として設けられ、クライアント1からの電子メール受信要求に応じて電子メールをメールサーバ2から受信すると、その電子メールが暗号化部13により暗号化されている場合、当該電子メールを復号部15に復号させた後、電子メール受信要求を発したクライアント1へ送信するよう電子メールの中継制御を行う。ユーザ情報記憶部17は、電子メールを利用するユーザのメールアカウント名及びパスワードの組をユーザ情報として記憶する。メールアカウント名とパスワードは、ユーザに予め登録してもらうか、クライアント1からの初回のPOP(Post Office Protocol)受信要求時のデータより取得するものとする。共通鍵記憶部18は、暗号化部13による暗号化、復号部15による復号の際に用いる共通鍵を記憶する。
【0021】
ゲートウェイ10における各構成要素11〜16は、ゲートウェイ10を形成するコンピュータと、コンピュータに搭載されたCPU31で動作するプログラムとの協調動作により実現される。また、記憶部17,18は、ゲートウェイ10に搭載されたHDD34にて実現される。あるいは、RAM33で実現してもよい。
【0022】
また、本実施の形態で用いるプログラムは、通信手段により提供することはもちろん、CD−ROMやUSBメモリ等のコンピュータ読み取り可能な記録媒体に格納して提供することも可能である。通信手段や記録媒体から提供されたプログラムはコンピュータにインストールされ、コンピュータのCPU31がプログラムを順次実行することで各種処理が実現される。
【0023】
次に、本実施の形態における動作について説明する。本実施の形態は、メールサーバ2において保持管理される電子メールをゲートウェイ10が暗号化する暗号化処理と、クライアント1がメールサーバ2が保持している電子メールを受信する際にその電子メールをゲートウェイ10が中継する中継処理と、に大別できる。まず、暗号化制御部14による制御のもと実施される暗号化処理について
図3に示したフローチャートを用いて説明する。なお、暗号化処理に対応するプロトコルレベルで示したシーケンスを
図4に示す。本実施の形態における暗号化処理は、ユーザ情報記憶部17にユーザ情報が登録された各ユーザに対して定周期的に実施してもよいし、クライアント1からの受信要求の頻度に応じて動的に実施するようにしてもよい。本実施の形態では、全てのユーザに対して同等の処理を行えばよいので、以下の説明では、クライアント1を使用する一ユーザに対する処理として説明する。また、一ユーザ宛に複数の電子メールがメールサーバ2に保持されている場合があるが、各電子メールに対して同等の処理を行えばよいので、ここでは特に断らない限り1つの電子メールに対する処理として説明する。
【0024】
ゲートウェイ10は、まず、ユーザ情報記憶部17に事前に登録されているメールアカウント名及びパスワードを用いたメールサーバ2への認証後、メールサーバ2上に当該ユーザの電子メールの有無を確認する。なお、本実施の形態では、POPプロトコルを用いる場合を例にしているが、IMAP(Internaet Message Access Protocol)など他のメールプトロコルを用いてもよい。
【0025】
メールサーバ2に受信対象とする当該ユーザ宛の電子メールがない場合(ステップ101でN)、暗号化処理は終了する。メールサーバ2に電子メールがある場合(ステップ101でY)、暗号化制御部14は、その電子メールのヘッダ情報を取得し、その情報を元に暗号化部13によりすでに暗号化されているかどうかを判断する。暗号化されていた場合(ステップ102でN)、当該電子メールに対する処理を終了する。一方、暗号化されていない場合(ステップ102でY)、暗号化制御部14は、その暗号化されていない電子メールをメールサーバ2から取得する(ステップ103)。電子メールが取得されると、暗号化部13は、その電子メール(メッセージ本文のみならずヘッダ情報や添付ファイルを含んだ電子メール全体)を共通鍵記憶部18に記憶された共通鍵を用いて暗号化する(ステップ104)。
【0026】
暗号化制御部14は、暗号化した電子メール(電子メールデータ)にヘッダ情報を新たに追加し、そのヘッダ情報に暗号化済みを示す情報を付加した後、メールサーバ2へ送信する(ステップ105)。なお、ステップ102では、ここで設定した暗号化済みを示す情報を参照して暗号化済みか否かを判断している。なお、SMTP(Simple Mail Transfer Protocol)の認証情報はユーザに予め入力してもらってもよいし、POPと同一の認証情報で試行して失敗した場合に入力を促すようにしてもよい。
【0027】
メールサーバ2は、暗号化された電子メールが送信されてくると、保持している暗号化されていない電子メールを、ゲートウェイ10から送信されてきた電子メール、すなわち暗号化されている電子メールで置き換える。
【0028】
本実施の形態においては、以上のようにして、メールサーバ2に電子メールを暗号化した状態にて保持させるようにした。また、暗号化されていない電子メールを暗号化されている電子メールで置き換えることで記憶容量の増加も極力抑えられる。更に、電子メールを暗号化した状態にて保持させることで不正アクセスによる情報漏洩を防げる。厳密には、メールサーバ2がクライアント1宛の電子メール(暗号化されていない電子メール)を受け付けてから前述した暗号化処理により生成された暗号化された電子メールで置き換えられるまでの間にタイムラグが生じうるが、クライアント1が電子メールをメールサーバ2から受け取るまでの間、メールサーバ2に暗号化されていない状態のまま電子メールを保持させておく場合に比して情報漏洩の機会は削減されることになる。
【0029】
続いて、中継制御部16による制御のもと実施される中継処理について
図5に示したフローチャートを用いて説明する。なお、中継処理に対応するプロトコルレベルで示したシーケンスを
図6に示す。本実施の形態における中継処理は、クライアント1からの電子メールの受信要求を受信することに伴い実施される。
【0030】
すなわち、クライアント1からの電子メールの受信要求を取得すると(ステップ121)、ゲートウェイ10は、当該ユーザのメールアカウント名及びパスワードを用いたメールサーバ2への認証後、メールサーバ2に受信対象とする当該ユーザ宛の電子メールの存在を確認する。この処理は暗号化処理と同じでよい。メールサーバ2に当該ユーザ宛の電子メールがない場合(ステップ122でN)、中継処理は終了する。メールサーバ2に電子メールがある場合(ステップ122でY)、中継制御部16は、当該ユーザ宛の電子メールをメールサーバ2から受信する(ステップ123)。
【0031】
続いて、中継制御部16は、受信した電子メールのヘッダ情報を参照することで当該電子メールが暗号化されているかどうかを判断する。電子メールが暗号化されている場合(ステップ124でY)、復号部15は、その電子メール(ヘッダ情報を含んだメッセージ全体)を共通鍵記憶部18に記憶された共通鍵を用いて復号する(ステップ125)。暗号化されていなければ(ステップ124でN)、復号する必要はない。なお、前述した暗号化処理の実行後、次の周期で暗号化処理が実行される前にメールサーバ2により受け付けられた電子メールが、ここでいう暗号化されていない電子メールに該当する。
【0032】
ところで、暗号化された電子メールには、ステップ105においてヘッダ情報が追加されているので、復号した電子メールからステップ105において追加したヘッダ情報を削除することで、クライアント1に暗号化の有無を意識させないようにしてもよい。
【0033】
そして、中継制御部16は、暗号化されていない状態の電子メールを受信要求が発せられたクライアント1へ送信する(ステップ126)。なお、本実施の形態では、受信要求受付時点において、電子メールが暗号化されているか否かに関係なくメールサーバ2に保持されている当該ユーザ宛の電子メールの全てをクライアント1へ送信するようにしたが、暗号化されていた電子メールのみをクライアント1へ送信するようにしてもよい。
【0034】
本実施の形態におけるゲートウェイ10は、以上のようにしてメールサーバ2に保持されている電子メールをクライアント1へ中継する。本実施の形態では、電子メールを暗号化して社外に設置のメールサーバ2に保持させるので、LAN4に接続された社内側に電子メールを前もって取得し保持させておく必要もない。換言すると、コストをかけて電子メールを保持するための記憶装置等を社内に設置する必要もない。
【0035】
実施の形態2.
上記実施の形態1に対し、本実施の形態では、キャッシュを有効利用することを特徴としている。
図7は、実施の形態1における
図1に対応する構成図である。なお、実施の形態1と同じ構成要素には、同じ符号を付け説明を適宜省略する。本実施の形態におけるゲートウェイ10は、実施の形態1に示した構成にキャッシュデータ記憶部19、UID(Unique ID)情報記憶部20及びUIDL(Unique ID Listing)記憶部21を追加した構成を有している。各記憶部19〜21に記憶される情報については動作の説明と共に説明する。記憶部19〜21は、ゲートウェイ10に搭載されたHDD34にて実現される。あるいは、RAM33で実現してもよい。
【0036】
次に、本実施の形態における動作について説明する。本実施の形態は、実施の形態1と同様に暗号化処理と中継処理とを実行する。本実施の形態は、キャッシュデータを有効利用する処理以外は基本的には実施の形態1と同じでよい。まず、暗号化制御部14による制御のもと実施される暗号化処理について
図8に示したフローチャートを用いて説明する。なお、同じ処理には同じステップ番号を付けて説明を適宜省略する。
【0037】
暗号化制御部14は、実施の形態1と同様に処理することで、暗号化されていない電子メールをメールサーバ2から取得すると(ステップ101〜103)、その取得した暗号化されていない電子メールをキャッシュデータとしてキャッシュデータ記憶部19に保存する(ステップ201)。この際、暗号化制御部14は、取得した電子メールを一意に識別するためのUID(暗号化前UID)に、当該電子メールをキャッシュデータ記憶部19に保存したことを示す“有り”という情報を対応させてUID情報としてUID情報記憶部20に登録する(ステップ202)。
図9には、UID情報をテーブル形式にて登録するためのUID対応テーブルが示されている。UID情報は、暗号化する前の電子メールのUID(暗号化前UID)と、後段の処理において取得し対応付けられる、暗号化後の電子メールのUID(暗号化後UID)と、当該電子メールがキャッシュデータとしてキャッシュデータ記憶部19に保存されているか否かを示す情報(キャッシュデータ)と、が対応付けして生成される。なお、キャッシュデータ記憶部19のキャッシュ領域が逼迫し、新しいキャッシュデータを保持するために古いキャッシュデータの削除が必要な場合、古いキャッシュデータの削除とともにUID対応テーブルに当該キャッシュデータが保持されていないこと、すなわち“有り”に代えて“無し”を設定する。
【0038】
続いて、暗号化制御部14は、暗号化した後、電子メールをメールサーバ2へ送信することで暗号化されていない電子メールと置き換えさせる(ステップ104,105)。暗号化された電子メールが登録されると、メールサーバ2は、暗号化した電子メールのUIDをゲートウェイ10に送信する。暗号化制御部14は、メールサーバ2から送信されてきた電子メールのUIDを受信すると、当該電子メールのUID情報の暗号化後UIDに追加登録する(ステップ203)。これにより、1つの電子メールに対する暗号化前と暗号化後の各UIDが対応付けられる。
【0039】
続いて、中継制御部16による制御のもと実施される中継処理について
図10に示したフローチャートを用いて説明する。
【0040】
クライアント1からの電子メールの受信要求に応じて(ステップ121)、中継制御部16は、認証後、メールサーバ2に受信対象の電子メールの有無を確認する。実施の形態1においては説明を省略したが、このとき、中継制御部16は、メールサーバ2からUIDLコマンドで取得されるリスト(UIDL)をUIDL記憶部21に登録する。この取得したUIDL記憶部21に登録されるUIDLのデータ構成例を
図11に示す。UIDLには、電子メールを識別するメッセージ番号に暗号化後のUIDが対応付けして設定される。ゲートウェイ10は、この取得したUIDLをクライアント1へ送信する。
【0041】
電子メールの有無を確認した結果、メールサーバ2に電子メールが存在する場合(ステップ122でY)、中継制御部16は、クライアント1から受信要求された電子メールがキャッシュデータとしてキャッシュデータ記憶部19に保存されているかどうかを確認する。なお、キャッシュデータ記憶部19には、暗号化されていない電子メールが保存されている。ここで、保存されていなければ(ステップ221でN)、実施の形態1と同様に、中継制御部16は、当該ユーザ宛の電子メールをメールサーバ2から受信する(ステップ123)。そして、その受信した電子メールが暗号化されていれば復号し(ステップ124でY,125)、復号により暗号化されていない状態の電子メールを受信要求が発せられたクライアント1へ送信する(ステップ126)。
【0042】
一方、暗号化されていない状態の電子メールがキャッシュデータ記憶部19に保存されている場合(ステップ221でY)、中継制御部16は、キャッシュデータ記憶部19に登録されている電子メールをクライアント1へ送信する(ステップ222)。但し、この場合、本来メールサーバ2から取得することになる電子メールを取得しないので、メールサーバ2には、該当する電子メールがそのまま残された状態になってしまう。そこで、中継制御部16は、メールサーバ2に保持されている電子メールを削除する(ステップ223)。
【0043】
ところで、上記処理手順の説明において、ゲートウェイ10は、クライアント1からの受信要求に応じて認証を行った後に電子メールの有無を確認している(ステップ121,122)。但し、厳密には、次のような手順にて処理が実施される。
【0044】
すなわち、クライアント1は、受信要求を発することで認証を実施させ、その後に送られてくるUIDLを参照して受信対象の電子メールを特定してゲートウェイ10に通知する。つまり、クライアント1は、ステップ121において受信要求を発した後ステップ122の実施の前に受信対象の電子メールを指定している。このことは、実施の形態1においても同様である。
【0045】
このように、クライアント1は、UIDLに設定されたUIDによって受信対象の電子メールを特定することになるが、本実施の形態の場合、クライアント1がゲートウェイ10に送信するUIDは暗号化後UIDである。そこで、中継制御部16は、UID対応テーブルを参照して、送信されてきた暗号化後UIDを暗号化前UIDに変換して、キャッシュデータ記憶部19に、該当する電子メール(暗号化されていない電子メール)が登録されているかを確認することになる。そして、前述したように、該当する電子メールがキャッシュデータ記憶部19に保存されている場合(ステップ221でY)、中継制御部16は、キャッシュデータ記憶部19に登録されている電子メールをクライアント1へ送信する(ステップ222)。
【0046】
以上のようにして、該当する電子メールがクライアント1へ送信されると、中継制御部16は、当該電子メールのUID情報をUID対応テーブルから削除する(ステップ224)。