Base64 编码 / 解码
免费在线 Base64 编码与解码工具。支持文本互转、文件上传转 Data URI、URL Safe 模式。所有处理在浏览器中完成,数据不会离开您的设备。
输入文本
Base64 结果
什么是 Base64?
Base64 是一种基于 64 个可打印字符来表示二进制数据的编码方式。由于 2⁶=64,每 6 个比特为一个单元,对应一个可打印字符。Base64 常用于在文本协议中传输二进制数据,例如 HTML/CSS 中的 Data URI、HTTP Basic 认证的 Token 等。
工作原理
编码时将每 3 个字节(24 bit)拆分为 4 个 6 bit 的组,每个组映射到 Base64 编码表中的一个字符。如果数据不足 3 字节,用 = 填充。解码过程相反,将每个 Base64 字符还原为 6 bit 二进制值,再组合成原始数据。
Base64 编码的特点:
- 编码后数据长度比原始长约 33%(3 字节 → 4 字符)
- 可打印字符:
A-Z、a-z、0-9、+、/ - 末尾可能包含 1 或 2 个
=填充符 - 是完全可逆的编码(非加密)
常见使用场景
- Data URI — 在 HTML/CSS 中直接嵌入图片、字体等二进制文件
- HTTP Basic Auth — 用户名和密码通过 Base64 编码后传输
- JWT Token — JSON Web Token 的 Header 和 Payload 部分使用 Base64 URL Safe 编码
- API Token — 许多 API 密钥使用 Base64 编码存储和传输
- 邮件附件 — MIME 协议中通过 Base64 编码传输二进制附件
Base64 编码表
| 值 | 字符 | 值 | 字符 | 值 | 字符 | 值 | 字符 | |||
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | A | 16 | Q | 32 | g | 48 | w | |||
| 1 | B | 17 | R | 33 | h | 49 | x | |||
| 2 | C | 18 | S | 34 | i | 50 | y | |||
| 3 | D | 19 | T | 35 | j | 51 | z | |||
| 4 | E | 20 | U | 36 | k | 52 | 0 | |||
| 5 | F | 21 | V | 37 | l | 53 | 1 | |||
| 6 | G | 22 | W | 38 | m | 54 | 2 | |||
| 7 | H | 23 | X | 39 | n | 55 | 3 | |||
| 8 | I | 24 | Y | 40 | o | 56 | 4 | |||
| 9 | J | 25 | Z | 41 | p | 57 | 5 | |||
| 10 | K | 26 | a | 42 | q | 58 | 6 | |||
| 11 | L | 27 | b | 43 | r | 59 | 7 | |||
| 12 | M | 28 | c | 44 | s | 60 | 8 | |||
| 13 | N | 29 | d | 45 | t | 61 | 9 | |||
| 14 | O | 30 | e | 46 | u | 62 | + | |||
| 15 | P | 31 | f | 47 | v | 63 | / |
小提示:启用"URL Safe 模式"后,Base64 中的
+ 会被替换为 -,/ 替换为 _,并去掉末尾的 =,使得编码结果可在 URL 中直接使用,无需额外编码。