Encode text to standard or URL-safe Base64, or decode Base64 back to UTF-8 text.
Конвертер файлов в Base64
Сам инструмент доступен на английском языке; на этой странице приведено его описание на вашем языке.
Используйте Конвертер файлов в Base64
Для чего это нужно
Перетащите или выберите файл, чтобы получить его в виде data URI в Base64, или вставьте data URI, чтобы декодировать его обратно в файл для скачивания.
Приложение работает полностью в браузере: никакие введенные вами данные не передаются на сервер.
Как использовать Конвертер файлов в Base64
- Выберите или перетащите файл. Нажмите на поле с пунктирной рамкой, чтобы выбрать файл, или перетащите файл на него. Если перетащить несколько файлов, преобразуется только первый.
- Посмотрите data URI. Поле ниже заполняется строкой data:type;base64, за которой следует закодированный файл. Строка под ним показывает исходный размер, размер в Base64 и накладные расходы.
- Скопируйте результат. Нажмите Copy, чтобы скопировать весь data URI в буфер обмена, например чтобы вставить его в тестовую страницу или в заметку по делу.
- Вставьте data URI для декодирования. Чтобы выполнить обратную операцию, вставьте URI данных в нижнее поле, например data:image/png;base64,... Допускаются такие параметры, как ;charset=utf-8, символы переноса строки, URI данных в кодировке Base64, безопасной для использования в URL, и в процентной кодировке.
- Скачайте и проверьте файл. Нажмите Decode & Download, чтобы сохранить файл. Если он получен из подозрительного письма или со страницы, проверьте его в File Type Sniffer и File Hash, прежде чем открывать.
Пример
Небольшое изображение
A small PNG file, dropped onto the box or chosen by clicking itdata:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==
Original: 70 bytes | Base64: 96 bytes (37% overhead) | Data URI: 118 bytesВ поле ниже отображаются данные: image/png;base64,...; в строке указаны исходный размер, размер кода Base64 с учетом накладных расходов и длина всего URI данных: размер кода Base64 примерно на треть превышает размер файла.
Что проверяется
| Сигнал | Что это означает |
|---|---|
| MIME-тип после data: | Это тип, который браузер сообщает для файла; обычно он определяется по расширению в имени файла. Он не доказывает, что на самом деле содержится в файле, поэтому переименованный файл сохраняет вводящий в заблуждение тип. |
| Исходный размер | Размер файла в КБ с одним знаком после запятой. Файлы меньше примерно 50 байт показываются как 0.0 KB — это округление, а не пустой файл. |
| Размер в Base64 и накладные расходы | Длина части в Base64 без префикса data:type;base64, и то, насколько она больше файла. У больших файлов значение устанавливается около 33 процентов; у очень маленьких оно больше из-за дополнения (padding). |
| Имя декодированного файла | Имя загружаемого файла состоит из слова «decoded» и расширения, соответствующего типу MIME, например «decoded.png», «decoded.txt» для типа «text/plain» или «decoded.bin», если тип не указан. В строке под кнопкой указаны название файла, его размер и тип. |
| Текст под кнопкой | Если URI данных не удается прочитать или в кодировке Base64 содержатся символы, не входящие в набор A–Z, a–z, 0–9, + и /, под кнопкой отобразится сообщение вместо загрузки. |
| Данные остаются на устройстве | Кодирование использует FileReader браузера, а декодирование собирает файл в памяти, поэтому этот инструмент никуда не отправляет ни файл, ни вставленный текст. |
Еще примеры
Тестовый текст из RFC 4648
A text file foobar.txt that contains only the six letters foobar, with no line breakdata:text/plain;base64,Zm9vYmFy и строка Original: 0.0 KB | Base64: 0.0 KB (33% overhead). Zm9vYmFy — опубликованный тестовый вектор RFC 4648 для foobar.
Декодирование короткого текста
data:text/plain;base64,Zm9vYg==Функция «Decode & Download» сохраняет 4-байтовый файл с именем decoded.txt, содержащий текст «foob», а строка под кнопкой указывает название файла, его размер и тип «text/plain».
SVG-изображение с необычным расширением
data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLz4=Браузер сохраняет пустое SVG-изображение размером 41 байт с именем decoded.svg+xml. Переименуйте его в .svg, если хотите его посмотреть.
Часто задаваемые вопросы
Что получается на выходе?
URI данных в формате data:type;base64,data, где type — тип MIME, который ваш браузер указывает для данного файла (application/octet-stream, если тип не указан). Кодировка Base64 увеличивает размер данных примерно на треть; при этом это кодировка, которую любой может расшифровать, а не шифрование.
Какие URI данных может считывать приложение «Decode & Download»?
URI данных в кодировке Base64, такие как data:image/png;base64,... или data:text/plain;charset=utf-8;base64,..., в том числе содержащие символы переноса строки или символы, допустимые в URL-адресах, а также URI с процентной кодировкой без ;base64; в остальных случаях под кнопкой отображается сообщение. Файлы, декодированные из фишинговых вложений, могут быть вредоносными, поэтому перед открытием проверьте их с помощью File Type Sniffer.
Загружается ли файл куда-нибудь?
Нет. Файл считывается с помощью API FileReader, а URI данных формируется на этой странице; ничего не загружается. Конвертируются файлы размером до 50 МБ, поскольку URI данных большего размера может привести к зависанию вкладки.
Почему в фишинговом письме или на странице есть длинная строка data:...?
HTML-вложения и фишинговые страницы часто встраивают логотипы, шрифты, скрипты или целые файлы в виде data URI в Base64. Тогда содержимое передаётся внутри страницы, а не загружается с отдельного адреса. Декодирование строки здесь показывает, что в ней спрятано, без открытия исходной страницы.
Можно ли декодировать обычный Base64 без префикса data:?
Да, если добавить его. Введите «data:application/octet-stream;base64» перед строкой и нажмите «Декодировать и скачать» — вы получите файл с именем decoded.bin. Для коротких текстов кодер/декодер Base64 работает быстрее.
Почему у маленьких файлов накладные расходы больше 33 процентов?
Base64 превращает каждые 3 байта в 4 символа и дополняет последнюю группу знаками =. В файле из нескольких байт это дополнение составляет большую долю, поэтому для файла в 1 байт показывается 300 процентов. Начиная с нескольких килобайт значение держится около 33 процентов.
Безопасно ли открывать SVG- или HTML-файл, декодированный из подозрительного сообщения?
Не в вашем обычном браузере. Файлы SVG и HTML могут содержать скрипты и ссылки, которые срабатывают при открытии. Сначала посмотрите тип файла и хеш, а открывайте такие файлы только в песочнице или на отдельной машине для анализа.