Forum TourDeJeu · Règles du forum | Aide Recherche Membres |
Bienvenue invité ( Connexion | Inscription ) | Recevoir à nouveau l'email de validation |
Loc_n_lol |
Ecrit le : Lundi 25 Août 2008 à 17h23
|
Newbie Groupe : Membre Messages : 4 |
Bonjour tout le monde.
Ca fait quelques années que j'ai dans l'idée de faire mon jeu moi aussi, et il y a un peu plus d'un mois j'ai décidé de mettre les mains dans le cambouis, commencer à coder un site, tout ça. Actuellement j'ai -entre autres choses- une interface qui permet à des joueurs de s'inscrire avec un login, un mot de passe et d'autres informations, puis de les utiliser pour se loguer sur le site -via un formulaire html- et accéder à d'autres parties du site. Seulement, à ce que je comprend, le mot de passe de l'utilisateur circule en clair sur le réseau... Et là, je ne vois pas comment crypter les mots de passe avant qu'ils ne soient envoyés sur mon serveur (pour l'instant, ma machine ), et je suis bien embêté... Et vous, vous faites comment ? |
khiguard |
Ecrit le : Lundi 25 Août 2008 à 17h54
|
Ouf Groupe : Membre Messages : 732 |
Il faut que tu crypte les mot de pass en MD5
En fait, lors de la saisie du pass lors de l'inscription. Tu code le pass en MD5 dans la base de donnée. ne jamais sauvé par toi même les mot de passe des utilisateurs, toujours penser à les crypter. Et puis au loging de l'utilisateur, tu compare le MD5 du pass qu'il te transmet par le formulaire de log a ce que tu a en base de donnée. Cherche sur php.net, tu trouvera ton bonheur pour avoir plus d'information sur le cryptage des information: http://be.php.net/manual/fr/function.md5.php Bonne chance pour ton projet. @+ -------------------- Alonya : Jeu de gestion/stratégie par partie.
Sombre Destin : Jeu de gestion/stratégie massivement multi joueur. Antre du Cercle des Dragons Noirs: portail jdr | G-nerik: Système générique de jdr |
Loc_n_lol |
Ecrit le : Lundi 25 Août 2008 à 18h06
|
Newbie Groupe : Membre Messages : 4 |
Salut.
Merci beaucoup pour ta réponse, mais je ne suis pas sur que ça réponde vraiment à ma question. Je m'explique : Actuellement, j'ai bien une fonction qui crypte mes mots de passe (c'est pas du md5, faudra sans doute que je revois ça ) et c'est bien la valeur cryptée qui est enregistrée dans ma DB, c'est bien la-dessus que se fait la comparaison, jusque-là pas de problème. Le problème qui se pose à moi, c'est que le mot de passe est crypté par mon serveur à la réception du formulaire, pas par le client. Autrement dit, entre le client qui tape son mot de passe, et mon serveur qui le crypte et fait l'authentification, le mot de passe circule en clair sur le réseau. Donc soit y a un truc que j'ai mal interprété, soit je me fait du soucis pour rien (risque négligeable ?), soit y a vraiment un truc qui ne colle pas quelque part. J'ai lu que "l'authentification http" pourrait résoudre ce problème, mais apparemment ça consiste en une boite de dialogue toutemoche, et j'ai jamais vu ça utilisé sur aucun "JCLN" si c'est bien le terme qu'on utilise |
Manest |
Ecrit le : Lundi 25 Août 2008 à 20h21
|
Ouf Groupe : Membre Messages : 503 |
Idem, je vois pas bien ce que tu risques en envoyant les infos en clair sur ce type de produit.
-------------------- |
Loc_n_lol |
Ecrit le : Lundi 25 Août 2008 à 22h50
|
Newbie Groupe : Membre Messages : 4 |
Non c'est bon, si vous dites que c'est ok, je vais pas chercher plus loin
Merci pour tout. |
blueman |
Ecrit le : Mardi 26 Août 2008 à 02h45
|
Kid Groupe : Membre Messages : 13 |
Et si jamais tu oubies to propre mot de passe stocké en md5, tu pourras toujours utiliser une librairie de paires schaines / md5 comme celui la:
http://tools.benramsey.com/md5/ En tout cas tu as raison de prendre en compte la sécurité dès la phase de conception de ton jeu. Mais as tu au moins rédigé un document de game design avant de coder... ? -------------------- |
Loc_n_lol |
Ecrit le : Mardi 26 Août 2008 à 03h10
|
Newbie Groupe : Membre Messages : 4 |
Pas en tant que tel (disons, pas un truc que j'irais présenter à quelqu'un à qui je voudrais vendre mon projet) mais j'ai un dossier rempli de documents textes, tableaux excel et autres images détaillant divers (la plupart?) points du jeu, et un petit paquet des notes sur papier traditionnel aussi.
Mais bon j'en suis pas encore à un stade assez avancé pour mettre ça en public, pour l'instant ma démarche est plutôt : je le fait parce que ça me plait, j'irais jusqu'au bout (et au delà !) si je peut, et au pire si ça foire j'aurais quand même appris plein de choses utiles. |
Sybler |
Ecrit le : Vendredi 29 Août 2008 à 19h37
|
Ouf Groupe : Membre Messages : 453 |
Si vous utilisez du MD5, assurez vous d'utiliser un SALT.
Car sinon, en même pas 1h c'est très facile de décrypter l'ensemble (95%) des mots de passe de la base de données. -------------------- |
RaphAstronome |
Ecrit le : Vendredi 29 Mai 2009 à 21h55
|
||
Kid Groupe : Membre Messages : 17 |
C'est la raison d'être du HTTPS. Pour les visiteurs je propose l'option par contre après on revient en HTTP normal. Si c'est un admin il reste en HTTPS car la sécurité devient importante. Sinon il est préférable d'utiliser le SHA512 plutôt que MD5. |
||
Guile |
Ecrit le : Mardi 02 Juin 2009 à 20h02
|
Pro Groupe : Membre Messages : 66 |
Vous avez des sites qui nécessitent ce genre de protection?
-------------------- AvP Evolution : jeu de rôle au gameplay simple et à l'ambiance surchauffée!
Terres d'Alliances : la Campagne On-Line. Un jeu de stratégie médiéval... Mais qui n'a jamais été démarré |
Akira |
Ecrit le : Lundi 25 Octobre 2010 à 13h56
|
Newbie Groupe : Membre Messages : 3 |
Niveau sécurité, je te conseille de ne pas faire que du md5() ou du sha1(), je pense que c'est mieux de se tourner vers la fonction hash_hmac() de PHP, ça permet d'utiliser des algorithmes plus poussés et mettre en place un système de clé privée, au niveau de la sécurité c'est le top !
Ensuite à toi de mettre en place un système de grain de sel pour encore plus de sécurité. A cela, et c'est ma petite touche perso de sécurité, j'ajoute à ma fonction de hashage un petit substr($hash, 8, 64), comme si jamais le vil "pirate" qui a réussi à taxer ta base de donnée, récupéré tes hash et réussis à les inverser se retrouvera avec des mots de passe qui ne reflètent pas le vrai mot de passe, car le hash stocké aura été tronqué... héhé ! Ensuite pour plus de sécurité, je n'utilise jamais les auto_increment pour les utilisateurs, pourquoi parceque dans n'importe quelle requete il est facile pour le hacker de déterminer l'id d'un autre joueur, je préfére donc utiliser un ID pour l'utilisateur qui aura été généré par le temps en microsecondes + une clé aléatoire + le pseudo du membre et tout ça hashé en sha1 puis tronqué pour nous sortir un ID d'autant de caractères que tu veux ^__^, encore une fois ce sont mes astuces de sécurité, c'est largement pas infaillible mais ça rajoute du piment à celui qui voudrait du mal à ton jeu Ce message a été modifié par Akira le Lundi 25 Octobre 2010 à 13h56 |