Python3中MD5加密代码详解

代码详解

# -*- coding:utf-8 -*-
import hashlib

# 第一次创建md5实例对象,会加载一些这个类的一些初始方法和信息,
# 如果加密一个字符串后不进行md5实例初始化,再继续加密另一个字符串时,
# md5会带一些刚开始的一些初始化信息对第二个字符串就行加密,
# 和重新初始化md5后再进行加密的结果是不一样的
# 所以,每次做md5加密的时候都需要重新创建一个md5的实例对象,否则可能得不到准确的加密信息


def md5_encrypt(text):
    m5 = hashlib.md5()
    text = text.encode(encoding='utf-8')
    m5.update(text)
    value = m5.hexdigest()
    return value

print(md5_encrypt("hello"))

结果:

5d41402abc4b2a76b9719d911017c592

知识延伸


# 由于MD5模块在python3中被移除
# 在python3中使用hashlib模块进行md5操作

import hashlib

# 待加密信息
str = 'this is a md5 test.'

# 创建md5对象
m = hashlib.md5()

# Tips
# 此处必须encode
# 若写法为m.update(str)  报错为: Unicode-objects

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值