【发布时间】:2021-05-18 21:12:31
【问题描述】:
给定以下 Python 代码:
bits = [0]*256 # for simplicity (actually it's more like (0|1)^n)
binstr = "" # make string containing all 'bits'
for el in bits:
binstr += str(el)
如何获取 bits/binstr 的 sha256 的二进制字符串。 (意思是如何实现二进制(sha256(位))。 我在使用类似的东西时卡住了:
import hashlib
import binascii
hexstr = "{0:0>4X}".format(int(binstr, 2))
data = binascii.a2b_hex(hexstr)
print(data)
> b'\x00\x00'
output = hashlib.sha256(data).hexdigest()
print(output)
> 96a296d224f285c67bee93c30f8a309157f0daa35dc5b87e410b78630a09cfc7
也许你可以帮我找出我的错误。
【问题讨论】:
-
运行代码时会发生什么?
-
@itprorh66 我添加打印结果
标签: python python-3.x sha256 hashlib binascii