セキュリティ
ワンタイムパスワードの仕組みとメリット・デメリット

ネットバンキングでは、振り込み時にワンタイムパスワードが必須とされるのが当たり前となってきています。セキュリティを強化したいときに役立つワンタイムパスワード、その仕組みやメリット・デメリットについて説明します。
ワンタイムパスワード・トークンによるセキュリティ強化
ワンタイムパスワードとは一定時間内に一度だけ使うことができる、使い捨てのパスワードです。その時々でパスワードが変わりますので、不正ログインを防止するなど、セキュリティの強化が期待できます。現在では、主にネットバンキングで振込取引を行う際の二段階認証としてワンタイムパスワードが用いられています。
ユーザーがワンタイムパスワードを得るにはトークンを利用します。トークンはワンタイムパスワードを生成して表示する専用デバイスです。
トークンにはハードウェアタイプのものと、ソフトウェアタイプのものがあります。ハードウェアタイプのトークンはカード、キーホルダー、USBキーなどが代表的です。これに対しソフトウェアタイプのトークンは主にスマートフォンアプリとして提供され、それを使ってパスワードを発行します。
2通りの方式とワンタイムパスワードの仕組み
ワンタイムパスワードには主に次の2つの方式があります。
チャレンジレスポンス方式
ユーザーとサーバーとでデータのやりとりをし、その都度パスワードを生成するのがチャレンジレスポンス方式です。
ユーザーはまず認証サーバーへIDを送信、それに対して認証サーバーが「チャレンジ」と呼ばれるランダムな文字列を送り返します。ユーザー側はその文字列をもとに特定の計算式を使って「レスポンス」となるパスワードを生成します。サーバー側は自らが生成したパスワードと、ユーザーから送られたパスワードを照合して、一致していれば認証します。
時刻同期方式(タイムスタンプ方式)
ユーザーがサーバーと通信することでパスワードを生成するのではなく、現在の時刻とトークンを使ってパスワードを得るのが時刻同期方式です。
ユーザーが所有しているトークンのボタンを押すと、時刻に合わせてそのときに有効なパスワードが表示されます。サーバー側では、入力されたパスワードとその時刻に有効なパスワードを照合し、正しければ認証します。
ワンタイムパスワードのメリット・デメリット
ワンタイムパスワードにはメリットもあればデメリットもあります。それぞれについて詳しく見てみましょう。
メリット
最も大きなメリットは、ユーザーに対し大きな負担をかけることなくセキュリティを強化できることです。IDとパスワードを入力する通常のログイン方法やアカウント認証方法と比べ、やや手順は増えるものの、特段複雑または難解ではない操作をすれば高い確率で不正ログインを防ぐことができます。
むしろユーザーが頻繁にパスワードを変更しなくてもセキュリティを高く保つことができるので、ワンタイムパスワードはユーザーの自発的な行動に頼らなくて済むという面もあります。パスワードの定期的な変更自体は推奨すべきものですが、より重要な操作を行う際は、ワンタイムパスワードを発行することで、そのときだけセキュリティ強度を高くすることができます。
また、通常のパスワードの場合、IDと共にパスワードが流出すると第三者にアカウントを乗っ取られてしまう可能性がありますが、一定時間内に一度しか使うことのできないワンタイムパスワードは、たとえ流出しても不正ログインされるリスクが低いといえます。
デメリット
パスワードの流出などに対して効果を発揮するワンタイムパスワードですが、あらゆるサイバー攻撃に対して万全というわけではありません。
例えば、パソコンがすでにウイルスに感染していて、悪意ある第三者が画面を盗み見していたような場合には、新たに生成されたワンタイムパスワードも知られてしまうでしょう。そうすれば本来のユーザーより早く、当該ワンタイムパスワードを使用されてしまう可能性があります。
また、メリットの項で「ユーザーに対し大きな負担をかけることなく」と述べましたが、それでもいちいちワンタイムパスワードを生成し、入力しなければならないのは面倒だと考えるユーザーもいます。通常よりもログインやアカウント認証のための手順が増えることは、ワンタイムパスワードのデメリットの一つだといえるでしょう。
このように、ワンタイムパスワードにはメリット、デメリットがあります。そのことを踏まえて、ログインには通常のIDとパスワードを用いるようにし、より高いセキュリティが必要な操作を行う場合にだけワンタイムパスワードを使用するといった使い分けをするのが有効です。
ネットバンキングでも振り込み時にのみワンタイムパスワードが必須になる、といった活用が一般的です。ワンタイムパスワードの特徴を理解した上でシステムに組み入れ、セキュリティの強化を図っていきましょう。