説明

身元認証及び共有鍵生成の方法

【課題】
本発明は身元認証と鍵共有方法に関する。本発明は現行技術による認証方法の低い安全性の問題に対して、身元認証と共有鍵生成の方法を公開した。
【解決手段】
本発明の技術的方法中で、鍵発行機構は各デバイスにそれぞれ公開鍵


と私密鍵


を1つのペア発行、また相関係数


、オフセットベクトル


、回帰係数


、モジュラス


及び








を設定する。その他に、若しデバイスiとデバイスjが任意の2台デバイスであれば、その公開鍵と私密鍵ペアが次の条件を満たす:


、その中で、





の転置ベクトル、





の転置ベクトル、





の転置ベクトルである。デバイスAが認証発行者、その公開鍵が


、私密鍵が


、デバイスBが認証参加者、その公開鍵が


、私密鍵が


であると仮定すると、デバイスAとデバイスB間認証成功の条件が


である。本発明は特にチップ開発に適用する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は暗号化技術、特に身元認証と鍵共有方法に関する。
【背景技術】
【0002】
通信、電子ビジネス、金融、データー伝送、情報保護等の分野で、身元認証と鍵共有は安全保証の基礎である。認証の目的は通信の両端側の身元を確認して、その後の安全な通信と関連する権限の割り当てのために準備するものである。
【0003】
身元認証は、技術によってはパスワードによる認証、対称鍵による認証及び公開鍵ベースによる認証の三種類、実装方式によっては、第三者の参加の認証(第三者認証)、第三者の参加無しの認証の二種類に分けている。パスワードによる認証は簡単なので、今のところインターネット、金融等の分野で幅広く使用されている。例えば、メール口座の暗号、銀行カードの暗号等。対称鍵による認証も今のところ幅広く使用されていて、例えばICカード内部認証と外部認証である。前記二つの認証方式は簡単かつ実用的であるが、その安全性が高くなく、容易に復号される。
【0004】
したがって、安全性の要求の高くない場合や、或いは高い安全性が要求される場合であっても、その他の補助的な安全保証の方法がある場合に適用する。安全性の要求の高い場合は、一般に公開鍵ベースによる認証を採用する。公開鍵ベースは代表的なものがPKI (Public Key Infrastructure)機制であり、今のところインターネットや金融や電子ビジネス等領域で大量に使用されている。公開鍵ベースによる認証は、よく採用する公開鍵算法がRSAとECCであり、安全性の高いことを特徴とするが、計算が複雑で、資源消耗の多いことでチップの大規模化と高いコストを起こす欠点がある。なぜ、ECCアルゴリズムが何年も前から存在していたのに、広く一般にチップによってサポートされていない理由の一つがここにある。また、公開鍵による認証は、一般にデジタル証明書によって相手の身元を確認、認証過程に証明書の交換が必要であり、且つ相手の証明書の正当性(有効性)を検証する。すると、該当認定は一定のデーター帯域、より多い計算資源を占用するため、実現できない場合もある。
【0005】
例えば、ICカードの認証について、中国公開特許CN101064610Aには一種の身元認証と鍵共有技術を公開されており、該当技術の主要な実現方法が下記のとおりである。
【0006】
1)鍵発行機構は自分の鍵庫から各主体に公開鍵/私密鍵のペアを配分する。全てのデバイス(設備)の公開鍵/私密鍵のペアがそれぞれ異なるため、特定のデバイスを失効させることができる。ここで、デバイスの公開鍵は

、私密鍵は

とし、その中で、



が1×nのベクトルである。
【0007】
2)各デバイスは公開鍵/私密鍵ペアをデバイス中に保存している。その中でも私密鍵が秘密に保存されるものであり、その他のデバイスにアクセスされてはならないが、公開鍵がその他のデバイスにアクセスされうる。
【0008】
3)認証発行者(イニシエータ)の公開鍵が

、私密鍵が

、認証参加者の公開鍵が

、私密鍵が

であれば、認証発行者は認証請求を発行、先にランダム数Rを生成し、またそれを公開鍵と一緒に認証参加者に伝送する。認証参加者は認証請求及び認証発行者のランダム数Rと公開鍵

を受信した後、自分の公開鍵

