QRkoder

Одноразовый пароль (OTP) — как работает и где применяется

Одноразовый пароль (OTP) — код, который действует на один вход или одну операцию и после этого становится бесполезным. Приходит в SMS или push, генерируется приложением либо аппаратным токеном; срок жизни — от 30 секунд до 15 минут.

Определение

OTP (one-time password) — пароль на один раз. Обычный пароль вы держите в голове годами, и его утечка отдаёт аккаунт. Одноразовый живёт минуты, срабатывает единожды и после предъявления мёртв: перехваченный вчерашний код ничего не стоит.

Это родовое понятие, внутри которого два механизма. HOTP считает код от счётчика: каждое нажатие на токене сдвигает счётчик на единицу. TOTP считает от текущего времени с шагом 30 секунд — по этой схеме работают Google Authenticator, Яндекс Ключ и генераторы внутри банковских приложений.

Не путайте с одноразовым QR-кодом: там гаснет сама картинка после первого сканирования, а OTP — короткая строка, которую вы вводите руками.

Как работает

Либо обе стороны считают код независимо из общего секрета, либо сервер генерирует его сам и доставляет вам. Каналы различаются по цене и по тому, что именно у вас должны украсть.

КаналСрок жизниСлабое место
Приложение-генератор (TOTP)30 секундпотеря телефона: без резервных кодов вход закрыт
SMS5–15 минутперевыпуск SIM, перехват, платная рассылка
Push в приложениидо 2 минутMFA-fatigue: на десятый запрос жмут «подтвердить»
Аппаратный токен30–60 секундцена, логистика, разряженная батарейка
Бумажный список, скретч-картадо использованиякончается, фотографируется за секунду

Часы на телефоне и на сервере расходятся, поэтому сервер принимает окно: текущий шаг плюс-минус один, около полутора минут. У HOTP съезжает счётчик — натыкали лишних кодов на токене, и нужна повторная синхронизация. Плюс лимит: 3–5 промахов, дальше пауза.

Связанные концепции

Что ломает схему на практике:

  • код продиктован «сотруднику банка» по телефону — он и был целью звонка, банк не спрашивает OTP голосом;
  • в SMS читают только цифры, хотя рядом написаны сумма и получатель — текст и есть защита от чужого перевода;
  • OTP не спасает от фишинга в реальном времени: код с поддельной страницы уходит на настоящий сайт в ту же минуту (см. смишинг);
  • SMS стоит денег: 10 000 входов в месяц — это 10 000 платных сообщений, а приложение-генератор бесплатно и работает в самолёте;
  • SMS как резервный вход обнуляет пользу включённого TOTP: атакующий пойдёт по слабому каналу.

В платежах OTP живёт в отдельном протоколе: операцию по карте подтверждает 3D Secure, где код привязан к сумме и мерчанту, а не к входу в аккаунт.

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

Что означает OTP в SMS?

One-time password — одноразовый пароль. Код подтверждения на один вход или одну операцию: обычно 4–6 цифр, срок жизни 5–15 минут. После ввода он гаснет и повторно не работает. В сообщении это слово значит ровно то же, что «код подтверждения» в русских интерфейсах.

Сколько действует одноразовый пароль?

Зависит от канала. Код из приложения-генератора живёт 30 секунд, но сервер принимает и соседний шаг, так что реально около полутора минут. SMS и письма дают 5–15 минут, push — до пары минут. Просроченный код не «дотягивает»: запрашивайте новый, а не вводите старый.

Можно ли назвать OTP сотруднику банка по телефону?

Нет, и это главное правило. Ни банк, ни маркетплейс, ни Госуслуги не спрашивают код голосом — им он не нужен, они его отправили. Любая просьба продиктовать код означает, что на другом конце мошенник, которому этого кода и не хватает для входа или перевода. Положите трубку.

Чем приложение-генератор лучше SMS-кода?

Тремя вещами: код считается на устройстве и работает без сети и без SIM, его не перехватить по каналу связи и не добыть перевыпуском SIM, и он ничего не стоит бизнесу. Минус один: телефон потерялся — доступ закрыт, поэтому резервные коды выписывают сразу.

Почему код не подошёл, хотя я ввёл его правильно?

Три частые причины. Ушло время — шаг сменился, пока вы набирали. Сбились часы на телефоне: включите автоматическое время, иначе генератор считает от неверной минуты. Либо вы взяли код из другого профиля в списке аккаунтов — у нескольких сервисов подписи похожи.

Самойлов Андрей Иванович — Эксперт по QR-кодам и SaaS-маркетингу

Автор материала

Андрей Самойлов

Эксперт по QR-кодам и SaaS-маркетингу. 10 лет в SaaS, маркетинге и ИТ.

Об авторе и все материалы

Создавайте QR-коды бесплатно

Динамические QR-коды с аналитикой, дизайном и без ограничений по сканированиям.

Начать бесплатно