1. IMPORTANT : Nouvelles mesures de sécurité - 2. Règles pour obtenir de l'aide dans les forums de support - 3. Restrictions des droits pour le groupe "Support suspendu"

Il est obligatoire de respecter les Règles de MyBB.fr : Version abrégée ou Version complète pour obtenir du support sur nos forums.

Les membres ayant un site/forum contrevenant aux règles de MyBB.support seront placés dans le groupe "Support suspendu" et ne bénéficieront plus du support du staff. Nous recommandons aux autres membres d'agir de même. Il ne s'agit pas d'un bannissement, le membre retrouvera son statut "normal" dès que sa situation sera conforme aux règles.

Nouveau : un Wiki en français : plus de détails.
Avant de soumettre votre problème, consultez-le, ainsi que la FAQ, sans oublier le moteur de recherche interne.


Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Cryptage des password ?
Mots-clés » cryptage, password
15-01-2007, 10:42,
#6
RE: Cryptage des password ?
bon, je viens de jeter un oeil dans le code et je pense que inc/functions_user.php peut t'intéresser, il contient tout ce qui permet de gérer le login.
Code :
/**
* Checks a password with a supplied uid.
*
* @param int The user id.
* @param string The md5()'ed password.
* @param string An optional user data array.
* @return boolean|array False when not valid, user data array when valid.
*/
function validate_password_from_uid($uid, $password, $user = array())
{
    global $db, $mybb;
    if($mybb->user['uid'] == $uid)
    {
        $user = $mybb->user;
    }
    if(!$user['password'])
    {
        $query = $db->query("SELECT uid,username,password,salt,loginkey FROM ".TABLE_PREFIX."users WHERE uid='".intval($uid)."' LIMIT 1");
        $user = $db->fetch_array($query);
    }
    if(!$user['salt'])
    {
        // Generate a salt for this user and assume the password stored in db is a plain md5 password
        $user['salt'] = generate_salt();
        $user['password'] = salt_password($user['password'], $user['salt']);
        $sql_array = array(
            "salt" => $user['salt'],
            "password" => $user['password']
        );
        $db->update_query(TABLE_PREFIX."users", $sql_array, "uid = ".$user['uid'], 1);
    }

    if(!$user['loginkey'])
    {
        $user['loginkey'] = generate_loginkey();
        $sql_array = array(
            "loginkey" => $user['loginkey']
        );
        $db->update_query(TABLE_PREFIX."users", $sql_array, "uid = ".$user['uid'], 1);
    }
    if(salt_password(md5($password), $user['salt']) == $user['password'])
    {
        return $user;
    }
    else
    {
        return false;
    }
}
et la fonction salt_password est:
Code :
function salt_password($password, $salt)
{
    return md5(md5($salt).$password);
}
Ca nous donne donc md5(md5($salt).md5($pass))



Messages dans ce sujet
Cryptage des password ? - Duddy - 14-01-2007, 0:16
RE: Cryptage des password ? - Duddy - 14-01-2007, 15:54
RE: Cryptage des password ? - Duddy - 14-01-2007, 18:06
RE: Cryptage des password ? - CrazyCat - 15-01-2007, 10:42
RE: Cryptage des password ? - Duddy - 15-01-2007, 13:10
RE: Cryptage des password ? - Duddy - 16-01-2007, 20:36
RE: Cryptage des password ? - Duddy - 16-01-2007, 22:43
RE: Cryptage des password ? - Duddy - 17-01-2007, 12:18



Utilisateur(s) parcourant ce sujet : 3 visiteur(s)

Contact | MyBB.support | Retourner en haut | Retourner au contenu | Version bas-débit (Archivé) | Syndication RSS
 Utilitaire de traduction fourni par Regentronique