を認証発行者に伝送する。
【0009】
4)認証参加者は

の計算を開始する。その中で、

が1×nベクトル、



の転置ベクトル、即ちn×1ベクトルであるから、両者の積

は定数である。そして認証参加者は

を計算、またその計算結果を認証発行者に伝送する。
【0010】
5)認証発行者は

を計算する。その中で、

が1×nベクトル、

がn×1ベクトルであるから、両者の積

は定数である。そして認証発行者は

を計算し、またその計算結果を認証参加者に伝送する。
【0011】
6)認証発行者と認証参加者は



を比較する。若し両者が等しいならば、認証に成功し、そうでなければ、認証失敗だと認める。
【0012】
7)

は一般に事前に決定され、また暗号学における一方向性の算法(例えば:HASH算法、暗号化等)を採用する。
【0013】
8)公開鍵

/私密鍵

ペアという仕組みを採用しているため、本システムも同じようにブラックリスト機能を使用することができ、即ち公開鍵

をブラックリストのメンバーとして定義したら、デジタル証明書ブラックリスト機能を実現することができる。
【0014】
当該算法を鍵共有に応用する方法が下記のとおり:
1)信頼できる権限TAは各デバイスにそれぞれ2つの指標ベクトル



を配分する。その中で、

が公開パラメーター、

が秘密パラメーターである。任意の2つのデバイスUとVに対して、

を持つことが要求される。
【0015】
2)通信中の両参加者が、UとVであれば、UとVはそれぞれ自分の指標ベクトル



及び



を持っている。
【0016】
3)Uは先にランダム数

を生成し、また



をVに伝送する。
【0017】
4)Vは



を受信した後、

をUに伝送する。
【0018】
5)Uは計算を開始する:


そして下記の計算をする:


【0019】
6)Vは計算を開始する:


そして下記の計算をする:


上記2つのステップ中では、

は事前に決められた関数であってもよく、hash関数、暗号化関数或はその他の不可逆関数及びそれらの組合せであってもよい。
【0020】
7)Uは再度、ランダム数

を生成し、また

をVに伝送し、そして

を計算する。
【0021】
8)Vは、同時にランダム数

を生成し、また

をUに伝送し、そして

を計算する。
【0022】
9)Uは自ら算出したKを暗号化したパスワードとして使用し、



により暗号化する。
そして、その結果の

をVに伝送する。
【0023】
10)Vは自ら算出したKを暗号化したパスワードとして使用し、



により暗号化する。
そして、その結果の

をUに伝送する。
【0024】
11)UがVからの

を受信した後、



を比較する。若し両者が同じならば、相手に自分と同じ鍵が生成されたと認める。
【0025】
12)VはUからの

を受信した後、



を比較する。若し両者が同じならば、相手に自分と同じ鍵が生成されたと認める。
上記認証に全て成功したら、両者はKを共通鍵として後続の通信を行い、或はKで後続の通信の鍵を暗号化して伝送する。
【先行技術文献】
【特許文献】
【0026】
【特許文献1】中国特許出願公開CN101064610A
【発明の概要】
【発明が解決しようとする課題】
【0027】
上記方法は非常に簡単に実現できるが、理論上である安全上の問題が存在している。即ち、理論では、若し十分に多い公開鍵と私密鍵(文献に関連する報告がある)を獲得したら、第三者は独自にもとのシステムと互換できる公開鍵と私密鍵を生成することができる。
【0028】
本発明の解決しようとする課題は、現行技術の上記欠点に対して、一種の身元認証方法及びその共有鍵の生成方法を提供する。
【課題を解決するための手段】
【0029】
本発明の前記技術問題を解決するための技術的方法は、各デバイスに公開鍵と私密鍵を発行する鍵発行機構を含む身元認証方法及びその共有鍵生成方法を提供する。前記デバイスはそれぞれ少なくとも1つのペアの公開鍵

と私密鍵

を持っている。前記鍵発行機構は相関係数

、回帰係数

、モジュラス(mod)

及びオフセットベクトル

を設定し、その中で、k、aが自然数、且つk≠0、





とも1×nのベクトル、nが2以上の自然数である。
【0030】
認証発行者の公開鍵が

、私密鍵が

、認証参加者の公開鍵が

、私密鍵が

