博客
关于我
理解hmac module in Python
阅读量:348 次
发布时间:2019-03-04

本文共 724 字,大约阅读时间需要 2 分钟。

HMAC算法实现

HMAC(哈希消息认证码)是一种基于安全哈希函数的认证机制,广泛应用于数据完整性验证。本文将介绍Python中的hmac库实现方法。

主要功能

HMAC库提供了多种功能,包括密钥生成、消息处理和摘要算法选择等。以下是主要函数和方法:

  • 创建HMAC对象

    hmac.new(key, msg=None, digestmod='')
    创建一个新的HMAC对象,参数包括密钥(key)、消息(msg,可选,默认为空)以及摘要算法(digestmod,默认为空)。支持多种摘要算法如MD5、SHA-1等。
  • 更新消息

    HMAC.update(msg)
    将消息片段添加到当前HMAC对象中,支持多次调用以处理大数据量。
  • 生成摘要

    HMAC.digest()
    计算并返回消息的摘要值。
  • 生成十六进制字符串

    HMAC.hexdigest()
    返回摘要值的十六进制字符串表示。
  • 对象方法

    HMAC对象支持多种方法包括:

    copy()、digest_size、block_size、compare_digest(a, b)

使用示例

以下是一个典型的使用示例:

import hmacmessage = b'Hello, world!'key = b'secret'h = hmac.new(key, message, digestmod='MD5')# 如果消息较长,可以多次调用h.update(msg)h.update(b'更多数据')hexdigest = h.hexdigest()

参考资料

该实现基于以下安全哈希算法标准:

  • Secure Hash Standard (SHS)
  • MessageDigest算法家族(如MD5、SHA系列等)

转载地址:http://upge.baihongyu.com/

你可能感兴趣的文章
Plotly:如何使用 Plotly Express 组合散点图和线图?
查看>>
Plotly:如何使用 plotly.graph_objects 和 plotly.express 定义图形中的颜色?
查看>>
Plotly:如何使用 Python 对绘图对象条形图进行颜色编码?
查看>>
Plotly:如何使用 updatemenus 更新一个特定的跟踪?
查看>>
Plotly:如何使用长格式或宽格式的 pandas 数据框制作线图?
查看>>
Plotly:如何向烛台图添加交易量
查看>>
Plotly:如何在 plotly express 中找到趋势线的系数?
查看>>
Plotly:如何在桑基图中设置节点位置?
查看>>
Plotly:如何处理重叠的颜色条和图例?
查看>>
Plotly:如何手动设置 plotly express 散点图中点的颜色?
查看>>
Plotly:如何结合 make_subplots() 和 ff.create_distplot()?
查看>>
Plotly:如何绘制累积的“步骤“;直方图?
查看>>
Quartz进一步学习与使用
查看>>
Plotly条形图-根据正/负值更改颜色-python
查看>>
PLSQL developer12安装图解
查看>>
PLSQL Developer调试 存储过程和触发器
查看>>
PLSQL window操作
查看>>
plsql 存储过程 测试
查看>>
plsql 安装后database下拉没有东西
查看>>
PLSQL_Oracle PLSQL内置函数大全(概念)
查看>>