Base64-кодировщик и декодировщик
Конвертируйте текст и файлы в Base64 и обратно. Корректно работает с Unicode, поддерживает URL-safe base64url и точно объясняет, почему некорректный ввод не декодируется.
Работает в браузереБез регистрацииНичего не загружается
Как пользоваться: Base64: кодирование / декодирование
- Выберите Кодировать или Декодировать.
- Введите или вставьте данные. Результат обновляется по мере ввода.
- Для URL, JWT и имён файлов отметьте URL-safe, чтобы использовать
-и_, и при желании уберите дополнение=. - Чтобы встроить изображение или шрифт, нажмите Кодировать файл и оставьте включённым Вывести как data URI.
- Скопируйте результат или нажмите Поменять, чтобы отправить его обратно в другом направлении.
Как работает Base64
Base64 представляет двоичные данные 64 печатными символами ASCII: A-Z, a-z, 0-9, + и /. Каждые 3 байта ввода превращаются в 4 символа, поэтому закодированные данные примерно на 33% больше. Если длина ввода не кратна 3, результат дополняется одним или двумя знаками =. Base64 — это кодирование, а не шифрование: декодировать его может кто угодно.
Стандартный Base64 и base64url
Символы + и / имеют особый смысл в URL и путях к файлам. URL-safe алфавит из RFC 4648 §5 заменяет их на - и _ и обычно опускает дополнение. base64url используют JWT, многие параметры OAuth и некоторые облачные API. Здешний декодер автоматически принимает оба алфавита.
Unicode и подводный камень btoa()
В браузерах btoa("café") работает, а btoa("日本") выбрасывает ошибку, потому что btoa принимает только Latin-1. Правильный подход — сначала закодировать текст в байты UTF-8, что этот инструмент и делает. В JavaScript: btoa(String.fromCharCode(...new TextEncoder().encode(text))), а в Node.js — Buffer.from(text).toString('base64').
Где применяется
- Data URI для небольших изображений и шрифтов в CSS или HTML
- Заголовки HTTP Basic-аутентификации (закодированный
user:password) - Двоичные вложения в JSON-данных и email (MIME)
- Kubernetes Secrets, которые хранят значения в Base64