在python中实现BASE64编码
什么是Base64编码
BASE64是用于传输8Bit字节的编码方式之一,是一种基于64个可打印字符来表示二进制数据的方法。
如下是转换表:The Base64 Alphabet

Base64编码可以解决什么问题(或用来做什么)
base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息
规则
- 编码的规则:
- ①.把3个字节变成4个字节。
- ②.每76个字符加一个换行符。
- ③.最后的结束符也要处理。
它的优点和缺点
优点:速度快,采用ascii字符,肉眼不可理解
缺点:编码比较长,而且非常容易被破解,仅适用于加密非关键信息的场合
在Base64编码工具中实现编码和解码(如图所示)
码云
对学号和姓名加密

运行结果

对结果进行解密

运行结果

在python中实现Base64的编码和解码
代码块如下
import base64 # 导入base64
s = input("请输入需要编码的内容:")
s = s.encode() # 转换数据为byte类型
s_b64 = base64.b64encode(s) # 对byte类型数据加密
print(s_b64) # 输出加密结果
s_b64_str = input("请输入需要解码的内容:")
s_b64_str = s_b64.decode() # 转换数据类型为字符串类型
untie_s = base64.b64decode(s_b64_str) # 对字符串类型数据解密
print(untie_s.decode()) # 输出解密结果
代码托管结果如下图

参考网站
1.https://baike.sogou.com/v53347.htm?fromTitle=base64
2.https://www.sojson.com/base64.html
3.https://www.bbsmax.com/A/n2d9PRn65D/
在python中实现BASE64编码的更多相关文章
- Python中进行Base64编码和解码
Base64编码 广泛应用于MIME协议,作为电子邮件的传输编码,生成的编码可逆,后一两位可能有“=”,生成的编码都是ascii字符.优点:速度快,ascii字符,肉眼不可理解缺点:编码比较长,非常容 ...
- Python中的Base64编码的加密与解密
Base64 可以干些啥? Base64编码的作用: 由于某些系统中只能使用ASCII字符.Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法. 图片(and种子)base64 ...
- python中的base64加密解密
介绍 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法.可查看RFC2045-RFC2049,上面有MIME的详细规范. ...
- python中的URL编码和解码
python中的URL编码和解码:test.py # 引入urllib的request模块 import urllib.request url = 'https://www.douban.com/j/ ...
- 如何在Python 中使用UTF-8 编码 && Python 使用 注释,Python ,UTF-8 编码 , Python 注释
如何在Python 中使用UTF-8 编码 && Python 使用 注释,Python ,UTF-8 编码 , Python 注释 PIP $ pip install beauti ...
- Python中的base64模块
本文介绍Python 2.7中的base64模块,该模块提供了基于rfc3548的Base16, 32, 64编解码的接口.官方文档,参考这里. 该模块提供两套接口,传统接口基于rfc1521的Bas ...
- python中zipfile文件名编码的问题
在python中编程导入压缩包,利用zipfile包,从zipinfo读取文件名总是出错,创建的文件名是乱码,写入pgsql更是出错. 但在ubuntu下测试却正常,在windows下测试总是失败. ...
- iOS 中使用Base64编码方式编码图片数据
最近一个项目要求对图片数据简单加密下,就是那种不能直接看到图片内容就行.于是我使用了base64编码对图片数据进行编码,把图片2进制数据变成了base64的字符串,再把这个字符串保存到server的数 ...
- python中Url链接编码处理(urlencode,urldecode)
做完了flask-web应用,这几天想用爬虫做个好玩的电影链接整合器,平时找电影都是在dytt或者dy2018之类的网站,在用dytt搜索电影<美国队长时>,发现他的搜索链接是这样的:ht ...
随机推荐
- Java变量命名规范
java命名规范 所有方法.变量.类名:见名知意 类成员变量:首字母小写.驼峰原则: 例如:lastName 第一个单词首字母小写,其余首字母大写 局部变量:首字母小写.驼峰原则 类名: 首字母小写. ...
- GIS常用算法
目录 1.常用算法 1.1.计算两经纬度点之间的距离 1.2.根据已知线段以及到起点距离,求目标点坐标 1.3.已知点.线段,求垂足 1.4.线段上距离目标点最近的点 1.5.点缓冲 1.6.点和面关 ...
- 网络协议之TCP和UDP
TCP/IP协议: 传输控制协议/因特网互联协议( Transmission Control Protocol/Internet Protocol),是Internet最基本.最广泛的协议.它定义了计 ...
- Linux详细安装流程(直接看图)
准备工作:一台电脑.sentOS镜像文件. 一.首先打开虚拟机,点击文件--新建虚拟机 二.选择自定义,然后点击下一步
- windows中对文件进行排序
右键->排序方式->更多->选择需要的项目
- webgl 图像处理 加速计算
webgl 图像处理 webgl 不仅仅可以用来进行图形可视化, 它还能进行图像处理 图像处理1---数据传输 webgl 进行图形处理的第一步: 传输数据到 GPU 下图为传输点数据到 GPU 并进 ...
- POJ1741——Tree(树的点分治)
1 /* *********************************************** 2 Author :kuangbin 3 Created Time :2013-11-17 1 ...
- 使用metaweblog API实现通用博客发布 之 本地图片自动上传以及替换路径
使用metaweblog API实现通用博客发布 之 本地图片自动上传以及替换路径 通过metaweblog API 发布博文的时候,由于markdown中的图片路径是本地路径,将导致发布的文章图片不 ...
- javascript 享元模式 flyweight
* 适应条件 ** 一个程序中使用了大量的相似对象 造成大的内存开销 ** 对象的大多数状态都可以变为外部状态 ** 剥离出对象的外部状态之后, 可以使用相对较少的共享对象取代大量对象 * 上传文件的 ...
- jenkins+requests+pytest+allure持续集成
环境搭建参考:https://www.jianshu.com/p/fc39030d057f 总体流程: