- Identicon
An Identicon is a visual representation of a
hash value , usually of theIP address , serving to identify a user of a computer system. The original Identicon is a 9-block graphic, which has been extended to other graphic forms by third parties some of whom have usedMD5 instead of the IP address as the identifier. In summary, an Identicon is a privacy protecting derivative of each user's IP address built into a 9-block image and displayed next the user's name. A visual representation is thought to be easier to compare than one which uses only numbers and more importantly, it maintains the person's privacy. The Identicon graphic is unique since it's based on the users IP, but it is not possible to recover the IP by looking at the Identicon.Invention
Don Park came up with the Identicon idea on
January 18 2007 . Don says, "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."Releases
The original Identicon source package 0.1 was server-side Java. Version 0.2 was cleaned up, added some documentation, fixed a color bug, added a cache, and a runtime jar. Version 0.3 included client-side Canvas tags. The current version is 0.5.
Applications
* One use is embedding them in wiki pages and
blog comments to identify authors. The thought includes protecting an author from someone else using his name to comment. It would be obvious because the IP addresses would generate different Identicons.
* Identicons are used to identify eBay sellers. [ [http://www.munnin.com/en/program_identicon.php Munnin [ Product - Identicon Quick seller identification in the item listing ] ]
* 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." [ cite web | title = Indenticon-based anti-phishing protection | url = http://www.docuverse.com/blog/donpark/2007/01/22/identicon-based-anti-phishing-protection | quote = In a roundabout way, it's related to my idea of using DRM to protect one-time passwords but very different once it hatched. ]Third party implementations
People have created code based on Don's original idea and at the same time have shifted the purpose. Several of the contributions below are more interested in creating fun icons than in some of the security issues Don first envisioned. It is also interesting to see how an idea posted on a blog grew in just a matter of a few days. Over 500 people commented on Don's first post often just to see what their Identicon would look like.
* ASP.NET HTTP Handler: [http://www.codinghorror.com/blog/archives/000774.html Jeff Atwood] wrote [http://weblogs.asp.net/jgalloway/archive/2007/01/24/identicons-ported-from-java-servlet-to-httphandler.aspx John Galloway] about Identicons on the evening of January 20, 2007. John Galloway ported the Identicon from a Java servlet to an ASP.NET HTTP Handler and got it to compile. Jeff Atwood then spent his Sunday debugging a tricky GDI conversion issue (plus cleaning up the code and adding cache optimizations). [http://haacked.com/ Phil Haack] repackaged John's and Jeff's code as compiled DLL and a handler file for those of us who prefer Web Application projects. [http://haacked.com/archive/2007/01/22/Easy_To_Deploy_Identicon_Handler.aspx This distribution] will work for both Web Application Projects as well as Website Projects.
*VisiGlyphs: OnJanuary 21 2007 , [http://digitalconsumption.com/ Charles Darke] released a php version he calls VisiGlyphs. He has released [http://digitalconsumption.com/files/pub-glyphs-beta.gz the source code] into the public domain. Updated php versions including a VisiGlyph class (under an ISC licence) have also been released on his site.
* MonsterID: email address generates unique graphic character for each user. Also onJanuary 21 2007 , [http://www.splitbrain.org/blog/2007-01/20_monsterid_as_gravatar_fallback Andreas "Andy" Gohr] from Berlin, Germany released MonsterID after reading Don Park's original discussion of Identicons. As a user of the [http://www.gravatar.com/ Gravatar service] , Andy wanted to have an image for the commenters who did not sign up with Gravatar. Andy communicated with Don who suggested several image generators. Andy used Jared Tarbell's image generator, called [http://www.levitated.net/bones/walkingFaces/index.html Combinatoric Critters] (Levitated.net;September 2002). Next Andy created the image parts inGIMP (multiple versions of arms, legs, hair, body, eyes, mouth that could be combined). He then used [http://us3.php.net/image the PHP's image support] using theGD Graphics Library to merge the image into a "Monster." To use MonsterID as an identification (eg. the same commenter always gets the same monster assigned) Andy used a simple trick: he choose body parts with the rand function, but initialized the random generator with a value dependent on a provided identification. He used the same email MD5 sum that is used to get the user’s Gravatar. On February 6, Andy released [http://www.splitbrain.org/projects/monsterid his work on MonsterID] under the Creative Commons Attribution 2.5 License. Note that each time you reload the page a different monster is generated.
* WordPress plugin for MonsterID: And again onJanuary 21 2007 , [http://scott.sherrillmix.com/blog/blogger/wp_monsterid/ Scott Sherrill-Mix] created "a quick and dirty Wordpress plugin to incorporate MonsterIDs easily into other blogs."
* Monster ID Service with added templates: And it seems thatJanuary 21 was an active day as [http://friedcellcollective.net/outbreak/2007/01/21/the-avatar-fun/ FriedCellCollective] began offering a [http://friedcellcollective.net/monsterid/ MonsterID service] on that day based on the work of Andy Gohr. On January 25th, additional templates for the monster were added contributed by [http://blogs.kd2.org/bohwaz/?2007/01/25/154-monster-id Bohwaz] .
* .NET class creates bitmaps from integer input values: OnJanuary 23 2007 , [http://www.puls200.de/?p=316 Daniel Schick] implemented a .NET class that creates bitmaps from an integer input value, very much like Don described it. The method takes an integer and a size value and returns an Image.Bitmap which can be saved or used within the application. Daniel admits that his motivation for the recreation was that he does not really like Java. The class can be downloaded from his blog page.
*Community Server Add-on for Identicons: OnJanuary 23 2007 , [http://www.carknee.com/archive/2007/01/23/identicons-for-community-server.aspx Sean Kearney] "whipped up a little [http://communityserver.org/i/overview.aspx Community Server] Add-on that can display an Identicon."
* Identicon in Python: OnFebruary 3 2007 , (dda or dbvic) made available "a functioning Identicon lib in Python." The author's website appears to now be offline.
* Identifrac returns fractal icons: ByFebruary 3 2007 , [http://adb.thefortytwo.net/2007/02/03/identifrac-unique-visual-identification/ Jesse Dubay] picked up the idea and created Identifrac using fractals from the Julia set. [http://adb.thefortytwo.net/projects/identifrac/ Information on his source code] has been released and if you scroll down to the bottom of this page, you will see your Identifrac.
* WordPress plugin for Identicons: OnFebruary 6 2007 , [http://scott.sherrillmix.com/blog/blogger/wp_identicon/ Scott Sherrill-Mix] released a Word Press plugin to add Identicons to comments.
* Perl module: [http://search.cpan.org/dist/Image-Identicon/
] . YAMASHINA Hio, February, 2007.GPL /Artistic License .References
External links
* [http://www.docuverse.com/blog/donpark/2007/01/18/visual-security-9-block-ip-identification Identicons]
* [http://haacked.com/archive/2007/01/22/Identicons_as_Visual_Fingerprints.aspx Identicons as Visual Fingerprints] by Phil Haack
* [http://digitalconsumption.com/forum/Visiglyphs-for-IP-visualisation Visiglyphs]
Wikimedia Foundation. 2010.