请注意以下代码。我希望最终打印的味精摘要与上一次写的摘要相同。但是,当我运行以下代码时,我得到了两个不同的味精摘要:
b'Hello world!20' -> 0014bcc2a7237e128dd810f8c8b49371860cbd61e112865c6008081a20ba9a0d
b'Hello world!20' -> 69a4104786309d2d98957da1cebba060043118fd5113a12e43ce184a6d06c368
这是代码...
import hashlib
m = hashlib.sha256()
for nonce in range(10000):
msg = b"Hello world!"+str(nonce).encode()
m.update(msg)
print(msg,"->", m.hexdigest())
if m.hexdigest() < "00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":
break
n = hashlib.sha256()
n.update(b"Hello world!20")
print(b"Hello world!20", "->", n.hexdigest())
我认为输入到hashlib更新中的数据编码存在一些问题。