Исправлен хеш файла с sha512
Я использую этот код для хеширования файлов, однако хеши меняются каждый раз, когда я запускаю скрипт ... Как получить фиксированный хеш, пожалуйста? Может быть, есть случайное семя, мне для этого не нужно.
У меня просто есть список файлов в папке, и мне нужен их уникальный фиксированный хеш для каждого из них:
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)