python md5加密 - hashlib

MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5是最常见的摘要算法,速度很快,生成结果是固定的128 bit字节,通常用一个32位的16进制字符串表示。


 

 

hashlib介绍

Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。

摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。

在python3的标准库中,已经移除了md5模块,而关于hash加密算法都放在hashlib这个标准库中,如SHA1、SHA224、SHA256、SHA384、SHA512和MD5算法等。

 



获取字符串md5值 和 文件md5值的函数封装列举:

import hashlib


def get_md5_from_str(data_str):
    """
    获取字符串的md5值
    :param data_str:
    :return:
    """

    restult = hashlib.md5(data_str.encode(encoding='utf-8')).hexdigest()  # 返回摘要,作为十六进制数据字符串值
    # restult = hashlib.md5(data_str.encode(encoding='utf-8')).digest()  # 返回摘要,作为二进制数据字符串值

    return restult


def get_md5_from_file(file_path):
    """
    获取文件的md5值
    :param file_path: 文件路径
    :return: md5值
    """
    m = hashlib.md5()
    a_file = open(file_path, 'rb')  # 需要使用二进制格式读取文件内容
    m.update(a_file.read())
    a_file.close()
    return m.hexdigest()


if __name__ == "__main__":
    str_temp = 'shenshang'
    print(get_md5_from_str(str_temp))
    print(get_md5_from_file('./get_md5.py'))

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值