Base64
Кодирует текст в Base64 и декодирует обратно. Поддерживает стандарт RFC 4648 и URL-safe вариант; UTF-8 сохраняет кириллицу.
01
Кодировщик
02
Как работает
3 байта входа → 4 символа Base64. Пример: «Hi» → SGk=64 символа + = (padding для выравнивания)
A0
B1
C2
D3
E4
F5
G6
H7
I8
J9
K10
L11
M12
N13
O14
P15
Q16
R17
S18
T19
U20
V21
W22
X23
Y24
Z25
a26
b27
c28
d29
e30
f31
g32
h33
i34
j35
k36
l37
m38
n39
o40
p41
q42
r43
s44
t45
u46
v47
w48
x49
y50
z51
052
153
254
355
456
557
658
759
860
961
+62
/63
=pad
03
О Base64 — что стоит знать
Base64 — схема кодирования байтов в текст. Каждые 3 байта данных превращаются в 4 символа из набора 64 безопасных ASCII-знаков. Размер результата больше исходника на ~33%.
Задача Base64 — надёжно передавать произвольные данные по каналам, рассчитанным только на текст: email, JSON, XML, CSS, HTTP-заголовки. Это не шифрование — любой может декодировать обратно.
Стандартный Base64
RFC 4648Привет → 0J/RgNC40LLQtdGC
Алфавит из 64 символов: A–Z, a–z, 0–9, + и /. Если длина входных данных не кратна 3, результат дополняется символами = (padding). Используется в MIME, PEM-сертификатах, Base64-строках в HTML.
URL-safe Base64
RFC 4648 §5Привет → 0J_RgNC40LLQtdGC (без =)
Модификация для URL и имён файлов: + → −, / → _. Предотвращает конфликт с синтаксисом URL. Применяется в JWT-токенах, OAuth, Google API.
Кодировка символов
UTF-8: кириллица → 2 байта на символ
Base64 работает с байтами, не с символами. UTF-8 сохраняет весь Unicode (кириллица, иероглифы, эмодзи), Latin-1 работает только с ASCII 0–255 — кириллица будет потеряна.
Где применяется
JWT · Data URI · SMTP · PEM · CSS · JSON API
Data URI — картинки в HTML/CSS: src="data:image/png;base64,…". JWT — header/payload URL-safe Base64. SMTP — вложения в письмах. PEM — SSL-сертификаты и ключи.
04
Частые вопросы
Обновлено