(57)【特許請求の範囲】
【請求項１】
通信元から受信した通信用のアドレスを個別アドレスに変換して通信先と送受信する個別通信システムであって、通信相手に関する通信相手情報を通信元アドレスと共に暗号化する暗号化手段と、前記暗号化手段による暗号化結果に基づいて、個別アドレスであることを示す識別子を含む個別アドレスを生成する個別アドレス生成手段と、前記通信元アドレスを、前記個別アドレス生成手段によって生成された個別アドレスに置換して前記通信先と送受信する送受信手段と、前記識別子を含むアドレスを受信した場合、該アドレスを前記通信元アドレスに変換する変換手段とを有することを特徴とする個別通信システム。
【請求項２】
前記個別アドレス生成手段は、前記個別アドレスを生成する際、前記暗号化手段による暗号化に用いた秘密鍵のシリアル番号を付加することを特徴とする請求項１記載の個別通信システム。
【請求項３】
前記個別アドレス生成手段は、前記個別アドレスを生成する際、前記通信相手情報を圧縮処理することを特徴とする請求項１又は２記載の個別通信システム。
【請求項４】
通信元から受信した通信用のアドレスを個別アドレスに変換して通信先と送受信する個別通信方法であって、通信相手に関する通信相手情報を送信元アドレスと共に暗号化する暗号化ステップと、前記暗号化ステップにおける暗号化結果に基づいて、個別アドレスであることを示す識別子を含む個別アドレスを生成する個別アドレス生成ステップと、前記通信元アドレスを、前記個別アドレス生成手段によって生成された個別アドレスに置換して前記通信先と送受信する送受信ステップと、前記識別子を含むアドレスを受信した場合、該アドレスを前記通信元アドレスに変換する変換ステップとを含むことを特徴とする個別通信方法。
【請求項５】
前記個別アドレス生成ステップにおいては、前記個別アドレスを生成する際、前記暗号化ステップにおいて暗号化に用いた秘密鍵のシリアル番号を付加することを特徴とする請求項４記載の個別通信方法。
【請求項６】
前記個別アドレス生成ステップにおいては、前記個別アドレスを生成する際、前記通信相手情報を圧縮処理することを特徴とする請求項４又は５記載の個別通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は個別通信システム、個別通信方法に関し、特に匿名性を確保した電子メール配信やVoIP（Voice over IP）などによる通信を実現することのできる個別通信システム、個別通信方法に関する。
【背景技術】
【０００２】
近年、個人のメールアドレスなどの個人情報が悪意ある第三者に流出し、スパムメールなどの被害が多発している。これらの対抗策として、メールフィルタリングがある。しかしながら、メールフィルタリングは、スパム業者とイタチごっことなり、成果が乏しい上、本来届くべきはずのメールまでフィルタされて届かない場合がある。最近では、一時的な個別メールアドレスを複数生成し、通信相手ごとに使い分けることでアドレスの流出元を特定し、そのアドレスだけ受信拒否することで、スパムに対抗する方法がある。
【０００３】
従来は、ｑｍａｉｌなどの拡張メールアドレスにて、自由に複数のメールアドレスが生成可能であった。しかしこれは、送信者が誰なのか推定できてしまい、スパム業者に本来のアドレスがばれやすい。これに対してＹａｈｏｏ（登録商標）のAddress Guardや、ＮＴＴ（登録商標）のprivangoは、本来のユーザ名を隠匿してエイリアスを用いる。また、特許文献１では、ランダムなアドレスを生成し、本来のアドレスに対応付けて個別アドレスを発行している。
【０００４】
特許文献２には、送信者側に問い合わせ情報を送り、応答が無い場合にはそれを削除することによって、スパムメールが受信者側に届かないようにする技術が記載されている。
特許文献３では、メール、暗号鍵、ＩＤを対応付ける変換表を記憶しておき、この変換表を用いてメールアドレスを暗号化している。
特許文献４には、多数の会員のアドレス毎にユニークな受信許可ドメイン名を対応付けて記憶するアドレス変換サーバーを設けておき、送信元ドメイン名が受信許可ドメイン名と一致していなければ会員に送信しないようにする技術が記載されている。
【０００５】
特許文献５には、メールアドレスの変換を行うことで、本来のメールアドレスを秘匿する技術が記載されている。
【特許文献１】特開２００３−１４１０４２号公報
【特許文献２】特開２００４−２２８８３２号公報
【特許文献３】特開２００３−１８６８０５号公報
【特許文献４】特開２００４−１５１８０号公報
【特許文献５】特開２００４−２３５９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したAddress Guard、privango、特許文献１に記載の技術は、送信者の匿名性が高いが、メールサーバにて個別アドレスの変換表を全て管理する必要がある。また、２度と使われないゾンビアドレスの増加による変換表の圧迫を抑制するために、個別アドレスはユーザが手動で生成し、これらの個別アドレスをどの通信相手に使用するのかはユーザが明示的に管理する必要がある。
【０００７】
また、上述した特許文献２の場合、メールそれぞれについて、問い合わせる処理が必要になるので、一度に大量のスパムメールが送信された場合には対応が困難であるという欠点がある。特許文献３の場合、変換表を管理しなければならないという欠点がある。特許文献４の場合、予め会員登録したアドレスでなければ効果が無いという欠点がある。特許文献５の場合、変換表に相当するアドレス帳を管理しなければならないという欠点がある。
【０００８】
（課題１）
上記に代表される個別アドレスに関する従来技術では、本来のアドレスを秘匿するために別名のアドレスを利用するが、その生成と、本来のアドレスと個別アドレスの変換表の管理および個別アドレスと通信相手との対応の管理はユーザが手動で行う。これは、従来技術では、生成したアドレスとその本来のアドレスとの変換表をメールサーバなどに保持する必要があるからである。仮に送信相手ごとに個別アドレスを自動生成した場合、２度と使用しない個別アドレスが爆発的に増え、メールサーバはそれらの変換表も管理し続ける必要があるという問題がある。
【０００９】
そのため、本発明は、メールアドレス内に変換表および通信相手情報を埋め込み、暗号化して秘匿性を確保することで、本来のアドレスと個別アドレスの変換表管理および個別アドレスと通信相手の対応管理をユーザおよびメールサーバ側にて不要とすることのできる個別メールシステム、個別メール送信方法の提供を目的とする。
【００１０】
（課題２）
上記に代表される個別アドレスに関する従来技術のうち、Address Guardやprivangoでは、本人のアドレスに代わるエイリアスを用いて個別アドレスを生成している。しかし、このエイリアスは本人のアドレスと１対１の対応であるため、この対応がひとたび漏洩すると、その他の全ての個別アドレスも漏洩の危険にさらされる上、今後新しく生成する個別アドレスも漏洩の危険にさらされるという問題がある。
そのため、本発明は、本人のアドレスと１対１となるエイリアスを用いず、本人のアドレスを暗号化して用いることで、１つの個別アドレスと本人のアドレスとの対応が漏洩した場合にも、その影響を小さくすることのできる個別通信システム、個別通信方法の提供を目的とする。
【課題を解決するための手段】
【００１１】
本発明の請求項１による個別通信システムは、通信元から受信した通信用のアドレスを個別アドレスに変換して通信先と送受信する個別通信システムであって、通信相手に関する通信相手情報を通信元アドレスと共に暗号化する暗号化手段と、前記暗号化手段による暗号化結果に基づいて、個別アドレスであることを示す識別子を含む個別アドレスを生成する個別アドレス生成手段と、前記通信元アドレスを、前記個別アドレス生成手段によって生成された個別アドレスに置換して前記通信先と送受信する送受信手段と、前記識別子を含むアドレスを受信した場合、該アドレスを前記通信元アドレスに変換する変換手段とを有することを特徴とする。このように構成すれば、本来のアドレスを通信相手から隠蔽しながら通信できる。また、その個別アドレスをメールサーバが管理する必要が無い。ユーザもまた個別アドレスを管理する必要がないため、従来の使い勝手とほぼ変わらない方法で通信の匿名性を確保できる。なお、「アドレス」は、電子メールアドレスの他、ＳＩＰ（Session Initiation Protocol）アドレスなども含む広い概念である。
【００１２】
本発明の請求項２による個別通信システムは、請求項１において、前記個別アドレス生成手段は、前記個別アドレスを生成する際、前記暗号化手段による暗号化に用いた秘密鍵のシリアル番号を付加することを特徴とする。バーション情報等のシリアル番号を付加した個別アドレスを生成して通信すれば、何らかのトラブルにより暗号化の秘密鍵が漏洩した場合にも、その被害を最小限に食い止め、将来にわたって漏洩の影響を受けることがなくなる。
本発明の請求項３による個別通信システムは、請求項１又は２において、前記個別アドレス生成手段は、前記個別アドレスを生成する際、前記通信相手情報を圧縮処理することを特徴とする。このようにすれば、生成される個別アドレスが圧縮されない場合より長くなりすぎるのを防止できる。
【００１３】
本発明の請求項４による個別通信方法は、通信元から受信した通信用のアドレスを個別アドレスに変換して通信先と送受信する個別通信方法であって、通信相手に関する通信相手情報を送信元アドレスと共に暗号化する暗号化ステップと、前記暗号化ステップにおける暗号化結果に基づいて、個別アドレスであることを示す識別子を含む個別アドレスを生成する個別アドレス生成ステップと、前記通信元アドレスを、前記個別アドレス生成手段によって生成された個別アドレスに置換して前記通信先と送受信する送受信ステップと、前記識別子を含むアドレスを受信した場合、該アドレスを前記通信元アドレスに変換する変換ステップとを含むことを特徴とする。このようにすれば、本来のアドレスを通信相手から隠蔽しながら通信できる。また、その個別アドレスをメールサーバが管理する必要が無い。ユーザもまた個別アドレスを管理する必要がないため、従来の使い勝手とほぼ変わらない方法で通信の匿名性を確保できる。
【００１４】
本発明の請求項５による個別通信方法は、請求項４において、前記個別アドレス生成ステップにおいては、前記個別アドレスを生成する際、前記暗号化ステップにおいて暗号化に用いた秘密鍵のシリアル番号を付加することを特徴とする。バーション情報等のシリアル番号を付加した個別アドレスを生成して通信すれば、常に同一の秘密鍵を使用し続ける必要がないため、何らかのトラブルにより暗号化の秘密鍵が漏洩した場合にも、その被害を最小限に食い止め、将来にわたって漏洩の影響を受けることがなくなる。
本発明の請求項６による個別通信方法は、請求項４又は５において、前記個別アドレス生成ステップにおいては、前記個別アドレスを生成する際、前記通信相手情報を圧縮処理することを特徴とする。このようにすれば、生成される個別アドレスが長くなりすぎるのを防止できる。
【発明の効果】
【００１５】
本発明によれば、通信相手ごとに個別のアドレスを生成して通信することにより、本来のアドレスを通信相手から隠蔽しながら通信できるという効果がある。また、その個別アドレスをメールサーバなどが管理する必要が無い。ユーザもまた個別アドレスを管理する必要がないため、従来の使い勝手とほぼ変わらない方法で通信の匿名性を確保できる。
さらに、バーション情報等のシリアル番号を付加した個別アドレスを生成して通信すれば、何らかのトラブルにより暗号化の秘密鍵が漏洩した場合にも、その被害を最小限に食い止め、将来にわたって漏洩の影響を受けることがなくなるという効果がある。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態を、図面を参照して説明する。なお、以下の説明において参照する各図では、他の図と同等部分は同一符号によって示されている。
（第１個別メールシステム：基本）
本発明の個別メールシステムは、前述の課題１を解決するために、メール配信装置（以下、適宜「ＭＴＡ（Mail Transfer Agent）」と称する）のそばにアドレス変換装置（以下、適宜「ＭＡＣ（Mail Address Converter）」と称する）を配置する。なお、メール配信装置がアドレス変換装置の機能を兼務することも可能である。メール配信装置は、従来の技術においてメールサーバとして説明した装置に類する。
【００１７】
送信者Ａは、メールクライアント装置（以下、適宜「ＭＵＡ（Mail User Agent）」と称する）を使用する。
これは、既存のメールクライアント装置を改変し、個別アドレスを使用するかどうかの選択ができる設定を付加している。個別アドレスを使用する場合は、メールクライアント装置は、メール配信装置へメールを送出する際に、メールのヘッダの中に、個別アドレスを使用する命令と、それに付随する情報を記述する（以下、個別アドレス使用依頼フィールドと称する）。付随する情報は、「通信相手情報としてＴｏフィールドの内容を使用する」などの情報がある。
【００１８】
メールを受信したメール配信装置は、ヘッダを解析し、これが個別アドレスを使用することを確認すると、アドレス変換装置へ送信者アドレスと通信相手Ｂの情報と暗号用の秘密鍵生成に必要な情報（以下、暗号化情報と称する）を通知する。
アドレス変換装置は、秘密鍵を生成あるいは取得して送信者Ａのアドレスおよび通信相手情報を暗号化し、個別アドレスの一部をメール配信装置へ返す。 
【００１９】
個別アドレスを見ただけでは、誰のアドレスなのかわかりづらいため、配送には無関係なエイリアス情報をメール配信装置にて付加することもできる。さらにメール配信装置はメール配信装置自身の情報（「＠」以降の情報）を付加し、先頭に、個別アドレスであることを明示する識別子（以下、個別アドレス識別子と称する。例えばアンダーバー「＿」）を付加し、個別アドレスを生成する。そのアドレスをＦｒｏｍフィールドなどの差出人情報に記述されている送信者Ａのアドレスと置き換え、メールヘッダから個別アドレス使用依頼フィールドを取り除く。その後、メール配信装置はメールをＴｏフィールドのごとき宛先フィールドに記載された通信相手Ｂまで配信する。
【００２０】
通信相手Ｂ側には特別な仕組みや装置は必要なく従来のメールシステムがあればよい。通信相手Ｂは、返信ボタンなどで送信者の個別アドレスに返信できる。
通信相手Ｂが送信したメールは元々の送信者Ａのメール配信装置に到達する。メール配信装置は宛先のアドレスをチェックして、個別アドレス識別子のあるアドレスであれば、暗号部を取り出し、アドレス変換装置へ渡す。アドレス変換装置は、そこから本当の宛先である送信者Ａのアドレスと通信相手情報とを復号し、メール配信装置へ返す。
【００２１】
メール配信装置は、必要であれば、メールの差出人である通信相手Ｂのアドレスを照合することができる。その後、メールヘッダの宛先に記述された個別アドレスを送信者Ａの本来の宛先アドレスへ書き換え、また、このメールが個別アドレス宛へ送られたことを示す情報（以下、個別アドレス宛通知フィールドと称する）をメールヘッダに追記し、該当するメールボックスへ配送する。
【００２２】
以上のようにして、送信者Ａの本来のアドレスを秘匿しながら、通信相手Ｂとメールをやり取りすることができる。また、このときに、メールクライアント装置、メール配信装置、及び、アドレス変換装置のどれも、送信者Ａの本来のアドレスと個別アドレスの変換表を管理する必要がない。また、個別アドレスとその通信相手の対応についても、どの装置も管理する必要がない。
【００２３】
メール配信装置は、暗号化情報を保持する必要があるが、それはメール配信装置が配下の全ユーザに共通して持っている。また、暗号化・復号化の都度、メール配信装置が暗号化情報をアドレス変換装置に送るのではなく、アドレス変換装置側で一時蓄積しておくことも可能である。
さらに、通信相手情報として、通信相手Ｂのメールアドレスを全て個別アドレス内に暗号化して埋め込むと、個別アドレスが長くなりすぎる場合がある。このため、通信相手Ｂのメールアドレスを適当な長さでハッシュ値を算出して不可逆符号化し、それを通信相手情報として利用することもできる。つまり、通信相手情報を圧縮してアドレス長を抑制することができる。どちらにするかは、個別アドレス使用依頼フィールドに記述することができる。
【００２４】
通信相手Ｂからメールが到達した場合、通信相手情報が通信相手Ｂであるかどうかを照合することができる。これも個別アドレス使用依頼フィールドで明記可能である。この情報は、暗号化された個別アドレス内に埋め込むことができる。
通信相手情報はかならずしも通信相手Ｂのメールアドレスである必要はなく、任意の情報でもよい。例えば、通信相手Ｂも個別アドレスを使用する場合、さきに送信者Ａが任意の情報を通信相手情報とし、照合不可として個別アドレスを作成し、通信相手Ｂに公開する。通信相手Ｂはそのアドレス宛に個別アドレスを作成してメールを送出する。
【００２５】
また、グループで個別アドレスを共有する際にも、通信相手情報にグループの識別情報（メーリングリストアドレスなど）を入れて照合不可として個別アドレスを作成することで、グループの一員ごとに個別アドレスを作成することなく、グループ全員で個別アドレスを共有できる。
さらに、暗号化される内容について、送信者Ａのアドレスと通信相手Ｂの通信相手情報に加え、オプションで様々な情報を付加可能である。例えば有効期限を設定するオプションを付加することができる。他にも、複数の通信相手用に個別アドレスを使用する場合に、通信相手情報に追加で通信相手を記述するオプションや、通信相手Ｂからのメールを受信した時に鳴らす音を設定するオプションなどがある。オプションは数珠繋ぎで複数設定することもできる。
【００２６】
（第２個別メールシステム：漏洩対策）
前述の課題２を解決するために、上記の第１個別メールシステムにおけるアドレス変換装置の変換アルゴリズムを一部特定する。
第１個別メールシステムのメール配信装置は、メール配信装置ごとに暗号化情報を保持している。アドレス変換装置では、それから生成された秘密鍵をもとに、送信者Ａのアドレス（「＠」以前の内容）と通信相手情報を暗号化する。これにより、通信相手Ｂが個別アドレスを受け取って、送信者Ａの本来のアドレスは秘匿される。第１個別メールシステムでは、送信者Ａが任意の文字のエイリアスを付加可能であるが、アドレスと１対１とならないため、課題２の問題は発生しない。しかし、秘密鍵が漏洩した場合、本来のアドレスも漏洩し、前述の課題２と同様の問題が発生する。
【００２７】
そこで、この問題を解決するため、第２個別メールシステムでは、この暗号化情報を乱数発生の種情報（以下、種情報と称する）もしくは秘密鍵自身と、そのバージョン情報とのペアとする。メール配信装置は、バージョン情報から秘密鍵が分かるようにする。その実装方法は、例えばバージョンごとに秘密鍵を管理しておき、バージョン情報に対応する秘密鍵を使用する方法もある。もしくはバージョン情報が「ｎ」としたら、種情報から生成された乱数のｎ番目を使用して秘密鍵を生成する方法もある。
アドレス変換装置では、秘密鍵に基づいて暗号化された後、バージョン情報を付加する。復号化する際も、まずバージョン情報から該当する秘密鍵を見つけ出し、それから復号化する。
【００２８】
これにより、常に同一の秘密鍵を使用する必要がなくなり、秘密鍵が漏洩した場合にも、その影響の範囲は同一のバージョンを利用した場合に限定される。そして、バージョン情報を変化させることで、新しく生成される個別アドレスには漏洩の影響がなくなる。なお種情報および秘密鍵の情報はメール配信装置が持ち、配下の全ユーザに共通だが、バージョン情報はメール配信装置がユーザごとに個別に割り当てることもでき、ユーザが直接指定することもできる。なお、以上はバージョン情報を用いる場合について説明したが、それに限定されるわけではなく、何らかのシリアル番号を用いれば良い。
【００２９】
従来技術の場合、一度エイリアスに対応する本当のアドレスが漏洩すれば、新しく作成する個別アドレスも同じエイリアスを用いる必要があるため、将来にわたって本当のアドレスが漏洩の危険にさらされるが、第２個別メールシステムではその危険性が減少する。
また、上記ではメールアドレスに限定して説明したが、ＳＩＰアドレスなど、メールアドレスと同様な形態を持ち、個人の識別に使用されるアドレスについても、同様に変換・管理することができる。
【実施例】
【００３０】
本発明にかかる個別メールシステムの実施例について図面を参照して説明する、なお、本例では、同一の装置に、メール配信装置の機能とアドレス変換装置の機能とを実装している。
（システムの構成例）
図１は、本発明による個別メールシステムの構成例を示すブロック図である。同図を参照すると、本例の個別メールシステムは、携帯端末等のメールクライアント装置１０と、メール配信装置２０と、アドレス変換装置３０と、上記とは別のメール配信装置４０と、ノート型コンピュータ等の相手側メールクライアント装置５０とを含んで構成されている。メールクライアント装置１０とメール配信装置２０との間の通信には、周知のＳＭＴＰ（Simple Mail Transfer Protocol）／ＰＯＰ（Post Office Protocol)等が採用されている。メール配信装置２０とメール配信装置４０との間の通信には、周知のＳＭＴＰが採用されている。メール配信装置４０と相手側メールクライアント装置５０との間の通信には、周知のＳＭＴＰ／ＰＯＰ等が採用されている。
【００３１】
メールクライアント装置１０は、メールの送受信処理を行うメール送受信部１１と、メールの送受信操作等を行うためのメールユーザインタフェース１２と、通信相手のメールアドレスを管理するアドレス帳１３と、送信及び受信したメールを記憶するメールボックス１４とを含んで構成されている。アドレス帳１３及びメールボックス１４は、半導体メモリや周知の記憶デバイスに記憶されている。なお、相手側メールクライアント装置５０も、メールクライアント装置１０と同様の構成とする。
【００３２】
メール配信装置２０は、メールの送受信処理を行うメール送受信部２１と、メールの振り分けやフィルタリングを行うメール判断部２２と、送信及び受信したメールを記憶するメールボックス２３と、フィルタ情報を管理するフィルタ情報管理部２４と、暗号化情報を管理する暗号化情報管理部２５とを含んで構成されている。なお、メール配信装置４０も、メール配信装置２０と同様の構成とするが、フィルタ情報管理部２４と暗号化情報管理部２５を除く。
【００３３】
アドレス変換装置３０は、メールアドレスの変換処理を行うアドレス変換部３１と、秘密鍵を生成する秘密鍵生成部３２と、暗号化情報を管理する暗号化情報管理部３３とを含んで構成されている。
本例では、メールクライアント装置１０を使用するユーザである送信者Ａから、相手側メールクライアント装置５０を使用するユーザである通信相手Ｂへメールを送信し、通信相手Ｂ側から送信者Ａ側にメールを返信する場合の動作例について説明する。
【００３４】
（メール送信）
続いて、本実施形態にかかる個別メールシステムによるメール送信動作例について、図２を参照して説明する。同図は、送信者Ａがメールクライアント装置１０を使って通信相手Ｂへメールを送信する場合の動作を示すシーケンス図である。
同図を参照すると、送信者Ａは、メールユーザインタフェース１２もしくはアドレス帳１３を用いて、個別アドレスで送信する設定をする。例えば、メールユーザインタフェース１２において送信者Ａがチェックボックスにチェックを入れる方法がある。もしくはアドレス帳１３にて通信相手ごとに個別アドレス使用の有無を記述しておき、自動的にそれを対応づける方法がある。
【００３５】
送信者Ａがメールの送信を指示すると、ＭＵＡ１０のメール送受信部１１は、メールヘッダに「個別アドレス使用依頼フィールド」を追加する（ステップＳ１０１）。例えば、X-encode-DEAというフィールド名を用いて、次のように設定する。
X−encode−DEA：yes；Expire＝Dec 2002 12：52:35＋0900；Verify＝off
「個別アドレス使用依頼フィールド」には複数の付随情報を設定できる。例えば、図３に示されているような情報を設定できる。
【００３６】
メール送受信部１１はそのメールをＭＴＡ２０へ送信する（ステップＳ１０２）。
ＭＴＡ２０はメール送受信部１１でメールを受信すると、メール判断部２２にてメールヘッダの内容を確認する。このとき「個別アドレス使用依頼フィールド」の有無を確認する（ステップＳ１０３）。確認の結果、個別アドレス使用依頼フィールドが存在しない場合はそのまま通常通りにメールが送信され（ステップＳ１０３→Ｓ１１０）、メールボックスに保存される（ステップＳ１１１）。これにより、通信相手Ｂは、送信者Ａからのメールを通常通りに受信することができる（ステップＳ１１２）。
【００３７】
一方、ステップＳ１０３の確認の結果、個別アドレス使用依頼フィールドが存在する場合、その付随情報を読み取り、個別アドレスの生成に移行する。
個別アドレスの生成では、まずメールヘッダのＦｒｏｍフィールドから送信者Ａの本来のメールアドレス３００を取得し、それをＩＤ（３００１）とホスト名（３００２）とに分割する。また、特に付随情報で指示がない限り、通信相手情報としてＴｏフィールドにある通信相手Ｂのアドレスを使用する。そして、ＩＤ、通信相手情報、付随情報をＭＡＣ３０のアドレス変換部３１へ渡す（ステップＳ１０３→Ｓ１０４）。なお、本例では、ＭＴＡ２０の機能とＭＡＣ３０の機能とが同一装置に実装されている。
【００３８】
その後、アドレス変換部３１において暗号化を行う。アドレス変換部３１の暗号化シーケンス（ステップＳ１０５）については、後述する。アドレス変換部３１は、暗号化されたデータ３０４をメール判断部２２へ返す（ステップＳ１０６）。
データ３０４を受け取ったメール判断部２２は、個別アドレスを生成する（ステップＳ１０７）。本例では、データの先頭に、個別アドレスを示す識別子であるアンダーバー「＿」を付加し、末尾にアットマーク「＠」とホスト名３００２を付ける。また、付随情報でエイリアスの指定がある場合、データ３０４とアットマーク「＠」との間に、ピリオド「．」とエイリアス文字列とを挿入する。これにより、個別アドレスを作成する。なお、メール配信装置２０は、通常のメールアドレスに対しては、先頭文字がアンダーバー「＿」以外の文字となるような制約を設けている。
【００３９】
メール判断部２２は、元のメールのＦｒｏｍフィールドに記述されている送信者Ａの本来のアドレス３００を、個別アドレスに置換し（ステップＳ１０８）、ヘッダにある「個別アドレス使用依頼フィールド」を削除する（ステップＳ１０９）。その後、メールは、メール送受信部２１を介して、通信相手Ｂ側のメール配信装置４０へ配送され（ステップＳ１１０）、メールボックスに保存される（ステップＳ１１１）。これにより、通信相手Ｂは、個別アドレスで秘匿された送信者Ａからのメールを受信することができる（ステップＳ１１２）。
【００４０】
（暗号化シーケンス）
次に、上記図２のシーケンス内で使用された、アドレス変換部３１における暗号化シーケンス（ステップＳ１０５）について、図４を参照して説明する。
アドレス変換部３１は、暗号化依頼に付加されている送信者ＡのＩＤ（３００１）、通信相手情報、付随情報を、メール判断部２２から取得する（ステップＳ２０１）。取得した付随情報には、ハッシュの方式、暗号方式、照合の可否、鍵バージョン情報、有効期限などの「個別アドレス使用依頼フィールド」に記述された情報がある。
【００４１】
アドレス変換部３１は、付随情報からハッシュを使用するかどうかを判断する（ステップＳ２０２）。本例では、ハッシュを使用し、なおかつ通信相手情報が一定バイト数以上（例えば６バイト）の場合は、通信相手情報の希望ハッシュ値を計算する。希望ハッシュ値を計算する場合、付けるオプションの長さから、通信相手情報の長さを計算する（ステップＳ２０３）。ここでは、希望ハッシュ値は最低６バイト使用し、なおかつ、データ３０１を生成した際にデータ３０１全体の長さが規定数の倍数長−１（例えば暗号化アルゴリズムに「Ｂｌｏｗｆｉｓｈ」を用いる場合は、７、１５、２３、…、８ｎ−１）となるように、希望ハッシュ長を決める。例えばここでは希望ハッシュ長は９バイトとする。次に、付随情報からハッシュアルゴリズムを選定し、通信相手情報のハッシュ値を計算する（ステップＳ２０４）。例えばＳＨＡ−１を使用した場合はハッシュ値が２０バイトとなる。そのうち先頭のバイトから希望ハッシュ長分を新たな通信相手情報として使用する。
【００４２】
通信相手情報が確定したら、ＩＤ（３００１）、通信相手情報３０１３に加え、その他必要な付随情報をオプションとして組み合わせて、データ３０１を作成する（ステップＳ２０５）。上記のステップＳ２０２において、ハッシュを利用しない場合は、そのままデータ３０１を作成する。組み合わせるオプションは、例えば、図５に示されているようなフォーマットで記述される。すなわち、「オプションのタイプ」、「このオプションの長さ」、「オプションの内容」で構成されるフォーマットで記述される。
このオプションは、例えば、図６〜図８に代表されるような、有効期限オプション３０１４（図６）、通信相手情報追加オプション３０１５（図７）、着信音オプション３０１６（図８）がある。これらのオプションは、図５中の通信相手情報３０１４の後につなげて複数記述できる。
【００４３】
図４に戻り、次に、アドレス変換部３１は、付随情報にて暗号化のアルゴリズムをチェックし（ステップＳ２０６）、もし暗号化が必要な場合には、暗号化方式とバージョン情報とをもとに、暗号化情報管理部２５（暗号化情報管理部３３も同一機能である）へ秘密鍵を要請する（ステップＳ２０７）。暗号化情報管理部２５は、まずキャッシュ（鍵の一時蓄積場所）に秘密鍵があるかをチェックし（ステップＳ２０８）、キャッシュに秘密鍵があればその秘密鍵をアドレス変換部３１に返す（ステップＳ２０８→Ｓ２１１）。
【００４４】
一方、キャッシュに秘密鍵がない場合は、暗号化情報管理部２５がもつ種情報とバージョン情報とを秘密鍵生成部３２に渡し、秘密鍵生成部３２において生成した秘密鍵を暗号化情報管理部２５が取得する（ステップＳ２０９）。暗号化情報管理部２５が取得した秘密鍵は一度キャッシュに保存し（ステップＳ２１０）、その秘密鍵をアドレス変換部３１へ渡す（ステップＳ２１０→Ｓ２１１）。
【００４５】
この種情報はＭＴＡ２０の暗号化情報管理部２５が管理し、配下の全ユーザが共有するが、バージョン情報については、配下の全ユーザに個別に割り当てることが可能である。また、送信者Ａが明示的に個別アドレス使用依頼フィールドでバージョン情報を指定することも可能である。
続いてアドレス変換部３１は、取得した秘密鍵を用いてデータ３０１を暗号化し、データ３０２を生成する（ステップＳ２１２）。なお、ステップＳ２０６において、暗号化を必要としない場合は、データ３０１がそのままデータ３０２として使用される（ステップＳ２１３）。
【００４６】
続けて、生成されたデータ３０２に、２バイトのヘッダ３０３１を付加してデータ３０３を作成する（ステップＳ２１４）。ここで、ヘッダ３０３１は、例えば図９に示されているようなフォーマットであり、必要な付随情報を保持する。
図４に戻り、データ３０３はバイト列であり、文字列に表現できないため、周知のＢａｓｅ６４で符号化して文字列に変換する（ステップＳ２１５）。ただし、メールアドレスやＵＲＬで表現できない文字を使用させないため、Ｂａｓｅ６４で符号化後に「＋」を「−」に、「／」を「＿」に変換する。これによってデータ３０４を作成する。
アドレス変換部３１は、このデータ３０４をメール判断部２２に返す（ステップＳ２１６）。
【００４７】
（変換過程のデータ）
上記の変換の過程で発生するデータの種類等は、図１０に示されている通りである。すなわち、送信者Ａのメールアドレス３００について、ＩＤ（３００１）とホスト名（３００２）とに分解し、データ３０１を生成する。そして、秘密鍵とシリアル番号であるバージョン情報とを与えて暗号化する。暗号化されたデータ３０２を生成する。さらに、鍵のバージョン情報と暗号化方式とハッシュ使用有無を示すヘッダ３０３１を付加したデータ３０３を作成する。
【００４８】
データ３０３は、周知のＢａｓｅ６４で符号化され、さらに「＋」を「−」に、「／」を「＿」に変換されることでデータ３０４が作成される。データ３０４の先頭にアンダーバー「＿」を付加し、データ末尾にアットマーク「＠」とホスト名３０２を付加し、さらに付随情報でエイリアスの指定がある場合、データ３０４とアットマーク「＠」との間に、ピリオド「．」とエイリアス文字列とが挿入され、個別アドレスであるデータ３０５が作成される。
【００４９】
（メール受信）
図１１は、通信相手Ｂから個別アドレスへの返信メールを送信者Ａが受信するまでの動作を示すシーケンス図である。
同図を参照すると、最初に通信相手Ｂは、送信者Ａの個別アドレスヘ向けて、メールをメールクライアント装置５０から送信する（ステップＳ４０１）。そのメールはメール配信装置４０を経由してメール配信装置２０へ配達される（ステップＳ４０２）。
メール配信装置２０のメール判断部２２では、メールヘッダのＴｏフィールドからデータ３０５を取得する。データ３０５の先頭文字が、個別アドレスの識別子であるアンダーバー「＿」であるか確認する（ステップＳ４０３）。先頭文字がアンダーバー「＿」である場合、個別アドレスと判断してその読解を開始する。
【００５０】
個別アドレスの読解は以下のように行われる。まず、読解に不要な情報をデータ３０５から除去し、データ３０４を取得する（ステップＳ４０３→Ｓ４０４）。そして、アドレス変換部３１にデータ３０４を渡し、復号を依頼する（ステップＳ４０５）。アドレス変換部３１では、後述する復号化シーケンス（ステップＳ４０６）にのっとり、ＩＤ（３００１）、通信相手情報、付随情報を取得し、それをメール判断部２２へ返す（ステップＳ４０７）。
【００５１】
メール判断部２２ではその後、フィルタ情報管理部に保存されているＩＤ（３００１）ごとのブラックリストと、Ｔｏフィールドのデータ３０４とを比較する（ステップＳ４０８）。そして、ブラックリストに載っている場合はそのメールを破棄し（ステップＳ４０８→Ｓ４１５）、通信相手Ｂにエラーメールを返信する（ステップＳ４１６、Ｓ４１７）。ここで、ブラックリストとは送信者Ａが使い捨てた個別アドレスのことで、ある個別アドレスがスパム業者に流出した場合などにその個別アドレスの利用を停止したい場合に登録する。また、個別アドレスの有効期限をチェックし（ステップＳ４０８）、期限切れの場合もメールを破棄し（ステップＳ４０８→Ｓ４１５）、通信相手Ｂにエラーメールを返信する（ステップＳ４１６、Ｓ４１７）。
ブラックリストおよび有効期限のチェックに合格すると、今度は復号された付随情報をチェックし、照合可否のフラグを確認する（ステップＳ４０８→Ｓ４０９）。フラグが倒れていた場合（フラグがＯｆｆの場合）は、照合シーケンスを回避する（ステップＳ４０８→Ｓ４１４）。
【００５２】
一方、フラグが立っていた場合（フラグがＯｎの場合）は、復号して得られた通信相手情報３０１３と、Ｆｒｏｍフィールドのデータとを照合する。付随情報からハッシュが使用されていることが分かれば、指定のアルゴリズムでＦｒｏｍフィールドのハッシュ値を計算し、通信相手情報３０１３と同一の長さの範囲で一致するかを確認する（ステップＳ４１０→Ｓ４１１）。ハッシュが使用されていない場合は、そのまま通信相手情報３０１３とＦｒｏｍフィールドとを照合する（ステップＳ４１０→Ｓ４１２）。照合の結果が不一致であれば、そのアドレスは不正に使用されていると判断し、メールを破棄して通信相手Ｂにエラーメールを送信する（ステップＳ４１３→Ｓ４１６、Ｓ４１７）。
【００５３】
一方、照合が一致していれば、受信したメールが正当の通信相手Ｂから来たものとし、Ｔｏフィールドの個別アドレスを本来の送信者Ａのアドレス３００に置換する（ステップＳ４１３→Ｓ４１４）。同時に、メールヘッダに「個別アドレス宛通知フィールド」を追加する。このフィールドは、例えば以下のように記述される。
X−DEA−decoded：yes；dea＝#FABu-O2s0v7uqXX3fugvm0r3
このフィールドのｄｅａオプションには、使用された個別アドレスのうち、アットマーク「＠」以前の情報が記述されている。
【００５４】
その後、メール判断部２２は送信者Ａのメールボックスへ該当メールを保存し（ステップＳ４１８）、送信者Ａはメールクライアント装置１０によりメールを受信することができる（ステップＳ４１９）。
このようにして、送信者Ａは、自分の本来のアドレス３００を秘匿しながら、通信相手Ｂと通信することができる。
なお、上記のステップＳ４０３において、データ３０５の先頭文字がアンダーバー「＿」以外で始まる場合は、それをユーザアドレスだと判断しメールボックスへ保存する（ステップＳ４０３→Ｓ４１８）。これにより、送信者Ａはメールクライアント装置１０によりメールを受信することができる（ステップＳ４１９）。
【００５５】
（復号化シーケンス）
図１２は、図１１中のシーケンス内で使用された、アドレス変換部３１における復号化シーケンス（ステップＳ４０６）の処理内容の例を示すシーケンス図である。
同図を参照すると、アドレス変換部３１は、メール判断部２２からデータ３０４を取得する（ステップＳ５０１）。データ３０４は周知のＢａｓｅ６４にアレンジを加えて符号されているため、まずは「−」を「＋」に、「＿」を「／」に変換してから、Ｂａｓｅ６４の復号化を行い、データ３０３を得る（ステップＳ５０２）。次に、データ３０３のヘッダ３０３１から暗号化方式、ハッシュ方式、照合可否、バージョン情報を付随情報として取得し、先頭２バイトを除いたバイト列のデータ３０２を取得する（ステップＳ５０３）。
【００５６】
次に、アドレス変換部３１は、データ３０２が暗号化されている場合、ヘッダ３０３１から取得した暗号化方式とバージョン情報とをもとに、暗号化情報管理部２５（暗号化情報管理部３３も同一機能である）へ秘密鍵を要請する（ステップＳ５０４→Ｓ５０５）。暗号化情報管理部２５は、まずキャッシュ（鍵の一時蓄積場所）に秘密鍵があるかをチェックし（ステップＳ５０６）、キャッシュに秘密鍵があればその秘密鍵をアドレス変換部３１に返す（ステップＳ５０６→Ｓ５０９）。
【００５７】
一方、キャッシュに秘密鍵がない場合は、暗号化情報管理部２５がもつ種情報とバージョン情報とを秘密鍵生成部３２に渡し、秘密鍵生成部３２において生成した秘密鍵を暗号化情報管理部２５が取得する（ステップＳ５０７）。暗号化情報管理部２５が取得した秘密鍵は一度キャッシュに保存し（ステップＳ５０８）、その秘密鍵をアドレス変換部３１へ渡す（ステップＳ５０８→Ｓ５０９）。
【００５８】
アドレス変換部３１は、取得した秘密鍵でデータ３０２を復号し、データ３０１を取得する（ステップＳ５１０）。なお、ステップＳ５０４において、暗号化を利用していないことが判明した場合は、データ３０２がそのままデータ３０１として使用される（ステップＳ５０４→Ｓ５１１）。
アドレス変換部３１は、データ３０１から、ＩＤ（３００１）、通信相手情報３０１３、および、オプション情報から有効期限などの付随情報を取得し（ステップＳ５１２）、その情報をメール判断部２２へ渡す（ステップＳ５１３）。以上のようにして、個別アドレスからＩＤなどの情報を復元することができる。
【００５９】
以上のシーケンスにより、送信者Ａは本来のアドレス３００から自動的に個別アドレスを生成し、それを通信相手Ｂに開示することで、アドレス３００を秘匿しながら通信相手Ｂと通信することができる。また、メール配信装置２０および送信者Ａは、本来のアドレス３００と個別アドレスとの変換を管理する必要がなく、ＭＴＡ２０は暗号化情報管理部２５において種情報のみを管理するだけでよい。さらに、個別アドレスが通信相手Ｂ向けであるという対応についても、ＭＴＡ２０および送信者Ａは何ら管理を行う必要がない。
さらにまた、暗号化情報については種情報とバージョン情報とに分けることで、バージョン情報を任意に変更する事ができるため、従来技術と比べ、匿名性を確保する情報が漏洩した場合の被害を低減でき、将来にわたって漏洩の影響を受けることがなくなる。
【００６０】
（メール配信方法）
上述した個別メールシステムにおいては、以下のような個別メール送信方法が実現されている。すなわち、メール送信元から受信したメールのアドレスを個別アドレスに変換して通信先と送受信する個別通信方法であり、通信相手に関する通信相手情報を送信元アドレスと共に暗号化する暗号化ステップと、上記暗号化ステップにおける暗号化結果に基づいて、個別アドレスであることを示す識別子を含む個別アドレスを生成する個別アドレス生成ステップと、上記メールの送信元アドレスを、上記個別アドレス生成手段によって生成された個別アドレスに置換して前記通信先と送受信する送受信ステップと、前記識別子を含むアドレスを受信した場合、該アドレスを前記通信元アドレスに変換する変換ステップとを含む個別通信方法が実現されている。このようにすれば、本来のアドレスを通信相手から隠蔽しながら通信できる。また、その個別アドレスをメールサーバが管理する必要が無い。ユーザもまた個別アドレスを管理する必要がないため、従来の使い勝手とほぼ変わらない方法で通信の匿名性を確保できる。
【００６１】
また、上記個別アドレス生成ステップにおいては、上記個別アドレスを生成する際、上記暗号化ステップにおいて暗号化に用いた秘密鍵のシリアル番号を付加しても良い。バーション情報等のシリアル番号を付加した個別アドレスを生成して通信すれば、何らかのトラブルにより暗号化の秘密鍵が漏洩した場合にも、その被害を最小限に食い止め、将来にわたって漏洩の影響を受けることがなくなる。
なお、上記個別アドレス生成ステップにおいては、上記個別アドレスを生成する際、上記通信相手情報を圧縮処理しても良い。このようにすれば、生成される個別アドレスが長くなりすぎるのを防止できる。
【産業上の利用可能性】
【００６２】
本発明は、匿名性を確保した送受信を実現する場合に利用できる。
【図面の簡単な説明】
【００６３】
【図１】本発明の実施の形態による個別メールシステムの構成例を示すブロック図である。
【図２】図１の個別メールシステムにおいて、ユーザがメールを送信する際の動作例を示すシーケンス図である。
【図３】個別アドレスの使用依頼フィールドに設定できる付随情報を示す図である。
【図４】図１の個別メールシステムにおいて、暗号化を行う際の動作例を示すシーケンス図である。
【図５】オプションのフォーマット例を示す図である。
【図６】有効期限オプションのフォーマット例を示す図である。
【図７】通信相手情報追加オプションのフォーマット例を示す図である。
【図８】着信音オプションのフォーマット例を示す図である。
【図９】図１０中のヘッダの構成例を示す図である。
【図１０】図１の個別メールシステムによるアドレス変換過程を示す図である。
【図１１】図１の個別メールシステムにおいて、他のユーザがメールを返信する際の動作例を示すシーケンス図である。
【図１２】図１の個別メールシステムにおいて、復号化を行う際の動作例を示すシーケンス図である。
【符号の説明】
【００６４】
１０  メールクライアント装置
１１  メール送受信部
１２  メールユーザインタフェース
１３  アドレス帳
１４  メールボックス
２０  メール配信装置
２１  メール送受信部
２２  メール判断部
２３  メールボックス
２４  フィルタ情報管理部
２５  暗号化情報管理部
３０  アドレス変換装置
３１  アドレス変換部
３２  秘密鍵生成部
３３  暗号化情報管理部
４０  メール配信装置
５０  相手側メールクライアント装置
３００  メールアドレス
３０１〜３０５  データ
３００２  ホスト名
３０１３  通信相手情報
３０１４  通信相手情報
３０３１  ヘッダ
Ａ  送信者
Ｂ  通信相手
【図１】
0004607747.tif 000002
【図２】
0004607747.tif 000003
【図３】
0004607747.tif 000004
【図４】
0004607747.tif 000005
【図５】
0004607747.tif 000006
【図６】
0004607747.tif 000007
【図７】
0004607747.tif 000008
【図８】
0004607747.tif 000009
【図９】
0004607747.tif 000010
【図１０】
0004607747.tif 000011
【図１１】
0004607747.tif 000012
【図１２】
0004607747.tif 000013