(57)【特許請求の範囲】
【請求項１】
証明機関コンピューティングデバイスと送信者コンピューティングデバイスと受信者コンピューティングデバイスとを備えた電子通信システムにおいて、前記証明機関コンピューティングデバイスによって提供された情報から導き出されるＩＤベースの公開鍵によって暗号化されたメッセージを伝送する方法であって、前記証明機関コンピューティングデバイスは、一対の公開鍵および秘密鍵を有しており、前記証明機関コンピューティングデバイス、前記送信者コンピューティングデバイス、前記受信者コンピューティングデバイスのそれぞれは、それぞれのプロセッサを含み、前記方法は、
前記受信者コンピューティングデバイスが、登録要求を前記証明機関コンピューティングデバイスに提供することであって、前記登録要求は、前記受信者コンピューティングデバイスによって選択された第一の秘密の値と相関する、ことと、
前記証明機関コンピューティングデバイスが、前記送信者コンピューティングデバイスからの暗黙の証明証の要求を受信することであって、前記暗黙の証明証の要求は、前記送信者コンピューティングデバイスによって選択された前記受信者コンピューティングデバイスのＩＤ情報を含む、ことに応答して、前記証明機関コンピューティングデバイスの前記プロセッサが、前記登録要求と、前記送信者コンピューティングデバイスによって選択された前記ＩＤ情報と、前記証明機関コンピューティングデバイスによって選択された第二の秘密の値と、前記証明機関コンピューティングデバイスによって選択された証明証情報とから、公開鍵再構築データを生成することと、
前記証明機関コンピューティングデバイスが、暗黙の証明証を前記送信者コンピューティングデバイスに伝送することであって、前記暗黙の証明証は、前記公開鍵再構築データと前記証明証情報を含む、ことと、
前記送信者コンピューティングデバイスの前記プロセッサが、前記暗黙の証明証と、前記証明証情報と、前記証明機関コンピューティングデバイスの公開鍵とから、前記受信者コンピューティングデバイスの公開鍵を再構築することと、
前記送信者コンピューティングデバイスが、前記受信者コンピューティングデバイスの公開鍵によって暗号化されたメッセージを、前記受信者コンピューティングデバイスの公開鍵が前記暗黙の証明証から再構築されていることを示すものとともに前記受信者コンピューティングデバイスに伝送することであって、前記示すものは、前記送信者コンピューティングデバイスによって選択されたＩＤ情報を含む、ことと
を包含する、方法。
【請求項２】
前記方法は、前記受信者コンピューティングデバイスが、前記受信者コンピューティングデバイスの別のＩＤ情報を前記証明機関コンピューティングデバイスに提供するステップをさらに包含し、前記別のＩＤ情報は、前記受信者コンピューティングデバイスによって選択され、
前記公開鍵再構築データは、前記別のＩＤ情報を組み込む、請求項１に記載の方法。
【請求項３】
前記証明証情報は、前記証明機関コンピューティングデバイスによって選択された、前記受信者コンピューティングデバイスの第三のＩＤ情報を含む、請求項１に記載の方法。
【請求項４】
前記方法は、
前記受信者コンピューティングデバイスが、秘密鍵要求を前記証明機関コンピューティングデバイスに伝送することであって、前記秘密鍵要求は、前記暗黙の証明証を生成する間に用いられた、前記受信者コンピューティングデバイスのすべてのＩＤ情報を含む、ことと、
前記証明機関コンピューティングデバイスが、秘密鍵再構築データと前記公開鍵再構築データとを前記受信者コンピューティングデバイスに提供することであって、前記秘密鍵再構築データは、前記証明機関コンピューティングデバイスの秘密鍵と、前記すべてのＩＤ情報と、前記公開鍵再構築データと、前記第二の秘密の値とを数学的に組み合わせることによって前記証明機関コンピューティングデバイスの前記プロセッサによって生成される、ことと、
前記受信者コンピューティングデバイスの前記プロセッサが、前記暗黙の証明証と、前記証明証情報と、前記秘密鍵再構築データと、前記第一の秘密の値とから、前記受信者コンピューティングデバイスの秘密鍵を生成することと
をさらに包含する、請求項１〜請求項３のうちのいずれか一項に記載の方法。
【請求項５】
前記方法は、前記証明機関コンピューティングデバイスの前記プロセッサが、前記第二の秘密の値と、前記送信者コンピューティングデバイスからの前記暗黙の証明証の要求との間の対応を確立することをさらに包含する、請求項１〜請求項３のうちのいずれか一項に記載の方法。
【請求項６】
前記対応は、前記暗黙の証明証を生成する間に用いられたすべてのＩＤ情報を組み込む秘密の決定論的関数を用いて確立される、請求項５に記載の方法。
【請求項７】
楕円曲線暗号化スキームが用いられ、前記公開鍵再構築データは、式Ｒ＋ｋＧから数学的に決定され、
Ｒは、前記登録要求であり、ｋは、前記証明機関コンピューティングデバイスによって選択された前記第二の秘密の値であり、Ｇは、前記楕円曲線暗号化スキームのために選択された楕円曲線群Ｅのジェネレータである、請求項１〜請求項３のうちのいずれか一項に記載の方法。
【請求項８】
前記秘密鍵再構築データは、式ｋｈ＋ｃ  ｍｏｄ  ｎから数学的に決定され、
ｈは、前記暗黙の証明証から導き出されたハッシュ値であり、ｃは、前記証明機関コンピューティングデバイスの秘密鍵であり、ｎは、前記楕円曲線群Ｅの次数である、請求項７に記載の方法。
【請求項９】
前記受信者コンピューティングデバイスの公開鍵は、式ｈＰ＋Ｃから数学的に決定され、前記受信者コンピューティングデバイスの秘密鍵は、式ｒｈ＋ｓ  ｍｏｄ  ｎから数学的に決定され、
Ｐは、前記公開鍵再構築データであり、Ｃは、前記証明機関コンピューティングデバイスの公開鍵であり、ｒは、前記受信者コンピューティングデバイスによって選択された前記第一の秘密の値であり、ｓは、前記秘密鍵再構築データである、請求項８に記載の方法。
【請求項１０】
証明機関コンピューティングデバイスと送信者コンピューティングデバイスと受信者コンピューティングデバイスとを備えた電子通信システムにおいて、前記受信者コンピューティングデバイスの公開鍵を送信者コンピューティングデバイスに提供し、前記公開鍵に対応する秘密鍵を受信者コンピューティングデバイスに提供する方法であって、前記証明機関コンピューティングデバイス、前記送信者コンピューティングデバイス、前記受信者コンピューティングデバイスのそれぞれは、それぞれのプロセッサを含み、前記方法は、
前記受信者コンピューティングデバイスの前記プロセッサが、前記公開鍵への秘密の寄与を選択し、前記秘密の寄与から登録要求情報を生成することと、
前記受信者コンピューティングデバイスが、前記登録要求情報と、前記受信者コンピューティングデバイスに関連づけられた第一のＩＤ情報とを証明機関コンピューティングデバイスに提供することと、
前記送信者コンピューティングデバイスが、前記証明機関コンピューティングデバイスに前記公開鍵の暗黙の証明証の要求を伝送することであって、前記暗黙の証明証の要求は、前記受信者コンピューティングデバイスの前記第一のＩＤ情報と第二のＩＤ情報とを含み、前記第二のＩＤ情報は、前記送信者コンピューティングデバイスによって選択される、ことと、
前記証明機関コンピューティングデバイスの前記プロセッサが、前記登録要求情報と、前記第一のＩＤ情報および前記第二のＩＤ情報と、前記証明機関コンピューティングデバイスによって選択された証明証情報と、前記証明機関コンピューティングデバイスによって選択された秘密の寄与とから、公開鍵再構築データを生成することと、
前記証明機関コンピューティングデバイスが、前記暗黙の証明証を前記送信者コンピューティングデバイスに伝送することであって、前記暗黙の証明証は、前記公開鍵再構築データと前記証明証情報とを含む、ことと、
前記送信者コンピューティングデバイスの前記プロセッサが、前記暗黙の証明証と前記証明機関コンピューティングデバイスの公開鍵とから、前記公開鍵を計算することと、
前記証明機関コンピューティングデバイスが秘密鍵要求を前記受信者コンピューティングデバイスから受信すると、秘密化情報と前記暗黙の証明証とを前記受信者コンピューティングデバイスに提供することと、
前記受信者コンピューティングデバイスの前記プロセッサが、前記暗黙の証明証と前記秘密化情報とから、前記秘密鍵を計算することと
を包含する、方法。
【請求項１１】
前記秘密化情報は、前記暗黙の証明証と、前記証明機関コンピューティングデバイスによって選択された前記秘密の寄与と、前記証明機関コンピューティングデバイスの秘密鍵とを数学的に組み合わせることによって前記証明機関コンピューティングデバイスの前記プロセッサによって生成される、請求項１０に記載の方法。
【請求項１２】
証明機関コンピューティングデバイスと送信者コンピューティングデバイスと受信者コンピューティングデバイスとを備えた電子通信システムにおいて、前記受信者コンピューティングデバイスの公開鍵を前記送信者コンピューティングデバイスに提供する方法であって、前記公開鍵は、前記受信者コンピューティングデバイスのＩＤ情報に基づいており、前記証明機関コンピューティングデバイス、前記送信者コンピューティングデバイス、前記受信者コンピューティングデバイスのそれぞれは、それぞれのプロセッサを含み、前記方法は、
前記受信者コンピューティングデバイスが、前記受信者の登録要求を前記証明機関コンピューティングデバイスに提供することであって、前記登録要求は、前記受信者コンピューティングデバイスの第一のＩＤ情報と、前記受信者コンピューティングデバイスによって選択された第一の秘密の値と相関する登録情報とを含む、ことと、
前記受信者コンピューティングデバイスが、前記第一のＩＤ情報を前記送信者に提供することと、
前記送信者コンピューティングデバイスが、前記証明機関コンピューティングデバイスに暗黙の証明証の要求を伝送することであって、前記暗黙の証明書の要求は、前記受信者コンピューティングデバイスの前記第一のＩＤ情報と第二のＩＤ情報とを含み、前記第二のＩＤ情報は、前記送信者コンピューティングデバイスによって選択される、ことと、
前記証明機関コンピューティングデバイスの前記プロセッサが、前記登録要求と、前記第一のＩＤ情報および前記第二のＩＤ情報と、前記証明機関コンピューティングデバイスによって選択された、前記受信者コンピューティングデバイスの第三のＩＤ情報と、前記証明機関コンピューティングデバイスによって選択された第二の秘密の値とから、公開鍵再構築データを生成することと、
前記証明機関コンピューティングデバイスが、暗黙の証明証を前記送信者コンピューティングデバイスに伝送することであって、前記暗黙の証明証は、前記公開鍵再構築データと前記第三のＩＤ情報とを含む、ことと、
前記送信者コンピューティングデバイスの前記プロセッサが、前記公開鍵再構築データと、前記第一、第二のおよび第三のＩＤ情報と、前記証明機関コンピューティングデバイスの公開鍵とから、前記受信者コンピューティングデバイスの公開鍵を再構築することと
を包含する、方法。
【請求項１３】
証明機関コンピューティングデバイスと送信者コンピューティングデバイスと受信者コンピューティングデバイスとを備えたシステムであって、前記証明機関コンピューティングデバイス、前記送信者コンピューティングデバイス、前記受信者コンピューティングデバイスのそれぞれは、それぞれのプロセッサを含み、前記システムは、請求項１〜請求項１２のうちのいずれか一項に記載の方法を実行するように構成されている、システム。
【請求項１４】
請求項１〜請求項１２のうちのいずれか一項に記載の方法を実行するためのコンピュータ読み取り可能な命令が格納されたコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（発明の分野）
本発明は、概して、暗号化の分野に関し、特に、本発明は、ＩＤベース暗号化（ｉｄｅｎｔｉｔｙ−ｂａｓｅｄ  ｅｎｃｒｙｐｔｉｏｎ）システムで用いられ得る暗黙の証明証を提供するシステムおよび方法に関する。
【背景技術】
【０００２】
（発明の背景）
公開鍵暗号技術は、数学的に関係のある公開鍵と秘密鍵とを利用する。該関係は、公開鍵が秘密鍵から容易に計算され得るが、公開鍵からの秘密鍵の計算は、実行不可能であると考えられる。従って、秘密鍵は、非公開に維持される。鍵は、様々な周知のプロトコルで用いられることにより、メッセージをセキュア化するかまたはメッセージに署名する。メッセージをセキュア化するためには、受信者の公開鍵が、送信者によって用いられることにより、メッセージを暗号化し、そして受信者は、当人の秘密鍵を用いて、メッセージを暗号解読する。メッセージに署名するためには、作成者は、当人の秘密鍵を用いて、署名を生成し、該署名は、公開鍵の使用により任意の受信者によって検証され得る。各々の場合において、公開鍵は、高信頼機関（ｔｒｕｓｔｅｄ  ａｕｔｈｏｒｉｔｙ）（「ＴＡ」）などの信頼できる関係者から取得される必要がある。
【０００３】
ＩＤベースの公開鍵暗号技術において、エンティティの公開鍵は、それらの電子メールアドレスまたは由来などのエンティティのＩＤである。ＩＤベース暗号化（「ＩＢＥ」）システムは、多くの利点を有しており、特に、
１．送信者は、メッセージを暗号化する前に、公開鍵を取得する必要がない
２．受信者が秘密鍵を所有する前に、送信者によって暗号化が行われ得る
３．ＩＤは、受信者だけでなく送信者によっても選ばれ得る
４．既存のＩＤおよびアドレスが公開鍵になり得る
５．公開鍵は、人が記憶可能であり得る。
【０００４】
多くのＩＤベース暗号化スキームが提案されている。１つの簡単なスキームにおいて、各ユーザは、当人の秘密鍵／公開鍵の対を生成する責任がある。ユーザは、その秘密鍵を、ＴＡを含む誰にも開示しない。各ユーザは、単にその公開鍵をそのＩＤとして採用し、例えば、電子メールアドレスまたはウェブサイトアドレスとして公開鍵を用い得る。しかしながら、ユーザは、生成され、ユーザのＩＤとして用い得る電子メールアドレスまたはウェブサイトアドレスなどの、どのような公開鍵（または、それの表示）にも満足する必要がある。提案された他のＩＢＥスキームもあるが、どれも実用的であると考えられていない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記された欠点のうちの少なくとも１つを緩和するか、または除去することが本発明の目的である。
【課題を解決するための手段】
【０００６】
（発明の概要）
一実施形態において、ＩＢＥシステムは、証明機関（ｃｅｒｔｉｆｉｃａｔｉｏｎ  ａｕｔｈｏｒｉｔｙ）（「ＣＡ」）によって発行された暗黙の証明証に基づいている。該暗黙の証明プロセスの事前証明フェーズにおいて、受信者は、証明証を要求するが、該受信者のＩＤを選ぶ送信者からの暗号化されたメッセージを受信してはじめて、該受信者の暗黙の証明証を受信する。該証明機関は、該暗黙の証明証を該送信者および該受信者に必要に応じて発行し、途中で必要な認証（ＩＤの試験）を行う。しかしながら、該証明機関は、該受信者の秘密鍵を所有していない。該受信者は、該ＣＡから受信された該暗黙の証明証と、当人の秘密の寄与（ｓｅｃｒｅｔ  ｃｏｎｔｒｉｂｕｔｉｏｎ）と、該受信者に関連する任意の公開情報とを組み合わせることによって、当人の秘密鍵を構築し、該任意の公開情報は、該受信者、該ＣＡおよび該送信者のうちのいずれか一者によって選択され得る。このスキームにおいては、該受信者の該公開鍵と該秘密鍵との両方が、該受信者のＩＤに基づいている。
【０００７】
本発明の一局面においては、証明機関によって提供された情報から導き出されるＩＤベースの公開鍵によって暗号化されたメッセージを伝送する方法が提供される。該証明機関は、一対の公開鍵と秘密鍵とを有する。該方法は、受信者の登録要求および登録情報を該証明機関に提供するステップであって、該登録情報は、該受信者によって選択された該受信者のＩＤ情報を含み、該登録要求は、該受信者によって選択された第一の秘密の値（ｓｅｃｒｅｔ  ｖａｌｕｅ）と相関する、ステップと、該受信者によって選択されたＩＤ情報を送信者に提供するステップと、該送信者、および該送信者によって選択された該受信者のＩＤ情報の別のものから要求を受信する際に、該証明機関は、該登録要求、該登録情報、該送信者が選択した該受信者のＩＤ情報、該証明機関によって選択された第二の秘密の値、および該証明機関によって選択された証明証情報から公開鍵再構築データを生成するステップと、暗黙の証明証を該送信者に伝送するステップであって、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む、ステップと、該暗黙の証明証、該証明証情報および該証明機関の公開鍵から該受信者の公開鍵を再構築するステップと、該受信者の該公開鍵によって暗号化されたメッセージを、該公開鍵が該暗黙の証明証から再構築されることの指示とともに該受信者に伝送するステップとを含む。
【０００８】
上記送信者からの受信メッセージを暗号解読するために、上記受信者は、秘密鍵要求を上記証明機関に伝送し、該秘密鍵要求は、上記暗黙の証明証を生成する間に用いられた該受信者のすべてのＩＤ情報を含む。該証明機関は次いで、該受信者がその秘密鍵を再構築するために、該受信者に秘密鍵再構築データおよび上記公開鍵再構築データを提供する。該秘密鍵再構築データは、該証明機関の秘密鍵、該すべてのＩＤ情報、該公開鍵再構築データ、および上記第二の秘密の値を数学的に組み合わせることによって生成される。該受信者の秘密鍵は、該暗黙の証明証、上記証明証情報、該秘密鍵再構築データ、および上記第一の秘密の値から生成される。
【０００９】
本発明の別の局面においては、受信者の公開鍵を送信者に提供し、該公開鍵に対応する秘密鍵を受信者に提供する方法が提供される。該方法は、以下のステップを含む。最初に、該受信者が、該公開鍵への秘密の寄与を選択し、登録要求情報を該秘密の寄与から生成し、次いで、該登録要求情報および該受信者と関連づけられた第一のＩＤ情報を証明機関に提供する。送信者が、該受信者の公開鍵を必要としているときには、該証明機関に該公開鍵の暗黙の証明証の要求を伝送し、該暗黙の証明証の要求は、該受信者の該第一のＩＤ情報および第二のＩＤ情報を含む。該証明機関は、公開鍵再構築データを、該登録要求情報、該第一のＩＤ情報および該第二のＩＤ情報、該証明機関によって選択された証明証情報、ならびに該証明機関によって選択された秘密の寄与から生成し、該暗黙の証明証を該送信者に伝送し、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む。該送信者は、該公開鍵を該暗黙の証明証および該証明機関の公開鍵から計算し、情報を該受信者と交換するために、該公開鍵を用いる。該受信者は、該送信者から受信したメッセージを暗号解読するために、該受信者の秘密鍵を必要とするときには、秘密鍵要求を該証明機関に送信する。該証明機関は、該暗黙の証明証とともに該受信者に秘密化情報を生成し、提供する。該受信者は、次いで、該暗黙の証明証および該秘密化情報から該秘密鍵を計算する。
【００１０】
他の局面において、本発明は、上記された局面の様々な組み合わせとサブセットとを提供する。
本発明は、例えば、以下を提供する。
（項目１）
通信システムにおいて、証明機関によって提供された情報から導き出されるＩＤベースの公開鍵によって暗号化されたメッセージを伝送する方法であって、該証明機関は、一対の公開鍵および秘密鍵を有しており、該方法は、
受信者の登録要求を該証明機関に提供することであって、該登録要求は、該受信者によって選択された第一の秘密の値と相関する、ことと、
送信者からの要求を受信する際に、該送信者からの該要求は、該送信者によって選択された該受信者のＩＤ情報を含むことであって、該証明機関は、該登録要求、該送信者によって選択された該ＩＤ情報、該証明機関によって選択された第二の秘密の値、および該証明機関によって選択された証明証情報から公開鍵再構築データを生成する、ことと、
暗黙の証明証を該送信者に伝送することであって、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む、ことと、
該暗黙の証明証、該証明証情報および該証明機関の公開鍵から該受信者の公開鍵を再構築することと、
該受信者の該公開鍵によって暗号化されたメッセージを、該公開鍵が該暗黙の証明証から再構築されることの指示とともに該受信者に伝送することであって、該指示は、該送信者に選択されたＩＤ情報を含む、ことと
を包含する、方法。
（項目２）
前記受信者の別のＩＤ情報を前記証明機関に提供するステップであって、該別のＩＤ情報は、該受信者によって選択されている、ステップ
をさらに包含し、
前記公開鍵再構築データは、該別のＩＤ情報を組み込む、
項目１に記載の方法。
（項目３）
前記証明証情報は、前記証明機関によって選択された、前記受信者の第三のＩＤ情報を含む、項目１に記載の方法。
（項目４）
前記受信者が秘密鍵要求を前記証明機関に伝送することであって、該秘密鍵要求は、前記暗黙の証明証を生成する間に用いられた、該受信者のすべてのＩＤ情報を含む、ことと、
該証明機関が秘密鍵再構築データおよび前記公開鍵再構築データを該受信者に提供することであって、該秘密鍵再構築データは、該証明機関の秘密鍵、該すべてのＩＤ情報、該公開鍵再構築データ、および前記第二の秘密の値を数学的に組み合わせることによって生成される、ことと
をさらに包含し、
該受信者の秘密鍵は、該暗黙の証明証、前記証明証情報、該秘密鍵再構築データおよび前記第一の秘密の値から生成される、
項目１〜項目３のうちのいずれか一項に記載の方法。
（項目５）
前記第二の秘密の値と、前記送信者からの前記要求との間の対応を確立すること
をさらに包含する、
項目１〜項目３のうちのいずれか一項に記載の方法。
（項目６）
前記対応は、前記暗黙の証明証を生成する間に用いられたすべてのＩＤ情報を組み込む秘密の決定論的関数を用いて確立される、項目５に記載の方法。
（項目７）
楕円曲線暗号化スキームが用いられ、前記公開鍵再構築データは、式Ｒ＋ｋＧから数学的に決定され、
Ｒは、前記登録要求であり、ｋは、前記証明機関によって選択された前記第二の秘密の値であり、Ｇは、該楕円曲線暗号化スキームのために選択された楕円曲線群Ｅのジェネレータである、
項目１〜項目３のうちのいずれか一項に記載の方法。
（項目８）
前記秘密鍵再構築データは、式ｋｈ＋ｃ  ｍｏｄ  ｎから数学的に決定され、
ｈは、前記暗黙の証明証から導き出されたハッシュ値であり、ｃは、前記証明機関の秘密鍵であり、ｎは、前記楕円曲線群Ｅの次数である、
項目７に記載の方法。
（項目９）
前記受信者の公開鍵は、式ｈＰ＋Ｃから数学的に決定され、該受信者の秘密鍵は、式ｒｈ＋ｓ  ｍｏｄ  ｎから数学的に決定され、
Ｐは、前記公開鍵再構築データであり、Ｃは、前記証明機関の公開鍵であり、ｒは、該受信者によって選択された前記第一の秘密の値であり、ｓは、前記秘密鍵再構築データである、
項目８に記載の方法。
（項目１０）
受信者の公開鍵を送信者に提供し、該公開鍵に対応する秘密鍵を受信者に提供する方法であって、該方法は、
該受信者が、該公開鍵への秘密の寄与を選択し、登録要求情報を該秘密の寄与から生成するステップと、
該登録要求情報および該受信者と関連づけられた第一のＩＤ情報を証明機関に提供するステップと、
該証明機関に該公開鍵の暗黙の証明証の要求を伝送するステップであって、該暗黙の証明証の要求は、該送信者によって選択された、該受信者の該第一のＩＤ情報および第二のＩＤ情報を含む、ステップと、
該証明機関が、公開鍵再構築データを、該登録要求情報、該第一のＩＤ情報および該第二のＩＤ情報、該証明機関によって選択された証明証情報、および該証明機関によって選択された秘密の寄与から生成するステップと、
該暗黙の証明証を該送信者に伝送するステップであって、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む、ステップと、
該公開鍵を該暗黙の証明証および該証明機関の公開鍵から計算するステップと、
秘密鍵要求を該受信者から受信する際に、秘密化情報および該暗黙の証明証を該受信者に提供するステップと、
該受信者が、該秘密鍵を該暗黙の証明証および該秘密化情報から計算するステップと
を包含する、方法。
（項目１１）
前記秘密化情報は、前記暗黙の証明証、前記証明機関によって選択された前記秘密の寄与、および該証明機関の秘密鍵を数学的に組み合わせることによって生成される、項目１０に記載の方法。
（項目１２）
通信システムにおいて、受信者の公開鍵を送信者に提供する方法であって、該公開鍵は、該受信者のＩＤ情報に基づいており、該方法は、
該受信者の登録要求を証明機関に提供することであって、該登録要求は、該受信者の第一のＩＤ情報、および該受信者によって選択された第一の秘密の値と相関する登録情報を含む、ことと、
該第一のＩＤ情報を該送信者に提供することと、
該証明機関に暗黙の証明証の要求を伝送することであって、該要求は、該送信者によって選択された、該受信者の該第一のＩＤ情報および第二のＩＤ情報を含む、ことと、
公開鍵再構築データを、該登録要求、該第一のＩＤ情報および該第二のＩＤ情報、該証明機関によって選択された、該受信者の第三のＩＤ情報、および該証明機関によって選択された第二の秘密の値から生成することと、
暗黙の証明証を該送信者に伝送することであって、該暗黙の証明証は、該公開鍵再構築データおよび該第三のＩＤ情報を含む、ことと、
該受信者の公開鍵を、該公開鍵再構築データ、該第一のＩＤ情報および該第二のＩＤ情報および該第三のＩＤ情報、および該証明機関の公開鍵から再構築することと
を包含する、方法。
【図面の簡単な説明】
【００１１】
本発明の一実施形態または複数の実施形態が、限定の目的ではなく説明の目的のために、ここで添付の図面を参照しながら例としてさらに詳細に説明される。
【図１】図１は、ＩＢＥシステムを概略的に例示している図であり、システムの１人のメンバーが証明機関としてふるまう。
【図２】図２は、図１に示されたＩＢＥシステムで使用する暗黙の証明証を発行し、公開鍵／秘密鍵の対を計算する方法のステップを概略的に例示しているフローチャートである。
【発明を実施するための形態】
【００１２】
（実施形態の詳細な説明）
以下の説明およびそこに記載された実施形態は、本発明の原理の特定の実施形態の例または複数の例を示す目的で提供される。これらの例は、限定する目的ではなく、それらの例の原理および本発明を説明する目的のために提供される。以下の説明において、同様な部分が、本明細書および図面にわたって同じそれぞれの参照番号によって示される。
【００１３】
図１は、中央の証明機関１０２を含むＩＢＥシステム１００を概略的に例示している。ＩＢＥシステム１００は、送信者１０６（またはより一般的に、送信者Ａｌｉｃｅまたは送信者Ａと呼ばれる）と、受信者１０８（またはより一般的に、受信者Ｂｏｂまたは受信者Ｂと呼ばれる）とを含む多くのユーザ、すなわちエンティティ１０４を有する。各ユーザ１０４は、通信リンク１１０を介してＣＡ１０２と通信する。ＣＡは、中央の証明機関であるが、高信頼機関ではない。
【００１４】
送信者１０６と受信者１０８とは、通信チャネル１１２を介してユーザの対の間でメッセージを交換する。送信者１０６がメッセージを送信する必要があるときに、送信者１０６は、セッション鍵ｚを生成することにより、メッセージを暗号化する。セッション鍵ｚは、受信者１０８の公開鍵と送信者本人の秘密鍵とに基づいて構築される。暗号化の結果（すなわち、暗号化されたメッセージ）が、通信チャネル１１２を介して受信者１０８に送信される。受信者１０８の公開鍵は、本明細書中に記載された体系的態様で受信者１０８のＩＤ情報から導き出される。受信者１０８は、同様に、当人の秘密鍵と送信者の公開鍵とに基づいてセッション鍵ｚを生成することにより、メッセージを暗号解読する。秘密鍵は、ＣＡ１０２と、受信者１０８当人からの秘密鍵への秘密の寄与とによって所有されている情報から受信者１０８によって計算される。
【００１５】
その所有者からの秘密鍵と、該秘密鍵への秘密の寄与との間の一般的関係は、すべてのユーザに対して同じである。このことは、すべてのユーザがユーザ当人の秘密鍵を構築することに対して同一の対応を用い得るので、望ましい。従って、受信者１０８は、当人の秘密鍵への当人の寄与を秘密に保持しておかなければならず、その結果として、誰もその秘密鍵を一般的関係から計算し得ない。
【００１６】
ＣＡは、任意のユーザの任意の秘密鍵をＣＡが所有しないという点において、任意のユーザによって信頼される必要がない。ＣＡがユーザについて、ユーザのＩＤがＣＡによって認証されることができるほど十分な情報を所有すれば十分である。すべてのユーザの秘密鍵を所有する代わりに、ＣＡ１０２は、必要に応じて、受信者１０８に必要なデータを提供して、受信者１０８の秘密鍵を構築する。同様に、ＣＡはまた、必要に応じて、送信者１０６に必要なデータを提供して、受信者１０８の公開鍵を構築する。下記されるスキームにおいて、ＣＡは、暗黙の証明証を、送信者が受信者の公開鍵を計算するために送信者に送信し、かつ受信者がその対応する秘密鍵を計算するために受信者に送信する。
【００１７】
ＩＢＥシステム１００は、任意のメッセージ交換ネットワーク上で実装され得る。例えば、通信システム１００は、郵便による郵便物に基づき得る。各ユーザは、名前および郵便の住所によって識別される。郵便局による郵便物の送達が、通信チャネル１１２を確立する。通信システム１００はまた、電子メッセージネットワークシステムであり得る。各ユーザは、ユーザに届き得るネットワークアドレスを有する。通信チャネル１１２は次いで、ユーザの対をリンクするネットワーク接続である。例えば、通信システムが電子メールシステムである場合において、ネットワークアドレスは、電子メールアドレスである。通信システムが、携帯電話のテキストメッセージシステムである場合において、ネットワークアドレスは、電話番号である。ユーザの対の間の接続は、インターネットベースの接続または公衆交換ベースの接続、あるいは任意の他の適切なデータ通信リンクであり得る。
【００１８】
ここで、一方のユーザが送信者１０６と呼ばれるけれども、ユーザの対が役割を逆にするときには、すなわち、もう一方のユーザが電子メッセージを送信するときには、同じ説明があてはまる。単に説明の便宜上、一方のユーザが送信者と呼ばれ、もう一方のユーザが受信者と呼ばれる。
【００１９】
さらに、本明細書において、違ったふうに状況が要求しない限り、「送信者」は、メッセージを送信するシステムのユーザか、電子メッセージを送信するためにユーザによって利用される電子メールプログラムなどのメッセージソフトウェアプログラムか、または電子メッセージを送信するためのメッセージプログラムが実行される汎用コンピュータを表すために互換的に用いられる。汎用コンピュータは、一般に、ＣＰＵと、メモリ記憶デバイスおよび記憶デバイス（両方ともＣＰＵにアクセス可能である）と、入力／出力（Ｉ／Ｏ）デバイスとを有する。メッセージプログラムは、記憶デバイス上に格納され得る。同様に、用語「受信者」は、違ったふうに状況が要求しない限り、メッセージを受信するシステムのユーザか、電子メッセージを受信するためにユーザによって利用されるメッセージソフトウェアプログラムか、または電子メッセージを受信するためのメッセージプログラムが実行される汎用コンピュータを表すために互換的に用いられる。
【００２０】
図２を参照すると、公開鍵および秘密鍵をユーザが再構築するための暗黙の証明証を発行する方法が概略的に示されている。本方法に従った、証明証は、いくつかのフェーズと、ＩＤベース暗号化の利益の多くを達成するような方法とにおいて発行される。次の表１において要約されるように、該方法は、プロセス２００であり、少なくとも３つのフェーズを含む。３つのフェーズとは、登録２０２と、公開２０４と、秘密化（ｐｒｉｖａｔｉｚａｔｉｏｎ）２０６とである。
【００２１】
【表１−１】
0005138775.tif 000002
【００２２】
【表１−２】
0005138775.tif 000003
登録２０２の間に、受信者Ｂｏｂ１０８は、証明機関１０２に登録する。Ｂｏｂ１０８は、登録要求Ｒと当人の登録情報とをＣＡ１０２に提出することによって登録する。登録情報は、当人の電子メールアドレスなどの当人のＩＤ関連情報Ｉ１を含む。登録要求は、受信者Ｂｏｂ１０８からの秘密の数字ｒなどの秘密の寄与から導き出される。秘密の寄与ｒは、Ｂｏｂだけに既知であり、一方で、Ｂｏｂ１０８とＣＡ１０２との両方は、登録要求Ｒを両者の間で秘密に保持する。好ましくは、登録要求Ｒは、秘密の寄与ｒ上の暗号操作から導き出され、その結果として、ＣＡは、ｒに関する何らの知識を有し得ない。
【００２３】
以下は、楕円曲線暗号システムにおいて秘密の寄与からＲを計算する例である。受信者Ｂｏｂ１０８は、最初にステップ２１０において、範囲［１，ｎ−１］内の任意の整数ｒを当人の秘密の寄与として選択する。ここで、ｎは、ジェネレータポイント（ｇｅｎｅｒａｔｏｒ  ｐｏｉｎｔ）Ｇを有する楕円曲線群Ｅの次数である。登録要求Ｒは、整数ｒと、楕円曲線群ＥのジェネレータＧとの積であり、
Ｒ＝ｒ＊Ｇ
となる。
【００２４】
ステップ２１２において、受信者Ｂｏｂ１０８は、セキュアなチャネル上でＩ１およびＲを証明機関１０２に提出する。Ｂｏｂは、ｒを誰にも全く明らかにしない。Ｒは、ＣＡに開示されるが、他の誰にも開示されない。しかしながら、ＢｏｂのＩＤ関連情報Ｉ１は、概して利用可能にされ、特に、送信者Ａｌｉｃｅ１０６に利用可能にされる。Ｂｏｂは、例えば、ＩＤ関連情報Ｉ１を直接Ａｌｉｃｅに送信することによって利用可能にし得、代替案としては、Ａｌｉｃｅ１０６は、証明機関１０２などの共用ディレクトリサービスからＩＤ関連情報Ｉ１を導き出し得る。
【００２５】
登録２０２の間、証明機関１０２は、暗黙の証明証をＢｏｂに発行しないが、その方針に従ってセキュリティ情報をＢｏｂから取得し、かつＢｏｂの信用証明物（ｃｒｅｄｅｎｔｉａｌ）をチェックし、それによって、暗黙の証明証を後でＢｏｂに対して発行し得る。後で明らかになるように、登録要求Ｒは、Ｂｏｂの公開鍵Ｂおよび秘密鍵ｂに寄与するが、一方でＢｏｂの秘密の数字ｒは、当人の秘密鍵ｂだけに寄与する。
【００２６】
公開２０４の間、送信者Ａｌｉｃｅ１０６は、証明機関１０２に、Ｂｏｂ用の暗黙の証明証を発行するように要求する（ステップ２２０）。証明機関１０２は、暗黙の証明証を計算し（ステップ２２２）、暗黙の証明証をＡｌｉｃｅに発行する（ステップ２２４）。Ａｌｉｃｅ１０６は、ステップ２２６において、受信された暗黙の証明証からＢｏｂの公開鍵を計算する。
【００２７】
ステップ２２０において暗黙の証明証の発行を要求するときに、Ａｌｉｃｅ１０６は、ＢｏｂのＩＤに関連する情報の別の一片Ｉ２を選択し、そして含める。Ａｌｉｃｅは、例えば、Ｂｏｂの誕生日、年齢または国籍などのパラメータを選択し得る。
【００２８】
ステップ２２２において、証明機関１０２は、Ｂｏｂの信用証明物から選択されたＩＤ関連情報Ｉ３を証明証情報として確立し、そして下記されるように、暗黙の証明証を計算する。ＩＤ関連情報Ｉ１、Ｉ２およびＩ３の組のために、証明機関１０２は、最初に任意の整数ｋＩ１，Ｉ２，Ｉ３を範囲［１，ｎ−１］から選択する。証明機関１０２は、ＩＤ関連情報Ｉ１、Ｉ２およびＩ３の組と、この要求に対して送信者から選択された任意の整数ｋＩ１，Ｉ２，Ｉ３との間のこの対応に注目する。ＢｏｂのＩＤ関連情報と任意の整数との間の対応を確立することにおいて、証明機関は、Ｉ１を用いないか、Ｉ３を用いないか、またはその両方を用いないことを選び得る。しかしながら、概して、送信者Ａｌｉｃｅによって選択されたＩＤ関連情報Ｉ２は、常に含まれる。例えば、証明機関は、関数の入力における唯一のＩＤ関連情報としてＩ２をキー入力された擬似ランダム関数から擬似乱数ｋを計算し得る。
【００２９】
証明機関１０２は次いで、Ｂｏｂの再構築公開データＰ、ハッシュ値ｈ、および秘密の整数ｓを次の式に従って、
Ｐ＝Ｒ＋ｋＩ１，Ｉ２，Ｉ３＊Ｇ
ｈ＝Ｈ（Ｐ，Ｉ１，Ｉ２，Ｉ３）
ｓ＝ｋＩ１，Ｉ２，Ｉ３＊ｈ＋ｃ  ｍｏｄ  ｎ
として計算する。ここで、Ｈは、好ましくはセキュアなハッシュ関数であり、そしてｃとＣとは、それぞれＣＡの秘密鍵と公開鍵とである。証明機関１０２は、ステップ２２４において、暗黙の証明証（Ｐ；Ｉ２）をＡｌｉｃｅ１０６に発行する。暗黙の証明証（Ｐ；Ｉ２）が、この要求のためだけであることは注目されるべきである。Ａｌｉｃｅまたは一部の他のユーザによって要求された別のセッションにおいて、ＩＤ関連情報Ｉ１、Ｉ２およびＩ３の同一の組が選択されるが、異なる任意の整数ｋ’Ｉ１，Ｉ２，Ｉ３が生成されることは可能であり、その場合においては、異なる暗黙の証明証（Ｐ’；Ｉ２）が存在する。
【００３０】
ステップ２２６において、Ａｌｉｃｅ１０６は、最初にｈを再構築し、次いでＢを計算することによって、Ｂｏｂの公開鍵Ｂを
ｈ＝Ｈ（Ｐ，Ｉ１，Ｉ２，Ｉ３）
Ｂ＝ｈ＊Ｐ＋Ｃ
として計算する。上記は、証明機関１０２が、すでにその公開鍵ＣをＡｌｉｃｅ１０６とＢｏｂ１０８とに対して認証された態様で事前配布したことを想定する。
【００３１】
Ｂｏｂの公開鍵Ｂを用いて、Ａｌｉｃｅは、Ｂｏｂへのメッセージｍを暗号化することが可能であり、
Ｍ＝ＥＮＣＢ（ｍ）
と表される。ここで、ＥＮＣＢ（  ）は、Ｂｏｂの公開鍵Ｂを組み込む暗号化操作を表している。暗号化されたメッセージＭは、任意の態様でＢｏｂに送信され得、例えば、ＡｌｉｃｅとＢｏｂとの間の非セキュアな通信チャネル１１２上で送信され得る。Ｂｏｂが、暗号化されたメッセージを暗号解読し得るように、Ａｌｉｃｅはまた、暗号化されたメッセージＭとともにＩ２およびＩ３をＢｏｂに送信する。
【００３２】
この時点において、Ｂｏｂは、新しく発行された暗黙の証明証（Ｐ；Ｉ２）と関連づけられた当人の秘密鍵ｂを有さず、また当人の公開鍵Ｂをも有しない。従って、暗号化されたメッセージＭをＡｌｉｃｅ１０６から受信する際に、Ｂｏｂ１０８は、メッセージを暗号解読することができない。代わりに、Ｂｏｂは、暗号化されたメッセージと関連づけられたヘッダ情報またはいくつかの他の手段によって、メッセージＭが特定の証明証によって暗号化されており、そして証明機関１０２の支援によってＢｏｂが秘密鍵を決定しなければならないことを通知される。Ｂｏｂは、秘密化２０６の間に、秘密鍵ｂを決定し、一旦秘密鍵が決定されると、メッセージＭを暗号解読する。
【００３３】
秘密化２０６の間、Ｂｏｂ１０８は、証明機関１０２に対して、当人の秘密鍵生成アルゴリズムへの入力を完了するために必要な情報を供給するように要求する。最初に、ステップ２３０において、Ｂｏｂは、Ａｌｉｃｅによって提供された必要なＩＤ情報Ｉ２およびＩ３、ならびに登録２０２の間にＢｏｂによって最初に提出されたＩＤ情報Ｉ１を証明機関１０２に送信する。ステップ２３２において、情報に対するＢｏｂの要求が検証される。Ｂｏｂによって要求されている必要な情報は、公開データの再構築ＰおよびＣＡの秘密の寄与ｓ、つまり、対（Ｐ，ｓ）である。敵対者による任意の不正な試みを阻止するために、証明機関１０２は、Ｂｏｂが登録において主張するような人物であることを最初に検証し、そしてＡｌｉｃｅから受信されたＩ２、Ｉ３などの新しい暗黙の証明証における任意の特別な条件がまた満たされることをさらにチェックする。一旦証明機関を満足させると、証明機関は、必要な情報（Ｐ，ｓ）をＢｏｂに送信し、該必要な情報は、Ｂｏｂが新しい暗黙の証明証（Ｐ；Ｉ２）に対応する新しい秘密鍵の計算を完了するために必要とする。
【００３４】
ステップ２３４において、Ｂｏｂは、ハッシュ値ｈ、次いで当人の秘密鍵ｂを
ｈ＝Ｈ（Ｐ，Ｉ１，Ｉ２，Ｉ３）
ｂ＝ｒ＊ｈ＋ｓ  ｍｏｄ  ｎ                        （２）
として計算することにより、当人の秘密鍵を再構築する。この時点において、Ｂｏｂ１０８は、Ａｌｉｃｅ１０６からの暗号化されたメッセージＭを
ｍ＝ＤＥＣｂ（Ｍ）
として暗号解読することが可能である。
【００３５】
どの時点においても、証明機関１０２はＢｏｂの秘密鍵ｂを知ることができないことが認識される。特に、証明機関は、Ｂｏｂの秘密鍵を有することがなく、またＢｏｂの秘密鍵を取得することもできない。なぜならば、Ｂｏｂの秘密鍵への当人の寄与ｒが常に秘密にされるからである。従って、証明機関は、Ｂｏｂの公開鍵が有効使用に入った後でさえも、Ｂｏｂのために暗号解読したり、署名したりすることができない。この点で、証明機関１０２は、従来のＩＤベースの暗号化および署名の意味において高信頼機関である必要がない。すなわち、証明機関は、ＢｏｂのＩＤの認証性を検証することに対して信頼される必要があるが、それ以上に信頼される必要がない。実際に、Ｂｏｂの秘密鍵は、証明機関１０２に対して信頼されない。
【００３６】
選択的な、さらなるステップとして、Ｂｏｂ１０８は、証明機関１０２から受信した応答（Ｐ，ｓ）の認証性を検証し得る。Ｂｏｂ１０８は、暗黙の証明証に対する当人の寄与Ｉ１と、当人の内密の証明証要求Ｒとをすでに知っている。Ｂｏｂはまた、Ａｌｉｃｅ１０６によって選択された寄与Ｉ２と、証明機関１０２によって選択されたＩ３とを有する。Ｂｏｂが応答（Ｐ，ｓ）を証明証要求Ｒに対して受信するときには、次の式
Ｂ＝ｈ＊Ｒ＋ｓ＊Ｇ＝ｈ＊Ｐ＋Ｃ＝Ｂ
が成り立つことをチェックすることによって、Ｂｏｂが応答の認証性を検証することは可能である。この式は成り立つはずである。なぜならば、
Ｂ＝ｂ＊Ｇ＝（ｈ＊ｒ＋ｓ）＊Ｇ＝（ｈ＊ｒ＋ｈ＊ｋ＋ｃ）＊Ｇ
＝ｈ＊（ｋ＋ｒ）＊Ｇ＋ｃ＊Ｇ
＝ｈ＊Ｐ＋Ｃ＝Ｂ
であるからである。従って、Ｂｏｂは、ジェネレータポイントＧに関して、Ｂ＝ｈＰ＋Ｃの対数を知っている。Ａｌｉｃｅは、再構築公開データＰ、証明証情報（Ｉ１，Ｉ２，Ｉ３）およびＣＡの公開鍵Ｃだけを用いてＢを再構築し得る。
【００３７】
証明機関は、概して、Ｂｏｂの証明証要求Ｒを格納する必要がある。証明機関がその寄与ｋＩ１，Ｉ２，Ｉ３をＢｏｂの秘密鍵に対して生成するときに、証明機関は、（Ｉ１，Ｉ２，Ｉ３）の秘密の決定論的関数によって、そうすることを望み得る。従って、証明機関は、暗黙の証明証の各公開に対してｋＩ１，Ｉ２，Ｉ３を別々に格納する必要がないであろうし、格納されたｋＩ１，Ｉ２，Ｉ３と、ＩＤ情報（Ｉ１，Ｉ２，Ｉ３）の組または証明証要求Ｒとの間の何らの対応をもまた記録しない。
【００３８】
実際に、単一の登録フェーズが、多くの異なる公開フェーズおよび秘密化フェーズに対応し得る。例えば、Ａｌｉｃｅは、暗黙の証明証をメッセージ毎に要求し得、その結果として、Ｂｏｂが計算する各秘密鍵は、１つのメッセージにだけ適用可能である。あるいは、様々なユーザは、彼らのメッセージをＢｏｂに送信するために異なる暗黙の証明証を要求し得、従って、これらの様々なユーザのそれぞれに発行される各暗黙の証明証に対応する別々の公開フェーズおよび秘密化フェーズを必要とする。
【００３９】
本発明の様々な実施形態が、これまでに詳細に記載されてきた。当業者は、多くの修正、適合および変形が、本発明の範囲を逸脱することなく実施形態に対して行われ得ることを認識するであろう。上記された最良の形態に対する変更および／または追加が、本発明の本質、精神または範囲を逸脱することなく行われ得るので、本発明は、それらの詳細に限定されないが、添付の特許請求の範囲にのみ制限される。
【図１】
0005138775.tif 000004
【図２】
0005138775.tif 000005