Im looking to make my own implementation of these Identicons or Gravatars found here on StackOverflow. Most questions I could found was about utilizing existing 3rd party libraries, especially those hooked with [Gravatar](http://en.gravatar.com/).

[![alt text](https://i.stack.imgur.com/DE8h5.jpg)](https://i.stack.imgur.com/DE8h5.jpg)  

(source: [levitated.net](http://www.levitated.net/daily/9bExamples.jpg)) 

After some searching I stumbled upon [this page](http://www.levitated.net/daily/lev9block.html). And from the looks of it, its not that hard. What needs to be randomly picked is:

* One shape to be in middle
* One shape for the corners
* One shape for the edges
* 2 colors
* A rotation for all shapes except for the middle one

Seed a randomizer with the md5 hash value and start retrieving random numbers. Then, add (pi/2)\*i to each shape around the edge to create that cool radial symmetry effect.

You could say Im thinking in text here, but I want to know if Ive misunderstood anything. Also, if you have any thought one what more could be randomized to increase the diversity. Will the look or feel be "broken" if I start changing the:

* Scale of the shape?
* And then maybe also the offset in position of the shape within the block?
* Picking more than two colors? Two colors per block with the same radial symmetry?