With this function a random integer is inserted in the e-mail address (gmailuser@gmail.com becomes gmailuser+randominteger@gmail.com) and then the hash value is computed. The hash value is used to get the corresponding identicon from the Gravatar website. This approach can address also some privacy concerns.
generatePic[email_] :=
Module[{emailparts, randN, input, inputhash, img},
emailparts = StringSplit[email, "@"];
randN = StringJoin["+", ToString[RandomInteger[99999]], "@"];
input = emailparts[[1]] <> randN <> emailparts[[2]];
inputhash = IntegerString[Hash[ToLowerCase[input], "MD5"], 16, 32];
img = Import[
"http://www.gravatar.com/avatar/" <> inputhash <>
"?s=128&d=identicon&r=PG"];
{img, input}
]
If we want to generate some identicons based on a specific e-mail address we just do this:
Grid[Table[generatePic["gmailuser@gmail.com"], {3}]]

Once we find an identicon we like, we just need to copy/paste the corresponding e-mail address into the e-mail field of the Stack Exchange profile.
Update for Mathematica versions before 8
It seems that older Mathematica versions include the enclosing quotes "" when it generates the hash, but there seems to be a workaround.
StringHash[string_String, type_: "MD5"] :=
Module[{stream, file, hash}, stream = OpenWrite[];
WriteString[stream, string];
file = Close[stream];
hash = FileHash[file, type];
DeleteFile[file];
hash]
And then:
generatePic[email_] :=
Module[{emailparts, randN, input, inputhash, img},
emailparts = StringSplit[email, "@"];
randN = StringJoin["+", ToString[RandomInteger[99999]], "@"];
input = emailparts[[1]] <> randN <> emailparts[[2]];
inputhash =
IntegerString[StringHash[ToLowerCase[input], "MD5"], 16, 32];
img = Import[
"http://www.gravatar.com/avatar/" <> inputhash <>
"?s=128&d=identicon&r=PG"];
{img, input}]