Checksum#
Added in version 2.16.
- class Checksum(**kwargs)#
GLib provides a generic API for computing checksums (or ‘digests’) for a sequence of arbitrary bytes, using various hashing algorithms like MD5, SHA-1 and SHA-256. Checksums are commonly used in various environments and specifications.
To create a new GChecksum
, use new
. To free
a GChecksum
, use free
.
GLib supports incremental checksums using the GChecksum
data
structure, by calling update
as long as there’s data
available and then using get_string
or
get_digest
to compute the checksum and return it
either as a string in hexadecimal form, or as a raw sequence of bytes. To
compute the checksum for binary blobs and nul-terminated strings in
one go, use the convenience functions compute_checksum_for_data
and compute_checksum_for_string
, respectively.
Constructors#
- class Checksum
- classmethod new(checksum_type: ChecksumType) Checksum | None #
Creates a new
Checksum
, using the checksum algorithmchecksum_type
. If thechecksum_type
is not known,None
is returned. AChecksum
can be used to compute the checksum, or digest, of an arbitrary binary blob, using different hashing algorithms.A
Checksum
works by feeding a binary blob throughupdate()
until there is data to be checked; the digest can then be extracted usingget_string()
, which will return the checksum as a hexadecimal string; orget_digest()
, which will return a vector of raw bytes. Once eitherget_string()
orget_digest()
have been called on aChecksum
, the checksum will be closed and it won’t be possible to callupdate()
on it anymore.Added in version 2.16.
- Parameters:
checksum_type – the desired type of checksum
Methods#
- class Checksum
-
- get_string() str #
Gets the digest as a hexadecimal string.
Once this function has been called the
Checksum
can no longer be updated withupdate()
.The hexadecimal characters will be lower case.
Added in version 2.16.