Identicons as Graphical Digital Fingerprints

Fingerprint via public domain clipart How do you uniquely identify a person, without divulging the identity of that person? For example, given a set of personal artifacts, how would I arrange the set of artifacts grouped by the person to which they belonged?

The answer is quite easy, isn’t it (especially given the title of this blog post and the image to the right)? You can look at the fingerprints on the items.

Unless you happened to have a file that mapped the fingerprints to individuals, you won’t know who the comb and mirror belong to, for example, only that they do belong to the same person and not to the person who owns the scissors.

The analogous structure in the world of information theory and computer science is the digital fingerprint, often created via a hash function. MD5 and SHA1 are two of the most commonly used hash functions.

A hash function is a one way algorithm for converting data into a number which for the most part can be used to identify the data without revealing the data. This is why it is common to hash passwords before storing them in a database.

In order to authenticate a user, I don’t need to know the user’s password, I just need to know that the hash I’ve stored corresponds to the password you typed.

Don Park recently invented a system for representing IP Addresses without divulging the actual IP Address via a system of glyphs, which he calls Identicons. This serves as a nice means of identifying commenters on a blog, without divulging their actual IP address, which could be a privacy concern. The following image are some examples of identicons.

Some Identicon Glyphs

What’s interesting to me about identicons is that they have wider uses beyond representing IP addresses. As Don states,

I think identicons have many use cases. One use is embedding them in wiki pages to identify authors. Another is using them in CRM to identify customers. I can go on and on. It’s not just about IP addresses but information that tends to move in ’herds’.

One way to look at identicons is that they are a visual representation of a hash value. They sort of add even more weight to the fingerprint analogy by being visual like a real fingerprint.

For example, for security reasons, many free software providers provide an MD5 checksum of their software binaries. You can see an example of this from the PuTTY download page.

Putty Download Page. Shows links to MD5 Checksums 

The next screenshot shows some actual hash values of exes.

Hash Values

Looking at the first listing, we can see that for pageant.exe, the hash value is 01d89c3cbf5a9fd2606ba5fe3b59a982, kind of a mouthful, right? Another way that could be represented is via an Identicon, which would be more readily recognizable.

Of course, in this situation, the security minded person would use an automated MD5 checksum checker rather than manually confirming the binary. But do you trust your md5 checksum checker? A quick visual confirmation would be a nice additional vote of confidence in this scenario.

If you’re interested in playing with Identicons in .NET, I recommend taking a look at this .NET port of Don Park’s implementation written by Jeff Atwood and Jon Galloway.

I had the pleasure of reviewing the code with Jeff and he’s quite proud of his caching optimization. Rather than caching the Bitmap object, he caches the PNG output as a MemoryStream instance. That ends up saving a ton of memory.

Technorati tags: , ,

What others have said

Requesting Gravatar... Keyvan Nayyeri Jan 21, 2007 11:34 PM
# Identicons - Graphical Digital Fingerprints
Jeff Atwood and Phil Haack wrote Identicons and an implementation of them in .NET that is done by Jeff
Requesting Gravatar... Don Park Jan 22, 2007 12:47 AM
# re: Identicons as Graphical Digital Fingerprints
Thanks for explaining the concept so well, Phil. You've nailed it.
Requesting Gravatar... Haacked Jan 22, 2007 12:50 AM
# re: Identicons as Graphical Digital Fingerprints
Thanks Don, appreciate it. I just made Identicons the default image for commenters. Thus if a commenter does not have a gravatar, the identicon will show instead.

Right now, gravatars are broken on my site, so everyone will show up as an identicon until I fix it.
Requesting Gravatar... Brandon Jan 22, 2007 3:37 AM
# re: Identicons as Graphical Digital Fingerprints
These are definately cool identifiers.
Requesting Gravatar... Luke Jan 22, 2007 1:25 PM
# re: Identicons as Graphical Digital Fingerprints
I absolutely love the identicon idea. I think this is one of the most compelling concepts in this area I have heard in a while.

