(57)【特許請求の範囲】
【請求項１】
パスワードに基づく認証と証明書に基づく認証とを組み合わせることにより、第１の当事者（Ａ）と第２の当事者（Ｂ）との間の高信頼通信を得るための認証方法であって、前記証明書に基づく認証では、前記第１の当事者（Ａ）が静的な秘密鍵及び静的な公開鍵からなる静的な鍵の対と、証明機関（Ｃ）によって発行された前記静的な公開鍵のための証明書とを有し、前記証明機関（Ｃ）には前記第２の当事者（Ｂ）によって知られている公開鍵が割り当てられ、
・パスワードに基づく認証が、以下のステップによって最初に実行され、当該ステップは、前記第１の当事者（Ａ）であるマイクロコンピュータ及び前記第２の当事者（Ｂ）であるコンピュータが、
ａ）短期の秘密鍵及び短期の公開鍵からなる短期の鍵の対をそれぞれ生成し、
ｂ）前記短期の公開鍵をそれぞれ交換し、共通のパスワードを使って前記短期の公開鍵を検証し、
ｃ）安全な通信チャネルがセッション鍵に基づいて確立される、セッション鍵を生成し検証する
ステップであり、
・次いで証明書に基づく認証が以下のステップによって実行され、当該ステップは、
ｄ）前記第１の当事者（Ａ）である前記マイクロコンピュータが、変換パラメータを得るために、前記パスワードに基づく認証からの自らの短期の鍵の対と、前記証明書に基づく認証からの自らの静的な鍵の対との間の変換を計算し、
ｅ）前記第１の当事者（Ａ）である前記マイクロコンピュータが、前記証明機関（Ｃ）によって発行された前記証明書とともに、前記変換パラメータを前記安全な通信チャネルを介して前記第２の当事者（Ｂ）に伝送し、
ｆ）前記第２の当事者（Ｂ）である前記コンピュータが、前記第１の当事者（Ａ）に関連する前記短期の公開鍵及び／または前記静的な公開鍵に対して、前記受け取った変換パラメータを適用し、プロセス内で、その正当性が確認される少なくとも１つの変換された公開鍵を取得し、
ｇ）前記第２の当事者（Ｂ）である前記コンピュータが、前記証明機関（Ｃ）に関連する前記公開鍵を使って前記第１の当事者（Ａ）から受け取った前記証明書を検証する
ステップである認証方法。
【請求項２】
請求項１のステップｄ）で、前記変換パラメータを計算するために前記静的な秘密鍵が前記短期の秘密鍵に変換される請求項１に記載の方法。
【請求項３】
請求項１のステップｄ）で、前記変換パラメータを計算するために、前記第１の当事者（Ａ）の影響を受けることができない追加の乱数が使用される請求項１または２に記載の方法。
【請求項４】
請求項１のステップｆ）に関し、前記第２の当事者（Ｂ）である前記コンピュータが、前記受け取った変換パラメータを前記第１の当事者（Ａ）に関連する前記２つの公開鍵の１つにのみ適用し、前記第１の当事者（Ａ）に関連する前記変換された鍵ともう一方の公開鍵との間の等価性を確認することにより、前記取得した変換された公開鍵の前記正当性を確認する、請求項１から３の何れか一項に記載の方法。
【請求項５】
第１の当事者（Ａ）に対して請求項１から４の何れか一項に記載の方法を実行できるように設計される第１のコンピュータプログラムをマイクロコンピュータメモリが記憶するように、前記マイクロコンピュータメモリとともにマイクロコンピュータを有する、ＲＦチップドキュメント。
【請求項６】
マイクロコンピュータメモリ内の、請求項５に記載の第１のコンピュータプログラムを実施するためのプログラムコードを含む、コンピュータ可読媒体。
【請求項７】
第２の当事者（Ｂ）に対して請求項１から４の何れか一項に記載の方法を実行できるように設計される第２のコンピュータプログラムをコンピュータメモリが記憶するように、前記コンピュータメモリとともにコンピュータを有する、ＲＦチップリーダー。
【請求項８】
コンピュータメモリ内の、請求項７に記載の第２のコンピュータプログラムを実施するためのプログラムコードを含む、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
第１の当事者と第２の当事者との間の高信頼通信は、相互認証を必要とする。本発明は、認証方法、ＲＦチップドキュメント、ＲＦチップリーダー、及びコンピュータプログラム製品に関する。
【背景技術】
【０００２】
２つの認証方法が知られており、それは概ね、一方ではパスワードに基づく認証であり、他方では証明書に基づく認証である。
【０００３】
パスワードに基づく認証は、情報技術安全連邦局（Ｆｅｄｅｒａｌ  Ｏｆｆｉｃｅ  ｆｏｒ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｃｕｒｉｔｙ）の技術指針ＴＲ−０３１１０バージョン２．０５「Ａｄｖａｎｃｅｄ  Ｓｅｃｕｒｉｔｙ  Ｍｅｃｈａｎｉｓｍｓ  ｆｏｒ  Ｍａｃｈｉｎｅ  Ｒｅａｄａｂｌｅ  Ｔｒａｖｅｌ  Ｄｏｃｕｍｅｎｔｓ」の中で詳細に説明されているＰＡＣＥ（Ｐａｓｓｗｏｒｄ  Ａｕｔｈｅｎｔｉｃａｔｅｄ  Ｃｏｎｎｅｃｔｉｏｎ  Ｅｓｔａｂｌｉｓｈｍｅｎｔ）を含む。これはパスワードに基づく鍵合意である。パスワードに基づく鍵合意は以下のステップを含む。
【０００４】
第１の当事者及び第２の当事者が、
・短期の秘密鍵及び短期の公開鍵からなる短期の鍵の対をそれぞれ生成し、
・短期の公開鍵をそれぞれ交換し、共通のパスワードを使って後者を検証し、
・安全な通信チャネルがそれに基づいて確立される、セッション鍵を生成し検証する。
【０００５】
証明書に基づく認証では、第１の当事者が、静的な秘密鍵及び静的な公開鍵からなる静的な鍵の対、及び証明機関によって発行された静的な公開鍵のための証明書を有する。証明機関には、第２の当事者によって知られている公開鍵が割り当てられる。証明書に基づく認証は、第１の当事者との静的な鍵の対の提携が信頼できる第三者である証明機関により、証明書の形で確認されることに基づく。このために、証明書は、少なくとも静的な公開鍵、第１の当事者の一意識別情報、及び証明機関によるこれらのデータの電子署名を含む。署名は、証明機関の公開鍵を使って検証されてもよい。その後の認証中、第２の当事者は、証明書に含まれる静的な公開鍵に関連する秘密鍵を第１の当事者が有するかどうか確認することができる。証明書に基づく認証のための既知の方法は、情報技術安全連邦局の技術指針ＴＲ−０３１１０バージョン２．０５「Ａｄｖａｎｃｅｄ  Ｓｅｃｕｒｉｔｙ
Ｍｅｃｈａｎｉｓｍｓ  ｆｏｒ  Ｍａｃｈｉｎｅ  Ｒｅａｄａｂｌｅ  Ｔｒａｖｅｌ  Ｄｏｃｕｍｅｎｔｓ」の中で詳細に説明されている「チップ認証」を含む。
【０００６】
上記の指針ＴＲ−０３１１０は、パスワードに基づく認証と証明書に基づく認証との組合せである方法も開示する。この組合せは、少なくとも一方の当事者の識別情報が秘密である場合にとりわけ必要である。通信許可は、共通のパスワードの知識と証明によってのみ与えられる。この共通のパスワードは、通常、狭帯域幅からなることが多い専用チャネルを介して通信相手間で配布される。第１の当事者には、その上に秘密データが記憶されるＲＦチップを有するＲＦチップドキュメントを割り当てることができる。第２の当事者には、ＲＦチップドキュメント用のリーダーを割り当てることができる。共通のパスワードは、ＲＦチップドキュメント上に印刷することができ、光学スキャナによってＲＦチップリーダーに伝送されてもよい。
【０００７】
パスワードに基づく認証の後、両方の当事者は、同じパスワードを有するが他方の当事
者が実際に誰であるのかを知らない別の当事者と、自身が安全に通信していることをそれぞれ知る。このことは、とりわけグループパスワードが使用される場合に問題があり、結果として２つの当事者のそれぞれの組合せにパスワードが一意的に割り当てられない。
【０００８】
その後の証明書に基づく認証を用いて、当事者の一意識別情報を明らかにすることができる。パスワードに基づく認証の後に証明書に基づく認証を行う手法には、両方の当事者が同じパスワードを使うので、両者が互いに通信することを原則的に許可されていると判定される場合にのみ認証当事者の識別情報が開示されるという利点がある。パスワードに基づく鍵合意によるチャネルの暗号化及び完全性保護のために、第三者は交換される証明書も見ることができない。更に、パスワードに基づく鍵合意は、使用されるパスワードが第三者による認識から保護されることも確実にする。
【０００９】
先の実装形態は、２つの認証方法を完全に連続して実行する。これを図３に示す。短期の鍵の対が生成され、パスワードに基づく鍵合意及び証明書に基づく認証の両方で使われる。鍵の対の生成及び短期の鍵の対の公開鍵の使用は、とりわけ計算集約的であり、短期の鍵の対の公開鍵の所要の交換は、当事者間の更なる通信を必要とする。
【００１０】
連続した実行のもう１つの問題は、両方のプロトコル間のリンクの欠如であり、結果として両方のプロトコルが同じ当事者によってそれぞれ実行されていることが保証されない。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明は、高信頼通信が効率的かつ安全であるための認証方法を設計する目的に基づく。
【課題を解決するための手段】
【００１２】
本発明によれば、この目的は方法に関する請求項１の特徴によって実現される。この目的は、ＲＦチップドキュメント、ＲＦチップドキュメント用のコンピュータプログラム製品、ＲＦチップリーダー、及びＲＦチップリーダー用のコンピュータプログラム製品の単独製造品を対象とする同様の請求項５、６、７、及び８のそれぞれによっても実現される。
【００１３】
請求項１の特徴ｄによれば、当事者Ａが、変換パラメータを得るために、パスワードに基づく認証からの自らの短期の鍵の対と、証明書に基づく認証からの自らの静的な鍵の対との間の変換を計算する。パスワードに基づく認証からの当事者自身の短期の鍵の対を証明書に基づく認証内で再利用する手法は、一方では全体的な計算及び通信の複雑さを減らし、他方では２つのプロトコルをリンクし、それにより両方のプロトコルが同じ当事者によって実行されることを確実にする。これによりセキュリティが高まると同時に、複雑さが軽減する。
【００１４】
本発明によって実現される利点は、両方のプロトコルを実行するのに必要な時間が大幅に減らされることである。変換を計算して適用する手法は、更なる短期の鍵の対を再度作成し、次いで認証を行うよりもはるかに効率的である。優れた利点とともに、第２の鍵合意を実行する手法が完全に省かれ、パスワードに基づく認証からの鍵合意が引き続き使用される。変換を計算するために、パスワードに基づく鍵合意からの短期の秘密鍵及び証明書に基づく認証からの静的な秘密鍵の両方の知識が必要であるという事実により、２つのプロトコルがリンクされる。
【００１５】
第１の単独製造品は、当事者Ａに対して本方法を実行できるような方法で設計される第
１のコンピュータプログラムをマイクロコンピュータメモリが記憶するように、マイクロコンピュータメモリとともにマイクロコンピュータを有するＲＦチップドキュメントである。
【００１６】
コンピュータ可読媒体を有する第１のコンピュータプログラム製品は、マイクロコンピュータメモリ内の第１のコンピュータプログラムを実施するためのプログラムコードを含む。ＲＦチップドキュメントを製作する際に使用される計算システムが、このために使用される。
【００１７】
第２の単独製造品は、当事者Ｂに対して本方法を実行できるような方法で設計される第２のコンピュータプログラムをコンピュータメモリが記憶するように、コンピュータメモリとともにコンピュータを有するＲＦチップリーダーである。
【００１８】
コンピュータ可読媒体を有する第２のコンピュータプログラム製品は、ＲＦチップリーダーのコンピュータのコンピュータメモリ内の第２のコンピュータプログラムを実施するためのプログラムコードを含む。
【００１９】
本発明のある有利な改良形態によれば、請求項１のステップｄ）で、変換パラメータを計算するために静的な秘密鍵が短期の秘密鍵に変換（マップ）される。静的な鍵に直接依存する全ての計算を前もって１度計算できるので、この改良形態は計算を単純化する。
【００２０】
本発明の別の有利な改良形態によれば、請求項１のステップｄ）で、変換パラメータを計算するために、第１の当事者の影響を受けることができない追加の乱数が使用される。この追加の乱数は、第２の当事者により第１の当事者に伝送される数とすることができる。この改良形態は、変換パラメータの計算が第１の当事者に関連する短期の及び静的な鍵の対のみに基づくのではなく、第１の当事者の管理下にない値にも依存する利点を有する。したがって、この方法のセキュリティが高められる。
【００２１】
本発明の別の有利な改良形態によれば、請求項１のステップｆ）に関し、第２の当事者が、受け取った変換パラメータを第１の当事者に関連する２つの公開鍵の１つにのみ適用し、その当事者に関連する変換された公開鍵ともう一方の公開鍵との間の等価性を確認することにより、取得した変換された公開鍵の正当性を確認する。変換が第１の当事者に関連する２つの公開鍵の１つにのみ適用されることの結果として、計算の複雑さは低い。変換パラメータが第１の当事者に関連する両方の公開鍵に適用される場合、計算の複雑さは高くなる。変換された２つの公開鍵が得られることになる。変換された２つの公開鍵の間の等価性を確認することにより、変換された２つの公開鍵のそれぞれの正当性を確認することができる。
【００２２】
以下、図面を用いて本発明の例示的実施形態をより詳細に説明する。
【図面の簡単な説明】
【００２３】
【図１】第１の当事者、第２の当事者、及び証明機関の対話の概略図を示す。
【図２】認証手順の流れ図を示す。
【図３】従来技術による認証手順の流れ図を示す。
【発明を実施するための形態】
【００２４】
図１は、第１の当事者Ａと第２の当事者Ｂとの間の高信頼通信を得るための認証システムを示す。このシステムは、ＲＦチップドキュメント及びＲＦチップリーダーを含む。ＲＦチップドキュメントは第１の当事者Ａに割り当てられ、ＲＦチップリーダーは第２の当事者Ｂに割り当てられる。ＲＦチップドキュメントは、マイクロコンピュータメモリを有
するマイクロコンピュータを含む。マイクロコンピュータメモリは、当事者Ａに対して認証方法を実行できるような方法で設計される第１のコンピュータプログラムを記憶する。第１のコンピュータプログラムは、第１のコンピュータプログラム製品を用いてマイクロコンピュータメモリ内に実装された。
【００２５】
ＲＦチップリーダーは、コンピュータメモリを有するコンピュータを含む。コンピュータメモリは、当事者Ｂに対してその方法を実行できるような方法で設計される第２のコンピュータプログラムを記憶する。第２のコンピュータプログラムは、第２のコンピュータプログラム製品を用いてコンピュータメモリ内に実装された。
【００２６】
当事者Ａに関し、ＲＦチップドキュメントはパスポートである。当事者Ｂに関し、ＲＦチップリーダーは国境職員用の装置である。証明機関Ｃは、パスポートの製作者であると同時に発行者である。
【００２７】
認証方法は、パスワードに基づく認証と証明書に基づく認証との組合せである。証明書に基づく認証では、第１の当事者Ａが、証明機関Ｃによって発行された静的な鍵の対及び証明書を有する。
【００２８】
第２の当事者Ｂは、証明機関Ｃの公開鍵を知っている。この例示的実施形態に基づき、証明機関Ｃの公開鍵がＲＦチップリーダーのコンピュータのコンピュータメモリ内に記憶される。
【００２９】
図２に示すように、パスワードに基づく認証がまず最初に実行される。パスワードに基づく認証は、情報技術安全連邦局の技術指針ＴＲ−０３１１０バージョン２．０５「Ａｄｖａｎｃｅｄ  Ｓｅｃｕｒｉｔｙ  Ｍｅｃｈａｎｉｓｍｓ  ｆｏｒ  Ｍａｃｈｉｎｅ  Ｒｅａｄａｂｌｅ  Ｔｒａｖｅｌ  Ｄｏｃｕｍｅｎｔｓ」の中で定められているＰＡＣＥプロトコルを用いて実行される。
【００３０】
概して、離散対数に基づく鍵の対が使用される。秘密鍵ｘは、いずれの場合も１からｑ−１の範囲内にある乱数であり、ｑは使用される数学の群（例えば有限体の乗法群または楕円曲線の点の加法群）の生成元ｇのオーダーである。関連する公開鍵ｙは、ｙ＝ｇ＾ｘを使って計算される。べき乗（＾）は、生成元ｇで開始し、群の演算（＊）が施される回数ｘである。
【００３１】
パスワードに基づく認証のステップは以下の通りである。
【００３２】
ａ）第１の当事者Ａ及び第２の当事者Ｂが、短期の秘密鍵及び短期の公開鍵からなる短期の鍵の対をそれぞれ生成する。以下、当事者Ａに関連する短期の秘密鍵の短縮名称としてｘｅＡを用いる。以下、当事者Ａに関連する短期の公開鍵をｙｅＡと示す。ｘｅＢ及びｙｅＢは、当事者Ｂに関連する短期の秘密鍵及び公開鍵を表す。短期の鍵の対、ｘｅＡとｙｅＡ、及びｘｅＢとｙｅＢは、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ鍵合意に適している。
【００３３】
ｂ）第１の当事者Ａ及び第２の当事者Ｂが、短期の公開鍵をそれぞれ交換し、共通のパスワードを使って後者を検証する。検証は、ＰＡＣＥプロトコルを実行することによって行われる。図１に関し、共通のパスワードは当事者Ａに関するＲＦチップドキュメントのＲＦチップ機構の中に記憶される。共通のパスワードは、ＲＦチップドキュメント上にも印刷される。当事者Ｂは、ＲＦチップリーダーのパスワードスキャナを使って共通のパスワードを知る。
【００３４】
ｃ）第１の当事者Ａ及び第２の当事者Ｂは、安全な通信チャネルがそれに基づいて確立
される、セッション鍵を生成し検証する。セッション鍵の生成及び検証は、ＰＡＣＥプロトコル内で確立される共通の秘密に基づいて行われる。
【００３５】
次いで、証明書に基づく認証が行われる。
【００３６】
この点に関し、第１の例示的実施形態及び第２の例示的実施形態を説明する。
【００３７】
証明書に基づく認証の第１の例示的実施形態のステップは以下の通りである。
【００３８】
ｄ）第１の当事者Ａが、変換パラメータを得るために、パスワードに基づく認証からの自らの短期の鍵の対と、証明書に基づく認証からの自らの静的な鍵の対との間の変換を計算する。
【００３９】
変換パラメータを計算するために、静的な秘密鍵ｘｓＡが短期の秘密鍵ｘｅＡに変換（マップ）される。これは全単射写像（ｂｉｊｅｃｔｉｖｅ  ｍａｐｐｉｎｇ）である。変換ｔは、公式ｔ＝ｘｅＡ＊ｘｓＡ＾（−１）を使って計算される。この第１の例示的実施形態では、変換パラメータは計算された値ｔである。各認証プロセス中、静的な秘密鍵の逆数ｘｓＡ＾（−１）は１回のみ計算され、再度計算されることはない。変換は全単射変換である。
【００４０】
ｅ）第１の当事者Ａが、証明機関Ｃによって発行された証明書とともに、ステップｄで求められた値ｔによって本明細書で示す変換パラメータを安全な通信チャネルを介して第２の当事者Ｂに伝送する。
【００４１】
ｆ）第２の当事者Ｂが、第１の当事者Ａに関連し証明書に含まれる静的な公開鍵ｙｓＡに対して、受け取った変換パラメータを適用し、それにより変換された公開鍵ｙｔＡを得る。このための公式は、ｙｔＡ＝ｙｓＡ＾ｔである。次に、変換された公開鍵ｙｔＡの正当性を確認すべきである。このために第２の当事者は、当事者Ａに関連する変換された公開鍵ｙｔＡと、第１の当事者Ａに関連し、パスワードに基づく認証内で前に交換された短期の公開鍵ｙｅＡとの間の等価性を確認する。第２の当事者は、ｙｅＡ＝ｙｔＡを確認する。
【００４２】
この例示的実施形態とは異なり、第２の当事者Ｂは、第１の当事者Ａに関連する短期の公開鍵ｙｅＡに受け取った変換パラメータを適用してもよく、当事者Ａに関連する変換された鍵と静的な公開鍵ｙｓＡとの間の等価性を確認することにより、取得した変換された公開鍵の正当性を確認することができる。
【００４３】
ｇ）第２の当事者Ｂは、証明機関Ｃの公開鍵を使い、第１の当事者Ａから受け取った証明書を検証する。
【００４４】
証明書に基づく認証の第２の例示的実施形態のステップは以下の通りである。
【００４５】
ｄ）第１の当事者Ａが、変換パラメータを得るために、パスワードに基づく認証からの自らの短期の鍵の対と、証明書に基づく認証からの自らの静的な鍵の対との間の変換を計算する。
【００４６】
第１の例示的実施形態とは対照的に、変換を計算するために、当事者Ａの影響を受けることができない乱数ｃが更に使用される。例えば、第２の当事者Ｂが前に乱数ｃを当事者Ａに伝送することができ、または例えば当事者Ｂに関連する短期の公開鍵にハッシュ関数を適用することにより、プロトコルシーケンスから乱数ｃを決定論的に計算してもよい。
【００４７】
第１の当事者Ａは、ｔ＝ｘｅＡ−ｃ＊ｘｓＡを使って変換ｔを計算する。
【００４８】
この第２の例示的実施形態では、変換パラメータは乱数ｃの値及び変換値との組である。この組は、（ｃ，ｔ）を用いて略記する。
【００４９】
ｅ）第１の当事者Ａが、証明機関Ｃによって発行された証明書とともに、変換パラメータ（ｃ，ｔ）を安全な通信チャネルを介して第２の当事者Ｂに伝送する。当事者Ｂは乱数ｃを知っているので、第１の当事者が変換値ｔのみを当事者Ｂに伝送すれば十分である。
【００５０】
ｆ）第２の当事者Ｂが、第１の当事者Ａに関連し証明書に含まれる静的な公開鍵ｙｓＡに対して、受け取った変換パラメータ（ｃ，ｔ）を適用し、それにより変換された公開鍵ｙｔＡを得る。このための公式は、ｙｔＡ＝ｇ＾ｔ＊ｙｓＡ＾ｃである。次に、変換された公開鍵ｙｔＡの正当性を確認すべきである。このために第２の当事者は、当事者Ａに関連する変換された公開鍵ｙｔＡと、第１の当事者Ａに関連し、パスワードに基づく認証内で前に交換された短期の公開鍵ｙｅＡとの間の等価性を確認する。第２の当事者は、ｙｅＡ＝ｙｔＡを確認する。
【００５１】
ｇ）第２の当事者Ｂは、証明機関Ｃの公開鍵を使い、第１の当事者Ａから受け取った証明書を検証する。
【図１】
0005980238.tif 000002
【図２】
0005980238.tif 000003
【図３】
0005980238.tif 000004