一、 MD5加密
import hashlib #Python3里的引用
#import md5 #Python2里的引用

1. md5是不可逆的,不能解密
2. 所有语言生成的md5串都是一样的

3. 不论字符串多长,生成的md5是等长的

4. 彩虹表:存的所有常用的加密后的密码对应的md5

5. 解密查询,只能解密常用字符:https://www.cmd5.com/

import hashlib
#import md5 #Python2里的引用
s=''
# s.encode()#变成bytes类型才能加密
m= hashlib.md5(s.encode())
print(m.hexdigest()) m=hashlib.sha3_224(s.encode()) #长度是224
print(m.hexdigest()) m=hashlib.sha3_256(s.encode()) #长度是256
print(m.hexdigest()) m=hashlib.sha3_512(s.encode()) #长度是512
print(m.hexdigest())
#输出结果
e10adc3949ba59abbe56e057f20f883e
6be790258b73da9441099c4cb6aeec1f0c883152dd74e7581b70a648
d7190eb194ff9494625514b6d178c87f99c5973e28c398969d2233f2960a573e
64d09d9930c8ecf79e513167a588cb75439b762ce8f9b22ea59765f32aa74ca19d2f1e97dc922a3d4954594a05062917fb24d1f8e72f2ed02a58ed7534f94d27

二、 加盐

加盐是在用户密码加密后,可以再加一个指定的字符串,再次加密,这样,用户密码被破解的概率极低了

#如密码是123456:
random_str='dsfka676f9a78#$%^' #盐的值
#加盐后,密码变为: 123456dsfka676f9a78#$%^

如要加密,可调用如下函数:

import hashlib
def my_md5(s,salt=''): #加盐,盐的默认值是空
s=s+salt
news=str(s).encode() #先变成bytes类型才能加密
m=hashlib.md5(news) #创建md5对象
return m.hexdigest() #获取加密后的字符串
 

python之MD5加密的更多相关文章

  1. Python 获取MD5加密值

    Python 获取MD5加密值方法封装 import hashlib def get_md5(s): """获取MD5加密值 :param s: 需要加密的字符串 :re ...

  2. 一小部分用python进行MD5加密的小技巧

    上个图 要求计算出开头为ae3da且盐值为3c6e的字符串 简单的思路就是直接进行枚举,然后筛选符合条件的MD5加密字符,代码如下 #-*- coding:utf- -*- import hashli ...

  3. Python 实现MD5加密

    from hashlib import md5 def encrypt_md5(s): # 创建md5对象 new_md5 = md5() # 这里必须用encode()函数对字符串进行编码,不然会报 ...

  4. Python基础-MD5加密

    import hashlibm = hashlib.md5()#构造一个md5 m.update(b"Hello")#加密前必须转化成二进制字节类型print(m.hexdiges ...

  5. 五、python中MD5加密

    import hashlib '''用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法'''##### ...

  6. python进行md5加密的两种方法

    本文转自:https://www.cnblogs.com/zknublx/p/6212590.html 一. 使用md5包 import md5 src = 'this is a md5 test.' ...

  7. python进行md5加密

    代码函数 import hashlib def md5(str): m = hashlib.md5() m.update(str) return m.hexdigest() f = open('idf ...

  8. 【python】md5加密方法相关使用

    md5方法在hashlib库中,使用前需要先导入.它的主要方法为update,copy,以及转换为二进制,十六进制. 用法说明: Help on HASH object: class HASH(bui ...

  9. Python hashlib模块 (主要记录md5加密)

    python提供了一个进行hash加密的模块:hashlib 下面主要记录下其中的md5加密方式(sha1加密一样把MD5换成sha1) >>> import hashlib > ...

随机推荐

  1. bzoj1398 Necklace

    关于最小表示法的模板题. 最小表示法:把一个字符串表示为它的的所有循环同构字符串中的字典序最小者. 直接参见代码中的函数getmin()获取精髓 #include <cstdio> #in ...

  2. mciSendString 多线程播放多首音乐 & 注意事项

    昨天晚上遇到一个问题: 使用 mciSendString  控制播放多首音乐的时候,出现最后一次播放的音乐无法通过 mciSendString ("close mp3") 关闭音乐 ...

  3. 关于react-native项目在MacBookPro环境下打包成IPA

    苹果开发者打包是需要接入公司的开发者账户里面的.看是企业账户还是什么,具体我不太清楚. 不过打包的方法倒是大同小异. 我们一起新建项目,先跑起来这个项目 npm install -g yarn rea ...

  4. 第三十节,目标检测算法之Fast R-CNN算法详解

    Girshick, Ross. “Fast r-cnn.” Proceedings of the IEEE International Conference on Computer Vision. 2 ...

  5. python多继承中子类访问祖先类的同名成员

    子类调用父类的同名成员 方式1: class A: def f_a(self): print("----A----") class B: def f_a(self): print( ...

  6. logistics回归简单应用——梯度下降,梯度上升,牛顿算法(一)

    警告:本文为小白入门学习笔记 由于之前写过详细的过程,所以接下来就简单描述,主要写实现中遇到的问题. 数据集是关于80人两门成绩来区分能否入学: 数据集: http://openclassroom.s ...

  7. 关于mac 系统如何通过终端 连接linux服务器 并传文件!

    首先要打开终端 mac远程链接服务器 输入  : ssh   root@xxx.xx.xxx.xx xxx.xx.xxx.xx是端口号 后面会要求你输入password 即可远程连接 mac通过终端给 ...

  8. MySQL数据库基础学习

    MySQL基础知识 ----------- MySQL数据库简介 内存:一断电数据就没有了---------数据库:可以实现数据的持久化存储,有完整的管理系统管理,方便查询--------- DB:数 ...

  9. flask SQLALchemy外键及约束

    from flask import Flask,session from flask_sqlalchemy import SQLAlchemy import config app = Flask(__ ...

  10. python 操作 saltstack Api(二) 示例

    获取token #!/usr/bin/env python #-*-coding:utf--*- import urllib import urllib.parse import urllib.req ...