Base64 不只是"把文字变成乱码"。它在图片内联、API 认证、数据 URI、邮件编码等场景中无处不在。
编码原理
Base64 将每 3 个字节(24 位)转换为 4 个可打印 ASCII 字符(每个 6 位)。编码表:A-Z、a-z、0-9、+、/,末尾用 = 填充。
原文: Man
二进制: 01001101 01100001 01101110
分组: 010011 010110 000101 101110
十进制: 19 22 5 46
Base64: T W F u
5 个实用场景
- 内联图片 — 小图标转 Base64 嵌入 HTML,减少 HTTP 请求:
<img src="data:image/png;base64,..."> - HTTP Basic Auth — username:password 编码后放入请求头
- JWT Token — Header 和 Payload 都是 Base64URL 编码的 JSON
- 邮件附件 — MIME 使用 Base64 编码二进制附件
- 数据 URI — 小文件嵌入 HTML,避免额外网络请求
注意:Base64 是编码不是加密!任何人看到都能解码还原。切勿用它加密敏感数据。