发表于 2026-10-12 12:15:00 累积访问 12 次 术语
base64 是一种把二进制数据转换成纯文本的编码方式。它的出现解决的是一个古老的问题:一些传输通道只被设计用来传递字符,遇到非字符数据就会出错或者丢失。
●为什么需要它:早期电子邮件协议只支持 ASCII 字符,图片、音频、压缩文件这类二进制内容直接塞进去就会被截断或损坏。base64 的做法是把每 3 个字节(共 24 位)拆成 4 组,每组 6 位,然后按一张 64 个字符的对照表转成可打印字符,于是数据全部变成了字母、数字和少量符号。
●代价是体积变大。每 3 个字节被编码成 4 个字符,数据量大约增加三分之一。所以它不是压缩算法,严格来说反而让数据变大了。
●常见用途有几类:其一是在网页里内嵌图片,形如 data:image/png;base64, 开头的长串就是图片本身编码后的结果,优点是少一次网络请求;其二是在 JSON、XML 这类文本协议里携带二进制内容;其三是某些基础认证把用户名密码拼好后再编码放进请求头。
●需要特别注意的一点:base64 不是加密。它的目的只是让数据能安全通过只认文本的通道,任何人都可以用一个 base64 解码器在几秒内还原出原文。把它当作加密手段来保护敏感信息,是日常使用中最典型的误区之一。
●基本特征是它只由 A-Z、a-z、0-9 以及加号、斜杠、等号组成,结尾常常出现一个或两个等号用于补齐长度。