Кодировщик и декодировщик Base64

Кодируйте или декодируйте любой текст, файл или данные в формат Base64 — бесплатно и конфиденциально

Максимальный размер: 100 МБ. Поддерживаются: изображения, документы, архивы и другое.

Результат

Введите текст и нажмите «Преобразовать»

Информация о преобразовании

Режим: Кодирование
Длина ввода: 0
Длина результата: 0
Статус: Готов

Быстрые примеры

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

Интерфейс инструмента кодировщика и декодировщика Base64, кодировкой UTF-8, селектором режима и панелью информации о конвертации
Рисунок 1: Кодировщик и декодировщик Base64 — кодируйте или декодируйте текст, файлы и данные в формат Base64

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

Кодирование Base64 гарантирует, что данные остаются неизменными во время передачи. Обычно используется в различных приложениях, включая электронную почту через MIME, хранение сложных данных в XML или JSON, а также встраивание изображений непосредственно в HTML и CSS.

🔑 Важно: Base64 — это кодирование, а НЕ шифрование. Оно не обеспечивает безопасность — оно только преобразует данные в другой формат. Любой может декодировать данные Base64 обратно в исходную форму. Для безопасности используйте алгоритмы шифрования, такие как AES.

Как работает Base64: техническое объяснение

Кодирование Base64 работает путём преобразования 3 байтов двоичных данных (24 бита) в 4 символа из 64-символьного алфавита (по 6 бит каждый). Процесс выполняется по следующим шагам:

  1. Преобразование в двоичный вид: Каждый символ или байт преобразуется в его 8-битное двоичное представление.
  2. Группировка в 24-битные блоки: Три 8-битных байта (24 бита) группируются вместе.
  3. Разделение на 6-битные группы: 24-битный блок делится на четыре 6-битные группы.
  4. Преобразование в символы Base64: Каждое 6-битное значение (0-63) преобразуется в символ из алфавита Base64.

Пример: Слово «Man» в кодировке Base64 становится «TWFu».

Разберём этот процесс:

  • M = ASCII 77 = двоичный 01001101
  • a = ASCII 97 = двоичный 01100001
  • n = ASCII 110 = двоичный 01101110
  • Объединённые: 01001101 01100001 01101110
  • Разделение на 6-битные группы: 010011 (19 → T), 010110 (22 → W), 000101 (5 → F), 101110 (46 → u)
  • Результат: TWFu

Алфавит Base64

Стандартный алфавит Base64 (RFC 4648) состоит из:

  • A-Z (26 символов, значения 0-25)
  • a-z (26 символов, значения 26-51)
  • 0-9 (10 символов, значения 52-61)
  • + (значение 62) и / (значение 63)
  • = используется для заполнения, чтобы длина вывода была кратна 4

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

📧 Вложения в письмах Кодирование MIME для писем
🖼️ Data URLs Встраивание изображений в HTML/CSS
🔐 JWT-токены Кодирование JSON Web Tokens
🔑 Базовая аутентификация Аутентификация в API
📊 Хранение данных Двоичные данные в текстовых базах
📄 XML/JSON Передача двоичных данных

Base64 и другие форматы кодирования

Формат Накладные расходы Применение Набор символов
Base64 33% Передача текста, email, JWT A-Z a-z 0-9 + /
Base64URL 33% URL, JWT, имена файлов A-Z a-z 0-9 - _
Hex 100% Отладка, простые данные 0-9 A-F
Двоичный 0% Хранение, системный уровень 0, 1

Base64 в языках программирования

Примеры кодирования и декодирования Base64 в разных языках программирования:

JavaScript (Node.js)

// Кодирование
const encoded = Buffer.from('Hello World').toString('base64');
console.log(encoded); // SGVsbG8gV29ybGQ=

// Декодирование
const decoded = Buffer.from('SGVsbG8gV29ybGQ=', 'base64').toString('utf8');
console.log(decoded); // Hello World

