sha256

sha256 library with midstate


License
MIT
Install
pip install sha256==1.0

Documentation

This is a SHA-256 implementation that allows for setting and getting the mid-state information. This was needed to enable repeated hashing against a (potentially large) fixed prefix.

Performance

The original version of this was written in Python. While the Cython version will be much faster, this is not a highly optimized library and relies on the native C compiler for optimization.

Cythonize

This repository does not contain the generated C code from Cython. To recreate the C code run the cytnonize step via:

python3 -m pip install --upgrade build
python3 -m build

Authors

The original author was Thomas Dixon for a python version of this code. Sam Rushing added the midstate access and converted it to Cython. Nigel Drego added the context state setter/getter.

LICENSE

This is licensed under the MIT license based on the original license from Thomas Dixon.