SMS認証とは?ワンタイムコードが届く仕組み

SMS認証とは、アプリが電話番号にSMSでワンタイムコードを送り、それを入力させることで、その番号でメッセージを受け取れることを確認する仕組みです。コードはアプリのサーバーからSMSゲートウェイへ送られ、携帯電話会社を経由して、その番号の端末または受信箱に届きます。登録やログインで広く使われていますが、NISTなどのセキュリティ機関は、認証アプリやセキュリティキーより弱い方法と評価しています。
SMS認証の目的
アプリがSMS認証で確かめたいのは、「この人は今この電話番号でメッセージを受け取れるか」という1点です。コードを読んで入力できれば、アプリはその番号を確認済みとして扱います。
この1つの確認が、いくつかの目的を支えています。登録時には、アカウントを連絡のつく番号に結びつけ、アカウントごとに使える番号が必要になるため、偽アカウントを大量に作るコストを高めます。ログイン時には、パスワードに加える2つ目の要素として働きます。アカウントの復旧では、パスワードを忘れたときにアプリがあなたに連絡する手段になります。
このコードは通常、ワンタイムパスワードの略であるOTP、または単に認証コード(確認コード)と呼ばれます。/glossary の用語集では、これらの用語や、2FA、A2P SMS、送信者ID、SMSゲートウェイなどの関連用語を解説しています。
コードが届くまでの流れ
1. 電話番号を入力します。アプリは形式を確認し、多くの場合は国番号付きの国際形式E.164に変換し、番号の国や種類について独自のチェックを行うこともあります。
2. アプリのサーバーがランダムなコードを作成して有効期限とともに保存し、SMS事業者に送信を依頼します。この工程に外部のメッセージングサービスを使うアプリも多くあります。
3. SMSゲートウェイとも呼ばれるSMS事業者が、メッセージを携帯電話網に送り込みます。アプリから人へのメッセージはA2P(アプリケーション・ツー・パーソン)SMSと呼ばれ、ショートコード、通常の長い番号、英数字の送信者IDのいずれかから届きます。
4. メッセージは通信会社の間を移動し、宛先の番号を担当するネットワークに届きます。そのネットワークがSIMに配信するか、番号がSMS Halloのようなサービスで提供されている場合はオンラインの受信箱に配信します。
5. コードを読んでアプリに入力するか、ワンタップでコピーします。アプリは保存しておいたコードと照合し、一致していて有効期限内であれば確認が完了し、そのコードは二度と使えなくなります。
全体の流れは通常数秒で終わりますが、各工程はそれぞれ別の会社が担っているため、どの段階でも問題が起こりえます。
音声通話、フラッシュコールなどの方式
多くのアプリは、SMSが失敗したときの代替手段として、自動音声がコードを読み上げる電話を用意しています。フラッシュコールを使うアプリもあり、アプリが電話をかけ、あなたが応答しなくても発信元の番号からコードを読み取ります。メッセージアプリの中には、自社アプリや、利用できる場合は別のメッセージングサービスを通じてコードを届けるものもあります。
これらの方式も、電話網が番号に届くことが前提です。SMSだけでなく電話も受けられる番号なら、確認を完了する手段が増えます。SMS Halloの番号はどちらも受け取れます。コードはSMS受信箱に表示され、着信はブラウザのダイヤラーで受けられます。
コードが届かないよくある原因
番号の入力ミス。国番号の抜け、余分な先頭の0、数字の入れ違いがあると、コードは別の宛先に送られます。アプリが表示する確認用の番号を必ず見直してください。
アプリがその種類の番号に送信しない。多くのアプリは送信前に番号の種類と国をチェックします。固定電話やインターネット通話の番号を拒否するアプリもあれば、特定の国や番号帯を制限するアプリもあります。エラーが表示されることもあれば、何も表示されずコードが送られないこともあります。
送信回数の制限。何度もコードを要求すると、アプリやSMS事業者がしばらく送信を止めることがあります。カウントダウンが終わるのを待ってから、1回だけ要求しましょう。
通信会社のフィルタリングと経路の遅延。ネットワークはスパムの疑いがある通信をフィルタリングし、国際経路では遅延が生じることがあります。数分かかったコードは、届いたときにはすでに期限切れになっていることがあります。
端末や受信箱。SIMの場合、電波が弱い、受信箱がいっぱい、送信元のブロック、迷惑メッセージフィルターなどでコードが見えなくなることがあります。オンライン番号の場合は、番号がまだ有効か、ダッシュボードで正しい番号を見ているかを確認してください。
コードの期限切れ。ほとんどのコードは数分しか有効ではありません。最新のコードを使い、迷ったら新しいコードを要求しましょう。
SMSと他の2要素目の比較
ほぼ誰でも電話番号を持っているためSMSは便利ですが、信頼できる機関の指針では他の方法より下に位置づけられています。NISTのデジタルアイデンティティガイドラインSP 800-63B-4は、公衆電話網を通じた認証を「制限付き」に分類し、検証者はSIMの変更や番号の移行などのシグナルを考慮すべきこと、他の種類の認証手段も用意することを求め、帯域外で送るコードはフィッシング耐性がないと明記しています。
FTCは実際のリスクを説明しています。攻撃者はSIMスワップで番号を乗っ取り、コードを受け取ることができます。FTCは認証アプリをより安全、セキュリティキーを最も強力な選択肢としています。標的にされやすい人向けのCISAのガイダンスはさらに踏み込み、SMSメッセージは暗号化されていないと指摘して、SMSを2要素目として一切使わないよう勧めています。
認証アプリは、IETF RFC 6238のTOTP規格に従い、共有された秘密情報から端末上で時間ベースのコードを生成するため、電話網を通じて何も送られません。セキュリティキーやパスキーは本物のウェブサイトに結びついた公開鍵暗号を使うため、ほとんどのフィッシングを防げます。
まとめると、SMS認証は登録時の番号確認には十分で、2要素目がないよりずっと良い方法です。ただし最も重要なアカウントには、サービスが対応していれば認証アプリやセキュリティキーを追加しましょう。
コードを確実に受け取るためのコツ
ほとんどのコードは数分で期限切れになるので、入力する準備ができてからコードを要求しましょう。待っている間はアプリを開いたままにし、別の画面に移ってやり直すのは避けてください。
アプリに選択肢があれば、SMSで1回失敗した後に音声通話を試してください。電話はネットワーク上で別の経路を通ることがあります。
使い続ける番号を使いましょう。認証は1回きりではありません。同じ番号が後で新しい端末でのログインやパスワードリセットに使われることがあるため、何か月後も連絡のつく番号なら困りません。
アプリのサポートチームを名乗る人であっても、認証コードは誰にも教えないでください。あなたに送られたコードは番号を管理している証拠であり、それを渡すことは管理権を他人に渡すことになります。
アカウント情報は最新に保ちましょう。番号を変える場合は、古い番号がまだ使えるうちに各アプリの設定で新しい番号を追加してください。そうすれば、もう持っていない番号に送られるコードを待ってログインできなくなる事態を避けられます。
アプリが番号の種類を気にする理由
SMS認証は偽アカウントを防ぐ関門でもあるため、多くのアプリは番号そのものをチェックします。無料の公開SMS受信サイトの番号は訪れた全員で共有されているため、アプリにブロックされることが多く、そこに送られたコードは見知らぬ人にも読まれてしまいます。
多くのサービスが想定しているのは実在する携帯電話番号です。SMS Halloは、181か国の現地の携帯番号形式で実在する携帯電話番号をレンタルしており、レンタルしている間、メッセージを見られるのはあなただけです。それでも、どの番号を受け付けるかは各アプリが決めており、特定の番号がすべてのアプリで使えると約束できる事業者はありません。
認証は、持つことが認められているアカウントに使ってください。SMS Halloの利用規定(Acceptable Use Policy)は、偽アカウントや重複アカウント、詐欺、本人確認を省略する手段としての番号の利用を禁止しています。
SMS Halloで認証コードを受け取る
メールアドレスとパスワードで登録し、国と番号を選んで支払います。受信したSMSはダッシュボードに表示され、コードは自動で検出されてすぐにコピーできます。
すべてのSMS Hallo番号には、SMSの受信無制限、着信無制限、毎月500通の送信SMS、毎月1,000分の発信通話が含まれます。利用枠は30日ごとにリセットされ、使わなかった分は繰り越されません。
料金は12か月プランで月額$1.80から($21.60を年払い)で、どの国でも同じ料金です。初期費用はかかりません。番号は更新するか自動更新をオンにして維持してください。失効した番号は他の人に割り当てられる可能性があり、その人がまだ紐づいているアカウントのコードを受け取るおそれがあります。
すべてのSMS Hallo番号には3つの保証があります。1つ目は7日間の無料交換です。7日以内であれば、同じ国の利用可能な別の番号に最大3回まで無料で交換でき、新しい番号にはプランと有効期限がそのまま引き継がれます。2つ目は「使えなければ100%返金」です。レンタルした目的のアプリで番号が使えない場合(たとえばコードがまったく届かない場合)、7日以内に申請すれば支払った金額の100%が返金されます。3つ目は7日間の返金保証です。番号で通話やSMSの送受信が一度もなければ、7日以内なら理由を問わず全額返金されます。
出典
- NIST SP 800-63B-4, Digital Identity Guidelines: Authentication and Authenticator Management
- FTC Consumer Advice, Use Two-Factor Authentication to Protect Your Accounts
- CISA and partners, Mobile Communications Best Practice Guidance (December 2024)
- IETF RFC 6238, TOTP: Time-Based One-Time Password Algorithm
よくある質問
SMS認証コードとは何ですか?
アプリが電話番号でメッセージを受け取れることを確認するためにSMSで送る、通常4〜8桁の短いワンタイムコードです。有効期限があり、1回しか使えません。
SMS認証は2段階認証(2要素認証)と同じですか?
必ずしも同じではありません。登録時には番号を確認するだけです。ログイン時にパスワードに加えて使われる場合は、2つ目の要素として働きます。
SMS認証は安全ですか?
保護にはなりますが、SIMスワップ、傍受、フィッシングのリスクがあるため、NIST、FTC、CISAはいずれも認証アプリやセキュリティキーより下に評価しています。重要なアカウントでは、より強い方法があれば使いましょう。
なぜコードが音声通話で届くのですか?
SMSが遅れたりブロックされたりしたときの代替手段として、電話を用意しているアプリが多くあります。自動音声がコードを読み上げるので、それを入力します。
コードが届かなかったのはなぜですか?
よくある原因は、番号の入力ミス、アプリがその種類の番号に送信しないこと、何度も要求したことによる送信制限、通信会社のフィルタリングや遅延、コードの期限切れです。
SIMカードなしで認証コードを受け取れますか?
はい。オンラインの携帯電話番号なら、ウェブのダッシュボードでSMSを受信できます。どの番号を受け付けるかはアプリが決めますが、コードが届かない場合はSMS Halloの保証が適用されます。
SMSゲートウェイとは何ですか?
アプリがSMSを携帯電話網に送り込むために使うサービスです。各メッセージを、宛先の番号を担当する通信会社へ届けます。
ガイド
- WhatsApp用の2つ目の番号を取得する方法(SIM不要)
- SMSをオンラインで受信する方法:認証コード完全ガイド
- 海外からアメリカの電話番号を取得する方法
- 海外からイギリスの電話番号を取得する方法
- プライバシー用に2つ目の電話番号が必要な理由と取得方法
- 個人の電話番号なしでTelegramを使う方法
- USDT・USDCで支払う方法:初心者向け手順ガイド
- オンラインの電話番号を長期間保持する方法
- WhatsAppの認証コードが届かない原因と対処法
- 「この電話番号はサポートされていません」の原因
- 非VoIP番号とは?アプリが求める理由
- 1つの電話番号を複数のアプリで使える?
- Googleアカウントの電話番号認証のやり方
- インドからWhatsApp用のアメリカの電話番号を取得する方法
- 無料のSMS受信サイトは安全?本当のリスク
- SMS認証用の電話番号、どの国を選ぶ?
- 海外からのSMSを受信する方法
- ネット販売・フリマ用の2つ目の電話番号
- 2つ目の電話番号を持つのは違法?
- マッチングアプリで個人の電話番号を守る方法
- デジタルノマドの電話番号|母国の番号を残し現地番号を追加
- 暗号資産ユーザーの電話番号対策|SIMスワップのリスクを減らす
- プライベート番号は匿名?隠せること・隠せないこと
- 海外の現地ビジネス用電話番号を取得する方法
- AIツールの電話番号認証|求めるサービスと注意点
- 国別SIM登録法まとめ|必要な身分証と義務化の理由
- 仮想番号がアプリで拒否される本当の理由
- WhatsAppで番号がBANされたときの対処法
- Telegram番号を長期利用してアカウントを守る方法
- 個人の番号を使わずにTinderのSMS認証をする方法
- 銀行・決済アプリのSMS受信:正直な限界
- 仮想番号・2枚目SIM・eSIMの違いと選び方
- SMS認証コードが届かない時の対処法【全アプリ共通】
- Google Voiceが日本で使えない時の代替策
- 2つ目の電話番号アプリ比較:4タイプを解説
- 電話番号
関連記事
銀行・決済アプリのSMS受信:正直な限界
銀行や決済アプリのSMSを2つ目の番号で受信できる?多くの銀行が断る理由、当社の規定、認証アプリなど安全な代替策を解説。
SMS認証コードが届かない時の対処法【全アプリ共通】
SMS認証コード(OTP)が届かない?番号の形式、再送タイマー、音声通話、受信拒否、キャリアのフィルタを確認し、切り替え時も解説。
デジタルノマドの電話番号|母国の番号を残し現地番号を追加
デジタルノマドが母国の認証コードを受け取り続け、滞在国の番号を追加し、ローミングの想定外を避ける方法。銀行と2FAの注意点も正直に解説。
その他のガイド
2つ目の電話番号アプリ比較:4タイプを解説
2つ目の電話番号アプリを4タイプで比較。VoIPアプリ、SMS認証の使い捨てサービス、実在する携帯番号のレンタル、eSIMの長所と短所を正直に解説します。
Google Voiceが日本で使えない時の代替策
Google Voiceが自分の国で使えない?Googleが案内する対応国、個人向けが米国限定の理由、レンタル番号など正直な代替策を解説します。
仮想番号・2枚目SIM・eSIMの違いと選び方
仮想番号、2枚目のSIM、eSIMを比較。費用、必要な端末、本人確認、海外利用、SMSと通話、長期保有から最適な2つ目の番号を選べます。
· SMS Hallo