python base64库给用户名或密码加密的流程
给明文密码加密的流程:
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字符串加密解密的三种方法分享(base64 win32com)
1. 最简单的方法是用base64: 复制代码 代码如下: import base64 s1 = base64.encodestring('hello world')s2 = base64.decodestring(s1)print s1,s2 # aGVsbG8gd29ybGQ=\n# hello world Note: 这是最简单的方法了,但是不够保险,因为如果别人拿到你的密文,也可以自己解密来得到明文 2. 第二种方法是使用win32com.client 复制代码 代码如下: import
-
python中的hashlib和base64加密模块使用实例
看到好几位博主通过对模块的各个击破学习python,我也效法一下,本篇说一下python中加密涉及到的模块. hashlib hashlib模块支持的加密算法有md5 sha1 sha224 sha256 sha384 sha512(加密原理请参考此处),使用起来也很简单. 以md5加密为例,有两种方法: 一. 追加模式 代码示例: 复制代码 代码如下: import hashlib #引入hashlib模块 mm = hashlib.md5() #创建一个md5对象 mm.update
-
python3.x实现base64加密和解密
用python3.x实现base64加密和解密,供大家参考,具体内容如下 加密 base64_encrypt.py #!/usr/bin/python3 #encoding:utf-8 import base64 var = 1 while var==1: str_encrypt=input("输入要加密的字符串:\n"); base64_encrypt = base64.b64encode(str_encrypt.encode('utf-8')) print("BASE64
-
Python加密方法小结【md5,base64,sha1】
本文实例总结了python加密方法.分享给大家供大家参考,具体如下: MD5加密: def md5(str): import hashlib m = hashlib.md5() m.update(str) return m.hexdigest() base64加密: import base64 s = '我是字符串' a = base64.b64encode(s) print a print base64.b64decode(a) 输出结果: ztLKx9fWt/u0rg== 我是字符串 sha
-
python中base64加密解密方法实例分析
本文实例讲述了python中base64加密解密方法.分享给大家供大家参考.具体分析如下: 一.base64 Base64是一种基于64个可打印字符来表示二进制数据的表示方法.由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符.三个字节有24个比特,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示.它可用来作为电子邮件的传输编码.在Base64中的可打印字符包括字母A-Z.a-z.数字0-9 ,这样共有62个字符,此外两个可打印符号在不同的系统中而不同.编码后的
-
python base64库给用户名或密码加密的流程
给明文密码加密的流程: 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==
-
Python编程生成随机用户名及密码的方法示例
本文实例讲述了Python编程生成随机用户名及密码的方法.分享给大家供大家参考,具体如下: 方案一: import random global userName,userPassword #为了便于使用,定义为全局变量 userName = '' userPassword = '' def get_userNameAndPassword(): global userName, userPassword usableName_char = "1234567890abcdefghijklmnopqr
-
用python的哈希函数对密码加密
今天我将教大家如何用哈希函数将密码加密加密后的密码是很难倒推的~ 普通加密: 首先调用函数hashlib import hashlib 然后使用哈希函数对密码进行加密这里我使用sha256进行加密 再造一个密码出来 password = 'wotemo666' 接着用哈希函数对它进行加密 注意:这里要使用encode对password进行编码格式声明,不然会报错 hash_password = hashlib.sha256(password.encode("utf-8")).hexdi
-
php用户名的密码加密更安全的方法
php中对用户密码的加密主要有两种方法,一种是利用md5加密,另一种是利用password_hash加密,两种方法中后一种的方法比前一种方法安全很多,几乎不能被黑客破解,但php版本必须在5.5以上.下面介绍两种加密方法如何加密才更安全. 新建一个PHP文件,命名为test.php. 利用md5加密.为了更加安全,可以给用户密码加上随机字符串再使用md5加密,产生随机字符串的函数如下: 假如用户的密码$password为123456,则可以把123456加上随机字符串传入md5函数中进行加密.随
-
python+JS 实现逆向 SMZDM 的登录加密
目录 实战场景 参数分析 实战场景 这次被我们盯上的平台是[SMZDM]. 本次目标站点是:aHR0cHM6Ly93d3cuc216ZG0uY29tLw==. 正式开始前,先注册一个账号,然后模拟一下登录,看一下有哪些参数被偷偷的藏起来了~ 当看到登录之后的所有请求参数时,我们还是默默的把站点关闭,撤吧. 从上图可以看到username,password是重要加密区,geetest_开头的参数是下述点选验证码涉及的内容,本阶段不做拆解,可以持续关注后续验证码部分逻辑. 登录的点选验证码可以先忽略
-
python实现希尔密码加密的示例代码
目录 原理 实现 原理 希尔密码是运用基本矩阵论原理的替换密码,由Lester S. Hill在1929年发明. 每个字母当作26进制数字:A=0, B=1, C=2- 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果模26.(注意用作加密的矩阵(即密匙)在 必须是可逆的,否则就不可能解码.只有矩阵的行列式和26互质,才是可逆的.) 实现 希尔密码是运用基本矩阵论原理的替换密码,使用一个m*m的矩阵作为密钥,此矩阵必须可逆,解密使用逆矩阵解密. 加密: 密文向量 = 密钥矩阵 * 明
-
python密码学RSA密码加密教程
目录 加密算法模块 哈希值初始化 函数algorithm 加密程序的完整代码 在本章中,我们将重点介绍RSA密码加密的不同实现及其所涉及的功能.您可以引用或包含此python文件以实现RSA密码算法实现. 加密算法模块 加密算法包含的模块如下 from Crypto.PublicKey import RSA from Crypto.Cipher import PKCS1_OAEP from Crypto.Signature import PKCS1_v1_5 from Crypto.Hash i
-
javascript实现base64 md5 sha1 密码加密
1.base64加密 在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>base64加密</title> <script type="text/javascript" src="base64.js"></script> <scr
-
Python编程实现凯撒密码加密示例
目录 一.什么是凯撒密码 二.python实现凯撒加密 一.什么是凯撒密码 "在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文.例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推.这个加密方法是以罗马共和时期恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系." 关于凯撒密码的详细
-
Python实现用户名和密码登录
本文实例为大家分享了Python实现用户名和密码登录的具体代码,供大家参考,具体内容如下 功能 登录及注册,密码错误多次后验证码确认 说明 初次运行,程序将会自动生成一个名为user的文本文档,是包含用户名及密码的字典 输入用户名,如果用户名不存在,程序会自动以输入的用户名进行注册 输入密码,当输错4次时,程序会生成一个4位验证码,并使用vbs方式弹出,如果验证码输错,程序退出,否则重新执行主循环 代码 from os import system from sys import exit fro
随机推荐
- 如何检测用户第一次访问我的网站并显示友好信息?
- Android中Toolbar随着ScrollView滑动透明度渐变效果实现
- java中获取类加载路径和项目根路径的5种方式分析
- iOS像素对齐概念解析
- javascript中sort()的用法实例分析
- .NET Windows 多线程thread编程
- PHP学习散记_编码(json_encode 中文不显示)
- CodeIgniter上传图片成功的全部过程分享
- Javascript与PHP验证用户输入URL地址是否正确
- JBuilderX+SQL Server开发hibernate
- MySQL动态修改varchar长度的方法
- 41个Web开发者必须收藏的JavaScript实用技巧
- IE最新的欺骗代码
- IE9版本以下ajax 跨域问题可行解决方法
- JSP+XML构架网站的实例
- .NET的动态编译与WS服务调用详解
- Android进度条ProgressBar的实现代码
- Spring MVC+mybatis实现注册登录功能
- java使用dom4j解析xml配置文件实现抽象工厂反射示例
- 基于bootstrap写的一点localStorage本地储存