Декодировать секрет base32
Ключи настройки TOTP и DNS-безопасные токены приходят в алфавите A–Z2–7. Декодирование base32 показывает байты; кодирование подтверждает обратный путь.
Инструменты, используемые в этом руководстве
Задача
Base32 жертвует плотностью ради надёжности: нет двусмысленных 0/O или 1/l, безопасно в DNS и на бумаге. Когда 2FA-ключ или лицензионный токен приходит как JBSWY3DPK5XXE3DE, декодируйте его, чтобы увидеть лежащий в основе UTF-8 или подтвердить обратимость.
Текст ↔ base32
Вставьте любую из сторон. Кодирование превращает текст UTF-8 в стандартный алфавит с необязательным дополнением «=»; декодирование принимает строчные буквы и игнорирует пробелы и дополнение.
Пример
Hello кодируется в JBSWY3DP (дополнение необязательно). Декодирование jbsw y3dp — строчными буквами с пробелом — по-прежнему возвращает Hello. Обратите внимание: JBSWY3DZ тоже корректная строка и декодируется в Helly — base32 проверяет алфавит, а не смысл.
Охват
Base32 по RFC 4648 для текста UTF-8, до 200 000 символов в обе стороны. Некорректный UTF-8 в декодированных байтах сообщается, а не превращается в кракозябры. Варианты Base32hex и Crockford — другие алфавиты и не распознаются.