Python 3.5将字符串转换为sha1 sum的类型

Aul*_*lig 0 sha digest python-3.x

我知道如何从字符串中获取sha1,然后从中获取摘要sha1,这是我的目标。但是现在的问题是,我已经有了sha1(它来自文件而不是字符串),并且想要从中获取摘要sha1(并使用base 64对其进行编码)。

mysha1 = "FB9BA6614A6AEB7A040881E09A4B8211405831FF"
print(base64.b64encode(mysha1.digest()))
Run Code Online (Sandbox Code Playgroud)

这导致

AttributeError: 'str' object has no attribute 'digest'
Run Code Online (Sandbox Code Playgroud)

Ste*_*ann 5

摘要和十六进制示例:

>>> import hashlib
>>> d = hashlib.sha1(b'footext')
>>> d.digest()
b'f\xf9\x88gI\xfdQK\x8eM\xbd\x9e\x18(\xcf\x860"\xf1\xbf'
>>> d.hexdigest()
'66f9886749fd514b8e4dbd9e1828cf863022f1bf'
Run Code Online (Sandbox Code Playgroud)

如何将己方摘要转化为摘要:

>>> bytes.fromhex(d.hexdigest())
b'f\xf9\x88gI\xfdQK\x8eM\xbd\x9e\x18(\xcf\x860"\xf1\xbf'
Run Code Online (Sandbox Code Playgroud)