Что это и что показывает
Base64 — это способ представить любые данные (текст, картинки, файлы) с помощью 64 печатных символов: A–Z, a–z, 0–9, плюс и слэш. Калькулятор кодирует строку в Base64 и декодирует обратно, корректно работая с кириллицей за счёт UTF-8. Это не шифрование, а кодирование: результат легко вернуть к исходному виду.
Формула / как устроено
Base64 берёт данные по 3 байта (24 бита) и нарезает их на 4 группы по 6 бит. Каждая 6-битная группа (значение 0–63) заменяется символом из алфавита Base64.
3 байта (24 бита) → 4 символа Base64
Для безопасной работы с не-латиницей строка сначала кодируется в UTF-8: btoa(unescape(encodeURIComponent(s))). Декодирование выполняет обратную цепочку.
Как посчитать вручную
- Переведите каждый символ строки в его байты (для ASCII — код символа).
- Сгруппируйте биты по 3 байта и перепишите их как 4 группы по 6 бит.
- Каждую 6-битную группу замените символом из таблицы Base64.
- Если байтов не кратно 3 — дополните результат знаками
=до кратности 4 символам.
Пример
Закодируем слово Hi (2 байта: 72 и 105).
Биты: 01001000 01101001 → группы по 6: 010010 000110 1001(00).
Это значения 18, 6, 36 → символы S, G, k. Недостаёт байта, поэтому хвост дополняется одним =.
Итог: SGk=.
Где применяется
Base64 используют для вложений в email (MIME), встраивания картинок в HTML и CSS через data-URI, передачи бинарных данных в JSON и XML, кодирования токенов (например, JWT состоит из Base64URL-частей) и хранения ключей. Это стандартный «клей» между двоичным миром и текстовыми протоколами.
Осторожно
- Принимают Base64 за шифрование — данные раскодирует кто угодно, секреты так не защищают.
- Кодируют кириллицу наивным
btoaбез UTF-8 — получают ошибку или «кракозябры». - Теряют padding-символы
=при копировании — строка перестаёт декодироваться. - Путают обычный Base64 и Base64URL (где
+и/заменены на-и_для безопасной вставки в URL).