(57)【要約】  電子デバイスのための公開鍵を生成する方法が提供され、該方法は個人鍵と前記電子デバイス２００と関連する一意の識別子とに基づいて公開鍵を生成するステップ１０３を具える。
2010529514.tif 000002
【特許請求の範囲】
【請求項１】
個人鍵と前記電子デバイスと関連する一意の識別子とに基づいて公開鍵を生成するステップを具える電子デバイスのための公開鍵生成方法。
【請求項２】
前記公開鍵の生成のために一次基点を用いて二次基点を生成するステップを更に具える請求項１記載の方法。
【請求項３】
前記二次基点は前記電子デバイスと関連する一意の識別子に基づいて計算する請求項１記載の方法。
【請求項４】
前記一次基点は素体又は楕円曲線上の基点である請求項３記載の方法。
【請求項５】
前記電子デバイスの一意の識別子はシリアル識別番号である請求項１記載の方法。
【請求項６】
前記公開鍵は次の方程式：
ｙ＝ｇ’ｘ
に従って計算され、ここで、
ｙは公開鍵を示し、
ｘは個人鍵を示し、
ｇ’は二次基点を示し、
二次基点ｇ’は
ｇ’＝ｇID
に従って計算され、ここで、
ＩＤはシリアル識別番号を示し、
ｇは一次基点を示す、請求項５記載の方法。
【請求項７】
請求項１に記載の公開鍵を格納するように構成されたメモリを具える電子デバイス。
【請求項８】
前記メモリは更に当該電子デバイスと関連する一意の識別子及び前記公開鍵の証明書を格納するように構成されている請求項７記載の電子デバイス。
【請求項９】
前記電子デバイスはセキュリティトークンである請求項７記載の電子デバイス。
【請求項１０】
電子デバイスを認証する方法であって、該方法は
請求項１に記載の方法に従って公開鍵を生成するステップと、
前記公開鍵を前記電子デバイスに格納するステップと、
前記公開鍵と一意の識別子を別の電子デバイスに送るステップと、
非対称証明アルゴリズムを用いて前記電子デバイスを認証するステップと、
を具える認証方法。
【請求項１１】
前記非対称証明アルゴリズムはゼロ知識証明アルゴリズムである請求項１０記載の方法。
【請求項１２】
前記ゼロ知識証明アルゴリズムはエルガマル型暗号方式である請求項１１記載の方法。
【請求項１３】
前記一意の識別子に基づいて二次基点を計算するステップを更に具える請求項１０記載の方法。
【請求項１４】
プロセッサにより実行されると、請求項１に記載の公開鍵の生成方法を制御又は実行するように構成されているプログラム素子。
【請求項１５】
プロセッサにより実行されると、請求項１に記載の公開鍵の生成方法を制御又は実行するように構成されているコンピュータプログラムが記憶されたコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は公開鍵を生成する方法に関する。
本発明は電子デバイス、特にセキュリティトークンに関する。
更に、本発明は認証方法に関する。
更に、本発明はプログラム素子に関する。
更に、本発明はコンピュータ読取り可能な媒体に関する。
【背景技術】
【０００２】
電子チケット、輸送又はディジタルアクセス制御システム等の多くのアプリケーションに対して、関連情報又はセキュリティ情報を格納するためにセキュリティトークンが使用されている。多くの場合、セキュリティは、セキュリティトークンが真性であること、即ち固有のハードウェアピースを使用し、トランザクションがＰＣ又は他の電子デバイスによりシミュレーションされないことに頼っている。特に、輸送アプリケーションに対して、チケットのコピー防止は、所定の種類のセキュリティトークンのみが特殊形式のシリアル番号を各自の物理的環境の下で供給し得るという事実に頼る方法で実行されている。
【０００３】
一般に、これらのセキュリティトークンをフィールドプログラムゲートアレイ（ＦＰＧＡ）で模造することは困難ではないが、通常模造コストが攻撃の利益を上回る。
【０００４】
模造攻撃に対するセキュリティレベルを高めるためには、真性の暗号化証明が一つの選択肢である。既存の対称鍵基盤の欠如及び複雑な鍵管理のために、非対称暗号プリミティブを用いる暗号化証明が一般的なソリューションである。このような非対称暗号プリミティブに基づくプロトコルは、離散対数問題を解くことは困難である数学的群に対して実行することができる。この数学的郡内において、公開鍵を生成するためのアルゴリズム又はそれぞれのセキュリティトークンの認証のためのアルゴリズムに使用することができる基本要素又は基点ｇが選択される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、認証アルゴリズムのための公開鍵及び／又は基点を提供する代替方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記の目的を達成するために、本発明によれば、独立請求項に記載された公開鍵の生成方法、電子デバイス、特にセキュリティトークン、認証方法、プログラム及びコンピュータ読取り可能な媒体が提供される。
【０００７】
本発明の一つの模範的な実施形態によれば、電子デバイスのための公開鍵を生成する方法が提供され、該方法は個人鍵と前記電子デバイスと関連する一意の識別子とに基づいて公開鍵を生成するステップを具える。
【０００８】
一つの模範的な実施形態によれば、電子デバイスが提供され、該電子デバイスはメモリを具え、該メモリは本発明の模範的な実施形態による公開鍵を格納するように構成されている。特に、公開鍵はこのメモリに格納することができる。
【０００９】
一つの模範的な実施形態によれば、電子デバイスを認証する方法が提供され、該方法は、本発明の模範的な実施形態による公開鍵を生成するステップと、公開鍵を前記電子デバイスに格納するステップと、公開鍵と一意の識別子を別の電子デバイスに送るステップと、非対称証明アルゴリズムを用いて前記電子デバイスを認証するステップとを具える。特に、前記電子デバイスは模範的な実施形態による電子デバイスとすることができる。
【００１０】
一つの模範的な実施形態によれば、プログラム素子が提供され、該プログラム素子は、プロセッサにより実行されているとき、公開鍵を生成する方法を制御又は実行するように構成され、前記公開鍵を生成する方法は、秘密鍵と電子デバイスと関連する一意の識別子とに基づいて公開鍵を生成するステップを具える。
【００１１】
一つの模範的な実施形態によれば、コンピュータ読み取り可能な媒体が提供され、該媒体にはコンピュータプログラムが格納され、該プログラムは、プロセッサにより実行されているとき、公開鍵を生成する方法を制御又は実行するように構成され、前記公開鍵を生成する方法は、秘密鍵と電子デバイスと関連する一意の識別子とに基づいて公開鍵を生成するステップを具える。
【００１２】
本出願において、用語「公開鍵」は認証方法のための鍵を意味し、この鍵は公開され、この認証方法において主体を認証するために使用することができるものとし得る。このような公開鍵は、例えば非対称証明アルゴリズムの基本要素又は基点に基づいて生成することができる。更に、この公開鍵の証明書は信頼できる機関が発行することができる。
【００１３】
この出願において、用語「個人鍵」又は「秘密鍵」は特に公開されない鍵を意味し、認証すべき主体と関連するものとし得る。
【００１４】
この出願において、用語「一意の識別子」は特に認証すべき主体と関連する任意の一意の数、例えば電子デバイスの識別番号又はシリアル番号とし得る。
【００１５】
公開鍵を個人鍵及び一意の識別子に基づいて生成することによって、ゼロ知識証明のような一般的な非対称証明プロトコルで知られているよりも大幅に短い鍵、例えば少数のビットを、ゼロ知識証明の標準的使用に匹敵するセキュリティレベルを維持しながら、使用することが可能になる。抽象的な観点において、このとき認証プロトコル又はアルゴリズムのすべての計算に使用できる基点又は基本要素が電子デバイスのような提供主体の一意の識別子、例えばシリアル番号により多様化されるということができる。
【００１６】
多様化された基点を用いて生成されるこのような公開鍵の使用は信頼できる。その理由は、数学的観点から、アルゴリズムは主に公開鍵の計算において個人又は秘密鍵又は秘密指数の番号ビットを送ることによって変化されるのみであるためである。すべての電子デバイスは、公開鍵の生成に一意の識別子を使用するために別の基点を利用するため、アタッカはシステム全体に総攻撃をしかけることはできない。即ち、例えば多数の基準点を格納し、いわゆるベイビーステップ−ジャイアントステップアルゴリズムを用いることによって一般に使用されている基点について離散対数仮定をブレークすることはできない。逆に、アタッカは異なる電子デバイス、例えばセキュリティトークンに異なる攻撃をしかけなければならない。それゆえ、２つ以上のトークンを攻撃することは標準システムの場合より大幅に困難になる。
【００１７】
更に、模範的な実施形態による公開鍵生成に基づく認証方法を用いるシステムは、計算量を減らすことができるため及び電子デバイスは常に同じ多様化された基点を用いることができ、従って標準システムと同様に大幅に短い鍵及び乱数を使用できるため、高性能にすることができる。リーダー側はセキュリティトークンのようなすべての電子デバイスに対して新しい基点を計算しなければならないが、計算量は標準システムとほぼ同一にすることができる。特に、模範的な実施形態による非対称鍵は、多様化された基点を用いることによって標準非対称鍵アルゴリズムの場合より短い鍵を用いて同じセキュリティレベルを達成することができるため、電子デバイス、例えばセキュリティトークンに容易に実装することができる。
【００１８】
次に、公開鍵生成方法の他の模範的な実施形態を記載する。しかし、これらの実施形態は電子デバイス、認証方法、プログラム素子及びコンピュータ読み取り可能な媒体にも適用される。
【００１９】
本発明の別の模範的な実施形態による公開鍵生成方法は、公開鍵の生成のために一次基点を用いて二次基点を生成するステップを更に具える。特に、二次基点は電子デバイスと関連する一意の識別子に基づいて計算又は生成することができる。一意の識別子は、例えばスマートカード又はＵＳＢセキュリティトークンの形態のセキュリティトークンとし得る電子デバイスの識別番号又はシリアル番号とすることができる。
【００２０】
二次基点の生成は一次基点及び一意の識別子に基づくため、各電子デバイスは固有の明確な基点を生成することができ、このような公開鍵及び／又は基点を用いる認証アルゴリズムへの総攻撃に関して向上したセキュリティをもたらすことができる。
【００２１】
公開鍵生成方法の別の模範的な実施形態によれば、一次基点は素体又は楕円曲線上の基点である。一般に、離散対数問題を解くことが困難なすべての数学的群を使用することができる。このような数学的群の使用は、生成された公開鍵又は基点を用いるプロトコルのセキュリティを高めることができる。
【００２２】
公開鍵生成方法の別の模範的な実施形態によれば、公開鍵は次の方程式：
ｙ＝ｇ’ｘ
に従って計算され、ここで、
ｙは公開鍵を示し、
ｘは個人鍵を示し、
ｇ’は二次基点を示し、
二次基点ｇ’は
ｇ’＝ｇID
に従って計算され、ここで、
ＩＤはシリアル識別番号を示し、
ｇは一次基点を示す。
【００２３】
次に、電子デバイスの模範的な実施形態を記載する。しかし、これらの実施形態は公開鍵生成方法、認証方法、プログラム素子及びコンピュータ読取り可能な媒体にも適用される。
【００２４】
電子デバイスの別の模範的な実施形態によれば、メモリは更にその一意の識別子および公開鍵の証明書を格納するように構成される。特に、一意の識別子及び証明書はメモリに格納することができる。多くの場合、電子デバイスはセキュリティトークンとすることができる。
【００２５】
電子デバイスがセキュリティトークンの場合には、既存の潜在的なシリアル番号インフラストラクチャを利用することができる。つまり、すべてのトランザクションに対して、セキュリティトークンは本人確認のためにそのシリアル番号をリーダーに送るものと仮定することができる。このように、シリアル番号の使用は非対称証明アルゴリズムの使用基点を多様化する効率的な方法とすることができる。
【００２６】
次に、認証方法の他の模範的な実施形態を記載する。しかし、これらの実施形態は公開鍵生成方法、電子デバイス、プログラム素子及びコンピュータ読み取り可能な媒体にも適用される。
【００２７】
認証方法の別の模範的な実施形態によれば、非対称証明アルゴリズムはゼロ知識証明アルゴリズムとする。特に、ゼロ知識証明アルゴリズムはエルガマル（ElGamal）型暗号方式とする。
【００２８】
ゼロ知識証明アルゴリズム、例えばエルガマル型暗号方式の使用は高レベルのセキュリティを保証することができ、それは、これらのアルゴリズムは最も安全なクラスの非対称証明に属するからである。
【００２９】
別の実施形態によれば、認証方法は一意の識別子に基づいて二次基点を計算するステップを更に具える。
【００３０】
要するに、本発明の模範的な態様の要旨は、セキュリティトークンのために既存のシリアル番号インフラストラクチャを使用して、システムパラメータ、例えばゼロ知識証明アルゴリズムの基点、個人鍵及び／又は公開鍵を多様化することにある。従って、抽象的な観点からすると、既知のゼロ知識証明アルゴリズム、例えば標準エルガマル型アルゴリズムに関する可能性はセキュリティトークンのシリアル番号の使用によるエルガマル型アルゴリズムの多様化にある。更に具体的にいうと、プロトコル又はアルゴリズムのすべての計算に使用される基点又は基本要素ｇがこのシリアル番号で多様化される。こうして、各セキュリティトークンに対して新しい基点を使用することが可能になる。
【００３１】
上述した本発明の態様及び模範的な実施形態及び本発明の他の態様は以下に記載する実施形態の例から明らかになり、これらの実施形態の例について説明される。
【図面の簡単な説明】
【００３２】
【図１】模範的な実施形態による認証方法のフローチャートを概略的に示す。
【図２】セキュリティトークンを概略的に示す。
【発明を実施するための形態】
【００３３】
本発明を実施形態の例について詳細に説明するが、本発明はこれらの例に限定されない。
図は概略図である。異なる図において、類似又は同一の要素には同じ参照符号が付されている。
【００３４】
以下において、模範的な実施形態によるゼロ知識証明プロトコルに基づく認証方法１００を図１のフローチャートを参照して詳細に説明する。
【００３５】
第１ステップ１０１において、製造業者が例えば楕円曲線上の数学的群Ｇの一次基点ｇを決定する。次のステップ１０２において、シリアル番号ＩＤを有する各セキュリティトークンに対して個人鍵ｘが選択される。その後、公開鍵ｙがｇ’＝ｇID及びｙ＝ｇ’xに従って計算される（ステップ１０３）。ここで、ＩＤは各セキュリティトークンに対して一意であるため、ｇ’は各セキュリティトークンに対して一意の二次基点を表わす。次に、シリアル番号ＩＤ、公開鍵ｙ及びｙの証明書がセキュリティトークンに格納される（ステップ１０４）。証明書は、例えばセキュリティトークンの製造業者又は認証システムにおける任意の他の信頼できる第３者機関により発行されるものとし得る。
【００３６】
認証のために、セキュリティトークＡはそのシリアル番号ＩＤ、その公開鍵ｙ及び証明書をリーダーＢに送る（ステップ１０５）。リーダーＢは証明書を検証し（ステップ１０６）、有効な証明書の場合にはリーダーＢはｇ’＝ｇIDを後続のプロトコルのための基点として計算する（ステップ１０７）。証明書が有効でない場合には、認証方法はステップ１１３で停止する。更に、セキュリティトークンＡは数ｒを選択し、ｇ’rを計算し、その結果をリーダーＢに送る（ステップ１０８）。ｇ’rの結果を受信後、リーダーＢはチャレンジｃをランダムに選択し、それをセキュリティトークンＡに送る（ステップ１０９）。このとき、セキュリティトークンＡは、
resp＝（ｒ＋ｃ・ＩＤ・ｘ）mod ｎ
ここで、ｎは数学的群Ｇの位数
を計算し、レスポンスrespをリーダーＢに送る（ステップ１１０）。
【００３７】
次のステップ１１１において、リーダーＢは、ｇ’respがｇ’r・ｙｃに等しいか検査することによってレスポンスrespを検証する。この検証が肯定の場合には、セキュリティトークンＡは真性である（ステップ１１２）。否定の場合には、セキュリティトークンＡは真性でない（ステップ１１３）。
【００３８】
模範的な実施例によるアルゴリズムは、シリアル番号インフラストラクチャが存在するとともに認証の強力な暗号化証明が必要とされるすべてのシステムに使用することができる。すべてのセキュリティトークンに８バイトの一意のシリアル番号が付けられているトークンリーダーシステムと仮定すると、この認証方法は次のステップで実施することができる。
【００３９】
セキュリティトークンの製造業者は楕円曲線に基づく暗号化システムを定義する。即ち製造業者は楕円曲線のパラメータ、基点ｇ及び証明書検証のための公開鍵を公開する。適度なセキュリティレベルを得るためには、１６０ビットのパラメータを選択することができる。１６０ビットを用いる楕円曲線暗号は一般に条件付きディジタル署名に対して十分に良好であるとみなせる。従って、１６０ビットより十分短い値を選択することができ、これはセキュリティレベルをそれほど高くする必要がないためである。セキュリティトークン及びリーダーの双方において、楕円曲線上の点乗算を実行するアルゴリズムを実現することができる。
【００４０】
すべてのセキュリティトークンに対して、製造業者は一意の識別子（ＵＩＤ）、秘密鍵ｘを生成し、公開鍵ｙ＝ｇUID・ｘを計算又は生成するとともに、ｙに対する証明書を発行する、即ち製造業者がｙに自身の秘密鍵で署名することができる。８バイトのＵＩＤ及び１６０ビットの極めて高いセキュリティレベルと仮定すると、秘密鍵は９６ビット、対応する鍵は１６０ビットにすることができる。
【００４１】
主体がセキュリティトークンの原本性に対する証明を望むとき、主体は図１に示すフローチャートにつき記載したプロトコルを実行する。セキュリティトークンが試験に合格した場合、それは原本であり、失敗した場合、それは原本でない。このプロトコルは正しい。なぜなら、すべてのチャレンジｃに正しく応答し得るアタッカは秘密の指数を「知っている」ためである。
【００４２】
図２はセキュリティトークンを概略的に示す。このようなセキュリティトークンはスマートカード又はＵＳＢセキュリティトークとすることができる。特に、図２はＵＳＢセキュリティトークン２００を概略的に示す。ＵＳＢセキュリティトークン２００は読み取り装置のＵＳＢポートに差し込まれるように構成されたインターフェース部分２０１と、セキュリティトークン２００の一部分である集積回路の筐体を構成する本体２０２とを具える。特に、メモリ２０３が図２に模式的に示され、このメモリには秘密鍵、認証アルゴリズムのための基点、公開鍵、公開鍵の証明書、シリアル番号及び他のデータを格納することができる。
【００４３】
最後に、上述の実施例は例示であり、本発明を限定するものではなく、当業者は添付の特許請求の範囲で特定される発明の範囲を逸脱することなく多くの代替実施例を設計可能であるということに留意する必要がある。特許請求の範囲において、括弧内の符号は請求項の記載を限定するものと解釈されるべきではない。「具えている」および「具える」などの単語は、請求項あるいは本明細書に列記されていない要素またはステップの存在を除外するものではない。単数形で述べる要素は複数の要素を除外するものではないし、その逆も成り立つ。いくつかの手段を列挙している装置請求項において、これらの手段のいくつかは、ハードウェアあるいはソフトウェアの同一の要素によって具現化できる。特定の手段が相互に異なる従属請求項に引用されているが、このことは、これらの手段の組合せが有利に使用できないことを示すものではない。
【図１】
2010529514.tif 000003
【図２】
2010529514.tif 000004
【国際調査報告】
2010529514.tif 000005
2010529514.tif 000006