Bonjour. visiteurs jour : 102
Au président
Beauté santé
Infos loisirs
Ensemble
Jean
Informatique
Einstein
Santé corona
Les joies de l'informatique et de l'internet !
Accueil Excel Informatique Infos Internet Forum Javascript logiciels Programation Sites RJ Vidéo Plan du site
MYSQL dispose de la fonction PASSWORD qui code les mots de passe sur 50 caractères (ça fait beaucoup ) Au moment de la saisie activer la fonction password : Lors d'une requête d'accès à la table coder le mot de passe envoyé de la mlême façon : $query = "SELECT * FROM table1 WHERE login='$login' AND pass =PASSWORD('$pass')"; Autre exemple : Générer un hash dune chaine avec un « grain de sel ». : function hashPass($pass){ return md5(1234567890′ . $pass . 1234567890; }
Dans les requêtes de création/modification du mot de passe et de vérification des identifiant/mot de passe fournis, on utilise cettefonction : SELECT * FROM tableTest WHERE login = $login AND pass = hashPass($pass)
(PHP 5 >= 5.5.0) 60 caractères et ça devrait augmenter dans les années qui viennent ! <?php pw_crypt = password_hash("rasmuslerdorf", PASSWORD_DEFAULT); echo pw_crypt -> $2y$10.vGA1O9wmRjrwAVXD98HNOgsNpDczlqm3Jq7KnEd1rVAGv3Fykk1a ?> Le cost et le salt peuvent être gérés en options : $options = [
'cost' => 11,
'salt' => mcrypt_create_iv(22, MCRYPT_DEV_URANDOM),
];
echo password_hash("rasmuslerdorf", PASSWORD_BCRYPT, $options)."n";
Ne jamais définir un salt statique. Tester le meilleur "cost" sur son serveur : Le "cost" le plus élevé possible sans trop ralentir le serveur.
Un temps de traitement ≤ à 50 millisecondes peut-être accepter, ce qui est une bonne base pour les systèmes gérants les identifications
de façon intéractive
$timeTarget = 0.05; // 50 millisecondes
$cost = 6;
do {
$cost++;
$start = microtime(true);
password_hash("test", PASSWORD_BCRYPT, ["cost" => $cost]);
$end = microtime(true);
} while (($end - $start) < $timeTarget);
echo "Valeur de 'cost' raisonnable: " . $cost . "n";
?>
L'exemple ci-dessus va afficher
:
Valeur de 'cost' raisonnable: 10
(environ 8 à 11 selon votre serveur Source php.net et blog.pascal-martin
Crypter les mots de passe pour les stocker dans les bases de données
Source Webmaster-Freelance.com
En PHP
La fonction password_hash() crée une clé de hachage en utilisant un algorithme de hachage fort en une pass. Elle est compatible avec la fonction crypt(). Un mot de passe haché par la fonction crypt() peut être utilisé avec la fonction password_hash().
Il faut stocker le résultat dans au moins