Skip to content

sfstpala/SlowSHA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

SlowSHA

This single-file module implements the hashing algorithms sha1, sha224, sha256, sha384, and sha512 in pure Python 3. The code doesn't contain too many optimisations, which makes it fairly easy to read.

Note that this code is for educational purposes. Python's native C implementation of SHA1/SHA2 is much faster and better tested.

Usage

>>> import slowsha
>>> slowsha.sha224(b"Python 3000").hexdigest()
'ca10838d71bcd91cfc3e474867a5ed2f13feb14ee91a6dab2526a96b'
>>> slowsha.sha1(b"hello").digest()
b'\xaa\xf4\xc6\x1d\xdc\xc5\xe8\xa2\xda\xbe\xde\x0f;H,\xd9\xae\xa9CM'
>>> slowsha.sha224(b"Hello World")
<slowsha.SHA224 object at 0xb742262c>

Note that SlowSHA will not work in Python 2.x.

About

A pure Python 3 implementation of SHA1 and SHA2

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages