GAPTCHA - Some Small Updates
Update: The source is now live!
Tonight I made a couple of little mods to my Gaptcha control.
First, I stopped just base64 encoding the names of the images that needed to be selected in the form. It was extremely easy to crack :) It now encrypts the information first, and THEN base64 encodes it.
Second, I made it a little user-friendlier for when you click the wrong pictures. Before, you'd lose your comment (whoops!). Now, it leaves the comment text there, and scrolls down to that area of the page and shows a nice big message about how got it wrong and need to try again. A little birdy told me that he wants to steal my code for this feature :)
I've also started work on making the validation timeout too. Some sites have terrible timeouts (a small number of seconds). Me, I'm not that bad. I think 10 minutes is plenty. Do you agree? Should it be more? I don't think any less is important - by the time a spammer could crack it so that they figure out which images were needed etc, and save the post data so they can resubmit it every day, the ten minutes will be about up anyway. I haven't pushed this live yet, as I'm still thinking of what details I need to pay attention to, but I am storing a timeout of 10 minutes in my encrypted info in the first change above - so I've proved that part works anyway :) I'm just not enforcing it yet.
So that's where I'm at. I've had some great feedback too in the last day - thanks to everyone who has commented (especially Bill who scared me a little too much :) It's nice to know that people seem to think I've had a good idea too. All the feedback is valuable (bad and good!) so keep it coming please!