打印SHA-256哈希的两种方法在Python中以1字节不同

时间:2017-07-19 09:46:42

标签: python hex pycrypto

考虑一下代码段:

from Cryptodome.Hash import SHA256
text = b'Jeanny'
print('Hash of', text)

hx = SHA256.new(text).hexdigest()
print(hx)

h = SHA256.new(text).digest()
[print('{0:x}'.format(h[i]), end = '' ) for i in range(0,len(h))]

打印:

Hash of b'Jeanny'
f51c7dbd56cc25c565f7c7ef951b06121e87e34f2e3bb466e873a2518715fe50
f51c7dbd56cc25c565f7c7ef951b6121e87e34f2e3bb466e873a2518715fe50

为什么第二个打印的十六进制数字字符串在第29位错过0

1 个答案:

答案 0 :(得分:1)

因为它试图打印“06”,但你没有告诉它将数字填零。