Что такое SMS-верификация и как работают коды по SMS

Что такое SMS-верификация и как работают коды по SMS
Коротко

SMS-верификация — это проверка, при которой приложение отправляет одноразовый код в SMS на номер телефона и просит ввести его, подтверждая, что вы можете получать сообщения на этот номер. Код идёт от сервера приложения к SMS-шлюзу, а затем через мобильных операторов на телефон или во входящие этого номера. Такую проверку широко используют при регистрации и входе, но организации по безопасности, например NIST, оценивают её ниже приложений-аутентификаторов и ключей безопасности.

Для чего нужна SMS-верификация

Приложения используют SMS-верификацию, чтобы ответить на один вопрос: может ли этот человек прямо сейчас получать сообщения на этот номер? Если вы прочитали код и ввели его, приложение считает номер подтверждённым.

Эта одна проверка решает сразу несколько задач. При регистрации она привязывает аккаунт к доступному номеру и делает массовое создание фейковых аккаунтов дороже, ведь для каждого нужен рабочий номер. При входе она служит вторым фактором в дополнение к паролю. При восстановлении аккаунта она даёт приложению способ связаться с вами, если вы забыли пароль.

Такой код обычно называют OTP (one-time password, одноразовый пароль) или просто кодом подтверждения. В глоссарии /glossary объясняются эти и связанные термины — 2FA, A2P SMS, имя отправителя (sender ID) и SMS-шлюз.

Путь кода шаг за шагом

1. Вы вводите номер телефона. Приложение проверяет формат, часто приводя номер к международному формату E.164 с кодом страны, и может проводить собственные проверки страны и типа номера.

2. Сервер приложения создаёт случайный код, сохраняет его вместе со сроком действия и просит SMS-провайдера отправить его. Для этого шага многие приложения используют сторонний сервис рассылки сообщений.

3. SMS-провайдер, которого часто называют SMS-шлюзом, передаёт сообщение в мобильную сеть. Сообщения от приложений людям называются A2P SMS (application-to-person), и они могут приходить с короткого номера, обычного длинного номера или буквенного имени отправителя.

4. Сообщение передаётся между операторами, пока не дойдёт до сети, обслуживающей номер получателя. Эта сеть доставляет его на SIM-карту или в онлайн-входящие, если номер обслуживается сервисом вроде SMS Hallo.

5. Вы читаете код и вводите его в приложение или копируете в одно касание. Приложение сравнивает его с сохранённым кодом. Если код совпадает и не истёк, проверка пройдена, и повторно использовать код уже нельзя.

Весь путь обычно занимает секунды, но каждый шаг обслуживает отдельная компания, поэтому сбой может произойти на любом звене цепочки.

Голосовые звонки, flash call и другие варианты

Многие приложения предлагают запасной вариант, если SMS не дошло: автоматический голосовой звонок, в котором код зачитывают вслух. Другие используют flash call: приложение звонит и считывает код из номера звонящего, а отвечать на звонок не нужно. Некоторые мессенджеры также могут доставлять коды через своё приложение или через другой мессенджер, если он доступен.

Эти варианты тоже зависят от того, дозвонится ли телефонная сеть до номера. Если номер принимает не только SMS, но и звонки, у вас больше способов пройти проверку. Номера SMS Hallo принимают и то, и другое: коды появляются во входящих SMS, а на звонки можно отвечать в браузерной звонилке.

Частые причины, почему не приходит код

Номер введён с ошибкой. Пропущенный код страны, лишний ноль в начале или переставленные цифры отправят код не туда. Всегда проверяйте номер, который показывает приложение.

Приложение не отправляет коды на такой тип номера. Многие приложения проверяют тип и страну номера перед отправкой. Одни не принимают стационарные номера или номера интернет-телефонии, другие ограничивают отдельные страны или диапазоны номеров. Приложение может показать ошибку, а может просто не отправить код.

Ограничения частоты запросов. Если запрашивать код за кодом, приложение или SMS-провайдер может на время приостановить отправку. Дождитесь окончания таймера и запросите код один раз.

