Открыть сервис

Система код-авторизация

Система код-авторизация — это метод аутентификации и подтверждения операций, при котором пользователь получает одноразовый код (обычно цифровой или буквенно-цифровой) через отдельный канал связи (SMS, электронную почту, push-уведомление, голосовой вызов или специализированное приложение-аутентификатор) и вводит его в интерфейсе сервиса для получения доступа или завершения транзакции. Данный подход является разновидностью двухфакторной аутентификации (2FA), где фактором владения выступает устройство или канал, на который отправляется код, а фактором знания — сам код, известный только пользователю.

История развития

Предпосылки появления

До широкого распространения интернета и цифровых услуг аутентификация в основном основывалась на однофакторных методах — паролях или PIN-кодах. С развитием электронной коммерции и онлайн-банкинга в конце 1990-х — начале 2000-х годов стали очевидны уязвимости такого подхода: перехват паролей (фишинг, кейлоггеры), компрометация баз данных сервисов и социальная инженерия.

Первые реализации

Первые коммерческие системы код-авторизации появились в начале 2000-х годов в банковском секторе. Банки начали выдавать клиентам физические устройства — токены (например, RSA SecurID), которые генерировали одноразовые коды с привязкой ко времени. Параллельно развивались решения на основе SMS: банк отправлял на зарегистрированный номер телефона клиента код, который требовалось ввести для подтверждения перевода или входа в систему.

Современный этап

С 2010-х годов код-авторизация стала стандартом де-факто для большинства финансовых, государственных и крупных коммерческих онлайн-сервисов. Внедрение стандарта TOTP (Time-based One-Time Password) в 2011 году (RFC 6238) позволило создавать приложения-аутентификаторы (Google Authenticator, Authy, Яндекс.Ключ), работающие без необходимости подключения к сети оператора связи. К середине 2020-х годов код-авторизация через SMS и push-уведомления стала обязательной для многих операций в соответствии с законодательством ряда стран, включая требования Центрального банка РФ по усилению защиты финансовых транзакций.

Классификация методов

По каналу доставки кода

  1. SMS-коды — наиболее распространённый метод. Код отправляется через SMS-сообщение на мобильный телефон. Преимущество — доступность (требуется только телефон), недостаток — уязвимость к SIM-свопингу (перевыпуску SIM-карты злоумышленником) и перехвату сообщений через SS7-протоколы.
  2. Email-коды — отправка кода на электронную почту. Менее безопасен, чем SMS, так как почтовый ящик может быть скомпрометирован, но удобен для сервисов, где телефон не указан.
  3. Push-уведомления — код отображается в уведомлении на мобильном устройстве или в специальном приложении банка/сервиса. Более безопасен, так как требует активного сеанса приложения.
  4. Приложения-аутентификаторы — генерация кода на основе TOTP или HOTP (HMAC-based One-Time Password) без передачи по сети. Пользователь вводит код, сгенерированный локально на устройстве (Google Authenticator, Microsoft Authenticator).
  5. Голосовые вызовы — код диктуется роботом в телефонном звонке. Используется как резервный метод при недоступности SMS или приложения.
  6. Аппаратные токены — физические устройства (RSA SecurID, YubiKey), генерирующие код или выполняющие криптографическую подпись. Наиболее защищённый, но наименее удобный метод.

По сроку действия кода

  • Одноразовые коды — действительны для одной сессии или одной операции (наиболее распространены).
  • Коды с ограниченным временем жизни — типичное время действия от 30 секунд до 5 минут (TOTP).
  • Многоразовые коды — используются редко, обычно для экстренного доступа (backup codes).

Устройство и принцип работы

Базовая схема

  1. Пользователь инициирует действие (вход в систему, перевод средств).
  2. Сервер генерирует случайный код (обычно 4–8 цифр) и связывает его с идентификатором сессии пользователя.
  3. Код отправляется на заранее зарегистрированный канал связи (телефон, email, приложение).
  4. Пользователь вводит полученный код в интерфейсе сервиса.
  5. Сервер сверяет введённый код с сохранённым значением. При совпадении и соблюдении временных ограничений операция подтверждается.

Технические протоколы

  • TOTP (RFC 6238)алгоритм, основанный на HMAC-SHA1, где код вычисляется на основе текущего времени (обычно с шагом 30 секунд). Сервер и клиент имеют общий секретный ключ, синхронизированный по времени.
  • HOTP (RFC 4226) — код вычисляется на основе счётчика событий. Каждое использование увеличивает счётчик на стороне сервера и клиента.
  • SMS-шлюзы — сервисы отправляют SMS через API операторов связи (например, SMS-центры банков).

