Base64 编码解码
粘贴 UTF-8 文本即可编码,粘贴 Base64 字符串即可解码。这个工具同时支持标准 Base64 和 Base64url,适合处理多语言文本、JSON 片段、JWT 片段、Basic Auth 值、URL 参数和日志字段。URL 安全模式适用于链接、Cookie 和 token 值;解码时也会处理常见的缺失 padding。编码、解码、复制和往返校验都在浏览器内完成,因此凭据、token 和内部日志不会被上传。
- 可在标准 Base64 和 Base64url 之间切换,分别适合普通文本、链接参数和 token 片段
- 可靠处理 UTF-8 文本,中文、日文、Emoji、重音字符和 JSON 都能正常往返转换
- 解码时校验长度和字符集,输入无效时给出明确错误,而不是输出含糊的乱码
- 自动处理常见的缺失 padding,适合 JWT 片段和 URL 安全值
- 可以把输出重新作为输入,用反向转换确认结果是否回到原文
- 所有数据只在当前浏览器标签页内处理,适合凭据、token 和内部日志
功能简介
一个本地 Base64 工作台,覆盖日常 API 调试和认证排查中常见的 Base64 转换、URL 安全变体、padding 处理和往返校验。
- 01
UTF-8 文本编码
把多语言文本、JSON 片段、配置值和认证字符串编码成标准 Base64。内容会先按 UTF-8 字节处理,因此中文、日文、Emoji 和重音字符都能可靠往返。
- 02
Base64 解码为文本
把 API 响应、日志、消息队列、缓存值或数据库字段里的 Base64 字符串解码成可读文本。如果结果不是有效的 UTF-8 文本,工具会报错,而不是显示难以判断的乱码。
- 03
Base64url 模式
URL 安全模式使用 Base64url 形式,更适合放进链接、Cookie、文件名和 JWT 值里。当输出需要穿过这些边界时,请开启这个选项。
- 04
缺失 padding 处理
JWT 片段和 URL 安全值经常省略末尾 padding。解码时,工具会按 Base64 分组规则处理这些常见情况,减少手动补 = 的麻烦。
- 05
实时校验状态
转换成功时会显示已编码或已解码状态。长度不合法、字符集不匹配或存在不支持字符时,会立即在输出区域显示错误。
- 06
往返校验
把输出放回输入区,切换模式,再执行反向转换。这样可以检查你自己的代码在字符集、padding 和 URL 安全变体上的处理是否一致。
- 07
内置示例
内置普通文本、JSON 和 URL 安全值示例,方便你在粘贴真实数据前先确认当前模式是否符合预期。
- 08
完全本地处理
编码、解码、复制和往返校验都在当前浏览器标签页内完成。凭据、JWT 片段、Basic Auth 值、内部日志和个人数据都会留在本机。
如何使用
选择转换方向,粘贴输入,需要时开启 URL 安全模式,结果会实时更新。
- 01
在转换模式中选择编码或解码。
- 02
把文本或 Base64 字符串粘贴到输入区。编码接受 UTF-8 文本;解码接受标准 Base64 和 Base64url。
- 03
当结果需要用于 URL、Cookie、JWT 或类似 token 字段时,开启 URL 安全模式。
- 04
查看输出状态。有效结果会立即显示;无效输入会给出明确错误。
- 05
复制结果,或者把输出作为输入并切换模式,确认结果是否能回到原始内容。
功能说明
转换方向决定输入和输出;URL 安全模式决定这个值能安全经过哪些边界。
- 需要生成 Basic Auth 值、JSON 字段、配置片段、日志样本、Data URL 内容,或系统要求 Base64 文本时,使用编码。
- 需要检查 API 响应、日志字段、缓存值、消息、Webhook 数据或 JWT 片段时,使用解码。
- 值要放进 URL 查询参数、路径片段、Cookie、文件名或 JWT 时,使用 URL 安全模式。
- Basic Auth、邮件 MIME、Data URL、SMTP 和大多数文本协议场景,通常使用标准 Base64。
- 不确定输入是哪种变体时,先试标准 Base64;如果失败,再开启 URL 安全模式重试。
- 这个页面面向文本内容。图片、PDF、压缩包和音频请使用专门的文件或图片 Base64 工具。
适合哪些场景
Base64 经常出现在 API、认证、消息、缓存和前端内嵌资源里。同样的粘贴、转换、复制流程,可以覆盖大多数日常排查任务。
-
检查 JWT 片段
粘贴 JWT header 或 claims 片段,开启 URL 安全模式,即可查看 issuer、过期时间、scope 和自定义字段。
-
生成 Basic Auth 值
把 username 和 password 组合编码成标准 Base64,用作 Authorization header 中 Basic 后面的值。
-
Data URL 内容
为小图标、内联 SVG、邮件模板或单文件原型准备 Base64 内容,以便嵌入 HTML、CSS 或 JSON。
-
API 字段调试
解码 REST、GraphQL 或 Webhook 响应中的 Base64 字段,查看其中到底是 cursor、签名材料、配置内容还是普通文本。
-
消息和缓存检查
检查 Redis、Kafka、SQS 或数据库二进制字段里的文本内容,不必临时写脚本。
-
OAuth 与签名请求调试
检查 OAuth state、OIDC nonce、PKCE verifier 和合作方签名请求中的 Base64url 片段,确认两端使用同一套编码约定。
-
回调参数处理
把值放进回调 URL 前先编码成 Base64url,减少标准 Base64 字符被链接解析器误处理的问题。
-
邮件 MIME 检查
从原始邮件源码中取出 Base64 编码的 MIME 部分,解码后检查正文、附件元数据或模板内容。
-
往返测试
先编码,再把输出作为输入并解码,确认结果是否回到原始文本。这个流程能快速暴露 padding 和变体不匹配问题。
-
跨语言契约检查
比较后端服务和前端客户端对同一文本生成的 Base64 输出,确认双方在 UTF-8、padding 和 URL 安全模式上的约定一致。
延伸阅读
如果 Base64 结果还需要经过链接或表单正文,可以继续使用 URL 编码解码 做百分号编码。结果要进入 HTML 文本、属性或邮件源码时,可以再用 HTML 编码解码 检查实体边界。调试 Bearer token、单点登录或会话状态时,可以打开 JWT 检查器 查看 JWT header、claims 和 signature 之间的关系。需要把图片嵌入 HTML、CSS 或 JSON 时,请切换到 图片转 Base64 ;如果你已经有图片 Base64 字符串,想预览它或还原成文件,可以使用 Base64 转图片 。
使用建议
Base64 问题通常不是算法本身造成的,而是变体、文本编码或边界规则没有约定清楚。
- 写代码前先明确使用标准 Base64 还是 Base64url,并记录是否保留 padding。
- 进入 URL、Cookie、文件名和 JWT 的值,优先使用 Base64url。
- 跨语言共享文本时,请明确约定 UTF-8,避免中文、日文和重音字符损坏。
- 解码失败时,先检查多余空白、缺失 padding,或是否选错了 Base64 变体。
- 从日志或邮件中复制 Base64 时,最好移除换行和空格。这个工具会处理常见空白,但其他解析器不一定会。
- 不要把 Base64 当成安全机制。它只是编码,不提供保密性、身份认证或完整性保护。
- 更换库、语言或运行时后,做一次编码和解码往返测试,并把结果与原始文本比较。
- 大型二进制数据编码成 Base64 后体积大约增加三分之一。文件上传、签名 URL 或二进制流通常更适合这类数据。
边界与注意事项
Base64 是可逆编码,边界很清楚。理解这些限制,可以避免把它误用成安全方案或文件处理方案。
- Base64 是编码,不是加密。任何人都可以解码,所以不要用它隐藏 token、密码或个人数据。
- 这个页面面向文本。图片、PDF、压缩包和音频请使用支持文件读取的工具。
- Base64 会让数据体积增加大约三分之一;大文件会带来额外的内存、带宽和剪贴板压力。
- 文本只按 UTF-8 处理。GBK、Shift-JIS 或其他旧编码的数据,需要先在字节层面转换。
- 几十 MB 级别的输入会让文本框和剪贴板操作变慢。这个规模更适合使用流式脚本或文件工具。
- 工具不会在标准 Base64 和 Base64url 之间静默猜测。请根据数据来源显式选择 URL 安全模式。
- 解码会严格校验长度和字符集。只要出现一个非法字符,整段输入都会失败,以避免静默损坏数据。
常见问题
这里整理了关于变体、padding、Unicode、安全性、隐私和数据完整性的实用问题。
Base64 是加密吗?
不是。Base64 只是把字节表示成可打印字符,没有密钥,也不提供保密性。任何人都可以解码。需要保密请使用真正的加密;需要完整性请使用 HMAC 或数字签名。
标准 Base64 和 Base64url 有什么区别?
Base64url 使用更适合 URL、Cookie 和文件名的字符形式,并且经常省略末尾 padding。标准 Base64 更常见于 Basic Auth、MIME、Data URL 和文本协议场景。
为什么有些浏览器方法处理中文或 Emoji 会失败?
一些旧方法只接受单字节文本,遇到中文、日文、Emoji 或重音字符就会失败。这个工具会先把文本转换成 UTF-8 字节,再做 Base64 转换,因此多语言内容可以正确处理。
为什么解码结果是乱码?
输入可能是二进制内容,原始文本可能不是 UTF-8,或者选择了错误的 Base64 变体。可以先尝试 URL 安全模式;如果仍然异常,可能需要文件工具或编码转换工具。
为什么有些 Base64 字符串末尾没有 padding?
URL 安全值和 JWT 片段经常省略末尾 padding。这个工具在解码时会处理常见缺失 padding 的情况,所以通常不需要手动补 =。
可以用这个工具编码文件吗?
这个页面只处理文本输入。图片、PDF 和其他文件请使用对应的图片转 Base64 或文件工具,让文件按字节读取。
我的数据会离开浏览器吗?
不会。编码、解码、校验、复制,以及将输出作为输入都在当前浏览器标签页内运行。输入不会发送到服务器。
JWT 使用的是 Base64url 吗?
是的。JWT 的 header、claims 和 signature 三段使用不带 padding 的 Base64url。处理 JWT 片段时请开启 URL 安全模式。
为什么结果能解码,但放进 URL 后失败?
很可能是把标准 Base64 直接放进了 URL。URL 安全模式会生成 Base64url,更适合链接解析。
工具能自动识别 Base64 变体吗?
短字符串无法可靠识别,因为许多字符在两种变体中都合法。如果解码失败,请切换 URL 安全模式后再试。
输入可以有多大?
几 MB 通常比较顺畅。几十 MB 会让页面和剪贴板明显变慢,这种大小更适合流式脚本或支持文件的工具。
Base64 能保护数据完整性吗?
不能。Base64 没有校验和、认证或签名能力。如果需要确认内容没有被修改,请在编码前使用 HMAC、数字签名或其他完整性机制。
更多相关工具
可以继续处理相邻任务:把结果做 URL 百分号编码,检查 JWT 片段,或者在图片 Base64 和可扫码工具之间切换。