Base64 编码 / 解码器

在浏览器中本地进行 Base64 编码及解码。支持文本转换、URL-safe Base64,以及文件转 Base64。

🔒 零网络请求。所有编码都在浏览器内完成。

格式化工具

0 字节

文件转 Base64

选择文件即可直接转为 Base64。

已复制!

你刚测试了Base64 编码 / 解码器 — 试试 JWT 解码器 →

什么是 Base64 编码/解码器?

Base64 工具按照 RFC 4648 将字节编码为 ASCII,然后转换回来。标准字母表使用 A-Z、a-z、0-9 加上 +/ 作为 64 个符号,用 = 填充将输出对齐到 4 字节边界。长度扩展正好是 4/3 — 每 3 个输入字节变成 4 个输出字符,所以 1024 字节的文件变成 1366 字符的字符串(计入填充后四舍五入)。工具也支持 base64url(RFC 4648 第 5 节)用 - 替代 +_ 替代 /,并移除尾部 =,使输出在 URL、文件名和 JWT 片段内安全使用,无需进一步转义。解码接受两种字母表并容许缺失填充 — 对 JWT 有用,它们为了简洁而去掉 =。文件模式用浏览器的 FileReader API 读取任何文件,所以 PDF、证书和签署的二进制文件可以被 base64 编码以嵌入,无需离开标签页。

如何使用 Base64 工具

要编码,粘贴文本到输入面板并选择「编码」。要解码,粘贴 base64(或 base64url)字符串并选择「解码」 — 工具会检测你使用的字母表。切换 URL 安全开关强制 base64url 输出,不论输入字母表。将文件拖到文件区域(或使用选择器)以编码二进制数据;结果包括文件的 MIME 类型(如果已知)。字节计数器显示实时输入大小,让你可以验证长度扩展(输出应该大约是输入的 1.33 倍)。如果解码失败,错误会指出第一个无效字符 — 通常是流浪的换行符、智慧引号,或被误分类为标准的 base64url 字符串。

为什么 Base64 编码无处不在

Base64 之所以存在是因为传输数据的有线协议 — SMTP、JSON、HTTP 标头、URL — 在历史上只保证可打印 ASCII 子集。传送原始字节会冒中间代理被控制字符解释或去掉高位的风险。编码用 33% 的大小增加来换取安全传输,这就是为什么 MIME 电子邮件附件、PEM 包装的证书(-----BEGIN CERTIFICATE-----)和 Data URI(data:image/png;base64,...)都使用这种编码。选择正确的变体很重要:标准 base64 适合 JSON 或 XML 中的二进制负载;base64url 适合 Authorization: Bearer <token> 标头和 JWT 片段内,否则 URL 不安全的 + / 会需要百分比编码。Cookie 因为同样原因偏好 base64url — 更少的字符要转义,在浏览器和框架间更少的解析器惊喜。

常见问题

什么是 URL-safe Base64?

URL-safe Base64 会把 + 改成 -、/ 改成 _,并移除结尾 =,让输出更适合放进 URL。

可以编码文件吗?

可以。选择文件后,工具会在本地将文件字节转为 Base64,无需上传。

为什么解码会失败?

如果输入不是有效 Base64,或者解出来的字节不是有效 UTF-8 文本,解码就会失败。