python合法16进制表达形式_Python sha256十六进制字符串和二进制字符串的处理方式不同...

我有一个十六进制,我通过执行以下操作得到二进制表示In [10]: binascii.unhexlify('950ef5cce9c32676ab67998e2245f682624f9abce6bb1392b67204159b82c020')

Out[10]: '\x95\x0e\xf5\xcc\xe9\xc3&v\xabg\x99\x8e"E\xf6\x82bO\x9a\xbc\xe6\xbb\x13\x92\xb6r\x04\x15\x9b\x82\xc0 '

只要检查一下自己的神志我就能找回原来的价值

^{pr2}$

现在我想要这个二进制值的sha256In [12]: hashlib.sha256('\x95\x0e\xf5\xcc\xe9\xc3&v\xabg\x99\x8e"E\xf6\x82bO\x9a\xbc\xe6\xbb\x13\x92\xb6r\x04\x15\x9b\x82\xc0 ').hexdigest()

Out[12]: '74d0ef097a15e1699b2476de3b700e86f54d8d3ec65485382c01dc7984b46f96'

我希望我最初拥有的十六进制值的sha256将与二进制sha256匹配。不是的In [13]: hashlib.sha256('950ef5cce9c32676ab67998e2245f682624f9abce6bb1392b67204159b82c020').hexdigest()

Out[13]: 'cb0c91c3977b3433ce481511103e6454a5b781ec57849187aa0b2fe1b20e8078'

我的猜测是sha256将值作为文本字符串表示,从字符串的角度来看,它们是不同的,但是从十六进制和二进制的角度来看,它们是相同的。在

有没有一种方法可以告诉sha256将它接收到的值作为二进制值处理,还是必须显式地这样做?我在文件里什么都没看到。只是想知道是否有人知道这样做的方法。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值