Multihash – self-describing hashes
Hey everyone. The SHAttered break made us release a new website for Multiformats: <a href="http://multiformats.io" rel="nofollow">http://multiformats.io</a> which includes a page explaining Multihash -- <a href="http://multiformats.io/multihash" rel="nofollow">http://multiformats.io/multihash</a> --<p>The page goes through a bunch of examples of how a multihash would work in practice, why it is useful to do this, and goes through some FAQs.<p>I'm writing a post about all this that I'll push out soon, but wanted to drop the site here now.<p>Please, as you make new systems or start to upgrade your systems out of SHA1 (or MD5!!!), please use Multihash so that your upgrades will be much, much easier in the future. This makes rolling up a matter of recompiling some tools, and by far not facing the horrible breakages that occur when tools and scripts assume certain things (like the hash digest of git will always be 160bits... now git faces breaking a lot of things and may have to stick with 160bits of a truncated SHA3 or BLAKE2...)<p>Oh also-- definitely check out BLAKE2, it's a fantastic hash function from Zooko, JP Aumasson, Samuel Neves, and Christian Winnerlein -- <a href="https://blake2.net" rel="nofollow">https://blake2.net</a> -- use it for all your hashing needs! So much faster than SHA2, and has the same "unbrokenness" that SHA3 enjoys. (And, I believe deep cryptanalysis has gone into BLAKE, Keccak is not particularly safer)<p>The Multiformats site also has a Multiaddr description, but that's far from complete and doesn't have the examples. The other multiformats arent well explained on the website yet. Sorry, coming soon :) we wanted to get this out ASAP -- PR's accepted at <a href="https://github.com/multiformats/website" rel="nofollow">https://github.com/multiformats/website</a> (oh and yes, TLS certs coming too)