Фильтрация у оператора и задержки маршрутизации. Сети фильтруют трафик, похожий на спам, а международные маршруты могут добавлять задержки. Код, который идёт несколько минут, может прийти уже после истечения срока действия.

Телефон или входящие. На SIM-карте код могут скрыть слабый сигнал, переполненные входящие, заблокированные отправители или спам-фильтры. С онлайн-номером проверьте, что номер всё ещё активен и что в панели управления вы смотрите на нужный номер.

Срок действия кода истёк. Большинство кодов действуют всего несколько минут. Используйте самый новый код, а если сомневаетесь, запросите новый.

SMS в сравнении с другими вторыми факторами

SMS удобны, потому что номер телефона есть почти у всех, но авторитетные рекомендации ставят их ниже других способов. Руководство NIST по цифровой идентификации SP 800-63B-4 относит аутентификацию через телефонную сеть общего пользования к ограниченным методам, говорит, что проверяющей стороне стоит учитывать сигналы вроде замены SIM или переноса номера, требует наличия других типов аутентификаторов и указывает, что внеполосные коды не защищены от фишинга.

FTC объясняет практический риск: злоумышленники могут захватить номер через подмену SIM-карты (SIM swap) и получать коды. Приложения-аутентификаторы FTC называет более безопасными, а ключи безопасности — самым надёжным вариантом. Рекомендации CISA для людей, которые особенно часто становятся целями атак, идут дальше и советуют вообще не использовать SMS как второй фактор, отмечая, что SMS не шифруются.

Приложения-аутентификаторы генерируют на вашем устройстве коды, зависящие от времени, на основе общего секрета по стандарту TOTP (IETF RFC 6238), поэтому через телефонную сеть ничего не передаётся. Ключи безопасности и passkey используют криптографию с открытым ключом, привязанную к настоящему сайту, что останавливает большинство фишинговых атак.

Вывод: SMS-верификация подходит для подтверждения номера при регистрации и намного лучше отсутствия второго фактора, но для самых важных аккаунтов добавьте приложение-аутентификатор или ключ безопасности, если сервис это предлагает.

Советы, чтобы коды приходили надёжно

Запрашивайте код, только когда готовы его ввести: большинство кодов истекают за несколько минут. Пока ждёте, не закрывайте приложение и не начинайте всё заново.

Если приложение даёт выбор, после одной неудачной попытки с SMS попробуйте голосовой звонок. Звонок может пройти по другому маршруту в сети.

Используйте номер, который останется у вас. Верификация — не разовое событие: тот же номер может понадобиться позже для входа с нового устройства и сброса пароля, поэтому номер, доступный вам и через несколько месяцев, избавит от проблем.

Никому не сообщайте код подтверждения, даже тому, кто представляется сотрудником поддержки приложения. Код, отправленный вам, доказывает, что вы контролируете номер, и, отдав его, вы передаёте этот контроль другому.

Поддерживайте данные аккаунта в актуальном состоянии. Если меняете номер, добавьте новый в настройках каждого приложения, пока старый ещё работает, — тогда вы не окажетесь заблокированы в ожидании кода, который уходит на номер, которого у вас больше нет.

Почему приложениям важно, какой у вас номер

Поскольку SMS-верификация — ещё и барьер против фейковых аккаунтов, многие приложения проверяют сам номер. Номерами с бесплатных публичных сайтов для приёма SMS пользуется каждый посетитель, поэтому приложения часто их блокируют, а любой код, отправленный на такой номер, могут прочитать посторонние.

Реальные мобильные номера — именно тот тип, которого ждёт большинство сервисов. SMS Hallo сдаёт в аренду реальные мобильные номера в местном мобильном формате 181 страны, и пока вы арендуете номер, его сообщения видите только вы. Тем не менее каждое приложение само решает, какие номера принимать, и ни один провайдер не может обещать, что конкретный номер примет каждое приложение.

