説明

IDベース暗号化(IBE)に対して暗黙の証明証およびアプリケーションを生成する方法およびシステム

【課題】IDベース暗号化(IBE)に対して暗黙の証明証およびアプリケーションを生成する方法およびシステムの提供。
【解決手段】本発明は、暗黙の証明証を生成する方法と、公開鍵から秘密鍵を生成する方法とに関する。該方法は、暗黙の証明証を生成する方法を3つのフェーズに関係させる。公開鍵は、エンティティのIDであり得るか、またはエンティティのIDから導き出される。公開鍵の所有者だけが完全な情報を所有することにより、対応する秘密鍵を生成する。証明機関は、エンティティの秘密鍵の生成を要求されることがなく、またエンティティの秘密鍵を生成することもできない。

【発明の詳細な説明】
【技術分野】
【0001】
(発明の分野)
本発明は、概して、暗号化の分野に関し、特に、本発明は、IDベース暗号化(identity−based encryption)システムで用いられ得る暗黙の証明証を提供するシステムおよび方法に関する。
【背景技術】
【0002】
(発明の背景)
公開鍵暗号技術は、数学的に関係のある公開鍵と秘密鍵とを利用する。該関係は、公開鍵が秘密鍵から容易に計算され得るが、公開鍵からの秘密鍵の計算は、実行不可能であると考えられる。従って、秘密鍵は、非公開に維持される。鍵は、様々な周知のプロトコルで用いられることにより、メッセージをセキュア化するかまたはメッセージに署名する。メッセージをセキュア化するためには、受信者の公開鍵が、送信者によって用いられることにより、メッセージを暗号化し、そして受信者は、当人の秘密鍵を用いて、メッセージを暗号解読する。メッセージに署名するためには、作成者は、当人の秘密鍵を用いて、署名を生成し、該署名は、公開鍵の使用により任意の受信者によって検証され得る。各々の場合において、公開鍵は、高信頼機関(trusted authority)(「TA」)などの信頼できる関係者から取得される必要がある。
【0003】
IDベースの公開鍵暗号技術において、エンティティの公開鍵は、それらの電子メールアドレスまたは由来などのエンティティのIDである。IDベース暗号化(「IBE」)システムは、多くの利点を有しており、特に、
1.送信者は、メッセージを暗号化する前に、公開鍵を取得する必要がない
2.受信者が秘密鍵を所有する前に、送信者によって暗号化が行われ得る
3.IDは、受信者だけでなく送信者によっても選ばれ得る
4.既存のIDおよびアドレスが公開鍵になり得る
5.公開鍵は、人が記憶可能であり得る。
【0004】
多くのIDベース暗号化スキームが提案されている。1つの簡単なスキームにおいて、各ユーザは、当人の秘密鍵/公開鍵の対を生成する責任がある。ユーザは、その秘密鍵を、TAを含む誰にも開示しない。各ユーザは、単にその公開鍵をそのIDとして採用し、例えば、電子メールアドレスまたはウェブサイトアドレスとして公開鍵を用い得る。しかしながら、ユーザは、生成され、ユーザのIDとして用い得る電子メールアドレスまたはウェブサイトアドレスなどの、どのような公開鍵(または、それの表示)にも満足する必要がある。提案された他のIBEスキームもあるが、どれも実用的であると考えられていない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記された欠点のうちの少なくとも1つを緩和するか、または除去することが本発明の目的である。
【課題を解決するための手段】
【0006】
(発明の概要)
一実施形態において、IBEシステムは、証明機関(certification authority)(「CA」)によって発行された暗黙の証明証に基づいている。該暗黙の証明プロセスの事前証明フェーズにおいて、受信者は、証明証を要求するが、該受信者のIDを選ぶ送信者からの暗号化されたメッセージを受信してはじめて、該受信者の暗黙の証明証を受信する。該証明機関は、該暗黙の証明証を該送信者および該受信者に必要に応じて発行し、途中で必要な認証(IDの試験)を行う。しかしながら、該証明機関は、該受信者の秘密鍵を所有していない。該受信者は、該CAから受信された該暗黙の証明証と、当人の秘密の寄与(secret contribution)と、該受信者に関連する任意の公開情報とを組み合わせることによって、当人の秘密鍵を構築し、該任意の公開情報は、該受信者、該CAおよび該送信者のうちのいずれか一者によって選択され得る。このスキームにおいては、該受信者の該公開鍵と該秘密鍵との両方が、該受信者のIDに基づいている。
【0007】
本発明の一局面においては、証明機関によって提供された情報から導き出されるIDベースの公開鍵によって暗号化されたメッセージを伝送する方法が提供される。該証明機関は、一対の公開鍵と秘密鍵とを有する。該方法は、受信者の登録要求および登録情報を該証明機関に提供するステップであって、該登録情報は、該受信者によって選択された該受信者のID情報を含み、該登録要求は、該受信者によって選択された第一の秘密の値(secret value)と相関する、ステップと、該受信者によって選択されたID情報を送信者に提供するステップと、該送信者、および該送信者によって選択された該受信者のID情報の別のものから要求を受信する際に、該証明機関は、該登録要求、該登録情報、該送信者が選択した該受信者のID情報、該証明機関によって選択された第二の秘密の値、および該証明機関によって選択された証明証情報から公開鍵再構築データを生成するステップと、暗黙の証明証を該送信者に伝送するステップであって、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む、ステップと、該暗黙の証明証、該証明証情報および該証明機関の公開鍵から該受信者の公開鍵を再構築するステップと、該受信者の該公開鍵によって暗号化されたメッセージを、該公開鍵が該暗黙の証明証から再構築されることの指示とともに該受信者に伝送するステップとを含む。
【0008】
上記送信者からの受信メッセージを暗号解読するために、上記受信者は、秘密鍵要求を上記証明機関に伝送し、該秘密鍵要求は、上記暗黙の証明証を生成する間に用いられた該受信者のすべてのID情報を含む。該証明機関は次いで、該受信者がその秘密鍵を再構築するために、該受信者に秘密鍵再構築データおよび上記公開鍵再構築データを提供する。該秘密鍵再構築データは、該証明機関の秘密鍵、該すべてのID情報、該公開鍵再構築データ、および上記第二の秘密の値を数学的に組み合わせることによって生成される。該受信者の秘密鍵は、該暗黙の証明証、上記証明証情報、該秘密鍵再構築データ、および上記第一の秘密の値から生成される。
【0009】
本発明の別の局面においては、受信者の公開鍵を送信者に提供し、該公開鍵に対応する秘密鍵を受信者に提供する方法が提供される。該方法は、以下のステップを含む。最初に、該受信者が、該公開鍵への秘密の寄与を選択し、登録要求情報を該秘密の寄与から生成し、次いで、該登録要求情報および該受信者と関連づけられた第一のID情報を証明機関に提供する。送信者が、該受信者の公開鍵を必要としているときには、該証明機関に該公開鍵の暗黙の証明証の要求を伝送し、該暗黙の証明証の要求は、該受信者の該第一のID情報および第二のID情報を含む。該証明機関は、公開鍵再構築データを、該登録要求情報、該第一のID情報および該第二のID情報、該証明機関によって選択された証明証情報、ならびに該証明機関によって選択された秘密の寄与から生成し、該暗黙の証明証を該送信者に伝送し、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む。該送信者は、該公開鍵を該暗黙の証明証および該証明機関の公開鍵から計算し、情報を該受信者と交換するために、該公開鍵を用いる。該受信者は、該送信者から受信したメッセージを暗号解読するために、該受信者の秘密鍵を必要とするときには、秘密鍵要求を該証明機関に送信する。該証明機関は、該暗黙の証明証とともに該受信者に秘密化情報を生成し、提供する。該受信者は、次いで、該暗黙の証明証および該秘密化情報から該秘密鍵を計算する。
【0010】
他の局面において、本発明は、上記された局面の様々な組み合わせとサブセットとを提供する。
例えば、本願発明は以下の項目を提供する。
(項目1)
通信システムにおいて、証明機関によって提供された情報から導き出されるIDベースの公開鍵によって暗号化されたメッセージを伝送する方法であって、該証明機関は、一対の公開鍵および秘密鍵を有しており、該方法は、
受信者の登録要求を該証明機関に提供することであって、該登録要求は、該受信者によって選択された第一の秘密の値と相関する、ことと、
送信者からの要求を受信する際に、該送信者からの該要求は、該送信者によって選択された該受信者のID情報を含むことであって、該証明機関は、該登録要求、該送信者によって選択された該ID情報、該証明機関によって選択された第二の秘密の値、および該証明機関によって選択された証明証情報から公開鍵再構築データを生成する、ことと、
暗黙の証明証を該送信者に伝送することであって、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む、ことと、
該暗黙の証明証、該証明証情報および該証明機関の公開鍵から該受信者の公開鍵を再構築することと、
該受信者の該公開鍵によって暗号化されたメッセージを、該公開鍵が該暗黙の証明証から再構築されることの指示とともに該受信者に伝送することであって、該指示は、該送信者に選択されたID情報を含む、ことと
を包含する、方法。
(項目2)
前記受信者の別のID情報を前記証明機関に提供するステップであって、該別のID情報は、該受信者によって選択されている、ステップ
をさらに包含し、
前記公開鍵再構築データは、該別のID情報を組み込む、
項目1に記載の方法。
(項目3)
前記証明証情報は、前記証明機関によって選択された、前記受信者の第三のID情報を含む、項目1に記載の方法。
(項目4)
前記受信者が秘密鍵要求を前記証明機関に伝送することであって、該秘密鍵要求は、前記暗黙の証明証を生成する間に用いられた、該受信者のすべてのID情報を含む、ことと、
該証明機関が秘密鍵再構築データおよび前記公開鍵再構築データを該受信者に提供することであって、該秘密鍵再構築データは、該証明機関の秘密鍵、該すべてのID情報、該公開鍵再構築データ、および前記第二の秘密の値を数学的に組み合わせることによって生成される、ことと
をさらに包含し、
該受信者の秘密鍵は、該暗黙の証明証、前記証明証情報、該秘密鍵再構築データおよび前記第一の秘密の値から生成される、
項目1〜項目3のうちのいずれか一項に記載の方法。
(項目5)
前記第二の秘密の値と、前記送信者からの前記要求との間の対応を確立すること
をさらに包含する、
項目1〜項目3のうちのいずれか一項に記載の方法。
(項目6)
前記対応は、前記暗黙の証明証を生成する間に用いられたすべてのID情報を組み込む秘密の決定論的関数を用いて確立される、項目5に記載の方法。
(項目7)
楕円曲線暗号化スキームが用いられ、前記公開鍵再構築データは、式R+kGから数学的に決定され、
Rは、前記登録要求であり、kは、前記証明機関によって選択された前記第二の秘密の値であり、Gは、該楕円曲線暗号化スキームのために選択された楕円曲線群Eのジェネレータである、
項目1〜項目3のうちのいずれか一項に記載の方法。
(項目8)
前記秘密鍵再構築データは、式kh+c mod nから数学的に決定され、
hは、前記暗黙の証明証から導き出されたハッシュ値であり、cは、前記証明機関の秘密鍵であり、nは、前記楕円曲線群Eの次数である、
項目7に記載の方法。
(項目9)
前記受信者の公開鍵は、式hP+Cから数学的に決定され、該受信者の秘密鍵は、式rh+s mod nから数学的に決定され、
Pは、前記公開鍵再構築データであり、Cは、前記証明機関の公開鍵であり、rは、該受信者によって選択された前記第一の秘密の値であり、sは、前記秘密鍵再構築データである、
項目8に記載の方法。
(項目10)
受信者の公開鍵を送信者に提供し、該公開鍵に対応する秘密鍵を受信者に提供する方法であって、該方法は、
該受信者が、該公開鍵への秘密の寄与を選択し、登録要求情報を該秘密の寄与から生成するステップと、
該登録要求情報および該受信者と関連づけられた第一のID情報を証明機関に提供するステップと、
該証明機関に該公開鍵の暗黙の証明証の要求を伝送するステップであって、該暗黙の証明証の要求は、該送信者によって選択された、該受信者の該第一のID情報および第二のID情報を含む、ステップと、
該証明機関が、公開鍵再構築データを、該登録要求情報、該第一のID情報および該第二のID情報、該証明機関によって選択された証明証情報、および該証明機関によって選択された秘密の寄与から生成するステップと、
該暗黙の証明証を該送信者に伝送するステップであって、該暗黙の証明証は、該公開鍵再構築データおよび該証明証情報を含む、ステップと、
該公開鍵を該暗黙の証明証および該証明機関の公開鍵から計算するステップと、
秘密鍵要求を該受信者から受信する際に、秘密化情報および該暗黙の証明証を該受信者に提供するステップと、
該受信者が、該秘密鍵を該暗黙の証明証および該秘密化情報から計算するステップと
を包含する、方法。
(項目11)
前記秘密化情報は、前記暗黙の証明証、前記証明機関によって選択された前記秘密の寄与、および該証明機関の秘密鍵を数学的に組み合わせることによって生成される、項目10に記載の方法。
(項目12)
通信システムにおいて、受信者の公開鍵を送信者に提供する方法であって、該公開鍵は、該受信者のID情報に基づいており、該方法は、
該受信者の登録要求を証明機関に提供することであって、該登録要求は、該受信者の第一のID情報、および該受信者によって選択された第一の秘密の値と相関する登録情報を含む、ことと、
該第一のID情報を該送信者に提供することと、
該証明機関に暗黙の証明証の要求を伝送することであって、該要求は、該送信者によって選択された、該受信者の該第一のID情報および第二のID情報を含む、ことと、
公開鍵再構築データを、該登録要求、該第一のID情報および該第二のID情報、該証明機関によって選択された、該受信者の第三のID情報、および該証明機関によって選択された第二の秘密の値から生成することと、
暗黙の証明証を該送信者に伝送することであって、該暗黙の証明証は、該公開鍵再構築データおよび該第三のID情報を含む、ことと、
該受信者の公開鍵を、該公開鍵再構築データ、該第一のID情報および該第二のID情報および該第三のID情報、および該証明機関の公開鍵から再構築することと
を包含する、方法。
【図面の簡単な説明】
【0011】
本発明の一実施形態または複数の実施形態が、限定の目的ではなく説明の目的のために、ここで添付の図面を参照しながら例としてさらに詳細に説明される。
【図1】図1は、IBEシステムを概略的に例示している図であり、システムの1人のメンバーが証明機関としてふるまう。
【図2】図2は、図1に示されたIBEシステムで使用する暗黙の証明証を発行し、公開鍵/秘密鍵の対を計算する方法のステップを概略的に例示しているフローチャートである。
【発明を実施するための形態】
【0012】
(実施形態の詳細な説明)
以下の説明およびそこに記載された実施形態は、本発明の原理の特定の実施形態の例または複数の例を示す目的で提供される。これらの例は、限定する目的ではなく、それらの例の原理および本発明を説明する目的のために提供される。以下の説明において、同様な部分が、本明細書および図面にわたって同じそれぞれの参照番号によって示される。
【0013】
図1は、中央の証明機関102を含むIBEシステム100を概略的に例示している。IBEシステム100は、送信者106(またはより一般的に、送信者Aliceまたは送信者Aと呼ばれる)と、受信者108(またはより一般的に、受信者Bobまたは受信者Bと呼ばれる)とを含む多くのユーザ、すなわちエンティティ104を有する。各ユーザ104は、通信リンク110を介してCA102と通信する。CAは、中央の証明機関であるが、高信頼機関ではない。
【0014】
送信者106と受信者108とは、通信チャネル112を介してユーザの対の間でメッセージを交換する。送信者106がメッセージを送信する必要があるときに、送信者106は、セッション鍵zを生成することにより、メッセージを暗号化する。セッション鍵zは、受信者108の公開鍵と送信者本人の秘密鍵とに基づいて構築される。暗号化の結果(すなわち、暗号化されたメッセージ)が、通信チャネル112を介して受信者108に送信される。受信者108の公開鍵は、本明細書中に記載された体系的態様で受信者108のID情報から導き出される。受信者108は、同様に、当人の秘密鍵と送信者の公開鍵とに基づいてセッション鍵zを生成することにより、メッセージを暗号解読する。秘密鍵は、CA102と、受信者108当人からの秘密鍵への秘密の寄与とによって所有されている情報から受信者108によって計算される。
【0015】
その所有者からの秘密鍵と、該秘密鍵への秘密の寄与との間の一般的関係は、すべてのユーザに対して同じである。このことは、すべてのユーザがユーザ当人の秘密鍵を構築することに対して同一の対応を用い得るので、望ましい。従って、受信者108は、当人の秘密鍵への当人の寄与を秘密に保持しておかなければならず、その結果として、誰もその秘密鍵を一般的関係から計算し得ない。
【0016】
CAは、任意のユーザの任意の秘密鍵をCAが所有しないという点において、任意のユーザによって信頼される必要がない。CAがユーザについて、ユーザのIDがCAによって認証されることができるほど十分な情報を所有すれば十分である。すべてのユーザの秘密鍵を所有する代わりに、CA102は、必要に応じて、受信者108に必要なデータを提供して、受信者108の秘密鍵を構築する。同様に、CAはまた、必要に応じて、送信者106に必要なデータを提供して、受信者108の公開鍵を構築する。下記されるスキームにおいて、CAは、暗黙の証明証を、送信者が受信者の公開鍵を計算するために送信者に送信し、かつ受信者がその対応する秘密鍵を計算するために受信者に送信する。
【0017】
IBEシステム100は、任意のメッセージ交換ネットワーク上で実装され得る。例えば、通信システム100は、郵便による郵便物に基づき得る。各ユーザは、名前および郵便の住所によって識別される。郵便局による郵便物の送達が、通信チャネル112を確立する。通信システム100はまた、電子メッセージネットワークシステムであり得る。各ユーザは、ユーザに届き得るネットワークアドレスを有する。通信チャネル112は次いで、ユーザの対をリンクするネットワーク接続である。例えば、通信システムが電子メールシステムである場合において、ネットワークアドレスは、電子メールアドレスである。通信システムが、携帯電話のテキストメッセージシステムである場合において、ネットワークアドレスは、電話番号である。ユーザの対の間の接続は、インターネットベースの接続または公衆交換ベースの接続、あるいは任意の他の適切なデータ通信リンクであり得る。
【0018】
ここで、一方のユーザが送信者106と呼ばれるけれども、ユーザの対が役割を逆にするときには、すなわち、もう一方のユーザが電子メッセージを送信するときには、同じ説明があてはまる。単に説明の便宜上、一方のユーザが送信者と呼ばれ、もう一方のユーザが受信者と呼ばれる。
【0019】
さらに、本明細書において、違ったふうに状況が要求しない限り、「送信者」は、メッセージを送信するシステムのユーザか、電子メッセージを送信するためにユーザによって利用される電子メールプログラムなどのメッセージソフトウェアプログラムか、または電子メッセージを送信するためのメッセージプログラムが実行される汎用コンピュータを表すために互換的に用いられる。汎用コンピュータは、一般に、CPUと、メモリ記憶デバイスおよび記憶デバイス(両方ともCPUにアクセス可能である)と、入力/出力(I/O)デバイスとを有する。メッセージプログラムは、記憶デバイス上に格納され得る。同様に、用語「受信者」は、違ったふうに状況が要求しない限り、メッセージを受信するシステムのユーザか、電子メッセージを受信するためにユーザによって利用されるメッセージソフトウェアプログラムか、または電子メッセージを受信するためのメッセージプログラムが実行される汎用コンピュータを表すために互換的に用いられる。
【0020】
図2を参照すると、公開鍵および秘密鍵をユーザが再構築するための暗黙の証明証を発行する方法が概略的に示されている。本方法に従った、証明証は、いくつかのフェーズと、IDベース暗号化の利益の多くを達成するような方法とにおいて発行される。次の表1において要約されるように、該方法は、プロセス200であり、少なくとも3つのフェーズを含む。3つのフェーズとは、登録202と、公開204と、秘密化(privatization)206とである。
【0021】
【表1−1】

