1、MD5加密

 md5加密是不可逆的

print(dir(m)) #把变量的方法打印出来

hashlib.md5:加密
xx.hexdigest():返回密文
xx.encode:将字符串转成二进制的,转成二进制才能加密
 import hashlib
# import md5 #python2里面的
password = '123456kjfskj'
# print(password.encode()) #转成二进制才可以加密
m = hashlib.md5(password.encode()) #加密。md5加密是不可逆的
# print(m)
print(m.hexdigest()) #加密之后得到的是32位的字符串,打印密文
# print(dir(m))

2、加盐

就是在hashlib模块中的md5加密方法时,传入一个你自己想给的盐,或者干脆随机生成(比较安全,将盐封装在类中)

 import hashlib
def my_md5(s:str,salt): #传入密码和盐
#加密的函数
#如果传入盐的参数,则加盐
s = str(s) #类型转换,转成字符串
if salt:
s = s + salt
m = hashlib.md5(s.encode()) #md5加密
return m.hexdigest() #返回密文
res = my_md5('','akdjkf')
print(res)

3、其他加密方式

 password='adsf%&&^*'
m = hashlib.sha224(password.encode()) #长度长了,也是不可以解密的
print(m.hexdigest()) m = hashlib.sha256(password.encode())
print(m.hexdigest())
备注:撞库:加密的密文存入数据,然后找相应的匹配,复杂的密码解不出来

hashlib模块-加密的模块,加盐的更多相关文章

  1. md5加密,md5加盐加密和解密

    package com.java.test; import java.security.MessageDigest; import java.security.SecureRandom; import ...

  2. python全栈开发-hashlib模块(数据加密)、suprocess模块、xml模块

    一.hashlib模块 1.什么叫hash:hash是一种算法(3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 ...

  3. hashlib模块和hmac模块

    hashlib模块和hmac模块 hashlib模块 一.导入方式 import hashlib 二.作用 无论你丢什么字符串,他都会返回一串 固定长度的字符串 三.模块功能 3.1 经常使用 imp ...

  4. python基础-7模块,第三方模块安装方法,使用方法。sys.path os sys time datetime hashlib pickle json requests xml

    模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...

  5. [转]加盐hash保存密码的正确方式

    0x00 背景 大多数的web开发者都会遇到设计用户账号系统的需求.账号系统最重要的一个方面就是如何保护用户的密码.一些大公司的用户数据库泄露事件也时有发生,所以我们必须采取一些措施来保护用户的密码, ...

  6. 模块 -- 序列化 hashlib sha logging (加密 加盐 )

    模块:  一个py文件就是一个模块 模块分类: 1:内置模块,登录模块,时间模块,sys模块,os模块等等 2: 扩展模块, 3:自定义模块,自己写的py文件 python 开发效率之高:python ...

  7. 日志模块详细介绍 hashlib模块 动态加盐

    目录 一:hashlib模块 二:logging 一:hashlib模块 加密: 将明文数据通过一系列算法变成密文数据(目的就是为了数据的安全) 能够做文件一系列校验 python的hashlib提供 ...

  8. 20 常用模块 hashlib hmac:加密 xml xlrd xlwt:excel读|写 configparser subprocess

    hashlib模块:加密 加密: 1.有解密的加密方式 2.无解密的加密方式:碰撞检查 hashlib -- 1)不同数据加密后的结果一定不一致 -- 2)相同数据的加密结果一定是一致的 import ...

  9. python提供了一个进行hash加密的模块:hashlib

    python提供了一个进行hash加密的模块:hashlib下面主要记录下其中的md5加密方式 import hashlib data1 = 'sada' #####字母和数字 m = hashlib ...

随机推荐

  1. Django模型层-多表操作

    多表操作 一.创建模型 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄. 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情模型和作者模型之间是 ...

  2. installshield中杀死某一个进程

    ///////////////////////////////////////////////// // Function prototypes. ////////////////////////// ...

  3. 新闻API接口

    最近很多大学生为了完成作业,或者刚开始接触android的问我要新闻APP的源码,其实就是个很小的demo,以前自己也是学着别人敲得的代码,现在自己整理了一份体积很小,代码注释非常详细的新闻APP.提 ...

  4. 帆软报表(finereport)安装/配置

    1.首先是安装帆软报表软件 下载地址:http://www.finereport.com/product/download           激活码注册格账号就有了 2.启动软件,新建连接数据库 点 ...

  5. 重写 console.log()

    /*重写console.log*/ console.log = (function(mFun){ return function(str){ mFun.call(console,'hello! ' + ...

  6. SQL 安装MySQL

    假设学员的电脑是Windows系统,如Windows7,需要准备以下软件 Microsoft .NET Framework 4.5 Visual C++ Redistributable for Vis ...

  7. python第九天(9-33)

    一:进程 进程概念 进程就是一个程序运行在一个数据集上的一次动态执行过程 进程一般由程序,数据集,进程控制块组成 进程控制块: 进程控制块用来记录进程的外部特征,描述进程的执行变化过程,系统可以利用它 ...

  8. kuangbin带你飞dp专题-基础dp

    dp HDU - 1257 最少拦截系统 最长递增子序列 #include<iostream> using namespace std; const int maxn=1e7; int a ...

  9. python之基于libsvm识别数字验证码

    1. 参考 字符型图片验证码识别完整过程及Python实现 2.图片预处理和手动分类 (1)分析图片 from PIL import Image img = Image.open('nums/ttt. ...

  10. Redis数据结构之skiplist

    本文及后续文章,Redis版本均是v3.2.8 我们会经常选择使用sorted set数据结构,是由于其提供的操作非常丰富,可以满足非常多的应用场景.sorted set数据结构是由skiplist( ...