繁体   English   中英

如何在python中创建sha1哈希

[英]how to create a sha1 hash in python

我的目标是在python中使用智能卡执行“Hashsigning”。 有使用hashlib,但python中没有特定的SHA1或SHA256函数。 我的工作:

hash_object = hashlib.sha1(b'HelWorld')
pbHash = hash_object.hexdigest()

但我得到的哈希对象的长度是28而不是我应该得到14或20,这样我就可以打开条件了

 switch ( dwHashLen )
{
case 0x14: // SHA1 hash
             call scard transmit
case 0x20: // SHA256 hash
}

任何帮助表示赞赏。 先感谢您

你实际上得到40,十六进制是0x28 将十六进制的散列解码为ASCII,如下所示

>>> import hashlib
>>> hash_object = hashlib.sha1(b'HelWorld')
>>> pbHash = hash_object.hexdigest()
>>> length = len(pbHash.decode("hex"))
>>> print length
20

或者简单地使用digest代替hexdigestDan D建议的那样。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM