Кодировщик файлов Base64
Funnel mode keeps the selected file in this browser for up to two hours so it can move between steps. It is not uploaded.
Base64 превращает любой бинарный файл в строку печатаемых символов ASCII, которая может проходить через системы, рассчитанные только на текст: JSON, YAML, тело письма, SMS, копирование и вставку в чат. Этот кодировщик принимает произвольный файл, PDF, изображение, ZIP или даже исполняемый файл, и возвращает представление Base64, готовое для вставки в data: URI, тело запроса API или файл конфигурации.
Как закодировать файл
-
1
Перетащите любой файл в кодировщик
Работают все бинарные форматы. Браузер читает необработанные байты.
-
2
Байты кодируются в Base64
Каждые три байта превращаются в четыре символа ASCII из алфавита `A-Z a-z 0-9 + /`.
-
3
Выберите формат вывода
Обычный Base64, `data:` URI с типом MIME, сообщённым браузером (или универсальным запасным значением), либо вариант для безопасной строки JSON.
-
4
Скопируйте или скачайте как текст
Большие файлы скачивайте как `.txt`; маленькие копируйте в буфер обмена.
Накладные расходы по размеру
Base64 раздувает каждые три байта до четырёх символов, рост затрат на хранение и передачу по сети на 33%. Заполнение символом = добавляет ещё пару байтов. Приблизительная оценка:
| Размер исходного файла | Размер текста Base64 |
|---|---|
| 1 KB | 1.33 KB |
| 100 KB | 133 KB |
| 1 MB | 1.33 MB |
| 10 MB | 13.3 MB |
Встраивание больших бинарных файлов в виде Base64 в HTML или JSON, быстрый способ раздуть время загрузки страницы и память парсера. Встраивайте напрямую всё, что больше примерно 10 KB, только когда это действительно диктуют ограничения развёртывания.
Частые сценарии использования
- Data URI, крошечные встроенные изображения в CSS или HTML:
url("data:image/png;base64,iVBORw0KGgo..."). - Вложения в письмах, в телах MIME multipart вложения кодируются в Base64 для безопасной передачи по SMTP.
- Тела запросов JSON, встраивание PDF или ZIP внутрь поля JSON для запроса к API за один вызов.
- Файлы YAML/конфигурации, доставка ключа TLS или небольшого бинарного блока внутри конфигурации.
Варианты и заполнение
Стандартный алфавит Base64 по RFC 4648 содержит 64 символа: A-Z, a-z, 0-9, + и /. Символ = служит для заполнения и не входит в алфавит. Для вывода, безопасного для URL (замена + на - и / на _), используйте отдельный переключатель. Заполнение включено по умолчанию и может быть отключено.
Заметка о конфиденциальности
Файл никогда не покидает ваше устройство. FileReader API читает байты в браузере, а кодирование выполняет JavaScript. Это важно при кодировании конфиденциальных PDF, закрытых ключей или ещё не опубликованных материалов.
Часто задаваемые вопросы
Кодировщик принимает один файл размером до 50 МБ. Результат Base64 больше исходного файла и хранится в памяти браузера, поэтому жёсткий предел защищает вкладку от чрезмерного расхода памяти.
Используйте этот вариант, когда нужен алфавит для URL или имён файлов. Base64, безопасный для URL (RFC 4648, раздел 5), заменяет + на -, а / на _; отдельная настройка заполнения определяет, сохранять ли конечные символы =.
Только для вывода в виде data: URI. Запись data:image/png;base64,... сообщает браузеру, как отобразить декодированные байты. Для обычного Base64 или встраивания в JSON тип MIME не является частью закодированных данных.
HTML может содержать URL data:application/pdf;base64,..., но современные браузеры часто блокируют переход верхнего уровня к URL data:, а загрузка работает ненадёжно в разных браузерах. Большие значения также могут упереться в ограничения URL, памяти или Content Security Policy. Для надёжной загрузки создайте Blob URL или объектный URL в браузере либо дайте HTTPS-ссылку на размещённый файл.
Сопутствующие инструменты
Кодировщик и декодировщик Base85
Кодируйте и декодируйте Base85 в вариантах Adobe Ascii85 (PostScript/PDF) или Z85 (ZeroMQ). Компактнее Base64 для двоичных данных.
Генератор bcrypt
Сгенерируйте bcrypt hash из plaintext password. Настраиваемый cost factor от 4 до 14, совместим с Laravel, Django, Node и PHP.
Кодировщик шифра A1Z26
Кодируйте текст шифром A1Z26 (A=1, B=2, ... Z=26) или декодируйте числовую последовательность обратно в буквы, выбрав разделитель.
Генератор bcrypt-хешей
Генерируйте bcrypt-хеши или проверяйте пароль в открытом виде относительно существующего bcrypt-хеша. Генерация и проверка рядом в одном инструменте.
Кодировщик и декодировщик Base32
Кодируйте и декодируйте строки Base32 с алфавитом RFC 4648. Полезно для секретов TOTP, регистронезависимых токенов и идентификаторов, которые вводит человек.
Шифрование / расшифровка AES
Шифруйте и расшифровывайте текст низкого риска с AES-шифрами OpenSSL. Парольная фраза хэшируется SHA-256, а Base64-вывод содержит IV плюс шифротекст.