I'm currently trying to figure out how to get them working on my site. It's a classinc LAMP setup with Wordpress.
Requesting Gravatar... DotNetKicks.com Jan 23, 2007 1:11 AM
# Identicons as Graphical Digital Fingerprints
You've been kicked (a good thing) - Trackback from DotNetKicks.com
Requesting Gravatar... Gavin Joyce Jan 23, 2007 1:17 AM
# re: Identicons as Graphical Digital Fingerprints
This is a truly great idea and I will be including this in a upcoming project. I'll port it to ruby too if no one else has.
Requesting Gravatar... john doe Jan 25, 2007 1:47 PM
# re: Identicons as Graphical Digital Fingerprints
sounds interesting!!
Requesting Gravatar... you've been HAACKED Mar 18, 2007 5:01 PM
# Identicon Handler For .NET On CodePlex
Identicon Handler For .NET On CodePlex
Requesting Gravatar... Community Blogs Mar 18, 2007 5:44 PM
# Identicon Handler For .NET On CodePlex
A while ago, Jeff Atwood blogged about Identicons for .NET. An Identicon is an anonymized visual glyph
Requesting Gravatar... emilio gorgonzola Mar 18, 2007 6:23 PM
# I just want to see my Identicon thingie
I hope it isn't a swastika like the one above.
Requesting Gravatar... StevenHarman.net Apr 06, 2007 6:22 AM
# Subtext v1.9.5 - Now Testing
Subtext v1.9.5 - Now Testing
Requesting Gravatar... Coding Horror Dec 06, 2007 7:02 PM
# Hashtables and the Pigeonhole Principle
One of the most beloved of all data structures in computer science is the hash table. A hash table is a data structure that associates keys with values. The primary operation it supports efficiently is a lookup: given a...
Requesting Gravatar... michigan Dec 29, 2007 6:31 AM
# re: Identicons as Graphical Digital Fingerprints
i wonder if mine will look like the identicon i saw last month on park's site, it was different when i went to the page again just now.
what i love about your site is the identicon is bigger.
do i have to the right to use the identicon in my designs? I would also love to have this availible for people who visit my sites. when will it be availiable for site owners?
Requesting Gravatar... just looking... May 06, 2008 8:18 AM
# re: Identicons as Graphical Digital Fingerprints
Just want to see what it looks like...
Requesting Gravatar... Gavin May 17, 2008 10:47 AM
# re: Identicons as Graphical Digital Fingerprints
I want to see my Identicon as well...
Requesting Gravatar... Lee Jun 18, 2008 7:50 AM
# re: Identicons as Graphical Digital Fingerprints
Well that was a great blog post. Way to "identify" the situation, heh. I've found that my mind has an affinity for remembering numbers, names, and passwords... but I'm sure I'll recognize pictures even easier. Can't wait to see the many ways this could be used.
Requesting Gravatar... will Jun 18, 2008 3:31 PM
# re: Identicons as Graphical Digital Fingerprints
so if I have a gravatar will it show that or an identicon?
Requesting Gravatar... Nik Radford Jun 19, 2008 12:48 AM
# re: Identicons as Graphical Digital Fingerprints
Also just want to see my identicon
Requesting Gravatar... Danijel Jul 07, 2008 6:57 PM
# re: Identicons as Graphical Digital Fingerprints
So 127.0.0.1 will always show up the same identicon? :)
Requesting Gravatar... random ransom Jul 10, 2008 3:10 AM
# re: Identicons as Graphical Digital Fingerprints
1-2-3-test-test-test
Requesting Gravatar... SirHeart Jul 30, 2008 7:59 AM
# re: Identicons as Graphical Digital Fingerprints
just checking it out
However how does one hash a graphic image such as a pic and how reliable or predictible or unique is it ?
Requesting Gravatar... WalterVonBerg Aug 07, 2008 5:25 AM
# re: Identicons as Graphical Digital Fingerprints
i'm so cute
Requesting Gravatar... Identitron Sep 17, 2008 12:31 PM
# re: Identicons as Graphical Digital Fingerprints
Cool idea.
Requesting Gravatar... nicolas Oct 04, 2008 6:32 PM
# re: Identicons as Graphical Digital Fingerprints
what's my identicon?

ahh :-D
Requesting Gravatar... yeliaB Oct 13, 2008 4:39 AM
# re: Identicons as Graphical Digital Fingerprints
Fascinating...
Requesting Gravatar... Ken Oct 17, 2008 6:58 PM
# re: Identicons as Graphical Digital Fingerprints
just want to see my identicon
Requesting Gravatar... mcas Oct 26, 2008 4:56 PM
# re: Identicons as Graphical Digital Fingerprints
...Of course, this is presupposing that someone doesn't access the same blog from two computers-- say a work and a home. But, yes, this at least theoretically could help maintain culpability should someone try to disavow a comment they posted which was in fact from their computer... but I could easily go to my roommates and post something else offensive/immoral from my roommates computer and then accuse someone else of posting it...
Requesting Gravatar... paul Oct 26, 2008 5:29 PM
# re: Identicons as Graphical Digital Fingerprints
Can I have one too?
Requesting Gravatar... lli Oct 26, 2008 7:36 PM
# re: Identicons as Graphical Digital Fingerprints
These would make nifty quilts.
Requesting Gravatar... Alain dien Oct 26, 2008 8:10 PM
# re: Identicons as Graphical Digital Fingerprints
A quilt of made of banned identicons!


