Расшифровка двухфакторной аутентификации Google в формате QR-кода

Согласно вики, секретный ключ двухфакторной аутентификации Google должен состоять из 16-символьной строки base32. Когда я декодирую QR-код, который мне прислал Google, я обнаружил, что он соответствует формату ключа, указанному Google, но я обнаружил, что длина секрета неверна. Google изменил секретную длину или формат кодировки? Можно ли как-нибудь получить 16-символьную строку base32 из моего секретного ключа? Мой ключ из QR-кода (который я точно не копирую и не вставляю точно):

otpauth://totp/Google%3Amyemail%40gmail.com?secret=7gmdmzctmhpm7i6nrmbom6u5gny7o6la&issuer=Google

Вот что я знаю:

  1. Это не гекс.
  2. Это 32 символа в длину.
  3. Это соответствует base32, но почему все это в нижнем регистре? Пример спецификации ключевого формата Google показал все это в верхнем регистре?

Единственное, что я могу себе представить, это то, что Google изменил формат с 16 символов до 32 символов. Кто-нибудь знает об этом?

1 ответ

Длина секрета составляет всего 16 символов, что является одним случаем.

Неважно, является ли он строчными или прописными буквами A, так как он переводится в один и тот же бит.

Это строка из 16, 26 или 32 символов в формате base32. См. https://en.wikipedia.org/wiki/Google_Authenticator.

Другие вопросы по тегам