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

你可能感兴趣的文章
OpenWrt固件编译刷机完全总结
查看>>
Open××× for Linux搭建之二
查看>>
Open×××有线网络时使用正常,无线网络时使用报错的解决方案
查看>>
Operation not supported on read-only collection 的解决方法 - [Windows Phone开发技巧系列1]
查看>>
Operations Manager 2007 R2系列之仪表板(多)视图
查看>>
operator new 与 operator delete
查看>>
operator() error
查看>>
OPPO K3在哪里打开USB调试模式的完美方法
查看>>
Optional类:避免NullPointerException
查看>>
ORA-00932: inconsistent datatypes: expected - got NCLOB【ORA-00932: 数据类型不一致: 应为 -, 但却获得 NCLOB 】【解决办法】
查看>>
ORA-00942 表或视图不存在
查看>>
ORA-01795: 列表中的最大表达式数为 1000
查看>>
ORA-06575: 程序包或函数 NO_VM_DROP_PROC 处于无效状态
查看>>
ORA-08102的错误
查看>>
ora-12541:tns:no listener
查看>>
【docker知识】联合文件系统(unionFS)原理
查看>>
ORACEL学习--理解over()函数
查看>>
oracle 10g crs命令,Oracle 10g CRS安装问题解决一例
查看>>
oracle 10g的安装配置
查看>>
Oracle 11.2.0.4 x64 RAC修改public/private/vip/scan地址
查看>>