Проходите верификацию только для аккаунтов, которые вам разрешено иметь. Правила допустимого использования SMS Hallo запрещают фейковые или дублирующие аккаунты, мошенничество и использование номеров, чтобы избежать проверки личности.

Получение кодов подтверждения в SMS Hallo

Зарегистрируйтесь по email и паролю, выберите страну и номер и оплатите. Входящие SMS появляются в панели управления, а коды распознаются автоматически и готовы к копированию.

Каждый номер SMS Hallo включает безлимитные входящие SMS, безлимитные входящие звонки, 500 исходящих SMS в месяц и 1 000 минут исходящих звонков в месяц. Лимиты обновляются каждые 30 дней, неиспользованный остаток не переносится.

Цены — от $1.80 в месяц на 12-месячном тарифе ($21.60 при оплате за год), одинаково во всех странах, без платы за подключение. Номер остаётся вашим, пока вы его продлеваете или держите включённым автопродление: номер с истёкшим сроком могут передать другому человеку, и тот сможет получать коды для аккаунтов, которые всё ещё к нему привязаны.

Каждый номер SMS Hallo сопровождается тремя гарантиями. Первая — бесплатная замена в течение 7 дней: в течение 7 дней можно бесплатно заменить номер на другой доступный номер той же страны до 3 раз, и новый номер сохраняет ваш тариф и дату окончания. Вторая — «работает или возврат 100%»: если номер не работает с приложением, для которого вы его арендовали (например, код так и не пришёл), запросите возврат в течение 7 дней и получите 100% оплаченной суммы. Третья — возврат денег в течение 7 дней: полный возврат без лишних вопросов, если с номера не совершались и на него не поступали звонки или SMS.

Источники

Частые вопросы

Что такое код подтверждения по SMS?

Короткий одноразовый код, обычно от 4 до 8 цифр, который приложение отправляет в SMS, чтобы убедиться, что вы можете получать сообщения на номер телефона. Он действует ограниченное время и может быть использован только один раз.

SMS-верификация — это то же, что двухфакторная аутентификация?

Не всегда. При регистрации она лишь подтверждает ваш номер. Когда её используют при входе в дополнение к паролю, она служит вторым фактором.

Безопасна ли SMS-верификация?

Она добавляет защиту, но NIST, FTC и CISA оценивают её ниже приложений-аутентификаторов и ключей безопасности из-за подмены SIM, перехвата и фишинга. Для важных аккаунтов используйте более надёжный способ, если он доступен.

Почему код приходит голосовым звонком?

Многие приложения предлагают звонок как запасной вариант, если SMS задерживается или блокируется. Автоматический голос зачитывает код, а вы вводите его.

Почему не пришёл код?

Частые причины: ошибка в номере, приложение не отправляет коды на такой тип номера, ограничения после повторных запросов, фильтрация или задержки у оператора и истёкший срок действия кода.

Можно ли получать коды подтверждения без SIM-карты?

Да. Онлайн-номер мобильного принимает SMS в веб-панели. Приложения по-прежнему сами решают, какие номера принимать, а если код так и не придёт, действуют гарантии SMS Hallo.

Что такое SMS-шлюз?

Сервис, через который приложения отправляют SMS в мобильную сеть. Он направляет каждое сообщение оператору, обслуживающему номер получателя.

Руководства

Читайте также

Другие руководства

· SMS Hallo

Работает в WhatsApp, Facebook, Telegram, Google и не только

Гарантия замены 7 дней · Не работает? Вернём 100 %

Гарантия замены 7 дней: если номер не работает для вас в первые 7 дней, замените его на другой свободный номер той же страны — бесплатно, в один клик в личном кабинете. Новый номер сохраняет ваш тариф и срок действия.

Если номер не работает с приложением, для которого вы его арендовали (например, код подтверждения так и не пришёл), сообщите нам в течение 7 дней — и мы вернём 100 % суммы, уплаченной за номер.

Гарантия возврата денег 7 дней →