🔐 TOTP設定用QRコード生成

TOTP(Time-based One-Time Password)のシークレットキーから、Google AuthenticatorやAuthyなどの認証アプリでスキャンして登録できる、otpauth://形式のQRコードを生成するツールです。処理はすべてブラウザ内で完結し、シークレットが外部に送信されることはありません。

使い方

  1. Base32形式のシークレットキーを入力します。
  2. アカウント名(表示名)と発行者名を入力します。
  3. 必要に応じてアルゴリズム・桁数・更新間隔を設定します。
  4. 生成されたQRコードを認証アプリでスキャンします。

計算の仕組み

このツールは、Google AuthenticatorやMicrosoft Authenticatorなどの認証アプリに読み込ませるための、TOTP設定用のQRコードを作ります。 QRコードの中身は、Googleが定めた「Key Uri Format」の次のようなURIです。 otpauth://totp/発行者:アカウント名?secret=秘密鍵&algorithm=SHA1&digits=6&period=30&issuer=発行者 発行者やアカウント名に含まれる空白や「@」などの記号は、パーセントエンコード(空白は%20)しています。秘密鍵はBase32(A〜Zと2〜7)の文字列で、末尾の「=」は仕様に合わせて取り除きます。このURIを、誤り訂正レベルMのQRコードにしてSVG画像で表示します。

計算例

秘密鍵: JBSWY3DPEHPK3PXP アカウント名: user@example.com 発行者: Heron Tools 作られるURI otpauth://totp/Heron%20Tools:user%40example.com?secret=JBSWY3DPEHPK3PXP&algorithm=SHA1&digits=6&period=30&issuer=Heron%20Tools 認証アプリでこのQRコードを読み取ると、「Heron Tools(user@example.com)」として登録され、30秒ごとに6桁のコードが表示されます。

使用上の注意

  • QRコードには秘密鍵がそのまま含まれています。画面の共有やスクリーンショットで他人に見られないよう注意してください。
  • Google Authenticatorなど一部のアプリは、SHA-256・SHA-512や8桁、30秒以外の間隔に対応していない場合があります。互換性を重視するなら、SHA1・6桁・30秒を選んでください。
  • QRコードの作成はブラウザ内で行われ、秘密鍵が外部に送信されることはありません。

よくある質問

otpauth://とは何ですか?

Google Authenticatorが提唱し、多くの認証アプリで事実上の標準として使われているURIスキームで、TOTP/HOTPのアカウント登録情報(シークレット・発行者・アルゴリズムなど)をQRコードで受け渡すための形式です。

シークレットはサーバーに送信されますか?

いいえ。QRコードの生成はすべてブラウザ内(お使いの端末上)で完結し、シークレットが外部に送信されることは一切ありません。

生成した認証コード自体を確認したい場合は?

現在の6桁/8桁のワンタイムパスワードそのものを確認したい場合は、別途「TOTP認証コード生成」ツールをご利用ください。