> encode | decode | safe <

// Кодирование Base32 для читаемого и однозначного представления

[SIMPLE]

Просто использовать

Простой интерфейс для мгновенного кодирования/декодирования Base32.

[SECURE]

Локальная обработка

Все преобразования выполняются в браузере. Данные не покидают устройство.

[READABLE]

Читаемо

Использует только A‑Z и 2‑7, без неоднозначных символов.

>> техническая информация

Как работает Base32:

Base32 использует 32 символа (A‑Z, 2‑7) для представления двоичных данных. Разработан для читаемости и исключения неоднозначностей.

Пример:

"Hello" → JBSWY3DPEBLW64TMMQ======

Зачем использовать Base32:

  • >Читаемый вывод
  • >Без неоднозначных символов (0,1,O,I)
  • >Независим от регистра
  • >Удобен для пользовательского ввода
  • >Короче Base16, но длиннее Base64

>> часто задаваемые вопросы

Что такое кодирование Base32?

Base32 — это система счисления по основанию 32, использующая 32 символа (A‑Z, 2‑7) для читаемого представления двоичных данных.

Когда использовать Base32?

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

Почему не используются все символы?

0, 1, O и I исключены, чтобы избежать путаницы между похожими символами.

Зачем нужны знаки равенства?

Это символы выравнивания (padding), чтобы длина была кратна 8, что обеспечивает корректную декодировку.

// Краткий справочник

ВводBase32Base64
fMY======Zg==
foMZXQ====Zm8=
fooMZXW6===Zm9v
foobMZXW6YQ=Zm9vYg==
foobaMZXW6YTBZm9vYmE=
foobarMZXW6YTBOI======Zm9vYmFy

// Примеры кода

CLI      echo -n foobar | base32
Python   base64.b32encode(b'foobar')   /   base64.b32decode(s)
Go       base32.StdEncoding.EncodeToString([]byte("foobar"))
Java     new Base32().encodeToString(bytes)   // commons-codec
Node.js  npm i hi-base32   // no built-in

>> Другие вопросы

В: Чем отличаются Base32, Base64 и Base16?

О: Все три описаны в RFC 4648 и различаются только числом бит на символ: Base16 — 4 бита (накладные расходы 100 %), Base32 — 5 бит (60 %), Base64 — 6 бит (33 %). Base32 длиннее, зато читаем и нечувствителен к регистру.

В: Чувствительно ли декодирование Base32 к регистру?

О: Нет. RFC 4648 задаёт алфавит заглавными буквами, но декодеры должны одинаково обрабатывать строчные. Этот инструмент переводит ввод в верхний регистр перед декодированием, поэтому jbswy3dp и JBSWY3DP дают одинаковый результат.

В: Где Base32 применяется на практике?

О: Прежде всего в секретах TOTP/2FA (Google Authenticator, Authy), onion-адресах Tor v3 (56 символов) и идентификаторах в системах без учёта регистра, например в некоторых файловых системах и метках DNS.