(57)【要約】【課題】  鍵を紛失した場合であっても、メールの受信を再開することができるメールシステムおよびメール送信方法を提供する。【解決手段】  外部端末２０の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を保持するメールサーバ１０と、自分の鍵を紛失した場合に仮の鍵を作り、仮の鍵をメールサーバ１０の公開鍵で暗号化してメールサーバ１０に送信する外部端末２０とを備え、外部端末２０は、メールサーバ１０から仮の鍵で暗号化された外部端末２０の本来の鍵を受け取った場合に、本来の鍵を復号化し復号化された鍵を自分の鍵とする。メールサーバ１０は、外部端末２０から仮の鍵を受け取った場合に、外部端末２０の本来の鍵を外部端末２０から受け取った仮の鍵で暗号化して外部端末２０に送信する。【選択図】  図１
2006020067.tif 000002
【特許請求の範囲】
【請求項１】
外部端末の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を保持するメールサーバと、
仮の鍵を作り、仮の鍵を前記メールサーバの公開鍵で暗号化して前記メールサーバに送信する外部端末と
を備え、
前記メールサーバは、前記外部端末から仮の鍵を受け取った場合に、前記外部端末の本来の鍵を前記外部端末から受け取った仮の鍵で暗号化して前記外部端末に送信し、
前記外部端末は、前記メールサーバから仮の鍵で暗号化された前記外部端末の本来の鍵を受け取った場合に、本来の鍵を復号化し、復号化された鍵を自分の鍵とするメールシステム。
【請求項２】
前記メールサーバは、ＬＡＮ内に設けられており、ＬＡＮの外部の前記外部端末宛のメールを受信した場合に、メールを前記外部端末の鍵で暗号化して前記外部端末へ送信し、
前記外部端末は、前記メールサーバから暗号化されたメールを受信した場合に、復号化された自分の鍵を用いて、メールを復号する請求項１に記載のメールシステム。
【請求項３】
前記ＬＡＮの内部に設けられている内部端末を更に備え、
前記メールサーバは、前記外部端末から前記内部端末への暗号化メールを受信した場合に、当該暗号化メールを前記外部端末の鍵で復号化して前記内部端末に送信する請求項２に記載のメールシステム。
【請求項４】
前記メールサーバは、前記内部端末から受信したメールの宛先が、前記ＬＡＮ内への宛先である場合には、メールの暗号化を禁止する請求項３に記載のメールシステム。
【請求項５】
前記メールサーバは、前記外部端末へ暗号化を行わないでメールを送信する場合には、当該メールを一旦保持し、所定の時間が経過した後に送信する請求項３に記載のメールシステム。
【請求項６】
前記メールサーバは、前記内部端末の要求に基づいて、いずれの前記外部端末の利用者のアカウントの鍵を保持しているかを、当該内部端末へ表示させる請求項３に記載のメールシステム。
【請求項７】
前記メールサーバは、前記外部端末の利用者のアカウント毎であって、かつ有効期限毎に予め用意された鍵を保持する鍵保持手段と、
鍵の有効期限を管理する鍵有効期限管理手段と、
鍵が有効期限に到達した場合に、新たな鍵を用意する鍵変更手段と、
暗号化されたメールを復号化する場合に、当該暗号化されたメールが暗号化された時期に基づいて、過去に既に用意され、保持された鍵を前記鍵保持手段から検索し、検索された鍵を用いて、前記メールを復号化する旧メール復号化手段と
を更に有する請求項３に記載のメールシステム。
【請求項８】
前記外部端末が、所定の期間に有効である自分の鍵を前記メールサーバへ要求した場合に、前記メールサーバは、当該外部端末の利用者のアカウント毎に予め用意された鍵から、前記所定の期間内に有効期限が含まれる全ての鍵を選択して、前記外部端末へ送信する請求項７に記載のメールシステム。
【請求項９】
前記外部端末が、自分の鍵を前記メールサーバへ要求した場合に、前記メールサーバは、当該外部端末の利用者のアカウント毎に予め用意された全ての鍵を、当該外部端末へ送信する請求項７に記載のメールシステム。
【請求項１０】
前記メールサーバは、前記内部端末の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を更に有し、前記内部端末から前記外部端末への暗号化されたメールを受信した場合に、前記内部端末の鍵を用いて当該暗号化されたメールを復号化し、復号化したメールを、宛先の外部端末の鍵で暗号化して当該外部端末へ送信する請求項３に記載のメールシステム。
【請求項１１】
メールサーバが、外部端末の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を保持するステップと、
外部端末が仮の鍵を作り、仮の鍵を前記メールサーバの公開鍵で暗号化して前記メールサーバに送信するステップと、
前記メールサーバが、前記外部端末から前記仮の鍵を受け取った場合に、前記外部端末の本来の鍵を前記外部端末から受け取った仮の鍵で暗号化して前記外部端末に送信するステップと、
前記外部端末が、前記メールサーバから仮の鍵で暗号化された前記外部端末の本来の鍵を受け取った場合に、本来の鍵を復号化し復号化された鍵を自分の鍵とするステップと、
を備えたメール送信方法。
【請求項１２】
前記メールサーバは、ＬＡＮ内に設けられており、前記メールサーバが、ＬＡＮの外部の前記外部端末宛のメールを受信した場合に、メールを前記外部端末の鍵で暗号化して前記外部端末へ送信するステップと、
前記外部端末が、前記メールサーバから暗号化されたメールを受信した場合に、復号化された自分の鍵を用いて、メールを復号するステップと、
を更に備えた請求項１１に記載のメール送信方法。
【請求項１３】
前記メールサーバが、前記外部端末からＬＡＮの内部に設けられている内部端末への暗号化メールを受信した場合に、当該暗号化メールを前記外部端末の鍵で復号化して前記内部端末に送信するステップを更に備えた請求項１２に記載のメール送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メールシステムおよびメール送信方法に関する。特に本発明は、メールサーバと通信を行う外部端末が、暗号化されたメールを復号化するために用いる鍵を紛失した場合であっても、メールの受信を再開することができるメールシステムおよびメール送信方法に関する。
【背景技術】
【０００２】
従来、インターネット上で安全にメールを送受信する場合には、公開鍵暗号方式や共通鍵暗号方式が用いられる（例えば、特許文献１参照）。そして、これらの暗号方式を利用する場合、利用者は、例えば、インターネット上で利用可能な認証機関にアクセスして、予め定められた手続きを行うことにより、暗号化および復号化に必要な鍵を取得する。その後、利用者は、取得した鍵を、自分の端末にインストールする等により、鍵の管理を行う。
【０００３】
【特許文献１】特開２００２−３３５２３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば利用者の端末が故障する等によって鍵が紛失した場合には、利用者は、鍵を取得するための手続きを、再度、行う必要がある。この場合、鍵を安全に取得する為の煩雑な手続きが必要であり、このような手続きは、利用者にとって負担が大きいという課題があった。
【課題を解決するための手段】
【０００５】
このような課題を解決するために、本発明の第一の形態におけるメールシステムは、外部端末の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を保持するメールサーバと、仮の鍵を作り、仮の鍵をメールサーバの公開鍵で暗号化してメールサーバに送信する外部端末とを備え、メールサーバは、外部端末から仮の鍵を受け取った場合に、外部端末の本来の鍵を外部端末から受け取った仮の鍵で暗号化して外部端末に送信し、外部端末は、メールサーバから仮の鍵で暗号化された外部端末の本来の鍵を受け取った場合に、本来の鍵を復号化し、復号化された鍵を自分の鍵とする。これにより、外部端末は、本来の自分の鍵を、安全かつ容易にメールサーバから取得することができる。尚、外部端末は、自分の鍵を紛失した場合に、仮の鍵を作ってもよい。これにより、鍵を紛失した外部端末の利用者は、煩雑な手続きを行うことなく、メールの利用を再開することができる。
【０００６】
メールサーバは、ＬＡＮ内に設けられており、ＬＡＮの外部の外部端末宛のメールを受信した場合に、メールを外部端末の鍵で暗号化して外部端末へ送信し、外部端末は、メールサーバから暗号化されたメールを受信した場合に、復号化された自分の鍵を用いて、メールを復号してよい。これにより、内部端末がメールを暗号化する機能を有していなくても、外部端末を宛先とするメールをメールサーバが暗号化するので、内部端末は、外部端末へメールを安全に送信することができる。
【０００７】
本形態のメールシステムは、ＬＡＮの内部に設けられている内部端末を更に備え、メールサーバは、外部端末から内部端末への暗号化メールを受信した場合に、当該暗号化メールを外部端末の鍵で復号化して内部端末に送信してもよい。これにより、内部端末が、暗号化されたメールを復号化する機能を有していなくても、メールサーバが復号化を行うので、内部端末は、外部端末から自分宛に送信された暗号化メールの内容を、適切に把握することができる。
【０００８】
メールサーバは、内部端末から受信したメールの宛先が、ＬＡＮ内への宛先である場合には、メールの暗号化を禁止してもよい。これにより、メールサーバのＣＰＵパワーをセーブすることができる。
【０００９】
メールサーバは、外部端末へ暗号化を行わないでメールを送信する場合には、当該メールを一旦保持し、所定の時間が経過した後に送信してもよい。
【００１０】
メールサーバは、内部端末の要求に基づいて、いずれの外部端末の利用者の鍵を保持しているかを、内部端末へ表示させてもよい。これにより、内部端末の利用者は、宛先の外部端末の鍵が、予めメールサーバに保持されているかを、メールを送信する前に確認することができる。
【００１１】
メールサーバは、外部端末の利用者のアカウント毎であって、かつ有効期限毎に予め用意された鍵を保持する鍵保持手段と、鍵の有効期限を管理する鍵有効期限管理手段と、鍵が有効期限に到達した場合に、新たな鍵を用意する鍵変更手段と、暗号化されたメールを復号化する場合に、当該暗号化されたメールが暗号化された時期に基づいて、過去に既に用意され、保持された鍵を鍵保持手段から検索し、検索された鍵を用いて、メールを復号化する旧メール復号化手段とを更に有してもよい。これにより、鍵の有効期限が過ぎた後であっても、昔の鍵で暗号化されたメールを、読むことができる。
【００１２】
外部端末が、所定の期間に有効である自分の鍵をメールサーバへ要求した場合に、メールサーバは、当該外部端末の利用者のアカウント毎に予め用意された鍵から、所定の期間内に有効期限が含まれる全ての鍵を選択して、外部端末へ送信してもよい。或いは、外部端末が、自分の鍵をメールサーバへ要求した場合に、メールサーバは、当該外部端末の利用者のアカウント毎に予め用意された全ての鍵を、当該外部端末へ送信してもよい。これにより、鍵の有効期限が過ぎた後であっても、外部端末は、昔の鍵で暗号化されたメールを、読むことができる。
【００１３】
メールサーバは、内部端末の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を更に有し、内部端末から外部端末への暗号化されたメールを受信した場合に、内部端末の鍵を用いて当該暗号化されたメールを復号化し、復号化したメールを、宛先の外部端末の鍵で暗号化して当該外部端末へ送信してもよい。この場合、内部端末は、各外部端末に対して暗号化や復号化を行う為の鍵を持つ必要がないので、本発明のメールシステムは、内部端末の利用者の負担を低減しつつ、ＬＡＮ内部においても、より安全にメールを送信することができる。
【００１４】
本発明の第二の形態は、メールサーバが、外部端末の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を保持するステップと、外部端末が仮の鍵を作り、仮の鍵をメールサーバの公開鍵で暗号化してメールサーバに送信するステップと、メールサーバが、外部端末から仮の鍵を受け取った場合に、外部端末の本来の鍵を外部端末から受け取った仮の鍵で暗号化して外部端末に送信するステップと、外部端末が、メールサーバから仮の鍵で暗号化された外部端末の本来の鍵を受け取った場合に、本来の鍵を復号化し復号化された鍵を自分の鍵とするステップとを備えたメール送信方法を提供する。
【００１５】
メールサーバは、ＬＡＮ内に設けられており、メールサーバが、ＬＡＮの外部の外部端末宛のメールを受信した場合に、メールを外部端末の鍵で暗号化して外部端末へ送信するステップと、外部端末が、メールサーバから暗号化されたメールを受信した場合に、復号化された自分の鍵を用いて、メールを復号するステップと、を更に備えてもよい。
【００１６】
メールサーバが、外部端末からＬＡＮの内部に設けられている内部端末への暗号化メールを受信した場合に、当該暗号化メールを外部端末の鍵で復号化して内部端末に送信するステップを更に備えてもよい。
【００１７】
なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションも又発明となりうる。
【発明を実施するための最良の形態】
【００１８】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、又実施形態の中で説明されている特徴の組み合わせの全てが発明の開発手段に必須であるとは限らない。
【００１９】
図１は、本発明の実施形態に係るメールシステム１００の構成を示す。メールシステム１００は、ＬＡＮ１５０、ネットワーク２００、公開鍵サーバ４０、およびＬＡＮ１５０の外部に設けられた複数の外部端末２０Ａ〜Ｎを備える。
【００２０】
ここで従来、インターネット上で安全にメールを送受信する場合には、例えば公開鍵暗号方式や共通鍵暗号方式が用いられる。そして、これらの暗号方式を利用する場合に、利用者は、例えば、インターネット上で利用可能な認証機関にアクセスし、予め定められた手続きを行うことにより、暗号化および復号化に必要な鍵を取得する。その後、利用者は、取得した鍵を、自分の端末にインストールする等により、鍵の管理を行う。しかしながら、利用者の端末が故障する等によって鍵が紛失した場合には、利用者は、鍵を取得するための手続きを、再度、行う必要がある。この場合、鍵を安全に取得する為の煩雑な手続きが必要であり、このような手続きは利用者にとって負担が大きかった。そこで本発明のメールシステム１００は、上記の課題を解決することを目的とする。
【００２１】
ＬＡＮ１５０は、例えば会社等に構築され、複数の外部端末２０および公開鍵サーバ４０と、ネットワーク２００を介して接続される。本発明において、複数の外部端末２０のそれぞれと、ＬＡＮ１５０とは、共通鍵暗号方式や公開鍵暗号方式を用いて暗号化されたメールの送受信を行う。尚、本例では、主に、共通鍵暗号方式を用いた場合におけるメールシステム１００を説明する。ＬＡＮ１５０は、ＬＡＮ１５０の内部に設けられている複数の内部端末３０ａ〜ｎ、およびメールサーバ１０を有する。
【００２２】
複数の外部端末２０Ａ〜Ｎのそれぞれは、メールを暗号化する機能、および暗号化されたメールを復号化する機能を有する。各外部端末２０は、各外部端末２０がメールサーバ１０との間で暗号化メールを送受信するための、自分の共通鍵ａ〜ｎをそれぞれ有する。外部端末２０から、内部端末３０のいずれかへメールを送信する場合、外部端末２０は、作成したメールを自分の共通鍵を用いて暗号化し、暗号化したメールを、内部端末３０のいずれかを宛先として送信する。また外部端末２０は、メールサーバ１０から暗号化されたメールを受信した場合に、自分の共通鍵を用いて暗号化されたメールを復号化する。
【００２３】
尚、本例の外部端末２０は、暗号化および復号化の機能を持たない通常のメーラーに、暗号化および復号化の機能を有するメールソフトを追加することにより、メールの暗号化および暗号化されたメールの復号化を行う。尚、外部端末２０が、このメールソフトを追加する動作については後述する。
【００２４】
メールサーバ１０は、共通鍵データベース１５を含む。共通鍵データベース１５は、外部端末２０の利用者のアカウント毎に予め用意された、暗号化メールの復号に用いる鍵を保持する。本例において、暗号化メールの復号に用いる鍵とは、メールサーバ１０が各外部端末２０と、メールの暗号化および復号化を行うための、それぞれの共通鍵である。ここで共通鍵データベース１５は、複数の外部端末２０のそれぞれの共通鍵を、例えば外部端末２０のメールアドレスに対応づけて格納する。メールサーバ１０は、予め作成されたメールサーバ１０の公開鍵および秘密鍵のペアのうちの秘密鍵を格納し、公開鍵サーバ４０は、メールサーバ１０の公開鍵を格納する。
【００２５】
メールサーバ１０は、外部端末２０から内部端末３０への暗号化メールを受信した場合に、受信した暗号化メールを、暗号化メールの送信元である外部端末２０の共通鍵で復号化して、内部端末３０に送信する。本例のメールサーバ１０は、外部端末２０から内部端末３０への暗号化メールを受信した場合、メールの送信元のアドレスを特定し、共通鍵データベース１５を参照する。そして、メールサーバ１０は、特定した送信元のアドレスに対応づけて格納された共通鍵を特定し、特定した共通鍵を用いて受信した暗号化メールを復号化して、内部端末３０へ送信する。これにより内部端末３０が暗号化されたメールを復号化する機能を有していなくても、メールサーバ１０が復号化を行うので、内部端末３０は、外部端末２０から自分宛に送信された暗号化されたメールの内容を、適切に把握することができる。
【００２６】
内部端末３０から外部端末２０へメールを送信する場合、内部端末３０が送信したメールは、まずメールサーバ１０へ送信される。外部端末２０宛のメールを、内部端末３０から受信した場合に、メールサーバ１０は、共通鍵データベース１５を参照して、送信先の外部端末２０のメールアドレスに対応づけて格納された共通鍵を特定する。そして、メールサーバ１０は、特定した共通鍵を用いて、受信したメールを暗号化し、暗号化したメールを、宛先として指定された外部端末２０へ送信する。このように本発明においては、内部端末３０がメールを暗号化する機能を有していなくても、外部端末２０を宛先とするメールをメールサーバ１０が暗号化するので、内部端末３０は、外部端末２０へ安全にメールを送信することができる。尚、送信する相手の外部端末２０の鍵が、共通鍵データベース１５に予め格納されていない場合の動作については、図４において説明する。
【００２７】
また、本発明において、外部端末２０が自分の共通鍵を紛失した場合には、外部端末２０は、例えば乱数を用いて仮の鍵を作成する。また外部端末２０は、公開鍵サーバ４０から、メールサーバ１０の公開鍵を取得しておき、作成した仮の鍵を、取得したメールサーバ１０の公開鍵で暗号化してメールサーバ１０へ送信する。
【００２８】
メールサーバ１０は、外部端末２０から暗号化された仮の鍵を受け取った場合に、予め格納している秘密鍵を用いて、暗号化された仮の鍵を復号化し、仮の鍵を取得する。そして、メールサーバ１０は、外部端末２０の本来の共通鍵を、共通鍵データベース１５から検索して、外部端末２０の本来の共通鍵を、外部端末２０から受け取った仮の鍵で暗号化して外部端末２０へ送信する。
【００２９】
外部端末２０は、メールサーバ１０から、仮の鍵で暗号化された外部端末２０の本来の共通鍵を受け取った場合に、仮の鍵を用いて本来の鍵を復号化し、復号化された鍵を、自分の共通鍵とする。これにより、例えばハードディスクの故障や、ＯＳの再インストール等により自分の鍵を紛失した場合であっても、外部端末２０は、本来の自分の鍵を、安全かつ容易にメールサーバから取得することができる。そして鍵を紛失した外部端末２０の利用者は、煩雑な手続きを行うことなく、メールの利用を再開することができる。尚、鍵を紛失した場合に、新しい鍵を新たに取得すると、古い鍵で暗号化されたメールを読むことができなくなる。しかしながら、本発明では共通鍵データベース１５においてバックアップされた本来の共通鍵を取得するので、外部端末２０は、暗号化されていたそれまでのメールを読むことができる。
【００３０】
図２は、内部端末３０ａと外部端末２０Ａとがメールを送受信する場合の動作の一例を示すシーケンス図である。外部端末２０Ａから内部端末３０ａへメールを送信する場合、外部端末２０Ａは、共通鍵ａを用いて、メールを暗号化し（Ｓ１００）、暗号化したメールを、内部端末３０ａを宛先として送信する（Ｓ１０５）。するとメールサーバ１０は、共通鍵データベース１５を参照し、暗号化されたメールの送信元のアドレスに対応づけて格納された共通鍵ａを特定し、特定した共通鍵ａを用いて受信した暗号化メールを復号化する（Ｓ１１０）。
【００３１】
そして、メールサーバ１０は、復号化したメールを、内部端末３０ａへ送信する（Ｓ１１５）。この場合、メールサーバ１０は、平文で内部端末３０ａへ、メールを送信する。これにより暗号化されたメールを復号化する機能を有していなくても、メールサーバ１０が復号化を行うので、内部端末３０ａは、外部端末２０Ａから自分宛に送信された暗号化されたメールの内容を、適切に把握することができる。
【００３２】
内部端末３０ａから外部端末２０Ａへメールを送信する場合、外部端末２０ａは、平文のメールを作成し（Ｓ１２０）、外部端末２０Ａを宛先としてメールを送信する（Ｓ１２５）。するとメールサーバ１０は、共通鍵データベース１５を参照し、平文のメール送信先のアドレスに対応づけて格納された共通鍵ａを特定し、特定した共通鍵ａを用いて、受信した平文のメールを暗号化する（Ｓ１３０）。そして、メールサーバ１０は、暗号化したメールを外部端末２０Ａへ送信する（Ｓ１３５）。
【００３３】
暗号化されたメールを受信すると、外部端末２０Ａは、自分の共通鍵ａを用いて、暗号化されたメールを復号化する（Ｓ１４０）。これにより、内部端末３０ａがメールを暗号化する機能を有さなくても、メールサーバ１０が暗号化を行うので、内部端末３０ａは、外部端末２０Ａに安全にメールを送信することができる。このように、本発明のメールシステム１００においては、メールサーバ１０が共通鍵を管理し、暗号化と復号化を行うので、内部端末３０の利用者は、共通鍵を管理することなく、外部端末２０と、安全にメールの通信を行うことができる。
【００３４】
尚、本例において、内部端末３０のいずれかから、他の内部端末３０へメールを送信してもよい。ここで、メールサーバ１０は、内部端末３０から受信したメールの宛先を参照し、参照した宛先が、ＬＡＮ１５０内への宛先である場合には、メールの暗号化を禁止する。この場合、メールサーバ１０は、暗号化を行わずに、宛先の内部端末３０へメールを送信する。これにより、本例のメールサーバ１０は、ＣＰＵのパワーをセーブすることができる。
【００３５】
また、メールサーバ１０は、内部端末３０から外部端末２０宛のメールを受信した場合に、暗号化を行わずに、外部端末２０へメールを送信してもよい。この場合、例えば、内部端末３０は、暗号化を行わずに外部端末２０へメールを送信する旨を、送信すべきメールと共にメールサーバ１０へ通知する。すると、メールサーバ１０は、メールを外部端末２０へすぐには送信せずに一旦保持し、予め定められた所定の時間だけ経過した後に、暗号化せずに外部端末２０へ送信する。これにより、メールサーバ１０の内部にメールが保持されている所定の時間内においては、このメールを送信した内部端末３０の利用者は、メールの送信を中止させることができる。
【００３６】
図３は、外部端末２０Ａが、紛失した共通鍵ａを取得する場合の動作の一例を示すシーケンス図である。外部端末２０Ａにおいて、ハードディスクが故障する等によって、共通鍵ａが失われた場合、外部端末２０Ａは、仮の鍵を作成する（Ｓ２００）。一方で、外部端末２０Ａは、メールサーバ１０の公開鍵を公開鍵サーバ４０から取得しておき、取得したメールサーバ１０の公開鍵で、作成した仮の鍵を暗号化する（Ｓ２０５）。そして、外部端末２０Ａは、メールサーバ１０の公開鍵により暗号化した仮の鍵を、メールサーバ１０へ送信する（Ｓ２１０）。
【００３７】
暗号化された仮の鍵を受信すると、メールサーバ１０は、メールサーバ１０の秘密鍵を用いて、暗号化された仮の鍵を復号化する（Ｓ２１５）。そして、メールサーバ１０は、共通鍵データベース１５を参照して、外部端末２０Ａのメールアドレスに対応づけて格納されている外部端末２０Ａの本来の共通鍵ａを取得する（Ｓ２２０）。そして、メールサーバ１０は、取得した共通鍵ａを、先に復号化した仮の鍵で暗号化し（Ｓ２２５）、暗号化した共通鍵ａを、外部端末２０Ａへ送信する（Ｓ２３０）。
【００３８】
仮の鍵で暗号化された共通鍵ａを受信した外部端末２０Ａは、仮の鍵を用いて、暗号化された共通鍵ａを復号化することにより（Ｓ２３５）、本来の鍵である共通鍵ａを取得する。これにより、外部端末２０が自分の鍵を紛失した場合であっても、外部端末２０は、本来の自分の鍵を、安全かつ容易にメールサーバ１０から取得することができる。そして鍵を紛失した外部端末２０の利用者は、煩雑な手続きを行うことなく、メールの利用を再開することができる。
【００３９】
図４は、外部端末２０Ｎの共通鍵が共通鍵データベース１５に格納されていない場合の動作の一例を示すシーケンス図である。内部端末３０ａは、外部端末２０Ｎ宛のメールを平文で作成し（Ｓ３００）、作成した平文のメールをメールサーバ１０へ送信する（Ｓ３０５）。
【００４０】
ここで、メールサーバ１０は、共通鍵データベース１５を参照し、受信したメールの宛先に対応する共通鍵が予め格納されているかどうかを確認する。そして、共通鍵データベース１５が外部端末２０Ｎの共通鍵を格納していない場合、（Ｓ３１０：ＮＯ）、メールサーバ１０は、外部端末２０Ｎの共通鍵が格納されていない旨を外部端末２０Ａへ通知する（Ｓ３１５）と共に、外部端末２０Ｎへメールソフトのインストールを促す旨を通知する（Ｓ３２０）。この場合、メールサーバ１０は、例えば、外部端末２０Ｎへ、メールソフトを添付したメールを外部端末２０Ｎへ送信する。尚、メールソフトとは、外部端末２０にインストールされているメーラーが作成したメールに対して、メールを暗号化する機能、および暗号化されたメールを復号化する機能のそれぞれを追加するためのソフトウェアである。
【００４１】
外部端末２０Ｎは、受信したメールソフトをインストールする（Ｓ３２５）。尚、このメールソフトはネットワーク２００上において公開されていてもよく、この場合、メールサーバ１０は、メールソフトのネットワーク２００上でのアドレスを、外部端末２０Ｎへ通知する。すると外部端末２０Ｎは、通知されたアドレスからメールソフトをダウンロードすることによりメールソフトを取得し、インストールを行う。
【００４２】
また外部端末２０Ｎは、メールサーバ１０の公開鍵を、公開鍵サーバ４０から取得する（Ｓ３３０）。そして、外部端末２０Ｎは、例えば乱数を用いて、外部端末２０Ｎとメールサーバ１０との暗号化通信を行う為の共通鍵ｎを生成する（Ｓ３３５）。そして、外部端末２０Ｎは、生成した共通鍵ｎを、メールサーバ１０の公開鍵で暗号化し（Ｓ３４０）、暗号化した共通鍵ｎをメールサーバ１０へ送信する（Ｓ３４５）。
【００４３】
メールサーバ１０の公開鍵で暗号化された共通鍵ｎを受け取ると、メールサーバ１０は、メールサーバ１０が予め有する自分の秘密鍵で、暗号化された共通鍵ｎを復号化し、復号化した共通鍵ｎを、外部端末２０Ｎのメールアドレスに対応づけて共通鍵データベース１５へ登録する（Ｓ３５０）。そして、メールサーバ１０は、ステップＳ３００において、内部端末３０ａによって作成された、外部端末２０Ｎ宛の平文のメールを、共通鍵ｎを用いて暗号化し（Ｓ３５５）、暗号化したメールを、外部端末２０Ｎへ送信する（Ｓ３６０）。
【００４４】
暗号化されたメールを受信すると、外部端末２０Ｎは、共通鍵ｎを用いて、暗号化されたメールを復号化する（Ｓ３６５）。ステップＳ３１０において、共通鍵データベース１５が外部端末２０Ｎの共通鍵を格納している場合、（Ｓ３１０：ＹＥＳ）には、本シーケンスは、ステップＳ３１５からステップＳ３５０の動作を行わずに、ステップＳ３５５へ進む。
【００４５】
このように、メールソフトがインストールされていない外部端末２０Ｎへ、暗号化メールを送りたい場合には、外部端末２０Ｎは、煩雑な処理を行うことなく、メールソフトをインストールすることができる。そして、外部端末２０Ｎ、およびメールサーバ１０は、暗号化メールの送受信に必要な鍵を、容易に取得することができる。また本例では、メールの暗号化および復号化の機能を有するメールソフトがメールサーバ１０から配信されるので、外部端末２０Ｎは、暗号化の機能を持たないメーラーを利用することができる。尚、他の例において、外部端末２０は、暗号化と復号化の機能を備えたメーラーを、メールソフトとして、メールサーバ１０からダウンロードして、インストールしてもよい。
【００４６】
尚、メールサーバ１０は、内部端末３０からの要求に基づいて、いずれの外部端末２０の利用者のアカウントの鍵を保持しているかを、要求のあった内部端末３０へ表示させてもよい。この場合、例えばメールサーバ１０は、鍵が保持されているかどうかを表示させるＷＥＢを有する。内部端末３０の利用者は、このＷＥＢを用いて、確認したい外部端末２０のアカウントをメールサーバ１０へ通知する。すると、メールサーバ１０は、通知された外部端末２０のアカウントに対応する鍵が、共通鍵データベース１５に保持されているかを確認し、その結果を、ＷＥＢ上に表示することにより、内部端末３０へ通知する。
或いは、内部端末３０は、外部端末２０の鍵をメールサーバ１０が保持しているかを問い合わせる内容のメールを、メールサーバ１０へ送信してもよい。この場合、メールサーバ１０は、問い合わせのあった外部端末２０の鍵が、共通鍵データベース１５に保持されているかを確認し、その結果を記したメールを、問い合わせのあった内部端末３０へ返信する。これにより、内部端末３０の利用者は、外部端末２０の鍵が、予めメールサーバ１０に保持されているかを、メールを送信する前に確認することができる。
【００４７】
また、メールシステム１００は、複数のＬＡＮ１５０を備えてもよい。この場合、複数のＬＡＮ１５０のそれぞれは、メールサーバ１０を有する。そして、公開鍵サーバ４０は、各メールサーバ１０の公開鍵を格納する。外部端末２０は、公開鍵サーバ４０から、各メールサーバ１０の公開鍵を取得する。
【００４８】
また本例において、外部端末２０とメールサーバ１０とは、共通鍵暗号方式で暗号化メールの送受信を行ったが、他の例においては、公開鍵暗号方式で、暗号化メールの送受信を行ってもよい。この場合、外部端末２０は、予め公開鍵と秘密鍵のペアを作成し、作成した公開鍵および秘密鍵をメールサーバ１０の公開鍵を用いて暗号化して、メールサーバ１０へ送信する。メールサーバ１０は、それぞれの外部端末２０毎に、外部端末２０が作成した公開鍵と秘密鍵を保持する。この場合、メールの暗号を復号するための鍵とは、公開鍵と秘密鍵のペアのうちの秘密鍵である。
【００４９】
そして、外部端末２０から内部端末３０宛のメールを送信する場合、外部端末２０は、メールサーバ１０の公開鍵を用いて暗号化メールを作成し、メールサーバ１０は、自分の秘密鍵で、暗号化メールを復号化し、復号化したメールを内部端末３０へ送信する。また、内部端末３０から外部端末２０宛のメールを送信する場合には、メールサーバ１０は、外部端末２０の公開鍵を用いて暗号化メールを作成して、外部端末２０へ送信する。すると、外部端末２０は、自分の秘密鍵で、暗号化メールを復号化する。これにより、内部端末３０と外部端末２０とは、メールを安全に送受信することができる。また、外部端末２０が、自分の秘密鍵を紛失した場合には、外部端末２０およびメールサーバ１０のそれぞれは、図１および図３で説明した各動作を、共通鍵を秘密鍵に代えて行うことにより、外部端末２０は、自分の本来の秘密鍵を安全に取得することができる。
【００５０】
更に、他の例において、メールサーバ１０は、内部端末３０の利用者のアカウント毎に予め用意された、暗号メールの復号に用いる鍵を、有していてもよい。この場合、暗号化メールの復号に用いる鍵とは、メールサーバ１０が各内部端末３０と、メールの暗号化および復号化を行う為の、それぞれの共通鍵である。ここで、共通鍵データベース１５は、複数の内部端末３０のそれぞれの共通鍵を、例えば内部端末３０のメールアドレスに対応づけて格納する。
【００５１】
内部端末３０は、自分の共通鍵を用いてメール暗号化し、外部端末２０を宛先として送信する。外部端末２０宛のメールを受信した場合、メールサーバ１０はメールの送信元を特定する。そしてメールサーバ１０は、特定した送信元のアドレスに対応づけて格納された共通鍵を特定し、特定した共通鍵を用いて、受信した暗号化メールを復号化する。ここで、メールサーバ１０は、更にメールの送信先を特定し、特定した送信先のアドレスに対応づけて格納された外部端末２０の共通鍵を特定する。そして、メールサーバ１０は、特定した外部端末２０の共通鍵を用いて、メールを再び暗号化して、宛先に指定された外部端末２０へ送信する。この場合、内部端末３０は、各外部端末２０に対して暗号化や復号化を行う為の鍵を持つ必要がないので、本発明のメールシステム１００は、内部端末３０の利用者の負担を低減しつつ、ＬＡＮ１５０内部でより安全にメールを送信することができる。
【００５２】
尚、メールサーバ１０は、内部端末３０から暗号化されたメールを受信した場合には、暗号化メールを外部端末２０へ送信し、内部端末３０から暗号化されないメールを受信した場合には、暗号化せずに外部端末２０へメールを送信してもよい。このようにして、メールサーバ１０は、内部端末３０から外部端末２０へのメールを暗号化するか否かの判断を、簡易に行うことができる。
【００５３】
図５は本実施形態のメールシステム１００が有する他のメールサーバ１０の詳細な構成の一例を示す。本例において、メールサーバ１０は、共通鍵データベース１７およびメール管理手段５０を更に含む。メール管理手段５０は、ネットワーク２００および複数の内部端末３０ａ〜ｎと、メールの送受信を行うと共に、鍵の管理を行う。本例の共通鍵データベース１７は、鍵保持手段の一例である。共通鍵データベース１７は、外部端末２０の利用者のアカウント毎であって、かつ有効期限毎に予め用意された鍵を保持する。
【００５４】
ここで、メール管理手段５０は、鍵期限管理手段５２、鍵変更手段５４、および旧メール復号手段５６を有する。鍵期限管理手段５２は、例えば時刻を計時することにより、共通鍵データベース１７に保持された鍵の有効期限を管理する。本例において、鍵期限管理手段５２は、共通鍵データベース１７に保持されたそれぞれの鍵ごとに、鍵の有効期限を管理する。そして鍵が有効期限に到達した場合に、鍵変更手段５４は、有効期限の切れた鍵に対応するアカウントに対応する新たな鍵を用意する。この場合、鍵変更手段５４は、乱数を用いて新たな鍵を作成してもよいし、メールサーバ１０の外部から鍵を取得することによって、新たな鍵を用意してもよい。例えば、メールサーバ１０は、新たな鍵の作成を、有効期限の切れたアカウントに対応する外部端末２０に指示する。これにより、指示を受けた外部端末２０は、例えば乱数を用いて新しい鍵を作成して、メールサーバ１０へ送信する。このように、メールサーバ１０の鍵変更手段５４は、外部端末２０から新たな鍵を取得することにより、新たな鍵を用意してもよい。
【００５５】
ここで、本例のメールサーバ１０は、外部端末２０から内部端末３０へ送信されたメールと、内部端末３０から外部端末２０へ送信されたメールのバックアップを取っている。旧メール復号手段５６は、暗号化されたメールを復号化する場合に、この暗号化されたメールが暗号化された時期に基づいて、過去に既に用意され保持された鍵を共通鍵データベース１７から検索する。そして、旧メール復号手段５６は、検索された鍵を用いて、メールを復号化する。これにより、鍵の有効期限が過ぎた後であっても、昔の鍵で暗号化されたメールを読むことができる。
【００５６】
尚、図１から図４を用いて説明した例においては、外部端末２０は、自分の鍵を紛失した場合に、仮の鍵を作り、自分の鍵を取得したが、本例においては、仮の鍵を作成するのは、自分の鍵を紛失した場合には限られない。例えば、外部端末２０は、メールサーバ１０へ本来の鍵を要求する場合に、過去に作成され、共通鍵データベース１７に保持されている全ての自分の鍵を、要求してもよい。この場合、メールサーバ１０は、過去に作成された全ての鍵を、外部端末２０の本来の鍵として、外部端末２０へ送信する。或いは、外部端末２０が、自分の鍵をメールサーバ１０へ要求した場合に、メールサーバ１０は、この外部端末２０の利用者のアカウント毎に予め用意された全ての鍵を、要求のあった外部端末２０へ送信するようにしてもよい。
【００５７】
或いは、外部端末２０は、所定の期間に有効である自分の鍵をメールサーバ１０へ要求してもよい。この場合、メールサーバ１０は、外部端末２０の利用者のアカウント毎に予め用意された鍵から、所定の期間内に有効期限が含まれる全ての鍵を選択して、外部端末２０へ送信する。ここで、所定の期間内に有効期限が含まれるとは、それぞれの鍵が有効である各期間の少なくとも一部が所定の期間内に含まれる場合であってもよいし、各期間の全てが所定の期間内に含まれる場合であってもよい。尚、外部端末２０が、本来の鍵を取得する場合に、仮の鍵を作ってメールサーバ１０へ送信する動作は、図１から図４を用いて説明した動作と同様である。これにより、外部端末２０は、自分の鍵を無くした場合であっても、暗号化された時期の鍵をメールサーバ１０より取得することができるので、過去に受信したメールを、適切に読むことができる。
【００５８】
図６は、本例における共通鍵データベース１７が格納するデータの一例を示す。共通鍵データベース１７は、外部端末２０の利用者のアカウントに対応づけて、外部端末２０の共通鍵を格納している。この場合、共通鍵データベース１７は、各共通鍵を、それぞれの鍵に設定された有効期限に対応づけて格納している。本図の例におけるメールサーバ１０は、外部端末２０における最新の共通鍵として、共通鍵ａ−１や共通鍵ｂ−１を有する。この場合、共通鍵ａ−２や共通鍵ｂ−２は、既に有効期限が切れた鍵であって、内部端末３０および外部端末２０とのメールの送受信における、暗号化および復号化には用いられない。しかしながら、過去のメールを復号化する場合には、そのメールが暗号化された期間に対応する古い共通鍵が使用される。これにより、本例のメールシステム１００においては、鍵の有効期限が過ぎた後であっても、昔の鍵で暗号化されたメールを、読むことができる。
【００５９】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施形態に、多様な変更又は改良を加えることができることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施形態に係るメールシステム１００の構成を示す。
【図２】内部端末３０ａと外部端末２０Ａとがメールを送受信する場合の動作の一例を示すシーケンス図である。
【図３】外部端末２０Ａが、紛失した共通鍵ａを取得する場合の動作の一例を示すシーケンス図である。
【図４】外部端末２０Ｎの共通鍵が共通鍵データベース１５に格納されていない場合の動作の一例を示すシーケンス図である。
【図５】本実施形態のメールシステム１００が有する他のメールサーバ１０の詳細な構成の一例を示す。
【図６】本例における共通鍵データベース１７が格納するデータの一例を示す。
【符号の説明】
【００６１】
１０・・・メールサーバ、１５、１７・・・共通鍵データベース、２０・・・外部端末、３０・・・内部端末、４０・・・公開鍵サーバ、５０・・・メール管理手段、５２・・・鍵期限管理手段、５４・・・鍵変更手段、５６・・・旧メール復号手段、１００・・・メールシステム、１５０・・・ＬＡＮ、２００・・・ネットワーク
【図１】
2006020067.tif 000003
【図２】
2006020067.tif 000004
【図３】
2006020067.tif 000005
【図４】
2006020067.tif 000006
【図５】
2006020067.tif 000007
【図６】
2006020067.tif 000008