HumanHash is a simple algorithm that converts arbitrary numbers into English prose. It can be used to facilitate verification of cryptographic hashes by voice. Its purpose at inception was to generate short, mnemonic signifiers to distinguish versions of a document, which could be automatically generated and independantly verified.

The code is available here:, or on GitHub, if you prefer. It can be used as a shell command, which can be given fed a file for which to compute a humanized cryptographic hash, or fed a precomputed hash to humanize (or called with -h for more extensive documentation). It can also be used as a Python a library, where it generally proxies hashlib, with some added methods including HH.paragraph(), which instead of returning a hexadecimal hash, returns a ‘Humanized’ paragraph version of the hash.

Try it below. The pre-filled example is my PGP key fingerprint.

Hexadecimal input:

Post a Comment

Your email is never published nor shared. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>