Base64是一种用64个字符来表示任意二进制数据的方法。
Base64编码可以成为密码学的基石。可以将任意的二进制数据进行Base64编码。所有的数据都能被编码为并只用65个字符就能表示的文本文件。( 65字符:A~Z a~z 0~9 + / = )编码后的数据~=编码前数据的4/3,会大1/3左右。
Base64编码的原理
Base64编码的说明
- 转换的时候,将三个byte的数据,先后放入一个24bit的缓冲区中,先来的byte占高位。
- 数据不足3byte的话,于缓冲区中剩下的bit用0补足。然后,每次取出6个bit,按照其值选择查表选择对应的字符作为编码后的输出。
- 不断进行,直到全部输入数据转换完成。
- 如果最后剩下两个输入数据,在编码结果后加1个“=”。
- 如果最后剩下一个输入数据,编码结果后加2个“=”。
- 如果没有剩下任何数据,就什么都不要加,这样才可以保证资料还原的正确性。
PYHTON的源码实现
-
1 # -*- coding: utf-8 -*- 2 # coding=utf-8 3 import base64 4 5 print("example one") 6 encode = base64.b64encode(b'I love you') 7 8 print(encode) 9 10 decode = base64.b64decode(encode) 11 12 print(decode) 13 14 print("example two") 15 16 encode = base64.b64encode(b'I love you$$$$$$$$$$$$$$$$$$$$$$$$$$$$@@@@@@@@@@@@@@@@@@@@@MMMMMMMMMMMMMMMMMMM') 17 18 print(encode) 19 20 decode = base64.b64decode(encode) 21 22 print(decode)
- 参考文档: https://www.jianshu.com/p/4ba20afacce2
作者:虚生 出处:https://www.cnblogs.com/dylancao/ 以音频和传感器算法为核心的智能可穿戴产品解决方案提供商 ,提供可穿戴智能软硬件解决方案的设计,开发和咨询服务。 勾搭热线:邮箱:1173496664@qq.com weixin:18019245820 市场技术对接群:347609188 |