Как защитить GAE серверную логику вычислений?

Допустим, у меня есть 100 полей в форме HTML. Когда все поля заполнены, некоторая оценка вычисляется и показывается пользователю (скажем, значение оценки от 0 до 3000).

Когда пользователь изменяет значение в каком-либо поле, мы показываем ему диапазон значений (0-1000, 1001-2000, 2001-3000), без подробной оценки. Но после нажатия кнопки «Отправить» отображается точный счет.

Теперь мне нужно защитить логику - поэтому пользователи не должны понимать, как каждое поле влияет на оценку. Кроме того, пользователи не должны иметь возможность использовать какую-либо программу, чтобы «поиграть» со значениями и посмотреть, как меняется оценка.

Я думаю о следующем подходе:

использовать сеансы;сохранить на стороне сервера текущее значение оценки;при изменении значения в одном поле отправьте запрос на сервер с измененным именем поля и новым значением;на стороне сервера проверить, когда был отправлен предыдущий запрос, если разница во времени слишком мала, отклонить запрос;сервер отвечает новым диапазоном и сохраняет новое значение;когда нажата «Отправить», сервер отвечает серверным значением оценки (не пересчитывайте его, принимайте как есть). Не отвечайте на это слишком часто.

Есть ли другие (лучшие) подходы?

Ответы на вопрос(2)

Ваш ответ на вопрос