数学的アルゴリズムを用いるワンタイムパスワードの実装
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/10/04 21:22 UTC 版)
「ワンタイムパスワード」の記事における「数学的アルゴリズムを用いるワンタイムパスワードの実装」の解説
詳細は「ハッシュチェイン」を参照 一つめのアプローチは、レスリー・ランポートが考案した一方向性関数を用いたものである。一方向性関数 fを用いたワンタイムパスワードシステムは、初期シードsを与えることで機能しはじめ、以下の式のように、一方向性関数 f を繰り返し適用することで必要個数のパスワードを生成する。 f ( s ) , f ( f ( s ) ) , f ( f ( f ( s ) ) ) , . . . , f ( f ( . . . f ( s ) ) . . . ) {\displaystyle f(s),f(f(s)),f(f(f(s))),...,f(f(...f(s))...)} 作成したパスワードは、生成順とは逆に使っていく。 f ( f ( . . . f ( s ) ) . . . ) , . . . , f ( f ( f ( s ) ) ) , f ( f ( s ) ) , f ( s ) {\displaystyle f(f(...f(s))...),...,f(f(f(s))),f(f(s)),f(s)} 無限に連続するパスワードが必要な場合は、シードsに対するパスワードの組を使い切った後で新しいシード値が選ぶ。 もしも、侵入者に生成したパスワードを知られてしまった場合、侵入者はそのパスワードを用いて一定期間の間アクセスやログインをすることができる。しかし、各パスワードについて有効期限を定めておけば、侵入者は有効期限内にしかアクセスやログインを行えない。逆関数 f − 1 {\displaystyle f^{-1}\,} を計算すれば、以前のパスワードから一連のパスワードの中で次に有効なものを入手できるが、関数 f {\displaystyle f\,} に暗号ハッシュ関数を用いれば、逆関数の算出は実用的には不可能である。
※この「数学的アルゴリズムを用いるワンタイムパスワードの実装」の解説は、「ワンタイムパスワード」の解説の一部です。
「数学的アルゴリズムを用いるワンタイムパスワードの実装」を含む「ワンタイムパスワード」の記事については、「ワンタイムパスワード」の概要を参照ください。
- 数学的アルゴリズムを用いるワンタイムパスワードの実装のページへのリンク