である場合には、本技術的方法は下記ステップを含む特徴とする。
ステップa.認証発行者は認証請求を発行、またその公開鍵

を認証参加者に伝送する。
ステップb.認証参加者は認証請求を獲得した後、その公開鍵

を認証発行者に伝送する。
ステップc.認証発行者は

を計算する。認証参加者は

を計算する。その中で、



の転置ベクトル、



の転置ベクトル、



の転置ベクトルである。
ステップd.



を認証の基礎(ベース、主体)とし、両者が同じの場合に認証は成功し、そうでなければ認証失敗となる。
【発明の効果】
【0031】
(1) デバイスにより取得可能な公開鍵と私密鍵ペアは線形方程式を直接構成することができないため、直接に本システムを復号する方法がなく、安全性が高い。
(2) 公開鍵

と私密鍵

の選定には、一定の手段をとることができる。例えば一定の線形関連性を保持することである。この本発明に関する方法は理論上で復号しにくい。
(3) 本方法に関するパラメーターが適当に選択されれば、乗法を加法に転換することができ、例えば、n次元ベクトル中の各メンバー(要素)を2bitとすれば、



が加法計算によって得られる。これによって、算法の簡単化、チップの小規模化及び低コスト化を実現した。
【発明を実施するための形態】
【0032】
以下は実施例によって、詳しく本発明の技術的方法を述べる。
まず、デバイスに公開鍵と私密鍵を発行する鍵発行機構を成立する。各デバイスには、1つのペアの公開鍵

と私密鍵

に加えて、正当な身元リストとしてその他のデバイスの公開鍵を保存することができる。その中で、私密鍵は、保有者によって秘密に保持されることが要求され、外部へ漏洩してはならない。鍵発行機構は相関係数

、オフセットベクトル

、回帰係数

、モジュラス

を設定し、その中で、k、aが自然数、且つk≠0である。これらのパラメーターは、ソフトウェア開発者或はチップ開発者のみに権限を与えるが、対外的には公開しない。
【0033】





とも1×nのベクトル、nが2以上の自然数、Nが一般に20以上である。次元数が大きいほど安全性が高いが、計算もより複雑になる。チップへ適用するために、nを20としてもよい。若しデバイスiとデバイスjが任意の2台のデバイスであれば、その公開鍵と私密鍵ペアが下記条件を満たす:


その中で、



の転置ベクトル、



の転置ベクトル、



の転置ベクトル、デバイスAが認証発行者、その公開鍵が

、私密鍵が

、デバイスBが認証参加者、その公開鍵が

、私密鍵が

であれば、デバイスAとデバイスB(以下、両認証当事者と呼ぶ)の認証成功の条件は下記合同式の成立することである:

その中で、



の転置ベクトル、



の転置ベクトル、



の転置ベクトルである。
【0034】
実施例1
本発明は一方向性の認証と鍵共有に応用される。
一方向性の認証は、デバイスAがデバイスBを認証するが、デバイスBがデバイスAを認証する必要のない場合を指す。
【0035】
ステップ1:鍵発行機構は自分の鍵庫から各主体(デバイス)1つのペアの公開鍵

と私密鍵

を配分し、鍵発行機構の鍵庫及び認証主体の私密鍵は秘密に保持しなければならない。各デバイスの公開鍵/私密鍵ペアはそれぞれ異なることで、指定デバイスを失効させることができる。公開鍵/私密鍵ペアは全部各デバイスに保存される。その中の私密鍵が秘密に保存され、その他のデバイスにアクセスされてはならないが、公開鍵がその他のデバイスにアクセスされることができる。
【0036】
ステップ2:認証発行者の公開鍵が

、私密鍵が

、認証参加者の公開鍵が

、私密鍵が

であると仮定する。認証発行者は認証請求を発行し、先にランダム数

を生成し、またそれを公開鍵

と一緒に認証参加者に伝送する。
【0037】
ステップ3:認証参加者は認証請求を獲得、また認証発行者のランダム数

と公開鍵

を受信した後、ランダム数

を生成し、またそれを自分の公開鍵

