otpauth:// — структура ссылки и где применяется
otpauth:// — схема URI, которой передают настройки двухфакторной аутентификации: тип генератора, имя аккаунта, общий секрет в Base32, алгоритм, длину кода и шаг времени. Именно эта строка зашита в QR-код, который сервис показывает при подключении 2FA.
Определение
Сервис включает двухфакторку и показывает квадратик «отсканируйте приложением». Внутри квадратика не ссылка на сайт, а строка со схемой otpauth://. Схему сделали для Google Authenticator, и она стала стандартом де-факто: её понимают Яндекс Ключ, Aegis, менеджеры паролей.
По устройству это родственник WIFI URI и Geo URI — формат «данные для приложения, а не адрес в интернете». Обработчик один: генератор кодов на вашем устройстве.
Как работает
Строка собрана из четырёх частей, и порядок у них жёсткий:
otpauth://totp/Сервис:ivan@mail.ru?secret=BASE32&issuer=Сервис&period=30
| Часть строки | Роль |
|---|---|
otpauth:// | схема: данные для приложения, а не адрес в сети |
totp / hotp | тип: считать код от времени или от счётчика нажатий |
Сервис:ivan@mail.ru | метка: что показать в списке аккаунтов |
?secret=…&issuer=… | параметры: секрет и настройки генератора |
Ценность в строке одна — secret, ключ в Base32: из него и текущего времени TOTP считает код, там же построчно разобраны остальные поля и значения по умолчанию. Здесь важнее синтаксис. Схема и тип регистр не различают, порядок параметров не важен, а метка к разбору чувствительна: двоеточие внутри логина, пробелы и кириллица пишутся процентными кодами (%3A, %20), иначе приложение обрежет метку на первом спецсимволе. Разошлись issuer в метке и в параметрах — одни приложения покажут одну запись, другие две.
Секрет показывают один раз: закрыли окно — тот же QR не получить, только отключить 2FA и подключить заново с новым секретом.
Связанные концепции
Что идёт не так с этой строкой:
- скриншот QR улетел в облачную галерею или в чат — кто увидит картинку, соберёт второй рабочий генератор ваших кодов, и вы не узнаете;
- картинку прогнали через онлайн-сканер ради любопытства — секрет ушёл на чужой сервер (как отсканировать QR-код по фото);
- нестандартные
digits=8илиperiod=60часть приложений игнорирует и выдаёт коды, которые сервер не примет; - секрет вставлен с пробелами: регистр Base32 не важен, а пробелы и символы вне A–Z, 2–7 ломают разбор.
Сам QR обычный: латиница, цифры и двоеточия — это байтовый режим кодирования, а строка на сотню символов даёт картинку средней плотности.
Частые вопросы
Что такое otpauth:// в QR-коде?
Строка с настройками двухфакторной аутентификации: тип генератора, имя аккаунта, секрет в Base32, алгоритм, длина кода и шаг времени. Приложение-генератор разбирает её и добавляет запись в список. Сайта по этой ссылке нет, обработчик только локальный.
Можно ли настроить 2FA без сканирования QR?
Да. Под кодом почти всегда есть «ввести ключ вручную» — там та же Base32-строка, что в параметре secret. Вбейте её в приложении, выберите тип «по времени» и шаг 30 секунд. Способ выручает, когда камера сломана, генератор стоит на компьютере или QR не читается с экрана.
Что будет, если кто-то получит мою otpauth-ссылку?
У него появится генератор, выдающий те же коды, что и ваш, — бессрочно и незаметно. Пароль ему всё ещё нужен, но второй фактор перестаёт быть фактором. Если картинка утекла, отключите 2FA и подключите заново: это выпустит новый секрет и убьёт старый.
Почему secret записан странными буквами?
Это Base32: алфавит из 26 заглавных латинских букв и цифр 2–7, без 0, 1, 8 и 9, чтобы не путать ноль с буквой O. Формат выбран ради ручного ввода — строку можно продиктовать по телефону или перепечатать с бумаги без ошибок, чего не скажешь про Base64.
Почему браузер не открывает otpauth-ссылку?
Потому что это не веб-адрес: сервера, к которому можно обратиться по схеме otpauth://, в интернете нет. Строку обрабатывает локальная программа, зарегистрировавшая схему у системы, — генератор кодов или менеджер паролей. Нет такой программы, и браузер либо ничего не сделает, либо предложит поискать приложение в магазине.
Автор материала
Андрей СамойловЭксперт по QR-кодам и SaaS-маркетингу. 10 лет в SaaS, маркетинге и ИТ.
Об авторе и все материалы