Identicon

An Identicon is a visual representation of a hash value, usually of an IP address, that serves to identify a user of a computer system as a form of avatar while protecting the user's privacy. The original Identicon was a 9-block graphic, and the representation has been extended to other graphic forms by third parties.

Invention
Don Park came up with the Identicon idea on January 18, 2007. In his words:

"I originally came up with this idea to be used as an easy means of visually distinguishing multiple units of information, anything that can be reduced to bits. It's not just IPs but also people, places, and things. IMHO, too much of the web what we read are textual or numeric information which are not easy to distinguish at a glance when they are jumbled up together. So I think adding visual identifiers will make the user experience much more enjoyable."

A similar method had previously been described by Adrian Perrig and Dawn Song in their 1999 publication on hash visualization, which had already seen wide use such as in the random art of SSH keys.

Applications

 * GitHub and Roll20 both use identicons to visually differentiate users who have not set their own avatar.
 * Wikis and blogs may generate identicons to visually identify authors based on IP addresses. This provides some protection against impersonation without requiring authentication.
 * Third-party software is available to generate identicons for the purposes of identifying eBay sellers.
 * The original Identicon idea has been expanded to include a couple of new, simple yet very effective, anti-phishing protection schemes. One of them requires client-side support; Park is interested in talking to browser vendors regarding its incorporation. He calls this expansion "Gemini."
 * There is an add-on for Firefox called IdentFavIcon Quantum that, on websites without favicons, replaces them in the tab with Identicons based on the IP address of the website.
 * Anonymous email forwarding service IdBloc uses Identicons to help quickly distinguish between different email addresses visually