ワンタイムパスワード(OTP)
電話番号を誰が管理しているかを確認するためにSMSで送る使い捨てのコードです。有効期限は短く、試行回数に上限があります。
定義のみです。ここで説明する用語は、当社が販売するサービスではありません。
ワンタイムパスワード(OTP)は、1回だけ使え、数分以内に失効するコードです。OTPが証明するのは本人確認ではなく、その時点での番号の管理です。そのため、安全性を担うのはOTPを取り巻く制限です。
コードそのものよりも、有効期限、試行回数、再送ポリシー、番号の検証のほうが重要です。
配信と失敗
アプリケーションはランダムなコードを生成し、有効期限とともにハッシュ化して、平文のコードをメッセージセンターまたはアグリゲーターを経由してA2P SMSで送ります。安全性はSMSの伝送ではなく、アプリケーションのロジックから生まれます。コードは遅れて届くこともあれば、誤った番号に届くことも、SIMスワップの後に届くこともあります。この経路についてはOTP SMSの配信のページで取り上げています。
コードが通る経路
- アプリケーション
- SMPPゲートウェイ
- SMSC
- HLR / HSS
- MSC / MME
- 端末
- 配信確認
テキストによる説明
アプリケーションはSMPPゲートウェイに送信し、ゲートウェイはメッセージをSMSCに渡します。経路はその後HLR/HSSとMSC/MMEを通って端末に至り、最後のノードが配信レシートです。
確認すべきこと
番号、IPアドレス、端末ごとにレート制限を設け、試行回数に上限を設定し、有効期限を短くしてください。音声通話、認証アプリ、手動審査のいずれをフォールバックにするかは、ローンチ前に決めておいてください。