2FA コードが使えない?直し方
認証アプリはコードを出しているのに、サイトが「違う」と言い続けるなら、原因はほぼいつも同じ——デバイスの時計が少しずれています。TOTP コードは現在時刻から作られるので、30 秒のずれでもすべてのコードが無効になります。直し方は次のとおり——たいてい 1 分とかかりません。
第 1 の原因:時刻のずれ
TOTP——Google Authenticator、Authy、2FAA の背後にある標準——は、秘密鍵と現在時刻を 30 秒刻みで組み合わせ、サーバーも同じ計算をします。スマホの時計が実際の時刻からわずかにずれるだけでコードが合わなくなります——アプリが完璧に動いて見えてもです。時刻を直せばコードも直ります。
デバイスの時刻を直す
| デバイス | 手順 |
|---|---|
| Google Authenticator(Android) | アプリ → メニュー(⋮)→ 設定 → コードの時刻補正 → 今すぐ同期。スマホの時計ではなくアプリだけを同期します。 |
| Android(システム) | 設定 → システム → 日付と時刻 →「時刻を自動設定」をオン。 |
| iPhone / iPad | 設定 → 一般 → 日付と時刻 →「自動設定」をオン。 |
| Windows | 設定 → 時刻と言語 → 日付と時刻 →「今すぐ同期」。 |
| Mac | システム設定 → 一般 → 日付と時刻 →「日付と時刻を自動設定」。 |
コードが弾かれるその他の理由
| 原因 | 対処 |
|---|---|
| 入力中に期限切れ | 打っている間に変わった。次を待って素早く入力。 |
| アカウント違い | 秘密鍵が複数あり、違うものからコピーした。発行元/ラベルを照合。 |
| スペースや桁抜け | 6 桁すべてをスペースなしで入力。 |
| 実はバックアップコード | バックアップコードは「バックアップコード」欄へ。認証アプリ欄ではありません。 |
| 8 桁や 30 秒以外の周期 | まれですが設定が異なる場合あり。元の 2FA 設定を確認。 |
| 使い回したコード | 多くのサービスは使用済みコードを拒否。次を待つ。 |
| サーバー時刻 / 障害 | まれにサービス側の問題。数分後に再試行。 |
30 秒のチェックリスト
- デバイスの時刻を自動に設定(Android では Google Authenticator の「時刻補正」も実行)。
- 正しいアカウントのコードを見ているか確認。
- 6 桁をスペースなしで入力し、カウントダウンが終わる前に送信。
- それでもダメなら 2FAA でコードを生成——ブラウザのネットワーク同期時刻を使い、デバイスのずれを丸ごと回避します。
常に正しい時刻を使うコード
2FAA はブラウザ内で正確なネットワーク時刻を使って TOTP コードを生成するので、時刻ずれを気にする必要がありません。無料・プライベート・インストール不要。
よくある質問
認証アプリが「コードが無効」と出るのはなぜ?
最も多い原因は、デバイスの時計が少しずれていることです。TOTP コードは現在時刻を 30 秒刻みで計算するため、わずかなずれでもすべてのコードが合わなくなります——アプリは正常に見えてもです。時刻を自動設定にすれば、ほぼ解決します。
Google Authenticator の時刻を同期するには?
Google Authenticator を開き、メニュー(⋮)→ 設定 → コードの時刻補正 → 今すぐ同期。これはアプリ内部の時計を再同期するだけで、スマホのシステム時刻は変えません。他のアプリでは、デバイスの日付と時刻を自動にすれば十分です。
2FA コードは期限切れになりますか?
はい。標準の TOTP コードは 30 秒有効で、その後新しいものに切り替わります。入力中にコードが変わった場合、入れたものは期限切れかもしれません——次のコードを待って素早く送信しましょう。多くのサービスはこのために直前のコードも数秒間は受け付けます。
同じ 2FA コードを 2 回使えますか?
通常は使えません。リプレイ攻撃を防ぐため、多くのサービスは 30 秒の有効期間内でも一度使ったコードを拒否します。ログインに失敗して再試行するときは、同じコードを入れ直さず次のコードを待ちましょう。
時刻は合っているのに失敗する。どうすれば?
正しいアカウントのコードを見ているか、6 桁すべてをスペースなしで入力したか、バックアップコードを認証アプリ欄に入れていないかを確認します。一部のアカウントは 8 桁や非標準の周期を使います。その場合は元の設定を確認してください。それでもダメなら秘密鍵が違う可能性があるので、アカウントの 2FA を登録し直しましょう。
関連記事: スマホを紛失?・ バックアップコード解説・ 2FA とは?