ワンタイムパスワードについて

ワンタイムパスワード (認証コードと呼ばれることもあります) は、数桁の数字から構成されます。次のようなパラメータを基に算出されます。

  • アカウント発行元 (認証サーバー) とユーザーのみが知っている共有シークレット鍵。
  • アカウント発行元固有の設定値。
  • カウンター。

ワンタイムパスワードによる認証では、特定のカウンター値に基づき生成されるパスワードを認証サーバーに提示します。「認証」は、認証サーバーと同じルールを用いてカウンター値を決定するため、認証サーバーでワンタイムパスワードが許可されます。

認証では、タイムベースまたはカウンターベースのワンタイムパスワードを使用できます。カウンター値の算出方法は、それぞれの方式で異なります。

  • タイムベースのワンタイムパスワード (TOTP、RFC 6238 に準拠): カウンターの数値は、一定の時間が経過すると更新されます。次回の検証コードは、一定の時間が経過すると生成されます。
  • カウンターベースのワンタイムパスワード (HOTP、RFC 4226 に準拠): カウンターの数値は、オンデマンドで更新されます。次回の検証コードは、ユーザーが認証を要求すると生成されます。