赞
踩
目录
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。(--百度百科)
其实base64编码原理非常简单,先确定好编码字符,再查找相应的ASCII码将其转换为二进制来表示,每三个8位字节转换为四个6位字节(3*8=4*6=24),之后把6位的最高位添加两位数字0,组成4个8位字节,所以如此转换后的字符长度要比原来的字符长度长1/3,转换完成后将二进制切换为十进制表示,对应base64编码索引表查阅出十进制对应的字母,最终获得编码。
以上是base64的索引表,选用了"A-Z、a-z、0-9、+、/" 64个可打印字符。
接下来将编写一个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输出。
编码之后还可以进行解码,因为base64是可逆运算。
接下来将展示如何使用python编写一个base64解码的程序
- import base64
- bs64 = input('请输入需要解密的文本\n>>>')
- bs64_d = str(base64.b64decode(bs64),'utf-8')
- print('结果如下')
- print(bs64_d)
以上是使用python进行了解码操作。
具体分析与编码操作差不多,笔者在此便不多赘述。
其实从严格意义上来说base64并不算一种加密算法,它只是通过将原数据转码为一种不容易阅读的形式,而它的转码法则是公开的,具体的加密算法可以期待我的下一篇文章,将理论介绍加密算法。
如果你喜欢我的文章的话可以点赞收藏+关注,您的点赞是对我最大的支持!
目前笔者正在进行一项python加解密全家桶的程序制作,可以持续关注我!
感谢观看!期待我们下次再见!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。