我正在使用此代码对文件进行哈希处理,但是每次运行脚本时哈希都会更改...请问如何获得固定哈希?也许有一个随机种子,我不想要这个。
我只有一个文件夹中的文件列表,我需要每个文件的唯一且固定的哈希:
import sys
import os
import hashlib
# BUF_SIZE is totally arbitrary, change for your app!
BUF_SIZE = 65536 # lets read stuff in 64kb chunks!
files = [f for f in os.listdir('.') if os.path.isfile(f)]
sha512 = hashlib.sha512()
hashes = []
for file in files:
with open(file, 'rb') as f:
while True:
data = f.read(BUF_SIZE)
if not data:
break
sha512.update(data)
hashes.append(file+"|"+sha512.hexdigest())
with open("hash.txt", 'w+') as f:
for h in hashes:
f.write(h+'\n')
print(h)
输出是一个包含每个文件名和文件哈希的文件。每次我运行脚本时,所有文件哈希都必须相同(不是 rn)