JPH09330298A - パスワード登録方法、認証方法、パスワード更新方法、パスワード登録システム、認証システムおよびパスワード更新システム - Google Patents
パスワード登録方法、認証方法、パスワード更新方法、パスワード登録システム、認証システムおよびパスワード更新システムInfo
- Publication number
- JPH09330298A JPH09330298A JP8152578A JP15257896A JPH09330298A JP H09330298 A JPH09330298 A JP H09330298A JP 8152578 A JP8152578 A JP 8152578A JP 15257896 A JP15257896 A JP 15257896A JP H09330298 A JPH09330298 A JP H09330298A
- Authority
- JP
- Japan
- Prior art keywords
- password
- processing device
- information
- registration
- input
- 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.)
- Pending
Links
Abstract
(57)【要約】
【課題】 認証に使用するパスワードの個数を利用者側
で変更でき、かつ第三者による盗聴に対して安全な認証
を行うことが困難であった。 【解決手段】 ユーザはクライアント15の認証要求部
19を利用して、パスワードを1つ又は2つ用いてサー
バ27に認証してもらう。この時、パスワードは暗号機
能を利用して安全にサーバ27に転送される。同時に、
クライアント15はサーバ27から受信した複数の乱数
の内、認証に用いるパスワードの個数に対応した乱数を
選択してサーバ27に対して送信する。サーバ27では
認証部30において受信した乱数からパスワードをいく
つ用いた認証であるかを確認し、暗号化パスワードを復
号化し、得られたパスワードに一方向性関数を適用し、
登録してあるハッシュ化パスワードと比較する。一致す
れば認証が完了する。
で変更でき、かつ第三者による盗聴に対して安全な認証
を行うことが困難であった。 【解決手段】 ユーザはクライアント15の認証要求部
19を利用して、パスワードを1つ又は2つ用いてサー
バ27に認証してもらう。この時、パスワードは暗号機
能を利用して安全にサーバ27に転送される。同時に、
クライアント15はサーバ27から受信した複数の乱数
の内、認証に用いるパスワードの個数に対応した乱数を
選択してサーバ27に対して送信する。サーバ27では
認証部30において受信した乱数からパスワードをいく
つ用いた認証であるかを確認し、暗号化パスワードを復
号化し、得られたパスワードに一方向性関数を適用し、
登録してあるハッシュ化パスワードと比較する。一致す
れば認証が完了する。
Description
【0001】
【発明の属する技術分野】この発明は、第1処理装置に
対して第2処理装置がアクセスすることの妥当性を判断
する認証システムに関するものであり、例えば通信ネッ
トワークで結ばれたクライアント・サーバ間のパスワー
ドを用いた認証システムとして用いられるものである。
以降、クライアントサーバ間での認証に適用した場合を
例に説明する。
対して第2処理装置がアクセスすることの妥当性を判断
する認証システムに関するものであり、例えば通信ネッ
トワークで結ばれたクライアント・サーバ間のパスワー
ドを用いた認証システムとして用いられるものである。
以降、クライアントサーバ間での認証に適用した場合を
例に説明する。
【0002】
【従来の技術】従来技術として、Internet Engineering
Task Force(IETF)のPoint-to-PointProtocol Working
Groupによって提示されている2つの認証プロトコルを
以下に示す。1つは、Password Authentication Protoc
ol(以下、PAPと記す)という従来のクライアント−サー
バ間認証方法で、UNIXTM等で採用されている簡単な認証
方法である。もうひとつは、Password Handshake Authe
ntication Protocol(以下、CHAPと記す)という従来の一
般的なクライアント−サーバ間での認証方法である。
Task Force(IETF)のPoint-to-PointProtocol Working
Groupによって提示されている2つの認証プロトコルを
以下に示す。1つは、Password Authentication Protoc
ol(以下、PAPと記す)という従来のクライアント−サー
バ間認証方法で、UNIXTM等で採用されている簡単な認証
方法である。もうひとつは、Password Handshake Authe
ntication Protocol(以下、CHAPと記す)という従来の一
般的なクライアント−サーバ間での認証方法である。
【0003】図17は「Brian Lloyd and William Simp
son.PPP authentication protocols.RFC 1334,October
1992」に記されるPAPの概要を示す図である。次いで、
図18は同じ文献に記されるCHAPの概要を示す図であ
る。
son.PPP authentication protocols.RFC 1334,October
1992」に記されるPAPの概要を示す図である。次いで、
図18は同じ文献に記されるCHAPの概要を示す図であ
る。
【0004】さらに、図19は、特開平2−16244
3号公報に記載されている従来の利用者確認方式を示す
フローチャートである。この利用者確認方式は、複数の
パスワードを用いて利用者の確認を行うものである。
3号公報に記載されている従来の利用者確認方式を示す
フローチャートである。この利用者確認方式は、複数の
パスワードを用いて利用者の確認を行うものである。
【0005】<従来技術の動作の説明> [利用する暗号化表記]以降、本明細書では暗号関連の
表現に関して以下の表記を使用する。 [data]key ; key を鍵として dataを秘密鍵暗号で暗号
化する。 Kx+[data] ; 公開鍵Kx+で dataを公開鍵暗号で暗号化
する。 Kx−[data] ;秘密鍵Kx−で dataを公開鍵暗号で復号化
する。 h(data) ; dataを一方向性ハッシュ関数にかける。 A@B; AとBの排他的論理和(xor)をとる。 A, B; “AとBの連結”
表現に関して以下の表記を使用する。 [data]key ; key を鍵として dataを秘密鍵暗号で暗号
化する。 Kx+[data] ; 公開鍵Kx+で dataを公開鍵暗号で暗号化
する。 Kx−[data] ;秘密鍵Kx−で dataを公開鍵暗号で復号化
する。 h(data) ; dataを一方向性ハッシュ関数にかける。 A@B; AとBの排他的論理和(xor)をとる。 A, B; “AとBの連結”
【0006】[PAPの説明]図17を用いてPAPの動作原
理を説明する。PAPでは、ユーザは安全な手段(オフラ
イン)で、自分のパスワード(passwd)をサーバに登録
してもらう。図17における1は認証を要求するクライ
アントである。ユーザはクライアント1を介してサーバ
と通信し、認証してもらう。
理を説明する。PAPでは、ユーザは安全な手段(オフラ
イン)で、自分のパスワード(passwd)をサーバに登録
してもらう。図17における1は認証を要求するクライ
アントである。ユーザはクライアント1を介してサーバ
と通信し、認証してもらう。
【0007】2は、ユーザのパスワードを登録・保持す
るパスワードファイル3と、パスワードファイルから特
定のユーザのパスワード情報を検索するパスワードファ
イル検索部4と、クライアントから受信したパスワード
を暗号化する暗号化部5と、暗号化部5の出力とパスワ
ードファイル検索部4の検索結果を比較する比較部6で
構成されるサーバである。暗号化部5は公開アルゴリズ
ムを有する。サーバ2は、各ユーザのパスワードを暗号
化部5でハッシュ関数h(・)を用いて変換したh(passwd)
をユーザのID(以下、IDcと記す)と共にパスワードフ
ァイル3に保管している。
るパスワードファイル3と、パスワードファイルから特
定のユーザのパスワード情報を検索するパスワードファ
イル検索部4と、クライアントから受信したパスワード
を暗号化する暗号化部5と、暗号化部5の出力とパスワ
ードファイル検索部4の検索結果を比較する比較部6で
構成されるサーバである。暗号化部5は公開アルゴリズ
ムを有する。サーバ2は、各ユーザのパスワードを暗号
化部5でハッシュ関数h(・)を用いて変換したh(passwd)
をユーザのID(以下、IDcと記す)と共にパスワードフ
ァイル3に保管している。
【0008】PAPにおける認証方法を詳述する。図17
において、ユーザは、自分のID(IDc)、パスワードpassw
dをクライアント1に入力すると、クライアント1は、
認証要求(以下、AuthReqと記す)、IDc、パスワードを
サーバ2へ送る。サーバ2のパスワードファイル検索部
4は、IDcをキーとしてパスワードファイル3を検索
し、クライアントの暗号化パスワードh(passwd)を見つ
ける。次に、転送されてきたpasswdを暗号化部5におい
て暗号関数h(・)に適用し、出力結果とパスワードファ
イル3から得たh(passwd)を比較部6において比較す
る。この比較の結果、値が同じならばクライアント1
(又はユーザ)を正当とみなし、正当に認証した旨“O
K”等をクライアントに送信する(値が違えば、認証し
なかった旨“NG”等を送信する)。なお、UNIXではパス
ワードファイルとしてIDcとh(passwd)を他の情報と共に
公開しているシステムがある。
において、ユーザは、自分のID(IDc)、パスワードpassw
dをクライアント1に入力すると、クライアント1は、
認証要求(以下、AuthReqと記す)、IDc、パスワードを
サーバ2へ送る。サーバ2のパスワードファイル検索部
4は、IDcをキーとしてパスワードファイル3を検索
し、クライアントの暗号化パスワードh(passwd)を見つ
ける。次に、転送されてきたpasswdを暗号化部5におい
て暗号関数h(・)に適用し、出力結果とパスワードファ
イル3から得たh(passwd)を比較部6において比較す
る。この比較の結果、値が同じならばクライアント1
(又はユーザ)を正当とみなし、正当に認証した旨“O
K”等をクライアントに送信する(値が違えば、認証し
なかった旨“NG”等を送信する)。なお、UNIXではパス
ワードファイルとしてIDcとh(passwd)を他の情報と共に
公開しているシステムがある。
【0009】[CHAPの説明]図18を用いてCHAPの動作
原理を説明する。7は、パスワードを変換する一方向性
ハッシュ関数部8で構成されるクライアントである。9
は、乱数を生成する乱数生成部10と、ユーザのパスワ
ードを登録・保持するパスワードファイル11と、パス
ワードファイル11から特定のユーザとパスワード情報
を検索するパスワードファイル検索部12と、クライア
ントから受信したパスワードを変換する一方向性ハッシ
ュ関数部13と、一方向性ハッシュ関数部13の出力と
クライアント7から受信したデータを比較する比較部1
4で構成されるサーバである。一方向性ハッシュ関数部
8,13は同一の公開アルゴリズムを有する。サーバ9
は、各クライアントのIDとそのパスワードを秘密にパス
ワードファイル11に保管している。ユーザはクライア
ント7を介してサーバ9に認証してもらう。
原理を説明する。7は、パスワードを変換する一方向性
ハッシュ関数部8で構成されるクライアントである。9
は、乱数を生成する乱数生成部10と、ユーザのパスワ
ードを登録・保持するパスワードファイル11と、パス
ワードファイル11から特定のユーザとパスワード情報
を検索するパスワードファイル検索部12と、クライア
ントから受信したパスワードを変換する一方向性ハッシ
ュ関数部13と、一方向性ハッシュ関数部13の出力と
クライアント7から受信したデータを比較する比較部1
4で構成されるサーバである。一方向性ハッシュ関数部
8,13は同一の公開アルゴリズムを有する。サーバ9
は、各クライアントのIDとそのパスワードを秘密にパス
ワードファイル11に保管している。ユーザはクライア
ント7を介してサーバ9に認証してもらう。
【0010】CHAPにおける認証方法を説明する。クライ
アント7とサーバ9でコネクションがはられると、サー
バ9の乱数生成部10は、challengeという乱数を生成
し、クライアント7に送る。クライアント7はこれを受
信すると、ユーザはIDであるIDcと、パスワードpasswd
をクライアント7に入力する。クライアント7はIDc、p
asswd、challengeを一方向性ハッシュ関数部8に入力
し、出力h(IDc,passwd,challenge)をIDcと共にサーバ
へ送信する。
アント7とサーバ9でコネクションがはられると、サー
バ9の乱数生成部10は、challengeという乱数を生成
し、クライアント7に送る。クライアント7はこれを受
信すると、ユーザはIDであるIDcと、パスワードpasswd
をクライアント7に入力する。クライアント7はIDc、p
asswd、challengeを一方向性ハッシュ関数部8に入力
し、出力h(IDc,passwd,challenge)をIDcと共にサーバ
へ送信する。
【0011】サーバ9は、受信したIDcをキーとしてパ
スワードファイル検索部12を利用することでパスワー
ドファイル11を検索し、ユーザのpasswdを見つける。
次にIDc、passwd、challengeを一方向性ハッシュ関数部
13に入力し、出力結果h■(IDc,passwd,challenge)と
受信した値を比較部14において比較する。値が一致し
ていればクライアント7(又はユーザ)はpasswdを知っ
ているとみなし、正当に認証した旨“OK等”をクライア
ント7に送信する(値が違えば、認証しなかった旨“N
G”等を送信する)。
スワードファイル検索部12を利用することでパスワー
ドファイル11を検索し、ユーザのpasswdを見つける。
次にIDc、passwd、challengeを一方向性ハッシュ関数部
13に入力し、出力結果h■(IDc,passwd,challenge)と
受信した値を比較部14において比較する。値が一致し
ていればクライアント7(又はユーザ)はpasswdを知っ
ているとみなし、正当に認証した旨“OK等”をクライア
ント7に送信する(値が違えば、認証しなかった旨“N
G”等を送信する)。
【0012】[特開平2−162443号公報の説明]
図19を用いて特開平2−162443号公報に示され
た利用者確認方法を説明する。この利用者確認方法で
は、あらかじめ復数個のパスワードをセンタに登録して
おき、ユーザから一定時間以内にパスワードの入力があ
ると、入力されたパスワードPWと登録されている復数
個のパスワードPW1〜PWaとの照合を行う(ステッ
プ206)。
図19を用いて特開平2−162443号公報に示され
た利用者確認方法を説明する。この利用者確認方法で
は、あらかじめ復数個のパスワードをセンタに登録して
おき、ユーザから一定時間以内にパスワードの入力があ
ると、入力されたパスワードPWと登録されている復数
個のパスワードPW1〜PWaとの照合を行う(ステッ
プ206)。
【0013】照合の結果、PWがPW1〜PWaのいず
れかと一致すれば、カウンタC1を1インクリメントす
る(ステップ208)。インクリメントの結果、カウン
タC1の値が一致すべきパスワード数Sに達した場合に
は、ユーザのアクセスを許可する(ステップ210)。
れかと一致すれば、カウンタC1を1インクリメントす
る(ステップ208)。インクリメントの結果、カウン
タC1の値が一致すべきパスワード数Sに達した場合に
は、ユーザのアクセスを許可する(ステップ210)。
【0014】照合の結果、PWがPW1〜PWaのいず
れかと一致しなければ、カウンタC2を1インクリメン
トする(ステップ211)。インクリメントの結果、カ
ウンタC2の値が一定数以上となった場合には、ユーザ
のアクセスを不許可としてパスワード照合を終了する
(ステップ213)。
れかと一致しなければ、カウンタC2を1インクリメン
トする(ステップ211)。インクリメントの結果、カ
ウンタC2の値が一定数以上となった場合には、ユーザ
のアクセスを不許可としてパスワード照合を終了する
(ステップ213)。
【0015】
【発明が解決しようとする課題】PAP方式に関しては、
図17に示すようにユーザのパスワードpasswdは保護さ
れずネットワーク上を転送されるので、第三者にパスワ
ードを盗聴されると、この第三者が正当なユーザに成り
すますことができる。又、パスワードファイル3が公開
されているシステムでは、ファイルにIDcとh(passwd)の
組み合わせがあるので、攻撃者はパスワードファイル上
の任意のIDcとh(passwd)に対してオフラインで辞書攻撃
を行うことができる。
図17に示すようにユーザのパスワードpasswdは保護さ
れずネットワーク上を転送されるので、第三者にパスワ
ードを盗聴されると、この第三者が正当なユーザに成り
すますことができる。又、パスワードファイル3が公開
されているシステムでは、ファイルにIDcとh(passwd)の
組み合わせがあるので、攻撃者はパスワードファイル上
の任意のIDcとh(passwd)に対してオフラインで辞書攻撃
を行うことができる。
【0016】又、クライアント1はサーバ2が正当なサ
ーバであるかどうかを確認することができない。さら
に、パスワードを更新したとしても、更新パスワード
(新しいパスワード)をサーバに転送するときに第三者
が盗聴すれば、盗聴した更新パスワードを利用できてし
まい危険である、等の問題があった。
ーバであるかどうかを確認することができない。さら
に、パスワードを更新したとしても、更新パスワード
(新しいパスワード)をサーバに転送するときに第三者
が盗聴すれば、盗聴した更新パスワードを利用できてし
まい危険である、等の問題があった。
【0017】一方CHAP方式に関しては、図18に示すよ
うに、盗聴者はIDc, challenge, h(IDc, passwd, chall
enge)を盗聴できるので、考えうるユーザのパスワードp
asswd■をIDc、challengeとともにh()に入力し、h(IDc,
passwd, challenge)と一致するまでpasswd■を変え
て、passwdを割り出すことが可能である。
うに、盗聴者はIDc, challenge, h(IDc, passwd, chall
enge)を盗聴できるので、考えうるユーザのパスワードp
asswd■をIDc、challengeとともにh()に入力し、h(IDc,
passwd, challenge)と一致するまでpasswd■を変え
て、passwdを割り出すことが可能である。
【0018】又、パスワードが一つしか利用できないの
で、この様な方法で割り出された場合はユーザの安全性
が危うくなる。さらに、サーバ9は、IDcとpasswdを秘
密に保持しなくてはならないので、クライアントが登録
状況の確認を行うこと及び、安全性を確保する上で重要
なパスワードの変更もサーバとオフラインで行わなくて
はならず不便である、等の問題があった。
で、この様な方法で割り出された場合はユーザの安全性
が危うくなる。さらに、サーバ9は、IDcとpasswdを秘
密に保持しなくてはならないので、クライアントが登録
状況の確認を行うこと及び、安全性を確保する上で重要
なパスワードの変更もサーバとオフラインで行わなくて
はならず不便である、等の問題があった。
【0019】さらに、特開平2−162443号公報に
示された利用者確認方法に関しては、複数のパスワード
を利用しているが、複数のパスワードを入力するのみ
で、暗号技術によるパスワードの保護は行っていないた
め、ユーザが入力したパスワードをセンタに送信する際
に盗聴される恐れがあり危険であるという問題があっ
た。また、ユーザは、登録した複数のパスワードを選択
的に用いることはできず、常に一定数以上のパスワード
を入力する必要があった。
示された利用者確認方法に関しては、複数のパスワード
を利用しているが、複数のパスワードを入力するのみ
で、暗号技術によるパスワードの保護は行っていないた
め、ユーザが入力したパスワードをセンタに送信する際
に盗聴される恐れがあり危険であるという問題があっ
た。また、ユーザは、登録した複数のパスワードを選択
的に用いることはできず、常に一定数以上のパスワード
を入力する必要があった。
【0020】この発明は上記のような問題点を解消する
ためになされたもので、以下のような特徴を持った方式
を得ることを目的とする。第1の目的は、パスワードの
登録に際し、パスワードが正常に登録されたか否かを利
用者が確認できるとともに、第3者によって登録したパ
スワードが解読されることを防止するパスワード登録方
法及び装置を得ることである。
ためになされたもので、以下のような特徴を持った方式
を得ることを目的とする。第1の目的は、パスワードの
登録に際し、パスワードが正常に登録されたか否かを利
用者が確認できるとともに、第3者によって登録したパ
スワードが解読されることを防止するパスワード登録方
法及び装置を得ることである。
【0021】第2の目的は、登録した複数のパスワード
の内いずれのパスワードを用いても認証でき、かつ第3
者によっていくつのパスワードを用いて認証を行ってい
るのかを解読されるのを防止する認証方法及び装置を得
ることを目的とする。
の内いずれのパスワードを用いても認証でき、かつ第3
者によっていくつのパスワードを用いて認証を行ってい
るのかを解読されるのを防止する認証方法及び装置を得
ることを目的とする。
【0022】第3の目的は、複数のパスワードを用いて
第3者による解読をより困難にするとともに、送信する
情報量を削減することができる認証方法および装置を得
ることを目的とする。
第3者による解読をより困難にするとともに、送信する
情報量を削減することができる認証方法および装置を得
ることを目的とする。
【0023】
【課題を解決するための手段】第1の発明におけるパス
ワード登録方法は、第2処理装置が第1処理装置に対し
てアクセスする際に用いるパスワードを登録するパスワ
ード登録方法であって、上記第2処理装置側の処理とし
て、上記第1処理装置に登録すべきパスワードを入力す
る入力ステップと、任意の情報を生成する任意情報生成
ステップと、上記入力されたパスワード及び上記生成さ
れた任意情報を暗号化する第1暗号化ステップと、上記
暗号化されたパスワード及び暗号化された任意情報を上
記第1処理装置に対して送信する送信ステップとを有
し、上記第1処理装置側の処理として、上記暗号化され
たパスワード及び上記暗号化された任意情報を受信する
受信ステップと、上記暗号化されたパスワード及び上記
暗号化された任意情報を復号化する復号化ステップと、
上記復号化されたパスワードを上記復号化された任意情
報を用いて暗号化する第2暗号化ステップと、上記復号
化された任意情報を用いて暗号化されたパスワードを公
開する情報公開ステップと、上記パスワードを登録する
登録ステップとを有するものである。ここで、入力ステ
ップは後述の実施の形態におけるS1に対応し、任意情
報生成ステップはS2に対応し、第1暗号化ステップは
S301及びS302に対応し、送信ステップはS4に
対応する。また、受信ステップはS5に対応し、復号化
ステップはS61及びS62に対応し、第2暗号化ステ
ップはS7に対応し、情報公開ステップはS8に対応
し、登録ステップはS9に対応する。
ワード登録方法は、第2処理装置が第1処理装置に対し
てアクセスする際に用いるパスワードを登録するパスワ
ード登録方法であって、上記第2処理装置側の処理とし
て、上記第1処理装置に登録すべきパスワードを入力す
る入力ステップと、任意の情報を生成する任意情報生成
ステップと、上記入力されたパスワード及び上記生成さ
れた任意情報を暗号化する第1暗号化ステップと、上記
暗号化されたパスワード及び暗号化された任意情報を上
記第1処理装置に対して送信する送信ステップとを有
し、上記第1処理装置側の処理として、上記暗号化され
たパスワード及び上記暗号化された任意情報を受信する
受信ステップと、上記暗号化されたパスワード及び上記
暗号化された任意情報を復号化する復号化ステップと、
上記復号化されたパスワードを上記復号化された任意情
報を用いて暗号化する第2暗号化ステップと、上記復号
化された任意情報を用いて暗号化されたパスワードを公
開する情報公開ステップと、上記パスワードを登録する
登録ステップとを有するものである。ここで、入力ステ
ップは後述の実施の形態におけるS1に対応し、任意情
報生成ステップはS2に対応し、第1暗号化ステップは
S301及びS302に対応し、送信ステップはS4に
対応する。また、受信ステップはS5に対応し、復号化
ステップはS61及びS62に対応し、第2暗号化ステ
ップはS7に対応し、情報公開ステップはS8に対応
し、登録ステップはS9に対応する。
【0024】第2の発明における認証方法は、複数の登
録パスワードが登録された第1処理装置に対して第2処
理装置がアクセスすることの妥当性を判断する認証方法
であって、上記第1処理装置が複数の任意情報を生成
し、生成した複数の任意情報を上記第2処理装置に対し
て送信する第1送信ステップと、上記第2処理装置側の
処理として、上記第1処理装置から送信された複数の任
意情報を受信する第1受信ステップと、1つ以上の入力
パスワードを入力する入力ステップと、上記受信した複
数の任意情報の中から、上記入力パスワードの数に対応
した任意情報を選択する選択ステップと、上記選択され
た任意情報及び上記入力パスワードを上記第1処理装置
に対して送信する第2送信ステップとを有し、上記第1
処理装置側の処理として、上記選択された任意情報及び
上記入力パスワードを受信する第2受信ステップと、上
記選択された任意情報に基づき、認証に使用するパスワ
ードの数を認識する認識ステップと、上記第1処理装置
に登録されている複数の登録パスワードの中から、上記
認識結果に対応した数の登録パスワードを取り出す取出
ステップと、上記取り出された登録パスワードと、上記
入力パスワードとの照合を行う照合ステップとを有する
ものである。ここで、第1送信ステップは後述の実施の
形態におけるS11及びS12に対応し、第1受信ステ
ップはS13に対応し、入力ステップはS14に対応
し、選択ステップはS16に対応し、第2送信ステップ
はS19に対応する。第2受信ステップはS20に対応
し、認識ステップはS21に対応し、取出ステップはS
22に対応し、照合ステップはS25に対応する。
録パスワードが登録された第1処理装置に対して第2処
理装置がアクセスすることの妥当性を判断する認証方法
であって、上記第1処理装置が複数の任意情報を生成
し、生成した複数の任意情報を上記第2処理装置に対し
て送信する第1送信ステップと、上記第2処理装置側の
処理として、上記第1処理装置から送信された複数の任
意情報を受信する第1受信ステップと、1つ以上の入力
パスワードを入力する入力ステップと、上記受信した複
数の任意情報の中から、上記入力パスワードの数に対応
した任意情報を選択する選択ステップと、上記選択され
た任意情報及び上記入力パスワードを上記第1処理装置
に対して送信する第2送信ステップとを有し、上記第1
処理装置側の処理として、上記選択された任意情報及び
上記入力パスワードを受信する第2受信ステップと、上
記選択された任意情報に基づき、認証に使用するパスワ
ードの数を認識する認識ステップと、上記第1処理装置
に登録されている複数の登録パスワードの中から、上記
認識結果に対応した数の登録パスワードを取り出す取出
ステップと、上記取り出された登録パスワードと、上記
入力パスワードとの照合を行う照合ステップとを有する
ものである。ここで、第1送信ステップは後述の実施の
形態におけるS11及びS12に対応し、第1受信ステ
ップはS13に対応し、入力ステップはS14に対応
し、選択ステップはS16に対応し、第2送信ステップ
はS19に対応する。第2受信ステップはS20に対応
し、認識ステップはS21に対応し、取出ステップはS
22に対応し、照合ステップはS25に対応する。
【0025】第3の発明における認証方法は、上記第2
の発明において上記第1受信ステップにおける複数の任
意情報が、乱数であることを特徴とするものである。
の発明において上記第1受信ステップにおける複数の任
意情報が、乱数であることを特徴とするものである。
【0026】第4の発明における認証方法は、上記第2
または第3の発明において、上記第2送信ステップが、
上記入力された入力パスワードの数にかかわらず、上記
入力パスワードを一定の情報量に変換して送信するもの
である。
または第3の発明において、上記第2送信ステップが、
上記入力された入力パスワードの数にかかわらず、上記
入力パスワードを一定の情報量に変換して送信するもの
である。
【0027】第5の発明における認証方法は、複数の登
録パスワードが登録された第1処理装置に対して第2処
理装置がアクセスすることの妥当性を判断する認証方法
であって、上記第2処理装置側の処理として、第1の入
力パスワード及び第2の入力パスワードを入力する入力
ステップと、上記入力された第1の入力パスワード及び
第2の入力パスワードに対し、送信用パスワード及び鍵
暗号化用パスワードを対応して指定する指定ステップ
と、上記指定された送信用パスワードを所定情報を用い
て暗号化するパスワード暗号化ステップと、上記指定さ
れた鍵暗号化用パスワードを鍵として、上記所定情報を
鍵暗号化する鍵暗号化ステップと、上記送信用パスワー
ド及び鍵暗号化用パスワードの指定結果を示す指定情報
と、上記暗号化された送信用パスワードと、上記鍵暗号
化された所定情報とを上記第1処理装置に対して送信す
る送信ステップとを有し、上記第1処理装置側の処理と
して、上記指定情報と、暗号化された送信用パスワード
と、鍵暗号化された所定情報とを受信する受信ステップ
と、上記指定情報に基づき、上記第1処理装置に登録さ
れた複数の登録パスワードの中から上記鍵暗号化用パス
ワードに対応する第1登録パスワードを選択する選択ス
テップと、上記選択された第1登録パスワードを鍵とし
て、上記鍵暗号化された所定情報を鍵復号化する鍵復号
化ステップと、上記鍵復号化された所定情報を用い、上
記暗号化された送信用パスワードを復号化するパスワー
ド復号化ステップと、上記復号化された送信用パスワー
ドと、上記第1処理装置に登録された複数の登録パスワ
ードの内の第2登録パスワードとの照合を行う照合ステ
ップとを有するものである。ここで、入力ステップは後
述の実施の形態におけるS14に対応し、指定ステップ
はS15に対応し、パスワード暗号化ステップはS18
に対応し、鍵暗号化ステップはS17に対応し、送信ス
テップはS19に対応する。受信ステップはS20に対
応し、選択ステップはS20に対応し、鍵復号化ステッ
プはS23に対応し、パスワード復号化ステップはS2
4に対応し、照合ステップはS25に対応する。
録パスワードが登録された第1処理装置に対して第2処
理装置がアクセスすることの妥当性を判断する認証方法
であって、上記第2処理装置側の処理として、第1の入
力パスワード及び第2の入力パスワードを入力する入力
ステップと、上記入力された第1の入力パスワード及び
第2の入力パスワードに対し、送信用パスワード及び鍵
暗号化用パスワードを対応して指定する指定ステップ
と、上記指定された送信用パスワードを所定情報を用い
て暗号化するパスワード暗号化ステップと、上記指定さ
れた鍵暗号化用パスワードを鍵として、上記所定情報を
鍵暗号化する鍵暗号化ステップと、上記送信用パスワー
ド及び鍵暗号化用パスワードの指定結果を示す指定情報
と、上記暗号化された送信用パスワードと、上記鍵暗号
化された所定情報とを上記第1処理装置に対して送信す
る送信ステップとを有し、上記第1処理装置側の処理と
して、上記指定情報と、暗号化された送信用パスワード
と、鍵暗号化された所定情報とを受信する受信ステップ
と、上記指定情報に基づき、上記第1処理装置に登録さ
れた複数の登録パスワードの中から上記鍵暗号化用パス
ワードに対応する第1登録パスワードを選択する選択ス
テップと、上記選択された第1登録パスワードを鍵とし
て、上記鍵暗号化された所定情報を鍵復号化する鍵復号
化ステップと、上記鍵復号化された所定情報を用い、上
記暗号化された送信用パスワードを復号化するパスワー
ド復号化ステップと、上記復号化された送信用パスワー
ドと、上記第1処理装置に登録された複数の登録パスワ
ードの内の第2登録パスワードとの照合を行う照合ステ
ップとを有するものである。ここで、入力ステップは後
述の実施の形態におけるS14に対応し、指定ステップ
はS15に対応し、パスワード暗号化ステップはS18
に対応し、鍵暗号化ステップはS17に対応し、送信ス
テップはS19に対応する。受信ステップはS20に対
応し、選択ステップはS20に対応し、鍵復号化ステッ
プはS23に対応し、パスワード復号化ステップはS2
4に対応し、照合ステップはS25に対応する。
【0028】第6の発明における認証方法は、第5の発
明にさらに上記第2処理装置側の処理として、乱数を生
成する乱数発生ステップを有し、上記パスワード暗号化
ステップが、上記指定された送信用パスワードを上記生
成された乱数を用いて暗号化するものである。
明にさらに上記第2処理装置側の処理として、乱数を生
成する乱数発生ステップを有し、上記パスワード暗号化
ステップが、上記指定された送信用パスワードを上記生
成された乱数を用いて暗号化するものである。
【0029】第7の発明におけるパスワード更新方法
は、第2処理装置が第1処理装置に対してアクセスする
際に用いる登録パスワードを更新するパスワード更新方
法であって、上記第1処理装置が複数の任意情報を生成
し、生成した複数の任意情報を上記第2処理装置に対し
て送信する第1送信ステップと、上記第2処理装置側の
処理として、上記第1処理装置から送信された複数の任
意情報を受信する第1受信ステップと、入力パスワード
及び更新パスワードを入力する入力ステップと、上記受
信した複数の任意情報の中から、上記第1処理装置に登
録された複数の登録パスワードの内更新すべき登録パス
ワードに対応した任意情報を選択する選択ステップと、
上記入力パスワードと上記更新パスワード及び上記選択
された任意情報を上記第1処理装置に対して送信する第
2送信ステップと、上記第1処理装置側の処理として、
上記入力パスワードと上記更新パスワード及び上記選択
された任意情報を受信する第2受信ステップと、上記選
択された任意情報により、上記第1処理装置に登録され
た複数の登録パスワードの中から更新すべき登録パスワ
ードを認識する認識ステップと、上記入力パスワード
と、上記第1処理装置に登録された複数の登録パスワー
ドの内所定の登録パスワードとの照合を行う照合ステッ
プと、上記照合結果に基づき、上記認識結果に対応した
登録パスワードを上記更新パスワードに更新する更新ス
テップとを有するものである。ここで、第1送信ステッ
プは後述の実施の形態におけるS31及びS32に対応
し、第1受信ステップはS33に対応し、入力ステップ
はS34に対応し、選択ステップはS35に対応し、第
2送信ステップはS36に対応する。第2受信ステップ
はS37に対応し、認識ステップはS38に対応し、照
合ステップはS39に対応し、更新ステップはS301
に対応する。
は、第2処理装置が第1処理装置に対してアクセスする
際に用いる登録パスワードを更新するパスワード更新方
法であって、上記第1処理装置が複数の任意情報を生成
し、生成した複数の任意情報を上記第2処理装置に対し
て送信する第1送信ステップと、上記第2処理装置側の
処理として、上記第1処理装置から送信された複数の任
意情報を受信する第1受信ステップと、入力パスワード
及び更新パスワードを入力する入力ステップと、上記受
信した複数の任意情報の中から、上記第1処理装置に登
録された複数の登録パスワードの内更新すべき登録パス
ワードに対応した任意情報を選択する選択ステップと、
上記入力パスワードと上記更新パスワード及び上記選択
された任意情報を上記第1処理装置に対して送信する第
2送信ステップと、上記第1処理装置側の処理として、
上記入力パスワードと上記更新パスワード及び上記選択
された任意情報を受信する第2受信ステップと、上記選
択された任意情報により、上記第1処理装置に登録され
た複数の登録パスワードの中から更新すべき登録パスワ
ードを認識する認識ステップと、上記入力パスワード
と、上記第1処理装置に登録された複数の登録パスワー
ドの内所定の登録パスワードとの照合を行う照合ステッ
プと、上記照合結果に基づき、上記認識結果に対応した
登録パスワードを上記更新パスワードに更新する更新ス
テップとを有するものである。ここで、第1送信ステッ
プは後述の実施の形態におけるS31及びS32に対応
し、第1受信ステップはS33に対応し、入力ステップ
はS34に対応し、選択ステップはS35に対応し、第
2送信ステップはS36に対応する。第2受信ステップ
はS37に対応し、認識ステップはS38に対応し、照
合ステップはS39に対応し、更新ステップはS301
に対応する。
【0030】第8の発明は、第7の発明においてさらに
上記第1処理装置に登録された登録パスワードの更新
が、上記第1処理装置に登録された複数のパスワードの
内、任意の登録パスワードについて更新可能としたもの
である。
上記第1処理装置に登録された登録パスワードの更新
が、上記第1処理装置に登録された複数のパスワードの
内、任意の登録パスワードについて更新可能としたもの
である。
【0031】第9の発明におけるパスワード登録システ
ムは、第2処理装置が第1処理装置に対してアクセスす
る際に用いるパスワードを登録するパスワード登録シス
テムであって、上記第2処理装置が、任意の情報を生成
する任意情報生成手段と、入力されたパスワード及び上
記任意情報生成手段により生成された任意情報を暗号化
する第1暗号化手段と、上記第1暗号化手段によって暗
号化されたパスワード及び任意情報を上記第1処理装置
に対して送信する送信手段とを有し、上記第1処理装置
が、上記暗号化されたパスワード及び上記暗号化された
任意情報を受信する受信手段と、上記受信手段により受
信した上記暗号化されたパスワード及び上記暗号化され
た任意情報を復号化する復号化手段と、上記復号化手段
によって復号化されたパスワードを上記復号化手段によ
って復号化された任意情報を用いて暗号化する第2暗号
化手段と、上記第2暗号化手段によって暗号化されたパ
スワードを公開する情報公開手段と、上記パスワードを
登録する登録手段とを有するものである。ここで、第1
暗号化手段は後述の実施の形態における一方向性ハッシ
ュ関数部21、暗号化関数部23、公開鍵暗号・暗号化
関数部24に対応し、復号化手段は復号化関数部34及
び公開鍵暗号・暗号化関数部33に対応し、第2暗号化
手段は暗号化関数部35に対応し、情報公開手段は公開
パスワードファイル37aに対応し、登録手段は非公開
パスワードファイル37bに対応する。
ムは、第2処理装置が第1処理装置に対してアクセスす
る際に用いるパスワードを登録するパスワード登録シス
テムであって、上記第2処理装置が、任意の情報を生成
する任意情報生成手段と、入力されたパスワード及び上
記任意情報生成手段により生成された任意情報を暗号化
する第1暗号化手段と、上記第1暗号化手段によって暗
号化されたパスワード及び任意情報を上記第1処理装置
に対して送信する送信手段とを有し、上記第1処理装置
が、上記暗号化されたパスワード及び上記暗号化された
任意情報を受信する受信手段と、上記受信手段により受
信した上記暗号化されたパスワード及び上記暗号化され
た任意情報を復号化する復号化手段と、上記復号化手段
によって復号化されたパスワードを上記復号化手段によ
って復号化された任意情報を用いて暗号化する第2暗号
化手段と、上記第2暗号化手段によって暗号化されたパ
スワードを公開する情報公開手段と、上記パスワードを
登録する登録手段とを有するものである。ここで、第1
暗号化手段は後述の実施の形態における一方向性ハッシ
ュ関数部21、暗号化関数部23、公開鍵暗号・暗号化
関数部24に対応し、復号化手段は復号化関数部34及
び公開鍵暗号・暗号化関数部33に対応し、第2暗号化
手段は暗号化関数部35に対応し、情報公開手段は公開
パスワードファイル37aに対応し、登録手段は非公開
パスワードファイル37bに対応する。
【0032】第10の発明における認証システムは、複
数の登録パスワードが登録された第1処理装置に対して
第2処理装置がアクセスすることの妥当性を判断する認
証システムであって、上記第2処理装置が、上記第1処
理装置から送信された複数の任意情報を受信する第1受
信手段と、上記第1受信手段によって受信した複数の任
意情報の中から、入力された入力パスワードの数に対応
した任意情報を選択する選択手段と、上記選択手段によ
り選択された任意情報及び上記入力された入力パスワー
ドを上記第1処理装置に対して送信する送信手段とを有
し、上記第1処理装置が、上記複数の任意情報を生成す
る任意情報生成手段と、上記選択された任意情報及び上
記入力パスワードを上記第2処理装置から受信する第2
受信手段と、上記第2受信手段によって受信した上記選
択された任意情報に基づき、認証に使用するパスワード
の数を認識する認識手段と、上記第1処理装置に登録さ
れている複数の登録パスワードの中から、上記認識結果
に対応した数の登録パスワードを取り出す取出手段と、
上記取出手段によって取り出された登録パスワードと、
上記第2受信手段によって受信した入力パスワードとの
照合を行う照合手段とを有するものである。ここで、選
択手段は後述の実施の形態における選択部200に対応
し、任意情報生成手段は乱数生成部22に対応し、認識
手段は利用パスワード識別部40に対応し、取出手段は
ハッシュ化パスワード取得部38に対応し、照合手段は
比較部43に対応する。
数の登録パスワードが登録された第1処理装置に対して
第2処理装置がアクセスすることの妥当性を判断する認
証システムであって、上記第2処理装置が、上記第1処
理装置から送信された複数の任意情報を受信する第1受
信手段と、上記第1受信手段によって受信した複数の任
意情報の中から、入力された入力パスワードの数に対応
した任意情報を選択する選択手段と、上記選択手段によ
り選択された任意情報及び上記入力された入力パスワー
ドを上記第1処理装置に対して送信する送信手段とを有
し、上記第1処理装置が、上記複数の任意情報を生成す
る任意情報生成手段と、上記選択された任意情報及び上
記入力パスワードを上記第2処理装置から受信する第2
受信手段と、上記第2受信手段によって受信した上記選
択された任意情報に基づき、認証に使用するパスワード
の数を認識する認識手段と、上記第1処理装置に登録さ
れている複数の登録パスワードの中から、上記認識結果
に対応した数の登録パスワードを取り出す取出手段と、
上記取出手段によって取り出された登録パスワードと、
上記第2受信手段によって受信した入力パスワードとの
照合を行う照合手段とを有するものである。ここで、選
択手段は後述の実施の形態における選択部200に対応
し、任意情報生成手段は乱数生成部22に対応し、認識
手段は利用パスワード識別部40に対応し、取出手段は
ハッシュ化パスワード取得部38に対応し、照合手段は
比較部43に対応する。
【0033】第11における認証システムは、複数の登
録パスワードが登録された第1処理装置に対して第2処
理装置がアクセスすることの妥当性を判断する認証シス
テムであって、上記第2処理装置が、入力された第1の
入力パスワード及び第2の入力パスワードの内送信用パ
スワードとして指定された一方の入力パスワードを所定
情報を用いて暗号化するパスワード暗号化手段と、上記
入力された第1の入力パスワード及び第2の入力パスワ
ードの内、鍵暗号化用パスワードとして指定された他方
の入力パスワードを鍵として上記所定情報を鍵暗号化す
る鍵暗号化手段と、上記送信用パスワード及び鍵暗号化
用パスワードの指定結果を示す指定情報と、上記パスワ
ード暗号化手段によって暗号化された送信用パスワード
と、上記鍵暗号化手段によって鍵暗号化された所定情報
とを上記第1処理装置に対して送信する送信手段とを有
し、上記第1処理装置が、上記送信手段によって送信さ
れた上記指定情報と、上記暗号化された送信用パスワー
ドと、上記鍵暗号化された所定情報とを受信する受信手
段と、上記指定情報に基づき、上記第1処理装置に登録
された複数の登録パスワードの中から上記鍵暗号化用パ
スワードに対応する第1登録パスワードを選択する選択
手段と、上記選択手段によって選択された第1登録パス
ワードを鍵として、上記鍵暗号化された所定情報を鍵復
号化する鍵復号化手段と、上記鍵復号化手段によって鍵
復号化された所定情報を用い、上記暗号化された送信用
パスワードを復号化するパスワード復号化手段と、上記
パスワード復号化手段によって復号化された送信用パス
ワードと、上記第1処理装置に登録された複数の登録パ
スワードの内の第2登録パスワードとの照合を行う照合
手段とを有するものである。ここで、パスワード暗号化
手段は後述の実施の形態におけるxor関数部26に対応
し、鍵暗号化手段は暗号化関数部23に対応し、鍵復号
化手段は復号化関数部34に対応し、パスワード復号化
手段はxor関数部41に対応し、照合手段は比較部43
に対応する。
録パスワードが登録された第1処理装置に対して第2処
理装置がアクセスすることの妥当性を判断する認証シス
テムであって、上記第2処理装置が、入力された第1の
入力パスワード及び第2の入力パスワードの内送信用パ
スワードとして指定された一方の入力パスワードを所定
情報を用いて暗号化するパスワード暗号化手段と、上記
入力された第1の入力パスワード及び第2の入力パスワ
ードの内、鍵暗号化用パスワードとして指定された他方
の入力パスワードを鍵として上記所定情報を鍵暗号化す
る鍵暗号化手段と、上記送信用パスワード及び鍵暗号化
用パスワードの指定結果を示す指定情報と、上記パスワ
ード暗号化手段によって暗号化された送信用パスワード
と、上記鍵暗号化手段によって鍵暗号化された所定情報
とを上記第1処理装置に対して送信する送信手段とを有
し、上記第1処理装置が、上記送信手段によって送信さ
れた上記指定情報と、上記暗号化された送信用パスワー
ドと、上記鍵暗号化された所定情報とを受信する受信手
段と、上記指定情報に基づき、上記第1処理装置に登録
された複数の登録パスワードの中から上記鍵暗号化用パ
スワードに対応する第1登録パスワードを選択する選択
手段と、上記選択手段によって選択された第1登録パス
ワードを鍵として、上記鍵暗号化された所定情報を鍵復
号化する鍵復号化手段と、上記鍵復号化手段によって鍵
復号化された所定情報を用い、上記暗号化された送信用
パスワードを復号化するパスワード復号化手段と、上記
パスワード復号化手段によって復号化された送信用パス
ワードと、上記第1処理装置に登録された複数の登録パ
スワードの内の第2登録パスワードとの照合を行う照合
手段とを有するものである。ここで、パスワード暗号化
手段は後述の実施の形態におけるxor関数部26に対応
し、鍵暗号化手段は暗号化関数部23に対応し、鍵復号
化手段は復号化関数部34に対応し、パスワード復号化
手段はxor関数部41に対応し、照合手段は比較部43
に対応する。
【0034】第12の発明におけるパスワード更新シス
テムは、第2処理装置が第1処理装置に対してアクセス
する際に用いる登録パスワードを更新するパスワード更
新システムであって、上記第2処理装置が、上記第1処
理装置から送信された複数の任意情報を受信する第1受
信手段と、上記第1受信手段により受信した複数の任意
情報の中から、上記第1処理装置に登録された複数の登
録パスワードの内更新すべき登録パスワードに対応した
任意情報を選択する選択手段と、入力された入力パスワ
ード及び更新パスワードと、上記選択手段によって選択
された任意情報を上記第1処理装置に対して送信する送
信手段とを有し、上記第1処理装置が、上記複数の任意
情報を生成する任意情報生成手段と、上記送信手段によ
って送信された入力パスワード、更新パスワード及び上
記選択された任意情報を受信する第2受信手段と、上記
第2受信手段によって受信した上記選択された任意情報
により、上記第1処理装置に登録された複数の登録パス
ワードの中から更新すべき登録パスワードを認識する認
識手段と、上記第2受信手段によって受信した上記入力
パスワードと、上記第1処理装置に登録された複数の登
録パスワードの内所定の登録パスワードとの照合を行う
照合手段と、上記照合手段による照合結果に基づき、上
記認識手段による認識結果に対応した登録パスワードを
上記更新パスワードに更新する更新手段とを有するもの
である。ここで、任意情報生成手段とは後述の実施の形
態における乱数生成部39に対応し、認識手段は更新パ
スワード識別部44に対応し、照合手段は比較部43に
対応し、更新手段はハッシュ化パスワード更新部45に
対応する。
テムは、第2処理装置が第1処理装置に対してアクセス
する際に用いる登録パスワードを更新するパスワード更
新システムであって、上記第2処理装置が、上記第1処
理装置から送信された複数の任意情報を受信する第1受
信手段と、上記第1受信手段により受信した複数の任意
情報の中から、上記第1処理装置に登録された複数の登
録パスワードの内更新すべき登録パスワードに対応した
任意情報を選択する選択手段と、入力された入力パスワ
ード及び更新パスワードと、上記選択手段によって選択
された任意情報を上記第1処理装置に対して送信する送
信手段とを有し、上記第1処理装置が、上記複数の任意
情報を生成する任意情報生成手段と、上記送信手段によ
って送信された入力パスワード、更新パスワード及び上
記選択された任意情報を受信する第2受信手段と、上記
第2受信手段によって受信した上記選択された任意情報
により、上記第1処理装置に登録された複数の登録パス
ワードの中から更新すべき登録パスワードを認識する認
識手段と、上記第2受信手段によって受信した上記入力
パスワードと、上記第1処理装置に登録された複数の登
録パスワードの内所定の登録パスワードとの照合を行う
照合手段と、上記照合手段による照合結果に基づき、上
記認識手段による認識結果に対応した登録パスワードを
上記更新パスワードに更新する更新手段とを有するもの
である。ここで、任意情報生成手段とは後述の実施の形
態における乱数生成部39に対応し、認識手段は更新パ
スワード識別部44に対応し、照合手段は比較部43に
対応し、更新手段はハッシュ化パスワード更新部45に
対応する。
【0035】
実施の形態1.この実施の形態におけるクライアント・
サーバ間の認証システムは、2つのパスワードを登録
し、登録した2つのパスワードを選択的に用いて認証す
ることができるものであり、以下図1〜12を用いて説
明する。この実施の形態において利用する暗号化に関す
る表記は、上述の[従来の技術の動作の説明]における表
記と同じである。この実施の形態において用いる秘匿化
の方式としては、「Bruce Schneier, ■APPLIED CRYPTO
GRAPHY second edition■, John Wiley & Sons,Inc, 19
95」に記載されている次のような方式が該当する。公開
鍵暗号化の方式としては、例えばRSA、Elgama
l等がある。また、秘密鍵暗号化の方式としては、例え
ばDES(Data Encryption Standard)、IDEA(In
ternational Data Encryption Algorithm)等がある。
一方向性ハッシュ関数としては、例えばMD4( Messa
ge Digest 4)、MD5( MessageDigest 5)、SHA
(Secure Hash Algorithm)等がある。一方向性とは、
関数h()と変数aとが与えられると、h(a)は容易
に計算できるが、h(a)の逆関数を求める効率の良い
計算法がないことをいう。
サーバ間の認証システムは、2つのパスワードを登録
し、登録した2つのパスワードを選択的に用いて認証す
ることができるものであり、以下図1〜12を用いて説
明する。この実施の形態において利用する暗号化に関す
る表記は、上述の[従来の技術の動作の説明]における表
記と同じである。この実施の形態において用いる秘匿化
の方式としては、「Bruce Schneier, ■APPLIED CRYPTO
GRAPHY second edition■, John Wiley & Sons,Inc, 19
95」に記載されている次のような方式が該当する。公開
鍵暗号化の方式としては、例えばRSA、Elgama
l等がある。また、秘密鍵暗号化の方式としては、例え
ばDES(Data Encryption Standard)、IDEA(In
ternational Data Encryption Algorithm)等がある。
一方向性ハッシュ関数としては、例えばMD4( Messa
ge Digest 4)、MD5( MessageDigest 5)、SHA
(Secure Hash Algorithm)等がある。一方向性とは、
関数h()と変数aとが与えられると、h(a)は容易
に計算できるが、h(a)の逆関数を求める効率の良い
計算法がないことをいう。
【0036】まず、図1を用いてこの実施の形態の概要
を説明する。図1において、15は、パスワード及びパ
ラメータを入力する入力部16と、データをネットワー
クを介して送受信する通信部17と、パスワードの登録
要求をサーバに対して行うパスワード登録要求部18
と、認証の要求をサーバに対して行う認証要求部19
と、パスワードの更新要求をサーバへ行うパスワード更
新要求部20とからなるクライアントである。
を説明する。図1において、15は、パスワード及びパ
ラメータを入力する入力部16と、データをネットワー
クを介して送受信する通信部17と、パスワードの登録
要求をサーバに対して行うパスワード登録要求部18
と、認証の要求をサーバに対して行う認証要求部19
と、パスワードの更新要求をサーバへ行うパスワード更
新要求部20とからなるクライアントである。
【0037】パスワード登録要求部18は、入力された
情報を一方向性ハッシュ関数にかける一方向性ハッシュ
関数部21と、乱数を出力する乱数生成部22と、秘密
鍵暗号アルゴリズムを有する暗号化関数部23と、公開
鍵暗号アルゴリズムを有する公開鍵暗号・暗号化関数部
24とから構成される。
情報を一方向性ハッシュ関数にかける一方向性ハッシュ
関数部21と、乱数を出力する乱数生成部22と、秘密
鍵暗号アルゴリズムを有する暗号化関数部23と、公開
鍵暗号アルゴリズムを有する公開鍵暗号・暗号化関数部
24とから構成される。
【0038】また、認証要求部19は、入力された情報
を一方向性ハッシュ関数にかける一方向性ハッシュ関数
部21と、乱数を出力する乱数生成部22と、秘密鍵暗
号アルゴリズムを有する暗号化関数部23と、秘密鍵暗
号アルゴリズムを有する復号化関数部25と、排他的論
理和を計算するxor関数部26と、サーバから受信した
情報の中から必要な情報を選択する選択部200とから
構成されるRESPONSE生成部19aを有する。
を一方向性ハッシュ関数にかける一方向性ハッシュ関数
部21と、乱数を出力する乱数生成部22と、秘密鍵暗
号アルゴリズムを有する暗号化関数部23と、秘密鍵暗
号アルゴリズムを有する復号化関数部25と、排他的論
理和を計算するxor関数部26と、サーバから受信した
情報の中から必要な情報を選択する選択部200とから
構成されるRESPONSE生成部19aを有する。
【0039】パスワード更新要求部20は、入力された
情報を一方向性ハッシュ関数にかける一方向性ハッシュ
関数部21と、乱数を出力する乱数生成部22と、秘密
鍵暗号アルゴリズムを有する暗号化関数部23と、公開
鍵暗号アルゴリズムを有する復号化関数部25と、xor
関数部26と、サーバから受信した情報の中から必要な
情報を選択する選択部200とから構成されるパスワー
ド更新要求生成部20aを有する。27は、データをネ
ットワークを介して送受信する通信部28と、パスワー
ドの登録を行うパスワード登録部29と、クライアント
15(若しくはユーザ)を認証する認証部30と、パス
ワードの更新を行うパスワード更新部31から構成され
るサーバである。
情報を一方向性ハッシュ関数にかける一方向性ハッシュ
関数部21と、乱数を出力する乱数生成部22と、秘密
鍵暗号アルゴリズムを有する暗号化関数部23と、公開
鍵暗号アルゴリズムを有する復号化関数部25と、xor
関数部26と、サーバから受信した情報の中から必要な
情報を選択する選択部200とから構成されるパスワー
ド更新要求生成部20aを有する。27は、データをネ
ットワークを介して送受信する通信部28と、パスワー
ドの登録を行うパスワード登録部29と、クライアント
15(若しくはユーザ)を認証する認証部30と、パス
ワードの更新を行うパスワード更新部31から構成され
るサーバである。
【0040】パスワード登録部29は、秘密鍵暗号アル
ゴリズムを有する暗号化関数部35と、秘密鍵暗号アル
ゴリズムを有する復号化関数部34と、公開鍵暗号アル
ゴリズムを有する公開鍵暗号・復号化関数部33と、サ
ーバ27がユーザを一番最初に認証するために機能する
初回パスワード検証部32と、パスワード情報を登録・
保存するハッシュ化パスワード格納部37とから構成さ
れる。
ゴリズムを有する暗号化関数部35と、秘密鍵暗号アル
ゴリズムを有する復号化関数部34と、公開鍵暗号アル
ゴリズムを有する公開鍵暗号・復号化関数部33と、サ
ーバ27がユーザを一番最初に認証するために機能する
初回パスワード検証部32と、パスワード情報を登録・
保存するハッシュ化パスワード格納部37とから構成さ
れる。
【0041】認証部30は、後述のCHALLENGE生成部3
0aと、RESPONSE検証部30bとから構成される。CHALL
ENGE生成部30aは、ハッシュ化されたパスワードを取
り出すハッシュ化パスワード取得部38と、乱数生成部
39と、秘密鍵暗号アルゴリズムを有する暗号化関数部
35からなる。
0aと、RESPONSE検証部30bとから構成される。CHALL
ENGE生成部30aは、ハッシュ化されたパスワードを取
り出すハッシュ化パスワード取得部38と、乱数生成部
39と、秘密鍵暗号アルゴリズムを有する暗号化関数部
35からなる。
【0042】RESPONSE検証部30bは、秘密鍵暗号アル
ゴリズムを有する復号化関数部34と、排他的論理和を
計算するxor関数部41と、一方向性ハッシュ関数部4
2と、クライアント15から転送されてきたユーザのパ
スワード情報とサーバ27が保持しているパスワード情
報とを比較する比較部43と、転送されてきたパスワー
ドを識別する利用パスワード識別部40と、ハッシュ化
パスワード取得部38からなる。
ゴリズムを有する復号化関数部34と、排他的論理和を
計算するxor関数部41と、一方向性ハッシュ関数部4
2と、クライアント15から転送されてきたユーザのパ
スワード情報とサーバ27が保持しているパスワード情
報とを比較する比較部43と、転送されてきたパスワー
ドを識別する利用パスワード識別部40と、ハッシュ化
パスワード取得部38からなる。
【0043】パスワード更新部31は、CHALLENGE生成
部30aと、パスワード更新要求検証部31aとから構成
される。パスワード更新部31に設けられるCHALLENGE
生成部30aは、認証部30に設けられるCHALLENGE生成
部30aと同様の構成であるので説明は省略する。
部30aと、パスワード更新要求検証部31aとから構成
される。パスワード更新部31に設けられるCHALLENGE
生成部30aは、認証部30に設けられるCHALLENGE生成
部30aと同様の構成であるので説明は省略する。
【0044】パスワード更新要求検証部31aは、秘密
鍵暗号アルゴリズムを有する復号化関数部34と、一方
向性ハッシュ関数部42と、xor関数部41と、比較部
43と、更新するパスワードを区別する更新パスワード
識別部44と、ハッシュ化パスワード更新部45と、ハ
ッシュ化パスワード取得部38から構成されるパスワー
ド更新要求検証部31aで構成される。
鍵暗号アルゴリズムを有する復号化関数部34と、一方
向性ハッシュ関数部42と、xor関数部41と、比較部
43と、更新するパスワードを区別する更新パスワード
識別部44と、ハッシュ化パスワード更新部45と、ハ
ッシュ化パスワード取得部38から構成されるパスワー
ド更新要求検証部31aで構成される。
【0045】尚、公開鍵暗号アルゴリズムを有する公開
鍵暗号・暗号化関数部24と、公開鍵暗号・復号化関数
部33には、“公開鍵暗号”という名前がついているの
に対し、秘密鍵暗号アルゴリズムを有する暗号関数部2
3、35、秘密鍵暗号アルゴリズムを有する復号関数部
25、34に関しては、“秘密鍵暗号”という名前はつ
いていない。前者に対して後者は実施の形態において頻
繁に使用するので、煩雑性をさけるため、“秘密鍵暗
号”という名前を省略している。
鍵暗号・暗号化関数部24と、公開鍵暗号・復号化関数
部33には、“公開鍵暗号”という名前がついているの
に対し、秘密鍵暗号アルゴリズムを有する暗号関数部2
3、35、秘密鍵暗号アルゴリズムを有する復号関数部
25、34に関しては、“秘密鍵暗号”という名前はつ
いていない。前者に対して後者は実施の形態において頻
繁に使用するので、煩雑性をさけるため、“秘密鍵暗
号”という名前を省略している。
【0046】実施の形態1では、パスワードを二つ利用
したクライアント・サーバ間認証システムにおいて、パ
スワードの登録、パスワードを二つ用いた認証、パスワ
ードの更新について説明する。
したクライアント・サーバ間認証システムにおいて、パ
スワードの登録、パスワードを二つ用いた認証、パスワ
ードの更新について説明する。
【0047】[パスワードの登録]実施の形態1のクライ
アント・サーバ間認証システムにおいて、ユーザのパス
ワードをサーバ27へ登録する方法について図1〜図3
を用いて説明する。ユーザのパスワードの登録は、図1
におけるクライアント15のパスワード登録要求部18
とサーバ27のパスワード登録部29で動作する。図2
は、図1におけるパスワード登録に関係する部分を抜粋
したものである。
アント・サーバ間認証システムにおいて、ユーザのパス
ワードをサーバ27へ登録する方法について図1〜図3
を用いて説明する。ユーザのパスワードの登録は、図1
におけるクライアント15のパスワード登録要求部18
とサーバ27のパスワード登録部29で動作する。図2
は、図1におけるパスワード登録に関係する部分を抜粋
したものである。
【0048】図2において、18は、パスワードを変換
する一方向性ハッシュ関数部21と、乱数を出力する乱
数生成部22と、秘密鍵暗号アルゴリズムを有する暗号
化関数部23と、公開鍵暗号アルゴリズムを有する公開
鍵暗号・暗号化関数部24からなるパスワード登録要求
部である。
する一方向性ハッシュ関数部21と、乱数を出力する乱
数生成部22と、秘密鍵暗号アルゴリズムを有する暗号
化関数部23と、公開鍵暗号アルゴリズムを有する公開
鍵暗号・暗号化関数部24からなるパスワード登録要求
部である。
【0049】29は、パスワード登録時に最初に認証を
行う初回パスワード検証部32と、秘密鍵暗号アルゴリ
ズムを有する復号化関数部34と、公開鍵暗号アルゴリ
ズム有する公開鍵暗号・復号化関数部33と、秘密鍵暗
号アルゴリズムを有する暗号化関数部35と、パスワー
ドを登録するハッシュ化パスワード格納部37から構成
される、パスワード登録部である。
行う初回パスワード検証部32と、秘密鍵暗号アルゴリ
ズムを有する復号化関数部34と、公開鍵暗号アルゴリ
ズム有する公開鍵暗号・復号化関数部33と、秘密鍵暗
号アルゴリズムを有する暗号化関数部35と、パスワー
ドを登録するハッシュ化パスワード格納部37から構成
される、パスワード登録部である。
【0050】次に、ユーザのパスワードをサーバ27へ
登録する場合の動作について説明する。サーバ27は、
一番最初にユーザを登録するとき(例えば、アカウント
の生成の際等)に、パスワードpasswd0を一つ生成して
ユーザに秘密に渡す。このパスワードpasswd0は、ユー
ザに対してオフラインで渡される。このパスワードpass
wd0は、ユーザが自分で生成したパスワードを登録する
ときに、サーバに認証してもらうために利用するもの
で、初回パスワードと呼び、ユーザを登録する際に一度
限りしか利用されない。サーバ27は、初回パスワード
検証部32においてユーザのIDと初回パスワードの対を
保持している。
登録する場合の動作について説明する。サーバ27は、
一番最初にユーザを登録するとき(例えば、アカウント
の生成の際等)に、パスワードpasswd0を一つ生成して
ユーザに秘密に渡す。このパスワードpasswd0は、ユー
ザに対してオフラインで渡される。このパスワードpass
wd0は、ユーザが自分で生成したパスワードを登録する
ときに、サーバに認証してもらうために利用するもの
で、初回パスワードと呼び、ユーザを登録する際に一度
限りしか利用されない。サーバ27は、初回パスワード
検証部32においてユーザのIDと初回パスワードの対を
保持している。
【0051】ユーザは、図2のクライアントの入力部1
6に、登録したいパスワードpasswd1,passwd2、自分
のID(以下、IDcと記す)、初回パスワードpasswd0、登
録要求RegReqを入力する(S1)。入力したこれらのデ
ータは、パスワード登録要求部18に渡される。
6に、登録したいパスワードpasswd1,passwd2、自分
のID(以下、IDcと記す)、初回パスワードpasswd0、登
録要求RegReqを入力する(S1)。入力したこれらのデ
ータは、パスワード登録要求部18に渡される。
【0052】また、乱数生成部22は、3つの乱数rand
1、rand2、Rkeyを生成する(S2)。
1、rand2、Rkeyを生成する(S2)。
【0053】パスワード登録要求部18において、一方
向性ハッシュ関数部21はpasswd1を入力とし、h(pass
wd1)を出力する。この出力と乱数生成部22で生成し
た乱数rand1が連結されh(passwd1),rand1となる。次
に、連結した結果を暗号化関数部23は、乱数生成部2
2で生成した暗号鍵Rkeyを用いてh(passwd1),rand1を
暗号化し、[h(passwd1),rand1]Rkeyを出力する。
向性ハッシュ関数部21はpasswd1を入力とし、h(pass
wd1)を出力する。この出力と乱数生成部22で生成し
た乱数rand1が連結されh(passwd1),rand1となる。次
に、連結した結果を暗号化関数部23は、乱数生成部2
2で生成した暗号鍵Rkeyを用いてh(passwd1),rand1を
暗号化し、[h(passwd1),rand1]Rkeyを出力する。
【0054】次に、一方向性ハッシュ関数部21はpass
wd2を入力としてh(passwd2)を出力する。この出力
は、乱数生成部22で生成した乱数rand2と連結され、
h(passwd2),rand2となる。この一方向性ハッシュ関数
部21および暗号化関数部23の処理をS301とす
る。
wd2を入力としてh(passwd2)を出力する。この出力
は、乱数生成部22で生成した乱数rand2と連結され、
h(passwd2),rand2となる。この一方向性ハッシュ関数
部21および暗号化関数部23の処理をS301とす
る。
【0055】次いで、公開鍵暗号・暗号化関数部24は
Rkeyをサーバの公開鍵Ks+を用いて暗号化し、Ks+[Rkey]
を出力する(S302)。公開鍵Ks+は、秘密鍵Ks-に対
応した情報であるが、公開鍵Ks+のみがクライアントに
対して公開され、秘密鍵Ks-はサーバのみが有してい
る。以上の結果と、IDc,RegReq(登録要求),passwd0
を連結して、サーバ27へ転送する(S4)。図2にお
いては、連結部を〇で示している。
Rkeyをサーバの公開鍵Ks+を用いて暗号化し、Ks+[Rkey]
を出力する(S302)。公開鍵Ks+は、秘密鍵Ks-に対
応した情報であるが、公開鍵Ks+のみがクライアントに
対して公開され、秘密鍵Ks-はサーバのみが有してい
る。以上の結果と、IDc,RegReq(登録要求),passwd0
を連結して、サーバ27へ転送する(S4)。図2にお
いては、連結部を〇で示している。
【0056】すなわちRegReq,IDc, passwd0,[h(passwd
1),rand1]Rkey,[h(passwd2),rand2]Rkey,Ks+[Rkey]
を転送する。転送するユーザのパスワード情報h(passwd
1)、h(passwd2)は各々クライアント内で発生した乱数
rand1、rand2と連結され、h(passwd1),rand1、h(pa
sswd2),rand2となり、これらはRkeyで暗号化されるの
で、盗聴からは保護される。
1),rand1]Rkey,[h(passwd2),rand2]Rkey,Ks+[Rkey]
を転送する。転送するユーザのパスワード情報h(passwd
1)、h(passwd2)は各々クライアント内で発生した乱数
rand1、rand2と連結され、h(passwd1),rand1、h(pa
sswd2),rand2となり、これらはRkeyで暗号化されるの
で、盗聴からは保護される。
【0057】又、乱数Rkeyもサーバの公開鍵Ks+で暗号
化されるので、乱数Rkeyは、サーバ以外には漏洩するこ
とはない。したがって、乱数Rkeyが解読されることによ
り、[h(passwd1),rand1]Rkey等が順次解読されること
を防止することができる。
化されるので、乱数Rkeyは、サーバ以外には漏洩するこ
とはない。したがって、乱数Rkeyが解読されることによ
り、[h(passwd1),rand1]Rkey等が順次解読されること
を防止することができる。
【0058】サーバ27では、通信部28を介して、受
信データがパスワード登録部29に渡される(S5)。
次いで、パスワード登録部29では、IDcとpasswd0の
対が正しい組み合わせかを初回パスワード検証部32で
検査する。
信データがパスワード登録部29に渡される(S5)。
次いで、パスワード登録部29では、IDcとpasswd0の
対が正しい組み合わせかを初回パスワード検証部32で
検査する。
【0059】IDcとpasswd0の組み合わせが正しくなけ
れば、拒否の通知をクライアント15へ転送する。従っ
て、第三者はIDcで示されるユーザに成りすますことは
できない。さらに、passwd0はIDcで示されるユーザ
が、自分で生成した二つのパスワードを初めて登録する
場合のみに使用され、それ以降は利用されないので、pa
sswd0を盗聴した第三者がpasswd0を用いて、次回この
ユーザに成りすまそうとしても成功しない。
れば、拒否の通知をクライアント15へ転送する。従っ
て、第三者はIDcで示されるユーザに成りすますことは
できない。さらに、passwd0はIDcで示されるユーザ
が、自分で生成した二つのパスワードを初めて登録する
場合のみに使用され、それ以降は利用されないので、pa
sswd0を盗聴した第三者がpasswd0を用いて、次回この
ユーザに成りすまそうとしても成功しない。
【0060】IDcとpasswd0の組み合わせが正しけれ
ば、公開鍵暗号・復号化関数部33で、サーバ27の公
開鍵暗号の秘密鍵Ks-を用いて受信データのKs+[Rkey]を
復号化し、Rkeyを出力する(S62)。かかる秘密鍵Ks
-は、サーバ27だけが認識している情報である。
ば、公開鍵暗号・復号化関数部33で、サーバ27の公
開鍵暗号の秘密鍵Ks-を用いて受信データのKs+[Rkey]を
復号化し、Rkeyを出力する(S62)。かかる秘密鍵Ks
-は、サーバ27だけが認識している情報である。
【0061】復号化関数部34は、Rkeyを用いて[h(pas
swd1),rand1]Rkeyを復号化し、h(passwd1),rand1を
出力する。次に、暗号化関数部35は、h(passwd1)をR
keyで暗号化し、[h(passwd1)]Rkeyを出力する。次い
で、復号化関数部34は、Rkeyを用いて[h(passwd2),r
and2]Rkeyを復号化し、h(passwd2),rand2を出力す
る。次に、暗号化関数部35は、h(passwd2)をRkeyで
暗号化し、[h(passwd2)]Rkeyを出力する。この復号化
関数部34の処理をS61とし、暗号化関数部35の処
理をS7とする。
swd1),rand1]Rkeyを復号化し、h(passwd1),rand1を
出力する。次に、暗号化関数部35は、h(passwd1)をR
keyで暗号化し、[h(passwd1)]Rkeyを出力する。次い
で、復号化関数部34は、Rkeyを用いて[h(passwd2),r
and2]Rkeyを復号化し、h(passwd2),rand2を出力す
る。次に、暗号化関数部35は、h(passwd2)をRkeyで
暗号化し、[h(passwd2)]Rkeyを出力する。この復号化
関数部34の処理をS61とし、暗号化関数部35の処
理をS7とする。
【0062】次いで、暗号化関数部35はサーバ27の
みが秘密に保持するmasterkey36を用いてRkeyを暗号
化する。かかるmasterkey36としては、クライアント
若しくはユーザごとに異なる情報を設定することも可能
であり、その方が安全性が高くなるが、この実施の形態
においては、masterkey36として同一の情報を設定す
るものとして説明する。
みが秘密に保持するmasterkey36を用いてRkeyを暗号
化する。かかるmasterkey36としては、クライアント
若しくはユーザごとに異なる情報を設定することも可能
であり、その方が安全性が高くなるが、この実施の形態
においては、masterkey36として同一の情報を設定す
るものとして説明する。
【0063】次いで、ハッシュ化パスワード格納部37
において、図3に示すように公開鍵パスワードファイル
37aと非公開パスワードファイル37bにパスワードに
関する情報を格納する。
において、図3に示すように公開鍵パスワードファイル
37aと非公開パスワードファイル37bにパスワードに
関する情報を格納する。
【0064】すなわち、公開パスワードファイル37a
には、一行にrand1,[h(passwd1)]Rkey,rand2,[h(pas
swd1)]Rkeyを登録する。非公開パスワードファイル3
7には、IDc,rand1,[h(passwd1)]Rkey,rand2,[h(pas
swd1)]Rkey,[Rkey]masterkeyを登録する。
には、一行にrand1,[h(passwd1)]Rkey,rand2,[h(pas
swd1)]Rkeyを登録する。非公開パスワードファイル3
7には、IDc,rand1,[h(passwd1)]Rkey,rand2,[h(pas
swd1)]Rkey,[Rkey]masterkeyを登録する。
【0065】次に、サーバ27は、公開パスワードファ
イル37aをユーザに公開する(S8)。公開は、サー
バ27からクライアント15に対して公開パスワードフ
ァイル37aの情報を送信することによって公開しても
よく、また、クライアント15がサーバ27内の公開パ
スワードファイル37aにアクセスできるようにして実
現してもよい。ユーザはクライアント15の暗号化関数
部23を利用して[h(passwd1)]Rkey,[h(passwd2)]Rke
yを計算しておく。
イル37aをユーザに公開する(S8)。公開は、サー
バ27からクライアント15に対して公開パスワードフ
ァイル37aの情報を送信することによって公開しても
よく、また、クライアント15がサーバ27内の公開パ
スワードファイル37aにアクセスできるようにして実
現してもよい。ユーザはクライアント15の暗号化関数
部23を利用して[h(passwd1)]Rkey,[h(passwd2)]Rke
yを計算しておく。
【0066】クライアント15は、公開パスワードファ
イル37aの情報を受信し、rand1が先頭に登録されて
いる行を検索し、公開パスワードファイル37aにrand
1,[h(passwd1)]Rkey,rand2,[h(passwd1)]Rkey があ
ることを確かめる。この時、登録の確認は、公開ファイ
ルである公開パスワードファイル37aをオンラインで
確認することにより実現可能なので、ユーザにとっては
便利である。
イル37aの情報を受信し、rand1が先頭に登録されて
いる行を検索し、公開パスワードファイル37aにrand
1,[h(passwd1)]Rkey,rand2,[h(passwd1)]Rkey があ
ることを確かめる。この時、登録の確認は、公開ファイ
ルである公開パスワードファイル37aをオンラインで
確認することにより実現可能なので、ユーザにとっては
便利である。
【0067】ここで、公開パスワードファイル37aに
は、クライアント15を利用しているユーザを識別する
情報IDcは格納されないため、第三者に公開されること
がなく、rand1,[h(passwd1)]Rkey,rand2,[h(passwd
1)]Rkeyの値を知っているユーザのみが自分のパスワー
ドが登録されていることを知る。
は、クライアント15を利用しているユーザを識別する
情報IDcは格納されないため、第三者に公開されること
がなく、rand1,[h(passwd1)]Rkey,rand2,[h(passwd
1)]Rkeyの値を知っているユーザのみが自分のパスワー
ドが登録されていることを知る。
【0068】ユーザを識別する情報IDcは公開されない
ため、第三者は公開されている公開パスワードファイル
37aを見ても、どの情報が誰のものであるか解らない
ので、ユーザのパスワード解析に役立てられない。又、
ハッシュ化パスワードもRkeyで暗号化されているので第
三者はハッシュ化パスワード自体を知ることはできな
い。
ため、第三者は公開されている公開パスワードファイル
37aを見ても、どの情報が誰のものであるか解らない
ので、ユーザのパスワード解析に役立てられない。又、
ハッシュ化パスワードもRkeyで暗号化されているので第
三者はハッシュ化パスワード自体を知ることはできな
い。
【0069】非公開パスワードファイル37bは、サー
バ27のみが秘密に保持するものであり、IDcと暗号化
された登録情報(ハッシュ化パスワード)を登録する
(S9)。万が一、このファイルの内容が漏洩したとし
ても、ハッシュ化されたパスワードはRkeyで暗号化され
て保護されるのでユーザの安全性は保たれる。
バ27のみが秘密に保持するものであり、IDcと暗号化
された登録情報(ハッシュ化パスワード)を登録する
(S9)。万が一、このファイルの内容が漏洩したとし
ても、ハッシュ化されたパスワードはRkeyで暗号化され
て保護されるのでユーザの安全性は保たれる。
【0070】この実施の形態で述べているハッシュ化や
鍵暗号化は、広義の暗号化であるといえる。したがっ
て、一方向性ハッシュ関数部21および暗号化関数部2
3によって行われる処理S301は、passwd1,passwd
2を暗号化するための処理と考えることができる。ま
た、この実施の形態では、 passwd1,passwd2の暗号
化の処理S301と、Rkeyの暗号化の処理S302を全
て実行してからRegReq,IDc,passwd0,[h(passwd1),ran
d1]Rkey,[h(passwd2),rand2]Rkey,Ks+[Rkey]からな
る情報をサーバに対して送信する処理S4を行ってい
る。しかし、処理S301を行ってから[h(passwd1),r
and1]Rkey,[h(passwd2),rand2]Rkeyをサーバに対し
て送信する処理を行い、その後処理S302を行ってか
らKs+[Rkey]をサーバに対して送信する処理を行うこと
もできる。このような場合であっても、入力されたパス
ワー hを暗号化及び生成された乱数を暗号化するステッ
プと、暗号化されたパスワード及び暗号化された乱数を
受信するステップとを備えていることになる。
鍵暗号化は、広義の暗号化であるといえる。したがっ
て、一方向性ハッシュ関数部21および暗号化関数部2
3によって行われる処理S301は、passwd1,passwd
2を暗号化するための処理と考えることができる。ま
た、この実施の形態では、 passwd1,passwd2の暗号
化の処理S301と、Rkeyの暗号化の処理S302を全
て実行してからRegReq,IDc,passwd0,[h(passwd1),ran
d1]Rkey,[h(passwd2),rand2]Rkey,Ks+[Rkey]からな
る情報をサーバに対して送信する処理S4を行ってい
る。しかし、処理S301を行ってから[h(passwd1),r
and1]Rkey,[h(passwd2),rand2]Rkeyをサーバに対し
て送信する処理を行い、その後処理S302を行ってか
らKs+[Rkey]をサーバに対して送信する処理を行うこと
もできる。このような場合であっても、入力されたパス
ワー hを暗号化及び生成された乱数を暗号化するステッ
プと、暗号化されたパスワード及び暗号化された乱数を
受信するステップとを備えていることになる。
【0071】また、この実施の形態においてはRegReq,I
Dc,passwd0,[h(passwd1),rand1]Rkey,[h(passwd2),
rand2]Rkey,Ks+[Rkey]からなる情報をすべて受信して
から(S5)、[h(passwd1),rand1]Rkey,[h(passwd
2),rand2]Rkey及びKs+[Rkey]の復号化のための処理S
61、S62を行っているが、上記すべての情報を一括
して受信する必要はなく、まずRegReq,IDc,passwd0,Ks
+[Rkey]を受信してKs+[Rkey]の復号化(S62)を行
い、その後[h(passwd1),rand1]Rkey,[h(passwd2),ra
nd2]Rkeyを受信して[h(passwd1),rand1]Rkey,[h(pas
swd2),rand2]Rkeyの復号化(S61)を行うようにし
てもよい。この場合でも、暗号化されたパスワード及び
暗号化された乱数を受信するステップと、暗号化された
パスワード及び暗号化された乱数を復号化するステップ
とを備えていることになる。
Dc,passwd0,[h(passwd1),rand1]Rkey,[h(passwd2),
rand2]Rkey,Ks+[Rkey]からなる情報をすべて受信して
から(S5)、[h(passwd1),rand1]Rkey,[h(passwd
2),rand2]Rkey及びKs+[Rkey]の復号化のための処理S
61、S62を行っているが、上記すべての情報を一括
して受信する必要はなく、まずRegReq,IDc,passwd0,Ks
+[Rkey]を受信してKs+[Rkey]の復号化(S62)を行
い、その後[h(passwd1),rand1]Rkey,[h(passwd2),ra
nd2]Rkeyを受信して[h(passwd1),rand1]Rkey,[h(pas
swd2),rand2]Rkeyの復号化(S61)を行うようにし
てもよい。この場合でも、暗号化されたパスワード及び
暗号化された乱数を受信するステップと、暗号化された
パスワード及び暗号化された乱数を復号化するステップ
とを備えていることになる。
【0072】[認証]パスワードを二つ利用する場合の認
証方法を図1,4,5,6,7,8を用いて、説明する。認
証に関しては、図1におけるクライアント15内の認証
要求部19とサーバ27内の認証部30が動作し、図4
は、図1の認証に関係する部分を抜粋したものである。
証方法を図1,4,5,6,7,8を用いて、説明する。認
証に関しては、図1におけるクライアント15内の認証
要求部19とサーバ27内の認証部30が動作し、図4
は、図1の認証に関係する部分を抜粋したものである。
【0073】図4においてユーザは、IDcとAuthReqを入
力部16に入力すると、これらの情報は認証要求部19
に渡される。認証要求部19においてクライアント15
は、ユーザのID(IDc)と認証要求AuthReqを通信部17
を介してサーバ27に転送する。サーバ27は、通信部
28においてAuthReqを含んだデータを受信すると、認
証部30にデータを渡す。
力部16に入力すると、これらの情報は認証要求部19
に渡される。認証要求部19においてクライアント15
は、ユーザのID(IDc)と認証要求AuthReqを通信部17
を介してサーバ27に転送する。サーバ27は、通信部
28においてAuthReqを含んだデータを受信すると、認
証部30にデータを渡す。
【0074】次いで、認証部30内のCHALLENGE生成部
30aにおいて、乱数情報CHALLENGEを生成しクライアン
ト15に送信する。クライアント15は、CHALLENGEを
受信すると、ユーザは、転送するパスワードの番号n
(1 or 2)と二つのパスワードを入力部16からクラ
イアント15へ入力する。この場合は、パスワードを二
つ利用し、passwd1を転送するので、n=1とpasswd1,p
asswd2を入力する。
30aにおいて、乱数情報CHALLENGEを生成しクライアン
ト15に送信する。クライアント15は、CHALLENGEを
受信すると、ユーザは、転送するパスワードの番号n
(1 or 2)と二つのパスワードを入力部16からクラ
イアント15へ入力する。この場合は、パスワードを二
つ利用し、passwd1を転送するので、n=1とpasswd1,p
asswd2を入力する。
【0075】次に、RESPONSE生成部19aは、入力され
たパスワードとnを元に、パスワードとCHALLENGEからの
乱数情報に暗号演算を施したものをRESPONSEとしてサー
バ27へ送信する。サーバ27は、 RESPONSEを受信す
ると、認証部30内のRESPONSE検証部30bにおいて、
非公開パスワードファイル37bから、ハッシュ化され
たパスワードを取り出し、RESPONSEを復号化する。復号
化して得られた転送パスワードを検証することでクライ
アント15(ユーザ)を認証する。認証結果をANSWERと
してクライアント15に返す。以下に、CHALLENGE生成
部30a、RESPONSE生成部19a、RESPONSE検証部30b
の詳細を説明する。
たパスワードとnを元に、パスワードとCHALLENGEからの
乱数情報に暗号演算を施したものをRESPONSEとしてサー
バ27へ送信する。サーバ27は、 RESPONSEを受信す
ると、認証部30内のRESPONSE検証部30bにおいて、
非公開パスワードファイル37bから、ハッシュ化され
たパスワードを取り出し、RESPONSEを復号化する。復号
化して得られた転送パスワードを検証することでクライ
アント15(ユーザ)を認証する。認証結果をANSWERと
してクライアント15に返す。以下に、CHALLENGE生成
部30a、RESPONSE生成部19a、RESPONSE検証部30b
の詳細を説明する。
【0076】[CHALLENGE生成部30aの詳細]CHALLENGE
生成部30aについて、図5を用いてさらに詳細に説明
する。CHALLENGE生成部30aでは、ハッシュ化パスワー
ド取得部38から、非公開パスワードファイル37bに
あるIDcに該当するユーザのハッシュ化されたパスワー
ドh(passwd1),h(passwd2)を取り出す。
生成部30aについて、図5を用いてさらに詳細に説明
する。CHALLENGE生成部30aでは、ハッシュ化パスワー
ド取得部38から、非公開パスワードファイル37bに
あるIDcに該当するユーザのハッシュ化されたパスワー
ドh(passwd1),h(passwd2)を取り出す。
【0077】乱数生成部39は、乱数challenge1、cha
llenge2を生成する(S11)。challenge1は登録し
たパスワードのうちの一つを利用して認証を行う場合に
用いる乱数情報であり、challenge2は登録した二つの
パスワード両方を利用する場合に用いる乱数情報であ
る。暗号化関数部35はchallenge1をh(passwd1)で暗
号化し、[challenge1]h(passwd1)を出力する。次い
で、暗号化関数部35はchallenge2をh(passwd2)で暗
号化し、[challenge2]h(passwd2)を出力する。最後
に、二つの暗号化結果を連結し、すなわち、CHALLENGE=
[challenge1]h(passwd1),[challenge2]h(passwd2)
をクライアントに対して送信する(S12)。challeng
e1, challenge2を暗号化して送るのは、後にパスワー
ドの転送にchallenge1,challenge2が利用されるので
これらを保護することで第三者に対してパスワ [ドの推
測攻撃を困難にするためである。
llenge2を生成する(S11)。challenge1は登録し
たパスワードのうちの一つを利用して認証を行う場合に
用いる乱数情報であり、challenge2は登録した二つの
パスワード両方を利用する場合に用いる乱数情報であ
る。暗号化関数部35はchallenge1をh(passwd1)で暗
号化し、[challenge1]h(passwd1)を出力する。次い
で、暗号化関数部35はchallenge2をh(passwd2)で暗
号化し、[challenge2]h(passwd2)を出力する。最後
に、二つの暗号化結果を連結し、すなわち、CHALLENGE=
[challenge1]h(passwd1),[challenge2]h(passwd2)
をクライアントに対して送信する(S12)。challeng
e1, challenge2を暗号化して送るのは、後にパスワー
ドの転送にchallenge1,challenge2が利用されるので
これらを保護することで第三者に対してパスワ [ドの推
測攻撃を困難にするためである。
【0078】[ハッシュ化パスワード取得部38]ハッシ
ュ化パスワード取得部38の動作を図6を用いて詳細に
説明する。ハッシュ化パスワード取得部38は、非公開
パスワードファイル37bと、masterkey 36と、復号
化関数部34で構成される。
ュ化パスワード取得部38の動作を図6を用いて詳細に
説明する。ハッシュ化パスワード取得部38は、非公開
パスワードファイル37bと、masterkey 36と、復号
化関数部34で構成される。
【0079】まず、復号化関数部34は、非公開パスワ
ードファイル37bにおいてIDcで区別される登録情報の
最後に記録されている[Rkey]masterkeyを、サーバ27
が秘密に保持するmasterkey36を利用して復号化し、R
keyを出力する。次に、復号化関数部34は、登録情報
の[h(passwd1)]RkeyをRkeyにより復号化し、h(passwd
1)を出力する。次いで、復号化関数部34は、登録情
報の[h(passwd2)]RkeyをRkeyにより復号化しh(passwd
2)を出力する。ハッシュ化パスワード取得部38は、h
(passwd1)とh(passwd2)を出力する。
ードファイル37bにおいてIDcで区別される登録情報の
最後に記録されている[Rkey]masterkeyを、サーバ27
が秘密に保持するmasterkey36を利用して復号化し、R
keyを出力する。次に、復号化関数部34は、登録情報
の[h(passwd1)]RkeyをRkeyにより復号化し、h(passwd
1)を出力する。次いで、復号化関数部34は、登録情
報の[h(passwd2)]RkeyをRkeyにより復号化しh(passwd
2)を出力する。ハッシュ化パスワード取得部38は、h
(passwd1)とh(passwd2)を出力する。
【0080】[RESPONSE生成部19aの詳細]RESPONSE生
成部19aの動作を図7を用いて説明する。図4におい
てユーザからクライアント15へ入力された二つのパス
ワードpasswd1,passwd2と、転送したいパスワードの
番号n(ここではpasswd1を転送するので、n=■1■を
入力)は、入力部16を通じてRESPONSE生成部19aに
渡される(S14、S15)。RESPONSE生成部19aに
おいて、一方向性ハッシュ関数部21は、非転送パスワ
ードpasswd2を入力として、h(passwd2)を出力する。
成部19aの動作を図7を用いて説明する。図4におい
てユーザからクライアント15へ入力された二つのパス
ワードpasswd1,passwd2と、転送したいパスワードの
番号n(ここではpasswd1を転送するので、n=■1■を
入力)は、入力部16を通じてRESPONSE生成部19aに
渡される(S14、S15)。RESPONSE生成部19aに
おいて、一方向性ハッシュ関数部21は、非転送パスワ
ードpasswd2を入力として、h(passwd2)を出力する。
【0081】選択部200は、サーバ27から受信(S
13)したCHALLENGEの内、入力されたパスワードの数
に対応した情報を選択する。この場合には、2つのパス
ワードが入力されたので、選択部200はここでCHALLE
NGEの二番目のデータである[challenge2]h(passwd2)
を選択する。そして、選択した情報を復号化関数部25
に対して出力する。復号化関数部25は、受信したCHAL
LENGEの二番目のデータである[challenge]h(passwd2)
をh(passwd2)を用いて復号化し、challenge2を出力す
る。
13)したCHALLENGEの内、入力されたパスワードの数
に対応した情報を選択する。この場合には、2つのパス
ワードが入力されたので、選択部200はここでCHALLE
NGEの二番目のデータである[challenge2]h(passwd2)
を選択する。そして、選択した情報を復号化関数部25
に対して出力する。復号化関数部25は、受信したCHAL
LENGEの二番目のデータである[challenge]h(passwd2)
をh(passwd2)を用いて復号化し、challenge2を出力す
る。
【0082】次いで、乱数生成部22は、乱数nonceを
生成する。暗号化関数部23は、一方向性ハッシュ関数
部21から出力されたh(passwd2)を鍵としてnonceを鍵
暗号化し、[nonce]h(passwd2)を出力する(S17)。
又、xor関数部26は、passwd1、復号化関数部25か
ら出力されたchallenge2、乱数生成部22から出力さ
れたnonceについて排他的論理和をとり、challenge2@p
asswd1@nonceを出力する(S18)。
生成する。暗号化関数部23は、一方向性ハッシュ関数
部21から出力されたh(passwd2)を鍵としてnonceを鍵
暗号化し、[nonce]h(passwd2)を出力する(S17)。
又、xor関数部26は、passwd1、復号化関数部25か
ら出力されたchallenge2、乱数生成部22から出力さ
れたnonceについて排他的論理和をとり、challenge2@p
asswd1@nonceを出力する(S18)。
【0083】次いで、一方向性ハッシュ関数部21は、
challenge2と■1■を入力として、h(challnge2,1)
を出力する。challenge2を利用する意味は、パスワー
ドを2つ使うという意味で、“1”はそのうちpasswd1
を転送するという意味である。最後に、これら三つの出
力を連結し、RESPONSE=h(challenge2,1),challenge2
@passwd1@nonce,[nonce]h(passwd2)を出力する(S1
9)。
challenge2と■1■を入力として、h(challnge2,1)
を出力する。challenge2を利用する意味は、パスワー
ドを2つ使うという意味で、“1”はそのうちpasswd1
を転送するという意味である。最後に、これら三つの出
力を連結し、RESPONSE=h(challenge2,1),challenge2
@passwd1@nonce,[nonce]h(passwd2)を出力する(S1
9)。
【0084】RESPONSEにおいては、passwd1はnonceとc
hallenge2の排他的論理和という形で保護され転送され
るので、nonceとchallenge2が漏洩しない限りはpasswd
1は漏洩しない。また、nonceはRESPONSEにおいてh(pas
swd2)を鍵として鍵暗号化されており、challenge2もC
HALLENGEにおいてh(passwd2)により暗号化され保護さ
れている。
hallenge2の排他的論理和という形で保護され転送され
るので、nonceとchallenge2が漏洩しない限りはpasswd
1は漏洩しない。また、nonceはRESPONSEにおいてh(pas
swd2)を鍵として鍵暗号化されており、challenge2もC
HALLENGEにおいてh(passwd2)により暗号化され保護さ
れている。
【0085】さらに、認証においてパスワードを二つ利
用し、第一番目のパスワードを転送することを示すh(ch
allenge2, 1)を転送することで、第三者から転送する
パスワード情報を秘匿することができる。乱数であるch
allenge2を用いているため、h(challenge2, 1)は第
三者からはラン _ムな情報に見え、CHALLENGEにおいて
はchallenge2自体が暗号化されているのでchallenge2
を知ることができず、第三者は転送するパスワードが一
番目なのか二番目なのか、又、パスワードを一つだけ利
用しているのか二つ利用しているのかを知ることができ
なくなっている。
用し、第一番目のパスワードを転送することを示すh(ch
allenge2, 1)を転送することで、第三者から転送する
パスワード情報を秘匿することができる。乱数であるch
allenge2を用いているため、h(challenge2, 1)は第
三者からはラン _ムな情報に見え、CHALLENGEにおいて
はchallenge2自体が暗号化されているのでchallenge2
を知ることができず、第三者は転送するパスワードが一
番目なのか二番目なのか、又、パスワードを一つだけ利
用しているのか二つ利用しているのかを知ることができ
なくなっている。
【0086】[RESPONSE検証部30bの詳細]RESPONSE検
証部30bの動作を図8を用いて詳細に説明する。サー
バ27は、クライアント15からRESPONSEを受信する
(S20)。そして、利用パスワード識別部40は、ク
ライアント15から受信したRESPONSEの最初のデータが
h(challenge2,1)であることを確かめる(S21)。
(実際は、受信データの最初のデータがh(challenge1,
1), h(challenge1,2), h(challenge2,1), h(chall
enge2,2)のうちで、h(challenge2,1)になった場合
に本実施の形態に示される動作が起る)。
証部30bの動作を図8を用いて詳細に説明する。サー
バ27は、クライアント15からRESPONSEを受信する
(S20)。そして、利用パスワード識別部40は、ク
ライアント15から受信したRESPONSEの最初のデータが
h(challenge2,1)であることを確かめる(S21)。
(実際は、受信データの最初のデータがh(challenge1,
1), h(challenge1,2), h(challenge2,1), h(chall
enge2,2)のうちで、h(challenge2,1)になった場合
に本実施の形態に示される動作が起る)。
【0087】h(challenge1,1)は、1つのパスワード
を用いた認証であり、その認証に用いるパスワードはpa
sswd1であることを示し、h(challenge1,2)は、1つ
のパスワードを用いた認証であり、その認証に用いるパ
スワードはpasswd2であることを示す。h(challenge2,
1)は、2つのパスワードを用いた認証であり、転送に
用いるパスワードはpasswd1であることを示し、h(chal
lenge2,2)は、2つのパスワードを用いた認証であ
り、転送に用いるパスワードはpasswd2であることを示
す。
を用いた認証であり、その認証に用いるパスワードはpa
sswd1であることを示し、h(challenge1,2)は、1つ
のパスワードを用いた認証であり、その認証に用いるパ
スワードはpasswd2であることを示す。h(challenge2,
1)は、2つのパスワードを用いた認証であり、転送に
用いるパスワードはpasswd1であることを示し、h(chal
lenge2,2)は、2つのパスワードを用いた認証であ
り、転送に用いるパスワードはpasswd2であることを示
す。
【0088】利用パスワード識別部40は、h(challeng
e2,1)の“challenge2”により、パスワードを二つ利
用した認証であることを認識し、“1”によりpasswd1
が転送されてくることを認識する。
e2,1)の“challenge2”により、パスワードを二つ利
用した認証であることを認識し、“1”によりpasswd1
が転送されてくることを認識する。
【0089】RESPONSE検証部30b以外はこの部分の意
味を知ることはできないので、転送するパスワードに関
する情報(いくつパスワードを利用しているのか、何番
目のパスワードを転送しているのか)は第三者には漏洩
しない。従って、パスワードの解析に対する情報を与え
ないことになる。
味を知ることはできないので、転送するパスワードに関
する情報(いくつパスワードを利用しているのか、何番
目のパスワードを転送しているのか)は第三者には漏洩
しない。従って、パスワードの解析に対する情報を与え
ないことになる。
【0090】次に、ハッシュ化パスワード取得部38
は、利用パスワード識別部40の認識結果に基づき、h
(passwd1),h(passwd2)を得る(S22)。ここで、h
(passwd1),h(passwd2)を得るのは、パスワードを2つ
利用した認証であると利用パスワード識別部40が認識
したからである。次に、復号化関数部34は、ハッシュ
化パスワード取得部38から出力されたh(passwd2)を
鍵として[nonce]h(passwd2)を鍵復号化し、nonceを出
力する(S23)。次いで、xor関数部41は、CHALLEN
GE生成時に生成したchallenge2とRESPONSEからのchall
enge2@passwd1@nonceと、復号化関数部34の出力のn
onceを入力とし、passwd1を出力する(S24)。
は、利用パスワード識別部40の認識結果に基づき、h
(passwd1),h(passwd2)を得る(S22)。ここで、h
(passwd1),h(passwd2)を得るのは、パスワードを2つ
利用した認証であると利用パスワード識別部40が認識
したからである。次に、復号化関数部34は、ハッシュ
化パスワード取得部38から出力されたh(passwd2)を
鍵として[nonce]h(passwd2)を鍵復号化し、nonceを出
力する(S23)。次いで、xor関数部41は、CHALLEN
GE生成時に生成したchallenge2とRESPONSEからのchall
enge2@passwd1@nonceと、復号化関数部34の出力のn
onceを入力とし、passwd1を出力する(S24)。
【0091】一方向性ハッシュ関数部42は、xor関数
部41から出力されたpasswd1をハッシュ化し、h(pass
wd1)を出力する。比較部43は、一方向性ハッシュ関
数部42から出力されたh(passwd1)と、ハッシュ化パ
スワード取得部38から得たh(passwd1)とを比較し、
一致すればクライアント15(ユーザ)を認証したとし
て“OK”を、一致しなければ認証しなかったとして“N
G”をANSWER=OK/NGとして出力する(S25)。
部41から出力されたpasswd1をハッシュ化し、h(pass
wd1)を出力する。比較部43は、一方向性ハッシュ関
数部42から出力されたh(passwd1)と、ハッシュ化パ
スワード取得部38から得たh(passwd1)とを比較し、
一致すればクライアント15(ユーザ)を認証したとし
て“OK”を、一致しなければ認証しなかったとして“N
G”をANSWER=OK/NGとして出力する(S25)。
【0092】この実施の形態における認証では、サーバ
から送信されるCHALLENGEに含まれた乱数challenge1,
challenge2を用いることにより、認証に用いるパスワ
ードの個数を指定するため、第三者によりRESPONSEを盗
聴された場合であっても、第三者は乱数とのみ認識する
だけでパスワードの個数をいくつに指定しているのかを
知ることができない。例えば、第三者がクライアントか
ら送信される複数のRESPONSEを盗聴したとしても、それ
ら複数のRESPONSEにおいて使用されるchallenge1又はc
hallenge2は、同一の値ではないので、複数のRESPONSE
を比較しても、パスワードの個数をいくつに指定してい
るのかは分からない。
から送信されるCHALLENGEに含まれた乱数challenge1,
challenge2を用いることにより、認証に用いるパスワ
ードの個数を指定するため、第三者によりRESPONSEを盗
聴された場合であっても、第三者は乱数とのみ認識する
だけでパスワードの個数をいくつに指定しているのかを
知ることができない。例えば、第三者がクライアントか
ら送信される複数のRESPONSEを盗聴したとしても、それ
ら複数のRESPONSEにおいて使用されるchallenge1又はc
hallenge2は、同一の値ではないので、複数のRESPONSE
を比較しても、パスワードの個数をいくつに指定してい
るのかは分からない。
【0093】また、ユーザからの送信するRESPONSEにお
いてpasswd1と乱数challenge2は排他的論理和がとら
れており、乱数challenge2が一種の暗号化に用いられ
るため、第三者によるpasswd1の解読が困難となる。
いてpasswd1と乱数challenge2は排他的論理和がとら
れており、乱数challenge2が一種の暗号化に用いられ
るため、第三者によるpasswd1の解読が困難となる。
【0094】さらに、RESPONSEにおいてクライアント内
で生成した乱数nonceを用いてpasswd1と排他的論理和
をとっているため、第三者によるpasswd1の解読がさら
に困難となる。さらにまた、クライアント内で生成した
乱数nonceは、passwd2に基づく情報h(passwd2)をによ
って鍵暗号化されて送信されるため、クライアントから
ユーザに対して乱数nonceを送信する際に第三者に知ら
れるのを防止できる。
で生成した乱数nonceを用いてpasswd1と排他的論理和
をとっているため、第三者によるpasswd1の解読がさら
に困難となる。さらにまた、クライアント内で生成した
乱数nonceは、passwd2に基づく情報h(passwd2)をによ
って鍵暗号化されて送信されるため、クライアントから
ユーザに対して乱数nonceを送信する際に第三者に知ら
れるのを防止できる。
【0095】さらにまた、この実施の形態においては乱
数nonce、passwd1、passwd2を用いた認証を行ってい
るが、passwd2に基づく情報h(passwd2)は乱数nonceを
鍵暗号化するためのパスワードとして使用されるので、
実際にサーバ27に対して送信される情報量は、乱数no
nce、passwd1の情報量となる。したがって、乱数nonc
e、passwd1、passwd2を用いることで第三者による解
読を困難にしつつ、送信する情報量が抑えられている。
数nonce、passwd1、passwd2を用いた認証を行ってい
るが、passwd2に基づく情報h(passwd2)は乱数nonceを
鍵暗号化するためのパスワードとして使用されるので、
実際にサーバ27に対して送信される情報量は、乱数no
nce、passwd1の情報量となる。したがって、乱数nonc
e、passwd1、passwd2を用いることで第三者による解
読を困難にしつつ、送信する情報量が抑えられている。
【0096】また、この実施の形態においてはサーバ2
7は、クライアント15からRESPONSEとして、h(challe
nge2,1),challenge2@passwd1@nonce,[nonce]h(pass
wd2)を受信するが、これらの情報を必ずしも一度に送
信する必要はなく、まず、 h(challenge2,1)をクライ
アント15から送信してサーバ27が受信し、その後ch
allenge2@passwd1@nonce,[nonce]h(passwd2)をクラ
イアント15から送信してサーバ27が受信するように
してもよい。
7は、クライアント15からRESPONSEとして、h(challe
nge2,1),challenge2@passwd1@nonce,[nonce]h(pass
wd2)を受信するが、これらの情報を必ずしも一度に送
信する必要はなく、まず、 h(challenge2,1)をクライ
アント15から送信してサーバ27が受信し、その後ch
allenge2@passwd1@nonce,[nonce]h(passwd2)をクラ
イアント15から送信してサーバ27が受信するように
してもよい。
【0097】[パスワード更新の概要]図1,3,9,10,
11,12を用いて、パスワードの更新方法を解説す
る。この実施の形態におけるパスワードの更新は、サー
バ27において保持されている公開パスワードファイル
37a、非公開パスワードファイル37bに格納されて
いるハッシュ化されたパスワードを更新することをい
う。以下、その方法を説明する。
11,12を用いて、パスワードの更新方法を解説す
る。この実施の形態におけるパスワードの更新は、サー
バ27において保持されている公開パスワードファイル
37a、非公開パスワードファイル37bに格納されて
いるハッシュ化されたパスワードを更新することをい
う。以下、その方法を説明する。
【0098】パスワードの更新は図1において、クライ
アント15のパスワード更新要求部20とサーバ27の
パスワード更新部31により実行され、図9は、図1の
パスワードの更新に関係する部分を抜粋したものであ
る。
アント15のパスワード更新要求部20とサーバ27の
パスワード更新部31により実行され、図9は、図1の
パスワードの更新に関係する部分を抜粋したものであ
る。
【0099】ユーザがパスワードを更新を希望する場
合、ユーザは入力部16を介してクライアント15に、
IDcとパスワードの更新を示すRenewReqを入力すると、
これらはパスワード更新要求部20に渡され、さらに通
信部17はサーバ27に対して送信する。サーバ27の
パスワード更新部31は、IDcとRenewReqを通信部28
介して受信すると、CHALLENGE生成部30aにおいて図5
と同じ方法で乱数情報CHALLENGEを生成し(S31)、
クライアント15へ送信する(S32)。
合、ユーザは入力部16を介してクライアント15に、
IDcとパスワードの更新を示すRenewReqを入力すると、
これらはパスワード更新要求部20に渡され、さらに通
信部17はサーバ27に対して送信する。サーバ27の
パスワード更新部31は、IDcとRenewReqを通信部28
介して受信すると、CHALLENGE生成部30aにおいて図5
と同じ方法で乱数情報CHALLENGEを生成し(S31)、
クライアント15へ送信する(S32)。
【0100】図15においてクライアント15は、通信
部17を介してCHALLENGEを受信する(S33)と、ユ
ーザは、入力部16を通じて、二つのパスワードpasswd
1,passwd2、新しいパスワードpasswd3を入力する
(S34)。これら3つのパスワードは、パスワード更
新要求生成部20aに渡され、CHALLENGEを利用して3つ
のパスワードを暗号化したパスワード更新要求を出力す
る(S36)。通信部17はこの要求をサーバ27へ転
送する。サーバ27は通信部28を介してクライアント
15からのパスワード更新要求を受信すると、パスワー
ド更新部31に渡す。
部17を介してCHALLENGEを受信する(S33)と、ユ
ーザは、入力部16を通じて、二つのパスワードpasswd
1,passwd2、新しいパスワードpasswd3を入力する
(S34)。これら3つのパスワードは、パスワード更
新要求生成部20aに渡され、CHALLENGEを利用して3つ
のパスワードを暗号化したパスワード更新要求を出力す
る(S36)。通信部17はこの要求をサーバ27へ転
送する。サーバ27は通信部28を介してクライアント
15からのパスワード更新要求を受信すると、パスワー
ド更新部31に渡す。
【0101】パスワード更新部31内のパスワード更新
要求検証部31aは、パスワード更新要求を復号化、認
証し、正しいクライアント(又はユーザ)ならば、新し
いパスワードpasswd3を図3に示される非公開パスワー
ドファイル37bと公開パスワードファイル37aにおい
て登録・更新する。クライアント15は更新後の公開パ
スワードファイル37aを確認することで登録状況を確
かめる。パスワード更新要求検証部31aが正しくない
クライアントと判断した場合は、■NG■をクライアント
15に対して送信する。以下に、パスワード更新要求生
成部20a、パスワード更新要求検証部31aの詳細を説
明する。
要求検証部31aは、パスワード更新要求を復号化、認
証し、正しいクライアント(又はユーザ)ならば、新し
いパスワードpasswd3を図3に示される非公開パスワー
ドファイル37bと公開パスワードファイル37aにおい
て登録・更新する。クライアント15は更新後の公開パ
スワードファイル37aを確認することで登録状況を確
かめる。パスワード更新要求検証部31aが正しくない
クライアントと判断した場合は、■NG■をクライアント
15に対して送信する。以下に、パスワード更新要求生
成部20a、パスワード更新要求検証部31aの詳細を説
明する。
【0102】[パスワード更新要求生成部20a]パスワ
ード更新要求部20で機能するパスワード更新要求生成
部20aの動作を図10を用いて詳細に説明する。
ード更新要求部20で機能するパスワード更新要求生成
部20aの動作を図10を用いて詳細に説明する。
【0103】ユーザは、入力部16を通じて、二つのパ
スワードpasswd1,passwd2、新しいパスワードpasswd
3を入力する(S34)。これら3つのパスワードは、
パスワード更新要求生成部20aに渡される。一方向性
ハッシュ関数部21は、入力部16から渡されたpasswd
1をハッシュ化し Ah(passwd1)を出力する。
スワードpasswd1,passwd2、新しいパスワードpasswd
3を入力する(S34)。これら3つのパスワードは、
パスワード更新要求生成部20aに渡される。一方向性
ハッシュ関数部21は、入力部16から渡されたpasswd
1をハッシュ化し Ah(passwd1)を出力する。
【0104】選択部200は、サーバ27から受信(S
33)したCHALLENGEの内、更新対象となるパスワード
に対応した情報を選択する(S35)。この場合には、
paswwd1を更新対象とするため[challenge1]h(passwd
1)を選択する。そして、選択した情報を復号化関数部
25に対して出力する。尚、paswwd2を更新対象とする
場合には、選択部200は[challenge2]h(passwd2)を
選択して出力することになる。
33)したCHALLENGEの内、更新対象となるパスワード
に対応した情報を選択する(S35)。この場合には、
paswwd1を更新対象とするため[challenge1]h(passwd
1)を選択する。そして、選択した情報を復号化関数部
25に対して出力する。尚、paswwd2を更新対象とする
場合には、選択部200は[challenge2]h(passwd2)を
選択して出力することになる。
【0105】次に、復号化関数部25は、選択部200
から出力された[challenge1]h(passwd1)を、一方向性
ハッシュ関数部21からの出力であるh(passwd1)を鍵
として鍵復号化し、challenge1を出力する。
から出力された[challenge1]h(passwd1)を、一方向性
ハッシュ関数部21からの出力であるh(passwd1)を鍵
として鍵復号化し、challenge1を出力する。
【0106】次いで、xor関数部26は、復号化関数部
25からの出力であるchallenge1と入力部17から渡
されたpasswd1の排他的論理和をとり、challenge1@pa
sswd1を出力する。
25からの出力であるchallenge1と入力部17から渡
されたpasswd1の排他的論理和をとり、challenge1@pa
sswd1を出力する。
【0107】次いで、暗号化関数部23は、一方向性ハ
ッシュ関数部21からの出力であるh(passwd1)を鍵と
して、xor関数部26から出力されるchallenge1@passw
d1を鍵暗号化し、[challenge1@passwd1]h(passwd)を
出力する。次に、一方向性ハッシュ関数部21は、入力
部16から入力された新しいパスワードpasswd3をハッ
シュ化し、h(passwd3)を出力する。暗号化関数部23
から出力された[challenge1@passwd1]h(passwd1)
と、一方向性ハッシュ関数部21から出力されたh(pass
wd3)とは、連結され[challenge1@passwd1]h(passwd
1),h(passwd3)となる。
ッシュ関数部21からの出力であるh(passwd1)を鍵と
して、xor関数部26から出力されるchallenge1@passw
d1を鍵暗号化し、[challenge1@passwd1]h(passwd)を
出力する。次に、一方向性ハッシュ関数部21は、入力
部16から入力された新しいパスワードpasswd3をハッ
シュ化し、h(passwd3)を出力する。暗号化関数部23
から出力された[challenge1@passwd1]h(passwd1)
と、一方向性ハッシュ関数部21から出力されたh(pass
wd3)とは、連結され[challenge1@passwd1]h(passwd
1),h(passwd3)となる。
【0108】次いで、乱数生成部22は乱数nonceを生
成する。次いで、暗号化関数部23はnonceを利用して
[challenge1@passwd1]h(passwd1),h(passwd3)を暗
号化し、[[challenge1@passwd1]h(passwd1),h(passw
d3)]nonceを出力する。
成する。次いで、暗号化関数部23はnonceを利用して
[challenge1@passwd1]h(passwd1),h(passwd3)を暗
号化し、[[challenge1@passwd1]h(passwd1),h(passw
d3)]nonceを出力する。
【0109】次に、一方向性ハッシュ関数部21は、入
力部16から入力されたpasswd2をハッシュ化し、h(pa
sswd2)を出力する。また、暗号化関数部23はh(passw
d2)を用いてnonceを暗号化し、[nonce]h(passwd2)を
出力する。
力部16から入力されたpasswd2をハッシュ化し、h(pa
sswd2)を出力する。また、暗号化関数部23はh(passw
d2)を用いてnonceを暗号化し、[nonce]h(passwd2)を
出力する。
【0110】一方向性ハッシュ関数部21は、復号化関
数部25からchallenge1を入力し、h(challenge1)を
出力する。ここでh(challenge1)はpasswd1を更新する
ことを示す。最後に一方向性ハッシュ関数部21から出
力されたh(challenge1)と、暗号化関数部23から出力
された[[challenge1@passwd1]h(passwd1),h(passwd
3)]nonceと、暗号化関数部23から出力された[nonce]
h(passwd2)とを連結してパスワード更新要求としてRES
PONSEを出力する(S36)。
数部25からchallenge1を入力し、h(challenge1)を
出力する。ここでh(challenge1)はpasswd1を更新する
ことを示す。最後に一方向性ハッシュ関数部21から出
力されたh(challenge1)と、暗号化関数部23から出力
された[[challenge1@passwd1]h(passwd1),h(passwd
3)]nonceと、暗号化関数部23から出力された[nonce]
h(passwd2)とを連結してパスワード更新要求としてRES
PONSEを出力する(S36)。
【0111】パスワード更新要求RESPONSEのh(challeng
e1)は、1番めのパスワードを更新することを示すが、
第三者には一番目のパスワードを更新するのか二番目の
パスワードを更新するのかは解らない。又、更新するハ
ッシュ化パスワードh(passwd3)はnonceにより暗号化さ
れており、又、nonceもh(passwd2)により暗号化されて
いるので安全に転送される。
e1)は、1番めのパスワードを更新することを示すが、
第三者には一番目のパスワードを更新するのか二番目の
パスワードを更新するのかは解らない。又、更新するハ
ッシュ化パスワードh(passwd3)はnonceにより暗号化さ
れており、又、nonceもh(passwd2)により暗号化されて
いるので安全に転送される。
【0112】[パスワード更新要求検証部31a]パスワ
ード更新部31で機能するパスワード更新要求検証部3
1aの動作を図11を用いて詳細に説明する。サーバ2
7はクライアントからRESPONSEを受信する(S37)。
クライアント15からパスワード更新要求RESPONSEが通
信部28を介して、パスワード更新部31に渡される
と、パスワード更新要求検証部31aの更新パスワード
識別部44が、 RESPONSEの先頭のデータを見て、h(cha
llenge1)であることを確認する(S38)。(実際
は、受信データの最初のデータがh(challenge1), h(ch
allenge2)のうちで、h(challenge1)になった場合に本
実施の形態に示される動作が起る)。この実施の形態で
は、更新パスワード識別部44は、h(challenge1)によ
りpasswd1を更新することを認識する。
ード更新部31で機能するパスワード更新要求検証部3
1aの動作を図11を用いて詳細に説明する。サーバ2
7はクライアントからRESPONSEを受信する(S37)。
クライアント15からパスワード更新要求RESPONSEが通
信部28を介して、パスワード更新部31に渡される
と、パスワード更新要求検証部31aの更新パスワード
識別部44が、 RESPONSEの先頭のデータを見て、h(cha
llenge1)であることを確認する(S38)。(実際
は、受信データの最初のデータがh(challenge1), h(ch
allenge2)のうちで、h(challenge1)になった場合に本
実施の形態に示される動作が起る)。この実施の形態で
は、更新パスワード識別部44は、h(challenge1)によ
りpasswd1を更新することを認識する。
【0113】次に、図6と同じ方法で、ハッシュ化パス
ワード取得部38を利用してh(passwd1)とh(passwd2)
を取り出す。次に、復号化関数部34は、ハッシュ化パ
スワード取得部38から出力されたh(passwd2)を用い
て、パスワード更新要求RESPONSEの[nonce]h(passwd2)
を復号化し、nonceを出力する。さらに復号化関数部3
4は、nonceを用いて、パスワード更新要求RESPONSEの
[[challenge1@passwd1]h(passwd1),h(passwd3)]non
ceを復号化し[[challenge1]@passwd1]h(passwd1),h
(passwd3)を出力する。
ワード取得部38を利用してh(passwd1)とh(passwd2)
を取り出す。次に、復号化関数部34は、ハッシュ化パ
スワード取得部38から出力されたh(passwd2)を用い
て、パスワード更新要求RESPONSEの[nonce]h(passwd2)
を復号化し、nonceを出力する。さらに復号化関数部3
4は、nonceを用いて、パスワード更新要求RESPONSEの
[[challenge1@passwd1]h(passwd1),h(passwd3)]non
ceを復号化し[[challenge1]@passwd1]h(passwd1),h
(passwd3)を出力する。
【0114】次いで、復号化関数部34はハッシュ化パ
スワード取得部38から出力されたh(passwd1)を用い
て、[challenge1@passwd1]h(passwd1)を復号化し、c
hallenge1@passwd1を出力する。次いで、xor関数部4
1は、CHALLENGEを生成するときに生成したchallenge1
と復号化関数部34から出力されたchallenge1@passwd
1を入力とし排他的論理和を計算して、passwd1を出力
する。一方向性ハッシュ関数部42はこのpasswd1を入
力とし、h(passwd1)を出力する。
スワード取得部38から出力されたh(passwd1)を用い
て、[challenge1@passwd1]h(passwd1)を復号化し、c
hallenge1@passwd1を出力する。次いで、xor関数部4
1は、CHALLENGEを生成するときに生成したchallenge1
と復号化関数部34から出力されたchallenge1@passwd
1を入力とし排他的論理和を計算して、passwd1を出力
する。一方向性ハッシュ関数部42はこのpasswd1を入
力とし、h(passwd1)を出力する。
【0115】比較部43は、一方向性ハッシュ関数部4
2からの出力結果とハッシュ化パスワード取得部38か
ら得たh(passwd1)とを比較する(S39)。一致すれ
ば、クライアント15(ユーザ)を正当に認証したとし
て、ハッシュ化パスワード更新部45により、公開パス
ワードファイル37aと非公開パスワードファイル37b
の内容を図12の様に変更する(S310)。比較部4
3の結果が一致しなかったらば、■NG■を出力する。
2からの出力結果とハッシュ化パスワード取得部38か
ら得たh(passwd1)とを比較する(S39)。一致すれ
ば、クライアント15(ユーザ)を正当に認証したとし
て、ハッシュ化パスワード更新部45により、公開パス
ワードファイル37aと非公開パスワードファイル37b
の内容を図12の様に変更する(S310)。比較部4
3の結果が一致しなかったらば、■NG■を出力する。
【0116】この実施の形態における更新においては、
サーバから送信されるCHALLENGEに含まれた乱数challen
ge1,challenge2を用いることにより、更新するパス
ワードを指定するため、第三者によりRESPONSEを盗聴さ
れた場合であっても、第三者は乱数とのみ認識するだけ
で、どのパスワードを更新するのかを知ることができな
い。例えば、第三者がクライアントから送信される複数
のRESPONSEを盗聴したとしても、それら複数のRESPONSE
において使用されるchallenge1又はchallenge2は、同
一の値ではないので複数のRESPONSEを比較することによ
りどのパスワードを更新しようとしているかを知ること
はできない。
サーバから送信されるCHALLENGEに含まれた乱数challen
ge1,challenge2を用いることにより、更新するパス
ワードを指定するため、第三者によりRESPONSEを盗聴さ
れた場合であっても、第三者は乱数とのみ認識するだけ
で、どのパスワードを更新するのかを知ることができな
い。例えば、第三者がクライアントから送信される複数
のRESPONSEを盗聴したとしても、それら複数のRESPONSE
において使用されるchallenge1又はchallenge2は、同
一の値ではないので複数のRESPONSEを比較することによ
りどのパスワードを更新しようとしているかを知ること
はできない。
【0117】また、ユーザからの送信するRESPONSEにお
いて更新対象を示すpasswd1と乱数challenge1の排他
的論理和がとられ、かつh(passwd1)で暗号化され、さ
らに、乱数nonceでh(passwd3)とともに暗号化される
ため、第三者によるpasswd1の解読が困難となる。ま
た、更新後のパスワードであるpasswd3はハッシュ化さ
れ、さらに乱数nonceで暗号化されるため、第三者によ
るpasswd3の解読が困難となる。さらに、クライアント
内で生成した乱数nonceは、passwd2により暗号化され
て送信されるため、クライアントからユーザに対して乱
数nonceを送信する際に第三者に知られるのを防止でき
る。
いて更新対象を示すpasswd1と乱数challenge1の排他
的論理和がとられ、かつh(passwd1)で暗号化され、さ
らに、乱数nonceでh(passwd3)とともに暗号化される
ため、第三者によるpasswd1の解読が困難となる。ま
た、更新後のパスワードであるpasswd3はハッシュ化さ
れ、さらに乱数nonceで暗号化されるため、第三者によ
るpasswd3の解読が困難となる。さらに、クライアント
内で生成した乱数nonceは、passwd2により暗号化され
て送信されるため、クライアントからユーザに対して乱
数nonceを送信する際に第三者に知られるのを防止でき
る。
【0118】さらに、この実施の形態における認証で
は、2つのパスワードpasswd1とpasswd2の内、実際に
サーバに転送するのは何れか一方のパスワードであり、
他方のパスワードは暗号化するための秘密鍵として用い
ている。
は、2つのパスワードpasswd1とpasswd2の内、実際に
サーバに転送するのは何れか一方のパスワードであり、
他方のパスワードは暗号化するための秘密鍵として用い
ている。
【0119】尚、この実施の形態においては、CHALLENG
E、RESPONSEを構成する各情報がハッシュ化、暗号鍵を
用いた鍵暗号化、排他的論理和によって秘匿化されてい
るが、必ずしもこれらの方法に限定されるものではな
い。
E、RESPONSEを構成する各情報がハッシュ化、暗号鍵を
用いた鍵暗号化、排他的論理和によって秘匿化されてい
るが、必ずしもこれらの方法に限定されるものではな
い。
【0120】[ハッシュ化パスワード更新部45]ハッシ
ュ化パスワード更新部45の動作を図12を用いて詳細
に説明する。ハッシュ化パスワード更新部45は、上述
のように比較部43によってクライアント15(又はユ
ーザ)を正当に認証した場合に動作する。ハッシュ化パ
スワード更新部45は、暗号化関数部35と復号化関数
部34と公開鍵パスワードファイル37aと、非公開パ
スワードファイル37bで構成される。
ュ化パスワード更新部45の動作を図12を用いて詳細
に説明する。ハッシュ化パスワード更新部45は、上述
のように比較部43によってクライアント15(又はユ
ーザ)を正当に認証した場合に動作する。ハッシュ化パ
スワード更新部45は、暗号化関数部35と復号化関数
部34と公開鍵パスワードファイル37aと、非公開パ
スワードファイル37bで構成される。
【0121】まず、復号化関数部34は、非公開パスワ
ードファイル37a(更新前)内のIDcで区別されるユー
ザの登録情報において、最後に登録されている[Rkey]ma
sterkeyをmasterkey36を用いて復号化し、Rkeyを出力
する。次に、暗号化関数部35は、更新するハッシュ化
パスワードh(passwd3)をRkeyを用いて暗号化し[h(pass
wd3)]Rkeyを出力する。
ードファイル37a(更新前)内のIDcで区別されるユー
ザの登録情報において、最後に登録されている[Rkey]ma
sterkeyをmasterkey36を用いて復号化し、Rkeyを出力
する。次に、暗号化関数部35は、更新するハッシュ化
パスワードh(passwd3)をRkeyを用いて暗号化し[h(pass
wd3)]Rkeyを出力する。
【0122】ハッシュ化パスワード更新部45は、更新
パスワード識別部44により、どのパスワードを更新す
るかを知ることができる。この実施の形態においてハッ
シュ化パスワード更新部45は、passwd1を更新するこ
とを認識する。そして、ハッシュ化パスワード更新部4
5は、公開パスワードファイル37aおよび非公開パス
ワードファイル37bに既に登録されている[h(passwd
1)]Rkeyの代わりに暗号化関数部35から出力された[h
(passwd3)]Rkeyを登録する。このような手順により、
公開パスワードファイル37aと非公開パスワードファ
イル37bを図のように更新することができる(更新後
で示されている)。
パスワード識別部44により、どのパスワードを更新す
るかを知ることができる。この実施の形態においてハッ
シュ化パスワード更新部45は、passwd1を更新するこ
とを認識する。そして、ハッシュ化パスワード更新部4
5は、公開パスワードファイル37aおよび非公開パス
ワードファイル37bに既に登録されている[h(passwd
1)]Rkeyの代わりに暗号化関数部35から出力された[h
(passwd3)]Rkeyを登録する。このような手順により、
公開パスワードファイル37aと非公開パスワードファ
イル37bを図のように更新することができる(更新後
で示されている)。
【0123】この実施の形態においては、登録要求とし
てRegReqを、認証要求としてAuthReqを、更新要求とし
てRenewReqをクライアントからユーザに対して送信する
が、要求の種類を第三者に知られたくない場合には、こ
れらRegReq、AuthReq、RenewReqについても秘匿化して
もよい。また、この実施の形態における更新方法では、
一方向性ハッシュ関数を用いて秘匿化している部分があ
るが、この機能を秘密鍵暗号によっても実現することも
できる。
てRegReqを、認証要求としてAuthReqを、更新要求とし
てRenewReqをクライアントからユーザに対して送信する
が、要求の種類を第三者に知られたくない場合には、こ
れらRegReq、AuthReq、RenewReqについても秘匿化して
もよい。また、この実施の形態における更新方法では、
一方向性ハッシュ関数を用いて秘匿化している部分があ
るが、この機能を秘密鍵暗号によっても実現することも
できる。
【0124】この実施の形態においては、クライアント
とサーバでの処理について具体的に説明しているが、必
ずしもクライアント、サーバのみに適用されるものでは
ない。以降の実施の形態についても同様である。
とサーバでの処理について具体的に説明しているが、必
ずしもクライアント、サーバのみに適用されるものでは
ない。以降の実施の形態についても同様である。
【0125】この実施の形態においては、クライアント
15からサーバ27に対してh(challenge1),[[challen
ge1@passwd1]h(passwd1),h(passwd3)]nonce,[nonc
e]h(passwd2)を受信するが、これらの情報を必ずしも
一度に送信する必要はなく、まずh(challenge1)をクラ
イアント15から送信してサーバ27が受信し、その後
[[challenge1@passwd1]h(passwd1),h(passwd3)]non
ce,[nonce]h(passwd2)をクライアント15から送信し
てサーバ27が受信するようにしてもよい。
15からサーバ27に対してh(challenge1),[[challen
ge1@passwd1]h(passwd1),h(passwd3)]nonce,[nonc
e]h(passwd2)を受信するが、これらの情報を必ずしも
一度に送信する必要はなく、まずh(challenge1)をクラ
イアント15から送信してサーバ27が受信し、その後
[[challenge1@passwd1]h(passwd1),h(passwd3)]non
ce,[nonce]h(passwd2)をクライアント15から送信し
てサーバ27が受信するようにしてもよい。
【0126】実施の形態2.実施の形態1においては、
パスワードを二つ用いる認証方法について説明した。実
施の形態2では、パスワードを一つだけ利用した場合の
認証方法を記す。パスワードの登録、更新は実施の形態
1と同じである。この実施の形態における認証方法によ
り、ユーザは、サーバに登録した二つのパスワードの
内、覚えている方のパスワードを多用することができ
る。
パスワードを二つ用いる認証方法について説明した。実
施の形態2では、パスワードを一つだけ利用した場合の
認証方法を記す。パスワードの登録、更新は実施の形態
1と同じである。この実施の形態における認証方法によ
り、ユーザは、サーバに登録した二つのパスワードの
内、覚えている方のパスワードを多用することができ
る。
【0127】この認証方法は、図4において、ユーザが
クライアント15に入力する情報を、認証に利用するパ
スワード一つ(ここではpasswd1)とその番号n(passw
d1ならば1)とし、RESPONSE生成部19aの動作を図1
3に示すように、RESPONSE検証部30bの動作を図14
に示すように置き換えることで実現される。なお、RESP
ONSE生成部19a、RESPONSE検証部30bの構成は実施の
形態1と同じである。
クライアント15に入力する情報を、認証に利用するパ
スワード一つ(ここではpasswd1)とその番号n(passw
d1ならば1)とし、RESPONSE生成部19aの動作を図1
3に示すように、RESPONSE検証部30bの動作を図14
に示すように置き換えることで実現される。なお、RESP
ONSE生成部19a、RESPONSE検証部30bの構成は実施の
形態1と同じである。
【0128】[図13の詳細]実施の形態2におけるRESP
ONSE生成部19aの動作を図13を用いて説明する。図
4においてユーザによりクライアント15へ入力された
パスワード(ここではpasswd1)、転送したいパスワー
ドの番号nは(ここではpasswd1を転送するので、n=■
1■を入力)は、入力部16を通じて図13で示される
RESPONSE生成部19aに渡される。
ONSE生成部19aの動作を図13を用いて説明する。図
4においてユーザによりクライアント15へ入力された
パスワード(ここではpasswd1)、転送したいパスワー
ドの番号nは(ここではpasswd1を転送するので、n=■
1■を入力)は、入力部16を通じて図13で示される
RESPONSE生成部19aに渡される。
【0129】次に、RESPONSE生成部19aにおいて、一
方向性ハッシュ関数部21は、パスワードpasswd1を入
力としh(passwd1)を出力する。さらに、選択部200
は、受信したCHALLENGEの内、認証に用いるパスワード
の個数に対応した情報を選択する。この場合には1つの
パスワードを用いた認証を行うので、CHALLENGEの一番
目のデータである[challenge1]h(passwd1)を選択す
る。尚、パスワードを2つ用いて認証を行う場合には、
CHALLENGEの内、[challenge2]h(passwd2)を選択する
ことになる。そして、選択した情報を復号化関数部25
に対して出力する。復号化関数部25は、受信したCHAL
LENGEの一番目のデータである[challenge1]h(passwd
1)を、h(passwd1)で復号化し、challenge1を出力す
る。ここで、
方向性ハッシュ関数部21は、パスワードpasswd1を入
力としh(passwd1)を出力する。さらに、選択部200
は、受信したCHALLENGEの内、認証に用いるパスワード
の個数に対応した情報を選択する。この場合には1つの
パスワードを用いた認証を行うので、CHALLENGEの一番
目のデータである[challenge1]h(passwd1)を選択す
る。尚、パスワードを2つ用いて認証を行う場合には、
CHALLENGEの内、[challenge2]h(passwd2)を選択する
ことになる。そして、選択した情報を復号化関数部25
に対して出力する。復号化関数部25は、受信したCHAL
LENGEの一番目のデータである[challenge1]h(passwd
1)を、h(passwd1)で復号化し、challenge1を出力す
る。ここで、
【0130】次に乱数生成部22は、乱数nonceを生成
する。次いで暗号化関数部23は、一方向性ハッシュ関
数部21から出力されたh(passwd1)を用いてnonceを暗
号化し、[nonce]h(passwd1)を出力する。次に、xor関
数26は入力されたpasswd1、復号化関数部25から出
力されたchallenge1、nonceを入力として排他的論理和
を計算し、challenge1@passwd1@nonceを出力する。
する。次いで暗号化関数部23は、一方向性ハッシュ関
数部21から出力されたh(passwd1)を用いてnonceを暗
号化し、[nonce]h(passwd1)を出力する。次に、xor関
数26は入力されたpasswd1、復号化関数部25から出
力されたchallenge1、nonceを入力として排他的論理和
を計算し、challenge1@passwd1@nonceを出力する。
【0131】次いで、一方向性ハッシュ関数部21は、
復号化関数部25から出力されたchallenge1と■1■
を入力として、h(challnge1,1)を出力する。h(challn
ge1,1)における“challnge1”は、パスワードを1つ
用いた認証であることを示し、 h(challnge1,1)にお
ける“1”は、使用するパスワードはpasswd1であるこ
とを示す。
復号化関数部25から出力されたchallenge1と■1■
を入力として、h(challnge1,1)を出力する。h(challn
ge1,1)における“challnge1”は、パスワードを1つ
用いた認証であることを示し、 h(challnge1,1)にお
ける“1”は、使用するパスワードはpasswd1であるこ
とを示す。
【0132】最後に、一方向性ハッシュ関数部21から
出力されたh(challnge1,1)と、xor関数26から出力
されたchallenge1@passwd1@nonceと、暗号化関数部2
3から出力された[nonce]h(passwd1)を連結し、RESPON
SE=h(challenge1,1),challenge1@passwd1@nonce,[n
once]h(passwd1)を出力する。
出力されたh(challnge1,1)と、xor関数26から出力
されたchallenge1@passwd1@nonceと、暗号化関数部2
3から出力された[nonce]h(passwd1)を連結し、RESPON
SE=h(challenge1,1),challenge1@passwd1@nonce,[n
once]h(passwd1)を出力する。
【0133】[図14の詳細]実施の形態2におけるRESP
ONSE検証部30bの動作を図14を用いて詳細に説明す
る。サーバ27がクライアント15からRSEPONSEを受信
すると、RESPONSEは通信部28を介して図14で示され
るRESPONSE検証部30bに渡される。まず、利用パスワ
ード識別部40は、受信データRESPONSEの先頭データ
が、h(challenge1,1)であることを確認する(実際
は、受信データの最初のデータがh(challenge1,1), h
(challenge1,2), h(challenge2,1), h(challenge
2,2)のうちで、h(challenge1,1)になった場合に本
実施の形態に示される動作が起る)。この実施の形態に
おいて利用パスワード識別部40は、RESPONSEの先頭デ
ータh(challenge1,1)の“challenge1”により、パス
ワードを1つ用いた認証であることを認識し、“1”に
より、使用するパスワードはpasswd1であることを認識
する。
ONSE検証部30bの動作を図14を用いて詳細に説明す
る。サーバ27がクライアント15からRSEPONSEを受信
すると、RESPONSEは通信部28を介して図14で示され
るRESPONSE検証部30bに渡される。まず、利用パスワ
ード識別部40は、受信データRESPONSEの先頭データ
が、h(challenge1,1)であることを確認する(実際
は、受信データの最初のデータがh(challenge1,1), h
(challenge1,2), h(challenge2,1), h(challenge
2,2)のうちで、h(challenge1,1)になった場合に本
実施の形態に示される動作が起る)。この実施の形態に
おいて利用パスワード識別部40は、RESPONSEの先頭デ
ータh(challenge1,1)の“challenge1”により、パス
ワードを1つ用いた認証であることを認識し、“1”に
より、使用するパスワードはpasswd1であることを認識
する。
【0134】ハッシュ化パスワード取得部38は、利用
パスワード識別部40による認識結果を基に、ユーザの
ID(IDc)に対応したh(passwd1)を取り出す。この実施の
形態において、h(passwd1)を取り出すのは、利用パス
ワード認識部40が、使用するパスワードをpasswd1で
あると認識したからである。尚、利用パスワード認識部
40が、使用するバスワードをpasswd2と認識した場合
には、ハッシュ化パスワード取得部38はh(passwd2)
を取り出すことになる。次いで、復号化関数部34は、
ハッシュ化パスワード取得部38から出力されたh(pass
wd1)を用いてRESPONSEの[nonce]h(passwd1)を復号化
し、nonceを出力する。
パスワード識別部40による認識結果を基に、ユーザの
ID(IDc)に対応したh(passwd1)を取り出す。この実施の
形態において、h(passwd1)を取り出すのは、利用パス
ワード認識部40が、使用するパスワードをpasswd1で
あると認識したからである。尚、利用パスワード認識部
40が、使用するバスワードをpasswd2と認識した場合
には、ハッシュ化パスワード取得部38はh(passwd2)
を取り出すことになる。次いで、復号化関数部34は、
ハッシュ化パスワード取得部38から出力されたh(pass
wd1)を用いてRESPONSEの[nonce]h(passwd1)を復号化
し、nonceを出力する。
【0135】次に、xor関数部41は、nonceとRESPONSE
からのchallenge1@passwd1@nonce、CHALLENGEの生成
時に生成したchallenge1を入力とし、passwd1を出力
する。一方向性ハッシュ関数部42は、xor関数部41
から出力されたpasswd1をハッシュ化して出力する。比
較部43は、一方向性ハッシュ関数部42からの出力結
果と、ハッシュ化パスワード取得部38から得たh(pass
wd1)とを比較する。両者が一致すれば、クライアント
15(又はユーザ)を正当に認証したとして■OK■を、
両者が一致しない場合は正当ではないとして■NG■をAN
SWER=OK/NGとして出力する。
からのchallenge1@passwd1@nonce、CHALLENGEの生成
時に生成したchallenge1を入力とし、passwd1を出力
する。一方向性ハッシュ関数部42は、xor関数部41
から出力されたpasswd1をハッシュ化して出力する。比
較部43は、一方向性ハッシュ関数部42からの出力結
果と、ハッシュ化パスワード取得部38から得たh(pass
wd1)とを比較する。両者が一致すれば、クライアント
15(又はユーザ)を正当に認証したとして■OK■を、
両者が一致しない場合は正当ではないとして■NG■をAN
SWER=OK/NGとして出力する。
【0136】この実施の形態における認証は、登録した
2つのパスワードの内、ユーザが指定したいずれか一方
のパスワードを用いて認証することができるため、ユー
ザにとって利便性が高い。また、パスワードを2つ用い
た認証でのRESPONSEも、パスワードを1つ用いた認証で
のRESPONSEも、同じ情報量となるため、第三者がRESPON
SEの情報量を手掛かりして、認証に使用するパスワード
の数を推測することを防止できる。また、パスワードを
2つ用いた認証の場合でも、パスワードを1つ用いた認
証の場合でも、クライアントおよびサーバは、ほとんど
同じ処理で対応することができるため有効である。
2つのパスワードの内、ユーザが指定したいずれか一方
のパスワードを用いて認証することができるため、ユー
ザにとって利便性が高い。また、パスワードを2つ用い
た認証でのRESPONSEも、パスワードを1つ用いた認証で
のRESPONSEも、同じ情報量となるため、第三者がRESPON
SEの情報量を手掛かりして、認証に使用するパスワード
の数を推測することを防止できる。また、パスワードを
2つ用いた認証の場合でも、パスワードを1つ用いた認
証の場合でも、クライアントおよびサーバは、ほとんど
同じ処理で対応することができるため有効である。
【0137】また、第三者がパスワードの解読を行う場
合には、クライアント15からサーバ27に対して送信
される情報を経続して盗聴することが想定される。しか
し、この実施の形態における認証方法の場合、パスワー
ドを1つ用いた認証とパスワードを2つ用いた認証とを
クライアントの利用者側で選択的に変更できるため、第
三者が盗聴中に、認証に使用するパスワードの個数が変
更されることにより第三者はパスワードをいくつ用いた
認証なのかを特定できなくなる。よって、第三者はパス
ワード解読の手掛かりを得ることが困難になる。
合には、クライアント15からサーバ27に対して送信
される情報を経続して盗聴することが想定される。しか
し、この実施の形態における認証方法の場合、パスワー
ドを1つ用いた認証とパスワードを2つ用いた認証とを
クライアントの利用者側で選択的に変更できるため、第
三者が盗聴中に、認証に使用するパスワードの個数が変
更されることにより第三者はパスワードをいくつ用いた
認証なのかを特定できなくなる。よって、第三者はパス
ワード解読の手掛かりを得ることが困難になる。
【0138】実施の形態3.実施の形態3では、実施の
形態1において登録した2つのパスワードの内、どちら
かのパスワードを忘れてしまった場合に、忘れた方のパ
スワードを更新する方法を示す。実施の形態3では、登
録したpasswd1,passwd2の内、passwd1を覚えていてp
asswd2を忘れた場合に、passwd2を新しいパスワードp
asswd3に更新する方法について説明する。
形態1において登録した2つのパスワードの内、どちら
かのパスワードを忘れてしまった場合に、忘れた方のパ
スワードを更新する方法を示す。実施の形態3では、登
録したpasswd1,passwd2の内、passwd1を覚えていてp
asswd2を忘れた場合に、passwd2を新しいパスワードp
asswd3に更新する方法について説明する。
【0139】図9において、ユーザは、クライアント1
5に、覚えているパスワード(ここでは、passwd1)
と、新しいパスワードpasswd3、パスワードを忘失した
ことを示す0を入力する。この実施の形態におけるパス
ワードの更新は、クライアント15におけるパスワード
更新要求生成部20aと、サーバ27におけるパスワー
ド更新要求検証部31aによって行われる。
5に、覚えているパスワード(ここでは、passwd1)
と、新しいパスワードpasswd3、パスワードを忘失した
ことを示す0を入力する。この実施の形態におけるパス
ワードの更新は、クライアント15におけるパスワード
更新要求生成部20aと、サーバ27におけるパスワー
ド更新要求検証部31aによって行われる。
【0140】パスワード更新要求生成部20aの動作を
図15に、パスワード更新要求検証部31aの動作を図
16に示す。なお、パスワード更新要求生成部20aと
パスワード更新要求検証部31aの構成は実施の形態1
と同じである。
図15に、パスワード更新要求検証部31aの動作を図
16に示す。なお、パスワード更新要求生成部20aと
パスワード更新要求検証部31aの構成は実施の形態1
と同じである。
【0141】[パスワード更新要求生成部20aの動作
(図15)]実施の形態3におけるパスワード更新要求
生成部20aの動作を図15を用いて説明する。図9に
おいて、ユーザによりクライアント15へ入力されたpa
sswd1、新しいパスワード(更新パスワード)passwd
3、0、は入力部16を介して図15で示されるパスワ
ード更新要求生成部20aに渡される。パスワード更新
要求生成部20aでは、一方向性ハッシュ関数部21は
ユーザから入力されたpasswd1を入力としh(passwd1)
を出力する。
(図15)]実施の形態3におけるパスワード更新要求
生成部20aの動作を図15を用いて説明する。図9に
おいて、ユーザによりクライアント15へ入力されたpa
sswd1、新しいパスワード(更新パスワード)passwd
3、0、は入力部16を介して図15で示されるパスワ
ード更新要求生成部20aに渡される。パスワード更新
要求生成部20aでは、一方向性ハッシュ関数部21は
ユーザから入力されたpasswd1を入力としh(passwd1)
を出力する。
【0142】さらに、選択部200は、受信したCHALLE
NGEの中から、入力されたパスワードに対応した情報を
選択する。この場合には、passwd1が入力されたため、
CHALLENGEの[challenge1]h(passwd1)を選択する。
尚、入力されたパスワードがpasswd2の場合には、[cha
llenge2]h(passwd2)が選択されることになる。そし
て、選択部200は、選択した情報を復号化関数部25
に対して出力する。次に、復号化関数部25は、CHALLE
NGEの[challenge1]h(passwd1)を一方向性ハッシュ関
数部21から出力されたh(passwd1)を用いて復号化
し、challenge1を出力する。
NGEの中から、入力されたパスワードに対応した情報を
選択する。この場合には、passwd1が入力されたため、
CHALLENGEの[challenge1]h(passwd1)を選択する。
尚、入力されたパスワードがpasswd2の場合には、[cha
llenge2]h(passwd2)が選択されることになる。そし
て、選択部200は、選択した情報を復号化関数部25
に対して出力する。次に、復号化関数部25は、CHALLE
NGEの[challenge1]h(passwd1)を一方向性ハッシュ関
数部21から出力されたh(passwd1)を用いて復号化
し、challenge1を出力する。
【0143】次いで、xor関数部26は、復号化関数部
25から出力されたchallenge1と、ユーザにより入力
されたpasswd1の排他的論理和をとり、challenge1@pa
sswd1を出力する。
25から出力されたchallenge1と、ユーザにより入力
されたpasswd1の排他的論理和をとり、challenge1@pa
sswd1を出力する。
【0144】暗号化関数部23は、一方向性ハッシュ関
数部21から出力されたh(passwd1)を利用してxor関数
部26から出力されたchallenge1@passwd1を暗号化
し、[challenge@passwd1]h(passwd1)を出力する。次
に、一方向性ハッシュ関数部21は、ユーザにより入力
された新しいパスワードpasswd3をハッシュ化してh(pa
ssswd3)を出力する。一方向性ハッシュ関数部21から
出力されたh(passwd3)は、暗号化関数部23から出力
された[challenge@passwd1]h(passwd1)と連結され、
[challenge@passwd1]h(passwd1),h(passwd3)とな
る。
数部21から出力されたh(passwd1)を利用してxor関数
部26から出力されたchallenge1@passwd1を暗号化
し、[challenge@passwd1]h(passwd1)を出力する。次
に、一方向性ハッシュ関数部21は、ユーザにより入力
された新しいパスワードpasswd3をハッシュ化してh(pa
ssswd3)を出力する。一方向性ハッシュ関数部21から
出力されたh(passwd3)は、暗号化関数部23から出力
された[challenge@passwd1]h(passwd1)と連結され、
[challenge@passwd1]h(passwd1),h(passwd3)とな
る。
【0145】次いで、乱数生成部22は、乱数nonceを
生成し、暗号化関数部23はnonceを利用して[challeng
e@passwd1]h(passwd1),h(passwd3)を暗号化し、[[ch
allenge@passwd1]h(passwd1),h(passwd3)]nonceを出
力する。また、暗号化関数部23は、一方向性ハッシュ
関数部21から出力されたh(passwd1)を用いてnonceを
暗号化し、[nonce]h(passwd1)を出力する。
生成し、暗号化関数部23はnonceを利用して[challeng
e@passwd1]h(passwd1),h(passwd3)を暗号化し、[[ch
allenge@passwd1]h(passwd1),h(passwd3)]nonceを出
力する。また、暗号化関数部23は、一方向性ハッシュ
関数部21から出力されたh(passwd1)を用いてnonceを
暗号化し、[nonce]h(passwd1)を出力する。
【0146】次に、一方向性ハッシュ関数部21は、復
号化関数部25から出力されたchallenge1と、ユーザ
により入力された0とから、h(challenge1,0)を出力
する。最後に、一方向性ハッシュ関数部21から出力さ
れたh(challenge1,0)と、暗号化関数部23から出力
された[[challenge1@passwd1]h(passwd1),h(passwd
3)]nonceと、暗号化関数部23から出力された[nonce]
h(passwd1)とを連結し、パスワード更新要求としてRES
PONSEを出力する。
号化関数部25から出力されたchallenge1と、ユーザ
により入力された0とから、h(challenge1,0)を出力
する。最後に、一方向性ハッシュ関数部21から出力さ
れたh(challenge1,0)と、暗号化関数部23から出力
された[[challenge1@passwd1]h(passwd1),h(passwd
3)]nonceと、暗号化関数部23から出力された[nonce]
h(passwd1)とを連結し、パスワード更新要求としてRES
PONSEを出力する。
【0147】この実施の形態においては、サーバから送
信されたCHALLENGEに含まれた乱数challenge1を用い、
h(challenge1,0)として送信するので、どのパスワー
ドを覚えているのかをサーバに知らせている。したがっ
て、第三者がRESPONSEを盗聴したとしても、乱数としか
認識できず、よってどのパスワードを更新するのかを知
ることができない。また、入力したパスワードpasswd1
と更新後のパスワードpasswd3は、クライアントで生成
された乱数nonceによって暗号化されるため、第三者はp
asswd1、passwd3の解読が困難である。また、サーバ
においては、乱数challenge1若しくはchallenge2が返
ってくることで、1つの情報で、正当なクライアントで
あることが認識できるとともに、どのパスワードを更新
するのかを知ることができる。
信されたCHALLENGEに含まれた乱数challenge1を用い、
h(challenge1,0)として送信するので、どのパスワー
ドを覚えているのかをサーバに知らせている。したがっ
て、第三者がRESPONSEを盗聴したとしても、乱数としか
認識できず、よってどのパスワードを更新するのかを知
ることができない。また、入力したパスワードpasswd1
と更新後のパスワードpasswd3は、クライアントで生成
された乱数nonceによって暗号化されるため、第三者はp
asswd1、passwd3の解読が困難である。また、サーバ
においては、乱数challenge1若しくはchallenge2が返
ってくることで、1つの情報で、正当なクライアントで
あることが認識できるとともに、どのパスワードを更新
するのかを知ることができる。
【0148】[パスワード更新要求検証部31a(図1
6)]実施の形態3におけるパスワード更新要求検証部
31aの動作を図16を用いて説明する。図9におい
て、サーバ27がクライアント15から通信部28を介
してパスワード更新要求を受信すると、図16のパスワ
ード更新要求検証部31aの更新パスワード識別部44
が、受信データRESPONSEの先頭のデータを見て、h(chal
lenge1,0)であることを確認する(実際は、受信デー
タの最初のデータがh(challenge1,0), h(challenge
2,0)のうちで、h(challenge1,0)になった場合に本
実施の形態に示される動作が起る)。更新パスワード識
別部44は、h(challenge1,0)の“challenge1”によ
り現在知っているパスワードがpasswd1であることを認
識し、“0”によりもう一つのパスワードpasswd2を現
在所持していない(忘れた等)ことを認識する。
6)]実施の形態3におけるパスワード更新要求検証部
31aの動作を図16を用いて説明する。図9におい
て、サーバ27がクライアント15から通信部28を介
してパスワード更新要求を受信すると、図16のパスワ
ード更新要求検証部31aの更新パスワード識別部44
が、受信データRESPONSEの先頭のデータを見て、h(chal
lenge1,0)であることを確認する(実際は、受信デー
タの最初のデータがh(challenge1,0), h(challenge
2,0)のうちで、h(challenge1,0)になった場合に本
実施の形態に示される動作が起る)。更新パスワード識
別部44は、h(challenge1,0)の“challenge1”によ
り現在知っているパスワードがpasswd1であることを認
識し、“0”によりもう一つのパスワードpasswd2を現
在所持していない(忘れた等)ことを認識する。
【0149】ハッシュ化パスワード取得部38は、更新
パスワード識別部44の識別結果により、図6に示した
のと同様の方法によりユーザのID(IDc)に対応するh(p
asswd1)を取り出す。次に、復号化関数部34はハッシ
ュ化パスワード取得部38によって取り出したh(passwd
1)を用いて、パスワード更新要求RESPONSEの[nonce]h
(passwd1)を復号化し、nonceを得る。
パスワード識別部44の識別結果により、図6に示した
のと同様の方法によりユーザのID(IDc)に対応するh(p
asswd1)を取り出す。次に、復号化関数部34はハッシ
ュ化パスワード取得部38によって取り出したh(passwd
1)を用いて、パスワード更新要求RESPONSEの[nonce]h
(passwd1)を復号化し、nonceを得る。
【0150】次に、復号化関数部34は、nonceを用い
て、パスワード更新要求RESPONSEの[[challenge1@pass
wd1]h(passwd1),h(passwd3)]nonceを復号化し[[chal
lenge1]@passwd1]h(passwd1),h(passwd3)を出力す
る。次いで、復号化関数部34は、ハッシュ化パスワー
ド取得部38によって取り出したh(passwd1)を用いて
[challenge1@passwd1]h(passwd1)を復号化し、chall
enge1@passwd1を出力する。
て、パスワード更新要求RESPONSEの[[challenge1@pass
wd1]h(passwd1),h(passwd3)]nonceを復号化し[[chal
lenge1]@passwd1]h(passwd1),h(passwd3)を出力す
る。次いで、復号化関数部34は、ハッシュ化パスワー
ド取得部38によって取り出したh(passwd1)を用いて
[challenge1@passwd1]h(passwd1)を復号化し、chall
enge1@passwd1を出力する。
【0151】次にxor関数部41は、CHALLENGEを生成す
るときに生成したchallenge1と、challenge1@passwd
1の排他的論理和をとり、passwd1を出力する。次い
で、一方向性ハッシュ関数部42は、xor関数部41か
ら出力されたpasswd1をハッシュ化し、h(passwd1)を
出力する。
るときに生成したchallenge1と、challenge1@passwd
1の排他的論理和をとり、passwd1を出力する。次い
で、一方向性ハッシュ関数部42は、xor関数部41か
ら出力されたpasswd1をハッシュ化し、h(passwd1)を
出力する。
【0152】次に、比較部43は、一方向性ハッシュ関
数部42からの出力結果と、ハッシュ化パスワード取得
部38から取り出したh(passwd1)とを比較する。両者
が一致すれば、クライアント15(又はユーザ)を正当
に認証したとして、ハッシュ化パスワード更新部45が
公開パスワードファイル37aと非公開パスワードファ
イル37bの内容を更新する。両者が一致しなければ、
比較部43はNGを出力する。
数部42からの出力結果と、ハッシュ化パスワード取得
部38から取り出したh(passwd1)とを比較する。両者
が一致すれば、クライアント15(又はユーザ)を正当
に認証したとして、ハッシュ化パスワード更新部45が
公開パスワードファイル37aと非公開パスワードファ
イル37bの内容を更新する。両者が一致しなければ、
比較部43はNGを出力する。
【0153】ハッシュ化パスワード更新部45は、比較
部43によってクライアント15(又はユーザ)を正当
に認証した場合に動作する。更新方法は、公開パスワー
ドファイル37aおよび非公開パスワードファイル37
bにおける[h(passwd2)]Rkeyを[h(passwd3)]Rkeyに変
更する。変更した後に公開パスワードファイル37aを
公開し、クライアント15(又はユーザ)はこれを見て
パスワードが更新されていることを確認する。
部43によってクライアント15(又はユーザ)を正当
に認証した場合に動作する。更新方法は、公開パスワー
ドファイル37aおよび非公開パスワードファイル37
bにおける[h(passwd2)]Rkeyを[h(passwd3)]Rkeyに変
更する。変更した後に公開パスワードファイル37aを
公開し、クライアント15(又はユーザ)はこれを見て
パスワードが更新されていることを確認する。
【0154】passwd2を覚えていて、passwd1を忘れた
場合は、図15におけるpasswd1をpasswd2に、challe
nge1をchallenge2に置き換え、出力をh(challenge2,
0),[[challenge2@passwd2]h(passwd2),h(passwd
3)]nonce, [nonce]h(passwd2)とする。以降、図16
においてpasswd1をpasswd2に、challenge1をchallen
ge2に置き換えて、同様の処理を行う。安全性を高める
ならば、passwd1をpasswd3に更新した後で、passwd2
を別のパスワードに更新すれば良い。
場合は、図15におけるpasswd1をpasswd2に、challe
nge1をchallenge2に置き換え、出力をh(challenge2,
0),[[challenge2@passwd2]h(passwd2),h(passwd
3)]nonce, [nonce]h(passwd2)とする。以降、図16
においてpasswd1をpasswd2に、challenge1をchallen
ge2に置き換えて、同様の処理を行う。安全性を高める
ならば、passwd1をpasswd3に更新した後で、passwd2
を別のパスワードに更新すれば良い。
【0155】実施の形態4.実施の形態1において、サ
ーバ27がクライアント15(又はユーザ)を認証した
結果をANSWER=OK/NGと返しているが、このような場合に
は、第三者がクライアントに対してANSWER=OKの信号を
送信し、その応答としてクライアントが送信する情報を
第三者が盗み出すことができるという問題がある。この
実施の形態においては■OK■の代わりにサーバ27は、
ANSWER=h(challenge2,nonce)を返す。
ーバ27がクライアント15(又はユーザ)を認証した
結果をANSWER=OK/NGと返しているが、このような場合に
は、第三者がクライアントに対してANSWER=OKの信号を
送信し、その応答としてクライアントが送信する情報を
第三者が盗み出すことができるという問題がある。この
実施の形態においては■OK■の代わりにサーバ27は、
ANSWER=h(challenge2,nonce)を返す。
【0156】クライアント15はサーバ27からANSWER
=h(challenge2,nonce)を受信すると、CHALLENGEから得
たchallenge2とRESPONSE生成時に生成したnonceを一方
向性ハッシュ関数部21に入力し、ハッシュ化する。一
方向性ハッシュ関数部21によるハッシュ化の出力とAN
SWERとを比較して、両者が一致すればクライアント15
(又はユーザ)はサーバ27に認証されたと判断する。
なぜならば、正しいh(challenge2,nonce)を生成できる
のはハッシュ化されたパスワードを所持できるサーバ2
7だけであるからである。challenge2も、nonceもネッ
トワーク上を転送されるときは暗号化されているので、
第三者がこれらの情報を知ることはできない。従って、
h(challenge2,nonce)を生成することはできない。
=h(challenge2,nonce)を受信すると、CHALLENGEから得
たchallenge2とRESPONSE生成時に生成したnonceを一方
向性ハッシュ関数部21に入力し、ハッシュ化する。一
方向性ハッシュ関数部21によるハッシュ化の出力とAN
SWERとを比較して、両者が一致すればクライアント15
(又はユーザ)はサーバ27に認証されたと判断する。
なぜならば、正しいh(challenge2,nonce)を生成できる
のはハッシュ化されたパスワードを所持できるサーバ2
7だけであるからである。challenge2も、nonceもネッ
トワーク上を転送されるときは暗号化されているので、
第三者がこれらの情報を知ることはできない。従って、
h(challenge2,nonce)を生成することはできない。
【0157】この実施の形態においては、ANSWERを構成
する情報から、ANSWERが正当なサーバ27からの返答で
あるか否かを認識できる。尚、実施の形態2において
も、サーバ27はクライアント15に対してユーザが選
択したchallenge1とnonceのハッシュ値ANSWER=h(chall
enge1,nonce)を返せば同じ効果が得られる。
する情報から、ANSWERが正当なサーバ27からの返答で
あるか否かを認識できる。尚、実施の形態2において
も、サーバ27はクライアント15に対してユーザが選
択したchallenge1とnonceのハッシュ値ANSWER=h(chall
enge1,nonce)を返せば同じ効果が得られる。
【0158】実施の形態5.実施の形態5では、実施の
形態1,2,3において、公開パスワードファイル37a
の安全性を高める一手法を説明する。或ユーザAが、ク
ライアント15を介してパスワードの登録・或いは更新
を行い、サーバ27が即座に登録・更新した公開パスワ
ードファイル37aを公開したとする。
形態1,2,3において、公開パスワードファイル37a
の安全性を高める一手法を説明する。或ユーザAが、ク
ライアント15を介してパスワードの登録・或いは更新
を行い、サーバ27が即座に登録・更新した公開パスワ
ードファイル37aを公開したとする。
【0159】ユーザA(又はクライアント15)の転送
データを盗聴している悪者がいた場合、転送データがパ
スワードの登録要求或いは更新要求であったと分かる
と、公開パスワードファイル37aの変化分をユーザAの
パスワードデータが登録或いは更新された影響としてと
らえ、変化した情報をパスワードの解析に役立てる可能
性がある。
データを盗聴している悪者がいた場合、転送データがパ
スワードの登録要求或いは更新要求であったと分かる
と、公開パスワードファイル37aの変化分をユーザAの
パスワードデータが登録或いは更新された影響としてと
らえ、変化した情報をパスワードの解析に役立てる可能
性がある。
【0160】実施の形態5では、実施の形態1,2,3に
おいて、公開パスワードファイル37aの公開のタイミ
ングを周期的にすることで悪者が適切な判断をできなく
する。又、パスワードの登録時にランダムなダミー情報
を公開パスワードファイル37aに混入することによ
り、悪者の判断の基準を撹乱し、パスワードの解析を防
止する。具体的には、公開パスワードファイル37a
に、乱数等から構成されたダミー情報を複数行登録して
おき、公開のタイミングに応じて、このダミー情報の内
容を変更する。
おいて、公開パスワードファイル37aの公開のタイミ
ングを周期的にすることで悪者が適切な判断をできなく
する。又、パスワードの登録時にランダムなダミー情報
を公開パスワードファイル37aに混入することによ
り、悪者の判断の基準を撹乱し、パスワードの解析を防
止する。具体的には、公開パスワードファイル37a
に、乱数等から構成されたダミー情報を複数行登録して
おき、公開のタイミングに応じて、このダミー情報の内
容を変更する。
【0161】このような方法により、公開パスワードフ
ァイルが公開された場合に、更新された内容を第三者に
知られるのを防止できる。
ァイルが公開された場合に、更新された内容を第三者に
知られるのを防止できる。
【0162】実施の形態6.実施の形態6では、実施の
形態1に示した認証方法においてさらにパスワードのよ
り安全な転送を実現する手法を説明する。
形態1に示した認証方法においてさらにパスワードのよ
り安全な転送を実現する手法を説明する。
【0163】図4のCHALLENGE生成部において、出力をC
HALLENGE=[challenge2]h(passwd1), [challenge1]h
(passwd2)となるようにする。図4のRESPONSE生成部に
おいては、このCHALLENGEを復号化し、RESPONSEをRESPO
NSE=h(challenge2,1),challenge2@passwd1@nonce,
[nonce]h(passwd2)となるように計算する。以降の手順
は実施の形態1と同じである。
HALLENGE=[challenge2]h(passwd1), [challenge1]h
(passwd2)となるようにする。図4のRESPONSE生成部に
おいては、このCHALLENGEを復号化し、RESPONSEをRESPO
NSE=h(challenge2,1),challenge2@passwd1@nonce,
[nonce]h(passwd2)となるように計算する。以降の手順
は実施の形態1と同じである。
【0164】この様にすることで、万が一h(passwd2)
或いはpasswd2が漏洩したとしても、攻撃者は直接pass
wd1或いはh(passwd1)を知ることはできない。なぜな
ら、h(passwd2)を利用して[nonce]h(passwd2)を復号
化し、nonceを得て、このnonceでRESPONSEの二番目の情
報challenge2@passwd1@nonceの排他的論理和をとりch
allenge2@passwd1を得たとする。
或いはpasswd2が漏洩したとしても、攻撃者は直接pass
wd1或いはh(passwd1)を知ることはできない。なぜな
ら、h(passwd2)を利用して[nonce]h(passwd2)を復号
化し、nonceを得て、このnonceでRESPONSEの二番目の情
報challenge2@passwd1@nonceの排他的論理和をとりch
allenge2@passwd1を得たとする。
【0165】しかし、passwd1を知るためにはchalleng
e2が解る必要がある。攻撃者は、CHALLENGE=[challeng
e2]h(passwd1), [challenge1]h(passwd2)における
[challenge2]h(passwd1)と、RESPONSEにおけるchalle
nge2@passwd1の二つの情報から、passwd1とchalleng
e2の組み合わせをこの二つの情報に当てはまるように
検査しなくてはならない。
e2が解る必要がある。攻撃者は、CHALLENGE=[challeng
e2]h(passwd1), [challenge1]h(passwd2)における
[challenge2]h(passwd1)と、RESPONSEにおけるchalle
nge2@passwd1の二つの情報から、passwd1とchalleng
e2の組み合わせをこの二つの情報に当てはまるように
検査しなくてはならない。
【0166】この実施の形態のようにCHALLENGEを構成
することにより、第三者による解読をより困難にするこ
とができる。
することにより、第三者による解読をより困難にするこ
とができる。
【0167】
【発明の効果】第1、第9の発明においては、第1処理
装置において公開した場合でも、第2処理装置において
生成された任意情報によって暗号化されたパスワードが
公開されるので、第3者は公開された情報からパスワー
ドを解読することが困難となる。一方、第2処理装置側
では、入力したパスワードが第1処理装置に正常に登録
されたか否かを確認できる。
装置において公開した場合でも、第2処理装置において
生成された任意情報によって暗号化されたパスワードが
公開されるので、第3者は公開された情報からパスワー
ドを解読することが困難となる。一方、第2処理装置側
では、入力したパスワードが第1処理装置に正常に登録
されたか否かを確認できる。
【0168】第2、第10の発明においては、第2処理
装置側では、第1処理装置において生成された複数の任
意情報のいずれかを選択することによって、パスワード
をいくつ用いた認証を行うのかを第1処理装置に対して
知らせるため、利用者はパスワードをいくつ用いて認証
するのかを選択可能になって便利であり、第3者はいく
つのパスワードを用いて認証を行っているのかを解読す
るのが困難となる。
装置側では、第1処理装置において生成された複数の任
意情報のいずれかを選択することによって、パスワード
をいくつ用いた認証を行うのかを第1処理装置に対して
知らせるため、利用者はパスワードをいくつ用いて認証
するのかを選択可能になって便利であり、第3者はいく
つのパスワードを用いて認証を行っているのかを解読す
るのが困難となる。
【0169】第3の発明においては、上記第1受信ステ
ップにおける複数の任意情報として乱数を用いるため、
第3者はいくつのパスワードを用いて認証を行っている
のかを解読するのがよりいっそう困難となる。
ップにおける複数の任意情報として乱数を用いるため、
第3者はいくつのパスワードを用いて認証を行っている
のかを解読するのがよりいっそう困難となる。
【0170】第4の発明においては、上記第2送信ステ
ップは、上記入力された入力パスワードの数にかかわら
ず、上記入力パスワードを一定の情報量に変換して送信
するため、第3者が情報量の大きさを手掛かりにパスワ
ードをいくつ用いた認証を行っているのかを認識するこ
とを防止できる。
ップは、上記入力された入力パスワードの数にかかわら
ず、上記入力パスワードを一定の情報量に変換して送信
するため、第3者が情報量の大きさを手掛かりにパスワ
ードをいくつ用いた認証を行っているのかを認識するこ
とを防止できる。
【0171】第5、第11の発明においては、第2処理
装置では、入力された第1パスワード及び第2パスワー
ドのいずれかを所定情報を鍵暗号化するための鍵暗号化
用パスワードとして使用し、第2パスワード自体は第1
処理装置に送信しないので第2パスワード分の送信情報
量を削減することができ、かつ第三者にとっては第2パ
スワードを用いることにより解読が困難となる。
装置では、入力された第1パスワード及び第2パスワー
ドのいずれかを所定情報を鍵暗号化するための鍵暗号化
用パスワードとして使用し、第2パスワード自体は第1
処理装置に送信しないので第2パスワード分の送信情報
量を削減することができ、かつ第三者にとっては第2パ
スワードを用いることにより解読が困難となる。
【0172】第6の発明においては、上記第2処理装置
側の処理として、乱数を生成する乱数生成ステップを有
し、上記パスワード暗号化ステップは、上記指定された
送信パスワードを上記生成された乱数を用いて暗号化す
るため、第3者による送信パスワードの解読がより困難
となる。
側の処理として、乱数を生成する乱数生成ステップを有
し、上記パスワード暗号化ステップは、上記指定された
送信パスワードを上記生成された乱数を用いて暗号化す
るため、第3者による送信パスワードの解読がより困難
となる。
【0173】第7、第12の発明においては、第2処理
装置側では、第1処理装置において生成された複数の任
意情報のいずれかを選択することによって、どのパスワ
ードを更新するのかを第1処理装置に対して知らせるた
め、第3者はどのパスワードが更新されるのかを解読す
るのが困難となる。
装置側では、第1処理装置において生成された複数の任
意情報のいずれかを選択することによって、どのパスワ
ードを更新するのかを第1処理装置に対して知らせるた
め、第3者はどのパスワードが更新されるのかを解読す
るのが困難となる。
【0174】第8の発明においては、上記第1処理装置
に登録された登録パスワードの更新は、上記第1処理装
置に登録された複数のパスワードの内、任意の登録パス
ワードについて更新可能であるため、例えば利用者が複
数のパスワードの内、一部のパスワードを忘れてしまっ
た場合などにこの忘れたパスワードを新しいパスワード
に更新することができる。したがって、利用者にとって
便利である。
に登録された登録パスワードの更新は、上記第1処理装
置に登録された複数のパスワードの内、任意の登録パス
ワードについて更新可能であるため、例えば利用者が複
数のパスワードの内、一部のパスワードを忘れてしまっ
た場合などにこの忘れたパスワードを新しいパスワード
に更新することができる。したがって、利用者にとって
便利である。
【0175】
【図1】 この発明の実施の形態1におけるクライアン
ト−サーバ認証システムの構成図である。
ト−サーバ認証システムの構成図である。
【図2】 この発明の実施の形態1における、ユーザの
クライアントを介してのサーバへのパスワード登録の方
法を示す図である。
クライアントを介してのサーバへのパスワード登録の方
法を示す図である。
【図3】 この発明の実施の形態1における、ユーザの
パスワードの登録に関係するファイルを示す図である。
パスワードの登録に関係するファイルを示す図である。
【図4】 この発明の実施の形態1における、クライア
ント(ユーザ)−サーバ間での認証方法を示す図であ
る。
ント(ユーザ)−サーバ間での認証方法を示す図であ
る。
【図5】 図4におけるサーバ27のCHALLENGE生成部
30aを示す図である。
30aを示す図である。
【図6】 図5におけるハッシュ化パスワード取得部3
8を示す図である。
8を示す図である。
【図7】 図4におけるクライアント15のRESPONSE生
成部19aを示す図である。
成部19aを示す図である。
【図8】 図4におけるサーバ27のRESPONSE検証部3
0bを示す図である。
0bを示す図である。
【図9】 この発明の実施の形態1におけるクライアン
ト15を介したユーザのパスワードの更新方法を示す図
である。
ト15を介したユーザのパスワードの更新方法を示す図
である。
【図10】 図9におけるクライアント15のパスワー
ド更新要求生成部20aを示す図である。
ド更新要求生成部20aを示す図である。
【図11】 図9におけるサーバ27のパスワード更新
要求検証部31aを示す図である。
要求検証部31aを示す図である。
【図12】 図11におけるハッシュ化パスワード更新
部45を示す図である。
部45を示す図である。
【図13】 実施の形態2における図4中のクライアン
ト15のRESPONSE生成部19aを示す図である。
ト15のRESPONSE生成部19aを示す図である。
【図14】 実施の形態2における図4中のクライアン
ト15のRESPONSE検証部30bを示す図である。
ト15のRESPONSE検証部30bを示す図である。
【図15】 実施の形態3における図9内に表されるパ
スワード更新要求生成部20aを示す図である。
スワード更新要求生成部20aを示す図である。
【図16】 実施の形態3における図9内に表されるパ
スワード更新要求検証部31aを示す図である。
スワード更新要求検証部31aを示す図である。
【図17】 従来のクライアント−サーバ間のパスワー
ドベースの認証技術であるPAP方式を示す図である。
ドベースの認証技術であるPAP方式を示す図である。
【図18】 従来のクライアント−サーバ間のパスワー
ドベースの認証技術であるCHAP方式を示す図である。
ドベースの認証技術であるCHAP方式を示す図である。
【図19】 従来の利用者確認方式を示す図である。
1 クライアント(PAP)、2 サーバ(PAP)、3 パ
スワードファイル(PAP)、4 パスワードファイル検
索部(PAP)、5 暗号化部、6 比較部、7 クライア
ント(CHAP)、8 一方向性ハッシュ関数部(CHAP)、9
サーバ(CHAP)、10 乱数生成部、11パスワード
ファイル(CHAP)、12パスワードファイル検索部(CHA
P)、13一方向性ハッシュ関数部(CHAP)、14比較部
(CHAP)、15 クライアント、16 入力部、17
通信部、18 パスワード登録要求部、19 認証要求
部、19a RESPONSE生成部、20 パスワード更新要
求部、20aパスワード更新要求生成部、21 一方向
性ハッシュ関数部、22 乱数生成部、23 暗号化関
数部、24 公開鍵暗号・暗号化関数部、25 復号化
関数部、26 xor関数部、27 サーバ、28 通信
部、29 パスワード登録部、30 認証部、30a C
HALLENGE生成部、30b RESPONSE検証部、31パスワー
ド更新部、31aパスワード更新要求検証部、32 初
回パスワード検証部、33 公開鍵暗号・復号化関数
部、34 復号化関数部、35 暗号化関数部、36
masterkey、37 ハッシュ化パスワード格納部、37a
公開パスワードファイル、37b非公開パスワードファ
イル、38 ハッシュ化パスワード取得部、39 乱数
生成部、40 利用パスワード識別部、41 xor関数
部、42 一方向性ハッシュ関数部、43 比較部、4
4 更新パスワード識別部、45 ハッシュ化パスワー
ド更新部、200 選択部。
スワードファイル(PAP)、4 パスワードファイル検
索部(PAP)、5 暗号化部、6 比較部、7 クライア
ント(CHAP)、8 一方向性ハッシュ関数部(CHAP)、9
サーバ(CHAP)、10 乱数生成部、11パスワード
ファイル(CHAP)、12パスワードファイル検索部(CHA
P)、13一方向性ハッシュ関数部(CHAP)、14比較部
(CHAP)、15 クライアント、16 入力部、17
通信部、18 パスワード登録要求部、19 認証要求
部、19a RESPONSE生成部、20 パスワード更新要
求部、20aパスワード更新要求生成部、21 一方向
性ハッシュ関数部、22 乱数生成部、23 暗号化関
数部、24 公開鍵暗号・暗号化関数部、25 復号化
関数部、26 xor関数部、27 サーバ、28 通信
部、29 パスワード登録部、30 認証部、30a C
HALLENGE生成部、30b RESPONSE検証部、31パスワー
ド更新部、31aパスワード更新要求検証部、32 初
回パスワード検証部、33 公開鍵暗号・復号化関数
部、34 復号化関数部、35 暗号化関数部、36
masterkey、37 ハッシュ化パスワード格納部、37a
公開パスワードファイル、37b非公開パスワードファ
イル、38 ハッシュ化パスワード取得部、39 乱数
生成部、40 利用パスワード識別部、41 xor関数
部、42 一方向性ハッシュ関数部、43 比較部、4
4 更新パスワード識別部、45 ハッシュ化パスワー
ド更新部、200 選択部。
Claims (12)
- 【請求項1】 第2処理装置が第1処理装置に対してア
クセスする際に用いるパスワードを登録するパスワード
登録方法であって、 上記第2処理装置側の処理として、 上記第1処理装置に登録すべきパスワードを入力する入
力ステップと、 任意の情報を生成する任意情報生成ステップと、 上記入力されたパスワード及び上記生成された任意情報
を暗号化する第1暗号化ステップと、 上記暗号化されたパスワード及び暗号化された任意情報
を上記第1処理装置に対して送信する送信ステップとを
有し、 上記第1処理装置側の処理として、 上記暗号化されたパスワード及び上記暗号化された任意
情報を受信する受信ステップと、 上記暗号化されたパスワード及び上記暗号化された任意
情報を復号化する復号化ステップと、 上記復号化されたパスワードを上記復号化された任意情
報を用いて暗号化する第2暗号化ステップと、 上記復号化された任意情報を用いて暗号化されたパスワ
ードを公開する情報公開ステップと、 上記パスワードを登録する登録ステップとを有すること
を特徴とするパスワード登録方法。 - 【請求項2】 複数の登録パスワードが登録された第1
処理装置に対して第2処理装置がアクセスすることの妥
当性を判断する認証方法であって、 上記第1処理装置が複数の任意情報を生成し、生成した
複数の任意情報を上記第2処理装置に対して送信する第
1送信ステップと、 上記第2処理装置側の処理として、 上記第1処理装置から送信された複数の任意情報を受信
する第1受信ステップと、 1つ以上の入力パスワードを入力する入力ステップと、 上記受信した複数の任意情報の中から、上記入力パスワ
ードの数に対応した任意情報を選択する選択ステップ
と、 上記選択された任意情報及び上記入力パスワードを上記
第1処理装置に対して送信する第2送信ステップとを有
し、 上記第1処理装置側の処理として、 上記選択された任意情報及び上記入力パスワードを受信
する第2受信ステップと、 上記選択された任意情報に基づき、認証に使用するパス
ワードの数を認識する認識ステップと、 上記第1処理装置に登録されている複数の登録パスワー
ドの中から、上記認識結果に対応した数の登録パスワー
ドを取り出す取出ステップと、 上記取り出された登録パスワードと、上記入力パスワー
ドとの照合を行う照合ステップとを有することを特徴と
する認証方法。 - 【請求項3】 上記第1受信ステップにおける複数の任
意情報は、乱数であることを特徴とする請求項2記載の
認証方法。 - 【請求項4】 上記第2送信ステップは、上記入力され
た入力パスワードの数にかかわらず、上記入力パスワー
ドを一定の情報量に変換して送信することを特徴とする
請求項2または3記載の認証方法。 - 【請求項5】 複数の登録パスワードが登録された第1
処理装置に対して第2処理装置がアクセスすることの妥
当性を判断する認証方法であって、 上記第2処理装置側の処理として、 第1の入力パスワード及び第2の入力パスワードを入力
する入力ステップと、 上記入力された第1の入力パスワード及び第2の入力パ
スワードに対し、送信用パスワード及び鍵暗号化用パス
ワードを対応して指定する指定ステップと、 上記指定された送信用パスワードを所定情報を用いて暗
号化するパスワード暗号化ステップと、 上記指定された鍵暗号化用パスワードを鍵として、上記
所定情報を鍵暗号化する鍵暗号化ステップと、 上記送信用パスワード及び鍵暗号化用パスワードの指定
結果を示す指定情報と、上記暗号化された送信用パスワ
ードと、上記鍵暗号化された所定情報とを上記第1処理
装置に対して送信する送信ステップとを有し、 上記第1処理装置側の処理として、 上記指定情報と、暗号化された送信用パスワードと、鍵
暗号化された所定情報とを受信する受信ステップと、 上記指定情報に基づき、上記第1処理装置に登録された
複数の登録パスワードの中から上記鍵暗号化用パスワー
ドに対応する第1登録パスワードを選択する選択ステッ
プと、 上記選択された第1登録パスワードを鍵として、上記鍵
暗号化された所定情報を鍵復号化する鍵復号化ステップ
と、 上記鍵復号化された所定情報を用い、上記暗号化された
送信用パスワードを復号化するパスワード復号化ステッ
プと、 上記復号化された送信用パスワードと、上記第1処理装
置に登録された複数の登録パスワードの内の第2登録パ
スワードとの照合を行う照合ステップとを有することを
特徴とする認証方法。 - 【請求項6】 上記第2処理装置側の処理として、乱数
を生成する乱数発生ステップを有し、 上記パスワード暗号化ステップは、上記指定された送信
用パスワードを上記生成された乱数を用いて暗号化する
ことを特徴とする請求項5記載の認証方法。 - 【請求項7】 第2処理装置が第1処理装置に対してア
クセスする際に用いる登録パスワードを更新するパスワ
ード更新方法であって、 上記第1処理装置が複数の任意情報を生成し、生成した
複数の任意情報を上記第2処理装置に対して送信する第
1送信ステップと、 上記第2処理装置側の処理として、 上記第1処理装置から送信された複数の任意情報を受信
する第1受信ステップと、 入力パスワード及び更新パスワードを入力する入力ステ
ップと、 上記受信した複数の任意情報の中から、上記第1処理装
置に登録された複数の登録パスワードの内更新すべき登
録パスワードに対応した任意情報を選択する選択ステッ
プと、 上記入力パスワードと上記更新パスワード及び上記選択
された任意情報を上記第1処理装置に対して送信する第
2送信ステップと、 上記第1処理装置側の処理として、 上記入力パスワードと上記更新パスワード及び上記選択
された任意情報を受信する第2受信ステップと、 上記選択された任意情報により、上記第1処理装置に登
録された複数の登録パスワードの中から更新すべき登録
パスワードを認識する認識ステップと、 上記入力パスワードと、上記第1処理装置に登録された
複数の登録パスワードの内所定の登録パスワードとの照
合を行う照合ステップと、 上記照合結果に基づき、上記認識結果に対応した登録パ
スワードを上記更新パスワードに更新する更新ステップ
とを有することを特徴とするパスワード更新方法。 - 【請求項8】 上記第1処理装置に登録された登録パス
ワードの更新は、上記第1処理装置に登録された複数の
パスワードの内、任意の登録パスワードについて更新可
能であることを特徴とする請求項7記載のパスワード更
新方法。 - 【請求項9】 第2処理装置が第1処理装置に対してア
クセスする際に用いるパスワードを登録するパスワード
登録システムであって、上記第2処理装置は、 任意の情報を生成する任意情報生成手段と、 入力されたパスワード及び上記任意情報生成手段により
生成された任意情報を暗号化する第1暗号化手段と、 上記第1暗号化手段によって暗号化されたパスワード及
び任意情報を上記第1処理装置に対して送信する送信手
段とを有し、上記第1処理装置は、 上記暗号化されたパスワード及び上記暗号化された任意
情報を受信する受信手段と、 上記受信手段により受信した上記暗号化されたパスワー
ド及び上記暗号化された任意情報を復号化する復号化手
段と、 上記復号化手段によって復号化されたパスワードを上記
復号化手段によって復号化された任意情報を用いて暗号
化する第2暗号化手段と、 上記第2暗号化手段によって暗号化されたパスワードを
公開する情報公開手段と、 上記パスワードを登録する登録手段とを有することを特
徴とするパスワード登録システム。 - 【請求項10】 複数の登録パスワードが登録された第
1処理装置に対して第2処理装置がアクセスすることの
妥当性を判断する認証システムであって、 上記第2処理装置は、 上記第1処理装置から送信された複数の任意情報を受信
する第1受信手段と、 上記第1受信手段によって受信した複数の任意情報の中
から、入力された入力パスワードの数に対応した任意情
報を選択する選択手段と、 上記選択手段により選択された任意情報及び上記入力さ
れた入力パスワードを上記第1処理装置に対して送信す
る送信手段とを有し、 上記第1処理装置は、 上記複数の任意情報を生成する任意情報生成手段と、 上記選択された任意情報及び上記入力パスワードを上記
第2処理装置から受信する第2受信手段と、 上記第2受信手段によって受信した上記選択された任意
情報に基づき、認証に使用するパスワードの数を認識す
る認識手段と、 上記第1処理装置に登録されている複数の登録パスワー
ドの中から、上記認識結果に対応した数の登録パスワー
ドを取り出す取出手段と、 上記取出手段によって取り出された登録パスワードと、
上記第2受信手段によって受信した入力パスワードとの
照合を行う照合手段とを有することを特徴とする認証シ
ステム。 - 【請求項11】 複数の登録パスワードが登録された第
1処理装置に対して第2処理装置がアクセスすることの
妥当性を判断する認証システムであって、 上記第2処理装置は、 入力された第1の入力パスワード及び第2の入力パスワ
ードの内送信用パスワードとして指定された一方の入力
パスワードを所定情報を用いて暗号化するパスワード暗
号化手段と、 上記入力された第1の入力パスワード及び第2の入力パ
スワードの内、鍵暗号化用パスワードとして指定された
他方の入力パスワードを鍵として上記所定情報を鍵暗号
化する鍵暗号化手段と、 上記送信用パスワード及び鍵暗号化用パスワードの指定
結果を示す指定情報と、上記パスワード暗号化手段によ
って暗号化された送信用パスワードと、上記鍵暗号化手
段によって鍵暗号化された所定情報とを上記第1処理装
置に対して送信する送信手段とを有し、 上記第1処理装置は、 上記送信手段によって送信された上記指定情報と、上記
暗号化された送信用パスワードと、上記鍵暗号化された
所定情報とを受信する受信手段と、 上記指定情報に基づき、上記第1処理装置に登録された
複数の登録パスワードの中から上記鍵暗号化用パスワー
ドに対応する第1登録パスワードを選択する選択手段
と、 上記選択手段によって選択された第1登録パスワードを
鍵として、上記鍵暗号化された所定情報を鍵復号化する
鍵復号化手段と、 上記鍵復号化手段によって鍵復号化された所定情報を用
い、上記暗号化された送信用パスワードを復号化するパ
スワード復号化手段と、 上記パスワード復号化手段によって復号化された送信用
パスワードと、上記第1処理装置に登録された複数の登
録パスワードの内の第2登録パスワードとの照合を行う
照合手段とを有することを特徴とする認証システム。 - 【請求項12】 第2処理装置が第1処理装置に対して
アクセスする際に用いる登録パスワードを更新するパス
ワード更新システムであって、 上記第2処理装置は、 上記第1処理装置から送信された複数の任意情報を受信
する第1受信手段と、 上記第1受信手段により受信した複数の任意情報の中か
ら、上記第1処理装置に登録された複数の登録パスワー
ドの内更新すべき登録パスワードに対応した任意情報を
選択する選択手段と、 入力された入力パスワード及び更新パスワードと、上記
選択手段によって選択された任意情報を上記第1処理装
置に対して送信する送信手段とを有し、 上記第1処理装置は、 上記複数の任意情報を生成する任意情報生成手段と、 上記送信手段によって送信された入力パスワード、更新
パスワード及び上記選択された任意情報を受信する第2
受信手段と、 上記第2受信手段によって受信した上記選択された任意
情報により、上記第1処理装置に登録された複数の登録
パスワードの中から更新すべき登録パスワードを認識す
る認識手段と、 上記第2受信手段によって受信した上記入力パスワード
と、上記第1処理装置に登録された複数の登録パスワー
ドの内所定の登録パスワードとの照合を行う照合手段
と、 上記照合手段による照合結果に基づき、上記認識手段に
よる認識結果に対応した登録パスワードを上記更新パス
ワードに更新する更新手段とを有することを特徴とする
パスワード更新システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8152578A JPH09330298A (ja) | 1996-06-13 | 1996-06-13 | パスワード登録方法、認証方法、パスワード更新方法、パスワード登録システム、認証システムおよびパスワード更新システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8152578A JPH09330298A (ja) | 1996-06-13 | 1996-06-13 | パスワード登録方法、認証方法、パスワード更新方法、パスワード登録システム、認証システムおよびパスワード更新システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09330298A true JPH09330298A (ja) | 1997-12-22 |
Family
ID=15543538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8152578A Pending JPH09330298A (ja) | 1996-06-13 | 1996-06-13 | パスワード登録方法、認証方法、パスワード更新方法、パスワード登録システム、認証システムおよびパスワード更新システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09330298A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999013393A1 (en) * | 1997-09-05 | 1999-03-18 | Security Dynamics Technologies, Inc. | Password synchronization |
JP2003023422A (ja) * | 2001-07-10 | 2003-01-24 | Murata Mach Ltd | バイオメトリクス認証装置とそのプログラム |
WO2004025488A1 (ja) * | 2002-09-12 | 2004-03-25 | Mitsubishi Denki Kabushiki Kaisha | 認証システム及び認証装置及び端末装置及び認証方法 |
US7058679B2 (en) | 1997-11-25 | 2006-06-06 | Kabushiki Kaisha Toshiba | Apparatus for transmitting connecting status and method of displaying connecting status |
US7191239B2 (en) | 2000-08-02 | 2007-03-13 | Ipass Inc. | Method and system to customize and update a network connection application for distribution to multiple end-users |
US7961884B2 (en) | 2002-08-13 | 2011-06-14 | Ipass Inc. | Method and system for changing security information in a computer network |
JP2011147129A (ja) * | 2010-01-12 | 2011-07-28 | Toshiba Corp | 画像形成装置、画像形成処理方法およびそのプログラムが記録されているコンピュータ読取可能な記録媒体 |
US10044703B2 (en) | 2014-02-28 | 2018-08-07 | Samsung Electronics Co., Ltd. | User device performing password based authentication and password registration and authentication methods thereof |
-
1996
- 1996-06-13 JP JP8152578A patent/JPH09330298A/ja active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999013393A1 (en) * | 1997-09-05 | 1999-03-18 | Security Dynamics Technologies, Inc. | Password synchronization |
US6240184B1 (en) | 1997-09-05 | 2001-05-29 | Rsa Security Inc. | Password synchronization |
US7058679B2 (en) | 1997-11-25 | 2006-06-06 | Kabushiki Kaisha Toshiba | Apparatus for transmitting connecting status and method of displaying connecting status |
US7191239B2 (en) | 2000-08-02 | 2007-03-13 | Ipass Inc. | Method and system to customize and update a network connection application for distribution to multiple end-users |
JP2003023422A (ja) * | 2001-07-10 | 2003-01-24 | Murata Mach Ltd | バイオメトリクス認証装置とそのプログラム |
JP4644984B2 (ja) * | 2001-07-10 | 2011-03-09 | 村田機械株式会社 | バイオメトリクス認証装置とそのプログラム |
US7961884B2 (en) | 2002-08-13 | 2011-06-14 | Ipass Inc. | Method and system for changing security information in a computer network |
WO2004025488A1 (ja) * | 2002-09-12 | 2004-03-25 | Mitsubishi Denki Kabushiki Kaisha | 認証システム及び認証装置及び端末装置及び認証方法 |
CN1302408C (zh) * | 2002-09-12 | 2007-02-28 | 三菱电机株式会社 | 认证系统、认证装置、终端装置以及认证方法 |
JP2011147129A (ja) * | 2010-01-12 | 2011-07-28 | Toshiba Corp | 画像形成装置、画像形成処理方法およびそのプログラムが記録されているコンピュータ読取可能な記録媒体 |
US10044703B2 (en) | 2014-02-28 | 2018-08-07 | Samsung Electronics Co., Ltd. | User device performing password based authentication and password registration and authentication methods thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6959394B1 (en) | Splitting knowledge of a password | |
JP4617763B2 (ja) | 機器認証システム、機器認証サーバ、端末機器、機器認証方法、および機器認証プログラム | |
US5418854A (en) | Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system | |
US7739733B2 (en) | Storing digital secrets in a vault | |
US7698565B1 (en) | Crypto-proxy server and method of using the same | |
US20030115452A1 (en) | One time password entry to access multiple network sites | |
CN111447214A (zh) | 一种基于指纹识别的公钥密码集中服务的方法 | |
US20190268145A1 (en) | Systems and Methods for Authenticating Communications Using a Single Message Exchange and Symmetric Key | |
US8117450B2 (en) | System and method for secure data transmission | |
CN108809936A (zh) | 一种基于混合加密算法的智能移动终端身份验证方法及其实现系统 | |
EP1079565A2 (en) | Method of securely establishing a secure communication link via an unsecured communication network | |
JPH10154977A (ja) | 利用者認証装置およびその方法 | |
JPH11353280A (ja) | 秘密データの暗号化による本人確認方法及びシステム | |
CN111770081B (zh) | 基于角色认证的大数据机密文件访问方法 | |
CN109787747A (zh) | 基于多个非对称密钥池的抗量子计算多重加密云存储方法和系统 | |
JPH09330298A (ja) | パスワード登録方法、認証方法、パスワード更新方法、パスワード登録システム、認証システムおよびパスワード更新システム | |
JP2001344214A (ja) | 端末の認証方法と暗号通信システム | |
JP4220671B2 (ja) | 暗号化データ通信方法並びにそのための暗号化データ生成システム及び記録媒体 | |
CN112035820B (zh) | 一种用于Kerberos加密环境下的数据解析方法 | |
KR20020040378A (ko) | 공개키 기반의 패스워드 비전송 인증방법 | |
JP6165044B2 (ja) | 利用者認証装置、システム、方法及びプログラム | |
Murdoch et al. | A Forward-secure Efficient Two-factor Authentication Protocol | |
RU2819174C1 (ru) | Способ определения источника пакетов данных в телекоммуникационных сетях | |
CN117792802B (zh) | 基于多系统交互的身份验证与应用访问控制方法及系统 | |
CN113037686B (zh) | 多数据库安全通信方法和系统、计算机可读存储介质 |