Base32

Кодирование и декодирование Base32 (RFC 4648)

Нашли ошибку или хотите предложить улучшение?

Улучшить калькулятор «Base32»

Теория

Base32 переводит двоичные данные в текст из 32 символов — буквы A–Z и цифры 2–7 (без похожих друг на друга 0 и 1). Байты группируют по пять (40 бит) и разбивают на восемь блоков по 5 бит; остаток дополняется знаком \(=\).

Кодировку используют там, где нужен регистронезависимый и удобный для диктовки текст: например, в одноразовых ключах двухфакторной аутентификации. Раскладка не зависит от регистра букв.

Важно: Base32 длиннее Base64 примерно на 20% — выбирают его ради надёжности, а не компактности.

Пример с решением

  1. Условие. Закодируйте строку «Hi» в Base32.
  2. Формула. 2 байта = 16 бит → блоки по 5 бит.
  3. Подстановка. \(01001000\,01101001\) → \(01001\,00001\,10100\) и остаток с дополнением \(10000\).
  4. Вычисление. Индексы 9, 1, 20, 16 — символы J, B, U, Q.
  5. Ответ. «Hi» → «JBUQ===» (дополнение до 8 символов). Калькулятор с текстом Hi покажет ту же строку; декодирование вернёт исходник.

Главное

  • Алфавит: A–Z и 2–7, без похожих символов.
  • 5 байт → 8 символов.
  • Регистронезависим, длиннее Base64.