Base64 кодирование/декодирование

Кодируйте текст в Base64 или декодируйте строки Base64 в обычный текст. Быстро, бесплатно и работает в вашем браузере.

Как использовать

  1. Введите или вставьте ваш текст в поле ввода
  2. Нажмите «Кодировать» для преобразования в Base64 или «Декодировать» для преобразования из Base64
  3. Скопируйте результат кнопкой «Копировать»

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

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

    Base64 — это схема кодирования двоичных данных в текст, представляющая двоичные данные в формате строки ASCII. Обычно используется для встраивания изображений в HTML/CSS или передачи данных по текстовым протоколам.

  • Является ли Base64 шифрованием?

    Нет, Base64 — это кодирование, а не шифрование. Оно не обеспечивает никакой защиты. Любой может декодировать строку Base64 обратно в исходную форму.

  • Поддерживает ли инструмент UTF-8?

    Да, этот инструмент полностью поддерживает текст в кодировке UTF-8, включая символы всех языков.

  • Каков максимальный размер ввода?

    Поскольку инструмент работает в вашем браузере, ограничение зависит от памяти вашего устройства. Как правило, он обрабатывает несколько мегабайт без проблем.

Как работает кодирование Base64

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

Принцип работы алгоритма

Алгоритм обрабатывает исходные данные группами по 3 байта (24 бита). Каждые 24 бита разделяются на четыре 6-битных блока, и каждый блок заменяется соответствующим символом из алфавита Base64. Таким образом, каждые 3 байта исходных данных превращаются в 4 символа Base64. Это означает, что закодированная строка примерно на 33% длиннее исходных данных.

Если длина исходных данных не кратна 3, добавляется символ = для выравнивания до кратного числа.

Распространённые случаи использования

Встраивание ресурсов в HTML и CSS

Base64 позволяет встраивать небольшие изображения, шрифты или иконки непосредственно в HTML или CSS-код без дополнительных HTTP-запросов:

<img src="data:image/png;base64,iVBORw0KGgo...">

Это особенно полезно для маленьких иконок и спрайтов, где накладные расходы на отдельный запрос превышают выгоду от кэширования.

Передача данных через текстовые протоколы

Электронная почта (MIME), HTTP-заголовки и XML плохо совместимы с произвольными двоичными данными. Base64 позволяет безопасно передавать изображения в письмах, PDF-документы в JSON-ответах API и бинарные данные в текстовых протоколах.

Хранение данных в JSON

JSON поддерживает только текстовые строки, поэтому двоичные данные (изображения, сертификаты, ключи шифрования) часто хранятся в JSON в виде Base64-строк.

Базовая аутентификация HTTP

HTTP Basic Authentication передаёт учётные данные в формате username:password, закодированном в Base64 и помещённом в заголовок Authorization. Важно понимать, что это лишь кодирование, а не защита.

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

Это принципиально важное различие. Шифрование скрывает смысл данных: без ключа расшифровать сообщение невозможно. Base64 лишь изменяет представление данных — любой человек с любым декодером может мгновенно восстановить исходную информацию.

Не используйте Base64 для:

  • Защиты паролей (используйте bcrypt, Argon2 или scrypt)
  • Скрытия конфиденциальных данных
  • Замены шифрования в любом сценарии безопасности

Вариации Base64

Существует несколько разновидностей Base64:

  • Стандартный Base64 — использует + и /, может содержать =
  • URL-safe Base64 — заменяет + на - и / на _, подходит для URL-параметров
  • Base64 без padding — опускает символы = в конце

При работе с API обращайте внимание, какой именно вариант ожидает сервис.

Поддержка Unicode и многобайтовых символов

Для корректного кодирования текста с символами Unicode (кириллица, иероглифы, эмодзи) текст сначала преобразуется в байты UTF-8, а затем эти байты кодируются в Base64. При декодировании выполняется обратная операция. Наш инструмент автоматически обрабатывает это преобразование.