hmac库Python密码消息签名

网友投稿 720 2022-05-30

目录

前言

消息签名

二进制摘要

前言

HMAC算法可以用于验证信息的完整性,这些信息可能在应用之间传递,或者存储在一个可能有安全威胁的地方。

其基本思路:生成实际数据的一个密码散列,并提供一个共享的秘密密钥。然后使用得到的散列检查所传输或存储的信息,以确定一个信任级别,而不传输秘密密钥。

消息签名

hmac库提供了一个new()函数来创建一个新对象来计算消息签名。示例如下:

import hashlib import hmac str = 'Li YuanJing' hmac_maker = hmac.new(b'820-880-8820', bytes(str, 'utf-8'), hashlib.sha1).hexdigest() print(hmac_maker)

1

2

hmac库:Python密码消息签名

3

4

5

6

运行之后,效果如下:

new第1个参数:秘密密钥

第2个参数:需要认证签名的数据

第3个参数:采用的散列算法

如控制台输出,计算出了一个HMAC签名。

二进制摘要

在许多的Web服务中,我们会经常使用base64编码版本的二进制摘要,所以我们需要将上面的签名数据返回为base64编码的二进制摘要,示例如下:

import hashlib import hmac import base64 str = 'Li YuanJing' hmac_maker = hmac.new(b'820-880-8820', bytes(str, 'utf-8'), hashlib.sha1).digest() print(base64.encodebytes(hmac_maker))

1

2

3

4

5

6

7

运行之后,效果如下:

Mac OS Python

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:GCC常用命令总结
下一篇:espnet实践简介
相关文章