Кодировщик и декодировщик Base32
Base32 представляет двоичные данные 32 символами: цифрами 2-7 и 26 заглавными буквами, без 0/O и 1/I, чтобы избежать ошибок чтения. Поэтому он идеален для всего, что человек должен печатать или диктовать вслух: секретов TOTP для двухфакторной аутентификации, кодов ваучеров, регистронезависимых идентификаторов. Этот инструмент кодирует двоичные данные или текст в Base32 и декодирует обратно, следуя RFC 4648 с необязательным дополнением.
Как кодировать или декодировать Base32
-
1
Вставьте текст или загрузите файл
Вход считается байтами. Для текстового ввода по умолчанию используется UTF-8.
-
2
Выберите направление
Кодирование превращает сырые байты в строку Base32; декодирование восстанавливает байты.
-
3
Настройте дополнение
RFC 4648 задает дополнение `=` до длины, кратной 8. Отключите его для секретов TOTP и компактных токенов.
-
4
Скопируйте результат
Закодированный вывод — в верхнем регистре, с дополнением или без него по вашей настройке.
Алфавит RFC 4648
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 2 3 4 5 6 7
Нет 0, нет 1, нет 8, нет 9. Каждый символ кодирует 5 бит (2^5 = 32), поэтому 5 входных байтов превращаются в 8 выходных символов.
Разбор примера
Кодирование ASCII-строки foo (байты 0x66 0x6F 0x6F = 01100110 01101111 01101111):
- Разбить на 5-битные группы:
01100 11001 10111 10110 1111(последняя группа дополнена) - Сопоставить с алфавитом:
MZXW6 - Добавить дополнение
===до 8 символов:MZXW6===
Дополнение и правила длины
| Входных байтов | Длина вывода | Дополнение |
|---|---|---|
| 1 | 8 | ====== |
| 2 | 8 | ==== |
| 3 | 8 | === |
| 4 | 8 | = |
| 5 | 8 | (нет) |
Варианты за пределами RFC 4648
- Base32 Hex — алфавит
0-9A-V, используется NSEC3 в DNSSEC. - Crockford’s Base32 — алфавит, оптимизированный для ввода человеком; при декодировании заменяет
O→0,I/L→1. Используется ULID и некоторыми лицензионными ключами.
По умолчанию инструмент использует стандартный RFC 4648.
Секреты TOTP
Формат URI otpauth://, используемый Google Authenticator и каждым современным приложением 2FA, кодирует общий секрет в Base32 без дополнения. Когда вы сканируете QR-код для “My Service”, параметр secret= — это строка Base32. Декодируйте его этим инструментом, чтобы посмотреть сырые байты, которые использует HMAC.
Часто задаваемые вопросы
Base32 регистронезависим и избегает похожих символов, что важно для всего, что человек читает или вводит. Base64 плотнее (меньше символов для тех же байтов), но требует отличать I от l и 0 от O, что плохо работает в рукописи и мелком шрифте.
RFC 4648 говорит, что да, но большинство реальных потребителей (приложения TOTP, библиотеки ULID, преобразователи DNSSEC) принимают ввод без дополнения. Этот инструмент дает выбор; вставьте любую форму, и декодирование должно сработать.
В стандартном Base32 нет 0, 1, 8 или 9, и он всегда в верхнем регистре. Если во вводе они есть, возможно, это вариант Crockford или base32hex, а не RFC 4648. Очистите ввод или выберите правильный вариант.
Нет. Кодирование и декодирование выполняются в браузере. Ни ввод, ни результат не покидают ваш компьютер.
Сопутствующие инструменты
Кодировщик шифра A1Z26
Кодируйте текст шифром A1Z26 (A=1, B=2, ... Z=26) или декодируйте числовую последовательность обратно в буквы, выбрав разделитель.
Шифрование / расшифровка AES
Шифруйте и расшифровывайте текст низкого риска с AES-шифрами OpenSSL. Парольная фраза хэшируется SHA-256, а Base64-вывод содержит IV плюс шифротекст.
Кодировщик шифра Атбаш
Кодируйте или декодируйте текст шифром Атбаш, еврейской заменой, где A-Z отображается в Z-A. Одна и та же операция шифрует и расшифровывает.
Генератор bcrypt
Сгенерируйте bcrypt hash из plaintext password. Настраиваемый cost factor от 4 до 14, совместим с Laravel, Django, Node и PHP.
Кодировщик и декодировщик Base85
Кодируйте и декодируйте Base85 в вариантах Adobe Ascii85 (PostScript/PDF) или Z85 (ZeroMQ). Компактнее Base64 для двоичных данных.
Генератор bcrypt-хешей
Генерируйте bcrypt-хеши или проверяйте пароль в открытом виде относительно существующего bcrypt-хеша. Генерация и проверка рядом в одном инструменте.