JP2001357018A - 動的パスワード認証方法、装置およびその方法を記録した記録媒体 - Google Patents

動的パスワード認証方法、装置およびその方法を記録した記録媒体

Info

Publication number
JP2001357018A
JP2001357018A JP2000178167A JP2000178167A JP2001357018A JP 2001357018 A JP2001357018 A JP 2001357018A JP 2000178167 A JP2000178167 A JP 2000178167A JP 2000178167 A JP2000178167 A JP 2000178167A JP 2001357018 A JP2001357018 A JP 2001357018A
Authority
JP
Japan
Prior art keywords
data
authentication
authenticator
user
calculated
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
Application number
JP2000178167A
Other languages
English (en)
Inventor
Tsutomu Horioka
力 堀岡
Yoichi Takashima
洋一 高嶋
Mutsuo Sano
睦夫 佐野
Noboru Sonehara
曽根原  登
Koji Tsurumaki
宏治 鶴巻
Tatsuo Takahashi
竜男 高橋
Katsumi Sekiguchi
克己 関口
Osamu Takahashi
修 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Nippon Telegraph and Telephone Corp
Original Assignee
NTT Docomo Inc
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc, Nippon Telegraph and Telephone Corp filed Critical NTT Docomo Inc
Priority to JP2000178167A priority Critical patent/JP2001357018A/ja
Publication of JP2001357018A publication Critical patent/JP2001357018A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 (修正有) 【課題】 ネットワーク上において、ユーザーのパスワ
ードの盗難を防止し、盗難された場合でも再利用できな
くすることで、他人のなりすまし問題を解決する。 【解決手段】 予め認証装置は、パスワードに一方向性
関数が適用されたデータを蓄積しておく。認証装置はユ
ーザーからの認証要求(202)毎に乱数を発生させ
(203)、認証回数と前記乱数をユーザー端末に送り
(204)、ユーザー端末では送られてきたデータとパ
スワードに基づいて認証データを作成し(205)、認
証装置に送り返す(206)。認証装置では、送られて
きた認証データの正当性を判断し(207)、正当であ
る場合にはユーザー端末との間でサービスを開始する
(209)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、セキュリティ
(安全性)が十分でないネットワーク上の認証処理にお
いて、被認証者装置と認証者装置間で送受信されるデー
タが盗取されてもそれを再利用できず、動的に認証デー
タが変更される認証技術に関するものである。
【0002】
【従来の技術】ネットワークの発達により、遠隔地のコ
ンピュータから何らかのサービスを享受したりデータ通
信を行いたいという要求が高まっている。特に、インタ
ーネットと携帯端末(モバイル端末)の普及により、ビ
ジネスユーザにとっては、時間、場所を問わず目的のコ
ンピュータと接続できる環境が望まれている。しかしな
がら、サービスを提供するため、誰にでもそのコンピュ
ータへの接続を許可することはセキュリティ上問題があ
るため、接続先コンピュータはサービスを許可するかど
うかの判断をユーザ(利用者)の認証を行うことによっ
てセキュリティを確保している。代表的なユーザ認証と
して、ユーザ識別子とパスワードを用いた認証方法があ
げられるが、インターネット上ではデータの盗取が容易
に可能なため、本来ユーザ以外には秘密であるべきパス
ワードが盗用されたり、パスワードが改ざんされる危険
性がある。
【0003】そのためインターネット等の安全性が十分
でないネットワークを介して認証を行う場合、セキュリ
ティ上次のような条件が要求される。 (1)ユーザは記憶しているパスワード等が認証される
ことにより、ユーザが要求するサービスを受けることが
でき、資格のない者へのサービス提供は拒否される。 (2)ネットワーク上および認証装置内のデータベース
から、ユーザのパスワードを盗取できない。
【0004】(3)ネットワーク上を流れる認証データ
が盗取されたとしても、その認証データを再利用できな
い。 (4)認証データが改ざんされても容易に検知できる。 UNIX(登録商標)のログイン(UNIXを搭載した
マシンを使用する際に、その利用者に使用させてよいか
のユーザ認証を行う)等に見られるパスワード認証方法
は、コンピュータ内に蓄積されるパスワードは暗号化さ
れているが、パスワードが固定であることや、近年のコ
ンピュータの発達により、手当たり次第にパスワードの
推測を行って見つけられてしまう場合がある。さらに、
ネットワークを介した認証では、ネットワーク上をパス
ワードが生のまま流れるため、たとえ認証装置内のデー
タベースからユーザのパスワードが盗取できなくとも、
ネットワーク上で容易にパスワードを盗用することが可
能となり、上述の要件(3)を満足できない。
【0005】そこで(3)の要件を満足する認証方法と
してワンタイムパスワード認証方法がある。ワンタイム
パスワード認証方法では、認証の際にネットワーク上を
流れるデータは毎回異なり、そのデータを盗取しても次
の認証に用いることができない。代表的なワンタイムパ
スワード認証方法にS/KEYとPERM認証がある。 (S/KEY)S/KEYを用いた認証の概要は次の通
りである。ユーザが秘密に保持するパスワードに対し予
め一方向性関数を複数回適用し、一方向性関数が適用さ
れたデータを認証装置内に蓄積しておく。次に認証を行
うときには、ユーザ端末装置では、認証装置に登録され
ているデータの一方向性関数適用回数より1回少ない回
数だけユーザのパスワードに一方向性関数を適用し、算
出されたデータをパスワードとして送信する。認証装置
では、認証処理としてユーザ端末装置から受信したデー
タに対し、1回一方向性関数を適用し、算出された結果
と認証装置内に蓄積されているデータを比較する。この
方法は、認証回数を用いてステータスの同期をとってい
る。
【0006】S/KEYを用いた場合、最初に設定した
回数だけ認証処理を行うと、再度パスワードの登録を行
う必要があり、利便性に問題がある。また、度重なる設
定を回避するため、最初に設定する回数を多くすると、
端末で過度の処理負荷がかかってしまう。そのため再設
定の必要がなく、処理の軽い認証方式が必要となる。 (PERM)再設定の必要がなく、処理の軽い認証方式
としてPERM認証がある。PERM認証ではステータ
スの同期をとるセッション番号が、インクリメンタルナ
ンバであるため、コンピュータの処理能力の限界まで認
証処理を実行できる(たとえば、認証回数をあらわすデ
ータが4Byte=32bitであったとすると、毎秒
1回の認証を行ったとしても約136年必要となる)。
この方法は例えば特開平10−145356号公報に示
されているが、以下に、PERM認証の概要を示す。 −初期登録− ユーザは認証装置に次のような初期登録を行う。
【0007】ユーザ識別子A、秘密に保持しているパス
ワードS、を基に次の計算を行う。ただし、Eは一方向
性関数、(+)は排他的論理和、(A,S)は例えば、
データAを鍵Sで暗号化することを示す。 V0 =E(A,S) (1) W0 =E(A,V0) (2) V1 =E(A,S(+)1) (3) W1 =E(A,V1) (4) M0 =E(W1 ,V0) (5) 算出されたW0 ,W1 ,M0 と認証番号n=0をユーザ
識別子に対応させ、認証装置に登録する。 −n回目の認証処理− n回目の認証処理において、ユーザ端末装置は認証装置
にユーザ識別子と認証要求を送り、認証装置より認証番
号nを取得する。この時、認証装置には、n−1回目の
認証処理においてその正当性が証明されたWn-1 、n回
目の認証処理においてその正当性が証明されるWn およ
びWn の正当性検証データMn-1 が蓄積されている。ユ
ーザ端末装置では、ユーザ識別子A、秘密に保持してい
るパスワードSおよび認証番号nを用いて次のような計
算を行う。
【0008】 Vn-1 =E(A,S(+)n−1) (6) Vn+1 =E(A,S(+)n+1) (7) Wn+1 =E(A,Vn+1 ) (8) Vn =E(A,S(+)n) (9) Mn =E(Wn+1 ,Vn ) (10) 算出されたVn+1 ,Wn+1 ,Mn を認証データとして認
証装置へ送信する。
【0009】認証装置では、次の処理を行いユーザの正
当性を証明する。受信したVn-1 とユーザ識別子Aを用
いて算出された値(E(A,Vn-1 ))と認証装置に蓄
積されているWn-1 を比較し、Vn-1 の正当性を検証す
る。次に正当性が証明されたVn-1 と認証装置に蓄積さ
れているWn を用いて算出された値(E(Wn
n- 1 ))と、認証装置に蓄積されているMn を比較
し、Wn の正当性を検証する。二つのデータの正当性が
検証されると、認証装置に蓄積されているWn-1 の代わ
りにWn を登録し、Wn およびMn-1 の代わりに、ユー
ザから受信したWn+1 およびMn をそれぞれ登録し、認
証番号nを一つインクリメント(+1)する。
【0010】PERM認証方式では、ネットワークを流
れる認証データが毎回異なり、ネットワーク上で認証デ
ータを盗取したとしても次回の認証にそのデータを用い
ることはできないため、前述の要件(3)を満足してい
る。また一方向性関数を適用する回数もユーザ端末装置
で5回、認証装置で2回と非常に処理の軽い設計となっ
ている。しかし、PERM認証方式では、悪意のある第
3者が認証装置になりすましユーザに認証番号nを送っ
て認証データを算出させ、そこで得た認証データを用い
て真の認証装置に対して認証処理を実行するリプレイア
タックが可能となってしまい、要件(3)を完全に満足
することはできない。
【0011】さらに、n回目の認証処理時に受信したW
n+1 およびMn に対しては何の処理も行わずVn-1 の正
当性を検証しただけで認証装置に蓄積してしまうため、
悪意のある第3者によってこの二つのデータが書きかえ
られてしまう可能性があり、要件(4)を完全に満足す
ることができない。以上、前述の4つの要件を全て満足
し、かつモバイル端末等の処理能力の低い端末で有効に
活用できる認証方式がない。
【0012】
【発明が解決しようとする課題】この発明の目的は、セ
キュリティが十分でないネットワーク上の被認証者装置
と認証者装置間で、被認証者装置の記憶しているパスワ
ードなどが認証されることにより、ユーザが要求するサ
ービス提供可否の判断を行い、ネットワーク上および認
証装置内に蓄積されているデータからユーザのパスワー
ドを盗取することができず、ネットワーク上を流れる認
証データが盗取された場合でも、そのデータを再利用で
きず、認証データが改ざんされてもすぐに感知でき、他
人のなりすましを防ぐことができる、安全な動的パスワ
ード認証方法と装置、およびその方法を記録した記録媒
体を提供することにある。
【0013】
【課題を解決するための手段】この発明は、正当な資格
を持つユーザのみが知りうるパスワードを用いて例えば
サービス提供の可否を行うため、資格のないユーザに対
してサービス提供の許可を与えることはない。また、ユ
ーザが秘密に保持しているパスワードに対し一方向性関
数が適用されたデータがネットワーク上を流れ、認証装
置に蓄積されるため、そのデータが盗取されたとしても
パスワードが露呈することはない。また、アクセス毎に
動的に乱数を発生させ、ユーザ端末装置においてその乱
数を利用して認証データを算出しており、第三者が認証
装置になりすまし、虚偽の乱数をユーザ端末に送り認証
データを得て、取得した認証データを用いて認証を受け
ようとした場合でも、第三者が真の認証装置へアクセス
する時には乱数値が異なるため正当なユーザとして認証
されることはない。また、正当なユーザのみ知りうるパ
スワードと乱数を用いて算出した認証データが改ざんさ
れたとしても認証装置でそれを検知することができる。
従来の技術とはリプレイアタックができなくなる点と改
ざんの検知が可能な点が異なる。また次回の認証子デー
タを、ユーザ端末から受信した正当性検証データを用い
て検証する点も従来と異なる。作用 認証処理のためのアクセス毎に乱数を生成しているた
め、ユーザ端末装置から送信されるデータを盗用するこ
とができず安全である。従って、第三者によるなりすま
しは不可能となり、認証装置あるいはサービス提供装置
は安全にサービスを提供することが可能となり、この発
明の目的である安全な認証を実現することができる。
【0014】
【発明の実施の形態】実施例1 以下にこの発明を適用した第1の実施例を示す。この実
施例では、図1に示すようなインターネット101に直
接接続されたユーザ端末装置A102あるいはモバイル
端末を利用したユーザ端末装置B103から、インター
ネットに直接接続された認証装置A104あるいはファ
イアウォール105を介してインターネット101に接
続されたイントラネット106内の認証装置B107と
の間でユーザ認証を行う場合を考える。ただし、ユーザ
端末装置Aおよびユーザ端末装置Bが直接インターネッ
トに接続できない場合は、インターネットサービスプロ
バイダを経由してもよいことは言うまでもない。また、
これはこの発明の特許請求の範囲を限定するものではな
く、端末そのものの利用許可を行う等、端末内に閉じた
認証にも適用できることは言うまでもない。
【0015】ユーザは予め認証装置において初期登録を
行う。初期登録として、ユーザは識別子Aとセッション
番号初期値N0 を認証装置にアカウントとして登録す
る。セッション番号初期値N0 はユーザ自身が生成して
もよいし、認証装置が自動生成してもよい。次にユーザ
は認証装置において、ユーザ識別子A、セッション番号
初期値N0 、秘密に保持しているパスワードSを用いて
以下の計算を行い、認証子データW0 を算出する。ただ
し、Eは一方向性関数を、(+)は排他的論理和を示
す。
【0016】 V0 =E(A,S(+)N0 ) (11) W0 =E(A,V0 ) (12) 算出した認証子データW0 をユーザ識別子Aに対応させ
認証装置内に登録する。図2は、n回目の認証における
認証処理手順を示す図である。あらかじめ、認証装置に
は、認証子データWn が登録されている(201)。ス
テップ202において、ユーザは、ユーザ端末装置を利
用して自分のアカウントが登録されている認証装置に対
し、要求するサービスリクエスト(要求)とユーザ識別
子Aを送信する。
【0017】ステップ203において、認証装置はユー
ザからのサービスリクエストを受信すると同時に受信し
たユーザ識別子Aに対応して登録してあるセッション番
号N n と認証回数nを取得する。次に、乱数rを生成
し、生成した乱数rをユーザ識別子Aに対応させ、一時
的に登録しておく。なお例えばセッション番号の初期値
0 に対し認証回数nを加算した値をセッション番号N
n とする場合のように、セッション番号Nn の値が認証
回数nから導出または算出できる場合は、認証回数nの
みを送信し、同様にセッション番号Nn のみで次のセッ
ション番号Nn+1を導出または算出できる場合は、セッ
ション番号Nn のみを送信すればよいことは言うまでも
ない。
【0018】ステップ204において取得したセッショ
ン番号Nn 、認証回数nおよび乱数rをユーザ端末装置
へ送信する。ステップ205において、ユーザ端末装置
は受信したセッション番号Nn 、認証回数n、乱数rお
よびユーザが入力したユーザ識別子AとパスワードSか
ら以下の手順により、認証データVn′,Wn+1′,
n′を算出する。 Vn =E(A,S(+)Nn) (13) Nn+1 =f(Nn ,n) (14) Vn+1 =E(A,S(+)Nn+1) (15) Wn+1 =E(A,Vn+1) (16) Mn =E(Wn+1 ,Vn) (17) Wn =E(A,Vn) (18) K=E(r,Wn) (19) Vn′=Vn(+) K (20) Wn+1′=Wn+1(+) K (21) Mn′=Mn(+) K (22) Vn は、認証装置において、前回正当性の検証を終え、
今回の認証に用いる一方向性関数の適用により得られる
認証子データWn の元となったと推定される被認証デー
タである。Wn+1 は、次回の認証に用いる一方向性関数
の適用により得られる認証子データである。Mnは次回
の認証に用いる認証子データWn+1の正当性を証明する
ためのデータである。Vn′,Wn+1′,Mn′はそれぞ
れVn ,Wn +1 ,Mn に対し、乱数rを一方向性関数に
より変換して得られた鍵データKと排他的論理和をとっ
たデータである。また、セッション番号Nn+1 の算出は
ユーザ端末装置と認証装置との間で予め決められた方法
で行う。例えば、予め用いる関数fを決めておき、N
n+1 =f(n,Nn )の演算を行うことにより実現でき
る。関数fはnとNn の加算、乗算など任意に決めるこ
とができる。
【0019】ステップ206において、ユーザ端末装置
は、ユーザ識別子Aとともに、認証データVn′,
n+1′,Mn′を認証装置へ送信する。ただし、ユーザ
端末装置と認証装置との間のコネクション(接続)が張
られたままである場合には、ユーザ識別子Aは送信しな
くともよいことは言うまでもない。ステップ207にお
いて、認証装置は、ユーザ端末装置より受信したユーザ
識別子Aと認証データVn′,Wn+1′,Mn′に対し以
下の認証処理を行う。
【0020】まず、ユーザ識別子Aに対応した乱数rと
認証子データWn を取得し、鍵データKを算出する。 K=E(r,Wn ) (23) 算出した鍵データKと受信した認証データVn′,
n+1′,Mn′と排他的論理和をとり、認証の基本的な
データをVn ,Wn+1 ,Mn を取得する。 Vn =Vn′(+)K (24) Wn+1 =Wn+1′(+)K (25) Mn =Mn′(+)K (26) 取得した被認証データVn に一方向性関数を適用した値
E(A,Vn )と登録されているWn と一致するかどう
か比較する。次に、次回の認証子データWn+1 に一方向
性関数を適用した値E(Wn+1 ,Vn )と受信したMn
を比較する。
【0021】ステップ208において、前記二つの比較
の結果が共に一致した場合、次回の認証子データWn+1
を正当とし、セッション番号と認証回数をインクリメン
トする。セッション番号Nn のインクリメントはNn+1
=f(Nn ,n)の演算によるか、ユーザ端末装置から
送信されたNn+1 を用いる。ステップ209において、
ユーザおよび次回の認証子データWn+1 が正当と判定さ
れた場合、ユーザが要求するサービスを開始する前記比
較が一方でも一致しない場合、演算した次回の認証子デ
ータWn+1 を廃棄し、不当なユーザとしてサービスを提
供しない。この実施例で用いる一方向性関数は、算出さ
れた値のみからでは元の値を算出できない関数のことで
ある。
【0022】この実施例では、HTTP(Hyper
Text Transfer Protocol)等に
見られるコネクションレス型の接続における認証の場合
も同様の処理で実現できることは言うまでもない。図3
は上記第1の実施例で使用されるユーザ端末装置の装置
構成を示したものである。ユーザ端末装置300は入力
部301、データ送受信部302、認証データ演算部3
06から構成されている。認証データ演算部306は、
排他的論理和演算部303、一方向性関数演算部30
4、セッション番号演算部305から構成されている。
ユーザは、入力部301よりユーザ識別子Aおよび秘密
に保持しているパスワードSを入力する。入力は、ユー
ザの記憶を基に、端末のキーボードから入力する方法
や、ICカード等の記憶媒体を用いて自動的に入力する
方法等がある。ただしこれらはこの発明の特許請求の範
囲を限定するものではない。データ送受信部302は、
認証装置との通信を行うためのインタフェースであり、
送信機能と受信機能が別々に存在してもよいことは言う
までもない。認証データ算出部306は、入力部301
で受け付けたデータとデータ送受信部302で受信した
データから認証データを算出するための演算処理を行
う。
【0023】図4は上記第1の実施例で使用される認証
装置の装置構成を示したものである。認証装置400
は、データ送受信部401、ユーザ情報管理部402、
サービス制御部407、認証処理部408から構成され
る。認証処理部408は、乱数生成部403、排他的論
理和演算部404、一方向性関数演算部405、比較部
406から構成される。データ送受信部401は、ユー
ザ端末装置と通信を行うためのインターフェースであ
り、送信機能と受信機能が別々に存在してもよいことは
言うまでもない。ユーザ情報管理部402はユーザ識別
子Aに対応して蓄積されているデータを提供、更新、登
録、削除する処理を行う。乱数生成部403は、ユーザ
端末装置からのサービスリクエスト毎に乱数rを生成す
る機能を有し、乱数rは、認証が成功するか、今回の認
証トランザクションが終了するまで有効となる。認証処
理部408は、ユーザ端末装置から受信した認証データ
の正当性を検証し、正当性が証明されると検証結果をサ
ービス制御部407に通知し、更新データをユーザ情報
管理部402へ送信する。サービス制御部407は、認
証処理部408での認証結果を受け、ユーザ端末装置と
の間でサービスを開始する。
【0024】図5は、第一の実施例で使用されるユーザ
端末装置における認証データ算出機能ブロック図を示し
ている。ユーザ端末装置における認証データ算出機能
は、入力部550、データ受信部560、データ送信部
570と認証データ演算部580から構成される。入力
部550には、ユーザ識別子A、パスワードS等を入力
する。サービスリクエストとしてサービス名が必要な場
合は、サービス名を入力し、データ送信部570より必
要なデータと共に送信されることは言うまでもない。
【0025】データ受信部560は、サービスリクエス
トにより認証装置から送信されたセッション番号Nn
認証回数n、乱数rを受信する。データ送信部570は
算出された認証データVn′,Wn+1′,Mn′を認証装
置へ送信する。入力されたパスワードSは、データ受信
部560において受信したセッション番号Nn と回路5
01で排他的論理和演算され、その演算結果はユーザ識
別子Aとともに演算器502で一方向性関数Eが適用さ
れ、被認証データVn が算出される。
【0026】データ受信部560において受信したセッ
ション番号Nn と認証回数nは演算器503で関数fが
適用され、次回用いるセッション番号Nn+1 が算出され
る。算出された次回のセッション番号Nn+1 とパスワー
ドSの排他的論理和が回路504でとられ、その算出さ
れた結果とユーザ識別子Aに一方向性関数Eが演算器5
05で適用され、次回の被認証データVn+1 が算出され
る。算出された次回の被認証データVn+1 とユーザ識別
子Aに対し、一方向性関数Eが演算器506で適用さ
れ、次回の認証子データWn+1 が算出される。
【0027】上記算出された被認証データVn と次回の
認証子データWn+1 に一方向性関数Eが演算器507で
適用され、次回の認証子データの正当性を検証する正当
性検証データMn が算出される。前記算出された被認証
データVn とユーザ識別子Aに一方向性関数Eが演算器
508で適用され、その算出された値Wn とデータ受信
部560において受信した乱数rに一方向性関数Eが演
算器509で適用されて鍵データKが算出される。
【0028】算出した鍵データKと被認証データVn
排他的論理和が回路510で算出されてVn+1′が得ら
れ、算出した鍵データKと次回の認証子データWn+1
排他的論理和が回路511で算出されてWn+1′ が得ら
れ、算出した鍵データKと正当性検証データMn の排他
的論理和が回路512で算出されてMn′が得られる。
算出した認証データVn′,Wn+1′,Mn′がデータ送
信部570より認証装置へ送信される。
【0029】なお、パスワードS、ユーザ識別子A、セ
ッション番号Nn を入力して被認証データVn 、次回認
証子データWn+1 、正当性検証データMn を出力する部
分は基本データ生成部520を構成し、演算器509は
鍵生成部を構成し、Vn ,W n+1 ,Mn とKを入力して
n′,Wn+1′,Mn′を出力する部分は秘匿部530
を構成する。図6は、第一の実施例で用いられる認証装
置における認証機能ブロック図を示している。
【0030】認証装置における認証機能は、ユーザ情報
管理部650、データ受信部660、サービス制御部6
70、認証処理部680から構成される。ユーザ端末装
置へサービスリクエストの応答としてセッション番号N
n、認証回数n、乱数rを送信した後、データ受信部6
60は、ユーザ端末装置から認証データVn′,
n+1′,Mn′を受信する。ユーザ情報管理部650か
ら取得した認証子データWn と乱数rに一方向性関数E
が演算器601で適用されて鍵データKが算出される。
算出された鍵データKと受信した認証データVn′,W
n+1′,Mn′と各排他的論理和が回路602,603,
604でとられ、それぞれ被認証データVn 、次回の認
証子データW n+1 、正当性検証データMn が算出され
る。
【0031】ユーザ情報管理部650より取得したユー
ザ識別子Aと算出した被認証データVn に一方向性関数
Eが演算器605で適用され、その演算結果とユーザ情
報管理部650より取得した認証子データWn とが比較
器606で比較される。ユーザ情報管理部650より取
得したユーザ識別子Aと算出した被認証データVn に一
方向性関数Eが演算器605で適用され、その演算結果
と算出した次回の認証子データWn+1 に一方向性関数E
が演算器607で適用され、その演算結果と算出した正
当性検証データMn とが比較器608で比較される。比
較器606及び608で共に一致が検出され、ユーザ端
末装置から受信したデータの正当性が証明されるとサー
ビス制御部670は、ユーザ端末装置から要求のあった
サービスの提供開始を許可する。
【0032】なお演算器601は鍵生成部を構成し、認
証データVn′,Wn+1′,Mn′と、鍵データKを入力
して、Vn ,Wn+1 ,Mn を出力する部分は秘匿解除部
620を構成している。図7は上記第1の実施例で使用
されるユーザ情報を示した例である。ユーザ情報701
は、識別子Ai (i=1,2,…)に対応して認証回数
i 、セッション番号Nn i、認証子データWn iが蓄積さ
れており、ユーザ端末装置からのサービスリクエストを
受信すると、乱数rを生成し、予め決められた時間、認
証が成功するまでの間、あるいは今回の認証トランザク
ションが終了するまでの間有効な値として記録される。
ユーザ情報702は識別子A′を受信しサービスリクエ
ストを受けた後、乱数r1 が識別子A1 に関連付けて記
録され、有効である場合のデータを示す。このデータは
ハードディスクなどの記録媒体に記録して管理してもよ
いし、メモリ上で管理してもよいことは言うまでもな
い。
【0033】この実施例では、計算に伴う負荷を軽減す
るためにも、一部演算に排他的論理和を用いているが、
排他的論理和の代わりに一方向性関数を用いてもよいこ
とは言うまでもない。 実施例2 以下にこの発明を適用した第2の実施例を説明する。こ
の例では被認証データVn 、認証子データWn 、正当性
検証データMn 、鍵データKの生成はそれぞれ異なる一
方向性関数E1 ,E2 ,E3 ,E4 を用い、また認証デ
ータVn′,Wn +1′,Mn′の生成を、排他的論理和演
算ではなく、一方向性関数E5を適応して行うようにし
た場合である。ただしこの実施例のように一方向性関数
として複数の関数を用いる場合、E1 ,E2 ,E3 ,E
4はハッシュ関数のような逆関数の存在しない一方向性
関数を用いることが可能であり、E5は逆関数の存在す
る関数を用いることは言うまでもない。
【0034】この例では初期登録時に、 V0 =E1 (A,S(+)N0 ) (27) W0 =E2 (A,V0 ) (28) を算出してV0 、W0 を識別子Aに対応させて認証装置
に登録する。またこの実施例ではセッション番号Nn
ら認証回数nを求めることができる場合であり、認証回
数nは認証装置に登録されない。従ってn回目の認証に
おける処理手順において、図8に示すように認証装置に
はAに対しNn とWn が登録されている(801)。
【0035】ステップ802でユーザが認証装置にサー
ビスリクエストとユーザ識別子Aを送信すると、認証装
置はステップ803でAに対応して登録されているセッ
ション番号Nn を取得し、乱数rを生成し、生成した乱
数rをユーザ識別子Aに対応させ、一時的に登録してお
き、ステップ804において取得したセッション番号N
n 、および乱数rをユーザ端末装置へ送信する。ステッ
プ805において、ユーザ端末装置は受信したセッショ
ン番号Nn 、乱数rおよびユーザが入力したユーザ識別
子AとパスワードSから以下の手順により、認証データ
n′,Wn+1′,Mn′を算出する。
【0036】 Vn =E1(A,S(+)Nn) (29) Nn+1 =q(Nn) (30) Vn+1 =E1(A,S(+)Nn+1) (31) Wn+1 =E2(A,Vn+1) (32) Mn =E3(Wn+1 ,Vn) (33) Wn =E2(A,Vn) (34) K=E4(r,Wn) (35) Vn′=E5(Vn ,K) (36) Wn+1′=E5(Wn+1 ,K) (37) Mn′=E5(Mn ,K) (38) q(Nn )はセッション番号Nn から次のセッション番
号Nn+1 を算出する関数であり、最も簡単なものは例え
ば、Nn+1=Nn+1である。認証データVn′,
n+1′,Mn′はそれぞれVn,Wn+1,Mnを鍵データ
Kと組にして一方向性関数E5を適用して得られたもの
である。
【0037】ステップ806において、ユーザ端末装置
は、ユーザ識別子Aとともに、認証データVn′,
n+1′,Mn′を認証装置へ送信する。ステップ807
において、認証装置は、ユーザ端末装置より受信したユ
ーザ識別子Aと認証データVn′,Wn+1′,Mn′に対
し以下の認証処理を行う。まず、ユーザ識別子Aに対応
した乱数rとWn を取得し、鍵データKを算出する。
【0038】 K=E5(r,Wn) (39) 算出した鍵データKと受信した認証データVn′,
n+1′,Mn′とをそれぞれ組みして、E5の逆関数E5
-1を適用して認証の基本的なデータVn ,Wn+1 ,M n
を取得する。 Vn =E5 -1(Vn′,K) (40) Wn+1=E5 -1(Wn+1′,K) (41) Mn =E5 -1(Mn′,K) (42) 取得した被認証データVn に一方向性関数E2 を適用し
た値E2 (A,Vn )と登録されているWn と一致する
かどうか比較する。次に、取得した次回の認証子データ
n+1に一方向性関数E3を適用した値E3(Wn+1
n)と受信したMnを比較する。
【0039】ステップ808において、二つの比較の結
果が共に一致した場合、次回の認証子データWn+1 を正
当とし、セッション番号をインクリメントする。以下の
処理は上記第1の実施例と同様である。図9は、第2の
実施例で使用されるデータ端末装置における認証データ
算出機能ブロック図を示している。ユーザ端末装置にお
ける認証データ算出機能は、入力部950、データ受信
部960、データ送信部970と認証データ演算部98
0から構成される。入力部950に入力されたパスワー
ドSは、データ受信部560において受信したセッショ
ン番号Nn と排他的論理和演算が回路901でとられ、
その結果はユーザ識別子Aとともに一方向性関数E1
演算器902で適用され、被認証データVnが算出され
る。
【0040】データ受信部960において受信したセッ
ション番号Nn はインクリメント回路903により、次
回用いるセッション番号Nn+1 に算出され、その算出さ
れた次回のセッション番号Nn+1 とパスワードSの排他
的論理和が回路904でとられ、その結果とユーザ識別
子Aに一方向性関数E1 が演算器905で適用されて次
回の被認証データVn+1 が算出される。算出された次回
の被認証データVn+1とユーザ識別子Aに対し一方向性
関数E2 が演算器906で適用されて、次回の認証デー
タWn+1 が算出される。
【0041】上記算出された被認証データVn と次回の
認証子データWn+1 に一方向性関数E3 が演算器907
で適用されて、次回の認証子データの正当性を検証する
正当性検証データMn が算出される。前記算出された被
認証データVn とユーザ識別子Aに一方向性関数E2
演算器908で適用され、その算出された値Wn とデー
タ受信部960において受信した乱数rに一方向性関数
4 が演算器909で適用されて鍵データKが算出され
る。
【0042】算出された鍵データKと被認証データVn
に一方向性関数E5 が演算器910で適用されて
n+1′が算出される。算出した鍵データKと次回の認
証子データWn+1 に一方向性関数E5 が演算器911で
適用されてWn+1′が算出される。算出した鍵データK
と正当性検証データMn に一方向性関数E5 が演算器9
12で適用されてMn′が算出される。図10は、第2
の実施例で用いられる認証装置における認証機能ブロッ
ク図を示している。
【0043】認証装置における認証機能は、ユーザ情報
管理部1050、データ受信部1060、サービス制御
部1070、認証処理部1081から構成される。ユー
ザ情報管理部1050から取得した認証子データWn
乱数rに一方向性関数E4 が演算器1001で適用され
て、鍵データKが算出される。算出された鍵データKと
受信した認証データVn′,Wn+1′,Mn′との各組に
5 の逆関数E5 -1 が演算器1002,1003,10
04で演算されて、それぞれ被認証データVn 、次回の
認証子データWn+1 、正当性検証データMn が算出され
る。
【0044】ユーザ情報管理部1050より取得したユ
ーザ識別子Aと算出した被認証データVn に一方向性関
数E2 が演算器1005で適用され、その演算結果とユ
ーザ情報管理部1050より取得した認証子データWn
とが比較器1006で比較される。ユーザ情報管理部1
050より取得したユーザ識別子Aと算出した被認証デ
ータVn に一方向性関数E2 が演算器1005で適用さ
れ、その結果、算出した次回の認証子データWn+1 に一
方向性関数E3 が演算器1007で適用され、その結果
と算出した正当性検証データMn とが比較器1008で
比較される。
【0045】以上、ユーザ端末装置から受信したデータ
の正当性が証明されるサービス制御部1070は、ユー
ザ端末装置から要求のあったサービスの提供開始を許可
する。このように、Vn ,Wn+1 ,Mn のそれぞれと鍵
データKとの組に対し、一方向性関数を適用すると、そ
れだけ安全性が向上する。しかし、演算量が増加する。
よってこの一方向性関数ES (S=1,2,…,5)の
演算やその逆関数ES -1の演算は専用のハードウェアで
行うことにより高速に処理させることができる。ハード
ウェア規模の増加を嫌う携帯端末ではなく、固定端末に
適する。
【0046】適当な期間経過するごとにパスワードSを
変更した方が、より安全性が高められる。例えばn回目
の認証時に、パスワードSをS′に変更する場合は、次
回の被認証データVn+1 の生成に対して新パスワードを
使用する。従って、例えば第1の実施例においてパスワ
ードを変更する場合の処理は図11に示すように、V n
の生成には今までのパスワードSを用い、Vn+1 の生成
には新パスワードS′を用いて NVn+1 =E(A,S′(+)Nn+1 ) を演算し、これに伴なって、Wn+1 は NWn+1 =E(A,NVn+1 ) となり、またMn は NMn =E(NWn+1 ,Vn ) となる。認証データ中のVn′は Vn′=Vn (+)K を生成し、今までのパスワードSと対応したものとする
が、Wn+1′,Mn′はそれぞれ NWn+1′=NWn+1 (+)K NMn′=NMn (+)K と新パスワードS′と関連したデータとする。これら認
証データVn′,NWn+1′,NMn′を認証装置へ送信
する。
【0047】認証装置における処理は先の場合と同様に
行われる。図11中に示すように、登録されているrと
n を用い、つまり今までのパスワードSと関連したW
n を用いて鍵データK=E(r,Wn )を生成する。従
って、正しければユーザ端末装置で生成した鍵データK
=E(r,Wn )と同一のものとなる。よってVn′,
NWn+1′,NMn ′のそれぞれとKとの排他的論理和
をとれば、Vn ,NWn +1 ,NMn が得られ、そのVn
とAに一方向性関数Eを適用した値E(A,Vn )とW
n と比較し、同様にE(NWn+1 ,Vn )とNMn を比
較し、両者とも一致すれば正当として、サービスの提供
を許可し、またNWn+1 を次回の認証子データとして登
録する。従って次回からはパスワードS′をVn ,V
n+1 の各生成に用いればよい。
【0048】このパスワードの変更は第2の実施例にも
同様に適用できることは容易に理解されよう。また図1
1に示した処理からパスワードを認証ごとに変更しても
よいことは容易に理解できる。この場合はユーザ端末装
置において認証データを作成する際に、常に前回用いた
パスワードと新たなパスワードとを入力することにな
る。ユーザ端末装置でセッション番号Nn を管理して、
認証データVn′,Wn+1′,Mn′を認証装置へ送信す
る際に次回のセッション番号Nn+1 も認証装置へ送信
し、認証装置でセッション番号を勝手に変更できないよ
うにすることもできる。更にセッション番号Nnは必ず
しもインクリメントする必要はなく、未使用の番号を使
用していればよい。また乱数rは予め決められた時間、
認証が成功するまでの間、あるいは1回の認証トランザ
クションが終了するまでの間記録し、その後は消去した
が、ログとして取っておくことにより、不正アクセスが
あったかどうかを見ることができるようにしてもよい。
また上述において、被認証データVnをE(A,S
(+)Nn)なる演算により求めたが、E(A,F
(S,Nn))(ここでFはSとNnを変数とする関数)
なる演算により求めてもよい。
【0049】図2に示した第1の実施例においても
n ,Wn ,Mn ,Kをそれぞれ生成する一方向性関数
を一部又は全部を互いに異ならせてもよい。図8に示し
た第2の実施例において、Vn ,Wn ,Mn ,K,
n′,Wn+1′,Mn′をそれぞれ生成する一方向性関
数E1 ,E2 ,E3 ,E4 ,E5 は全て、又は一部を同
一の一方向性関数としてもよい。ただし、Vn′,
n+1′,Mn′は共通鍵暗号方式のように逆関数が存在
する一方向性関数を用いる。
【0050】ユーザ端末装置、認証装置の何れも、コン
ピュータによりプログラムを実行させて機能させてもよ
い。図12を参照してユーザ端末装置をコンピュータに
より機能させる場合の例を説明する。CPU1210、
プログラム用RAM1220、ワーク用RAM123
0、コンピュータの基本動作プログラムが格納されたR
OM1240、入力部1250、送受信部1260、ハ
ードディスク1270がバス1280に接続されてい
る。動作させる前にハードディスク1270から、この
認証方法によりユーザ端末装置を機能させるためのプロ
グラムをプログラム用RAM1220に転送しておく。
入力部1250からユーザ識別子AやパスワードSが入
力されると、CPU1210内のメモリ、あるいはワー
ク用RAMに一時保存される。入力部1250を操作し
て認証要求を行うと認証要求を示すデータとユーザ識別
子Aからなる認証要求が、又はサービス要求操作をする
と自動的に前記認証要求が作成されて、送受信部126
0より認証装置へ送信される。その要求に基づき、認証
装置から乱数r、セッション番号Nn および/または認
証回数nが送受信部1260に受信されると、送受信部
1260の入出力インタフェース部を介して入力され、
CPU1210内のメモリ又はワーク用RAM1230
内に一時保存される。これに継ぎ、Vn ,Wn ,V
n+1 ,Wn+1 ,Mn の生成、更に認証データVn′,W
n+1′,Mn′が生成され、CPU1210によりRAM
1220内のプログラムを実行することにより行われ、
得られたVn′,Wn+1′,Mn′と識別子Aは認証装置
へ送信される。
【0051】なお前記この発明の認証方法におけるユー
ザ端末装置用プログラムは、例えばフレキシブルディス
ク1290に格納され、バス1280に接続された駆動
部1291を通じてプログラムを読出してもよい。また
プログラム用RAM1220のプログラムはCD−RO
Mから、あるいは伝送路を通じてインストールしてもよ
い。このプログラムの記録媒体としては上述したものに
限らず、ICメモリでもよい。
【0052】
【発明の効果】以上説明したように、この発明によれ
ば、送受信されるデータと認証装置内に蓄積されるデー
タが認証処理毎に異なり、認証データを盗用することが
不可能である。またネットワーク上を流れるデータまた
は認証装置内に蓄積されているデータを盗取されたとし
ても、パスワードそのものを取得することができないた
め、安全である。また、ネットワーク上を流れるデータ
がサービス不能攻撃等の目的で改ざんされたとしても容
易に検知可能である。
【0053】更に認証ごとに発生した乱数を用いた認証
データを算出しており、第三者が認証装置になりすま
し、虚偽の乱数をユーザ端末装置に送り認証データを得
て、取得した認証データを用いて認証を受けようとして
も第三者が真の認証装置へアクセスする時には乱数値が
異なるため、正当なユーザとして認証されることはな
い。
【図面の簡単な説明】
【図1】この発明が適用されるネットワーク構成例を示
す図。
【図2】この発明の第1の実施例の処理手順を示す図。
【図3】第1の実施例におけるユーザ端末装置の構成を
示す図。
【図4】第1の実施例における認証装置の構成を示す
図。
【図5】第1の実施例におけるユーザ端末装置中の認証
データ演算部の機能構成を示す図。
【図6】第1の実施例における認証装置中の認証処理部
の機能構成を示す図。
【図7】第1の実施例における認証装置内で管理される
ユーザ情報の例を示す図。
【図8】この発明の第2の実施例の処理手順を示す図。
【図9】第2の実施例におけるユーザ端末装置の認証デ
ータ演算部の機能構成を示す図。
【図10】第2の実施例における認証装置の認証処理部
の機能構成を示す図。
【図11】この発明においてパスワードを変更する場合
の手順の例を示す図。
【図12】ユーザ端末装置をコンピュータにより構成し
た場合の機能構成例を示す図。
フロントページの続き (72)発明者 高嶋 洋一 東京都千代田区大手町二丁目3番1号 日 本電信電話株式会社内 (72)発明者 佐野 睦夫 東京都千代田区大手町二丁目3番1号 日 本電信電話株式会社内 (72)発明者 曽根原 登 東京都千代田区大手町二丁目3番1号 日 本電信電話株式会社内 (72)発明者 鶴巻 宏治 東京都千代田区永田町二丁目11番1号 株 式会社エヌ・ティ・ティ・ドコモ内 (72)発明者 高橋 竜男 東京都千代田区永田町二丁目11番1号 株 式会社エヌ・ティ・ティ・ドコモ内 (72)発明者 関口 克己 東京都千代田区永田町二丁目11番1号 株 式会社エヌ・ティ・ティ・ドコモ内 (72)発明者 高橋 修 東京都千代田区永田町二丁目11番1号 株 式会社エヌ・ティ・ティ・ドコモ内 Fターム(参考) 5B085 AE03 AE23 AE29 5J104 AA07 AA16 EA03 EA08 GA05 KA01 KA21 NA00 NA01 NA05 NA11 PA07

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 認証を要求するユーザが利用するユーザ
    端末装置と、認証者の認証装置との間で認証処理を行う
    ための動的パスワード認証方法であり、以下のステップ
    を含む (a)初期登録として、前記ユーザがユーザ端末装置を
    用いて自分の識別子と、秘密に保持しているパスワード
    と、セッション番号初期値から次回の認証子データを算
    出し、ユーザ識別子に対応して前記認証子データと、前
    記セッション番号初期値および/または認証回数を前記
    認証装置に登録し、 (b)前記認証装置は、前記ユーザ端末装置から認証要
    求と、前記ユーザ識別子を受信すると、前記ユーザ識別
    子を基に前記ユーザの前記セッション番号および/また
    は前記認証回数を取得し、乱数を生成した後、前記乱数
    を仮登録し、前記乱数と、前記セッション番号および/
    または前記認証回数を前記ユーザ端末装置へ送信し、 (c)前記ユーザ端末装置はこれらを受信すると、前記
    ユーザ識別子と、受信した前記セッション番号および/
    または認証回数と秘密に保持している前記パスワードと
    を用いて今回の被認証データ、次回の認証子データ、次
    回の認証子データの正当性検証データを算出し、 前記ユーザ識別子と前記セッション番号および/または
    前記認証回数と、前記パスワードから認証装置に蓄積さ
    れている前記認証子データを算出し、その算出した認証
    子データと前記乱数から鍵データを算出し、 前記被認証データ、前記次回の認証子データ、前記正当
    性検証データのそれぞれと、前記鍵データとを用いてそ
    れぞれ算出した3つのデータよりなる認証データを求
    め、前記ユーザ識別子と前記認証データを前記認証装置
    へ送信し、 (d)前記認証装置では、前記認証データを受信する
    と、前記ユーザ識別子を基に前記ユーザの登録してある
    前記認証子データと前記乱数を用いて前記鍵データを算
    出し、算出した前記鍵データと受信した前記認証データ
    とから前記被認証データ、前記次回認証子データ、およ
    び、前記正当性検証データを算出し、前記ユーザ識別子
    と前記被認証データから認証子データを算出し、前記算
    出した認証子データと前記登録してある認証子データを
    比較し、前記被認証データと前記次回認証子データから
    正当性検証データを算出し、その正当性検証データと、
    共に算出した正当性検証データと比較し、 (e)これらの比較の結果が共に一致した場合、前記認
    証装置は前記ユーザを正当なユーザと認証し、前記算出
    した次回認証子データを登録してある前記認証子データ
    と置き換えて登録し、前記セッション番号および/また
    は前記認証回数を更新し、 前記比較の結果の一方でも一致しない場合は、前記ユー
    ザを不当とし登録してある前記認証子データと前記セッ
    ション番号をそのまま保持し、前記乱数を削除すること
    を特徴とする動的パスワード認証方法。
  2. 【請求項2】 請求項1記載の方法において、 前記ユーザの識別子をA、前記パスワードをS、排他的
    論理和を(+)、一方向性関数をE、F(a,b)を
    a,bを変数とする関数とし、 前記ステップ(a)においてセッション番号初期値をN
    0 として前記次回の認証子データW0 をE(A,E
    (A,F(S,N0 ))なる演算により算出した前記次
    回認証子データW0 と、前記セッション番号初期値N0
    および/または認証回数n=0を前記認証装置に登録
    し、 前記ステップ(b)で生成する前記乱数をrとし、 前記ステップ(c)において、前記今回の被認証データ
    n をVn =E(A,F(S,Nn ))なる演算により
    算出し、前記次回の認証子データWn+1 をWn+ 1 =E
    (A,E(A,F(S,Nn+1 ))なる演算により算出
    し、前記正当性検証データMn をMn =E(Wn+1 ,V
    n )なる演算により算出し、 前記認証子データWn をWn =E(A,Vn )なる演算
    により算出し、前記鍵データKをK=E(r,Wn )な
    る演算により算出し、 前記認証データVn′,Wn+1′,Mn′をそれぞれVn
    =Vn (+)K,Wn+ 1′=Wn+1(+)K,および、M
    n′=Mn (+)Kなる演算により算出し、 前記ステップ(d)において、登録してある前記認証子
    データWn と乱数rを用いて前記鍵データKをK=E
    (r,Wn )なる演算により算出し、前記鍵データKと
    受信した前記認証データVn′,Wn+1′,Mn′から前
    記被認証データVn をVn =Vn′(+)K、前記次回の
    認証子データWn+1 をWn+1 =Wn+1′(+)K、前記
    正当性検証データMn をMn =Mn′(+)Kなる各演
    算によりそれぞれ算出し、前記認証子データの算出はE
    (A,Vn )なる演算により行い、前記認証子データW
    n を比較し、前記正当性検証データの算出をE(W
    n+1 ,V n )なる演算で行い、この結果と前記Mn =M
    n′(+)Kとにより前記比較を行い、 前記ステップ(e)において、前記認証子データの前記
    次回の認証子データによる置き換え登録はWn をWn+1
    で置き換えて登録することであり、また前記セッション
    番号および/または前記認証回数の更新はNnおよび/
    またはnを更新することであることを特徴とする動的パ
    スワード認証方法。
  3. 【請求項3】 請求項1記載の方法において、 前記ユーザの識別子をA、前記パスワードをS、一方向
    性関数をE、Eの逆関数をE-1、F(a,b)をa,b
    を変数とする関数とし、 前記ステップ(a)においてセッション番号初期値をN
    0 として前記次回の認証子データW0 をE(A,E
    (A,F(S,N0 ))なる演算で算出し、前記次回認
    証子データW0 と、前記セッション番号初期値N0 およ
    び/または認証回数n=0を前記認証装置に登録し、 前記ステップ(b)で生成する前記乱数をrとし、 前記ステップ(c)において、前記今回の被認証データ
    n をVn =E(A,F(S,Nn ))なる演算により
    算出し、前記次回の認証子データWn+1 をWn+ 1 =E
    (A,E(A,F(S,Nn+1 ))なる演算により算出
    し、前記正当性検証データMnをMn =E(Wn+1 ,
    n )なる演算により算出し、 前記認証子データWnをWn =E(A,Vn )なる演算に
    より算出し、前記鍵データKをK=E(r,Wn )なる
    演算により算出し、 前記認証データVn′,Wn+1′,Mn′をそれぞれVn
    =E(K,Vn)′Wn +1′=E(K,Wn+1 )および、
    n′=E(Mn ,K)なる演算により算出し、 前記ステップ(d)において、登録してある前記認証子
    データWn と前記乱数rを用いて前記鍵データKをK=
    E(r,Wn )なる演算により算出し、前記鍵データK
    と受信した前記認証データVn′,Wn+1′,Mn′から
    前記被認証データVn をVn =E-1(Vn′,K)、前
    記次回の認証子データWn+1 をWn+1 =E
    -1(Wn+1′,K)および、前記正当性検証データMn
    をMn =E-1(Mn′,K)なる各演算によりそれぞれ
    算出し、前記認証子データの算出はE(A,Vn)なる
    演算により行い、前記認証子データWn を比較し、前記
    正当性検証データの算出をE(Wn+1 ,Vn )なる演算
    により行い、この結果と前記Mn =E-1(Mn′,K)
    とにより前記比較を行い、 前記ステップ(e)において、前記認証子データの前記
    次回の認証子データによる置き換えはWn をWn+1 で置
    き換える登録であることを特徴とする動的パスワード認
    証方法。
  4. 【請求項4】 請求項1乃至3の何れかに記載の方法に
    おいて、 前記ユーザがパスワードを更新する際には、前記ステッ
    プ(c)において、前記ユーザ端末装置は、前記ユーザ
    識別子と前記セッション番号および/または認証回数と
    いままでのパスワードとを用いて今回の被認証データを
    算出し、前記ユーザ識別子と前記セッション番号および
    /または認証回数と新しいパスワードを用いて次回の認
    証子データを算出し、前記被認証データと前記新パスワ
    ードを用いて算出した認証子データを用いて、次回用い
    る認証子データの正当性検証データを算出し、これら被
    認証データ、次回の認証子データ、および、正当性検証
    データと前記鍵データとをそれぞれ用いて認証データを
    算出し、次回より全て前記新パスワードを用いることを
    特徴とする動的パスワード認証方法。
  5. 【請求項5】 請求項4記載の方法において、 前記ユーザ識別子をA、前記セッション番号をNn 、前
    記いままでのパスワードをS、前記新パスワードを
    S′、一方向性関数をE、a,bを変数とする関数をF
    (a,b)をとして、 前記今回の被認証データVn をVn =E(A,F(S,
    n ))なる演算により算出し、前記次回の認証子デー
    タWn+1 をWn+1 =E(A,E(A,F(S′,N
    n+1 ))なる演算により算出し、前記正当性検証データ
    n をMn+1 =E(Wn+1 ,Vn )なる演算により算出
    することを特徴とする動的パスワード認証方法。
  6. 【請求項6】 請求項2、3又は5記載の方法におい
    て、 排他的論理和を(+)として、 前記演算E(A,E(A,F(S,N0))はE(A,
    E)(A,S(+)N0)であり、 前記演算Vn=E(A,F(S,Nn))はVn=E
    (A,S(+)Nn))であり、前記演算Wn+1=E
    (A,E(A,F(S,Nn+1))はWn+1=E(A,E
    (A,S(+)Nn+1))であり、 前記演算Wn+1=E(A,E(A,F(S′,Nn+1))
    はWn+1=E(A,E(A,S′(+)Nn+1))である
    ことを特徴とする動的パスワード認証方法。
  7. 【請求項7】 請求項2、3、5又は6記載の方法にお
    いて、 被認証データVn 、認証子データWn 、正当性検証デー
    タMn 、鍵データKをそれぞれ生成する各一方向性関数
    は、その少くとも一つは他と異なるものであることを特
    徴とする動的パスワード認証方法。
  8. 【請求項8】 認証者にユーザの認証を要求するために
    ユーザが利用するユーザ端末装置であって、 ユーザの識別子、秘密に保持しているパスワードを入力
    する入力部と、 前記認証者の認証装置と送受信する送受信手段と、 前記ユーザ識別子と認証要求を前記送受信部より上記認
    証装置へ送信する手段と、 前記入力部よりの前記ユーザ識別子、前記パスワード、
    前記送受信部より前記認証装置から受信したセッション
    番号が入力されて、今回の被認証データ、次回の認証子
    データ、次回の認証子データの正当性検証データ、今回
    の認証子データを算出して出力する基本データ生成手段
    と、 前記今回の認証子データと前記送受信部よりの前記認証
    装置から受信した乱数が入力され、鍵データを算出する
    鍵生成手段と、 前記被認証データ、前記次回の認証子データ、前記正当
    性検証データ、および、前記鍵データが入力され、前記
    被認証データ、前記次回の認証子データ、前記正当性検
    証データに秘匿演算を行って認証データを出力するデー
    タ秘匿手段と、前記ユーザ識別子と前記認証データを前
    記送受信部より前記認証装置へ送信する手段とを具備す
    るユーザ端末装置。
  9. 【請求項9】 請求項8記載の装置において、 前記ユーザ識別子をA、前記パスワードをS、前記乱数
    をr、前記セッション番号をNn 、排他的論理和を
    (+)、一方向性関数をEとして、 前記基本データ生成手段は前記今回の被認証データVn
    としてE(A,S(+)Nn )を演算し、前記今回の認
    証子データWn としてE(A,Vn )を演算し、 前記次回の認証子データWn+1 としてE(A,E(A,
    S(+)Nn+1 ))を演算し、前記正当性検証データM
    n としてE(Wn+1 ,Vn )を演算するものであり、 前記鍵生成部は鍵データKとしてE(r,Wn )を演算
    するものであり、 前記秘匿部は前記認証データVn′,Wn+1′,Mn′と
    してそれぞれVn (+)K,Wn+1 (+)K,M
    n (+)Kを演算するものであることを特徴とするユー
    ザ端末装置。
  10. 【請求項10】 請求項8記載の装置において、 前記ユーザ識別子をA、前記パスワードをS、前記乱数
    をr、前記セッション番号をNn 、排他的論理和を
    (+)、一方向性関数をEとして、 前記基本データ生成手段は、 前記今回の被認証データVn としてE(A,S(+)N
    n )を演算し、前記今回の認証子データWn としてE
    (A,Vn )を演算し、前記次回の認証子データWn+1
    としてE(A,E(A,S(+)Nn+1 ))を演算し、
    前記正当性検証データMn としてE(Wn+1 ,Vn )を
    演算するものであり、 前記鍵生成部は鍵データKとしてE(r,Wn )を演算
    するものであり、 前記秘匿部は前記認証データVn′,Wn+1′,Mn′と
    してそれぞれE(Vn,K),E(Wn+1 ,K),E
    (Mn ,K)を演算するものであることを特徴とするユ
    ーザ端末装置。
  11. 【請求項11】 ユーザ端末装置から要求に応じてユー
    ザの正当性を認証する認証装置であって、 前記ユーザ端末装置と送受信する送受信手段と、 ユーザ識別子に対応して認証子データとセッション番号
    を記憶するユーザ情報管理手段と、 乱数を生成する乱数生成手段と、 前記ユーザ端末装置からの認証要求とユーザ識別子を前
    記送受信部に受信すると、前記受信したユーザ識別子か
    ら、前記ユーザ情報管理部内のセッション番号を取出
    し、前記乱数生成部で乱数を生成し、その乱数と前記セ
    ッション番号を前記送受信部より前記ユーザ端末装置へ
    送信する手段と、 前記ユーザ端末装置からのユーザ識別子と認証データを
    前記送受信部に受信すると、前記認証子データと乱数を
    前記ユーザ情報管理部から入力して、鍵データを算出し
    て出力する鍵生成手段と、 前記鍵データと前記受信した認証データを入力して、認
    証データに対し秘匿解除演算を行って被認証データと、
    次回認証子データと、正当性検証データを出力する秘匿
    解除手段と、 前記ユーザ識別子と、前記被認証データを入力して、前
    記認証子データの生成と同様な演算を行って受信認証子
    データを出力する手段と、 前記受信認証子データと前記ユーザ情報管理部の認証子
    データとを入力して比較する第1比較手段と、 前記被認証データと前記次回の認証子データとを入力し
    て、受信正当性検証データを演算出力する手段と、 前記受信正当性検証データと前記正当性検証データを入
    力して比較する第2比較手段と、 前記第1比較手段及び前記第2比較手段の各一致出力が
    入力されると前記ユーザの正当性を認める信号が出力さ
    れ、前記ユーザ情報管理部に記憶されている認証子デー
    タを前記次回の認証子データで更新し、かつ前記セッシ
    ョン番号をインクリメントする手段とを具備する認証装
    置。
  12. 【請求項12】 請求項11記載の装置において、 前記ユーザ識別子をA、前記認証子データをWn 、前記
    乱数をr、排他的論理和を(+)、一方向性関数をEと
    して、 前記鍵生成手段はE(r,Wn )を演算して前記鍵デー
    タKを出力するものであり、 前記秘匿解除手段は認証データVn′,Wn+1′,Mn
    に対して前記秘匿解除演算としてVn =Vn′(+)
    K,Wn+1 =Wn+1′(+)K,Mn =Mn′(+)Kを
    演算するものであり、 前記認証子データの生成と同様な演算はE(A,Vn
    なる演算であり、 前記受信正当性検証データを求める演算はE(Wn+1
    n )なる演算であることを特徴とする認証装置。
  13. 【請求項13】 請求項11記載の装置において、 前記ユーザ識別子をA、前記認証子データをWn 、前記
    乱数をr、排他的論理和を(+)、一方向性関数をE、
    その逆関数をE-1として、 前記鍵生成手段はE(r,Wn )を演算して前記鍵デー
    タKを出力するものであり、 前記秘匿解除手段は前記秘匿解除演算として前記受信認
    証データVn′,Wn+1′,Mn′に対し、それぞれVn
    =E-1(Vn′,K),Wn+1 =E-1(Wn+1′,K),
    n =E-1(Mn′,K)を演算するものであり、 前記認証子データの生成と同様な演算はE(A,Vn
    なる演算であり、 前記受信正当性検証データを求める演算はE(Wn+1
    n )なる演算であることを特徴とする認証装置。
  14. 【請求項14】 認証者にユーザの認証を要求するため
    にユーザが利用するユーザ端末装置のコンピュータに、 ユーザ識別子、秘密に保持しているパスワードが入力さ
    れると一時保存する処理と、 前記認証者の認証装置に前記ユーザ識別子と認証要求と
    を送信する処理と、 前記認証装置より送信されたセッション番号、乱数を受
    信し、一時保存する処理と、 前記ユーザ識別子、前記パスワード、前記セッション番
    号を用いて、今回の被認証データ、次回の認証子デー
    タ、正当性検証データ、今回の認証子データを算出する
    基本データ生成処理と、 前記今回の認証子データと前記乱数を用いて鍵データを
    生成する処理と、 前記今回の被認証データ、前記次回の認証子データ、前
    記正当性検証データに対し前記鍵データを用いて秘匿演
    算を行って認証データを得る処理と、 前記認証データと前記ユーザ識別子を前記認証装置へ送
    信する処理とを実行させるプログラムを記録した記録媒
    体。
  15. 【請求項15】 請求項14記載の記録媒体において、 前記ユーザ識別子をA、前記パスワードをS、前記乱数
    をr、前記セッション番号をNn 、排他的論理和を
    (+)、一方向性関数をEとして、 前記基本データ生成処理は、前記今回の被認証データV
    n を、E(A,S(+)Nn )を演算して、前記次回の
    認証子データWn+1 を、E(A,E(A,S(+)N
    n+1 ))を演算して、前記正当性検証データMn を、E
    (Wn+1 ,Vn )を演算して、前記今回の認証子データ
    n を、E(A,Vn )を演算して求める処理であり、 前記鍵データKの生成処理はK=E(r,Wn )を演算
    して求める処理であり、 前記秘匿演算はVn′=Vn (+)K,Wn+1′=W
    n (+)K,Mn′=Mn(+)Kなる演算であることを
    特徴とする記録媒体。
JP2000178167A 2000-06-14 2000-06-14 動的パスワード認証方法、装置およびその方法を記録した記録媒体 Pending JP2001357018A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000178167A JP2001357018A (ja) 2000-06-14 2000-06-14 動的パスワード認証方法、装置およびその方法を記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000178167A JP2001357018A (ja) 2000-06-14 2000-06-14 動的パスワード認証方法、装置およびその方法を記録した記録媒体

Publications (1)

Publication Number Publication Date
JP2001357018A true JP2001357018A (ja) 2001-12-26

Family

ID=18679637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000178167A Pending JP2001357018A (ja) 2000-06-14 2000-06-14 動的パスワード認証方法、装置およびその方法を記録した記録媒体

Country Status (1)

Country Link
JP (1) JP2001357018A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004102875A1 (fr) * 2003-05-16 2004-11-25 Huawei Technologies Co., Ltd. Procede d'authentification de donnees par paquets transferes a grande vitesse
KR101244853B1 (ko) 2012-12-13 2013-03-18 정진원 난수발생에 의한 사용자 통합 인증방법
KR101305901B1 (ko) * 2012-07-06 2013-09-11 주식회사 더존넥스트 인증 방법 및 시스템
JP6093102B1 (ja) * 2016-08-22 2017-03-08 パスロジ株式会社 認証システム、ならびに、プログラム
JP2018032369A (ja) * 2017-02-09 2018-03-01 パスロジ株式会社 認証システム、ならびに、プログラム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004102875A1 (fr) * 2003-05-16 2004-11-25 Huawei Technologies Co., Ltd. Procede d'authentification de donnees par paquets transferes a grande vitesse
US7515906B2 (en) 2003-05-16 2009-04-07 Huawei Technologies Co., Ltd. Method of implementing authentication of high-rate packet data services
KR101305901B1 (ko) * 2012-07-06 2013-09-11 주식회사 더존넥스트 인증 방법 및 시스템
KR101244853B1 (ko) 2012-12-13 2013-03-18 정진원 난수발생에 의한 사용자 통합 인증방법
JP6093102B1 (ja) * 2016-08-22 2017-03-08 パスロジ株式会社 認証システム、ならびに、プログラム
WO2018037453A1 (ja) * 2016-08-22 2018-03-01 パスロジ株式会社 認証システム、ならびに、情報記録媒体
CN109416713A (zh) * 2016-08-22 2019-03-01 帕斯罗基株式会社 验证系统和非暂态信息记录介质
CN109416713B (zh) * 2016-08-22 2021-06-29 帕斯罗基株式会社 验证系统和非暂态信息记录介质
US11113377B2 (en) 2016-08-22 2021-09-07 Passlogy, Co., Ltd. Authentication system, and information recording medium
JP2018032369A (ja) * 2017-02-09 2018-03-01 パスロジ株式会社 認証システム、ならびに、プログラム

Similar Documents

Publication Publication Date Title
US8627424B1 (en) Device bound OTP generation
US7194765B2 (en) Challenge-response user authentication
CN109729523B (zh) 一种终端联网认证的方法和装置
JP4790731B2 (ja) 派生シード
US8775794B2 (en) System and method for end to end encryption
JP2000222360A (ja) 認証方法、認証システム及び認証処理プログラム記録媒体
CN112565205B (zh) 可信认证和度量方法、服务器、终端及可读存储介质
CN106789032B (zh) 服务器与移动设备间秘密共享的单一口令三方认证方法
CN112989426B (zh) 授权认证方法及装置、资源访问令牌的获取方法
JP3362780B2 (ja) 通信システムにおける認証方法、センタ装置、認証プログラムを記録した記録媒体
CN112383401B (zh) 一种提供身份鉴别服务的用户名生成方法及系统
KR20210003066A (ko) 생체 정보 기반의 pki 키 생성 방법 및 이를 이용한 키 생성 장치
CN107347073B (zh) 一种资源信息处理方法
CN113569210A (zh) 分布式身份认证方法、设备访问方法及装置
JP2001357018A (ja) 動的パスワード認証方法、装置およびその方法を記録した記録媒体
CN115955320A (zh) 一种视频会议身份认证方法
JP3791169B2 (ja) 認証装置および方法
Soni et al. Provably secure and biometric-based secure access of E-Governance services using mobile devices
KR100986980B1 (ko) 생체 인증 방법, 클라이언트 및 서버
JP2002132722A (ja) 代行認証方法、その各装置、その装置の処理方法、及びプログラム記録媒体
Mehra et al. Remote user authentication and issues: a survey
JP4440513B2 (ja) 資格認証方法
CN116866093B (zh) 身份认证方法、身份认证设备以及可读存储介质
JP7403430B2 (ja) 認証装置、認証方法及び認証プログラム
KR101737925B1 (ko) 도전-응답 기반의 사용자 인증 방법 및 시스템