ID EN
Hashlib

file_digest

Python 3.11

Return a digest object that has been updated with contents of file object.

Syntax

PYTHON
hashlib.file_digest(fileobj, digest, /)

Examples

Example 1
PYTHON
>>> import io, hashlib, hmac
>>> with open(hashlib.__file__, "rb") as f:
...     digest = hashlib.file_digest(f, "sha256")
...
>>> digest.hexdigest()
'...'
Example 2
PYTHON
>>> buf = io.BytesIO(b"somedata")
>>> mac1 = hmac.HMAC(b"key", digestmod=hashlib.sha512)
>>> digest = hashlib.file_digest(buf, lambda: mac1)
Example 3
PYTHON
>>> digest is mac1
True
>>> mac2 = hmac.HMAC(b"key", b"somedata", digestmod=hashlib.sha512)
>>> mac1.digest() == mac2.digest()
True

See Also

open() BytesIO socket.socket.makefile() fileno()