TOTP コード生成器
開発
TOTP(Time-based One-Time Password、RFC 6238)は Google 認証システム・Authy・1Password・大半の企業向け多要素認証の基盤となる標準アルゴリズムです。2FA 設定時にサービスが提示した Base32 シークレット(QR コードに埋め込まれているのと同じ文字列)を貼り付けると、本ツールは現在の 6 桁コード、次回ローテーションまでの残り秒数を示すカウントダウンリング、そして次のコードを表示します。桁数(6/7/8)、周期(15/30/60/120 秒)、HMAC ハッシュ(SHA-1・SHA-256・SHA-512)はサービスに合わせて変更でき、既定値は Google 認証システム仕様と一致します。すべての計算はブラウザの Web Crypto API で行われ、シークレットがネットワークへ送信されることはありません。自分の 2FA 設定のテスト、自身が管理するシークレットからのコード復旧、認証フロー開発・デバッグ用途であり、自分のものでないアカウントの認証回避には使えません。
—
使い方
- Base32 シークレット(設定画面で表示される長い文字列)をシークレット欄に貼り付けます。空白とハイフンは無視されます。
- 桁数・周期・アルゴリズムをサービスの設定に合わせます。Google 認証システム既定は 6 桁 / 30 秒 / SHA-1。
- 現在のコードをクリックするとコピーされます。カウントダウンリングが 0 近くなら『次のコード』を確認し、どちらを使うか判断します。
- コードが拒否される場合は端末時計の同期を確認 — TOTP は Unix 時刻が秒単位で正しいことを前提とします。
よくある質問
- 安全?シークレットが送信されることは?
- ブラウザ外には出ません。Base32 デコードも HMAC-SHA 計算も Web Crypto API で端末内で実行されます。ネットワークタブで確認できます。ただし TOTP シークレットはパスワード同様の機密情報なので、信頼できるツールにのみ貼り付け、シークレットが映るスクリーンショットは共有しないでください。
- どの設定を選ぶ?
- 既定値(6 桁・30 秒・SHA-1)は Google 認証システム仕様と同じで多くのサービスで動きます。一部の銀行・企業システムは 8 桁・60 秒・SHA-256/512 を使い、設定説明や otpauth:// URI に記載されています。パラメータがずれると無言で誤コードを返します。
- コードが拒否されます — 何が悪い?
- 最も多い原因は時計のずれです。TOTP は端末の Unix 時刻を使うので 30 秒以上ずれていると常に失敗します。時計を同期してください(多くの OS は自動 — NTP 設定を確認)。他の原因:桁数・周期・アルゴリズムの不一致、シークレット文字の欠落/余分、別アカウントのシークレット。
- TOTP と HOTP の違いは?
- HOTP(RFC 4226)は『次のコード』を押すたびにカウンタが増え、サーバとの同期が必要です。TOTP(RFC 6238)はカウンタの代わりに『現在 Unix 時刻 ÷ 周期』を使うのでコードが自動回転します。現代の 2FA はほぼ TOTP です。
- QR コードや otpauth:// URI を読み込める?
- 本ツールでは Base32 シークレットを直接貼り付ける形式です。otpauth:// URI なら『secret=』の後ろの値がシークレット。QR 画像しかない場合はまず別のデコーダで読み取り、シークレットだけここに貼り付けてください。
関連ツール
JWT デコーダー
JWT のヘッダー・クレーム・有効期限を即座に確認。
開発00
UUID ジェネレーター
ランダムなバージョン 4 UUID をまとめて生成し、コピー。
開発00
ハッシュ生成 (SHA)
テキストから SHA-1・SHA-256・SHA-384・SHA-512 ハッシュを生成。
開発00
URL エンコーダー / デコーダー
URL 用にテキストをパーセントエンコード、または URL をデコード。
開発00
Base64 エンコーダー / デコーダー
テキストを Base64 にエンコード、または Base64 をテキストにデコード。
開発00
JSON フォーマッター & バリデーター
ブラウザで JSON を整形・並べ替え・圧縮・検証できます。
開発00