JP5446768B2 - 鍵交換システム、鍵交換方法 - Google Patents
鍵交換システム、鍵交換方法 Download PDFInfo
- Publication number
- JP5446768B2 JP5446768B2 JP2009264324A JP2009264324A JP5446768B2 JP 5446768 B2 JP5446768 B2 JP 5446768B2 JP 2009264324 A JP2009264324 A JP 2009264324A JP 2009264324 A JP2009264324 A JP 2009264324A JP 5446768 B2 JP5446768 B2 JP 5446768B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- authenticator
- authentication
- key exchange
- message information
- 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.)
- Active
Links
Images
Description
特に、鍵交換装置それぞれが自己であることの認証を受けるための手法を備え、鍵交換を行う相手の装置を認証した上で、認証に成功した相手装置との鍵交換を行う鍵交換方式を、認証付き鍵交換方式と呼ぶものとする。
鍵交換装置100は、システムパラメータ107、自己識別子108、鍵交換開始命令109を受け付ける入力装置101と、乱数の入力を受け付ける乱数入力装置102と、生成された乱数および認証子を含む状態情報を記憶する記憶装置103と、他の鍵交換装置から送り込まれた認証子に基づき鍵交換用の認証を行う認証装置104を備えた構成を有する。
この命令(入力)待ち状態の鍵交換装置100(Π)に対して、セッション番号112(sid)と相手識別子110(Π’)とを含む鍵交換開始命令109を入力された場合、第一ラウンド装置200(図2)が動作する
ここで、セッション番号(sid)112は、鍵交換装置ΠおよびΠ’間における鍵交換セッションに対応して割当てられた固有の数値であるものとする。
第一ラウンド装置200に予め設定された暫定数生成部202(図2)は、入力された乱数111に基づき暫定数r(r∈Z/qZとする)をランダムに生成する。
更に、第一ラウンド装置200内に予め設定された冪乗数生成部203(図2)が、この暫定数rに基づく数値y(ここで、y=grとする)を生成する。ここで、yをべき乗数204と呼ぶ。
また、第一ラウンド装置200は、認証装置104に対して、要求する処理内容を示す処理パラメータ(ここでは、識別子の生成を示す)と、セッション番号およびべき乗数(”生成”、(sid,y))を認証装置104に入力し、その出力としての識別子206(sig)を得る。
次いで、第一ラウンド装置200は、図2に示すように、セッション番号、冪乗数、および識別子を含むメッセージ(sid,y,sig)207を設定すると共に、このメッセージを、通信路105を介して鍵交換装置(識別子Π’)に送信する。尚、このメッセージには、送信者として識別子(Π)が、宛先として(Π’)が設定されているものとする。
ここで、鍵交換装置100は命令待ち状態に設定されるものとする。
尚、メッセージ301は、通信路105を介して鍵生成装置300に送り込まれたものとする。
ここで、対応する状態情報である(sid,y,r)が記憶装置103に記憶されていない場合、鍵交換装置を命令待ち状態に設定し、鍵交換に係る処理を中止する。
ここで、鍵生成装置300は、要求する処理の内容を示す要求パラメータ(ここでは、この要求を「検証」とする)、相手識別子を含む(”検証”,Π’,(sid,y’),sig’)を認証装置104に入力することにより、送り込まれたメッセージの検証(認証を)行う。
ここで、認証装置104が、メッセージ内容が鍵交換相手として”不当”であることを示す出力を行った場合、鍵交換装置100を命令待ち状態に設定する。
また、予め設定された鍵生成部308が、冪乗数yに基づきセッション番号およびzを含む交換鍵(sid,z(ただしz=y’r))307を生成して出力する。
尚、暗号化装置404は、例えば鍵および平文が入力された場合に、入力された鍵を用いて同じく入力された平文を暗号化して、暗号文を生成(出力)する。
また、復号装置405、例えば鍵および暗号文が入力された場合に、入力された鍵を用いて暗号文を復号化した平文を生成(出力)する。
更に、ハッシュ計算装置406は、自己識別子、相手識別子、平文、乱数などの予め設定された入力情報に対して、予め設定されたプログラム(ハッシュ関数)に基づく処理を行うことにより出力情報を生成して出力するハッシュ関数処理機能を備えている。
鍵交換装置500は、図4に示すように、当該鍵交換装置500に対して鍵交換にかかる入力情報を入力するための入力装置501と、生成された乱数515を鍵交換装置500に対して入力する乱数入力装置502と、利用者により入力されたパスワードを鍵交換装置500に入力するパスワード入力装置503と、鍵交換装置500内で設定された状態情報を記憶する記憶装置508を備えた構成を有する。
尚、暗号化装置504は、鍵および平文が入力された場合に、入力された鍵を用いて、同じく入力された平文を暗号化して、暗号文を生成(出力)する。また、復号装置505は、例えば鍵および暗号文が入力された場合に、入力された鍵を用いて暗号文を復号化した平文を生成(出力)する。
更に、ハッシュ計算装置506は、自己識別子、相手識別子、平文、乱数などの予め設定された入力情報に対して、予め設定されたプログラム(ハッシュ関数)に基づく処理を行うことにより出力情報を生成して出力するハッシュ関数処理機能を備えている。
また、鍵交換装置400は、相手識別子、暫定数、冪乗数、およびパスワードを含む状態情報(Π’、x、v、pw)を生成して、これを記憶装置408に格納する。
ここで、鍵交換装置400は、命令待ち状態に設定される。
尚、メッセージ(Π’,ct[1]’)は、送信者が(Π’)、宛先が(Π)に設定されているものとする。
ここで、鍵交換装置500は、復号装置505に対して入力情報としてのパスワードおよび暗号文字列(pw,ct[1]’)を入力し、その出力としての平文(v’)を得る。
また、復号装置505は、zを算出する。ここで、z=v’yであるものとする。
ここで、鍵交換装置500は、状態情報(Π’,sk’)を生成して、これを記憶装置508に格納する。
ここで、鍵交換装置500は、は命令待ち状態に設定される。
ここで、ch[1]=ch[1]’が成り立たない場合、鍵交換装置400は命令待ち状態に設定されるものとする。
更に、鍵交換装置400は、(sk’,0)をハッシュ計算装置406に入力して、その出力である鍵(key)を得る。
次いで、鍵交換装置400は、メッセージ(Π,ch[2])を通信装置407を介して鍵交換装置500に送信する。尚、このメッセージに含まれる送信者の識別子は(Π)、宛先は(Π’)であるものとする。
次いで、鍵交換装置500は、算出された鍵(key)を交換結果(交換鍵)516として出力する。また、鍵交換装置500は、上記記憶した状態情報を消去し、命令待ち状態となる。
このため、メモリ器機の盗難や紛失による情報漏洩を抑制することが可能となる。しかしながら、その一方で、悪意のユーザによりパスワードが推測され盗まれることでパスワードが漏洩してしまうといった不都合が生じ得る。
このため、例えば、利用者が多くの異なるサーバとの間でパスワードの提供を行う場合、利用者は複数の異なるパスワードをそれぞれ記憶することは困難であることから、異なるサーバに対して鍵交換用の共通のパスワードを設定してしまう場合が生じ得る。この場合、不正なサーバ利用者が利用者側鍵交換装置から提供された鍵交換用のパスワードを取得し、他のサーバ(鍵交換装置)に対して、パスワードを利用して、不正に成りすましによる接続を行い、他のサーバとの不正な鍵交換を行うことが可能となってしまう不都合が生じ得る。
しかしながら、この場合、ICカードに文字数の長い秘密鍵と照合対称となるパスワードが格納される構成であるため、これを解析することでICカードに記憶されたパスワードや秘密鍵を盗むことが可能であり、例えばICカードが盗難にあった場合などには、交換鍵にかかる安全性を確保することができないという不都合がある。
本発明は、上記関連技術の有する不都合を改善し、セキュリティが有効に高められた状態で鍵交換を行うことを可能とする鍵交換システム、鍵交換方法、鍵交換プログラムを提供することを、その目的とする。
次に、本発明の実施形態1について、その基本的構成内容を説明する。
また、利用者用鍵交換装置600およびサーバ用鍵交換装置700は、上記鍵交換装置(図4)と同様に、その内部に暗号化処理を行う暗号化部および復号化処理を行う復号化部を備えた認証子生成装置と、ランダム数に基づく計算を行うハッシュ計算装置を有する。
ここで、認証子生成装置の暗号化部は、例えば鍵および平文が入力された場合に、入力された鍵を用いて同じく入力された平文を暗号化して、暗号文を生成(出力)する。
また、ハッシュ計算装置は、自己識別子、相手識別子、平文、乱数などの予め設定された入力情報に対して、予め設定されたプログラム(ハッシュ関数)に基づく処理を行うことにより出力情報を生成して出力するハッシュ関数処理機能を備えている。
利用者用鍵交換装置(以下「利用者装置」という)600には、利用者装置600に対して、鍵交換の開始要求を示す鍵交換開始命令と鍵交換の相手の識別子(相手識別子)602の入力を行う鍵交換開始命令部601が併設されている。
尚、認証子検証部607は、予め設定されたマスター鍵と相手識別子に基づき、上記ハッシュ関数を利用して秘密鍵を生成する機能を有する。
また、パスワード認証子生成部612は、予め設定されたマスター鍵(mkey(U))をハッシュ関数に入力して得られた値と予め設定されたmask[U]との排他的論理和を計算する暗号化計算機能と、マスター鍵、暗号パスワード、相手識別子に基づきハッシュ関数を利用して秘密鍵(第2の秘密鍵に対応)を生成するパスワード秘密鍵生成機能を有する。
サーバ用鍵交換装置700は、利用者用鍵交換装置600から送り込まれた第一メッセージを受信すると共に、当該メッセージの内容に基づく記録情報を利用者リスト724から抽出し、メッセージ送信元による鍵交換試行の試行誤り回数が予め設定された制限回数を超えていないか否かを判定を行う制限回数確認部701と、メッセージ送信元による鍵交換試行の試行誤り回数が制限回数を下回る場合に、メッセージ内容に基づくランダム数の生成を行うと共に、ハッシュ関数を利用して鍵(key)を生成する鍵生成部702を有する。
また、この対応状態確認部707は、利用者リスト724内に記録された、上記状態情報に対応する記録情報(U,akey[U,1],akey[U,2],i)を検索する。
本実施形態1では、利用者用鍵交換装置600に対して着脱自在に接続した、例えば、ICカードのような、可搬装置630を備え(図5の一点破線部)、この可搬装置630内に、例えば、上記検証鍵検証部609、パスワード入力部610、無パスワード認証子生成611、パスワード認証子生成612、パスワード認証子隠蔽613、および乱数源更新部614を設定すると共に、可搬装置630内に予め設定した記憶領域にマスター鍵620、マスク622、および乱数源621が記憶保持された構成であってもよい。
また、サーバ装置側では利用者により入力されたパスワードを得ることができないため、鍵交換を行った他のサーバ装置に対する成りすましによる不正な鍵交換を有効に抑制することができる。
次に、本実施形態1の動作について、その概略を説明する。
まず、予め設定されたマスター鍵に基づき第1の秘密鍵を生成すると共に、外部から入力されたパスワードに基づき第2の秘密鍵を生成した利用者装置600が、サーバ装置700からメッセージ情報が送り込まれた場合に、前記第1の秘密鍵に基づき前記第1の認証子の生成を行い、この第1の認証子に基づき前記メッセージ情報の認証判定を行い、前記第1の認証子に基づく認証判定で認証がなされた場合に、前記第2の秘密鍵に基づき前記第2の認証子の生成を行うと共に当該第2の認証子に基づき前記メッセージ情報の認証判定を行い、前記第2の認証子に基づく認証判定で認証がなされた場合に、鍵生成部615が、前記メッセージ情報に基づき交換鍵を生成し、前記サーバ装置に対してメッセージ情報の送信を行う。
次いで、利用者装置600からメッセージ情報が送り込まれた場合に、サーバ装置700が、予め利用者装置600により登録された前記第1の秘密鍵に基づき前記第1の認証子の生成を行い、前記第1の認証子に基づき前記メッセージ情報の認証判定を行い、前記第1の認証子に基づく認証判定で認証がなされた場合に、予め登録された前記第2の秘密鍵に基づき前記第2の認証子の生成を行うと共に当該第2の認証子に基づき前記メッセージ情報の認証判定を行い、鍵出力部712は、前記第2の認証子に基づく認証判定で認証がなされた場合に前記メッセージ情報に基づき前記ユーザ装置で生成された交換鍵と共通の交換鍵を出力する。
利用者鍵交換装置600には、図5に示すように、予めランダムに設定されたマスター鍵(mkey[U])620、乱数源(seed[U])621、暗号化用のマスク(mask[U])622が予め設定された記憶領域に記憶されているものとする。
また、サーバ用鍵交換装置700には、署名鍵(skey[S])720、検証鍵(vkey[S])721、ランダムに選ばれたZ/pZの元sである複号鍵(dkey[S])722と、公開鍵(pkey[S]:t=gsであるものとする)723と、鍵交換相手として登録された利用者をリスト化した利用者リスト724が、予め設定された記憶領域に記憶されているものとする。
尚、上記利用者リスト724は、初期設定としては利用者が1件も登録されていない空状態であるものとする。
ここで、利用者用鍵交換装置600は、サーバ用鍵交換装置700に対して鍵交換対象装置としての登録を行う。利用者用鍵交換装置600は、ネットワークを介して複数の異なるサーバ用鍵交換装置に対して鍵交換対象装置としての登録行うことができるものとする。
尚、サーバ用鍵交換装置(サーバ装置)700は、異なる利用者用鍵交換装置(利用者装置)を、各利用者装置に予め設定された識別子(利用者装置識別子)により判別するものとする。これにより、一つのサーバ用鍵交換装置700は、複数の異なる利用者用鍵交換装置からの登録を受けつけることができる。また、これにより、一つのサーバ用鍵交換装置700は、複数の異なる利用者用鍵交換装置との鍵交換を行うことが可能となる。
これにより、サーバ用鍵交換装置700は、利用者リストに利用者毎に対応する記録情報を保存することができる。
まず、サーバ装置700は、予め設定された検証鍵(vkey[S])721、および公開鍵(pkey[S])723を、利用者用鍵交換装置600に対して送信する。
次いで、利用者用鍵交換装置600は、検証鍵(vkey[S])721、および公開鍵(pkey[S])723を受け取った場合に、パスワード入力装置610から入力されたパスワード(pwd[U])を取得する。
ここで、パスワード入力装置610は、検証鍵(vkey[S])721、および公開鍵(pkey[S])723を受け取った場合に、予め設定された表示画面に対してパスワード入力要求を出力表示するものとする。
次に、本実施形態1における鍵交換の動作について、図7、8のフローチャートに基づき説明する。
まず、利用者用鍵交換装置600の動作(ステップA1〜A4)について、図7のフローチャートに基づき説明する。
このとき、第一メッセージ生成部603が、暫定数y(y∈Z/qZとする)を生成する(暫定数生成)。尚、暫定数yは、ランダムに生成される数字であるものとする。また、qを素数、Gを位数qの乗法的巡回群、gをGの生成元であるものとする。
次に、第一メッセージ送信部605が、第一メッセージとしての(U,S、w)をサーバ用鍵交換装置700に送信する(ステップA4)。
ここで、制限回数確認部701は、記録情報(U,akey[U,1]、akey[U,2]、i)を利用者リスト724から抽出すると共に、鍵交換試行の試行誤り回数が予め設定された制限回数を超えていないか否かを判定する(制限回数確認:ステップB2)。
具体的には、制限回数確認部701は、記録情報に含まれたiの値が制限回数より大きいか否かを判定し、iの値が制限回数より大きい場合は処理を中止する。
尚、上記第二メッセージに含まれるvkey[S]、pkey[S]、mac[S,U]、およびsig[M]は、それぞれ、検証鍵、公開鍵、認証子、および署名を示す。
以下、利用者用鍵交換装置600における動作処理について、図7のフローチャート(ステップA5〜A18)に基づき説明する。
ここで、対応状態確認部606は、(S,U,v,w)を含むメッセージを受信した場合に、状態情報(S,w,y)が状態保存部604に予め保存されているか否かを調べ、その判定を行う(対応状態確認:ステップA6)。
ここで、状態保存部604に状態情報(S,w,y)が予め保存されていない場合は、鍵交換セッションを切断し、鍵交換にかかる処理を中止する。
また、認証子検証部607は、生成した秘密鍵(akey[U,1])と、メッセージとしての検証鍵および公開鍵(vkey[S],pkey[S])とを認証子生成装置に入力し、その出力としての認証子(mac[S,U]’)を生成する。
ここで、認証子検証部607は、生成した認証子(mac[S,U]’)と第二メッセージの一部として送り込まれたmac[S,U]とが等しいか否かの判定を行う(認証子検証:ステップA9)。
次いで、パスワード認証子生成部612は、マスター鍵、暗号パスワード、および相手識別子(mkey,mpwd,S)をハッシュ関数に入力し、その出力としての秘密鍵(akey(U,2))を生成する。
ここで、パスワード認証子生成部612は、生成した秘密鍵(akey(U,2))とメッセージとしての(U,S,sid)を認証子生成装置に入力して、その出力としての認証子(mac[K,2])を生成する(ステップA12)。
ここで、パスワード認証子隠蔽部613は、trをハッシュ関数に入力して得られた値とmac[K,2]との排他的論理和である暗号署名(psig[K,2])を生成する(パスワード認証子隠蔽:ステップA13)。
次いで、鍵生成部615が、値z(z=vyとする)を算出すると共に、この値zを含む(S、U,v、w、z)をハッシュ関数に入力して、その出力である鍵(key)を生成する(ステップA15)。
ここで、鍵出力部618が、(U,S、sid、key)を含む交換鍵625を出力する(ステップA18)。
また、対応状態確認部707は、利用者リスト724内に記録された、上記状態情報に対応する記録情報(U,akey[U,1],akey[U,2],i)を検索する。
ここで、利用者リスト724に、対応する記録情報(U,akey[U,1],akey[U,2],i)が予め保存されていない場合は、鍵交換処理のセッションを切断し、鍵交換処理を中止するものとする。
ここで、状態消去部713が、状態情報(U,sid,key,tkey)を消去する処理を行う(ステップB14)。
これにより、利用者用鍵交換装置600およびサーバ用鍵交換装置700間における鍵交換が成立する。
次に、本発明の実施形態2について、その基本的構成内容を説明する。
また、利用者用鍵交換装置800およびサーバ用鍵交換装置900は、上記鍵交換装置(図4)と同様に、予め設定された鍵情報に基づきデータ(平文など)の暗号化処理を行う暗号化装置と、暗号化されたデータの復号化処理を行う復号化装置と、予め設定された秘密鍵およびランダム数に基づきメッセージ情報の認証子を生成する認証子生成装置と、ランダム数に基づく計算を行うハッシュ計算装置を有する。
ここで、上記暗号化装置は、例えば鍵および平文が入力された場合に、入力された鍵を用いて同じく入力された平文を暗号化して、暗号文を生成(出力)する。
ハッシュ計算装置は、自己識別子、相手識別子、平文、乱数などの予め設定された入力情報に対して、予め設定されたプログラム(ハッシュ関数)に基づく処理を行うことにより出力情報を生成して出力するハッシュ関数処理機能を備えている。
利用者用鍵交換装置(以下「利用者装置」という)800には、当該利用者装置800に対して、鍵交換の開始要求を示す鍵交換開始命令と鍵交換の相手の識別子(相手識別子)802の入力を行う鍵交換開始命令部801が併設されている。
尚、認証子検証部807は、予め設定されたマスター鍵と相手識別子に基づき、上記ハッシュ関数を利用して秘密鍵を生成する機能を有する。
また、鍵生成部815は、生成したz(=vy)を含むランダム数(S,U,v,w,z,0)に基づき、ハッシュ関数を利用することにより、上記一時鍵に対応する対称鍵暗号方式用の鍵(key)を生成する鍵生成機能を有する。
これにより、本実施形態の利用者装置800では、生成した鍵および一時鍵を対称鍵暗号方式の鍵として利用して、鍵交換対象である相手装置(ここでは、サーバ装置900)から送り込まれたメッセージ情報に含まれるデータの暗号化および復号化を行うことができる。
サーバ用鍵交換装置900は、利用者装置800から送り込まれた第一メッセージを受信すると共に、当該メッセージの内容に基づく記録情報を利用者リスト924から抽出し、メッセージ送信元による鍵交換試行の試行誤り回数が予め設定された制限回数を超えていないか否かの判定を行う制限回数確認部901と、メッセージ送信元による鍵交換試行の試行誤り回数が制限回数を下回る場合に、メッセージ内容に基づくランダム数の生成を行い生成したランダム数を含む(S,U,v,w,z,0)に基づきハッシュ関数を利用して鍵(key)を生成する鍵生成部902と、メッセージ内容に基づくランダム数の生成を行い生成したランダム数を含む(S,U,v,w,z,0)に基づきハッシュ関数を利用して一時鍵(tkey)を生成する一時鍵生成部914を有する。
また、この対応状態確認部907は、利用者リスト924内に記録された、上記状態情報に対応する記録情報(U,akey[U,1],akey[U,2],i)を検索する。
本実施形態2では、利用者用鍵交換装置800に一時的に接続したICカードの様な可搬装置830を備え(図6)、この可搬装置830内に、例えば、上記認証子検証807、無パスワード認証子生成811、パスワード認証子生成812、パスワード認証子隠蔽813、鍵生成815、およびパスワード入力部810を設定すると共に、可搬装置830内に予め設けた記憶領域にマスター鍵820が記憶保持された構成であってもよい。
次に、本実施形態2の動作について、その概略を説明する。
利用者装置800は、予め設定されたマスター鍵に基づき第1の秘密鍵を生成すると共に、外部から入力されたパスワードに基づき第2の秘密鍵を生成し、前記第1および第2の秘密鍵を前記サーバ装置に送信する。
利用者鍵交換装置800には、図6に示すように、予めランダムに設定されたマスター鍵(mkey[U])820が予め設定された記憶領域に記憶されているものとする。
また、サーバ用鍵交換装置900には、鍵交換相手として登録された利用者をリスト化した利用者リスト924が、予め設定された記憶領域に記憶されているものとする。
尚、上記利用者リスト924は、初期設定としては利用者が1件も登録されていない空状態であるものとする。
ここで、利用者用鍵交換装置800は、サーバ用鍵交換装置700に対して鍵交換対象装置としての登録を行う。利用者用鍵交換装置800は、ネットワークを介して複数の異なるサーバ用鍵交換装置に対して鍵交換対象装置としての登録行うことができるものとする。
尚、サーバ用鍵交換装置(サーバ装置)900は、異なる利用者用鍵交換装置(利用者装置)を、各利用者装置に予め設定された識別子(利用者装置識別子)により判別するものとする。これにより、サーバ用鍵交換装置900は、複数の異なる利用者用鍵交換装置からの登録を受けつけることができる。また、これにより、サーバ用鍵交換装置900は、複数の異なる利用者用鍵交換装置との鍵交換を行うことが可能となる。
これにより、サーバ用鍵交換装置900は、利用者リストに利用者毎に対応する記録情報を保存することができる。
まず、利用者用鍵交換装置800のパスワード入力部810が、利用者から入力されたパスワード(pwd)を取得する。
次いで、鍵生成部815が、予め記憶されたマスター鍵および相手識別子(mkey[U],S)をハッシュ関数に入力することにより、その出力としての秘密鍵akey[U,1]を生成する。
次いで、第一メッセージ送信部805が、上記生成された二つの異なる秘密鍵(akey[U,1]、akey[U,2])を、サーバ用鍵交換装置900に送信する。
尚、記録情報におけるiの値はパスワード誤り回数を示し、初期値は0に設定されているものとする。
次に、本実施形態2における鍵交換の動作について、図9、10のフローチャートに基づき説明する。
まず、利用者用鍵交換装置600の動作(ステップC1〜C4)について、図9のフローチャートに基づき説明する。
このとき、第一メッセージ生成部803が、暫定数y(y∈Z/qZとする)を生成する(暫定数生成)。尚、暫定数yは、ランダムに生成される数字であるものとする。
次に、第一メッセージ送信部805が、第一メッセージとしての(U,S、w)をサーバ用鍵交換装置900に送信する(ステップC4)。
ここで、制限回数確認部901は、記録情報(U,akey[U,1]、akey[U,2]、i)を利用者リスト924から抽出すると共に、鍵交換試行の試行誤り回数が予め設定された制限回数を超えていないか否かを判定する(制限回数確認:ステップD2)。
具体的には、制限回数確認部901は、記録情報に含まれたiの値が制限回数より大きいか否かを判定し、iの値が制限回数より大きい場合は処理を中止する。
このとき、セッション番号生成部903が、(v,w)をハッシュ関数に入力して、その出力をセッション番号(sid)を生成する(セッション番号生成:ステップD5)。
次に、第二メッセージ送信部906が、上記生成された認証子mac[M,2]を含む(S,U,v,w,mac[M,2])を、利用者用鍵交換装置800に送信する(ステップD8)。
以下、利用者用鍵交換装置800における動作処理について、図9のフローチャート(ステップC5〜C17)に基づき説明する。
ここで、対応状態確認部806は、(S,U,v,w)を含むメッセージを受信した場合に、状態情報(S,w,y)が状態保存部804に予め保存されているか否かを調べ、その判定を行う(対応状態確認:ステップC6)。
ここで、状態保存部804に状態情報(S,w,y)が予め保存されていない場合は、鍵交換処理のセッションを中止する。
ここで、認証子検証部807は、生成した認証子(mac[M,2]’)と第二メッセージの一部として送り込まれたmac[M,2]が等しいか否かの判定を行う(認証子検証:ステップC8)。
ここで、鍵生成部815が、z(=vy)を生成すると共に、(S,U,v,w,z,1)をハッシュ関数に入力することにより、その出力としての一時鍵(tkey)を生成する(ステップC11)。
また、パスワード認証子生成部812は、秘密鍵(akey[U,2])とメッセージとしての(U,S,sid)を取得して認証子生成装置に入力することにより、その出力としてパスワード認証子(mac[K,2])を生成する(パスワード認証子生成:ステップC12)。
ここで、状態消去部816は、状態情報(S,w,y)を消去する(状態消去:ステップC15)。
また、対応状態確認部907は、利用者リスト924内に記録された、上記状態情報に対応する記録情報(U,akey[U,1],akey[U,2],i)を検索する。
ここで、利用者リスト924に、対応する記録情報(U,akey[U,1],akey[U,2],i)が予め保存されていない場合は、鍵交換処理のセッションを切断し、鍵交換処理を中止するものとする。
ここで、状態消去部913が、状態情報(U,sid,key,tkey)を消去する処理を行う(ステップD16)。
これにより、利用者用鍵交換装置800およびサーバ用鍵交換装置900間における鍵交換が成立する。
601、801 鍵交換開始命令部
603、803 第一メッセージ生成部
604、705、804、905 状態保存部
605、805 第一メッセージ送信部
606 対応状態確認部
607 認証子検証部
608、703、903 セッション番号生成部
609 検証鍵検証部
610、810 パスワード入力部
611、811 無パスワード認証子生成部
612、812 パスワード認証子生成部
613、813 パスワード認証子隠蔽部
614 乱数源更新部
615、702、815、902 鍵生成部
616、713、816、913 状態消去部
617、817 第三メッセージ送信部
618、712、818、912 鍵出力部
700、900 サーバ用鍵交換装置
701 制限回数確認部
704 認証子生成部
706、906 第二メッセージ送信部
707、907 対応状態確認部
708、908 無パスワード認証子検証部
709、909 パスワード認証子復号部
710、910 パスワード認証子検証部
711、911 不正接続回数加算部
914 一時鍵生成部
Claims (10)
- 接続されたユーザ装置およびサーバ装置間でメッセージ情報の相互通信を行うことにより鍵交換を行う鍵交換システムであって、
前記ユーザ装置は、
外部から入力されたパスワードを取得し保持するパスワード取得部と、
予め設定されたマスター鍵に基づき第1の秘密鍵を生成すると共に、前記入力されたパスワードに基づき第2の秘密鍵を生成する秘密鍵生成部と、
前記第1の秘密鍵に基づき認証判定用の第1の認証子を生成すると共に、前記マスター鍵および第2の秘密鍵に基づき前記認証判定用の第2の認証子を生成する認証子生成部と、
前記第1および第2の認証子を含むメッセージ情報を生成するメッセージ情報設定部と、
予め設定されたサーバ装置からメッセージ情報が送り込まれた場合に、当該メッセージ情報に含まれる第1の認証子に基づく認証判定を行う第1の認証判定部と、前記第1の認証子に基づく認証判定で認証がなされた場合に前記パスワードおよび第2の認証子に基づく認証判定を行う第2の認証判定部と、
前記第2の認証判定部による認証判定で認証がなされた場合に前記メッセージ情報に基づき交換鍵を生成し当該交換鍵の出力を行うユーザ側交換鍵生成部とを備え、
前記サーバ装置は、
予めユーザ装置により登録された第1および第2の秘密鍵を保持する秘密鍵保持部と、
前記ユーザ装置からメッセージ情報が送り込まれた場合に前記第1の秘密鍵に基づき前記第1の認証子の生成を行うと共に当該第1の認証子に基づき前記メッセージ情報の認証判定を行う第1の認証判定部と、
前記第1の認証判定部による認証判定で認証がなされた場合に前記第2の秘密鍵に基づき前記第2の認証子の生成を行うと共に当該第2の認証子に基づき前記メッセージ情報の認証判定を行う第2の認証判定部と、
前記ユーザ装置からのメッセージ情報に含まれるランダム数に基づき前記ユーザ装置で生成された交換鍵と共通の交換鍵を生成すると共に、前記第2の認証判定部による認証判定で認証がなされた場合に前記生成した交換鍵を出力するサーバ側交換鍵生成部とを備えたことを特徴とした鍵交換システム。 - 請求項1に記載の鍵交換システムにおいて、
前記ユーザ装置は、予め設定されたランダム数に基づき前記第2の認証子の暗号化処理を行うことにより暗号認証子を生成する認証子暗号処理部を備え、
前記サーバ装置は、前記メッセージ情報に含まれた前記暗号認証子の復号処理を行うことにより前記第2の認証子を復元する認証子復号処理部を備えたことを特徴とする鍵交換システム。 - 請求項2に記載の鍵交換システムにおいて、
前記ユーザ装置の認証子暗号処理部は、前記サーバ装置から送り込まれたメッセージ情報に公開鍵が含まれている場合に、前記公開鍵を利用した公開鍵暗号方式により前記第2の認証子を暗号化する公開鍵暗号機能を備えたことを特徴とした鍵交換システム。 - 請求項2に記載の鍵交換システムにおいて、
前記ユーザ装置の認証子暗号処理部は、前記メッセージ情報に基づき一時暗号鍵情報を生成すると共に、当該一時暗号鍵情報を利用した対称鍵暗号方式により前記第2の認証子の暗号化を行う対称鍵暗号機能を有することを特徴とした鍵交換システム。 - 請求項2に記載の鍵交換システムにおいて、
前記サーバ装置の認証子復号処理部は、前記サーバ装置内に予め設定された公開鍵を利用した公開鍵暗号方式により前記第2の認証子を復号化する公開鍵復号機能を備えたことを特徴とした鍵交換システム。 - 請求項2に記載の鍵交換システムにおいて、
前記サーバ装置の認証子復号処理部は、前記メッセージ情報に基づき一時復号鍵情報を生成すると共に、当該一時復号鍵情報を利用した対称鍵暗号方式により前記第2の認証子の復号化を行う対称鍵復号機能を有することを特徴とした鍵交換システム。 - 請求項1に記載の鍵交換システムにおいて、
前記ユーザ装置に対して着脱自在に接続される可搬機能装置を備えると共に、前記ユーザ装置内の前記パスワード取得部と前記認証子生成部に代えて、当該パスワード取得部と前記認証子生成部を一体化し前記可搬機能装置内に設けたことを特徴とする鍵交換システム。 - 請求項1に記載の鍵交換システムにおいて、
前記サーバ装置は、前記第2の認証判定部による認証判定で一定の回数以上認証がなされなかった場合、前記認証判定の要求元に対する認証判定を抑制するパスワード認証回数制限部を備えたことを特徴とする鍵交換システム。 - 接続されたユーザ装置およびサーバ装置間でメッセージ情報の相互通信を行うことにより鍵交換を行う鍵交換方法であって、
予め設定されたマスター鍵に基づき第1の秘密鍵を生成すると共に、外部から入力されたパスワードに基づき第2の秘密鍵を生成したユーザ装置が、前記サーバ装置からメッセージ情報が送り込まれた場合に、前記第1の秘密鍵に基づき前記第1の認証子の生成を行うと共に当該第1の認証子に基づき前記メッセージ情報の認証判定を行い、前記第1の認証子に基づく認証判定で認証がなされた場合に、前記第2の秘密鍵に基づき前記第2の認証子の生成を行うと共に当該第2の認証子に基づき前記メッセージ情報の認証判定を行い、前記第2の認証子に基づく認証判定で認証がなされた場合に前記メッセージ情報に基づき交換鍵を生成すると共に、前記サーバ装置に対してメッセージ情報の送信を行い、
次いで、前記ユーザ装置からメッセージ情報が送り込まれた場合に、前記サーバ装置が、予めユーザ装置により登録された前記第1の秘密鍵に基づき前記第1の認証子の生成を行い、前記第1の認証子に基づき前記メッセージ情報の認証判定を行い、前記第1の認証子に基づく認証判定で認証がなされた場合に、予め登録された前記第2の秘密鍵に基づき前記第2の認証子の生成を行うと共に当該第2の認証子に基づき前記メッセージ情報の認証判定を行い、前記第2の認証子に基づく認証判定で認証がなされた場合に前記メッセージ情報に基づき前記ユーザ装置で生成された交換鍵と共通の交換鍵を生成することを特徴とした鍵交換方法。 - 接続されたユーザ装置およびサーバ装置間でメッセージ情報の相互通信を行うことにより鍵交換を行う鍵交換方法であって、
前記ユーザ装置は、予め設定されたマスター鍵に基づき第1の秘密鍵を生成すると共に、外部から入力されたパスワードに基づき第2の秘密鍵を生成し、前記第1および第2の秘密鍵を前記サーバ装置に送信し、
次いで、前記サーバ装置が、前記第1および第2の秘密鍵を登録し、前記ユーザ装置から鍵交換の要求がメッセージ情報として送り込まれた場合に、前記第1の秘密鍵に基づき前記第1の認証子の生成を行い、前記第1の認証子に基づき前記メッセージ情報の認証判定を行い、前記第1の認証子に基づく認証判定で認証がなされた場合に、前記第2の秘密鍵に基づき前記第2の認証子の生成を行うと共に当該第2の認証子に基づき前記メッセージ情報の認証判定を行い、前記第2の認証子に基づく認証判定で認証がなされた場合に前記メッセージ情報に基づき交換鍵を生成すると共に、前記ユーザ装置に対してメッセージ情報の送信を行い、
次に、前記ユーザ装置が、前記サーバ装置からメッセージ情報が送り込まれた場合に、前記生成した第1の秘密鍵に基づき前記第1の認証子の生成を行うと共に、当該第1の認証子に基づき前記メッセージ情報の認証判定を行い、前記第1の認証子に基づく認証判定で認証がなされた場合に、前記生成した第2の秘密鍵に基づき前記第2の認証子の生成を行うと共に当該第2の認証子に基づき前記メッセージ情報の認証判定を行い、前記第2の認証子に基づく認証判定で認証がなされた場合に前記メッセージ情報に基づき前記サーバ装置で生成された交換鍵と共通の交換鍵を生成することを特徴とした鍵交換方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009264324A JP5446768B2 (ja) | 2009-11-19 | 2009-11-19 | 鍵交換システム、鍵交換方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009264324A JP5446768B2 (ja) | 2009-11-19 | 2009-11-19 | 鍵交換システム、鍵交換方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011109544A JP2011109544A (ja) | 2011-06-02 |
JP5446768B2 true JP5446768B2 (ja) | 2014-03-19 |
Family
ID=44232521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009264324A Active JP5446768B2 (ja) | 2009-11-19 | 2009-11-19 | 鍵交換システム、鍵交換方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5446768B2 (ja) |
-
2009
- 2009-11-19 JP JP2009264324A patent/JP5446768B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011109544A (ja) | 2011-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9491174B2 (en) | System and method for authenticating a user | |
KR100979576B1 (ko) | 새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체 | |
US8589693B2 (en) | Method for two step digital signature | |
US20060195402A1 (en) | Secure data transmission using undiscoverable or black data | |
CN113691502B (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
US8369521B2 (en) | Smart card based encryption key and password generation and management | |
CN101800738B (zh) | 一种移动设备安全访问与存储内网数据的实现系统及方法 | |
CN111030814A (zh) | 秘钥协商方法及装置 | |
CN110611670A (zh) | 一种api请求的加密方法及装置 | |
CN111740995B (zh) | 一种授权认证方法及相关装置 | |
CN113472793A (zh) | 一种基于硬件密码设备的个人数据保护系统 | |
WO2022135391A1 (zh) | 身份鉴别方法、装置、存储介质、程序、及程序产品 | |
CN115473655A (zh) | 接入网络的终端认证方法、装置及存储介质 | |
US20130166911A1 (en) | Implementation process for the use of cryptographic data of a user stored in a data base | |
US20060053288A1 (en) | Interface method and device for the on-line exchange of content data in a secure manner | |
CN114760026A (zh) | 一种身份鉴别方法和装置 | |
CN109412799B (zh) | 一种生成本地密钥的系统及其方法 | |
JP3690237B2 (ja) | 認証方法、記録媒体、認証システム、端末装置、及び認証用記録媒体作成装置 | |
KR101347821B1 (ko) | 디바이스 인증 방법 | |
JP5446768B2 (ja) | 鍵交換システム、鍵交換方法 | |
JP2004274134A (ja) | 通信方法並びにこの通信方法を用いた通信システム、サーバおよびクライアント | |
CN114760034A (zh) | 一种身份鉴别方法和装置 | |
CN114760040A (zh) | 一种身份鉴别方法和装置 | |
JP5354656B2 (ja) | 暗号通信システム、暗号通信方法、送信装置および受信装置 | |
JP2005176231A (ja) | 認証システムおよび方法、ならびに、証明装置および検証装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121011 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131127 |
|
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: 20131203 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131216 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5446768 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |