OTP (ワンタイムパスワード) とは
OTP (ワンタイムパスワード) とは、1度だけ利用可能な文字列(一般的には乱数)を自動生成するテクノロジを利用し、この文字列を利用して認証を行う仕組みである。通常のパスワードは、繰り返し用いられることに対して、OTPは生成した文字列を1度しか利用しない使い捨て型のパスワードであることから、「ワンタイム」パスワードと呼ばれる。
なお、OTPは「ワンタイムパス『ワード』」と表記されるが、大文字、小文字、記号といった文字列は用いられず、1から0までの数字(数列)を用いられることが多い。一般的に、数列の長さは6桁前後である。
OTPの利用目的・場面
OTPは通常、パスワード認証の強化を目的として、パスワード認証と組み合わせて利用される。情報セキュリティの観点から見ると、パスワードは認証要素における「知識要素(文字列・数列を記憶しておくことを指す)」であることに対して、OTPは「所有要素(提供された文字列・数列を持っていることを指す)」となる。パスワードとOTPを併用すると、複数の認証要素を利用する「多要素認証」となり、認証強度を高められるため導入が進んでいる。
実際の場面で、OTPがどのようにパスワードと併用されているか、以下で複数の例を挙げて紹介する。
- オンラインバンキング
- パスワード
ログイン時に利用。パスワードのみでは、残高照会や口座情報の確認は行えるが、送金はできない - OTP
別口座に送金時に利用。送金画面で入力を求められる。
- パスワード
- クラウド型ネットサービス
- パスワード
サービスのログイン時に利用。登録時のIPアドレスと同じであれば、パスワードのみでログイン可能。 - OTP
新しいIPアドレスからのアクセス時に利用。過去にアクセスのないIPアドレスから接続した際、パスワード入力後にOTP入力が合わせて求められる。
- パスワード
- ネットショップ (Eコマース)
- パスワード
ネットショップ利用時に入力。これまで利用したことのあるクレジットカード支払い、送付したことのある宛先であればOTPは不要。 - OTP
新規のクレジットカードを登録・利用する場合、新しい宛先に商品を送る場合に利用。当該画面でOTP入力が求められる。
- パスワード
OTPの種類と違い
OTPは、自動的に生成された文字列(ほとんどの場合は数列)が用いられているが、このOTP文字列を利用者のどのように届けるかについては、様々な方法がある。
ドングル型
トークン型とも呼ばれる。USBメモリ程度の大きさのOTP専用機械で、小さな液晶がついている。一般的に液晶には6桁程度の数列(OTP)が表示されており、数十秒~1分に一度、自動で更新される(ドングルに内蔵されている電池の残量がある限り、文字列の更新を続ける)。ドングルは厚みがあり、持ち運びにくいことから、ドングルをカード型にして提供される場合もある。
1つのドングルは、1つのサービスに紐づいていることが一般的であり、同じドングルで異なるサービス提供者のOTPを表示することはできない。利用する際には、画面上で文字列が表示されている間に入力を行い、認証を行う。文字列が更新された後で、直前に表示されていた文字列を入力しても認証は行えない。
液晶画面をみるだけでOTPが分かり、特殊な操作が不要であること、スマートフォンや電話回線が不要であるため、簡単に利用できるというメリットがある。その反面、ドングルという物理デバイスが必要となるため、ドングルが手元にないと認証が行えない、ドングル自体が盗まれてしまう可能性があるというデメリットもある。また、システム・サービス運営者の立場からは、ドングルという物理デバイスを購入・配布(送付)するというコストがかかるため、他の方法と比較すると導入コストが高くなる。
メール型
オンラインサービスの重要な情報を操作する際、または通常とは異なるIPアドレスやデバイスから利用され不正アクセスが疑われる際などに、登録されているメールアドレスにOTPを送信し、これを画面上で入力して認証を行う方法である。登録されているメールアカウントにアクセスできる人のみが、OTPをメールで受け取り入力可能である。
専用デバイスが不要であり低コストで利用できること、メールという手段であるためパソコンでもスマートフォンでも受け取れるというメリットがある。この反面、メールアカウントがハッキングされている場合は、OTPの盗み見られてしまうため注意が必要である。
電話音声型
アカウント情報の変更、送金、通常とは異なる環境からのアクセスなどの際に、アカウントに登録されてある電話番号に対して、電話の自動音声でOTPの数列が伝えられるという方法である。音声で伝えられたOTPを画面上で入力して認証を行う。
携帯電話が普及しているため、ほぼ100%の人が利用できること、スマートフォンでない従来型の携帯電話(フィーチャーフォン、ガラケー)も対応していること、専用デバイスが不要で導入コストが相対的に低いというメリットがある。デメリットとしては、登録されている電話番号のSIMカード、または電話機ごと盗難された場合は、OTPも盗まれるという点や、音声を聞き逃してしまうと再度電話を受ける必要がある点などである。
Authenticator型 (スマートフォンアプリ)
スマートフォンのAuthenticatorアプリを利用して、OTPを常時表示・更新する方法である。iOSやAndroidスマートフォンに、Authenticatorアプリをインストールし、あらかじめ初期設定を行っておくことで利用可能となる。
OTPが必要な際に、アプリを開いて、表示されているOTPを画面上で入力して認証を行う。Authenticatorアプリは、GoogleやMicrosoftなど大手IT企業から提供されており、1つのAuthenticatorアプリで複数のサービスのOTPを利用できることが特徴である。なお、日本語のアプリストアでは、「Google認証システム」「Microsoft Authenticator」などの名前で提供されている。
GoogleやMicrosoftのAuthenticatorの利用自体には費用が発生しないため、導入コストが低いこと、専用デバイスが不要であること、複数のOTP利用サービスが1つのAuthenticatorアプリに「相乗り」できるというメリットがある。反面、従来型の携帯電話では利用できない、スマートフォンが盗難されると盗み見られる可能性がある。また、スマートフォン変更時の再登録手続きが煩雑というデメリットもある。
SMS型
携帯電話の通信網を利用して、OTPを都度送信する方法である。携帯電話にSIMカードが刺さっていて、通話可能であれば利用できる。OTPが必要な際に、サービス側からOTPを含むSMSが送信され、利用者は受け取ったOTPを画面上で入力して認証を行う。
スマートフォンだけでなく従来型の携帯電話でも利用できること、専用デバイスが不要というメリットがある。しかしながら、SMSが利用する通信網のセキュリティが脆弱であること、SMSを盗み見るための不正なスマートフォンアプリが横行していることから、SMSを利用したOTPは、セキュリティ的に脆弱であるとされている。このため、情報セキュリティに関するガイドラインを策定しているアメリカ国立標準技術研究所(以下NISTと略)は、SMSを利用したOTPを非推奨としている。
OTPの今後のトレンド
パスワードのみの認証から複数の認証要素が必要な、多要素認証の導入が広がりを見せている。そして、多要素認証を実現するための手段としてOTPの利用も広がると見込まれている。
・参考記事
多要素認証市場は2025年までに年平均15%の成長
OTPの手段については、スマートフォンの普及とともに安価で利用できるようになったAuthenticator型は、複数のOTPを1つのアプリで対応できるという利便性の高さとコストの安さから、今後の利用は増大すると考えられる。同じく導入コストが低く、専用デバイスが不要なメール型、電話音声型も同様である。