Requesting Gravatar... MH Oct 26, 2008 9:56 PM
# re: Identicons as Graphical Digital Fingerprints
This is a fantastic idea.
Requesting Gravatar... Ben Oct 28, 2008 11:07 AM
# re: Identicons as Graphical Digital Fingerprints
Will a generated Identicon for an email address always be the same?
Requesting Gravatar... slucas Nov 05, 2008 1:23 AM
# re: Identicons as Graphical Digital Fingerprints
Nice article. This question is probably for Phil. Why are some of the identicons fuzzy. See above comments from Alain Dien and yeliaB.
Requesting Gravatar... Doug Nov 07, 2008 5:41 AM
# re: Identicons as Graphical Digital Fingerprints
I just want to see my identicon too.
Requesting Gravatar... Doug Nov 07, 2008 6:45 AM
# Gravatar's implementation shouldn't be used for real identity, right?
I mean, anyone can hash any email address and get the identicon.
Requesting Gravatar... Violet Nov 23, 2008 12:19 AM
# re: Identicons as Graphical Digital Fingerprints
:-o
Requesting Gravatar... DSollick Nov 28, 2008 12:14 PM
# re: Identicons as Graphical Digital Fingerprints
Nice! I really love this idea and look forward to seeing it elsewhere.
Requesting Gravatar... Dustin Howett Nov 28, 2008 12:16 PM
# re: Identicons as Graphical Digital Fingerprints
I love this idea. I really hope more places pick up on it :D
Requesting Gravatar... Daniel Piker Dec 07, 2008 8:11 PM
# re: Identicons as Graphical Digital Fingerprints
I want to check out my identicon too. If I dont like it maybe I'll have to change to a new IP address with a nicer pattern!
Requesting Gravatar... Martin-TM Dec 08, 2008 4:58 AM
# re: Identicons as Graphical Digital Fingerprints
Looks lovely, I couldn't resist and wanted to see mine :D
Requesting Gravatar... Cool Dec 09, 2008 6:15 PM
# re: Identicons as Graphical Digital Fingerprints
Cool stuff
Requesting Gravatar... Eric Dec 30, 2008 1:09 AM
# re: Identicons as Graphical Digital Fingerprints
I wondered about the geometric avatars I kept seeing in different sites, so I googled it and found out they were identicons...
Requesting Gravatar... Paul Jan 02, 2009 6:02 AM
# re: Identicons as Graphical Digital Fingerprints
Love the concept. But I guess monsters are very much a guy thing. I'm sure an organic FlowerID or GreenEarthID would be popular.
Requesting Gravatar... Curt Jan 08, 2009 11:19 PM
# re: Identicons as Graphical Digital Fingerprints
Interesting
Requesting Gravatar... skvmb Jan 12, 2009 12:48 PM
# re: Identicons as Graphical Digital Fingerprints
these should be more widely used
Requesting Gravatar... Eugene ibn Rahman Jan 26, 2009 6:20 PM
# re: Identicons as Graphical Digital Fingerprints
I love these so much! Can I have them?
Requesting Gravatar... test Feb 03, 2009 4:45 AM
# re: Identicons as Graphical Digital Fingerprints
just testing
Requesting Gravatar... Chris R. Feb 27, 2009 4:00 AM
# re: Identicons as Graphical Digital Fingerprints
There really needs to be a "see your identicon" page somewhere...
Requesting Gravatar... Crazy Old Knitter Dec 27, 2009 11:07 AM
# re: Identicons as Graphical Digital Fingerprints
hey this is pretty cool!
Requesting Gravatar... Shay Dec 27, 2009 3:19 PM
# re: Identicons as Graphical Digital Fingerprints
It's funny, I was reading some comments on a blog, and noticed interesting kaleidascopic icons next to each post. It was clear by the nature of the topic that the people replying weren't registered users, yet they each had unique icons (including the reply I made). I saw that it was useful for distinguishing users, and figured that they might be based on the hash of the user's name. Sure enough, one person who replied several times had the same icon (I suppose it could have been based on his IP address). In the URL for one of the images I saw the word "identicon", and confirmed my hunch. It's a great idea, and an enjoyable visual implementation as well.
Requesting Gravatar... wowdy Jan 24, 2010 8:02 PM
# re: Identicons as Graphical Digital Fingerprints
True colors shining... :)
Requesting Gravatar... wowdy Jan 24, 2010 8:04 PM
# re: Identicons as Graphical Digital Fingerprints
I like my turbine! Lovely.
Requesting Gravatar... Arne Babenhauserheide Feb 15, 2010 6:30 PM
# re: Identicons as Graphical Digital Fingerprints
Sounds like a great idea - and they look nice, too!

