-
Notifications
You must be signed in to change notification settings - Fork 207
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding Skein hash to the mix #56
Conversation
@diasdavid LGTY, LGTM. |
@Kubuxu Thanks. |
@whyrusleeping @lgierth can you tick off on that please? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall LGTM.
My sentiment is that we have to find a way to keep this table under control, it is getting massive fast
@daviddias I did my own research into what Hashes are useful.
To add these in Go We have https://github.com/bitbandi/go-x11 or https://github.com/samli88/go-x11-hash |
|
Skein is created by Bruce Schneier, one of the leader in cryptography.
It is as fast as BLAKE, faster than all other SHA3 finalists and SHA2.
Skein hashes can have arbitrary lengths up to 1024 bits.
A longer hash means files are less likely to have hash collisions.
They can also produce shorter hashes for higher speed.
Using b3xx code for 256-XXX, 512-XXX and 1024-XXX skein hashes would be good.
There are only 224 hashes in total (assuming we exclude hashes not multiple of 8).
References:
http://www.skein-hash.info/sites/default/files/skein1.3.pdf
www.skein-hash.info/sites/default/files/NIST_CD_102610.zip
Python implementation: https://pythonhosted.org/pyskein
Java, C and Go: https://github.com/wernerd/Skein3Fish
multiformats/multihash#83
multiformats/go-multihash#52
multiformats/js-multihash#34