Bonsoir tous,
Depuis maintenant plusieurs mois je suis à créer mes petits jeux flash de bière, je suis souvent venu ici pour divers problème avec mes codes php et as, j'ai toujours eu des réponses, sa c'est le top ici
Avant de lancer mon petit site de jeu, je vous le dit de suite c'est pas un site de jeu pour gagner des truc, c'est juste pour le fun, y a rien a acheter, le but du jeu est de faire les meilleurs scores possible contre les autres joueurs et joueuses de bière !
Bref j'en suis rendu à la fin, mais je rencontre un énorme problème
La sécurisation des scores.... sniff snifff et re snifff
Déjà j'ai fait une première sécu :
------------------------------------------------------------------------------
Dans mon jeu flash, j'ai mis un mot qui est ensuite crypté en md5.
Au moment de l'envoie du score, je prend le mot + le score + le pseudo et je met tout cela en md5.
J'envoie ensuite dans mon php pour faire les vérifications.
Je reprend le score, le pseudo et ma clé de cryptage.
Je refait un cryptage du pseudo + le score et enfin je compare les deux, après plusieurs test cela fonctionne.
------------------------------------------------------------------------------
Mais voila, es-que cela est assez ?
Alors j'ai chercher un peu sur le net, et je suis tomber sur ce
POST
Fladnag l'auteur du message, explique bien la solution, elle date de 2005 !
Mais en faite je comprend pas trop la façon de faire réellement.
---------------------------------------------------------------------------
* Une page charge le fichier flash
_______________________________
Ok pas de problème j'ai compris
* Lors de l'initialisation, le fichier flash va charger une page PHP qui va contenir des variables. Parmis celle ci, un identifiant unique qui identifiera "la session flash" et qui sera généré par php (avec un md5(time()) ou tout autre moyen que tu souhaite)
_______________________________
Ok la aussi pas de souci
* Lors de l'envoi du score, Flash renvoi cet identifiant dans la requete (ou bien crypte une donnée avec cette information, qui sert en sorte de "clé de cryptage"
_______________________________
Ok
La page PHP qui recoit le score peut maintenant faire les verifications suivantes parmi celles ci selon la technique employée :
* La clé de cryptage existe (il faudra penser a la sauvegarder dans une base de données auparavent)
* Si une clé de cryptage a été utilisée pour renvoyer un score, on peut supposer que c'est une tentative de piratage, donc annuler le score (voir annuler tout les scores du joueur si tu as un moyen de l'identifier ;o) : Cela suppose de changer de clé de cryptage a chaque "nouvelle partie", mais Flash peut tres bien en demander une a PHP n'importe quand, donc pas de probleme
_______________________________
Alors voila, la je comprend pas trop, mais carrément pas sniff lol
Avant d'envoyer le score, on vérifier que la clé existe dans la base de donnée, ok, mais pour la comparer à quoi ?
Surtout s'il on garde cette clé.
Voila je voulais vos lumières sur toute c'est question, savoir si ma première méthode est bonne et comprend la méthode de Fladnag, que je salut au passage s'il voie un jour ce post, merci mec
Merci à vous et bonne soirée.
Edit : Après recherche, j'ai lu que apparemment il faudrait plutôt utiliser le SHA1 que le MD5, hum encore un prob, le s'ils on créer le SHA1 c'est pour remplacer le MD5 ?
Merci de vos réponses.