Base64 Кодировщик
Преобразуйте обычный текст или двоичные строки в выходные данные, закодированные в Base64. Поддерживает стандартные и безопасные для URL алфавиты согласно RFC 4648 и обрабатывает полный UTF-8, включая эмодзи и нелатинские скрипты.
Base64 увеличивает размер данных примерно на 33%. Этот компромисс существует, потому что двоичные данные должны выживать в текстовых каналах, таких как заголовки электронной почты, JSON полезные нагрузки и заголовки HTTP Authorization. Определенный в RFC 4648, Base64 использует алфавит из 64 символов: A-Z, a-z, 0-9, плюс + и / (или - и _ в безопасном для URL режиме). Этот браузерный кодировщик обрабатывает ваш ввод полностью на вашем устройстве с использованием встроенных API btoa() и TextEncoder. Личные строки, токены и учетные данные никогда не отправляются на сервер.
Как закодировать в Base64
- Введите или вставьте текст, который хотите закодировать, в поле ввода.
- Выберите режим кодирования Стандартный или Безопасный для URL.
- Закодированный выход Base64 появляется мгновенно в панели вывода.
- Нажмите Копировать, чтобы скопировать результат в буфер обмена.
Как работает кодирование Base64
Алфавит из 64 символов
Base64 использует алфавит из 64 символов: A-Z (26), a-z (26), 0-9 (10) и два дополнительных символа. Стандартный Base64 (RFC 4648 §4) использует + и /. Безопасный для URL Base64 (RFC 4648 §5) заменяет их на - и _. Кодирование берет три входных байта (24 бита), разбивает их на четыре группы по 6 бит и сопоставляет каждое значение 6 бит соответствующему символу алфавита. Поэтому длина выходных данных Base64 всегда кратна 4.
Дополнение
Поскольку Base64 обрабатывает данные группами по 3 байта, длины входных данных, которые не кратны 3, требуют дополнения. Один оставшийся байт производит == в конце. Два оставшихся байта производят =. Дополнение необходимо в стандартном Base64, но часто удаляется в безопасных для URL реализациях, особенно в JWT.
Пример
Входные данные
Привет, мир!
Выход (Стандартный Base64)
0JrQvtC70Y7QstCwIQ==
Два символа = дополнения появляются, потому что "Привет, мир!" составляет 13 байт - 13 mod 3 = 1, поэтому один байт остается в последней группе.
Распространенные случаи использования
- HTTP Basic Authentication - заголовки
Authorization: Basicтребуютusername:password, закодированного в Base64 - Встраиваемые изображения в HTML/CSS - Data URIs:
data:image/png;base64,iVBORw0KGgo... - JWT токены - секции заголовка и полезной нагрузки используют безопасный для URL Base64
- Вложения электронной почты - MIME (RFC 2045) использует Base64 для кодирования двоичных вложений в текстовых почтовых протоколах
Стандартный vs Безопасный для URL Base64
Стандартный Base64 использует + и /, которые имеют специальное значение в URL. Безопасный для URL Base64 заменяет их на - и _, что делает выходные данные безопасными в URL, именах файлов и параметрах запроса без процентного кодирования. Используйте безопасный для URL режим для JWT, токенов OAuth и любых данных Base64, появляющихся в URL. Для декодирования выходных данных используйте Декодер Base64. Для встраивания закодированных данных в параметры запроса URL комбинируйте этот инструмент с Кодировщиком URL.
Часто задаваемые вопросы
Является ли Base64 формой шифрования?
Нет. Base64 - это схема кодирования, а не шифрования или форма безопасности. Любой, у кого есть строка Base64, может мгновенно декодировать её без ключа. Она не обеспечивает конфиденциальности. Используйте AES-256 или RSA, если нужно защитить данные - Base64 предназначен для безопасной передачи двоичных данных в текстовых каналах, а не для сокрытия информации.
Почему выходные данные Base64 всегда заканчиваются на == или =?
Base64 кодирует данные группами по 3 байта в 4 символа. Когда длина входных данных не делится на 3, последняя группа содержит 1 или 2 байта вместо 3. Один оставшийся байт производит == дополнение; два оставшихся байта производят =. Дополнение гарантирует, что длина выходных данных всегда кратна 4, как требуется по RFC 4648.
Обрабатывает ли этот кодировщик Юникод и эмодзи правильно?
Да. Кодировщик сначала преобразует текст в байты UTF-8 с помощью API TextEncoder браузера перед применением Base64. Юникодные символы, включая эмодзи (4 байта в UTF-8), китайские иероглифы, арабские буквы и акцентированные латинские символы кодируются правильно и декодируются обратно в оригинальный текст.
Что такое безопасный для URL Base64 и когда его следует использовать?
Безопасный для URL Base64 (RFC 4648 §5) заменяет + на - и / на _. Используйте его, когда данные Base64 появляются в URL, имени файла, куки или HTTP заголовке, где стандартные символы могут быть неправильно интерпретированы. JWT токены, токены доступа OAuth и проверяющие коды PKCE все используют безопасный для URL Base64.
На сколько Base64 увеличивает размер данных?
Кодирование Base64 увеличивает размер данных ровно на 33,33% - 3 входных байта становятся 4 выходными символами (4/3 = 1,333...). Кроме того, выходные данные могут включать до 2 символов дополнения. Для больших двоичных нагрузок многочастичные или двоичные протоколы более эффективны по пропускной способности, чем Base64.