QuickATools

Инструменты разработчика · Free browser tool

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

Мгновенно кодируйте текст в Base64 или декодируйте строки Base64 обратно в текст с полной поддержкой UTF-8 и без утечки данных.

Plain text

Any text, including emoji and non-Latin scripts.

0 chars0 bytes (UTF-8)

Base64 result

Your Base64 result will appear here.

0 chars0 bytes (UTF-8)

Frequently Asked Questions

Для чего на самом деле нужно кодирование Base64?

Base64 превращает произвольные бинарные данные (или текст) в строку только из букв, цифр, +, / и = — символов, безопасных для мест, рассчитанных на обычный текст: поля JSON, URL, вложения email, HTTP-заголовки или конфиги. Это не шифрование и не сжатие; это чисто формат безопасной передачи, и кто угодно может мгновенно декодировать строку обратно в оригинал.

Почему кодирование корейского текста или эмодзи через обычные btoa()/atob() ломается или выдаёт ошибку?

Встроенная функция браузера btoa() принимает только символы в диапазоне байт 0–255 (Latin-1). Корейские символы, эмодзи и большинство нелатинских письменностей используют многобайтовые последовательности UTF-8 вне этого диапазона — поэтому btoa() либо бросает «InvalidCharacterError», либо молча портит текст. Этот инструмент полностью обходит проблему: сначала переводит текст в сырые байты UTF-8 через TextEncoder, кодирует эти байты в Base64 и на декодировании зеркально использует TextDecoder — так корейский, эмодзи и символы с диакритикой round-trip проходят идеально.

Что означают символы заполнения «=» в конце строки Base64?

Base64 кодирует данные блоками по 3 байта, которые становятся 4 символами вывода. Когда исходные данные не кратны 3 байтам, в конец добавляют «=», чтобы добить последнюю группу до 4 символов — один «=», если осталось 2 байта, два «=», если остался 1 байт. Их наличие (или отсутствие) — нормальная, ожидаемая часть валидного Base64, а не ошибка.

Безопасно ли декодировать API-ключи или пароли онлайн-инструментом Base64?

Всё зависит от того, отправляет ли инструмент ввод на сервер. Этот — никогда: каждое преобразование идёт локально в браузере через встроенные JavaScript API (TextEncoder, TextDecoder, btoa, atob), без сетевых запросов. Поэтому можно безопасно декодировать чувствительные значения вроде API-ключей, сегментов JWT или заголовков Basic Auth — их никогда не стоит вставлять в тул, который проксирует ввод через чужой бэкенд.

Почему Base64 — не шифрование и почему это важно для безопасности

Base64 — транспортный формат, а не мера безопасности. Кто угодно может декодировать строку Base64 обратно в оригинал одним кликом — секретного ключа нет. Значит, настоящий вопрос безопасности не «закодировано ли это», а «куда уходят мои данные, пока я их кодирую или декодирую?» Удивительно много онлайн-конвертеров тихо отправляют всё вставленное на свой сервер для обработки — реальная проблема, если вы декодируете API-ключ, payload JWT или заголовок Basic Auth из production-логов.

Этот инструмент так не делает. Каждое преобразование — encode или decode — идёт через собственные API браузера TextEncoder, TextDecoder, btoa и atob, без сетевых запросов на любом этапе. Можно безопасно декодировать подозрительный токен или проверить credential — данные никогда не покидают вашу машину.

Обработка UTF-8 важна не меньше истории с приватностью. Голый вызов btoa() ломается, как только в тексте появляются корейский, японский, эмодзи или латинские символы с диакритикой — он понимает только диапазон байт Latin-1. Инструмент сначала проводит всё через корректное байтовое кодирование UTF-8, поэтому многобайтовые символы всегда round-trip проходят правильно: закодируйте строку с эмодзи, декодируйте обратно — получите ровно те же эмодзи, а не испорченный fallback-символ.

Дальше работаете со структурированными данными? Сопоставьте это с форматтером и валидатором JSON, чтобы привести в порядок ответ API после декодирования. В этой категории появятся и другие утилиты для разработчиков — включая генератор UUID.