Bob wrote:
Is there an existing filter that could determine if a username@ is 60% or more mis-spelled as compared to real usernames? 60% is arbitrary and would be configurable. If so, that would serve to make a fuzzy honeypot filter for dictionary spam.
There are a couple of modules on CPAN which do something like this, called Text::Metaphone and newer and better Text::DoubleMetaphone. They both convert a word into something like the Soundex algorithm that was invented for the US Census. They produce a value for what a given word "sounds like" so that similarly pronounced words have similar values.
You'd have to run this against your user list and store the values in a table, then run it against the incoming values and look for that match in your table. I can't say I think it will be much use, however, since most dictionary attacks are just that, words chosen randomly from a dictionary.
John