python中加密算法(md5、sha512)

1、python 中加密算法包括:md5、sha512、sha256、base64、aes……我们今天说下其中的两种:md5和sha512

2、md5的使用

MD5 是一种单向加密技术(不可解密)。MD5加密算法简单高效且算出的值长度都是固定的, MD5值具有强抗碰撞,对原文件哪怕只修改一个字符,所计算出的MD5值也会发生很大变化。基于这些特性,MD5在数据校验上发挥有很大作用。

import hashlib  #导入hashlib模块
password='123456'  #定义一个字符串
hashlib.md5(password.encode())# encode 方法,转成字符串
m=hashlib.md5(password.encode())
print(m.hexdigest())#打印出来

打印结果

e10adc3949ba59abbe56e057f20f883e

3、sha512的使用

sha512和sha256……等等这种形式的使用方法都是一模一样的,区别只是返回值长度不一样

import hashlib  #导入hashlib模块
password='123456'  #定义一个字符串
m=hashlib.sha3_512(password.encode())
def md5(string,salt=""):
    new = str(string) + str(salt)
    m = hashlib.md5(new.encode())
    return m.hexdigest()
print(m.hexdigest())#打印出来

打印结果

64d09d9930c8ecf79e513167a588cb75439b762ce8f9b22ea59765f32aa74ca19d2f1e97dc922a3d4954594a05062917fb24d1f8e72f2ed02a58ed7534f94d27

4、下面我们说一下加盐和加密的输出方法

  • 加盐:加密后,后面加一些固定的的字符&*()*&……%
  • 说下加密后不同的返回值
  • hash.digest()返回摘要,作为二进制数据字符串值
  • hash.hexdigest()返回摘要,作为十六进制数据字符串值
posted @ 2021-10-28 14:42  宝葫芦儿  阅读(2571)  评论(0编辑  收藏  举报