ttools
разработкакодировки

Base64 простыми словами: зачем, как и где

Что такое Base64 без заумных слов, почему увеличивает размер и где реально применяется.

Что это

Base64 — способ представить бинарные данные (картинку, файл, что угодно) как строку из обычных печатных ASCII-символов. 64 символа: A–Z, a–z, 0–9, плюс + и /. Плюс знак = для выравнивания.

Зачем это нужно

Многие протоколы и форматы умеют работать только с текстом. Пример:

  • Email-вложения: SMTP изначально был создан для текста. Чтобы переслать картинку, она кодируется в Base64.
  • Data URI: <img src="data:image/png;base64,iVBORw..."> — картинка вшита прямо в HTML.
  • JWT-токены: header и payload закодированы в Base64URL.
  • HTTP-заголовки: Basic Auth, произвольные бинарные данные в метаданных.

Почему размер растёт на треть

Каждые 3 байта исходных данных → 4 символа Base64. Это плата за то, что результат помещается в ASCII. Если у вас файл на 100 KB, после Base64 он весит около 133 KB.

Base64 — это НЕ шифрование

Это просто другое представление тех же данных, как перевод из десятичной в шестнадцатеричную систему. Любой может декодировать обратно за секунду. Никогда не используйте Base64 для «скрытия» паролей, токенов или секретов.

Base64 vs Base64URL

Есть URL-безопасный вариант, где + заменён на -, / на _и = в конце убирается. Используется везде, где данные идут в URL: JWT, deeplinks, query params.

Инструменты

Base64 — кодирование и декодирование с поддержкой кириллицы. URL-кодирование — похожая задача, но для процентной записи в адресах. JWT декодер — разбирает токены из трёх Base64URL-частей.

Инструменты по теме