Бесплатный конвертер

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

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

Об этом инструменте

Base64 — это схема кодирования, которая представляет двоичные данные в виде текста ASCII с использованием 64 печатных символов: A–Z, a–z, 0–9, плюс (+) и косая черта (/), а для заполнения используются равенства (=). Формат изначально был разработан для того, чтобы двоичные вложения выдерживали 7-битную транспортировку электронной почты, но сегодня он расширился до десятков применений: URL-адреса данных в HTML, JSON, содержащий данные изображения, полезные данные JWT, базовые заголовки аутентификации и любой текстовый протокол, который должен переносить байты.

Кодирование занимает 3 байта ввода и выдает 4 символа ASCII на выходе. Таким образом, выходные данные на 33% длиннее входных — это стоимость перевода двоичного кода в текстовый формат. Декодирование полностью меняет процесс, восстанавливая исходные байты из закодированного текста.

Этот инструмент работает в обоих направлениях. Режим кодирования принимает текстовый ввод (или двоичный файл посредством загрузки) и создает текст в формате Base64. Режим декодирования принимает текст в формате Base64 и создает исходный текст или загружаемый двоичный файл. URL-безопасный вариант (с использованием - и _ вместо + и /) поддерживается для токенов и идентификаторов.

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

Base64 — это стандартный способ внедрения двоичных данных в текстовый контекст. Встроенные изображения в HTML используют URL-адреса данных (data:image/png;base64,...), поэтому небольшой значок может быть отправлен вместе со страницей без отдельного запроса. Полезные данные JSON, содержащие изображения, сертификаты или подписи, кодируют их как строки base64. Токены JWT представляют собой три сегмента в кодировке Base64, разделенных точками.

Base64 также нормализует обработку символов для протоколов, которые неправильно обрабатывают 8-битные двоичные файлы. Заголовки аутентификации (базовая аутентификация использует base64), вложения электронной почты, файлы конфигурации, содержащие ключи, и многие API требуют base64, поскольку двоичные файлы не могут надежно проходить через их конвейеры.

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

Вставьте данные, выберите направление.

  1. Выберите кодирование или декодирование: Encode создает текст в формате Base64 из двоичного или текстового ввода. Декодирование обращает процесс.
  2. Добавить данные: Для кодирования вставьте текст или загрузите двоичный файл. Для декодирования вставьте текст в формате Base64. Инструмент автоматически определяет безопасный для URL-адресов вариант.
  3. Конвертировать: Браузер использует btoa для кодирования и atob для декодирования (с обработкой UTF-8 для текста, отличного от ASCII). Выходной сигнал является точным и детерминированным.
  4. Скопируйте или скачайте: Закодированный текст может быть встроен в URL-адреса, JSON, URL-адреса данных HTML или любой текстовый протокол. Декодированный двоичный файл загружается в виде файла с предположением о соответствующем расширении на основе обнаруженного типа файла.

Общие случаи использования

Технические детали

Base64 сопоставляет каждые 6 бит ввода одному из 64 выходных символов. Три входных байта (24 бита) образуют четыре выходных символа. Если входная длина не кратна 3, кодер добавляет один или два знака равенства, чтобы дополнить выходные данные до числа, кратного 4 символам.

URL-безопасный base64 (определенный в разделе 5 RFC 4648) заменяет + на - и / на _ для создания строк, безопасных для использования в URL-адресах и именах файлов без дальнейшего экранирования. Знаки равенства иногда опускаются в контекстах, безопасных для URL-адресов; декодеры обычно принимают обе формы.

JavaScript-функции btoa и atob напрямую обрабатывают ASCII, но не работают со строками, отличными от ASCII. Для текста UTF-8 преобразователь использует TextEncoder/TextDecoder для преобразования текста в двоичный формат, а затем кодирует двоичный файл в формате Base64. Это корректно обрабатывает эмодзи, символы с диакритическими знаками и нелатинские шрифты.

Лучшие практики

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

Для чего используется кодировка Base64?
Base64 преобразует двоичные данные в текст ASCII. Обычное использование включает в себя встраивание изображений в HTML (URI данных), кодирование вложений электронной почты, передачу двоичных данных в API-интерфейсах JSON и хранение двоичных объектов в текстовых базах данных.
Шифрует ли мои данные кодировка Base64?
Нет. Base64 — это кодировка, а не шифрование. Любой может декодировать строку Base64. Он предназначен для безопасной передачи данных, а не для обеспечения безопасности. Используйте фактическое шифрование (AES, RSA) для конфиденциальных данных.
Почему Base64 увеличивает размер файла?
Base64 представляет каждые 3 байта ввода как 4 символа ASCII, что приводит к увеличению размера примерно на 33%. Это компромисс для возможности безопасного внедрения двоичных данных в текстовые форматы.
Могу ли я кодировать изображения в Base64?
Да. Загрузите файл изображения, и инструмент создаст строку Base64, которую вы можете использовать в качестве URI данных (data:image/png;base64,...) в HTML или CSS.
Являются ли токены JWT базой 64?
Да — JWT состоит из трех сегментов с кодировкой Base64url, разделенных точками. Первый — заголовок, второй — полезная нагрузка, третий — подпись.
Загружены ли мои данные на сервер?
Нет. Кодирование и декодирование выполняются в вашем браузере с помощью btoa, atob, TextEncoder и TextDecoder.
Каков максимальный размер?
До 50 МБ. Память браузера ограничивает практический размер очень больших входных данных.
Почему мой декодированный вывод выглядит как мусор?
Скорее всего источник был двоичный, а не текстовый. Переключитесь в режим загрузки файла, чтобы получить двоичный файл, или убедитесь, что входные данные на самом деле представляют собой текст в кодировке Base64, а не двоичный.