Вычисление хэша SHA256 содержимого объектов FileResponse - PullRequest
1 голос
/ 01 октября 2019

У меня есть файл, для которого я вычислил его SHA256Sum и убедился, что он правильный.

hash1 = computeSHA256(filepath)

Мне нужно снова вычислить хеш, но на этот раз, используя значения внутри response.streaming_content, где response - это объект Django FileResponse, который я сделал следующим образом:

response = FileResponse(request, open(filepath, 'rb'), content_type='application/json')
content = b''.join(response.streaming_content)
h = hashlib.sha256()
h.update(str(content).encode('utf-8'))
hash2 = h.hexdigest()

Эта проблема здесь в том, что hash1 != hash2. Например:

hash1 = 7836496a8e17dac5aad5dea15409b06558d0feaf6c39198eae620afebb1fa097
hash2 = 70a3e07b20e722652740e93702b70322d042b9710b3087228e70551ad8301086

Кто-нибудь может увидеть, где я ошибся, чтобы два хеш-значения не были равны?

Примечание: файл является файлом Google Protobuf (.pbf)так же двоично.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...