Кодирование Base64
Бесплатный онлайн-инструмент для кодирования и декодирования Base64 с поддержкой UTF-8 / ASCII / ISO-8859-1 и вариантов Standard / URL-Safe / MIME. Размер и рост объема показываются в реальном времени.
Похожие
Что такое кодирование Base64?
Base64 — это схема преобразования бинарных данных в текст с помощью 64 печатных ASCII-символов. Она позволяет безопасно передавать двоичные данные через текстовые системы вроде HTTP-заголовков, JSON, XML и URL-параметров.
**Base64 не является шифрованием**. Это только изменение формата. Для защиты чувствительных данных нужен настоящий алгоритм шифрования, например AES.
**URL-Safe Base64** заменяет + и / на - и _, а также часто убирает = padding. Такой вариант используют JWT, OAuth PKCE и многие URL-ориентированные сценарии.
**MIME wrapping** добавляет переносы каждые 76 символов по RFC 2045 и нужен в первую очередь для email и некоторых многострочных форматов.
Инструмент использует **btoa / atob** в браузере вместе с безопасной обработкой UTF-8, поэтому все вычисления выполняются локально без отправки данных на сервер.
Варианты использования
- Отладка JWT
- Кодирование Basic Auth
- Разработка OAuth / PKCE
- Отладка API-полей в Base64
- Встраивание изображений через Data URI
- Кодирование почтовых вложений в MIME
Как использовать
- Выберите режим Encode или Decode
- Выберите вариант Standard, URL-Safe или MIME
- Вставьте текст или Base64-строку
- Проверьте статистику размера
- Скопируйте результат
Функции
- Переключение Encode / Decode в один клик
- Поддержка UTF-8, ASCII и ISO-8859-1
- Три варианта вывода: Standard, URL-Safe и MIME
- Статистика размера в реальном времени
- Понятные сообщения об ошибках
- Перетаскиваемый разделитель на ПК
- Отдельные вкладки для мобильных устройств
Примеры кода
Кодирование Base64 в JavaScript
// Encode (UTF-8 safe)
function b64Encode(str) {
return btoa(unescape(encodeURIComponent(str)));
}
// Decode (UTF-8 safe)
function b64Decode(str) {
return decodeURIComponent(escape(atob(str)));
}Кодирование Base64 в Python
import base64
encoded = base64.b64encode('Hello мир'.encode('utf-8'))
print(encoded.decode())Кодирование Base64 в Java
import java.nio.charset.StandardCharsets;
import java.util.Base64;
String encoded = Base64.getEncoder().encodeToString("Hello мир".getBytes(StandardCharsets.UTF_8));Часто задаваемые вопросы
Base64 — это то же самое, что шифрование?
Нет. Base64 — это обратимое преобразование формата, а не защита данных. Любой может декодировать результат обратно. Для конфиденциальной информации используйте настоящее шифрование, например AES.
Инструмент AESНасколько увеличивается размер после Base64?
Обычно примерно на 33%. Каждые 3 байта исходных данных становятся 4 символами Base64, поэтому результат больше оригинала.
Статистика Base64Чем отличаются Standard, URL-Safe и MIME?
Standard — обычный Base64. URL-Safe заменяет + и / на - и _, поэтому подходит для JWT и URL-параметров. MIME добавляет переносы каждые 76 символов и используется в email-вложениях.
URL-Safe Base64MIME Base64Как декодировать header или payload JWT?
JWT использует формат Base64URL. Выберите режим URL-Safe и вставьте первый (header) или второй (payload) сегмент JWT. Третий сегмент — это подпись.
Инструмент JWTЧто такое padding (=) в Base64?
Результат Base64 должен иметь длину, кратную 4. Если длина исходных данных не кратна 3 байтам, в конце добавляется = для выравнивания.
Инструмент Base64 PaddingПочему btoa и atob в JavaScript не поддерживают кириллицу напрямую?
Потому что эти API работают с Latin-1 строками, где символ считается одним байтом. Для UTF-8 текста сначала нужно преобразовать строку в безопасное байтовое представление.
Что такое Data URI Scheme и как встроить изображение через Base64?
Data URI позволяет вставить данные прямо в URL в формате `data:[<mediatype>][;base64],<data>`. Это удобно для маленьких иконок и CSS-фонов, но не для больших файлов, потому что Base64 увеличивает размер.
Инструмент Data URIBase64 в изображениеГлоссарий
- RFC 4648
- Официальный стандарт IETF для Base16 / Base32 / Base64, определяющий стандартный и URL-Safe варианты.URL-Safe Base64Base64 Padding
- RFC 2045 (MIME)
- Стандарт MIME, который ввел Base64 как формат передачи содержимого электронной почты.MIME Base64
- Base64URL
- URL-безопасный вариант Base64: + меняется на -, / — на _, а padding часто убирается.URL-Safe Base64JWT
- MIME Base64
- Вариант Base64 с переносами строк каждые 76 символов по RFC 2045.MIME Base64
- Padding
- Символ =, который дополняет строку Base64 до длины, кратной 4.Base64 Padding
- Алфавит Base64
- Набор символов A-Z, a-z, 0-9, + и /, используемый в стандартном Base64.
- btoa / atob
- Нативные браузерные API для кодирования и декодирования Base64.
- Data URI Scheme
- Формат URI, в котором данные встраиваются прямо в URL.Data URIBase64 в изображение
- HTTP Basic Authentication
- Способ HTTP-аутентификации, где username:password кодируется в Base64 и передается в Authorization header.Конструктор Auth Header
- Рост размера Base64
- Показатель того, насколько данные увеличиваются после кодирования Base64. Обычно около 33%.
Сравнение трех вариантов Base64
| Особенность | Standard | URL-Safe | MIME |
|---|---|---|---|
| Спецсимволы | + / | - _ | + / |
| Padding (=) | Используется | Часто опускается | Используется |
| Перенос строки | Нет | Нет | Каждые 76 символов |
| Стандарт | RFC 4648 §4 | RFC 4648 §5 | RFC 2045 |
| Типичные случаи | Data URI, общее кодирование | JWT, URL-параметры, имена файлов | Почтовые вложения, SMTP |
Сравнение кодировок семейства Base
| Кодировка | Число символов | Особенности набора символов | Увеличение размера | Типичное применение |
|---|---|---|---|---|
Base16 (Hex) | 16 | 0-9, A-F | 100% | Отладка, отображение хэшей |
Base32 | 32 | A-Z, 2-7 | 60% | DNS, ключи TOTP, QR-коды |
Base58 | 58 | Без 0/O/I/l | 38% | Биткоин-адреса, криптовалюты |
Base62 | 62 | A-Z, a-z, 0-9 | 34% | Короткие URL, кодирование ID |
Base64 | 64 | A-Z, a-z, 0-9, +, / | 33% | Data URI, MIME, JWT (URL-Safe) |
Authoritative References
- ReferenceRFC 4648 - The Base16, Base32, and Base64 Data Encodings
- ReferenceRFC 2045 - MIME Part One: Format of Internet Message Bodies
- ReferenceRFC 7519 - JSON Web Token (JWT)
- ReferenceMDN Web Docs - btoa()
- ReferenceMDN Web Docs - atob()
- ReferenceWikipedia - Base64
- Безопасное сравнение строк
- Двоичное Кодирование
- Шифр Цезаря
- Азбука Морзе
- Hex Кодирование
- Видео в Base64
- Base64 в видео
- Изображение в Base64
- Base64 в изображение
- Текст в Base64
- Base64 в текст
- Проверка хеша файла
- Файл в Base64
- Base64 в Файл
- Аудио в Base64
- Base64 в Аудио
- AES-шифрование и расшифровка
- DES Шифрование
- Кодировщик и Декодер Base32
- Base58 кодирование и декодирование
- Кодирование Base64
- Декодирование Base64
- Сравнение Base64
- Разбиение Base64
- Base64 — объединение строк
- Форматирование Base64
- Валидация Base64
- Пакетное кодирование Base64
- Пакетное декодирование Base64
- Очистка Base64
- Обработка заполнения Base64
- Base64 в Hex
- Преобразователь Base64 DataURL
- Base64-Hex конвертер
- Base85 Кодирование
- Генератор и верификатор HMAC
- PBKDF2
- Хеш MD5
- SHA-256 хэш
- SHA1 хеш
- Хеш SHA512
- JWT
- HTML Кодирование
- Unicode экранирование
- URL-кодирование
- Base64 URL-Safe
- MIME Base64
- Обфускация Java
- Обфускация JS
- Обфускация PHP
- Обфускация Python
- Статистика длины Base64