§

只需输入您的 Base64 数据,然后点击解码按钮。

对于较大的 Base64 字符串(例如,编码后的图片、文档),请使用下面的文件上传表单。
§

Output

text
§

将文件从 Base64 格式解码

选择一个 Base64 文件进行上传和处理。

拖拽 Base64 文件到此处或点击选择

国内开发者在排查问题时频繁需要做 Base64 解码:阿里云函数计算的事件触发体里,OSS 对象元数据通常以 Base64 嵌入;企业微信的回调 URL 验证、钉钉开放平台的加密事件 encrypt 字段都需要先解码再用国密或 AES 解密;调试 GitHub Actions 工作流推送至腾讯云 TKE 集群时,webhook 签名头部和工件归档同样是 Base64 字节流;接入抖音开放平台 OAuth 设备授权时,服务端返回的 device_code 也以 Base64 表示,本地解码可快速定位回调失败原因。

高级选项

换行符

不同的操作系统使用不同的换行符——例如,Unix 和 Windows 使用的换行符不同。解码后,输出中的任何换行符都会被您选择的选项替换。此设置决定了“分别解码每一行”功能的行为。

分别解码每一行

启用此选项后,输入的每一行将被视为一个独立的 Base64 字符串并独立解码。这在您需要解码由换行符分隔的多个不同 Base64 数据时特别有用。

移除换行符

MIME 格式的 Base64 数据(例如来自电子邮件)通常每 76 个字符会包含换行符。启用此选项以在解码前移除这些换行符,确保正确解码 MIME 格式的 Base64 数据。

处理 URL 安全编码

如果您的输入使用 URL 安全的 Base64 变体(RFC 4648 / Base64URL),其中 "-" 表示 "+","_" 表示 "/",并且可能省略填充,则启用此选项。此选项会在解码前将输入转换回标准 Base64。

实时模式

启用实时模式后,您的输入会立即使用浏览器内置的 JavaScript 函数进行解码,而不会将任何数据传输到我们的服务器。请注意,此模式目前仅支持 UTF-8 文本输出。

注意:对于二进制文件(图片、文档等),请确保保存输出而不是复制,以防数据损坏。

什么是 Base64 解码?

Base64 解码将 Base64 的二进制到文本编码方案反向运行,把一个 ASCII 字符串还原成原始产生它的字节序列。Base64 使用一个固定的 64 字符字母表——大写字母 A–Z、小写字母 a–z、数字 0–9,以及两个符号 +/,再加上 = 作为末尾的填充字符。该格式由 RFC 4648 §4 定义,同时也定义了 URL 安全变体 Base64URL,它用 -_ 替换 +/。编码将每三个输入字节(24 位)映射为四个 Base64 字符(4 × 6 位),因此编码后的输出总是比原文大约长 33 %。解码反转该比例:JWT 负载、MIME 编码的电子邮件附件、内联 data: URI——它们都通过这同一次精确的反向操作返回原始字节。

Base64 解码是如何工作的?

Base64 解码机械地反转编码流水线。解码器一次读取四个 Base64 字符,在 64 字符字母表中查找每个字符以恢复其 6 位值,将这四个 6 位值拼接成一个 24 位缓冲区,然后再把该缓冲区拆分回三个 8 位字节。末尾的 = 填充表示最后一组只解码出两个字节(一个 =)或一个字节(两个 =)。经典示例是 Base64 字符串 TWFu,它解码为三个字母的 ASCII 单词 Man。按算法:T 是字母表索引 19 → 010011W 是索引 22 → 010110F 是索引 5 → 000101u 是索引 46 → 101110。拼接后这些位组成 010011 010110 000101 101110,重新分组得到字节序列 01001101 01100001 01101110——也就是 Man 的 ASCII 码。

  1. 根据 64 字符字母表和填充规则验证输入字符串,拒绝任何在传输过程中残留的散落空白字符或字母表外字符。
  2. 通过查找表(或字符在 A–Z a–z 0–9 + / 中的位置)把每个 Base64 字符转换为它的 6 位值。
  3. 把这些 6 位值按每四个一组拼接成 24 位缓冲区。
  4. 把每个 24 位缓冲区重新拆分回三个 8 位字节,这就是原始的二进制或 ASCII 数据。
  5. 尊重末尾的 = 填充:根据需要从最后一组中丢弃一个或两个字节。

为什么使用 Base64 解码器?

  • 数据恢复:从任何文本安全的 Base64 载荷中取回原始二进制字节,然后再做进一步处理。例如,对一个将 PDF 收据以 Base64 形式存储的数据库列进行解码,使这些字节可以写回磁盘并重新打开。
  • 电子邮件附件:从将二进制部分以 Base64 行包裹的 MIME 编码邮件正文中提取文件和图片。一个典型场景是当某个附件无法下载时,从已保存的 .eml 文件里的 Content-Transfer-Encoding: base64 区块中取出一张 PNG。
  • 网页资源:将内嵌的 data: URI 还原为其原始字节,以便检查页面实际交付了什么内容。例如,粘贴一条来自某个 CSS 规则的 data:image/svg+xml;base64,… URL,把 SVG 标记还原出来以便审计。
  • API 集成:处理 REST 和 GraphQL 服务在二进制字段无法以原始字节传输时所返回的 Base64 载荷。常见的场景是解码 JWT 签名、OAuth 刷新令牌,或 S3 的 Content-MD5 响应头,用以端到端校验一次请求。

Base64 解码的常见应用有哪些?

Base64 解码在各种场景中都至关重要,包括:

  • 邮件处理:无需打开完整邮件客户端即可从 MIME 编码消息中取出附件。工程师在分流支持队列中的格式错误邮件时,或在原始客户端已不再安装的情况下从归档的 .mbox 导出文件中恢复某个附件时,会执行该操作。
  • 网页开发:把内联的 Base64 data: URI 还原为其原始字节,以便对该资源进行审计,或将其替换为带哈希的文件。在重构那些把图标以 data:image/svg+xml;base64,… 形式嵌入的样式表时,这是一项日常操作。
  • API 调试:对 JSON 或 XML 响应中的 Base64 字段进行解码,使其底层值在日志中可读。典型例子包括 JWT 的 payload、S3 中包裹 MD5 的 ETag,或来自第三方提供商回送的 webhook 签名响应头。

Base64 解码示例是什么样的?

Base64 字符串 TWFu 解码后变成单词 Man。解码过程将每个 Base64 字符转换为其 6 位值,组合这些位,并重构原始的 ASCII 字符。

这个 Base64 解码器是免费且私密的吗?

是的——这个 Base64 解码器完全免费,无需账户或注册,并且完全运行在你的浏览器内部。当你粘贴一段 Base64 字符串或拖入一个文件时,解码会通过标准 JavaScript API 在本地完成(文本使用 atob,二进制内容则使用 FileReader 加上类型化数组转换)。你的输入永远不会离开你的设备,不会有任何副本被写入任何服务器日志,对你解码的内容也不会附加任何遥测,并且没有速率限制、字符上限或保存的历史记录。页面首次加载之后,你可以离线使用该工具,因为首次访问时运行的同一段代码已被浏览器缓存。我们也避免使用第三方分析脚本来读取表单字段。这使得该工具对敏感数据安全,例如 JWT 持有者令牌、嵌入在 data: URI 中的凭据、配置机密,以及包装在 Base64 中、绝不能上传到任何地方的证书或私钥材料。

我们的在线 Base64 解码工具提供了一种快速且安全的方式来解码您的 Base64 数据。无论您是从网页中提取嵌入的图片,还是处理 API 响应,Base64 解码都是现代网页开发的必备工具。