Этот код всеголиш немного усложнит задачу.
ничего угадывать ненадо, надо просто пропарсить страницу и выдрать значение нужного поля.
если копать в сторону WWW:Mehcanize (perl) через LWP немного больше телодвижений делается элементарно
1. парсим страницу и ищем <input какой нам нужен
2. заполняем поля
3. отсылаем форму
лично у меня создание бота против такой системы заняло бы минут 10-15 (наспор? ;-))
но коненчо от скрипт-кидсов спасёт.
если по существу, то систему надо делать из расчета чтобы бот не мог прочитать\запарсить.
например изменять имена полей (например шифровать а часть ключа передавать в хидден поле)
либо повесить на крон скрипт который будет менять названия полей раз в день например.
но пока боты не научились читать картинки - это самая эфективная защита от спама.