【0022】
【表1−2】

登録202の間に、受信者Bob108は、証明機関102に登録する。Bob108は、登録要求Rと当人の登録情報とをCA102に提出することによって登録する。登録情報は、当人の電子メールアドレスなどの当人のID関連情報Iを含む。登録要求は、受信者Bob108からの秘密の数字rなどの秘密の寄与から導き出される。秘密の寄与rは、Bobだけに既知であり、一方で、Bob108とCA102との両方は、登録要求Rを両者の間で秘密に保持する。好ましくは、登録要求Rは、秘密の寄与r上の暗号操作から導き出され、その結果として、CAは、rに関する何らの知識を有し得ない。
【0023】
以下は、楕円曲線暗号システムにおいて秘密の寄与からRを計算する例である。受信者Bob108は、最初にステップ210において、範囲[1,n−1]内の任意の整数rを当人の秘密の寄与として選択する。ここで、nは、ジェネレータポイント(generator point)Gを有する楕円曲線群Eの次数である。登録要求Rは、整数rと、楕円曲線群EのジェネレータGとの積であり、
R=r*G
となる。
【0024】
ステップ212において、受信者Bob108は、セキュアなチャネル上でIおよびRを証明機関102に提出する。Bobは、rを誰にも全く明らかにしない。Rは、CAに開示されるが、他の誰にも開示されない。しかしながら、BobのID関連情報Iは、概して利用可能にされ、特に、送信者Alice106に利用可能にされる。Bobは、例えば、ID関連情報Iを直接Aliceに送信することによって利用可能にし得、代替案としては、Alice106は、証明機関102などの共用ディレクトリサービスからID関連情報Iを導き出し得る。
【0025】
登録202の間、証明機関102は、暗黙の証明証をBobに発行しないが、その方針に従ってセキュリティ情報をBobから取得し、かつBobの信用証明物(credential)をチェックし、それによって、暗黙の証明証を後でBobに対して発行し得る。後で明らかになるように、登録要求Rは、Bobの公開鍵Bおよび秘密鍵bに寄与するが、一方でBobの秘密の数字rは、当人の秘密鍵bだけに寄与する。
【0026】
公開204の間、送信者Alice106は、証明機関102に、Bob用の暗黙の証明証を発行するように要求する(ステップ220)。証明機関102は、暗黙の証明証を計算し(ステップ222)、暗黙の証明証をAliceに発行する(ステップ224)。Alice106は、ステップ226において、受信された暗黙の証明証からBobの公開鍵を計算する。
【0027】
ステップ220において暗黙の証明証の発行を要求するときに、Alice106は、BobのIDに関連する情報の別の一片Iを選択し、そして含める。Aliceは、例えば、Bobの誕生日、年齢または国籍などのパラメータを選択し得る。
【0028】
ステップ222において、証明機関102は、Bobの信用証明物から選択されたID関連情報Iを証明証情報として確立し、そして下記されるように、暗黙の証明証を計算する。ID関連情報I、IおよびIの組のために、証明機関102は、最初に任意の整数kI1,I2,I3を範囲[1,n−1]から選択する。証明機関102は、ID関連情報I、IおよびIの組と、この要求に対して送信者から選択された任意の整数kI1,I2,I3との間のこの対応に注目する。BobのID関連情報と任意の整数との間の対応を確立することにおいて、証明機関は、Iを用いないか、Iを用いないか、またはその両方を用いないことを選び得る。しかしながら、概して、送信者Aliceによって選択されたID関連情報Iは、常に含まれる。例えば、証明機関は、関数の入力における唯一のID関連情報としてIをキー入力された擬似ランダム関数から擬似乱数kを計算し得る。
【0029】
証明機関102は次いで、Bobの再構築公開データP、ハッシュ値h、および秘密の整数sを次の式に従って、
P=R+kI1,I2,I3*G
h=H(P,I,I,I
s=kI1,I2,I3*h+c mod n
として計算する。ここで、Hは、好ましくはセキュアなハッシュ関数であり、そしてcとCとは、それぞれCAの秘密鍵と公開鍵とである。証明機関102は、ステップ224において、暗黙の証明証(P;I)をAlice106に発行する。暗黙の証明証(P;I)が、この要求のためだけであることは注目されるべきである。Aliceまたは一部の他のユーザによって要求された別のセッションにおいて、ID関連情報I、IおよびIの同一の組が選択されるが、異なる任意の整数k’I1,I2,I3が生成されることは可能であり、その場合においては、異なる暗黙の証明証(P’;I)が存在する。
【0030】
ステップ226において、Alice106は、最初にhを再構築し、次いでBを計算することによって、Bobの公開鍵Bを
h=H(P,I,I,I
B=h*P+C
として計算する。上記は、証明機関102が、すでにその公開鍵CをAlice106とBob108とに対して認証された態様で事前配布したことを想定する。
【0031】
Bobの公開鍵Bを用いて、Aliceは、Bobへのメッセージmを暗号化することが可能であり、
M=ENC(m)
と表される。ここで、ENC( )は、Bobの公開鍵Bを組み込む暗号化操作を表している。暗号化されたメッセージMは、任意の態様でBobに送信され得、例えば、AliceとBobとの間の非セキュアな通信チャネル112上で送信され得る。Bobが、暗号化されたメッセージを暗号解読し得るように、Aliceはまた、暗号化されたメッセージMとともにIおよびIをBobに送信する。
【0032】
この時点において、Bobは、新しく発行された暗黙の証明証(P;I)と関連づけられた当人の秘密鍵bを有さず、また当人の公開鍵Bをも有しない。従って、暗号化されたメッセージMをAlice106から受信する際に、Bob108は、メッセージを暗号解読することができない。代わりに、Bobは、暗号化されたメッセージと関連づけられたヘッダ情報またはいくつかの他の手段によって、メッセージMが特定の証明証によって暗号化されており、そして証明機関102の支援によってBobが秘密鍵を決定しなければならないことを通知される。Bobは、秘密化206の間に、秘密鍵bを決定し、一旦秘密鍵が決定されると、メッセージMを暗号解読する。
【0033】
秘密化206の間、Bob108は、証明機関102に対して、当人の秘密鍵生成アルゴリズムへの入力を完了するために必要な情報を供給するように要求する。最初に、ステップ230において、Bobは、Aliceによって提供された必要なID情報IおよびI、ならびに登録202の間にBobによって最初に提出されたID情報Iを証明機関102に送信する。ステップ232において、情報に対するBobの要求が検証される。Bobによって要求されている必要な情報は、公開データの再構築PおよびCAの秘密の寄与s、つまり、対(P,s)である。敵対者による任意の不正な試みを阻止するために、証明機関102は、Bobが登録において主張するような人物であることを最初に検証し、そしてAliceから受信されたI、Iなどの新しい暗黙の証明証における任意の特別な条件がまた満たされることをさらにチェックする。一旦証明機関を満足させると、証明機関は、必要な情報(P,s)をBobに送信し、該必要な情報は、Bobが新しい暗黙の証明証(P;I)に対応する新しい秘密鍵の計算を完了するために必要とする。
【0034】
ステップ234において、Bobは、ハッシュ値h、次いで当人の秘密鍵bを
h=H(P,I,I,I
b=r*h+s mod n (2)
として計算することにより、当人の秘密鍵を再構築する。この時点において、Bob108は、Alice106からの暗号化されたメッセージMを
m=DEC(M)
として暗号解読することが可能である。
【0035】
どの時点においても、証明機関102はBobの秘密鍵bを知ることができないことが認識される。特に、証明機関は、Bobの秘密鍵を有することがなく、またBobの秘密鍵を取得することもできない。なぜならば、Bobの秘密鍵への当人の寄与rが常に秘密にされるからである。従って、証明機関は、Bobの公開鍵が有効使用に入った後でさえも、Bobのために暗号解読したり、署名したりすることができない。この点で、証明機関102は、従来のIDベースの暗号化および署名の意味において高信頼機関である必要がない。すなわち、証明機関は、BobのIDの認証性を検証することに対して信頼される必要があるが、それ以上に信頼される必要がない。実際に、Bobの秘密鍵は、証明機関102に対して信頼されない。
【0036】
選択的な、さらなるステップとして、Bob108は、証明機関102から受信した応答(P,s)の認証性を検証し得る。Bob108は、暗黙の証明証に対する当人の寄与Iと、当人の内密の証明証要求Rとをすでに知っている。Bobはまた、Alice106によって選択された寄与Iと、証明機関102によって選択されたIとを有する。Bobが応答(P,s)を証明証要求Rに対して受信するときには、次の式
B=h*R+s*G=h*P+C=B
が成り立つことをチェックすることによって、Bobが応答の認証性を検証することは可能である。この式は成り立つはずである。なぜならば、
B=b*G=(h*r+s)*G=(h*r+h*k+c)*G
=h*(k+r)*G+c*G
=h*P+C=B
であるからである。従って、Bobは、ジェネレータポイントGに関して、B=hP+Cの対数を知っている。Aliceは、再構築公開データP、証明証情報(I,I,I)およびCAの公開鍵Cだけを用いてBを再構築し得る。
【0037】
証明機関は、概して、Bobの証明証要求Rを格納する必要がある。証明機関がその寄与kI1,I2,I3をBobの秘密鍵に対して生成するときに、証明機関は、(I,I,I)の秘密の決定論的関数によって、そうすることを望み得る。従って、証明機関は、暗黙の証明証の各公開に対してkI1,I2,I3を別々に格納する必要がないであろうし、格納されたkI1,I2,I3と、ID情報(I,I,I)の組または証明証要求Rとの間の何らの対応をもまた記録しない。
【0038】
実際に、単一の登録フェーズが、多くの異なる公開フェーズおよび秘密化フェーズに対応し得る。例えば、Aliceは、暗黙の証明証をメッセージ毎に要求し得、その結果として、Bobが計算する各秘密鍵は、1つのメッセージにだけ適用可能である。あるいは、様々なユーザは、彼らのメッセージをBobに送信するために異なる暗黙の証明証を要求し得、従って、これらの様々なユーザのそれぞれに発行される各暗黙の証明証に対応する別々の公開フェーズおよび秘密化フェーズを必要とする。
【0039】
本発明の様々な実施形態が、これまでに詳細に記載されてきた。当業者は、多くの修正、適合および変形が、本発明の範囲を逸脱することなく実施形態に対して行われ得ることを認識するであろう。上記された最良の形態に対する変更および/または追加が、本発明の本質、精神または範囲を逸脱することなく行われ得るので、本発明は、それらの詳細に限定されないが、添付の特許請求の範囲にのみ制限される。

【特許請求の範囲】
【請求項1】
本願明細書に記載された発明。

【図1】
image rotate

【図2】
image rotate


【公開番号】特開2012−253826(P2012−253826A)
【公開日】平成24年12月20日(2012.12.20)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−210742(P2012−210742)
【出願日】平成24年9月25日(2012.9.25)
【分割の表示】特願2010−516331(P2010−516331)の分割
【原出願日】平成20年7月10日(2008.7.10)
【出願人】(397071791)サーティコム コーポレーション (38)
【Fターム(参考)】