と一緒に認証発行者に伝送する。
【0038】
ステップ4:認証発行者と認証参加者は相手からの公開鍵情報を受信した後、その公開鍵が自分のブラックリスト中にあるかどうかを検査する。若しそれがブラックリストにあれば、後続の過程を中止し、そうでなければ後続の過程を進める。
【0039】
ステップ5:、認証発行者は

を計算する:

認証発行者は認証データー

を計算する:

認証発行者は認証コード

を計算する:

認証参加者は

を計算する。

認証参加者は認証データー

を計算する:

認証参加者は認証コード

を計算する:

【0040】
認証参加者が

を認証発行者に送信する。認証発行者は他の参加者からの

の返信を待つ。そして、認証発行者は受信した

と自分の計算によって得た

を比較する。結果が同じ場合には、相手の身元が正当であると認め、共通鍵

を生成し、認証成功となる。結果が同じでない場合には、認証失敗となる。
【0041】
認証成功後、両認証当事者(認証発行者及び認証参加者)は

を共有鍵の初期値として両認証当事者の通信鍵を生成、或はそのまま

を後続の通信鍵とする。
【0042】
ここでは、場合によって、認証発行者と認証参加者の二者中で一方だけがランダム数を生成・伝送してもいい。若しデバイスBがランダム数を生成しないと、上記計算中の



に変わる。例えば:



である。上記式中で、





の数を直接組合せたものである。例えば

=10234、

=88756の場合に、

=1023488756となる。
【0043】
認証だけを行う場合に、算式(4)、(7)を計算する必要がなく、直接に認証データー



を比較する。比較結果が同じならば認証成功となる。
上記式中で、

は一種の計算(例えば暗号化計算、HASH計算、HMAC計算等)と定義される。



とは同じでもいいし、異なってもいい。式(3)、(4)、(5)、(6)、(7)の計算は全てデーター伝送過程の安全性を強化するためである。
【0044】
実施例2
該当方法は双方向の認証と鍵共有に応用される。
双方向の認証はデバイスAとデバイスB間で互いに身元の確認をする必要がある場合を指す。
(1) 認証発行者(デバイスA)の公開鍵が

、私密鍵が

、認証参加者(デバイスB)の公開鍵

、私密鍵が

であると仮定する。
【0045】
(2) 認証発行者は認証請求を発行、先にランダム数

を生成し、またそれを公開鍵

と一緒に認証参加者に伝送する。
【0046】
(3) 認証参加者は認証請求を受信し、また認証発行者のランダム数

と公開鍵

を受信した後、ランダム数

を生成し、またそれを自分の公開鍵

と一緒に認証発行者に伝送する。
【0047】
(4) 認証発行者と認証参加者は相手からの公開鍵情報を受信した後、その公開鍵が自分のブラックリスト中にあるかどうかを検査する。若しそれがブラックリストにあれば、後続過程を中止し、そうでなければ、後続の過程を進める。
【0048】
(5) 認証発行者は

を計算する:

認証発行者は認証データー

を計算する:

認証発行者は認証コード



を計算する


認証参加者は

を計算する

認証参加者は認証データー

を計算する:

認証参加者は認証コード



を計算する


【0049】
(6) 認証参加者は

を認証発行者に送信し、そして、規定時間内に相手からの

を待つ。もし

を規定時間内に受信しなかったら、認証失敗となる。
【0050】
(7) 認証発行者は受信した

と自分の計算によって得た

を比較する。若し結果が等しいならば、相手の身元が正当てきであると認め、共通鍵(

或は

)を生成し、そうでなければ認証失敗となる。
【0051】
(8) 認証発行者は

を認証参加者に送信し、

が返信されるのを待つ。もし、規定時間内に相手からの

を受信しなかったら、認証失敗となる。
【0052】
(9) 認証参加者は受信した

と自分の計算によって得た

を比較する。若し結果が等しいならば、相手の身元が正当であると認め、共通鍵(

或は

)を生成し、そうでなければ認証失敗となる。
【0053】
(10) 認証成功後、両認証当事者は

を共有鍵の初期値として両認証当事者の通信鍵を生成、或は直接に

を後続通信の鍵とする。

【特許請求の範囲】
【請求項1】
身元認証及び共有鍵生成の方法であって、
各デバイスに公開鍵と私密鍵を発行する鍵発行機構を含み、
前記各デバイスには公開鍵

