ワンタイムパスワードとは
ワンタイムパスワードとは、一度だけ有効な使い捨ての認証コードのことです。ログインや送金などの操作ごとに新しいコードを提示するため、同じコードを二度使いません。固定のパスワードと違い、使い回しが起きない設計になっており、認証のたびに新規に生成されます。
固定のパスワードは、盗み見や通信の盗聴で知られると、そのまま不正ログインに悪用されるおそれがあります。ワンタイムパスワードなら、仮にコードを奪われても次の認証では無効になるため、なりすましやリプレイ攻撃への耐性が高まります。ネットバンキングや社内VPNなどで広く採用されています。受け取り方はスマホアプリ、ハードウェアトークン、メールやSMSなどがあります。
仕組みは、利用者とサーバが共有する秘密と、時刻やカウンタなどの変化する要素をもとにコードを計算するのが一般的です。方式としては、チャレンジレスポンス方式、ハードウェアトークン方式、S/Key方式などが知られています。これにより毎回異なる値が生成され、過去のコードは再利用できません。
メリットは、パスワード漏えいの影響を最小化できることです。単独で使う場合もありますが、通常はID・固定パスワードに加える二要素認証として用い、全体のセキュリティを底上げします。重要な操作を安全に行うための基本的な仕組みだと覚えておきましょう。

