博客
关于我
理解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/

你可能感兴趣的文章
SparkSQL学习03-数据读取与存储
查看>>
PAT L2-012. 关于堆的判断
查看>>
PAT Spell It Right [非常简单]
查看>>
PAT-1044. Shopping in Mars (25)
查看>>
PAT-乙级-1040 有几个PAT
查看>>
Spring组件扫描配置
查看>>
PAT1093 Count PAT's (25)(逻辑题)
查看>>
PATA1038题解(需复习)
查看>>
Patching Array
查看>>
Spring源码学习(二):Spring容器之prepareContext和BeanFactoryPostProcessor的介绍
查看>>
PatchMatchStereo可能会需要的Rectification
查看>>
Path does not chain with any of the trust anchors
查看>>
Path形状获取字符串型变量数据
查看>>
PAT甲级——1001 A+B Format (20分)
查看>>
Skywalking原理
查看>>
PAT甲级——1006 Sign In and Sign Out (25分)
查看>>
PAT甲级——1007 Maximum Subsequence Sum (25分)
查看>>
PAT甲级——1009 Product of Polynomials (25分)(最后一个测试点段错误)
查看>>
Spring对jdbc的支持
查看>>
vagrant 的安装
查看>>