Base64 编码 / 解码
此文件类型无法预览
隐私声明
所有编码和解码操作均在您的浏览器中通过 JavaScript 本地完成。不会将任何输入数据发送到服务器,也不会存储或记录。Miracle Salad 不会收集或保留您在此工具中输入的任何内容。
关于 Base64 编码
Base64 把任意二进制数据变成由 64 个安全字符组成的纯文本。这就是它的全部工作。它不是压缩——输出会变大,而不是变小。它也不是加密,尽管人们总把它当成加密。它之所以存在,是因为大量传输通道能承载文本,却会被原始字节卡住。
如何使用此工具
- 1 选择编码或解码,然后粘贴文本——或切换到文件模式并拖入一个文件。
- 2 结果会随输入即时出现;不会上传任何内容,也无需点击按钮。
- 3 解码为文件时,请填写扩展名,这样预览和下载才知道在处理什么。
Base64 不是加密
这是最值得记住的一点。Base64 没有密钥,也没有秘密;这个变换是公开的,任何人都能还原,本页面点一下就能证明。仅仅看起来乱码的文本毫无保护作用。如果你看到以 Base64 形式保存的密码、API 密钥或令牌,就当它是明文写着的——事实也正是如此。目标是保密时请使用真正的加密,Base64 只用在目标是安全传输的场合。
它为什么会存在
很多系统是为文本、而且只为文本设计的。邮件正文、JSON 载荷、XML 文档、URL 和 HTML 属性,只要某个原始字节碰巧长得像控制字符或引号,它们统统会出问题。Base64 绕开了这个麻烦:它把每一个可能的字节映射到由字母、数字和两个标点组成的小字母表上,而这些字符能完好地穿过上述任何通道。所以你会在邮件附件里、在把小图标直接嵌进样式表的 data URI 里,以及在每个 JWT 的中间段里遇到它。
代价是体积多出约三分之一
输入的每三个字节会变成输出的四个字符,因此结果比原来大约大 33%。对一个短令牌来说,这无关紧要。但对嵌进样式表的大图来说就不是了:文件变大,无法与页面分开缓存,而且浏览器必须先解码才能绘制。如果内联能省下一次请求,就内联小资源;大的仍旧留作普通文件。并且请记住,Base64 从不会让任何东西变小——如果你的问题是体积,你要的工具是压缩。