ネット上のアクセスボリュームをUPさせ効率の良い集客をご提案します。

雑学:2段階認証におけるSMSの遅延について考察

 / テクニカル, トピックス


最近弊社へのサービス問い合わせで某サービスの2段階認証を顧客アカウントでログインしないといけない場面があった。結果的にログインできなくて話はクローズしましたが、以前から不思議に思っていた事ではありパスコードが合わなかったりSMSが届かなかったり、遅延して20分近く経ってから届くこともあり従来認識していたSMSに対する信頼性に疑問を感じていた。
SMSは元々メッセージのための仕組みではなくて携帯電話が現在どの地域で使われているかモバイルキャリアセンターにあるLR(ロケーションレジスター)が状態把握するためにSMSのパケットを送ってポーリング(定期チェック)するためのものだ。その隙間がかなり空いているのでメッセージを乗っけてしまえというのがSMSの始まりだ。



SMSはガラケーの時代の初期は非常に使われることが多かったがキャリアメールが登場してからは利用が大幅に減りました。そのかわりMMSや別方式の送信方法が生まれバリエーションは増えたが決定打はスマホの登場だ。完全にインターネットの技術で送信できるためもはやSMSでのメッセージは使われなくなるだろうと思っていたが4,5年前からSMSゲートウェイサービスが増えて認証のワンタイムパスワード送信で送られる需要が急増した。



ここで、一旦話は前に戻すがSMSは携帯電話(スマホが)モバイルセンター側で位置を把握できている状態(電波が届く状態)ならほぼリアルタイムに送受信できる仕組みだ。故に最近の一部のサービスでSMSが遅延してしまうのは不思議とは思っていたところではあったが、問い合わせでの2段階認証のトラブルは今回改めてSMSゲートウェイサービスを調べるきっかけを作ってくれた。



現在2段階認証はメジャーどころのサービス(SNS、決済系、ショップ)では当たり前に普及している。その中の通知手段は色々選択できるがSMSを使った通知が一番多そうだ。実際に便利なのだがここ数ヶ月で頻繁に通知遅延を起こすようになってきたので不思議と思っていたがFBで疑問を投げたところ、運良く知り合いの社長がSMSゲートウェイサービスを提供していて原因を教えていただくことができた。



つまりSMSは基本リアルタイムで送受信できるのだが、サービスで使われている2段階認証のような通知サービスは通知トランザクションが沢山発生するため、SMSの一次受付のシステムがサービス会社側で用意されそこでパスコード生成とメッセージ生成を行い蓄積しSMSゲートウェイサービスに送信しているのだ。だから一時受付システムでの糞詰まりはよくおこるのだそうだ。

更にSMSゲートウェイサービスが日本にある場合、海外にある場合で更に状況が違ってくる。海外の場合複数のキャリアを跨いでリレーしながら交換機が配送するため遅延が生じてしまうのだ。たしか日本ではVodafoneが海外への電話通信の窓口になっているはずだ。AmazonはまさにSMSゲートウェイや一時システムが海外に有るため影響を受けやすい。更にキャリア間のSMS契約が容量で決まっているため、一定時間に受け付けられるSMS数はキャリア毎に決まっているそうだ。フリーSIMだとドコモ、au、ソフトバンクとMVNO業者が契約しておりその間で交わされている仕様やリミッターはベンダーによって様々だ。だからどのベンダーのSIMを使っているかで一定時間にSMSを受け付ける契約状況が違ってくるのはうなずける話。フリーSIMは料金が固定で安いので当然絞りはあるのは間違いない



最後に二段階認証のパスコード発行は一時システムの待ち行列に入ると糞詰まりを起こすと、ユーザ側はついつい再送信をしてしまう。しかし吐き出される順番はFirst in First Outで吐き出されるため、古いパスコードが送られてくるのだ。この状況だとサービス側の持っているコードとコードジェネレータが持っているのが同期取れていないと錯覚してしまう。届かないと思ったら、詰まっているSMSを一旦吐き出させて30分、1時間くらい間を空けて再開するのが良い。

TOPへ戻る