TOTP & HOTP

TOTP (одноразовый пароль на основе времени, RFC 6238) и HOTP (одноразовый пароль на основе HMAC, RFC 4226), два RFC, которые реализует каждый QR-код регистрации 2FA. Схема URI otpauth://, де-факто стандарт Google Authenticator, поддерживаемый всеми основными приложениями-аутентификаторами.

Спецификация TOTP:RFC 6238 (time-based, 2011).
Спецификация HOTP:RFC 4226 (counter-based, 2005).
Схема URI:Google Authenticator Key URI Format, the format every authenticator agrees on.

Что это такое

QR-код регистрации 2FA, это URL в схеме otpauth://, содержащий общий секрет и идентифицирующие метаданные. Формат:

otpauth://TYPE/LABEL?secret=SECRET&issuer=ISSUER&algorithm=ALG&digits=N&period=SEC

Эталонные тестовые векторы

CaseInputsExpected otpauth:// URI
TOTP, minimal (SHA1, 6 digits, 30 s)issuer=GitHub
account=alice@example.com
secret=JBSWY3DPEHPK3PXP
otpauth://totp/GitHub:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=GitHub
TOTP, SHA256, 8 digitsissuer=Corp
account=bob
secret=JBSWY3DPEHPK3PXP
algorithm=SHA256
digits=8
otpauth://totp/Corp:bob?secret=JBSWY3DPEHPK3PXP&issuer=Corp&algorithm=SHA256&digits=8
HOTP, counter=0issuer=YubiKey
account=carol
secret=JBSWY3DPEHPK3PXP
counter=0
otpauth://hotp/YubiKey:carol?secret=JBSWY3DPEHPK3PXP&issuer=YubiKey&counter=0
TOTP, RFC 6238 reference secretissuer=Example
account=test
secret=GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ
digits=8
Standard RFC test secret (12345678901234567890). Produces TOTP 94287082 at T=59 s.

Онлайн-валидатор секрета Base32

Приложения-аутентификаторы отклоняют секреты, содержащие символы за пределами алфавита Base32 (A-Z, 2-7). Ниже тот же валидатор, который Abundera встраивает в генератор TOTP, работает в вашем браузере.

Введите секрет для проверки.

Распространённые ошибки

Совместимость с аутентификаторами

AppTOTP SHA1TOTP SHA256/512HOTP8-digitNotes
Google AuthenticatorYesIgnoredYesIgnoredThe de facto baseline. Always targets this first.
1PasswordYesYesYesYesFull RFC support.
AuthyYesYesNoYesDrops HOTP in newer versions.
BitwardenYesYesYesYesFull RFC support.
Microsoft AuthenticatorYesYesYesYesFull RFC support.
YubiKey AuthenticatorYesYesYesYesHOTP is the canonical YubiKey mode.
Duo MobileYesIgnoredNoIgnoredUses its own push flow; TOTP is fallback only.

Смотрите также

Ссылки на спецификации проверены 2026-04-18. RFC 6238 (2011), RFC 4226 (2005), Google Key URI Format.