Python

import base64

# Кодирование
encoded = base64.b64encode(b'Hello World').decode('utf-8')
print(encoded)  # SGVsbG8gV29ybGQ=

# Декодирование
decoded = base64.b64decode(encoded).decode('utf-8')
print(decoded)  # Hello World

PHP

// Кодирование
$encoded = base64_encode('Hello World');
echo $encoded; // SGVsbG8gV29ybGQ=

// Декодирование
$decoded = base64_decode($encoded);
echo $decoded; // Hello World

Java

import java.util.Base64;

// Кодирование
String encoded = Base64.getEncoder().encodeToString("Hello World".getBytes());
System.out.println(encoded); // SGVsbG8gV29ybGQ=

// Декодирование
byte[] decoded = Base64.getDecoder().decode(encoded);
System.out.println(new String(decoded)); // Hello World

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

Безопасно ли Base64? Это шифрование?

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

Можно ли кодировать файлы и изображения в Base64?

Да. Base64 может кодировать любые двоичные данные, включая изображения, PDF-файлы, аудио- и видеофайлы. Наш инструмент поддерживает как текстовое, так и файловое кодирование/декодирование с максимальным размером файла 100 МБ.

В чём разница между Base64 и Base64URL?

Base64URL — это вариант Base64, безопасный для URL-адресов и имён файлов. Он заменяет + на - и / на _, а также удаляет заполнение =. Этот вариант используется в JWT (JSON Web Tokens) и других URL-безопасных приложениях.

Зачем использовать Base64?

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

Увеличивает ли Base64 размер файла?

Да. Кодирование Base64 увеличивает размер данных примерно на 33%. Например, файл размером 100 КБ становится около 133 КБ при кодировании в Base64. Это плата за совместимость с текстом.

Почему в Base64 используется заполнение (=)?

Символ = используется для заполнения, чтобы длина закодированной строки была кратна 4. Он указывает, что последняя группа битов не содержит полного набора 6-битных фрагментов. Некоторые кодировщики опускают заполнение, когда оно не требуется.

Какие кодировки поддерживаются?

Наш инструмент поддерживает UTF-8 (рекомендуется), ASCII, ISO-8859-1, ISO-8859-2, Windows-1251 и Windows-1252. Выберите подходящую кодировку для ваших данных, чтобы обеспечить правильное кодирование и декодирование.

Можно ли использовать этот инструмент офлайн?

Да. После загрузки инструмент работает полностью в вашем браузере. Вы можете использовать его без подключения к интернету после первоначальной загрузки страницы.

Этот инструмент бесплатен?

Да! Наш кодировщик и декодировщик Base64 полностью бесплатен для использования без ограничений. Без регистрации, без скрытых платежей.

Безопасны ли мои данные?

Абсолютно. Вся обработка происходит в вашем браузере. Никакие данные никогда не отправляются на наши серверы. Ваша информация остаётся полностью конфиденциальной и защищённой.

Почему стоит выбрать наш инструмент Base64?

  • 100% бесплатно и безлимитно: Без регистрации, без ограничений, без скрытых платежей.
  • Конфиденциальность в приоритете: Вся обработка в вашем браузере. Данные никогда не отправляются на серверы.
  • Двустороннее преобразование: Кодируйте текст в Base64 и декодируйте Base64 обратно в текст.
  • Множество кодировок: Поддержка UTF-8, ASCII, ISO-8859-1 и других.
  • Поддержка файлов: Кодирование и декодирование файлов до 100 МБ.
  • Копирование в буфер обмена: Копирование результатов одним кликом.
  • Скачивание результатов: Сохранение закодированных или декодированных данных в виде файла.
  • Горячие клавиши: Нажмите Ctrl+Enter для быстрого преобразования.
  • Без рекламы: Чистый, безотвлекающий опыт.
  • Адаптивный дизайн: Работает на компьютере, планшете и телефоне.

Связанные инструменты