python使用hashlib库运行MD5哈希算法

通过信息摘要算法,可以实现以下几个目标:

  1. 任意长度的输入,得到固定长度的输出
  2. 在任意环境中,都是相同的输入,相同的输出
  3. 极尽所能不要出现不同的输入,结果有重复的的输出

我们通过hashlib这个库可以实现这样的功能,其中MD5算法的使用流程是:

  1. 确定输入,将输入变为字符串(str)类型
  2. 确定编码str.encode("utf-8")
  3. 输出编码.hexdigest()

示例程序

py 复制代码
import hashlib

def get_md5_code(string):
    """获取MD5的字符串"""
    hash_md5 = hashlib.md5()  # 应用MD5算法
    hash_md5.update(str(string).encode("utf-8"))
    return hash_md5.hexdigest()

def main():
    data_info = {
        "name": "小明",
        "age": 20,
    }
    md5_code = get_md5_code(data_info)
    print(md5_code)

if __name__ == '__main__':
    main()
相关推荐
纵有疾風起2 分钟前
C++—vector:vecor使用及模拟实现
开发语言·c++·经验分享·开源·stl·vector
任子菲阳39 分钟前
学Java第四十三天——Map双列集合
java·开发语言
wearegogog12339 分钟前
基于MATLAB的谷物颗粒计数方法
开发语言·matlab
Jackson@ML42 分钟前
360度看C#编程语言
开发语言·c#
我命由我123451 小时前
CesiumJS 案例 P35:添加图片图层(添加图片数据)
开发语言·前端·javascript·css·html·html5·js
zeijiershuai1 小时前
Java 会话技术、Cookie、JWT令牌、过滤器Filter、拦截器Interceptor
java·开发语言
MATLAB代码顾问1 小时前
多种时间序列预测算法的MATLAB实现
开发语言·算法·matlab
郝开1 小时前
Spring Boot 2.7.18(最终 2.x 系列版本)3 - 枚举规范定义:定义基础枚举接口;定义枚举工具类;示例枚举
spring boot·后端·python·枚举·enum
钅日 勿 XiName2 小时前
一小时速通Pytorch之自动梯度(Autograd)和计算图(Computational Graph)(二)
人工智能·pytorch·python
m0_736927042 小时前
2025高频Java后端场景题汇总(全年汇总版)
java·开发语言·经验分享·后端·面试·职场和发展·跳槽