2008-09-30 8 views
6

J'ai peu de connaissances de Flash mais pour un petit jeu Flash je dois stocker des scores et des essais réussis d'utilisateurs dans une base de données en utilisant PHP. Maintenant, Flash s'exécute localement sur l'ordinateur des utilisateurs et se connecte à un serveur distant. Comment puis-je me protéger contre la manipulation des scores de jeu? Existe-t-il une meilleure pratique pour ce cas d'utilisation?Communication sécurisée entre script Flash et PHP

Répondre

1

Ce que vous demandez est intrinsèquement impossible. Le jeu fonctionne sur le client et est donc complètement à la merci de l'utilisateur. La seule façon d'être sûr est d'exécuter une simulation en temps réel du jeu sur le serveur en fonction de l'entrée de l'utilisateur (mouvement de la souris, pression des touches), ce qui est absolument ridicule.

0

Comme l'a souligné ssddw, ceci est fondamentalement impossible. Le code pour envoyer le score est en cours d'exécution sur l'ordinateur de l'utilisateur, et ils ont le contrôle sur tout ce qui s'y passe. Le mieux que vous puissiez faire est de modifier périodiquement le mécanisme de cryptage de façon à ce que les manipulateurs de score prennent du temps pour le comprendre à nouveau. Vous pouvez seulement minimiser les dégâts, ne jamais les éliminer, mais sur un site comme celui pour lequel je travaille, si nous n'avons qu'une centaine de personnes qui envoient de faux scores, sur les centaines de milliers que nous voyons tous les jours, nous considérons que dans le domaine de acceptable. (Nous écrasons toujours ceux que nous attrapons, mais nous ne le considérons pas comme un problème.)

0

Vous pouvez au moins lancer des scores qui dépassent un seuil que vous jugerez légitime. Il laisse encore la place à une manipulation plus subtile d'une liste de scores élevés, mais aidera au moins à soulager la frustration évidente de voir un score impossible à atteindre en tête des classements.

Questions connexes