为什么要用base64编码?
base64简单描述:
ASCII码一个字符用8位二进制码表示,base64一个字符只需要6位(一个字节为8位所以最高位补两个0),3*8=4*6 = 24 ,由此可见4位base64码的字符可以很好的表示3位ASCII码的字符(也就是说base64 编码后会比原本的字符长),而且base64规定 被转码的字符如果不足3的倍数,在后面补0,补足3的倍数,转码后,0会被转码为“=”号,所以我们看到的有些base64码是以“=”或者“==”结尾的。
base64的转码对象为字节码,不能是字符串。
转码前 | 转码后 |
b'a' | b'YQ==' |
b'aa' | b'YWE=' |
b'aaa' | b'YWFh' |
b'是' | b'5piv' |