Kode

認証アプリとは

認証アプリ(Authenticatorアプリ)は、2段階認証をオンにしたときに、パスワードのあとに入力する6桁のコードを作るアプリです。設定のとき、サービスは秘密の鍵が入ったQRコードを表示します。アプリはその鍵を保存し、鍵と現在の時刻から30秒ごとに新しいコードを計算します。ネットにつながっていなくても動き、コードは少したてば使えなくなります。

コードの作られ方

QRコードには、サービスとあなたのスマホだけが知っている秘密の鍵が入っています。アプリは30秒ごとに鍵と現在の時刻を組み合わせ、その結果を6桁の数字にします。サービスも同じ計算をして、数字が一致すればログインできます。この方式はTOTPというオープンな標準(RFC 6238)なので、「認証アプリ」に対応したサービスなら、どの認証アプリでも使えます。

スマホには何も送られてこないので、機内モードでも動きます。スマホの時計が大事なのもこのためです。1分以上ずれていると、たいていコードが通りません(直し方)。

SMSのコードより安全な理由

完璧ではありません。本物そっくりの偽のログインページが、コードを入力させてすぐに使うこともあります。コードを入力する前にアドレスを確かめてください。サービスが対応していれば、パスキーはこの手口でだまし取られません。

設定のしかた

  1. 認証アプリをインストールします。
  2. サービスのセキュリティ設定で2段階認証を開き、SMSではなく認証アプリを選びます。
  3. アプリでQRコードをスキャンします。スキャンできない場合は、たいていのサービスが鍵を文字でも表示するので、それを入力します。
  4. アプリに表示されている今のコードを入力して確認します。
  5. サービスが表示するバックアップコードを、スマホ以外の場所に保存します。スマホをなくしたときは、これでログインできます。

どのアプリを選ぶ?

どのアプリも同じコードを作るので、違いは鍵をどこに保存するか、新しいスマホにどう移すかです。

一部のサービスは独自のアプリを使います(Steam Guardなど)。また、「本人ですか? はい」とタップする承認は、そのサービス自身のアプリの機能で、認証アプリ全般の機能ではありません。

スマホをなくしたら

鍵は、アプリが保存している場所にしかありません。同期やバックアップをしていれば、新しいスマホで元に戻せます。していなければ鍵は失われるので、バックアップコードかサービスのアカウント復旧でログインし、2段階認証を設定し直します。だからバックアップコードが大切なのです。

Kode

Kodeは、Peter Theillが作ったiPhoneアプリ(300円の買い切り)で、このコードを作ります。アカウントも広告もなく、ネットワーク通信もしません。鍵はiPhoneのキーチェーンに保存され、エンドツーエンドで暗号化されるiCloudキーチェーンで新しいiPhoneにも引き継がれます。Google Authenticatorなどのアプリからコードを移せます:Kodeにコードを移す

App Storeでダウンロード