Base64 编解码
将文本编码为 Base64 或将 Base64 字符串解码为纯文本。快速、免费,完全在浏览器中运行。
使用方法
- 在输入区域输入或粘贴文本
- 点击「编码」转换为 Base64,或点击「解码」从 Base64 转换回来
- 使用「复制」按钮复制结果
常见问题
-
什么是 Base64 编码?
Base64 是一种将二进制数据表示为 ASCII 字符串的编码方案。常用于在 HTML/CSS 中嵌入图片或通过文本协议传输数据。
-
Base64 是加密吗?
不是,Base64 是编码,不是加密。它不提供任何安全性。任何人都可以将 Base64 字符串解码回原始形式。
-
支持 UTF-8 吗?
支持。此工具完全支持 UTF-8 编码的文本,包括所有语言的字符。
-
最大输入大小是多少?
由于此工具在浏览器中运行,限制取决于设备内存。通常可以处理数兆字节的数据。
Base64 编码的原理
Base64 是一种将任意二进制数据转换为纯文本字符的编码方式。其名称来源于它使用 64 个可打印字符(A–Z、a–z、0–9、+、/)来表示数据。
编码过程简单来说是:每 3 个字节(24 位)的原始数据被分成 4 组,每组 6 位,再映射到对应的 Base64 字符。如果原始数据长度不是 3 的倍数,末尾会补 = 作为填充符。这也解释了为什么 Base64 编码后的数据比原始数据大约膨胀 33%——每 3 字节变成 4 个字符。
常见使用场景
电子邮件附件:早期的 MIME 协议要求邮件内容必须是纯文本,因此附件需要经过 Base64 编码后才能传输。至今大多数邮件客户端仍在使用这种方式。
在 HTML/CSS 中内嵌图片:可以将小图标、背景图等直接以 Base64 格式写入代码,减少 HTTP 请求数量,加快页面加载速度。格式如:<img src="data:image/png;base64,iVBORw0KGgo...">
API 传输与 HTTP Basic 认证:HTTP Basic Auth 将 用户名:密码 进行 Base64 编码后放入请求头。需要注意的是,这并不提供安全保护,仅作为格式转换,必须配合 HTTPS 使用。
JWT(JSON Web Token):JWT 的三个组成部分(Header、Payload、Signature)分别经过 Base64URL 编码,Base64URL 是 Base64 的变体,将 + 替换为 -、/ 替换为 _,去掉末尾的 =,以确保安全地用于 URL 参数。
Base64 不是加密!
这是一个非常常见的误解。Base64 是编码(Encoding),不是加密(Encryption)。
- 编码的目的是格式转换,没有密钥,任何人都可以轻松解码
- 加密的目的是信息保护,需要密钥才能解密
将敏感信息(如密码、个人数据)仅用 Base64 编码后传输,与明文传输没有本质区别。真正的安全保护需要使用 AES、RSA 等加密算法,并配合 HTTPS 传输。