Convenience hashing facilities.
Latest release 20241207: BaseHashCode.hashclass: raise ValueError from unknown hash function name with greater detail on the underlying failure.
Class BaseHashCode(builtins.bytes)
Base class for hashcodes, subclassed by SHA1, SHA256 et al.
You can obtain the class for a particular hasher by name, example:
SHA256 = BaseHashCode.hashclass('sha256')
BaseHashCode.__str__(self):
Return f'{self.hashname}:{self.hex()}'.
BaseHashCode.from_buffer(bfr: cs.buffer.CornuCopyBuffer):
Compute hashcode from the contents of the CornuCopyBuffer bfr.
BaseHashCode.from_data(bs):
Compute hashcode from the data bs.
BaseHashCode.from_fspath(fspath, **kw):
Compute hashcode from the contents of the file fspath.
BaseHashCode.from_hashbytes(hashbytes):
Factory function returning a BaseHashCode object from the hash bytes.
BaseHashCode.from_hashbytes_hex(hashhex: str):
Factory function returning a BaseHashCode object
from the hash bytes hex text.
BaseHashCode.from_named_hashbytes_hex(hashname, hashhex):
Factory function to return a HashCode object
from the hash type name and the hash bytes hex text.
BaseHashCode.from_prefixed_hashbytes_hex(hashtext: str):
Factory function returning a BaseHashCode object
from the hash bytes hex text prefixed by the hashname.
This is the reverse of __str__.
BaseHashCode.get_hashfunc(hashname: str):
Fetch the hash function implied by hashname.
BaseHashCode.hashclass(hashname: str, hashfunc=None, **kw):
Return the class for the hash function named hashname.
Parameters:
hashname: the name of the hash functionhashfunc: optional hash function for the class
BaseHashCode.hashname:
The hash code type name, derived from the class name.
BaseHashCode.hex(self) -> str:
Return the hashcode bytes transcribes as a hexadecimal ASCII str.
BaseHashCode.promote(obj):
Promote to a BaseHashCode instance.
Class MD5(BaseHashCode)
Hash class for the 'md5' algorithm.
MD5.hashfunc
Class SHA1(BaseHashCode)
Hash class for the 'sha1' algorithm.
SHA1.hashfunc
Class SHA224(BaseHashCode)
Hash class for the 'sha224' algorithm.
SHA224.hashfunc
Class SHA256(BaseHashCode)
Hash class for the 'sha256' algorithm.
SHA256.hashfunc
Class SHA384(BaseHashCode)
Hash class for the 'sha384' algorithm.
SHA384.hashfunc
Class SHA512(BaseHashCode)
Hash class for the 'sha512' algorithm.
SHA512.hashfunc
Release Log
Release 20241207: BaseHashCode.hashclass: raise ValueError from unknown hash function name with greater detail on the underlying failure.
Release 20240412:
- BaseHashCode.hashclass(hashname): fall back to looking for blake3 from the blake3 module.
- BaseHashCode: new get_hashfunc(hashname) static method.
Release 20240316: Fixed release upload artifacts.
Release 20240211: Initial PyPI release: BaseHashCode(bytes) and subclasses for various hash algorithms.
Release files for cs-hashutils 20241207
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cs_hashutils-20241207.tar.gz | 4.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cs_hashutils-20241207-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.7 kB
Release files / cs_hashutils-20241207.tar.gz
| Download URL | cs_hashutils-20241207.tar.gz |
|---|---|
| Size | 4.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f2d6609e64fa7ba7e1a8034b865420342cfaa3e6c73ab7afc5aeed96cb39c880
|
|
BLAKE2b-256 checksum How to use checksums |
8377b60d41ddf3385b55830567ba4cc456c52c557ec896475601f5aefed94324
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.7
|
Release files / cs_hashutils-20241207-py3-none-any.whl
| Download URL | cs_hashutils-20241207-py3-none-any.whl |
|---|---|
| Size | 4.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8da4d430be1c9bd2664e8c053b709670db259c2042f25cef4e2762f2b7ffa8da
|
|
BLAKE2b-256 checksum How to use checksums |
c29dcda9bfc048500f69e25d8a512fba9caeeddb2105f8816093dc5d0d333749
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.7
|