TanodTools
RU

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

Преобразуйте текст или файлы в Base64 и обратно: с поддержкой UTF-8, URL-safe и data URL.

Работает полностью в браузере

Что преобразовать
Направление

Файлы до 25 МБ. Функция «Base64 в файл» принимает данные, которые после декодирования занимают до 25 МБ.

Как кодировать и декодировать Base64

  1. Для текста введите или вставьте его в поле, выберите «Кодировать» или «Декодировать», и результат появится по мере ввода.
  2. Включите URL-safe Base64 или перенос строк по 76 символов, если место, куда вы вставляете результат, этого требует.
  3. Для файла переключитесь на «Файл» и перетащите его сюда, чтобы получить Base64 или data URL. Чтобы сделать наоборот, вставьте Base64, задайте имя файла и скачайте его.

Для чего нужен Base64

Base64 представляет любую последовательность байтов с помощью 64 безопасных текстовых символов: A–Z, a–z, 0–9, плюса и косой черты. Каждые 3 байта превращаются в 4 символа, а последняя группа дополняется знаками =. Благодаря этому двоичные данные можно безопасно помещать в письма, JSON, HTML, URL и другие места, рассчитанные только на текст. Это кодирование, а не шифрование: любой может его обратить.

Текст сначала превращается в байты, и здесь важна кодировка символов. Инструмент использует UTF-8, стандарт в вебе, поэтому нелатинский текст и символы переживают преобразование туда и обратно. При декодировании проверяется, что результат является корректным UTF-8, и если это не так, вы получите сообщение: обычно это значит, что данные были файлом, а не текстом.

В режиме файла браузер читает файл и кодирует его небольшими порциями, чтобы страница не зависала. В обратную сторону инструмент декодирует вставленный Base64 в байты и отдаёт их вам как загрузку. По первым байтам он подбирает расширение файла для распространённых форматов, таких как PNG, JPEG, GIF, PDF и ZIP.

Советы

Вопросы и ответы

Загружается ли мой текст или файл?

Нет. Всё преобразуется в вашем браузере, ничего никуда не отправляется и не сохраняется.

Работает ли он с буквами с диакритикой и эмодзи?

Да. Перед кодированием текст преобразуется в байты UTF-8, а после декодирования читается как UTF-8, поэтому символы вроде é, ö, ✓ и эмодзи проходят туда и обратно без искажений. (Встроенная в браузер функция btoa на них бы выдала ошибку.)

Что такое URL-safe Base64?

В нём символы + и / заменены на - и _, а завершающее заполнение = убрано, чтобы результат можно было вставить в URL или имя файла. При декодировании инструмент понимает оба алфавита.

Почему при декодировании сообщается о недопустимом символе?

Base64 использует только буквы, цифры, плюс и косую черту (или минус и подчёркивание), а в конце могут стоять знаки равенства. Пробелы и переводы строк игнорируются, но любой другой символ инструмент показывает вместе с его позицией, чтобы вы могли его найти.

Чем data URL отличается от обычного Base64?

Data URL — это Base64 с префиксом вроде data:image/png;base64,, благодаря которому браузер может сразу использовать его как источник изображения или файла. Включите параметр data URL в режиме «Файл», чтобы получить такую форму.

Почему Base64 получается больше исходного файла?

Base64 записывает каждые 3 байта четырьмя символами, поэтому закодированный текст примерно на треть больше оригинала. Это способ передать двоичные данные в виде текста, а не шифрование и не сжатие.