Mammouth du PHP |
2278 Messages
08 avr. 2014, 16:30
pour développer moogli:
Connexion : l'utilisateur fournit son identifiant et son mot de passe.($my_pass)
La requete ressemble à ça :
select identifiant, mot_de_passe from table where identifiant = mysql-real_escape($identifiant) ;
Si tu obtiens un résultat non vide ( 1 ou plusieurs lignes) si une des lignes contient $my_pass : connexion acceptée.
La force du mot de passe dépend de sa conception etnil faut uhne semence relativement longue, qu'il faut strocker quelque part.
iL EXISTE UNE AUTRE SOLUTION :
/**
* creer_hachage($mot)
* \brief hache le mot de passe
* \version adaptée de la fonction de simans dot net sur fr2.php.net/manual
* \param $mot string le mot à crypter
* \return le mot crypté(60 cars)) et la semence (22 cars)) utilisée concaténée à la fin.
*/
function creer_hachage($mot )
{
$force = "08";
$semence = "";
for ($i = 0; $i < 22; $i++)
{
$semence .= substr("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", mt_rand(0, 61), 1);
}
return crypt($mot, "$2a$".$force."$".$semence).$semence;
}
ET
/*vERIFIER_HACHAGE*/
Function verifier_hachage($mot_clair, $mot_code)
{
$force = "08";
if (substr ($mot_code, 0, 60) == crypt($mot_clair, "$2a$".$force."$".substr($mot_code, 60)))
{
return true;
}
else
{
return false;
}
}
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD