Converts hash strings into human-readable words that make it easy to recognize and remember.
Hash strings are everywhere: for example, on the bitcoin network, or as malware checksums. They are hard to read, recognize and remember. Plus, it's very difficult to verbally communicate these strings to another person.
This extension turns any hash string into four short words.
For instance, a bitcoin wallet address "13RWC...dLrkr" is transformed into "@_Dozen_Concord_Flavor_Hint". You can talk about it with a colleague by saying the four words, rather than the long string. Any verbal communications as such are clear and convenient.
Furthermore, four words are easier to read, recognize and remember. A recurring malware hash or suspicious payout address simply stand out, making it faster to spot any patterns.
(Not to mention that some hashes may be converted into interesting combinations of words.)
== Technical Details ==
A given hash is first passed into the SHA-1 function. The result is a 40-byte hex string, sliced up into four 10-byte strings. Each of the four slices is converted to a decimal number and mapped to a word from a 24,000-word list through the modulo operation. The probability of a collision is 1 in 24,000^4.
Tested for http://blockchain.info, http://blockexplorer.com, and http://www.threatexpert.com. Ideal for security researchers who handle a large number of malware hashes or bitcoin addresses.
== Limitations ==
(1) Hash replacement starts immediately after the DOM is loaded.However, some sites like Google change their DOM dynamically. Any new content would therefore not undergo hash replacement (e.g. when a new search term is entered on Google).
(2) When switching from the happy hash state to the original state, the body's old HTML is loaded. Some sites do not support this, in which case the whole page is refreshed. This happens, for instance, on the main page of threadexpert.com.
(3) Hash replacement does not occur in SVG texts, such as those on blockchain.info.