什么是base64
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。(--百度百科)
base64操作原理
其实base64编码原理非常简单,先确定好编码字符,再查找相应的ASCII码将其转换为二进制来表示,每三个8位字节转换为四个6位字节(38=46=24),之后把6位的最高位添加两位数字0,组成4个8位字节,所以如此转换后的字符长度要比原来的字符长度长1/3,转换完成后将二进制切换为十进制表示,对应base64编码索引表查阅出十进制对应的字母,最终获得编码。
以上是base64的索引表,选用了"A-Z、a-z、0-9、+、/" 64个可打印字符。
使用python进行base64编码
接下来将编写一个python工具进行编码和解码
import base64
print('进行base64编码')
bs64 = str(input('请输入需要加密的文本\n>>>'))
bs64_e = base64.b64encode(bs64.encode('utf-8'))
print('结果如下:')
print(bs64_e)
看不懂代码的读者可以看下分析
分析:首先第一行代码导入base64模块这是python内置的模块,之后设定bs64变量,这个变量用于接收用户输入的需要加密的文本,之后设定bs64_e变量,这个变量的作用是储存加密后的文本,而他后面使用的操作则是将用户输入的文本转换为base64编码形态,最终由print输出。
使用python进行base64解码
编码之后还可以进行解码,因为base64是可逆运算。
接下来将展示如何使用python编写一个base64解码的程序
import base64
bs64 = input('请输入需要解密的文本\n>>>')
bs64_d = str(base64.b64decode(bs64),'utf-8')
print('结果如下')
print(bs64_d)
以上是使用python进行了解码操作。
具体分析与编码操作差不多,笔者在此便不多赘述。
补充
其实从严格意义上来说base64并不算一种加密算法,它只是通过将原数据转码为一种不容易阅读的形式,而它的转码法则是公开的,具体的加密算法可以期待我的下一篇文章,将理论介绍加密算法。
后记
如果你喜欢我的文章的话可以点赞收藏+关注,您的点赞是对我最大的支持!
目前笔者正在进行一项python加解密全家桶的程序制作,可以持续关注我!
感谢观看!期待我们下次再见!
版权归原作者 路人甲42 所有, 如有侵权,请联系我们删除。