Base64编码工具
使用我们的Base64编码工具将任何字符串输入编码为Base64,确保数据安全传输。

Base64编码工具是一款免费工具,可将字符串转换为标准 Base64 文本。
什么是 Base64,它为什么会出现?
Base64 是一种二进制到文本的编码方式,使用字母、数字和少量符号表示数据。之所以需要 Base64,是因为有些系统可以可靠地传输文本,却可能修改或拒绝原始二进制数据。
标准 Base64 字符表包含大写字母、小写字母、数字、加号和正斜杠,末尾还可能使用等号进行填充。编码后的内容通常比原始数据更长,因为每 3 个输入字节会转换成 4 个 Base64 字符。
输入为 Hello。
输出为 SGVsbG8=。
Base64 处理的是字节,而不是人们看到的字符。空格、标点和数字会像其他输入一样被编码。带重音符号的字母、表情符号和非拉丁文字必须先采用字符编码,通常是 UTF-8。字节编码不同,生成的 Base64 结果也会不同。输入为空时,编码结果也是空值;输入很长时,输出字符串会按比例变长。
Base64 是编码,不是加密。任何人都能使用解码器还原原始数据,因此它无法提供保密性,不适合用来隐藏密码、API 密钥或个人信息。

如何使用 Base64编码工具?
输入需要编码的字符串,然后在 Base64 encoded 结果字段中查看转换后的值。此工具通过 PHP 的 base64_encode 函数执行标准 Base64 编码。
- 准确复制源字符串,包括所有需要保留的空格和换行符。
- 复制返回的 Base64 值,不要添加引号或多余的空白字符。

编码操作在服务器端完成。你的输入会通过 HTTPS 发送到服务器,并且不会被存储。虽然 HTTPS 能够保护传输过程中的请求,但除非接收系统确实要求使用 Base64,否则请避免提交敏感信息。
Base64 通常用在哪里?
当二进制数据或任意字节需要通过文本格式传输时,通常会使用 Base64。接收系统必须知道该值采用了 Base64 编码,并在适当的环节进行解码。
- 数据 URL:将经过 Base64 编码的图片、字体或其他文件连同媒体类型直接放入 HTML 或 CSS。
- 查询字符串:有时会携带编码后的令牌或结构化数据,不过通常更适合使用 URL 安全的 Base64 变体。
- 电子邮件:将 Base64 用作 MIME 传输编码之一,以传输无法作为纯文本安全发送的附件和邮件组成部分。
- JSON 载荷:可能会用字符串表示图片字节、文档或密码学材料,因为 JSON 没有原生的二进制类型。
- HTTP 身份验证:在 Basic 身份验证中使用 Base64 编码用户名和密码。解码后仍可直接读取原始值,因此依然需要安全的传输方式。

该选择标准 Base64 还是 Base64url?
此工具生成标准 Base64,适用于 MIME 电子邮件、许多 JSON API,以及明确要求使用常规 Base64 字符表的系统。标准输出可能包含 +、/ 和末尾的 = 填充字符。
如果该值将成为 URL、文件名、Cookie 或 JSON Web Token 的一部分,请选择 Base64url。该变体会用 - 替换 +,用 _ 替换 /,并且通常省略填充字符。切换变体前,请先查看接收系统的规范。只支持其中一种字符表的解码器可能会拒绝另一种格式。
为什么 Base64 无法解码,或者解码后是乱码?
Base64 无法解码,通常是因为输入使用了非预期的变体,或内容在传输过程中发生了变化。有效的 Base64 也可能解码为二进制字节,将其直接显示成文本时,看起来就会像乱码。
- 字符表不匹配:常见于将 Base64url 输入交给严格的标准 Base64 解码器,反过来也一样。
- 缺少填充字符:可能导致要求使用 1 个或 2 个等号补足长度的解码器报错。
- 重复编码:已经编码的值又被编码一次。第一次解码后得到的会是另一个看起来像 Base64 的字符串,而不是原始内容。
- 字符被修改:可能是因为查询字符串中的加号被解释成空格,或者复制时加入了换行符和空格。
- 二进制输出:直接显示成文本时可能看起来像乱码。解码后的字节可能属于图片、压缩包、PDF 或加密文件,需要用正确的应用程序打开。
Base64解码工具可以还原标准 Base64 文本。如果解码后的字节表示图片,下一步直接使用 Base64解码为图片会更方便。
常见问题
Base64 会保留字母大小写和换行符吗?
会。Base64 会保留底层字节,包括字母大小写和换行字符。不过,Windows 和 Unix 风格的换行符使用不同的字节序列,因此看起来完全相同的多行文本也可能生成不同的编码结果。
可以把 Base64 直接粘贴到 HTML 或 CSS 中吗?
只有在补充文档要求的语法后才可以。数据 URL 通常需要在编码内容前添加媒体类型和 ;base64 标记,而此编码工具只返回编码内容,不会生成完整的 URL。
相同文本每次都会生成相同的 Base64 值吗?
只要输入字节完全相同,就会生成相同的值。字符编码不同、末尾存在不可见空格、包含字节顺序标记,或者换行符发生变化,都会改变结果。
Base64 区分大小写吗?
区分。Base64 字符表中的大写和小写字符代表不同的值,因此即使修改大小写后字符串看起来仍然有效,也可能导致解码数据损坏。
这个工具可以编码文件吗?
此工具用于处理字符串,不支持上传文件。粘贴文件的文本形式,并不等于对文件的原始字节进行编码。如果其他应用程序要求以 Base64 提供文件字节,请使用支持文件的编码工具,并按照该应用程序对 Base64 字符表和填充方式的要求操作。