再生成まで 6s · RFC 6238 TOTP · ローカルで計算 - シークレットがブラウザの外に出ることはありません。
機能の説明
Base32 シークレットから時間ベースのワンタイムパスワード(TOTP、RFC 6238)を生成します - 2FA 用に認証アプリが使うのと同じアルゴリズムです。アルゴリズム(SHA1、SHA256、SHA512)、桁数(6 または 8)、期間(秒)はすべて調整可能です。プログレスバーが期間の経過とともに減っていき、空になると新しいコードが現れます。表示は毎秒更新されます。
使い方
- 2FA セットアップの Base32 secret を入力します -
otpauth://QR コードの背後にある文字列です。 - アルゴリズム、桁数、期間を、サービスに設定された値と合わせます。デフォルト(SHA1、6 桁、30 秒)はほとんどのサービスに一致します。
- プログレスバーを見ながら、コードが有効なうちにコピーします。
大きな表示は読みやすさのために細いスペースで桁を区切ります(123 456)が、Copy は生の数字を取ります(123456)。貼り付けが壊れることはありません。共有リンクにはシークレットとすべてのオプションがエンコードされます - 中のシークレットがあなたのアカウントを開けるため、パスワードと同じように扱ってください。
例
- シークレット
JBSWY3DPEHPK3PXP、SHA1、6 桁、30 秒:30 秒ごとに再生成されるローリング 6 桁コード。 - Base32 ではない文字列(小文字、スペース、場所を間違えた
0や1)は、コードの代わりにInvalid Base32 secret.を表示します。
TOTP の仕組み
TOTP コードは、時間をキーにした
HMACHMACA construction that combines a hash function with a secret key to prove a message is intact and came from someone holding the key.
です。あなたのアプリとサーバーは同じシークレットを保持し、同じ時計を読みます。この 2 つの入力から、両者が同じ短い数字を導出します。シークレットがネットワークを渡るのはセットアップ時の一度きりで、それ以降は決してありません。レシピを順を追って:
T = floor(unix_time / period) # 30 s steps: T advances every 30 s
mac = HMAC(secret, T as 8 big-endian bytes) # SHA1, SHA256, or SHA512
off = last byte of mac, low 4 bits # an offset (0..15) into the digest
num = 4 bytes at that offset, top bit cleared, mod 10^digits
code = num, zero-padded to the digit count
- コードが失効する理由。 期間が経過すると
Tが変わり、HMACHMACA construction that combines a hash function with a secret key to prove a message is intact and came from someone holding the key.
の入力が変わり、コードが変わります。古いコードを削除するものは何もありません。新しい瞬間が、単に新しい数字へハッシュされるだけです。 - 時計のズレがログインを壊す理由。 サーバーは通常、現在のステープ ± 1 のコードを受け付けます。それ以上ズレると、サーバーが拒否するステップのコードを計算することになります。
- シークレットが Base32 である理由。 Base32 は A-Z と 2-7 だけを使います:小文字なし、
0なし、1なし、紛らわしいペアなし。QR コードのフォールバックからセットアップキーを打ち直しても、曖昧さがありません。
補足事項
- プライベート: シークレットはコードの計算にのみローカルで使われます - ブラウザーの外に出ることはありません。
- このツールはコードを生成しますが、金庫ではありません。本当のシークレットはパスワードマネージャーに保管してください。
- 8 桁と SHA256/SHA512 は、それらを要求するサービスのために存在します(RFC 6238 は 3 つのアルゴリズムすべてを許容しています)。ほとんどのサービスはデフォルトを使います。
- 関連ツール: Password Strength Analyser、
HMACHMACA construction that combines a hash function with a secret key to prove a message is intact and came from someone holding the key.
Generator、Password Generator。