Base64 编码器和解码器
Base64 是一种使用 64 个安全字符(A–Z、a–z、0–9、+ 和 /)来表示任何数据(如文本、图片、PDF、密钥等)的方法。本工具可将文本和文件编码为 Base64,也可将 Base64 解码回可读文本或原始文件。所有转换都在您的浏览器中即时完成,您粘贴或选择的任何内容都不会被上传。
功能简介
- 将文本编码为 Base64,并正确处理 UTF-8,因此支持任何语言和表情符号。
- 将 Base64 解码为文本,能容忍换行符、空格和缺失的填充符——这些在从电子邮件或日志中复制时很常见。
- Base64URL 模式,用于输出 URL 安全的字符串,常用于 JWT、OAuth 和许多 Web API。
- 文件转 Base64,可选择输出完整的
data:URL,以便直接用于<img src>或 CSSurl()。 - Base64 转文件:当内容是二进制数据(如图片或 PDF)时,可将解码后的字节下载为文件。
Base64 的应用场景
电子邮件附件。 MIME 标准将附件以 Base64 编码,以确保二进制文件能通过为文本设计的系统进行传输。
数据 URL。 小图标和图片可以作为 data:image/png;base64,… 直接嵌入到 HTML 或 CSS 中,从而节省一次额外的网络请求。
API 和配置。 证书、加密密钥或文件上传等二进制值通常作为 Base64 字符串在 JSON 内部发送。Kubernetes 的 Secret 和许多环境变量也使用 Base64 存储值。
身份验证。 HTTP 基本认证以 Base64 编码发送 username:password,而 JSON Web Token (JWT) 则由三部分 Base64URL 编码的内容组成。要检查令牌的内容,请使用 JWT 解码器。
Base64 的工作原理
编码器每次取三个输入字节(24 位),将其拆分为四个 6 位的组。每个 6 位的值(0-63)都映射到 Base64 字母表中的一个字符。当输入长度不是三的倍数时,输出会用一个或两个 = 符号进行填充,以使其长度成为四的倍数。
因为每 3 个字节会变成 4 个字符,所以 Base64 数据比原始数据大约三分之一。这种开销是为了能让二进制数据安全地通过纯文本系统而付出的代价。
Base64 与 URL 编码不同。如果您需要将任意文本放入查询字符串中,请改用 URL 编码/解码。要检查两个文件是否完全相同,请使用 哈希值生成器 比较它们的校验和。