Skip to content
Zoyku

TOTP コード生成

任意の TOTP シークレットから 2FA コードをオフライン生成——RFC 6238、6/8 桁、30 秒カウントダウン付き。シークレットはブラウザから出ません。

シークレットを貼り付けるとコードがリアルタイムで表示されます。

完全オフラインで動作:コードはブラウザ内の WebCrypto で計算され、シークレットは送信・保存されません。

このツールは完全にブラウザ内で動作します。データは端末から出ず、サーバーへアップロードされることはありません。

使い方

  1. 1サービスの 2FA 設定ページから base32 シークレットをコピーします(otpauth:// リンクでも可)。
  2. 2サービスの表示に合わせて設定します:6 桁か 8 桁、30 秒か 60 秒の周期、特別な指定がなければ SHA-1。
  3. 3カウントダウンが終わるまでにコードをサービスに入力するか、ワンクリックでコピーします。
  4. 4タブを開いたままにすれば連続ログインに便利で、コードは各周期で自動更新されます。

TOTP コード生成

認証コードはスマホアプリがなくても作れます。base32 シークレット(または旧認証アプリの otpauth:// リンク)を貼り付けると、RFC 6238 認証アプリと同じ 6 桁・8 桁のワンタイムコードを、次回更新までのカウントダウン付きで計算します。

計算はすべて WebCrypto の HMAC でローカルに行われ、通信は一切ありません。シークレットはブラウザのメモリにのみ存在するため、スマホを紛失しても二要素認証を失いません。

よくある質問

オフライン認証は SMS コードより安全?

はい、理由は二つあります。TOTP コードは端末内で計算され電話網を流れないため、SIM スワップ攻撃で傍受される余地がありません。さらに 30 秒で失効し、生成にはシークレット自体の所持が必要です。シークレットがメッセージに現れることはありません。

シークレットはどこに保存されますか?

どこにも保存されません。このタブのメモリ上の変数に保持され、WebCrypto が時間カウンタの署名に使うだけです。localStorage や Cookie、サーバーには一切書き込まず、タブを閉じれば消えます。

コードが一致しないのはなぜ?

多い原因は、アルゴリズムの選択ミス(多くのサービスは SHA-1)、周期の不一致、端末時計の数秒以上のずれです。サービスの設定ページと 3 つのセレクターを照合し、システム時計を同期してください。

ツールを埋め込む

1 行であなたのサイトにツールを。訪問者のブラウザ内で動きます。

<iframe src="https://zoyku.com/ja/tools/totp-generator?embed=1" width="100%" height="640" style="border:0;border-radius:16px" title="Zoyku — totp-generator" loading="lazy"></iframe>
100% ローカル処理