因为ASCI码中128个里面有些是不可见的,所以Base64就产生了——它的目的是为了让所有的这些编码有可以转换为可视化字符。
这是ASCI码表
原理就是把你要转换的字符 比如 MZ1三个字符
在ASCI表上找到它对应的数字
77 122 49
对应的16进制是
0X4d 0X7A 0X31
转换为2进制
0100 1101——0X4d
0111 1010 ——0X7a
0011 0001——0X31
然后再6个二进制字节为一组
那就是
010011——19
010111——23
101000——40
110001——49
现在就有个Base64的表
那么
19——T 23——X 40——o 49——x
所以加密后就是TXox
如果这道题是 MZ 那怎么办呢?
我们之间跳到二进制那
010011 010111 101000 00000
我们发现如果加密后要转回原来的字符,那么二进制字节一定是8的倍数
但是Base64是6个一组,那么也一定是6个一组
如果查的那几个数,规定用0代替
那个这个MZ base64后就是
TXo=(=用来表示这是填充的)