赞
踩
1、每3个字节断开,拿出一个3个字节,每6个bit断开成4段(24bit)
2、因为每个字节其实只占用了6位,因此有了Base64(2**6)的编码表
3、每一段当作一个8bit,看它的值,这个值就是Base64编码表的索引值,找到对应字符
4、再取三个字节,同样处理,直到最后
5、正好3个字节,处理方式如上
6、剩1个字节或者2个字节,用0补满3个字节,全部补0的字节用‘=’表示
7、字符串‘`’反引号也是一个字节,8位被断开,前6位和后2位
#转换前
101011 01,1011 1010,01 110110
# 转换后
00101011, 00011011 ,00101001 ,00110110
# 十进制
43 27 41 54
# 对应码表中的值
r b p 2
# 所以上面的24位编码,编码后的Base64值为 rbp2
Python
实现对一段字符串进行Base64
编码 - 1import base64
base64.b64encode(b'abc')
# b'YWJj'
a b c
0x616263
# binary
01100001 01100010 01100011
# 每 6bit 进行分段
011000 010110 001001 100011
# 补0,成四字节
00011000 00010110 00001001 00100011
# 十进制
24 22 9 35
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。