HOTP 【HMAC-based One-Time Password】

概要

HOTP(HMAC-based One-Time Password)とは、ワンタイムパスワード(OTP)の生成手法の標準の一つで、秘密鍵ログイン試行回数からハッシュ値を求め、これを6桁程度の数字に変換してパスワードとする方式。

ワンタイムパスワードパスワード認証の一種で、毎回異なるその場限りの数字や文字列を用いて認証う方式である。通常は4~6桁程度の数字を用い、固定のパスワードなど他の認証方式と組み合わせて二段階認証を構成する。

HOTPはワンタイムパスワードの生成方式の一つで、利用者の操作するクライアントはが「HMAC」(Hash-based Message Authentication Code)と呼ばれる認証コード認証サーバに送信する。HMACの生成に用いられる情報は、サーバクライアントの間であらかじめ共有された秘密鍵と、現在までの通算認証試行回数(カウンタ)の2つである。

クライアント秘密鍵と現在のカウンタを組み合わせてハッシュ関数SHA-1にかけ、160ビット20バイト)のハッシュ値を得る。これを一定の計算手法で6桁以上(桁数はシステム側であらかじめ決めておく)の数字に変換し、サーバに送信する。

サーバも同じ秘密鍵カウンタを持つため、同様の計算をってが一致すれば認証成功となる。認証を実施するたびにサーバクライアントカウンタを1増やし、次回の認証は新しいカウンタに基づいてう。秘密鍵は同じだがカウンタは毎回異なるため、生成される数字も毎回異なる。

HOTPの仕様は業界団体のOATH(Initiative For Open Authentication)によって考案され、2005年にIETFによってRFC 4226として標準化された。同様にHMACを用いるが、認証回数ではなく認証を有効にしてからの経過時間に基づいてOTPを生成する方式を「TOTP」(Time-based One-Time Password)という。

(2023.3.2更新)
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる