python base64库给用户名或密码加密的流程


Posted in Python onJanuary 02, 2020

给明文密码加密的流程:

import base64
pwd_after_encrypt = base64.b64encode(b'this is a scret!')
pwd_before_encrypt = base64.b64decode(b'dGhpcyBpcyBhIHNjcmV0IQ==').decode('ascii')
print(pwd_after_encrypt)
print(pwd_before_encrypt)

运行结果:

b'dGhpcyBpcyBhIHNjcmV0IQ=='
this is a scret!
Process finished with exit code 0

则在代码中的调用方式是:

import base64
username = 'root'
password = base64.b64decode(b'dGhpcyBpcyBhIHNjcmV0IQ==').decode('ascii')

这样做的好处:

不会在代码中泄露密码。

说明:

若某登录密码是字符串'this is a scret!',对该密码的加密方式为:

1.首先导入python的base64库;

2.调用base64库中的base64.b64encode()对字符串'this is a scret!‘加密,得到密文(如题中的b'dGhpcyBpcyBhIHNjcmV0IQ==');

3.调用base64.b64decode()对b'dGhpcyBpcyBhIHNjcmV0IQ=='进行解密,得到真实的密码(如题中的this is a scret!)。

注意:

base64处理的是byte类型的数据,所以在字符串之前需加上b,若想解密得到字符串类型的密码,则需用'ascii'来decode byte类型的数据。

ps:python base64的加密与解密

Base64编码是一种“防君子不防小人”的编码方式。广泛应用于MIME协议,作为电子邮件的传输编码,生成的编码可逆,后一两位可能有“=”,生成的编码都是ascii字符。
优点:速度快,ascii字符,肉眼不可理解
缺点:编码比较长,非常容易被破解,仅适用于加密非关键信息的场合
Python中进行Base64编码和解码
>>> import base64
>>> s = '我是字符串'
>>> a = base64.b64encode(s)
>>> print a
ztLKx9fWt/u0rg==
>>> print base64.b64decode(a)
我是字符串

总结

以上所述是小编给大家介绍的python base64库给用户名或密码加密的流程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python中pygame模块用法实例
Oct 09 Python
Python中SOAP项目的介绍及其在web开发中的应用
Apr 14 Python
python使用正则表达式提取网页URL的方法
May 26 Python
利用Python进行异常值分析实例代码
Dec 07 Python
windows 下python+numpy安装实用教程
Dec 23 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
Jan 08 Python
Python 的AES加密与解密实现
Jul 09 Python
django实现web接口 python3模拟Post请求方式
Nov 19 Python
在Django中预防CSRF攻击的操作
Mar 13 Python
解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题
Jun 17 Python
python3.7 openpyxl 在excel单元格中写入数据实例
Sep 01 Python
Flask response响应的具体使用
Jul 15 Python
python文件处理fileinput使用方法详解
Jan 02 #Python
linux 下python多线程递归复制文件夹及文件夹中的文件
Jan 02 #Python
Pytorch的mean和std调查实例
Jan 02 #Python
pytorch 图像预处理之减去均值,除以方差的实例
Jan 02 #Python
Linux下升级安装python3.8并配置pip及yum的教程
Jan 02 #Python
pytorch实现focal loss的两种方式小结
Jan 02 #Python
pytorch中交叉熵损失(nn.CrossEntropyLoss())的计算过程详解
Jan 02 #Python
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(六)
2014/06/23 PHP
php相对当前文件include其它文件的方法
2015/03/13 PHP
php字符串比较函数用法小结(strcmp,strcasecmp,strnatcmp及strnatcasecmp)
2016/07/18 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
json 实例详细说明教程
2009/10/31 Javascript
js中if语句的几种优化代码写法
2011/03/12 Javascript
JavaScript高级程序设计 阅读笔记(十八) js跨平台的事件
2012/08/14 Javascript
JS获取农历日期具体实例
2013/11/14 Javascript
jquery实现初次打开有动画效果的网页TAB切换代码
2015/09/06 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
浅谈angular2子组件的事件传递(任意组件事件传递)
2018/09/30 Javascript
一行JavaScript代码如何实现瀑布流布局
2020/12/11 Javascript
[03:28]2014DOTA2国际邀请赛 走近EG战队天才中单Arteezy
2014/07/12 DOTA
[01:18:33]Secret vs VGJ.S Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
python去除拼音声调字母,替换为字母的方法
2018/11/28 Python
python 绘制拟合曲线并加指定点标识的实现
2019/07/10 Python
python爬虫 批量下载zabbix文档代码实例
2019/08/21 Python
Flask框架搭建虚拟环境的步骤分析
2019/12/21 Python
django数据模型on_delete, db_constraint的使用详解
2019/12/24 Python
Jupyter Notebook的连接密码 token查询方式
2020/04/21 Python
python 生成器需注意的小问题
2020/09/29 Python
python通用数据库操作工具 pydbclib的使用简介
2020/12/21 Python
英国信箱在线鲜花速递公司:Bloom & Wild
2019/03/10 全球购物
Brasty波兰:香水、化妆品、手表网上商店
2019/04/15 全球购物
涉外经济法专业毕业生推荐信
2013/11/24 职场文书
大学总结自我鉴定
2014/01/18 职场文书
大型会议接待方案
2014/03/01 职场文书
企业宣传口号
2014/06/12 职场文书
园艺专业毕业生求职信
2014/09/02 职场文书
学生会干部自我鉴定2014
2014/09/18 职场文书
学习与创新自我评价
2015/03/09 职场文书
2015年打非治违工作总结
2015/04/02 职场文书
《山中访友》教学反思
2016/02/24 职场文书
Win11 22H2 2022怎么更新? 获得Win1122H22022版本升级技巧
2022/09/23 数码科技