Применение

Финансовый сектор

Код-авторизация является обязательным элементом для большинства операций в интернет-банкинге и мобильных банках. В России, согласно требованиям Банка России, для переводов свыше определённой суммы (обычно от 1000–5000 рублей) требуется подтверждение одноразовым кодом. Крупнейшие банки (Сбербанк, ВТБ, Т-Банк) используют комбинацию SMS и push-уведомлений.

Государственные услуги

Портал «Госуслуги» использует код-авторизацию для входа в личный кабинет (SMS на подтверждённый номер) и для подтверждения юридически значимых действий (подписание заявлений, получение выписок). С 2023 года для некоторых операций введена обязательная двухфакторная аутентификация с кодом.

Коммерческие онлайн-сервисы

Крупные платформы (Ozon, Wildberries, Яндекс.Такси) применяют код-авторизацию для входа в аккаунт (логин по номеру телефона + SMS-код) и для подтверждения оплаты или изменения настроек.

Корпоративная безопасность

В компаниях код-авторизация используется для доступа к VPN, внутренним системам (ERP, CRM) и для подтверждения административных действий. Часто применяются аппаратные токены или приложения-аутентификаторы.

Критика и недостатки

Уязвимости

  • SIM-свопинг — злоумышленник, получив дубликат SIM-карты, перехватывает SMS-коды. В России этот метод активно используется мошенниками с 2020 года.
  • Фишинг — поддельные сайты или звонки от имени службы поддержки вынуждают пользователя сообщить код.
  • Перехват SMS — через уязвимости SS7-протокола (используется редко в РФ, но технически возможен).
  • Вредоносное ПО — кейлоггеры или трояны на мобильном устройстве могут перехватывать коды из SMS или приложений.

Удобство

  • Зависимость от работы оператора связи (SMS может задерживаться или не доставляться).
  • Необходимость иметь при себе телефон или токен.
  • Задержки при международном роуминге (SMS может не приходить).

Альтернативы

В качестве более безопасных методов рассматриваются биометрическая аутентификация (отпечаток пальца, лицо) и аппаратные ключи (FIDO2/WebAuthn). Однако код-авторизация остаётся наиболее распространённым компромиссом между безопасностью и удобством для массового пользователя.

Регулирование в России

В Российской Федерации код-авторизация регулируется рядом нормативных актов:

  • Федеральный закон № 161-ФЗ «О национальной платежной системе» — устанавливает требования к подтверждению переводов электронных денежных средств.
  • Указание Банка России № 5348-У — определяет порядок использования одноразовых кодов в платежных системах.
  • Федеральный закон № 152-ФЗ «О персональных данных» — регулирует обработку номеров телефонов и адресов электронной почты, используемых для отправки кодов.
  • ГОСТ Р 57580.1-2017 — стандарт по защите информации в финансовых организациях, включающий требования к аутентификации.

Интересные факты

  • Первое массовое применение одноразовых кодов в России началось в 2005–2006 годах, когда Сбербанк внедрил SMS-подтверждение для операций в системе «Сбербанк Онлайн».
  • Алгоритм TOTP, лежащий в основе большинства приложений-аутентификаторов, был разработан инженерами из RSA Laboratories и Google в 2010–2011 годах.
  • В 2023 году Центральный банк РФ рекомендовал банкам переходить от SMS-кодов к push-уведомлениям и биометрии из-за роста случаев SIM-свопинга.
  • Некоторые сервисы (например, Telegram) используют код-авторизацию не только для входа, но и для защиты конфиденциальных действий (смена номера, удаление аккаунта).

Источники

  • Федеральный закон от 27.06.2011 № 161-ФЗ «О национальной платежной системе»
  • Указание Банка России от 17.10.2022 № 5348-У
  • RFC 6238 — TOTP: Time-Based One-Time Password Algorithm (IETF, 2011)
  • RFC 4226 — HOTP: An HMAC-Based One-Time Password Algorithm (IETF, 2005)
  • ГОСТ Р 57580.1-2017 «Защита информации финансовых организаций. Базовый состав организационных и технических мер»
  • Материалы Центрального банка РФ по вопросам информационной безопасности (2020–2024)

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →