Base64 编码和解码的完整开发人员指南
在全球互联网通信和数据处理系统中,通过仅支持纯 ASCII 文本字符的网络传输原始二进制数据(例如图像、PDF 文件或执行代码)可能会导致数据损坏。电子邮件服务、Web 路由器和 XML/JSON API 通常将二进制字节解释为命令信号,从而破坏有效负载传输。
Base64 编码通过将原始二进制字节转换为标准化、高度可移植的64 个可打印 ASCII 字符序列来解决此问题。我们的 Base64 编码器和解码器是一款快速、离线优先的 Web 实用程序,旨在在浏览器中安全地处理文本、文件和 URL 参数。
<小时>Base64 编码背后的数学框架
Base64 的工作原理是将二进制位分组并将其转换为标准字符:
- 二进制分组:编码器采用三个 8 位字节的二进制数据,创建一个 24 位块。
- 分割为 6 位块:此 24 位块被分割为四个 6 位块。
- 字符映射:每个 6 位块都有一个从 0 到 63 的十进制值。编码器将这些值映射到标准字符:
A–Z(十进制 0–25)a–z(十进制 26–51)0–9(十进制 52–61)+和/(十进制 62 和 63)
- 填充 (
=):如果输入的二进制数据不能完美除以 3,编码器会添加空字节并在字符串末尾附加一或两个=字符作为填充。
分步教程:如何编码和解码数据
- 如何编码:
- 将原始文本粘贴到输入面板中。
- 点击编码为 Base64。
- 该工具会立即生成您的 Base64 字符串。
- 如何解码:
- 将有效的 Base64 字符串粘贴到解码面板中。
- 点击从 Base64 解码。
- 该工具将字符串解码回其原始文本。
比较:标准 Base64 与 URL 安全 Base64
标准 Base64 包含在通过 Web URL 或文件系统传递时导致问题的字符:
<表> <标题>+ 和 /Base64 的主要开发人员用例
- JSON Web 令牌 (JWT):JWT 结构(标头、负载和签名)使用 URL 安全 Base64 进行编码,以允许安全的 API 身份验证传输。
- HTML/CSS 中的数据 URI:将小图标或图形直接嵌入到 CSS 样式中(例如
background: url('data:image/png;base64,iVBORw...')),减少 HTTP 请求并提高页面速度。 - HTTP 基本身份验证:API 凭据分组为
用户名:密码字符串,并在 HTTP 请求标头内进行 Base64 编码。 - 电子邮件附件 (MIME):标准电子邮件系统将文件附件(例如 PDF 和图像)转换为 Base64 块,以确保通过邮件服务器安全传输。