首先我们要学会区别什么是加解密算法,什么是编码格式:
加密:它是把明文变成密文,降低可读性;
编码:它是变换了一种形式,便于传输,提高可读性;
base64就是使用64个可打印的字符来表示二进制的方法;
1.原理
把3个8位字节转换成4个6位字节,之后在每个6位字节前补2个零,形成八位,即一个字节;
我们世界上最大的文字最多可用3个字节表示(汉字是双字节,即一个汉字可以用两个字节表示)
3 * 8 = 24
4 * 6 = 24
00000000 00000000 00000000
000000 000000 000000 000000
6位中:最小数为全0即0,最大数为全1即63,所以需要64位二进制来表示
a - z 即26个
A - Z 即26个
0 - 9 即10个
/ + 即2个
2.中文换base64步骤
- 找到中文字符在电脑中对应字符编码表代码(在命令行中使用chcp可以查看)然后在查看活动代码对应的编码格式
2.中文找到字符编码中的十进制值(在表GB2312中找查找的该文字对应的数);
3.把十进制转换为二进制;
4.对二进制进行分组,每6位一组(最后一组不足6位的后面补0);
5.分好组后,转换成十进制,并在base64表中找到对应的数,全部组合好就是base64编码后的结果。
3.英文进行base64编码
- 首先找到英文对应的ASCII表对应的数值;
- 把十进制转换成二进制;
- 对二进制数进行分组,每6位一组(最后一组不足6个的后面也是补0);
- 分好组后,转换成十进制,并在base64表中找到对应的数,全部组合好就是base64编码后的结果。
注意:凡是base64的最后结束时后面都会以“=”或者“ == ”结束,表示这个字符串编码结束,它是结束符。通常以上步骤转换可以使用Excel表中的函数转换进行