Base64 кодирование/декодирование
Корректный UTF-8, URL-safe вариант и поддержка файлов
Что такое кодировка Base64?
Base64 преобразует бинарные данные — или любой текст — в безопасную ASCII-строку, состоящую только из букв, цифр, знаков плюс, слэшей и знаков равенства. Это не шифрование, а способ провести данные через каналы, которые понимают лишь обычный текст, — например, вложения почты, URL или поля JSON. Этот инструмент кодирует и декодирует с корректной обработкой UTF-8, поэтому китайский, японский, эмодзи и любые другие письменности переживают путь туда и обратно без искажений — это реальная проблема наивных конвертеров, портящих не-ASCII текст. Есть и URL-безопасный вариант из RFC 4648 для встраивания в строки запроса, а также преобразование файла в Base64. Инструмент создан для разработчиков, тестировщиков и всех, кто переносит данные между системами.
Что умеет этот инструмент
- 🔡 Кодировать текст в Base64 с корректной обработкой UTF-8
- 🔄 Декодировать Base64 обратно в читаемый текст
- 🔗 URL-безопасный вариант: дефисы и подчёркивания вместо + и /, без паддинга
- 📎 Преобразовывать файл до 5 МБ в Base64
- 📈 Показывать число байтов и символов в обоих направлениях
- 📋 Копировать результат в один клик
Когда пригодится
- Когда встраиваете бинарные данные или не-ASCII текст в поля JSON или XML
- Когда проверяете, что payload Base64 старого API декодируется верно
- Когда нужно сделать данные безопасными для параметров URL
- Когда расшифровываете Base64-вложения, найденные в логах
Конфиденциальность: кодирование и декодирование выполняются полностью в браузере — ничего не загружается, а файлы читаются только локально. Бесплатно, без аккаунта.
Что Base64 умеет — и чего не умеет
Любая письменность переживёт
Кодирование и декодирование проходят через корректную обработку UTF-8, поэтому китайский, японский, эмодзи и любая другая письменность возвращаются побайтово — именно здесь наивные конвертеры портят не-ASCII текст.
Безопасно для URL и снисходительно
URL-безопасный вариант по RFC 4648 заменяет плюс и слэш на дефис и подчёркивание и убирает заполнение, а декодирование терпит пробелы и само распознаёт URL-безопасный ввод.
Файлы становятся Base64
Файл до 5 МБ превращается в строку Base64 за один проход, с отчётом о байтах ввода и символах вывода, чтобы рост размера был виден до вставки куда-либо.
Base64 по RFC 4648
Стандартный алфавит — A–Z a–z 0–9 + /, дополнение =; каждые 3 байта входа дают 4 символа — закладывайте ~33% роста размера. URL-безопасный вариант заменяет + и / на - и _, чтобы токены выживали в URL и именах файлов.
- При декодировании допускаются пробелы и отсутствие дополнения — вставленное обычно работает сразу.
- Кодирование — не шифрование: кто видит строку, тот её декодирует. Это транспорт, но никак не секретность.
Частые вопросы
Почему другие инструменты искажают китайский текст/эмодзи?
Необработанная функция btoa() в JavaScript обрабатывает только Latin-1. Мы сначала кодируем текст в байты UTF-8 (TextEncoder), поэтому китайский, японский, эмодзи и любая другая письменность корректно кодируются и декодируются обратно.
Что такое Base64, безопасный для URL?
Вариант (RFC 4648 §5), заменяющий + на -, / на _ и убирающий заполнение =, чтобы результат мог использоваться в URL, именах файлов и JWT без экранирования. Переключите флажок «безопасно для URL», чтобы закодировать или декодировать.
Base64 — это шифрование?
Нет — это кодирование, а не шифрование. Любой может декодировать его мгновенно. Используйте его для передачи и встраивания данных, но никогда для сокрытия секретов.