Bonjour,
je souhaite crypté les mots de passe utilisateur dans la base de données. Quel est le meilleur cryptage le plus sécurisé? On parle toujours du md5 (qui est du hashage), mais il me semble qu'il a été cassé?
Merci pour vos conseils.








Bonjour,
je souhaite crypté les mots de passe utilisateur dans la base de données. Quel est le meilleur cryptage le plus sécurisé? On parle toujours du md5 (qui est du hashage), mais il me semble qu'il a été cassé?
Merci pour vos conseils.
Pour le md5 on trouve surtout beaucoup de traducteur. Des bases de données qui permettent de convertir des hash md5 si ce sont des mots connus.
La meilleure méthode est à mon avis un hash type sha (ou autre) couplé à un salage avec une clé "secrète".
bonjour,
Concernant le md5, il existe divers outils (ex: Rainbow Table) qui permettent de mettre à mal un mot de passe de ce type...
Pour en limiter le cassage d'un mot de passe, il faut:
-utiliser un mot de passe robuste
-utiliser un "double cryptage", qui utilise le md5 et le sah1.
exemple:
$password=htmlspecialchars(md5(sha1($password)));
Les pièges de l'Internet
Helix, réponse à une intrusion
"La plus grande gloire n'est pas de ne jamais tomber, mais de se relever à chaque chute." Confucius
"Si j'ai vu plus loin, c'est en me tenant sur les épaules de géants." Isaac Newton








Bonjour,
Avez vous un exemple de salage avec clé secrète?
Je pense donc qu'il faut utiliser sha1 avec un cryptage qui utilise unc clé?
Où conseillé vous de stocker cette clé, en base, en dur dans la page?
«$password=htmlspecialchars(md5(sha1($password))); »
pas une bonne idée...Certains casseurs de MD5 seraient capable de fournir un pass équivalent à ce qui est fourni à la fonction md5(...)...
Perso., je ferais plutôt un truc du genre :
$pass=htmlspecialchars(sha1(md5($password)));...
(C'est encore assez dur de brute forcer un sha1 mais ça va venir... Tu peux aussi penser à un sha256, ou alors tu passes en mode PKI(certifs),c'est plus compliquer mais il n'y a pas photo quant à la fiabilité)...
Stockage des Hashs, je les mettrais en DB, simplement...
Avec une PKI, tu ne dois pas t'embêter à stocker quelque chose...








grunk a tu un exemple d'un cryptage avec une clé "secrète" en php que je pourrais coupler à sha?
Merci
C'est assez simple en fait
Tu définis quelques part ta clé secrète (par exemple dans ton fichier de config)
En suite au moment d'enregistrer un mot de passe :
De cette manière , même si l'utilisateur à rentré un mot de passe du type "123" on lui à adjoint une chaine (longue et complexe de préférence) qui va venir modifier l'empreinte de "123".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $password = $_POST['pass'].$config->cle_secrete; $password = sha1($password);
C'est une version simple , après on peut imaginer diverse combinaison du genre :
Voir même une clé secrète global au site et une clé secrète propre à chaque utilisateur ce qui démultipliera le temps de calcul pour un hacker voulant cracker les mot de passe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $password = sha1($_POST['pass'].md5($config->cle_secrete))
Le but final étant de ne pas pouvoir trouver le hash d'un mot de passe via une table de comparaison , même si celui ci est simple.
La clé secrète doit évidemment être stockée à un endroit différent des mot de passes sinon , la sécurité supplémentaire est inutile en cas de vol de données par exemple.
Partager