Base64 编解码

将文本编码为 Base64 或将 Base64 字符串解码为纯文本。快速、免费,完全在浏览器中运行。

使用方法

  1. 在输入区域输入或粘贴文本
  2. 点击「编码」转换为 Base64,或点击「解码」从 Base64 转换回来
  3. 使用「复制」按钮复制结果

常见问题

  • 什么是 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 传输。