Если у посетителя наличествует некий ключ или пароль (ключ = md5(пароль)), то
собираешь джаваскриптом значения всех полей в форме в строку ( формат приблизительно название_поля1=escape(значение_поля1)&название_поля2=escape(значение_поля2)&... ), шифруешь вышеозначенным ключом с помощью симметричного шифра (des3, aes), помещаешь в скрытое поле, предыдущие значения полей очищаешь.
Когда приезжает на сервер, обратная процедура (берешь из скрытого поля, расшифровываешь тем же ключом, что указал пользователь, разбираешь на части).
Если у посетителя нет ни ключа, ни пароля, передаешь вместе с формой открытый RSA ключ, опятьтки собираешь все поля, шифруешь открытым ключом. Кады приезжает на сервер, расшифровываешь закрытым ключом. Правда, тут уже о man-in-the-middle надо заботиться, да и тормозить реализация RSA на джаваскрипт у тебя будет конкретно.
|