Одноразовые пароли (OTP)¶
Одноразовый пароль (от англ. one-time password, OTP) — это автоматически генерируемый набор символов, действительный для однократного использования в процессе аутентификации или подтверждения транзакции. В отличие от статического пароля, который остаётся неизменным до его смены пользователем, OTP теряет силу сразу после первого применения или по истечении короткого промежутка времени, что существенно снижает риск компрометации учётных данных при перехвате или фишинге.
¶Назначение и принцип работы
Основная цель OTP — обеспечение дополнительного уровня защиты при входе в системы, проведении финансовых операций или изменении критических настроек. Технология реализует концепцию многофакторной аутентификации: пароль выступает вторым фактором (подтверждением владения устройством или каналом связи), дополняя базовый логин и пароль.
Принцип работы строится на генерации уникальной последовательности символов, которую невозможно угадать или использовать повторно. Сервер и клиентское устройство синхронизируются по определённому алгоритму, результатом которого становится совпадение введённого и ожидаемого кода. После успешной проверки код аннулируется, а для следующей попытки входа генерируется новый.
¶Классификация методов генерации
Способы создания одноразовых паролей разделяют на несколько типов в зависимости от механизма синхронизации и канала доставки.
¶По алгоритму генерации (стандарты OATH)
Международный альянс OATH (Initiative for Open Authentication) разработал два открытых стандарта, ставших индустриальной нормой:
- HOTP (HMAC-Based One-Time Password) — алгоритм на основе хеш-функции HMAC-SHA-1. Пароль вычисляется из секретного ключа и счётчика попыток. Каждое успешное использование увеличивает счётчик на единицу, обеспечивая синхронизацию между сервером и клиентом. Код остаётся действительным до момента его применения, что допускает генерацию нескольких кодов заранее.
- TOTP (Time-Based One-Time Password) — модификация HOTP, где вместо счётчика используется текущее время. Пароль меняется через фиксированный интервал (обычно 30 или 60 секунд). Сервер и устройство должны иметь синхронизированные часы. Данный метод стал основой для большинства приложений-аутентификаторов, таких как Google Authenticator или Microsoft Authenticator.
¶По способу доставки
- SMS-сообщения — код отправляется на мобильный телефон пользователя. Наиболее распространённый, но наименее защищённый метод из-за уязвимостей протокола SS7 и риска подмены SIM-карты.
- Электронная почта — код приходит на почтовый ящик. Простой метод, однако требует доверия к безопасности почтового сервиса.
- Мобильные приложения — пароль генерируется локально на устройстве пользователя без передачи по сетям связи. Реализуется по алгоритму TOTP после первичной настройки (сканирования QR-кода с секретным ключом).
- Аппаратные токены — физические устройства (брелоки, карты), отображающие текущий код на дисплее. Не зависят от состояния смартфона и не подвержены удалённым атакам.
- Push-уведомления — на устройство приходит запрос на подтверждение входа, после одобрения которого аутентификация завершается без ввода цифрового кода. Строго говоря, это вариация OTP, где одноразовым является сам факт подтверждения.
- Бумажные списки — резервные коды, напечатанные заранее и хранимые пользователем в безопасном месте. Используются при утере основного устройства.
¶История развития
Идея одноразовых паролей возникла задолго до появления современных компьютерных сетей. В 1981 году американский криптограф Лесли Лэмпорт описал протокол аутентификации с использованием хеш-цепочки одноразовых паролей, который позволял безопасно подтверждать личность при незащищённом канале связи.
В 1990-х годах компания RSA Security выпустила аппаратные токены SecurID, генерирующие коды на основе времени. Эти устройства получили широкое распространение в корпоративном секторе для защиты удалённого доступа к сетям.
Массовое внедрение OTP в потребительские сервисы началось в 2000-х годах с развитием интернет-банкинга и электронной коммерции. Банки стали отправлять коды подтверждения через SMS, что позволило снизить уровень мошенничества с платёжными операциями. В 2011 году Google представила собственное приложение-аутентификатор, популяризировав двухфакторную аутентификацию среди обычных пользователей.
¶Применение
Одноразовые пароли используются в широком спектре сценариев:
- Интернет-банкинг и платёжные системы — подтверждение переводов, оплата счетов, добавление новых получателей средств.
- Корпоративные информационные системы — защита VPN-подключений, удалённых рабочих столов, почтовых серверов.
- Государственные порталы (например, «Госуслуги») — вход в личный кабинет и подтверждение юридически значимых действий.
- Социальные сети и мессенджеры — восстановление доступа к аккаунту, подтверждение входа с нового устройства.
- Облачные сервисы — защита аккаунтов разработчиков и администраторов инфраструктуры.
- Интернет вещей — сопряжение устройств и управление ими.
¶Уязвимости и критика
Несмотря на повышенную безопасность по сравнению со статическими паролями, технология OTP имеет недостатки:
- Перехват SMS — злоумышленники могут перенаправить сообщения на свою SIM-карту, получив контроль над номером телефона жертвы.
- Фишинг — поддельные сайты могут запрашивать код в реальном времени и немедленно использовать его для входа на настоящий ресурс (атака «человек посередине»).
- Социальная инженерия — мошенники звонят пользователям, представляясь сотрудниками банка, и выманивают код подтверждения.
- Несинхронизированность часов — при использовании TOTP расхождение во времени на устройстве приводит к отклонению корректного кода.
- Утомляемость пользователей — необходимость ввода дополнительного кода при каждом входе снижает удобство использования сервисов.
В ответ на эти угрозы финансовые организации внедряют более защищённые методы, такие как биометрическая верификация и анализ поведения, однако OTP продолжает оставаться наиболее универсальным и распространённым средством двухфакторной аутентификации.
¶Перспективы развития
Современные тенденции связаны с переходом от цифровых кодов к бесшовным методам подтверждения. Протокол WebAuthn (стандарт FIDO2) позволяет использовать криптографические ключи на устройствах пользователя вместо ввода кодов. Тем не менее, технология OTP остаётся востребованной как резервный механизм аутентификации и базовый уровень защиты для сервисов с невысокими требованиями к безопасности. Ожидается, что в обозримой перспективе одноразовые пароли будут сосуществовать с биометрией и аппаратными ключами, обеспечивая многоуровневую защиту информационных систем.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →
