Base64 是什么?
Base64 是一种把任意数据(文本、图片、二进制文件)转成只有英文字母、数字和 +、/、= 的编码方式,让数据能安全放进只接受文本的地方。常见用途包括邮件附件、网页中的 data: 图片、HTTP Basic 认证头、JWT 等。编码后的长度大约是原来的 4/3 倍。
如何使用
- 点击“编码”或“解码”选择方向,按下的按钮会高亮。
- 在左边输入内容。开启“自动转换”时,停止输入后会自动生成结果。
- 点击“结果放回输入”可以把结果移到左边,并自动切换成相反方向,方便确认能否转回原文。
原文格式:文本或 Hex
- 文本(UTF-8):普通文本,中文、Emoji 都能正确处理。
- Hex:用十六进制表示原始字节,例如
ff fe 00。解码结果不是文本(例如图片、加密后的数据)时,选择 Hex 就能看到内容。
标准 Base64 与 URL-safe Base64
| 标准 Base64 | URL-safe Base64 | |
|---|---|---|
| 第 62、63 个字符 | +、/ | -、_ |
| 结尾补位 | 用 = 补到 4 的倍数 | 通常省略 = |
| 常见用途 | 邮件、data URL、一般数据交换 | URL 参数、文件名、JWT |
解码时两种格式都接受,缺少 = 也能解码,不需要另外切换。
示例
- 文本
Hello 世界编码后是SGVsbG8g5LiW55WM - Hex
ff fe 00编码后是//4A,URL-safe 模式则是__4A
文件与 Base64 互转
- 文件转 Base64:把图片、PDF 等文件拖到输入区,或点「选择文件」(最大 10 MB)。开启「加上 data URI 前缀」会生成
data:image/png;base64,...,可以直接放进 HTML 的<img src>或 CSS。 - Base64 转回文件:解码结果是图片等二进制数据时,点「解码后下载为文件」。文件类型按
data:前缀判断,没有前缀时按文件开头判断 PNG、JPEG、GIF、WebP、PDF、ZIP 等。 - 文件只在你的浏览器中读取,不会上传。
常见问题
Base64 是加密吗?
不是。Base64 只是换一种表示方式,任何人都能直接解码,不能用来保护密码或机密数据。需要防止被读取时,请使用真正的加密;需要验证数据没被篡改时,可使用 HMAC。
解码时显示“二进制数据,不是 UTF-8 文本”?
说明解出来的内容不是文本,可能是图片、压缩包或加密后的数据。把“原文格式”改成 Hex,就能看到原始字节。
为什么结尾有一个或两个 =?
Base64 每 3 个字节会编成 4 个字符。原始数据长度不是 3 的倍数时,最后会用 = 补齐,让长度变成 4 的倍数。