Many thanks for the info.
Requesting Gravatar... loopy Feb 27, 2010 11:22 AM
# re: Identicons as Graphical Digital Fingerprints
wonder what mine looks like...
Requesting Gravatar... Curious Orange Mar 10, 2010 10:03 PM
# re: Identicons as Graphical Digital Fingerprints
I always wondered what they represented on your blog.
Requesting Gravatar... Rob Apr 09, 2010 5:45 AM
# re: Identicons as Graphical Digital Fingerprints
I came. I left my mark. I went.
OK, I just want to see my Identicon.
Requesting Gravatar... Greg Apr 13, 2010 10:21 PM
# re: Identicons as Graphical Digital Fingerprints
show me the money
Requesting Gravatar... Paolo May 10, 2010 5:02 PM
# re: Identicons as Graphical Digital Fingerprints
Naaaiiiiice :)
Requesting Gravatar... jaewoong May 20, 2010 3:43 PM
# re: Identicons as Graphical Digital Fingerprints
just testing! thx
Requesting Gravatar... Esde May 26, 2010 11:50 PM
# re: Identicons as Graphical Digital Fingerprints
Just testing
Requesting Gravatar... Ian Woollard May 27, 2010 3:56 AM
# re: Identicons as Graphical Digital Fingerprints
Does it Gravatar 4 me? (taps foot impatiently)
Requesting Gravatar... gryff Jun 05, 2010 3:39 AM
# re: Identicons as Graphical Digital Fingerprints
I prefer to use OpenId. Email is not so interesting.
Requesting Gravatar... Mike Jun 14, 2010 3:03 AM
# Triangular, pntagonal, etc identicons
Hi all,

I've been working on an enhancement to identicons. My version is able to rotate the identicon, and generate triangular, pentagonal, hexagonal and septagonal identicons.

For a preview, check out http://www.sambira.com/identicons.png

Anyone like to to help me offload this into the WWW? Will share the credit.
Get in touch at michael.muriithi[at]yahoo[dot]co[dot]uk
Requesting Gravatar... james Jun 23, 2010 7:19 AM
# re: Identicons as Graphical Digital Fingerprints
I think this is really cool idea.
Requesting Gravatar... royalsearcher.com Jun 29, 2010 9:15 PM
# re: Identicons as Graphical Digital Fingerprints
Thank you that was very helpful
Requesting Gravatar... . Jul 13, 2010 1:49 AM
# re: Identicons as Graphical Digital Fingerprints
to be honest i'm not sure i like my IP address being identified by an image, even though it's only a hash value, its still anti-privacy
Requesting Gravatar... Dave Bacher Jul 13, 2010 9:39 AM
# re: Identicons as Graphical Digital Fingerprints
@.: I'm sure I don't like it.

There is an existing table that converts MD5 back into IP v4 address (turned up in Google). Even barring that, it would be computationally trivial to make one.

Even without that though, the MD5 hash of the IP address is the same on every site. And so it appears in the text that is indexed by Google on every site. and so a search for it ought to turn up the same information as if the IP address were posted unobfuscated by all those sites.

Even if you added a layer of redirection, images are often normalized in indexes now. Color Lookups are flattened and sorted, and then pixel data are compared -- not just hashes of the binary file. So the image itself -- the actual pixel data -- creates a cross site correlation for a given IP address, that is searchable.

Also, they don't handle a user connecting through multiple IP addresses, or any communal/shared IP address, and so there's an issue there.

It would be appropriate, however, to do this for site operators or people in similar capacities. (i.e. comment moderation, etc.) I just think doing it anywhere the search robots can see it is a fundamentally bad idea.

Requesting Gravatar... auzi Jul 22, 2010 1:45 AM
# re: Identicons as Graphical Digital Fingerprints
aaaww.. i wanna see mine!
Requesting Gravatar... chiara Jul 29, 2010 11:19 PM
# re: Identicons as Graphical Digital Fingerprints
just curious :)
Requesting Gravatar... chiara Jul 29, 2010 11:21 PM
# re: Identicons as Graphical Digital Fingerprints
nice!
Requesting Gravatar... Max Jul 31, 2010 5:59 AM
# re: Identicons as Graphical Digital Fingerprints
Trying out.
Requesting Gravatar... hilongos Aug 18, 2010 12:47 PM
# re: Identicons as Graphical Digital Fingerprints
Sometimes you can set your own fingerprint via putty. but still ill try this one. thank you
Requesting Gravatar... JeSvS Sep 14, 2010 3:40 PM
# re: Identicons as Graphical Digital Fingerprints
hmmm another curious, here ;)
Requesting Gravatar... andrea Sep 18, 2010 12:24 AM
# re: Identicons as Graphical Digital Fingerprints
curios about the mine
Requesting Gravatar... w Sep 26, 2010 12:17 PM
# re: Identicons as Graphical Digital Fingerprints
!!!!
Requesting Gravatar... MD Sep 27, 2010 11:40 AM
# re: Identicons as Graphical Digital Fingerprints
Just wondering what mine looked like!!!
Comments have been closed on this topic.