Hi @ll,
ich bastel auch garde so zum Spass ein Browsergame - ist auch ne gute Übung um sich J2EE beizubringen.
Aktuell beschäftig mich die Frage wie ich Cheaten in dem Browsergame verhindern kann.
Da in der Regel User-Actionen über Formulare an den Server übertragen werden, könnte man cheaten wenn man weiß wie sich die Parameter-Liste der URL aufgebaut wird.
Um das zu verhindern dachte ich daran mir ein ActionTransport-Objekt zu schaffen in dem die Parameter gespreichert werden. Dieses Objekt wird dann in einer Session gespeichert und an eine ID gebunden. Nur diese ID soll dann per Get übertragen werden. Im Controller (Servlet) wird dann über die ID aus der Session das ActionTransport-Objekt geholt und verarbeitet.
Was haltet ihr von dem Ansatz?
Es gibt doch sicherlich schon Lösungen für dieses Problem. Kennt ihr welche?
Ich frage nur - weil ich Angst habe im mit meinem Ansatz vielleicht was viel zu Kompliziertes zu implementieren und es vielleicht viel bessere lösungen gibt. Man könnte z.B.: Die Get-Parameter synchron verschüsselt übertragen oder so....
Gruß,
Andreas
ich bastel auch garde so zum Spass ein Browsergame - ist auch ne gute Übung um sich J2EE beizubringen.
Aktuell beschäftig mich die Frage wie ich Cheaten in dem Browsergame verhindern kann.
Da in der Regel User-Actionen über Formulare an den Server übertragen werden, könnte man cheaten wenn man weiß wie sich die Parameter-Liste der URL aufgebaut wird.
Um das zu verhindern dachte ich daran mir ein ActionTransport-Objekt zu schaffen in dem die Parameter gespreichert werden. Dieses Objekt wird dann in einer Session gespeichert und an eine ID gebunden. Nur diese ID soll dann per Get übertragen werden. Im Controller (Servlet) wird dann über die ID aus der Session das ActionTransport-Objekt geholt und verarbeitet.
Was haltet ihr von dem Ansatz?
Es gibt doch sicherlich schon Lösungen für dieses Problem. Kennt ihr welche?
Ich frage nur - weil ich Angst habe im mit meinem Ansatz vielleicht was viel zu Kompliziertes zu implementieren und es vielleicht viel bessere lösungen gibt. Man könnte z.B.: Die Get-Parameter synchron verschüsselt übertragen oder so....
Gruß,
Andreas