TOTP

3 февраля, 2026, 16:59

TOTP (Time-based One-Time Password, Одноразовый пароль на основе времени) — это алгоритм генерации одноразовых паролей (OTP), который использует текущее время в качестве источника изменчивости для создания уникального цифрового кода, действительного в течение короткого промежутка времени (обычно 30 или 60 секунд). TOTP является стандартизированным и широко распространённым методом двухфакторной (2FA) или многофакторной аутентификации (MFA).

Возможности TOTP:

  • Генерация динамических одноразовых паролей: Создание кодов, которые автоматически меняются через заданные интервалы времени, что исключает возможность их повторного использования.
  • Офлайн-работа: Коды генерируются локально на устройстве пользователя (в приложении-аутентификаторе) без необходимости постоянного сетевого соединения с сервером, что повышает доступность.
  • Синхронизация по времени: Алгоритм использует синхронизированное время между сервером аутентификации и устройством пользователя (через NTP) для валидации кода.
  • Поддержка в стандартных приложениях-аутентификаторах: Работает с популярными приложениями, такими как Google Authenticator, Microsoft Authenticator, Authy, FreeOTP и другими.
  • Простота интеграции: Легко внедряется в веб-приложения, мобильные приложения и корпоративные системы благодаря открытому стандарту (RFC 6238), основанному на HMAC (Hash-based Message Authentication Code).

TOTP является развитием более раннего алгоритма HOTP (HMAC-based One-Time Password), который использовал счётчик вместо времени. Использование времени делает TOTP более удобным и безопасным, так как окно валидности кода ограничено. Для настройки TOTP пользователь сканирует QR-код (содержащий секретный ключ) или вводит ключ вручную в приложение-аутентификатор. Этот секретный ключ хранится как на сервере, так и на устройстве пользователя и никогда не передаётся по сети после первоначальной настройки.

Хотя TOTP значительно безопаснее, чем однофакторная аутентификация (только пароль), он всё же может быть уязвим для атак, таких как фишинг с перехватом кода (real-time phishing), если пользователь вводит код на поддельном сайте. Для обеспечения максимальной защиты рекомендуется использовать FIDO2/WebAuthn с аппаратными ключами безопасности, которые устойчивы к фишингу. Тем не менее, TOTP остаётся одним из самых популярных, доступных и удобных методов MFA для массового применения.

Упоминания