JP2002335238A - 通信方法 - Google Patents
通信方法Info
- Publication number
- JP2002335238A JP2002335238A JP2002083199A JP2002083199A JP2002335238A JP 2002335238 A JP2002335238 A JP 2002335238A JP 2002083199 A JP2002083199 A JP 2002083199A JP 2002083199 A JP2002083199 A JP 2002083199A JP 2002335238 A JP2002335238 A JP 2002335238A
- Authority
- JP
- Japan
- Prior art keywords
- group
- party
- function
- password
- shared secret
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
- H04L9/0844—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Storage Device Security (AREA)
Abstract
ワードのみによる相互ネットワーク認証プロトコルを提
供する。 【解決手段】 データネットワークを通じて、パスワー
ドを共有するA、B二当事者間で、特定の群に関するDi
ffie-Hellman型鍵交換を用いて共有秘密gxyを生成す
る。gは両当事者に既知の群生成元であり、xは一方当
事者A(例えばクライアント)に既知の指数であり、y
は他方当事者B(例えばサーバ)に既知の指数である。
Aが、gxと、少なくともパスワードの関数H1とに対
する群演算を実行することによりパラメータmを生成
し、mをBに送信する。関数H1の結果のうち群の外部
にある部分はランダム化される。これにより、Bは、m
と、関数H1とに対して群逆演算を実行し、関数H1の
結果のうち群の外部にある部分のランダム化を除去して
gxを抽出し、さらに、共有秘密gxyを計算すること
が可能となる。
Description
および鍵交換を提供する技術に関し、特に、そのような
ネットワーク認証および鍵交換に関連する計算効率を改
善する技術に関する。
トクライアントがネットワークサーバにアクセスするこ
とを可能にするシステムのセキュリティ(安全性)の重
要な部分である。認証は一般に、次のうちの1つまたは
複数のものを確認することにより実行される。 ・ユーザが知っているもの。例えば、パスワード。 ・ユーザ自体。すなわち、指紋のような生体計測情報。 ・ユーザが持っているもの。すなわち、スマートカード
のような何らかの識別トークン。
は、これらのうちの2つ、すなわち、ユーザが持ってい
るもの(ATMカード)と、ユーザが知っているもの
(個人識別番号(暗証番号、PIN))とを確認する。
ATM認証は、データネットワークを通じての認証より
もずっと容易である。その理由は、ATM自体は信頼さ
れたハードウェアとみなされ、ATMカードの存在を確
認し正しい情報を安全に中央取引サーバに転送すること
が信用されているからである。
ークを通じての通信の重要な部分である。クライアント
とサーバが認証された後、安全な通信チャネルがそれら
の間に設定されなければならない。これは一般に、クラ
イアントとサーバが、認証に続く通信の間に用いるため
のセッション鍵と呼ばれるある鍵を交換することによっ
て実行される。
トのような公衆データネットワークを通じての認証は困
難である。その理由は、クライアントとサーバの間の通
信は、多くの異なるタイプの攻撃を受けやすいからであ
る。例えば、盗聴(eavesdropping)攻撃では、敵は、ク
ライアントとサーバの間の通信を傍受することにより、
秘密情報を知る可能性がある。敵は、パスワード情報を
知った場合、その情報をサーバに対して再生(リプレ
イ)して正当なクライアントになりすますことが可能と
なる。これをリプレイ攻撃という。リプレイ攻撃は、ク
ライアントから送られたパスワードが暗号化されている
場合でも有効である。その理由は、敵は、実際のパスワ
ードを知る必要はなく、代わりに、サーバが正当なクラ
イアントから期待しているもの(この場合、暗号化され
たパスワード)をサーバに提供すればよいからである。
もう1つのタイプの攻撃は、スプーフィング攻撃であ
る。これは、敵がサーバになりすますことにより、クラ
イアントは、正当なサーバと通信していると信じるが、
実際のところは敵と通信しているというものである。こ
のような攻撃では、クライアントは、要注意(sensitiv
e)情報を敵に提供してしまう可能性がある。
ルでは、パスワードが辞書攻撃を受けるくらい弱くなる
可能性が存在する。辞書攻撃は、必要なパスワードに関
する何らかの既知情報に対して、多数のありそうなパス
ワード(例えば、英語辞書中の全単語)をテストするこ
とによって実行される、パスワードに対する力ずくの攻
撃である。この既知情報は、公に利用可能なこともある
し、上記の技術のうちの1つにより敵が入手したもので
あることもある。ユーザはしばしば、覚えやすい、した
がって推測しやすいパスワードを選択するので、辞書攻
撃はしばしば有効である。
られている。これらの公知技術は2つに分類される。第
1の分類には、クライアントシステム上に永続的記憶デ
ータを要求する技術が含まれる。第2の分類には、クラ
イアントシステム上に永続的記憶データを要求しない技
術が含まれる。
は、決して漏れてはならない秘密(secret)データ(例え
ば、認証サーバと共有される秘密鍵)も、改竄を防止し
なければならない、秘密ではないが要注意の(sensitiv
e)データ(例えば、認証サーバの公開鍵)も含まれる。
いずれのタイプの永続的データでも、データを敵からの
攻撃から守るには、追加のセキュリティ条件が必要であ
る。さらに、パスワードおよび永続的記憶データの両方
に依拠する認証プロトコルを用いるときには、一方の漏
洩が他方の弱点となることがある。例えば、秘密鍵が漏
洩すると、パスワードに対する辞書攻撃が可能となるこ
とがある。この第1のクラスのプロトコルでのもう1つ
の問題点は、永続的記憶データは、鍵の生成および配送
を必要とするが、これは面倒なことがあり、一般にシス
テムの柔軟性が低下することである。
的記憶データを要求しないため、パスワードのみによる
認証プロトコルと呼ばれる。クライアントは、正当なパ
スワードを提供することができればよい。潜在的に弱い
パスワードを用いて強力なセキュリティおよび認証を提
供するということは、矛盾しているように思われる。し
かし、安全であるように設計されたパスワードのみによ
るユーザ認証および鍵交換のプロトコルがいくつか存在
する。これらのプロトコルは、D. Jablon, "Strong Pas
sword-Only Authenticated Key Exchange", ACM Comput
er Communication Review, ACM SIGCOMM, 26(5):5-20,
1996、に記載されている。これらのパスワードのみによ
るプロトコルのうち注目すべきものには次のものがあ
る。 ・EKE(Encrypted Key Exchange)(S. M. Bellovin a
nd M. Merritt, "Encrypted Key Exchange: Password-B
ased Protocols Secure Against Dictionary Attacks",
Proceedings of the IEEE Symposium on Research in
Security and Privacy, pp.72-84、に記載) ・A−EKE(Augmented-EKE)(S. M. Bellovin and M.
Merritt, "AugmentedEncrypted Key Exchange: A Pass
word-Based Protocol Secure Against Dictionary Atta
cks and Pasword File Compromise", Proceedings of t
he First Annual Conference on Computer and Communi
cations Security, 1993, pp.244-250、に記載) ・M−EKE(Modified EKE)(M. Steiner, G. Tsudik,
and M. Waidner, "Refinement and Extension of Encr
ypted Key Exchange", ACM Operating SystemReview, 2
9:22-30, 1995、に記載) ・SPEKE(Simple Password EKE)およびDH−EK
E(Diffie-Hellman EKE)(いずれも、D. Jablon, "Stro
ng Password-Only Authenticated Key Exchange", ACM
Computer Communication Review, ACM SIGCOMM, 26(5):
5-20, 1996、に記載) ・SRP(Secure Remote Password Protocol)(T. Wu,
"The Secure Remote Password Protocol", Proceeding
s of the 1998 Internet Society Network andDistribu
ted System Security Symposium, pp.97-111, 1998、に
記載) ・OKE(Open Key Exchange)(Stefan Lucks, "Open K
ey Exchange: How toDefeat Dictionary Attacks Witho
ut Encrypting Public Keys", Security Protocol Work
shop, Ecole Normale Superieure, April 7-9, 1997、
に記載) ・AKE(Authenticated Key Exchange)(M. Bellare,
D. Pointcheval, andP. Rogaway, "Authenticated Key
Exchange Secure Against Dictionary Attacks", Advan
ces in Cryptology, pp.139-155, Eurocrypt 2000、に
記載) ・米国特許出願第09/353,468号(出願日:1
999年7月13日、発明者:P. D. MacKenzie et a
l.、発明の名称:"Secure Mutual Network Authenticat
ion Protocol (SNAPI)")
による認証プロトコルのほとんどでの問題点は、これら
は安全であることが証明されていないことである。実
際、S. Patel, "Number Theoretic Attacks on Secure
Password Schemes", Proceedings of the IEEE Symposi
um on Research in Security and Privacy, pp.236-24
7, 1997、に記載されているように、EKEプロトコル
は、いくつかの数論的攻撃を受ける可能性がある。AK
Eプロトコルは、安全であることが証明されているが、
安全性を証明するために強い仮定を必要とする。さら
に、SNAPIプロトコルも、安全であることが証明さ
れているが、このプロトコルは、ディフィ・ヘルマン型
のアルゴリズムではなくRSAアルゴリズムに基づいて
いる。
(出願日:2000年8月14日、発明者:V. V. Boyk
o et al.、発明の名称:"Secure Mutual Network Authe
ntication and Key Exchange Protocol")には、安全で
あることが証明可能な、安全な、パスワードのみによる
相互ネットワーク認証および鍵交換のプロトコルが開示
されている。このプロトコルは、ディフィ・ヘルマン型
の共有秘密を使用するが、二当事者が互いに共有パスワ
ードを用いて認証することができるように変更されてい
る。
とが証明可能な、安全な、パスワードのみによる相互ネ
ットワーク認証プロトコルを提供する。本発明のプロト
コルによれば、二当事者が、Diffie-Hellman型の鍵交換
を用いて共有秘密を生成する。知られているように、Di
ffie-Hellman型の鍵交換によれば、特定の群に対する群
生成元gと、一方当事者に既知の指数xと、他方当事者
に既知の指数yと、共有秘密gxyがある。一方当事者
がgxを生成し、他方当事者がgyを生成し、両者はこ
れらの値を交換して、それぞれが共有秘密gxyを生成
することができるようにする。Diffie-Hellmanは鍵交換
プロトコルを定義しているが、このプロトコルは認証の
観点を有しない。
秘密を用いるが、二当事者が共有パスワードを用いて互
いを認証することができるように修正されたプロトコル
が実現される。さらに、本発明の発明者は、このプロト
コルが安全であることを証明した。本発明によれば、一
方当事者がDiffie-Hellman値gxを生成し、これを、あ
る群演算を用いて少なくともパスワードの関数と結合す
る。関数の結果のうち群の外部にある部分はランダム化
される。その結果得られる値は、他方当事者へ送信され
る。群演算は、用いられる特定の群に対して定義され、
以下で詳細に説明する。今の目的のためには、あらゆる
群は1つの群演算と、対応する群逆演算とを有すること
を認識すれば十分である。
値と、少なくともパスワードの関数とに対して群逆演算
を実行し、関数の結果のうち群の外部にある部分のラン
ダム化を除去して、gxを抽出する。これにより、他方
当事者は、自己のyの知識を用いて、共有秘密gxyを
生成することができる。
演算をDiffie-Hellman型の鍵交換プロトコルとともに用
いることは、パスワードのみによる相互ネットワーク認
証プロトコルに比べて利点がある。関数の結果のうち群
の外部にある部分のランダム化は、一方当事者によって
実行される演算に関連する計算量を低減する。本発明
は、通信チャネルにアクセス可能な敵による攻撃に対し
て安全であることを証明することができるプロトコルを
提供する。
少なくともパスワードの関数と結合される。「少なくと
も」という用語を用いるのは、さまざまな実施例におい
て、gxは、パスワードのみの関数と結合されることも
あるが、パスワードが特定の当事者のペアに対して一意
的であることを保証するために、パスワードと、プロト
コルに対する当事者の識別子との関数と結合されること
もあるからである。
なくともいくつかのパラメータの関数を計算し、計算し
た値を他方当事者に送信し、受信された値を各当事者が
自己の計算値に照らしてチェックすることによって、互
いを認証することが可能である。この計算に用いられる
パラメータは、少なくとも1つの当事者識別子、Diffie
-Hellman値(gxまたはgy)、共有秘密、および共有
パスワードとすることが可能である。これらの値のうち
の少なくとも1つの関数を計算することにより、当事者
は、他方当事者が共有パスワードを所有していることを
認証することが可能である。
点は、添付の図面とともに、以下の実施例の詳細な説明
から明らかとなる。
通信を提供するための周知の技術である。本発明のさま
ざまな実施例について説明する前に、いくつかの背景的
知識および基本的用語について説明する。
ついて、Sに属するすべてのxに対してはf(x)は計
算が容易であるが、Tに属するほとんどのyに対して
は、f(x)=yとなるようなSの元yを見つけるのが
計算量的に実行不能である場合、fは一方向性関数であ
るという。一方向性関数の一例は、法指数演算である。
pを大きい素数とし、gを、pを法とする乗法群(すな
わち、1,...,p−1の範囲の数)の生成元とする。
この場合、f(x)=gx mod pは一般に、一方
向性関数であると仮定される。その逆関数(離散対数関
数と呼ばれる)は、計算が困難である。離散対数関数の
計算が困難な他の群もある。例えば、ある種の楕円曲線
群である。
る。ただし、kは、主セキュリティパラメータであり、
ハッシュ関数および秘密鍵に対する一般的なセキュリテ
ィパラメータとみなされ(例えば、160ビット)、l
>kは、離散対数に基づく公開鍵に対するセキュリティ
パラメータとみなされる(例えば、1024または20
48ビット)。{0,1}*を、有限二進数列の集合と
し、{0,1}nを、長さnの二進数列の集合とする。
実数値関数ε(n)は、任意のc>0について、すべて
のn>ncに対してε(n)<1/ncとなるようなn
c>0がある場合、無視しうるという。少なくともサイ
ズkのqと、サイズlのpを、ある値rに対してp=r
q+1がqと互いに素であるような素数とする。gを、
Zp *の、サイズqの部分群の生成元とする。この部分
群をGp,qと呼ぶことにする。
ロトコル(W. Diffie and M. Hellman, "New Direction
s in Cryptography", IEEE Transactions on Informati
on Theory, vol.22, no.6, 644-654, 1976、に記載)
は、法指数関数に基づいている。具体的には、二当事者
AとBが、図1に記載するプロトコルに従って、秘密鍵
について合意する。ステップ102で、Aは、群Zqか
らランダムにxを選ぶ(すなわち、x∈RZqであ
る)。ただし、Zq={0,1,...,q−1}(ある
いは単に、qを法とする整数)である。ステップ104
で、Aは、X=gxmod pを計算する。ステップ1
06で、Aは、XをBへ送信する。ステップ108で、
Bは、Zqからランダムにyを選ぶ(すなわち、y∈R
Zqである)。Bは、ステップ110で、Y=gy m
od pを計算し、ステップ112で、YをAへ送信す
る。この時点で、共有秘密gxy(すなわち、秘密鍵)
が、AとBの両者により計算可能となる。なお、以下、
mod pで考えていることが明らかである場合には、
記法を簡単にするため、mod pの記載を省略するこ
とがある。X=gxがステップ106でAからBへ送信
されたため、ステップ116で、Bは、Xyを計算する
ことにより、共有秘密gxyを計算することができる。
同様に、Y=gyがステップ112でBからAへ送信さ
れたため、ステップ114で、Aは、Yxを計算するこ
とにより、共有秘密gxyを計算することができる。こ
うして、共有秘密Sは、安全な通信のためのセッション
鍵として、AとBにより用いられることが可能となる。
線群のような、離散対数関数の計算が困難な他の群の上
でも実行可能である。群は当業者に周知であり、I. N.
Herstein, "Topics in Algebra", 2nd edition, John W
iley and Sons, New York, 1975、には次のように記載
されている。空でない元の集合Gにおいて、積と呼ばれ
・で表される次のような二項演算が定義される場合、G
は群をなすという。 1.a,b∈Gならば、a・b∈G(閉じている)。 2.a,b,c∈Gならば、a・(b・c)=(a・
b)・c(結合律) 3.すべてのa∈Gに対して、a・e=e・a=aとな
るような元eが存在する(Gにおける単位元の存在)。 4.任意のa∈Gに対して、a・a−1=a−1・a=
eとなるような元a− 1が存在する(Gにおける逆元の
存在)。
鍵交換は、特定の群において作用する。ただし、秘密鍵
xおよびyは、群の元の指数である。そこで、g∈Gを
群生成元とする群G={g,g・g,g・g・g,g・
g・g・g,...}を考える。ここで、・は群演算であ
る。例として、Gの群演算が乗算である場合、G={g
1,g2,g3,g4,...}である。Gの群演算が加
算である場合、G={1g,2g,3g,4g,...}
である。本発明は、さまざまな群を用いて実施可能であ
るため、以下の説明において、記法gxは、群生成元g
に対して群演算をx回作用させることを意味する。さら
に、任意の群について、ここで/で表す群逆演算も存在
する。以下の説明において、群逆演算は次のように定義
される。すなわち、xおよびyに対する群逆演算、すな
わち、x/yは、x・y−1として定義される。
する明示的認証アプローチによる相互認証および鍵交換
プロトコルを示す。図2の通信プロトコルは、前掲の米
国特許出願第09/638,320号(出願日:200
0年8月14日、発明者:V.V. Boyko et al.、発明の
名称:"Secure Mutual Network Authentication andKey
Exchange Protocol")に開示されている。一般に、こ
の通信プロトコルは、ディフィ・ヘルマン型の共有秘密
を使用するが、二当事者が互いに共有パスワードを用い
て認証することができるように変更されている。さら
に、このプロトコルは安全であることが証明されてい
る。
第1当事者Aによって実行され、図の右側に示すステッ
プは第2当事者Bによって実行される。通常、Aはクラ
イアントマシン(コンピュータシステム)であり、Bは
サーバマシン(コンピュータシステム)である。しか
し、これは必ずしも必要ではなく、AおよびBは、代表
的な場合を示す例としてそれぞれクライアントおよびサ
ーバと示されているだけである。したがって、理解され
るように、図2に示したアプローチは、AおよびBがク
ライアントおよびサーバである場合に限定されるもので
はなく、任意の二当事者AおよびBに適用可能である。
矢印は、当事者間の通信を表す。このプロトコルによれ
ば、サーバは自分自身をクライアントに認証してもら
い、クライアントは自分自身をサーバに認証してもら
う。両者の認証が完了した後、それぞれが、後の安全な
通信に使用可能なセッション鍵を生成する。
およびサーバは、クライアントがサーバとの認証に用い
るパスワードπを所有すると仮定する。
クライアントの両方を認証する。したがって、サーバお
よびクライアントのいずれも真正であるとは仮定され
ず、このため、サーバまたはクライアントのいずれかが
敵である可能性がある。クライアントは、自分自身を認
証してもらってサーバにアクセスしようとする敵である
可能性がある。サーバは、疑いを持たないクライアント
から要注意情報を得ようとして別の真正なサーバのふり
をしようとする敵である可能性がある。
ントは、Zqから指数xとしてランダムな値を選ぶ。次
に、ステップ204で、クライアントは、m=gx・
(H1(A,B,π))r mod pとして、パラメ
ータmを計算する。ただし、Aはクライアントの一意的
識別子であり、Bはサーバの一意的識別子であり、π
は、この特定のサーバに対するクライアントのパスワー
ドであり、H1はランダムハッシュ関数であり、・は群
演算を表す。H1(A,B,π)は、結果がG{p
,q}内にあることを保証するために、r乗される。略
式には、集合Sから集合Tへの関数Hについて、Hの出
力がランダムに見える場合、すなわち、少なくとも、S
に属する入力xで関数が計算されるまでは予測不能であ
る場合、ランダムハッシュ関数と呼ばれる。H1は、Z
p *においてランダムに見えるものを出力しなければな
らないため、|p|+secビット(ただし、|p|は
pのビット数であり、secはセキュリティパラメータ
である)を出力すべきである。セキュリティパラメータ
は、例えば、160とすることが可能である。一般にこ
のようにふるまう既知の関数には次のものがある。 ・SHA−1(FIPS 180-1, "Secure Hash Standard",
Federal InformationProcessing Standards Publicatio
n 180-1, 1995、に記載) ・RIPEMD−160(H. Dobbertin, A. Bosselaer
s, B. Preneel, "RIPEMD-160: a strengthened version
of RIPEMD", Fast Software Encryption, 3rdIntl. Wo
rkshop, 71-82, 1996、に記載)
あることを保証するために、パスワードのみではなく、
組(タプル)(A,B,π)を用いる。発見的セキュリ
ティに要求されるのはパスワードのみであるが、以下で
詳細に説明するように、セキュリティの形式的証明を保
証するため、クライアントおよびサーバの名前が使用さ
れる。したがって、図2のプロトコルによれば、少なく
ともパスワードの関数と、Diffie-Hellman値gxとに対
して群演算を実行することにより、少なくともパスワー
ドの関数をDiffie-Hellman値gxと結合する。これは、
パスワードの知識を有する者によってのみDiffie-Hellm
an値gxがパラメータmから抽出可能であることを保証
するので、プロトコルの重要なステップである。このDi
ffie-Hellman値gxの抽出については、ステップ214
に関して以下で詳細に説明する。ステップ206で、ク
ライアントは、パラメータmをサーバへ送信する。
8で、サーバは、パラメータ値が0mod pでないこ
とを保証するために、パラメータ値をテストする。この
値が0 mod pである場合、サーバはプロトコルを
終了する。0はZp *に属さないからである。この値が
0 mod pでない場合、ステップ210で、サーバ
は、Zqから指数yとしてランダムな値を選ぶ。ステッ
プ212で、サーバは、パラメータμに計算されたDiff
ie-Hellman値gyを代入する。次に、ステップ214
で、サーバは、受信したパラメータmを用いて、次式の
ように、Diffie-Hellman共有秘密gxy(このプロトコ
ルではσで表す)を計算する。 σ=(m/(H1(A,B,π))r)y mod p 次に、このステップについて、さらに詳細に説明する
(記法を簡単にするためmod pの記載を省略す
る)。まず、想起されるべき点であるが、上記のよう
に、任意の群演算に対して、xおよびyに対する群逆演
算、すなわち、x/yがx・y−1として定義されるよ
うな群逆演算がある。そこで、当業者には認識されるよ
うに、ステップ214におけるm/(H1(A,B,
π))rの計算は、mと、少なくともパスワードの関数
とに対する群逆演算を実行している。ステップ204か
らのmの値を代入すると、gx・(H1(A,B,
π))r/(H1(A,B,π))r=gxを得る。し
たがって、サーバは、正しいパスワードπを所有してい
る場合、受信したパラメータmの値からDiffie-Hellman
値gxを抽出することができる。こうして、ステップ2
14における計算の結果、サーバは、Diffie-Hellman共
有秘密gxyを生成する。
H2a(A,B,m,μ,σ,π)を計算する。ただ
し、H2aは、secビット(ただしsecはセキュリ
ティパラメータ)を出力しなければならないもう1つの
ランダムハッシュ関数である。パラメータkは、以下で
説明するように、サーバが正しいパスワードを所有して
いることを認証するために、クライアントAにより使用
されることになる。ステップ218で、サーバは、パラ
メータμおよびkをクライアントへ送信する。
イアントは、ステップ220で、σ=μx mod p
を計算する。μ=gyであるため、μx=gxyはDiff
ie-Hellman共有秘密である。ステップ222で、クライ
アントは、自己のπの知識を用いてH2a(A,B,
m,μ,σ,π)を計算し、その結果が、ステップ21
8でサーバから受信したパラメータkに等しいかどうか
をテストする。これらが等しい場合、クライアントはサ
ーバを認証したことになる。これらが等しくない場合、
サーバは認証されなかったので、クライアントはプロト
コルを終了する。ステップ224で、クライアントは
k′=H2b(A,B,m,μ,σ,π)を計算する。
これは、以下で説明するように、サーバがクライアント
を認証するために用いられることになる。ステップ22
6で、クライアントは、K=H3(A,B,m,μ,
σ,π)としてセッション鍵Kを生成する。ステップ2
28で、クライアントは、k′をサーバへ送信する。今
度も、H2bおよびH3は、secビット(ただしse
cはセキュリティパラメータ)を出力しなければならな
いランダムハッシュ関数である。
知識を用いてH2b(A,B,m,μ,σ,π)を計算
し、その結果が、ステップ228でサーバから受信した
パラメータk′に等しいかどうかをテストする。これら
が等しい場合、サーバはクライアントを認証したことに
なる。これらが等しくない場合、クライアントは認証さ
れなかったので、サーバはプロトコルを終了する。ステ
ップ232で、サーバは、K=H3(A,B,m,μ,
σ,π)としてセッション鍵Kを生成する。
は互いを認証したことになり、クライアントとサーバは
いずれも同一の安全なセッション鍵Kを生成している。
これは、クライアントとサーバの間の後の安全な通信に
用いることが可能である。
スワードに基づく認証のある鍵交換の利点を提供する
が、パラメータmをgx・(H1(A,B,π))r
modpとして生成することは、計算量が膨大になる可
能性がある。これは、クライアント装置がプロトコルの
この部分を十分に実行するだけの計算資源を有していな
いときに問題となる。これは、例えば、クライアントA
が、旧世代のパーソナルコンピュータ、スマートカー
ド、あるいは携帯型個人情報端末(PDA)のような、
小型の遅い装置である場合に起こりうる。また、Bがサ
ーバである場合には、クライアントよりも計算能力が高
いと仮定されるが、このプロトコルは、2つのクライア
ント型の装置どうしの間で実行される可能性もあるた
め、計算効率は、プロトコルの両側で重要である。本発
明によれば、図3を参照して説明するように、クライア
ント側の計算を少なくとも2分の1に低減することがで
きる解決法が提供される。
よる、両当事者が共有パスワードを所有する、効率の改
善された相互認証および鍵交換プロトコルについて説明
する。この通信プロトコルは、安全なパスワード認証鍵
交換プロトコルであり、Gp ,qにおける決定ディフィ
・ヘルマン問題(DDH:Decision Diffie-Hellmanpro
blem)の困難さを仮定する。上記のようなX=gxおよ
びY=gyのディフィ・ヘルマン値gxyをDH(X,
Y)で表す。1つの定式化は、Gp,q内の与えられた
g,X,Y,Zに対して、X=gxおよびY=gyがラ
ンダムに選択され、Zは、それぞれ半々の確率でDH
(X,Y)またはランダムのいずれかである場合、Z=
DH(X,Y)であるかどうかを決定せよ、というもの
である。DDHを解くことは、Z=DH(X,Y)をラ
ンダムなZから区別する、ランダム推測を超える無視で
きない有利さを有する多項式時間の敵を構成することを
意味する。
3:{0,1}*→{0,1}κおよびH1:{0,
1}*→{0,1}ηを定義する。ただし、η≧l+κ
である。また、H1、H2a、H2b、およびH3は、
上記の図2のアプローチで用いられたように、独立なラ
ンダム関数であると仮定する。なお、H1はビット列を
返すように記載されているが、われわれはその出力に対
してpを法とする数として演算を行う。
き点であるが、クライアントは2つの|q|ビット指数
演算(ステップ204および220)と、1つの|r|
ビット指数演算(ステップ204)を実行する。図3に
関連して以下で説明するように、本発明の通信プロトコ
ルによれば、クライアントは、3つの|q|ビット指数
演算を実行するだけでよい。これは一般に、図2にプロ
トコルに比べてずっと少ない計算しか必要としない。本
発明は、以下のようにして、このような利点を提供する
ことができる。パラメータmを生成するために使用され
るハッシュ関数の結果が群Gp,qに属するように強制
する代わりに、本発明では、ハッシュ関数の結果はZp
*の任意の元であることを許容し、ハッシュ関数結果の
Gp,qの外側の部分をランダム化する。これにより、
mの値は、(Gp,q内のランダム値ではなく)Zp *
内のランダム値と区別できなくなるが、依然として、ハ
ッシュ値と追加のランダム化を抽出することが可能であ
る。
めに、p=rq+1とする。ただし、gcd(r,q)
=1である(gcdは、最大公約数を表す)。もちろ
ん、(例えば、U. S. Department of Commerce/NIST, S
pringfield, VA, FIPS186, "Digital Signature Standa
rd", Federal Information Processing Standards Publ
ication 186, 1994、に記載されたNIST公認アルゴ
リズムを用いて)ランダムに選択されたqおよびpに対
して、この関係は高い確率で満たされる。
は第1当事者Aによって実行され、図3の右側に示すス
テップは第2当事者Bによって実行される。同様に、代
表的な場合を示す例として、Aはクライアントマシン
(コンピュータシステム)と呼ばれ、Bはサーバマシン
(コンピュータシステム)と呼ばれる。したがって、理
解されるように、図3に示したプロトコルは、任意の2
つのエンティティあるいは当事者AおよびBに適用可能
である。また同様に、矢印は、当事者間の通信を表す。
図3のプロトコルによれば、サーバは自分自身をクライ
アントに認証してもらい、クライアントは自分自身をサ
ーバに認証してもらう。したがって、前に説明したよう
に、サーバおよびクライアントのいずれも真正であると
は仮定されず、このため、サーバまたはクライアントの
いずれかが敵である可能性がある。両者の認証が完了し
た後、それぞれが、後の安全な通信に使用可能な秘密セ
ッション鍵を生成する。
図3のプロトコルを開始する前に、クライアントおよび
サーバは、クライアントがサーバとの認証に用いるパス
ワードπを所有すると仮定する。
アントは、Zqから指数xとしてランダムな値を選ぶ
(すなわち、x∈RZqである)。ステップ304で、
クライアントは、群Zp *からランダム値hを選ぶ(す
なわち、h∈RZp *である)。次に、ステップ306
で、クライアントは、m=gx・hq・H1(A,B,
π)として、パラメータmを計算する。ただし、Aはク
ライアントの一意的識別子であり、Bはサーバの一意的
識別子であり、πは、この特定のサーバに対するクライ
アントのパスワードであり、H1はランダムハッシュ関
数であり、・は群演算を表し、hqはランダム化演算で
ある。想起すべき点であるが、図2のプロトコルでは、
H1(A,B,π)は、結果がGp,q内にあることを
保証するために、r乗される。これに対して、本発明に
よれば、パラメータmを生成するために使用されるハッ
シュ関数の結果が群Gp,qに属するように強制する代
わりに、図3のプロトコルでは、ハッシュ関数の結果は
Zp *の任意の元であることを許容し、ハッシュ関数結
果のGp,qの外側の部分をランダム化する。これは、
ランダム化演算hqによって実現される。これにより、
mの値は、Gp,q内のランダム値ではなくZp *内の
ランダム値から区別できなくなるが、依然としてサーバ
Bは、ハッシュ値と追加のランダム化を抽出することが
可能である。ランダムパラメータhを指数q乗すること
によって、ハッシュ関数の結果において部分群Gp,q
の外部にあるものはすべてランダム化される。
の関数Hについて、Hの出力がランダムに見える場合、
すなわち、少なくとも、Sに属する入力xで関数が計算
されるまでは予測不能である場合、ランダムハッシュ関
数と呼ばれる。したがって、H1は、Zp *においてラ
ンダムに見えるものを出力しなければならないため、|
p|+secビット(ただし、|p|はpのビット数で
あり、secはセキュリティパラメータである)を出力
すべきである。セキュリティパラメータは、例えば、1
60とすることが可能である。今度も、SHA−1また
はRIPEMD−160が、一般にこのようにふるまう
既知の関数である。
イアント・サーバ対ごとに一意的であることを保証する
ために、パスワードのみではなく、組(タプル)(A,
B,π)を用いる。発見的セキュリティに要求されるの
はパスワードのみであるが、セキュリティの形式的証明
を保証するため、クライアントおよびサーバの名前が使
用される。したがって、図3のプロトコルによれば、少
なくともパスワードの関数と、Diffie-Hellman値gxと
に対して群演算を実行することにより、少なくともパス
ワードの関数をDiffie-Hellman値gxと結合する。今度
も、これは、パスワードの知識を有する者によってのみ
Diffie-Hellman値gxがパラメータmから抽出可能であ
ることを保証するので、プロトコルの重要なステップで
ある。ステップ308で、クライアントは、パラメータ
mをサーバへ送信する。
0で、サーバは、パラメータ値が0mod pでないこ
とを保証するために、パラメータ値をテストする。この
値が0 mod pである場合、サーバはプロトコルを
終了する。0はZp *に属さないからである。この値が
0 mod pでない場合、ステップ312で、サーバ
は、Zqから指数yとしてランダムな値を選ぶ。ステッ
プ314で、サーバは、パラメータμに計算されたDiff
ie-Hellman値gyを代入する。次に、ステップ316
で、サーバは、受信したパラメータmを用いて、次式の
ように、Diffie-Hellman共有秘密gxy(このプロトコ
ルではσで表す)を計算する。
まず、想起されるべき点であるが、上記のように、任意
の群演算に対して、xおよびyに対する群逆演算、すな
わち、x/yがx・y−1として定義されるような群逆
演算がある。そこで、当業者には認識されるように、ス
テップ316における
る群逆演算を実行するとともに、クライアントのランダ
ム演算hqに関連するランダム化を抽出している。ステ
ップ306からのmの値を代入すると、gxを得る。し
たがって、サーバは、正しいパスワードπを所有してい
る場合、受信したパラメータmの値からDiffie-Hellman
値gxを抽出することができる。こうして、ステップ3
16における計算の結果、サーバは、Diffie-Hellman共
有秘密gxyを生成する。
H2a(A,B,m,μ,σ,π)を計算する。ただ
し、H2aは、secビット(ただしsecはセキュリ
ティパラメータ)を出力しなければならないもう1つの
ランダムハッシュ関数である。パラメータkは、以下で
説明するように、サーバが正しいパスワードを所有して
いることを認証するために、クライアントAにより使用
されることになる。ステップ320で、サーバは、パラ
メータμおよびkをクライアントへ送信する。
イアントは、ステップ322で、σ=μx mod p
を計算する。μ=gyであるため、μx=gxyはDiff
ie-Hellman共有秘密である。ステップ324で、クライ
アントは、自己のπの知識を用いてH2a(A,B,
m,μ,σ,π)を計算し、その結果が、ステップ32
0でサーバから受信したパラメータkに等しいかどうか
をテストする。これらが等しい場合、クライアントはサ
ーバを認証したことになる。これらが等しくない場合、
サーバは認証されなかったので、クライアントはプロト
コルを終了する。ステップ326で、クライアントは
k′=H2b(A,B,m,μ,σ,π)を計算する。
これは、以下で説明するように、サーバがクライアント
を認証するために用いられることになる。ステップ32
8で、クライアントは、K=H3(A,B,m,μ,
σ,π)としてセッション鍵Kを生成する。ステップ3
30で、クライアントは、k′をサーバへ送信する。今
度も、H2bおよびH3は、secビット(ただしse
cはセキュリティパラメータ)を出力しなければならな
いランダムハッシュ関数である。
知識を用いてH2b(A,B,m,μ,σ,π)を計算
し、その結果が、ステップ330でサーバから受信した
パラメータk′に等しいかどうかをテストする。これら
が等しい場合、サーバはクライアントを認証したことに
なる。これらが等しくない場合、クライアントは認証さ
れなかったので、サーバはプロトコルを終了する。ステ
ップ334で、サーバは、K=H3(A,B,m,μ,
σ,π)としてセッション鍵Kを生成する。
は互いを認証したことになり、クライアントとサーバは
いずれも同一の安全なセッション鍵Kを生成している。
これは、クライアントとサーバの間の後の安全な通信に
用いることが可能である。
発明の通信プロトコルは、図2のプロトコルに比べて、
クライアント側の計算を少なくとも2分の1に低減す
る。これは次の例から明らかである。pは1024ビッ
トの素数であり、qは160ビットの素数であると仮定
する。この場合、rは864ビットである。Zp *にお
けるあらゆる指数演算は、その指数のビット数に比例す
る時間を要する。したがって、図2のプロトコルでは、
2つのqビット指数演算および1つのrビット指数演算
が実行されるため、その時間は2×160+864=1
184に比例するのに対して、(図3で説明した)本発
明のプロトコルでは、3つのqビット指数演算が実行さ
れるため、その時間は3×160=480に比例する。
このように、この値(480)は、図2のプロトコルの
場合の値(1184)の半分より小さい。
ティAとBの間でパスワード認証鍵交換法を実現するの
に適した、データネットワークおよびコンピュータシス
テムの一般化されたハードウェアアーキテクチャを示
す。図示のように、エンティティAはコンピュータシス
テム402からなり、エンティティBはコンピュータシ
ステム404からなる。2つのコンピュータシステム4
02と404は、データネットワーク406を通じて接
続される。データネットワークは、それを通じてAとB
が通信をしようとする任意のデータネットワーク(例え
ば、インターネット)であることが可能であり、本発明
は、特定のタイプのネットワークに限定されない。一般
に、図4においてラベルされているように、Aはクライ
アントマシンであり、Bはサーバマシンである。しか
し、これは必ずしも必要ではなく、AおよびBは、代表
的な場合を示す例としてそれぞれクライアントおよびサ
ーバと示されているだけである。したがって、理解され
るように、本発明の通信プロトコルは、AおよびBがク
ライアントおよびサーバである場合に限定されるもので
はなく、AおよびBを含む任意のコンピューティング装
置に適用可能である。
およびクライアントは、コンピュータプログラムコード
の制御下で動作するプログラムされたコンピュータとし
て実現可能である。コンピュータプログラムコードは、
コンピュータ可読媒体(例えば、メモリ)に格納され、
コードは、コンピュータのプロセッサによって実行され
る。本発明の明細書のこの開示が与えられれば、当業者
は容易に、ここに記載されたプロトコルを実現するため
に、適当なコンピュータプログラムコードを作成するこ
とが可能である。
通信する各コンピュータシステムの例示的なアーキテク
チャを示している。図示のように、クライアント装置
は、入出力装置408−A、プロセッサ410−A、お
よびメモリ412−Aを有する。サーバシステムは、入
出力装置408−B、プロセッサ410−B、およびメ
モリ412−Bを有する。理解されるべき点であるが、
ここで用いられる「プロセッサ」という用語は、中央処
理装置(CPU)あるいはその他の処理回路を含む、1
つまたは複数の処理装置を含むことを意図している。ま
た、ここで用いられる「メモリ」という用語は、RA
M、ROM、固定記憶装置(例えば、ハードドライ
ブ)、または取り外し可能記憶装置(例えば、ディスケ
ットやCDROM)のような、プロセッサあるいはCP
Uに関連するメモリを含むことを意図している。さら
に、ここで用いられる「入出力装置」という用語は、デ
ータを処理装置に入力するための1つまたは複数の入力
装置(例えば、キーボード、マウス)と、処理装置の結
果を出力する1つまたは複数の出力装置(例えば、CR
Tディスプレイ)とを含むことを意図している。したが
って、ここに記載される、本発明の方法を実行するため
のソフトウェア命令あるいはコードは、1つまたは複数
の関連する記憶装置(例えば、ROM、固定または取り
外し可能メモリ)に格納され、利用可能なときに、RA
Mにロードされ、CPUによって実行されることが可能
である。
を参照して説明したが、理解されるように、本発明は、
上記の具体的実施例に限定されるものではなく、当業者
であれば、本発明の技術的範囲あるいは技術思想を離れ
ずに、他のさまざまな変更および修正をすることが可能
である。例えば、本発明の技術思想について、上記の図
2に記載された通信プロトコルより高い計算効率を提供
する通信プロトコルとして説明したが、理解されるよう
に、本発明は、他の通信プロトコルの場合にも適用可能
である。例えば、本発明のランダム化演算は、上記の米
国特許出願第09/638,320号(出願日:200
0年8月14日、発明者:V. V. Boykoet al.、発明の
名称:"Secure Mutual Network Authentication and Ke
y Exchange Protocol")に記載された、他のプロトコル
実施例でも使用可能である。例えば、本発明は、前掲の
米国特許出願の暗黙的(implicit)認証アプローチの場合
にも使用可能である。さらに、本発明の通信プロトコル
のハッシュ関数を評価する際にいくつかのパラメータが
用いられているが、理解されるように、発見的セキュリ
ティにとってすべてのパラメータが必要とされるわけで
はない。すなわち、プロトコルが形式的に安全であるこ
とを証明するために、追加的パラメータが使用されてい
る。例えば、ステップ318、324、326、32
8、332、および334で用いられているハッシュ関
数においては、関数内のパラメータσのみが、プロトコ
ルを発見的に安全にするために必要とされる。
全であることが証明可能な、安全な、パスワードのみに
よる相互ネットワーク認証プロトコルが提供される。
記載した番号がある場合は、本発明の一実施例の対応関
係を示すものであって、本発明の範囲を限定するものと
解釈すべきではない。
る。
証および鍵交換プロトコルを示す図である。
ードを所有する、効率の改善された相互認証および鍵交
換プロトコルを示す図である。
証鍵交換法を実現するのに適した、データネットワーク
およびコンピュータシステムの一般化されたハードウェ
アアーキテクチャの図である。
Claims (20)
- 【請求項1】 データネットワークを通じて、パスワー
ドを共有する二当事者間で、特定の群に関するDiffie-H
ellman型鍵交換を用いて共有秘密gxyを生成する通信
方法において、 gは両当事者に既知の群生成元であり、xは一方当事者
に既知の指数であり、yは他方当事者に既知の指数であ
り、前記群は群演算および群逆演算を有し、 一方当事者が、gxと、少なくともパスワードの関数と
に対する群演算を実行することによりパラメータmを生
成するステップと、mを他方当事者に送信するステップ
とを有し、前記関数の結果のうち前記群の外部にある部
分はランダム化され、これにより、他方当事者は、m
と、少なくともパスワードの前記関数とに対して群逆演
算を実行し、前記関数の結果のうち前記群の外部にある
部分のランダム化を除去してgxを抽出し、共有秘密g
xyを計算することが可能であることを特徴とする通信
方法。 - 【請求項2】 前記特定の群(Gp,qで表す)は、群
Zp *の部分群であり、pおよびqは、qと互いに素で
ある値rに対してpがrq+1に等しいような素数であ
り、前記関数の結果のうち前記群Gp,qの外部にある
部分をランダム化するステップは、群Zp *からランダ
ムに選択されるパラメータhを計算し、パラメータhを
指数q乗し、hqに前記関数の結果を乗算することによ
って実行されることを特徴とする請求項1記載の方法。 - 【請求項3】 前記一方当事者はクライアントであり、
前記他方当事者はサーバであることを特徴とする請求項
1記載の方法。 - 【請求項4】 前記一方当事者が、前記他方当事者から
gyを受信し、共有秘密gxyを生成するステップをさ
らに有することを特徴とする請求項1記載の方法。 - 【請求項5】 前記一方当事者が、受信値を、前記一方
当事者の識別子、前記他方当事者の識別子、m、gy、
前記共有秘密、および前記パスワードのうちの少なくと
も1つの関数と比較することによって、前記他方当事者
を認証するステップをさらに有することを特徴とする請
求項4記載の方法。 - 【請求項6】 前記一方当事者が、前記一方当事者の識
別子、前記他方当事者の識別子、m、gy、前記共有秘
密、および前記パスワードのうちの少なくとも1つの関
数を、前記他方当事者に送信するステップをさらに有
し、これにより、前記他方当事者は、前記一方当事者を
認証することが可能であることを特徴とする請求項4記
載の方法。 - 【請求項7】 前記一方当事者が、前記一方当事者の識
別子、前記他方当事者の識別子、m、gy、前記共有秘
密、および前記パスワードのうちの少なくとも1つの関
数としてセッション鍵を生成するステップをさらに有す
ることを特徴とする請求項4記載の方法。 - 【請求項8】 データネットワークを通じて、パスワー
ドを共有する二当事者間で、特定の群に関するDiffie-H
ellman型鍵交換を用いて共有秘密gxyを生成する通信
方法において、 gは両当事者に既知の群生成元であり、xは一方当事者
に既知の指数であり、yは他方当事者に既知の指数であ
り、前記群は群演算および群逆演算を有し、 一方当事者が、gxと、少なくともパスワードの関数と
に対する群演算を実行することによりパラメータmを生
成し、mを他方当事者に送信し、前記関数の結果のうち
前記群の外部にある部分はランダム化され、これに応じ
て、 他方当事者が、mと、少なくともパスワードの前記関数
とに対して群逆演算を実行するステップと、前記関数の
結果のうち前記群の外部にある部分のランダム化を除去
するステップと、gxを抽出するステップと、共有秘密
gxyを計算するステップとを有することを特徴とする
通信方法。 - 【請求項9】 前記特定の群(Gp,qで表す)は、群
Zp *の部分群であり、pおよびqは、qと互いに素で
ある値rに対してpがrq+1に等しいような素数であ
り、前記関数の結果のうち前記群Gp,qの外部にある
部分をランダム化するステップは、群Zp *からランダ
ムに選択されるパラメータhを計算し、パラメータhを
指数q乗し、hqに前記関数の結果を乗算することによ
って実行されることを特徴とする請求項8記載の方法。 - 【請求項10】 データネットワークを通じて、パスワ
ードを共有する二当事者間で、特定の群に関するDiffie
-Hellman型鍵交換を用いて共有秘密gxyを生成する通
信プロトコルについて、 gは両当事者に既知の群生成元であり、xは一方当事者
に既知の指数であり、 yは他方当事者に既知の指数であり、前記群は群演算お
よび群逆演算を有し、 前記通信プロトコルに従って動作する、前記一方当事者
に関連する通信装置において、 (i)gxと、少なくともパスワードの関数とに対する
群演算を実行することによりパラメータmを生成するこ
と、ただし、前記関数の結果のうち前記群の外部にある
部分はランダム化される、および、 (ii)mを他方当事者に送信すること、を行うように
動作する少なくとも1つのプロセッサを有し、これによ
り、他方当事者は、mと、少なくともパスワードの前記
関数とに対して群逆演算を実行し、前記関数の結果のう
ち前記群の外部にある部分のランダム化を除去してgx
を抽出し、共有秘密gxyを計算することが可能である
ことを特徴とする通信装置。 - 【請求項11】 前記特定の群(Gp,qで表す)は、
群Zp *の部分群であり、pおよびqは、qと互いに素
である値rに対してpがrq+1に等しいような素数で
あり、前記関数の結果のうち前記群Gp,qの外部にあ
る部分をランダム化するステップは、群Zp *からラン
ダムに選択されるパラメータhを計算し、パラメータh
を指数q乗し、hqに前記関数の結果を乗算することに
よって実行されることを特徴とする請求項10記載の装
置。 - 【請求項12】 前記一方当事者はクライアントであ
り、前記他方当事者はサーバであることを特徴とする請
求項10記載の装置。 - 【請求項13】 前記一方当事者に関連する通信装置
が、さらに、前記他方当事者からgyを受信し、共有秘
密gxyを生成するように動作することを特徴とする請
求項10記載の装置。 - 【請求項14】 前記一方当事者に関連する通信装置
が、さらに、受信値を、前記一方当事者の識別子、前記
他方当事者の識別子、m、gy、前記共有秘密、および
前記パスワードのうちの少なくとも1つの関数と比較す
ることによって、前記他方当事者を認証するように動作
することを特徴とする請求項13記載の装置。 - 【請求項15】 前記一方当事者に関連する通信装置
が、さらに、前記一方当事者の識別子、前記他方当事者
の識別子、m、gy、前記共有秘密、および前記パスワ
ードのうちの少なくとも1つの関数を、前記他方当事者
に送信するように動作し、これにより、前記他方当事者
は、前記一方当事者を認証することが可能であることを
特徴とする請求項13記載の装置。 - 【請求項16】 前記一方当事者に関連する通信装置
が、さらに、前記一方当事者の識別子、前記他方当事者
の識別子、m、gy、前記共有秘密、および前記パスワ
ードのうちの少なくとも1つの関数としてセッション鍵
を生成するように動作することを特徴とする請求項13
記載の装置。 - 【請求項17】 データネットワークを通じて、パスワ
ードを共有する二当事者間で、特定の群に関するDiffie
-Hellman型鍵交換を用いて共有秘密gxyを生成する通
信プロトコルについて、 gは両当事者に既知の群生成元であり、xは一方当事者
に既知の指数であり、yは他方当事者に既知の指数であ
り、前記群は群演算および群逆演算を有し、 前記通信プロトコルに従って動作する、前記他方当事者
に関連する通信装置において、該通信装置は少なくとも
1つのプロセッサを有し、 一方当事者が、gxと、少なくともパスワードの関数と
に対する群演算を実行することによりパラメータmを生
成し、mを他方当事者に送信し、前記関数の結果のうち
前記群の外部にある部分はランダム化され、これに応じ
て、前記プロセッサは、 (i)mと、少なくともパスワードの前記関数とに対し
て群逆演算を実行し、 (ii)前記関数の結果のうち前記群の外部にある部分
のランダム化を除去し、 (iii)gxを抽出し、 (iv)共有秘密gxyを計算する、ように動作するこ
とを特徴とする通信装置。 - 【請求項18】 前記特定の群(Gp,qで表す)は、
群Zp *の部分群であり、pおよびqは、qと互いに素
である値rに対してpがrq+1に等しいような素数で
あり、前記関数の結果のうち前記群Gp,qの外部にあ
る部分をランダム化するステップは、群Zp *からラン
ダムに選択されるパラメータhを計算し、パラメータh
を指数q乗し、hqに前記関数の結果を乗算することに
よって実行されることを特徴とする請求項17記載の装
置。 - 【請求項19】 データネットワークを通じて、パスワ
ードを共有する二当事者間で、特定の群に関するDiffie
-Hellman型鍵交換を用いて共有秘密gxyを生成する通
信のための製造物において、 gは両当事者に既知の群生成元であり、xは一方当事者
に既知の指数であり、 yは他方当事者に既知の指数であり、前記群は群演算お
よび群逆演算を有し、 前記製造物は、1つまたは複数のプログラムを含む機械
可読媒体を有し、前記プログラムは、実行時に、 一方当事者が、gxと、少なくともパスワードの関数と
に対する群演算を実行することによりパラメータmを生
成するステップと、mを他方当事者に送信するステップ
とを有し、前記関数の結果のうち前記群の外部にある部
分はランダム化され、これにより、他方当事者は、m
と、少なくともパスワードの前記関数とに対して群逆演
算を実行し、前記関数の結果のうち前記群の外部にある
部分のランダム化を除去してgxを抽出し、共有秘密g
xyを計算することが可能であることを特徴とする通信
のための製造物。 - 【請求項20】 データネットワークを通じて、パスワ
ードを共有する二当事者間で、特定の群に関するDiffie
-Hellman型鍵交換を用いて共有秘密gxyを生成する通
信のための製造物において、 gは両当事者に既知の群生成元であり、xは一方当事者
に既知の指数であり、yは他方当事者に既知の指数であ
り、前記群は群演算および群逆演算を有し、 前記製造物は、1つまたは複数のプログラムを含む機械
可読媒体を有し、前記プログラムは、実行時に、 一方当事者が、gxと、少なくともパスワードの関数と
に対する群演算を実行することによりパラメータmを生
成し、mを他方当事者に送信し、前記関数の結果のうち
前記群の外部にある部分はランダム化され、これに応じ
て、 他方当事者が、mと、少なくともパスワードの前記関数
とに対して群逆演算を実行するステップと、前記関数の
結果のうち前記群の外部にある部分のランダム化を除去
するステップと、gxを抽出するステップと、共有秘密
gxyを計算するステップとを有することを特徴とする
通信のための製造物。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/827,227 US7076656B2 (en) | 2001-04-05 | 2001-04-05 | Methods and apparatus for providing efficient password-authenticated key exchange |
US09/827227 | 2001-04-05 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002335238A true JP2002335238A (ja) | 2002-11-22 |
JP2002335238A5 JP2002335238A5 (ja) | 2005-07-21 |
JP4237970B2 JP4237970B2 (ja) | 2009-03-11 |
Family
ID=25248630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002083199A Expired - Fee Related JP4237970B2 (ja) | 2001-04-05 | 2002-03-25 | 通信方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7076656B2 (ja) |
EP (1) | EP1248408B1 (ja) |
JP (1) | JP4237970B2 (ja) |
CA (1) | CA2376947C (ja) |
DE (1) | DE60200496T2 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006529064A (ja) * | 2003-05-16 | 2006-12-28 | サーティコム コーポレイション | 鍵合意および移送プロトコル |
JP2008269610A (ja) * | 2007-04-18 | 2008-11-06 | Hewlett-Packard Development Co Lp | リモートアプリケーションを対象とした機密データの保護 |
JP2009065226A (ja) * | 2007-09-04 | 2009-03-26 | Kddi Corp | 認証付鍵交換システム、認証付鍵交換方法およびプログラム |
JP2010539839A (ja) * | 2007-09-18 | 2010-12-16 | 韓國電子通信研究院 | サーバ基盤移動インターネットプロトコルシステムにおけるセキュリティ方法 |
US8090947B2 (en) | 1995-04-21 | 2012-01-03 | Certicom Corp. | Key agreement and transport protocol with implicit signatures |
US8209533B2 (en) | 1995-04-21 | 2012-06-26 | Certicom Corp. | Key agreement and transport protocol |
US8422670B2 (en) | 2008-07-10 | 2013-04-16 | National Institute Of Advanced Industrial Science And Technology | Password authentication method |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7076656B2 (en) * | 2001-04-05 | 2006-07-11 | Lucent Technologies Inc. | Methods and apparatus for providing efficient password-authenticated key exchange |
US7305556B2 (en) * | 2001-12-05 | 2007-12-04 | Canon Kabushiki Kaisha | Secure printing with authenticated printer key |
GB0215590D0 (en) * | 2002-07-05 | 2002-08-14 | Hewlett Packard Co | Method and apparatus for generating a cryptographic key |
US20050089173A1 (en) * | 2002-07-05 | 2005-04-28 | Harrison Keith A. | Trusted authority for identifier-based cryptography |
KR100489327B1 (ko) * | 2002-09-18 | 2005-05-12 | 학교법인 한국정보통신학원 | 겹선형 디피-헬만 문제에 기반한 네트워크 환경에서의개인 식별 방법 |
US7284127B2 (en) * | 2002-10-24 | 2007-10-16 | Telefonktiebolaget Lm Ericsson (Publ) | Secure communications |
CA2513375C (en) * | 2003-04-16 | 2012-10-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Authentication method |
KR100520116B1 (ko) | 2003-05-16 | 2005-10-10 | 삼성전자주식회사 | 모바일 애드 혹 상의 암호화를 위한 노드간 키 분배 방법및 이를 이용한 네트워크 장치 |
KR100581590B1 (ko) * | 2003-06-27 | 2006-05-22 | 주식회사 케이티 | 이중 요소 인증된 키 교환 방법 및 이를 이용한 인증방법과 그 방법을 포함하는 프로그램이 저장된 기록매체 |
JP2007521676A (ja) * | 2003-07-31 | 2007-08-02 | トムソン ライセンシング | ディフィー・ヘルマン・ディジタル署名の生成及び検証 |
JP3854954B2 (ja) * | 2003-09-05 | 2006-12-06 | キヤノン株式会社 | データ共有装置 |
US7916868B1 (en) * | 2004-05-06 | 2011-03-29 | Verizon Data Services Llc | Quadratic residue based password authenticated key exchange method and system |
US7764795B2 (en) * | 2004-10-20 | 2010-07-27 | Oracle International Corporation | Key-exchange protocol using a password-derived prime |
US20060248079A1 (en) * | 2005-04-28 | 2006-11-02 | Freescale Semiconductor Incorporated | Method and apparatus for finding a perfect hash function and making minimal hash table for a given set of keys |
US7814320B2 (en) * | 2005-07-19 | 2010-10-12 | Ntt Docomo, Inc. | Cryptographic authentication, and/or establishment of shared cryptographic keys, using a signing key encrypted with a non-one-time-pad encryption, including (but not limited to) techniques with improved security against malleability attacks |
US7698555B2 (en) * | 2005-08-29 | 2010-04-13 | Schweitzer Engineering Laboratories, Inc. | System and method for enabling secure access to a program of a headless server device |
US7783041B2 (en) * | 2005-10-03 | 2010-08-24 | Nokia Corporation | System, method and computer program product for authenticating a data agreement between network entities |
US8954745B2 (en) * | 2007-04-03 | 2015-02-10 | Alcatel Lucent | Method and apparatus for generating one-time passwords |
US20090070593A1 (en) * | 2007-09-07 | 2009-03-12 | Authentec, Inc. | Finger sensing apparatus using unique session key and associated methods |
TWI361610B (en) * | 2007-12-03 | 2012-04-01 | Ind Tech Res Inst | Key establishing and event processing method and system for dual-mode wireless sensor network |
US8464058B1 (en) * | 2008-04-08 | 2013-06-11 | Hewlett-Packard Development Company, L.P. | Password-based cryptographic method and apparatus |
US7522723B1 (en) | 2008-05-29 | 2009-04-21 | Cheman Shaik | Password self encryption method and system and encryption by keys generated from personal secret information |
US20100042841A1 (en) * | 2008-08-15 | 2010-02-18 | Neal King | Updating and Distributing Encryption Keys |
US8433918B2 (en) * | 2009-10-14 | 2013-04-30 | Texas Instruments Incorporated | Methods and systems for improving the security of password-based authentication protocols for IEEE 802.11 networks |
EP2518932A3 (en) * | 2010-10-05 | 2015-11-18 | Brandenburgische Technische Universität Cottbus-Senftenberg | A method of password-based authentication and session key agreement for secure data transmission, a method for securely transmitting data, and an electronic data transmission system |
GB2490483B (en) | 2011-04-26 | 2019-05-29 | Hewlett Packard Entpr Dev Lp | Digital signature method and system |
US10333696B2 (en) | 2015-01-12 | 2019-06-25 | X-Prime, Inc. | Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency |
US20170076106A1 (en) * | 2015-09-16 | 2017-03-16 | Qualcomm Incorporated | Apparatus and method to securely control a remote operation |
US9876783B2 (en) * | 2015-12-22 | 2018-01-23 | International Business Machines Corporation | Distributed password verification |
US10305864B2 (en) * | 2016-01-25 | 2019-05-28 | Cisco Technology, Inc. | Method and system for interest encryption in a content centric network |
US10397206B2 (en) | 2016-01-26 | 2019-08-27 | Red Hat, Inc. | Symmetric encryption key generation/distribution |
CN110519300B (zh) * | 2019-09-24 | 2021-08-06 | 杭州字节信息技术有限公司 | 基于口令双向认证的客户端密钥安全存储方法 |
EP4264875A1 (en) * | 2021-09-24 | 2023-10-25 | Huawei Technologies Co., Ltd. | Method and device for establishing password based secure channel |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4956863A (en) * | 1989-04-17 | 1990-09-11 | Trw Inc. | Cryptographic method and apparatus for public key exchange with authentication |
US5241599A (en) | 1991-10-02 | 1993-08-31 | At&T Bell Laboratories | Cryptographic protocol for secure communications |
US5351293A (en) * | 1993-02-01 | 1994-09-27 | Wave Systems Corp. | System method and apparatus for authenticating an encrypted signal |
US5440635A (en) | 1993-08-23 | 1995-08-08 | At&T Corp. | Cryptographic protocol for remote authentication |
US5450493A (en) * | 1993-12-29 | 1995-09-12 | At&T Corp. | Secure communication method and apparatus |
US5602917A (en) * | 1994-12-30 | 1997-02-11 | Lucent Technologies Inc. | Method for secure session key generation |
JP3541522B2 (ja) * | 1995-10-09 | 2004-07-14 | 松下電器産業株式会社 | 機器間通信保護システムおよび機器 |
US6226383B1 (en) * | 1996-04-17 | 2001-05-01 | Integrity Sciences, Inc. | Cryptographic methods for remote authentication |
US6539479B1 (en) * | 1997-07-15 | 2003-03-25 | The Board Of Trustees Of The Leland Stanford Junior University | System and method for securely logging onto a remotely located computer |
US6829356B1 (en) * | 1999-06-29 | 2004-12-07 | Verisign, Inc. | Server-assisted regeneration of a strong secret from a weak secret |
GB2357227B (en) * | 1999-12-08 | 2003-12-17 | Hewlett Packard Co | Security protocol |
SG95612A1 (en) * | 1999-12-24 | 2003-04-23 | Kent Ridge Digital Labs | Remote authentication based on exchanging signals representing biometrics information |
US7359507B2 (en) * | 2000-03-10 | 2008-04-15 | Rsa Security Inc. | Server-assisted regeneration of a strong secret from a weak secret |
US7047408B1 (en) | 2000-03-17 | 2006-05-16 | Lucent Technologies Inc. | Secure mutual network authentication and key exchange protocol |
US7076656B2 (en) * | 2001-04-05 | 2006-07-11 | Lucent Technologies Inc. | Methods and apparatus for providing efficient password-authenticated key exchange |
US7461260B2 (en) * | 2002-12-31 | 2008-12-02 | Intel Corporation | Methods and apparatus for finding a shared secret without compromising non-shared secrets |
US20050157874A1 (en) * | 2003-12-01 | 2005-07-21 | The Regents Of The University Of California | Cryptography for secure dynamic group communications |
-
2001
- 2001-04-05 US US09/827,227 patent/US7076656B2/en not_active Expired - Lifetime
-
2002
- 2002-03-15 CA CA002376947A patent/CA2376947C/en not_active Expired - Fee Related
- 2002-03-22 DE DE60200496T patent/DE60200496T2/de not_active Expired - Lifetime
- 2002-03-22 EP EP02252083A patent/EP1248408B1/en not_active Expired - Lifetime
- 2002-03-25 JP JP2002083199A patent/JP4237970B2/ja not_active Expired - Fee Related
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8090947B2 (en) | 1995-04-21 | 2012-01-03 | Certicom Corp. | Key agreement and transport protocol with implicit signatures |
US8209533B2 (en) | 1995-04-21 | 2012-06-26 | Certicom Corp. | Key agreement and transport protocol |
US8578165B2 (en) | 1995-04-21 | 2013-11-05 | Certicom Corp. | Key agreement and transport protocol |
US8892890B2 (en) | 1995-04-21 | 2014-11-18 | Certicom Corp. | Key agreement and transport protocol |
JP2006529064A (ja) * | 2003-05-16 | 2006-12-28 | サーティコム コーポレイション | 鍵合意および移送プロトコル |
JP2011182454A (ja) * | 2003-05-16 | 2011-09-15 | Certicom Corp | 鍵合意および移送プロトコル |
JP4781269B2 (ja) * | 2003-05-16 | 2011-09-28 | サーティコム コーポレーション | 鍵合意および移送プロトコル |
JP2008269610A (ja) * | 2007-04-18 | 2008-11-06 | Hewlett-Packard Development Co Lp | リモートアプリケーションを対象とした機密データの保護 |
JP2009065226A (ja) * | 2007-09-04 | 2009-03-26 | Kddi Corp | 認証付鍵交換システム、認証付鍵交換方法およびプログラム |
JP2010539839A (ja) * | 2007-09-18 | 2010-12-16 | 韓國電子通信研究院 | サーバ基盤移動インターネットプロトコルシステムにおけるセキュリティ方法 |
US8925048B2 (en) | 2007-09-18 | 2014-12-30 | Electronics And Telecommunications Research Institute | Security method of mobile internet protocol based server |
US8422670B2 (en) | 2008-07-10 | 2013-04-16 | National Institute Of Advanced Industrial Science And Technology | Password authentication method |
Also Published As
Publication number | Publication date |
---|---|
CA2376947A1 (en) | 2002-10-05 |
EP1248408A2 (en) | 2002-10-09 |
CA2376947C (en) | 2007-07-10 |
JP4237970B2 (ja) | 2009-03-11 |
DE60200496T2 (de) | 2005-06-23 |
DE60200496D1 (de) | 2004-06-24 |
US20020194478A1 (en) | 2002-12-19 |
EP1248408B1 (en) | 2004-05-19 |
US7076656B2 (en) | 2006-07-11 |
EP1248408A3 (en) | 2002-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4237970B2 (ja) | 通信方法 | |
EP1134929B1 (en) | Secure mutual network authentication and key exchange protocol | |
US6757825B1 (en) | Secure mutual network authentication protocol | |
MacKenzie et al. | Networked cryptographic devices resilient to capture | |
Wu | The Secure Remote Password Protocol. | |
US7716484B1 (en) | System and method for increasing the security of encrypted secrets and authentication | |
US7139917B2 (en) | Systems, methods and software for remote password authentication using multiple servers | |
US7149311B2 (en) | Methods and apparatus for providing networked cryptographic devices resilient to capture | |
WO2006127229A2 (en) | Cryptographic authentication and/or establishment of shared cryptographic keys, including, but not limited to, password authenticated key exhange (pake) | |
JP2009526411A (ja) | 装置またはネットワークによって相互接続された2当事者間の交換の方法、信号伝送媒体、および装置(チャレンジ・レスポンス署名および高性能で安全なDiffie−Hellmanプロトコルに関する方法および構造) | |
US8438393B2 (en) | Quadratic residue based password authenticated key exchange method and system | |
Viet et al. | Anonymous password-based authenticated key exchange | |
Eslami et al. | Provably Secure Group Key Exchange Protocol in the Presence of Dishonest Insiders. | |
Hwang et al. | EPA: An efficient password-based protocol for authenticated key exchange | |
Lee et al. | Provably secure extended chaotic map-based three-party key agreement protocols using password authentication | |
Kilciauskas et al. | Authenticated key agreement protocol based on provable secure cryptographic functions | |
Lee et al. | Efficient password-based authenticated key agreement protocol | |
Shin et al. | Efficient and leakage-resilient authenticated key transport protocol based on RSA | |
Kwon et al. | A study on the generalized key agreement and password authentication protocol | |
Yoon et al. | Robust and simple authentication protocol for secure communication on the web | |
Kwon | Addendum to Summary of AMP | |
Yoon et al. | A new simple authenticated key agreement and protected password change protocol | |
Kumar | A forward secure Remote user Authentication Scheme | |
Bakuri | Security Analysis and Implementation of Password-based Cryptosystem | |
Gentry et al. | DoCoMo USA Labs {cgentry, philmac, ramzan}@ docomolabs-usa. com August 15, 2005 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041126 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041126 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070509 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070809 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070814 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071109 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080512 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080910 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20081104 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20081125 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081219 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4237970 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111226 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121226 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131226 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |