小编kaa*_*pi3的帖子

使用 Python 实现 SHA1-HMAC

我正在为 python (v 3.7) 实现 SHA1-HMAC 生成,以便能够创建 HMAC 代码。

我使用在线生成器使用以下数据创建 SHA1-HMAC :

  • 细绳:'123'
  • 密钥:'secret'
  • 摘要算法:SHA1

我得到这个结果:

b14e92eb17f6b78ec5a205ee0e1ab220fb7f86d7
Run Code Online (Sandbox Code Playgroud)

然而,当我尝试用 Python 做同样的事情时,我得到了不同的结果,这是错误的。

import hashlib
import hmac
import base64

def make_digest(message, key):
    key = bytes(key, 'UTF-8')
    message = bytes(message, 'UTF-8')

    digester = hmac.new(key, message, hashlib.sha1)
    signature1 = digester.digest()

    signature2 = base64.urlsafe_b64encode(signature1)    
    return str(signature2, 'UTF-8')


result = make_digest('123', 'secret')
print(result)
Run Code Online (Sandbox Code Playgroud)

此代码给出结果:

sU6S6xf2t47FogXuDhqyIPt_htc=
Run Code Online (Sandbox Code Playgroud)

这段代码可能有什么问题?

python sha1 hmac

6
推荐指数
1
解决办法
4395
查看次数

标签 统计

hmac ×1

python ×1

sha1 ×1