前言
Base64编码与ASCII编码一样,也是一种编码方式。不同的是ASCII码采用7位二进制数表示(包括大小写字母、数字、标点符号和一些不可见字符),而Base64采用6位二进制数表示(包括大小写字母、0~9数字、+和/)
Base64不仅可以对字符串进行编码,还可以对视频、图像、音乐等进行编码

举个栗子,使用echo 'HelloWorld'命令在终端中显示HelloWorld,对HelloWorld进行Base64编码,则使用命令echo 'HelloWorld' | base64

编码原理
以HelloWorld为例,第一步是将其转变为二进制,如下图所示:

第二步是将二进制串,每6位为一组进行分组,若最后一组不够6位,使用0进行补齐。

第三步是将6位的二进制数转化为十进制数,再根据Base64编码表转换为对应的字符。

编码之后的结果为SGVsbG9Xb3JsZAo,值得注意的是:编码之后的字符串长度需要为4的倍数,如果不是4的倍数,需要在字符串之后添加=,即最终编码结果为:SGVsbG9Xb3JsZAo=
补充
1)除了Base64编码外,还存在Base16、Base32、Base36、Base58、Base62、Base85、Base91、Base92、Base128
2)应用场景:电子邮件、URL传参、数据存储等场景
3)Base64解密,使用命令echo 'SGVsbG9Xb3JsZAo=' | base64 -d即可解密

无情的广告时间
哈哈哈哈,又到了大家喜欢的广告时间了,喜欢的话给个关注呗,公众号:编码魔坊,谢谢您的关注!!!



