と私密鍵

が少なくとも1つのペアがあり、
前記鍵発行機構は相関係数k、回帰係数a、モジュラスm及びオフセットベクトル

を設定し、
前記k、aが自然数、且つk≠0、

とも1×nのベクトル、nが2以上の自然数であり、
認証発行者の公開鍵が

、私密鍵が

、認証参加者の公開鍵が

、私密鍵が

であり
認証発行者は認証請求を発行し、そして、その公開鍵

を認証参加者に伝送するステップaと、
認証参加者は認証請求を獲得した後、その公開鍵

を認証発行者に伝送するステップbと、
認証発行者は

を計算し、認証参加者は

を計算し、式中、



の転置ベクトル、



の転置ベクトル、



の転置ベクトルであるステップcと、MA、MBを認証の基礎とし、両者が同じであれば認証成功、そうでなければ認証失敗となるステップd
とを含むことを特徴とする身元認証及び共有鍵生成の方法。
【請求項2】
前記nは、20以上であることを特徴とする請求項1に記載の身元認証及び共有鍵生成の方法。
【請求項3】
前記ステップaとbにおいて、相手からの公開鍵を受信した後に、その正当性を判断し、「正当」の場合に後続のステップを継続し、それ以外の場合には、後続のステップを中止することを特徴とする請求項1又は2に記載の身元認証及び共有鍵生成の方法。
【請求項4】
前記公開鍵

と私密鍵

間には線形関連性があることを特徴とする請求項1から3のいずれかに記載の身元認証及び共有鍵生成の方法。
【請求項5】
認証が成功したらMAを両認証当事者の共有鍵の初期値として両認証当事者の通信鍵を生成することを特徴とする請求項1から4のいずれかに記載の身元認証及び共有鍵生成の方法。
【請求項6】
前記ステップaは、さらに、認証発行者がランダム数RAを生成し、それを認証参加者に伝送する過程を含み、
前記ステップcは、さらに、認証発行者がRA、MAを計算してB_E(MA、RA)を得る過程、及び認証参加者がRA MBを同じように計算してB_E(MB、RA)を得る過程を含み、
前記ステップdは、さらに、B_E(MA、RA)、B_E(MB、RA)を認証の基礎とし、両者が同じであれば認証成功、そうでなければ認証失敗とみなされる過程を含む
ことを特徴とする請求項1から5のいずれかに記載の身元認証及び共有鍵生成の方法。
【請求項7】
認証が成功したらB_E(MA、RA)を両認証当事者の共有鍵の初期値として両認証当事者の通信鍵を生成することを特徴とする請求項6に記載の身元認証及び共有鍵生成の方法。
【請求項8】
前記ステップbは、さらに、認証参加者がランダム数RBを生成し、そして、それを認証発行者に伝送する過程を含み、
前記ステップcは、さらに、認証発行者がMA、RA、RBを計算してB_E(MA、RA、RB)を取得し、認証参加者がMB、RA、RBを同じように計算してB_E(MB、RA、RB)を得る過程を含み、
前記ステップdは、さらに、B_E(MA、RA、RB)、B_E(MB、RA、RB)を認証の基礎とし、両者が同じであれば認証成功、そうでなければ認証失敗とみなされる過程を含む
ことを特徴とする請求項6に記載の身元認証及び共有鍵生成の方法。
【請求項9】
認証が成功したらB_E(MA、RA、RB)を両認証当事者の共有鍵の初期値として両認証当事者の通信鍵を生成することを特徴とする請求項8に記載の身元認証及び共有鍵生成の方法。
【請求項10】
認証発行者の認証参加者に対する一方向性の認証、及び認証発行者と認証参加者間の相互的認証に用いられることを特徴とする請求項1から9のいずれかに記載の身元認証及び共有鍵生成の方法。

【公表番号】特表2012−521109(P2012−521109A)
【公表日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願番号】特願2012−500039(P2012−500039)
【出願日】平成21年11月25日(2009.11.25)
【国際出願番号】PCT/CN2009/075132
【国際公開番号】WO2010/105479
【国際公開日】平成22年9月23日(2010.9.23)
【出願人】(511227233)四川▲長▼虹▲電▼器股▲分▼有限公司 (1)
【Fターム(参考)】