decrypter mdp et se connecter

Par Microse, il y a 8 ans


Bonjour,

Je suis en train de réaliser une mini interface de connexion des utilisateurs ayant pour but de crypter leur mdp dans la bdd et de décrypter leur mdp pour qui se connecte, donc le cryptage du mdp de l'utilisateur marche bien et après pour qui se connecte, je voudrais décrypter son mdp des idées pour comment procéder?

Ce que je fais

Décrypter les mdp des utilisateurs pour la connection

méthode php de décryptage

public function decrypter($maCleDeCryptage="", $maChaineCrypter){ if($maCleDeCryptage==""){ $maCleDeCryptage=$GLOBALS['PHPSESSID']; } $maCleDeCryptage = md5($maCleDeCryptage); $letter = -1; $newstr = ''; $maChaineCrypter = base64_decode($maChaineCrypter); $strlen = strlen($maChaineCrypter); for ( $i = 0; $i < $strlen; $i++ ){ $letter++; if ( $letter > 31 ){ $letter = 0; } $neword = ord($maChaineCrypter{$i}) - ord($maCleDeCryptage{$letter}); if ( $neword < 1 ){ $neword += 256; } $newstr .= chr($neword); } return $newstr; } }

ma page de connexion:

<?php include_once('Default.php'); include('MVC/Vue/VueConnexion.php'); include('MVC/Controleur/Controleur_site.php'); include('Include/cleCryptage.php'); $Connexion = new Controleur("localhost", "cryptMdp", "root", ""); if(isset($_POST['sub'])) { $email = htmlspecialchars($_POST['eml']); $mdp = htmlspecialchars($_POST['mdp']); $where = array( "email" => $email, "mdp" => $mdp ); $champs = array("nom", "email", "mdp"); $seConnecter = $Connexion-> ConnexionUser($champs, $where); if($seConnecter['email'] != $email && $seConnecter['mdp'] != $mdp) { echo"<br /> <div class='ui container'> <div class='ui negative message'> <i class='close icon'></i> <p> Email ou mot de passe incorrect </p> </div> </div> "; } else { echo"<br /> <div class='ui container'> <div class='ui positive message'> <i class='close icon'></i> <p> Connexion réussite </p> </div> </div> "; } } include_once('Include/jsGeneral.php'); ?>

Ce que je veux

bien décrypter le mdp et se connecter

5 réponses

Microse, il y a 8 ans

ok merci sa marche :)

Microse, il y a 8 ans

ok Balsakup mais si je le recrypt il va donner un cryptage différent à celui déjà dans la base de donnée non?

SLK, il y a 8 ans

Salut,

ok Balsakup mais si je le recrypt il va donner un cryptage différent à celui déjà dans la base de donnée non?

Non, parce que la méthode de cryptage retournera toujours le même résultat si on lui donne toujours le même paramètre de départ.

toto --> cryptage ---> 0ff5plx324f5sdf6a99e (c'est juste pour l'exemple hein... J'ai juste rentré des chiffres et des lettre au hasard)

2 jours plus tard (ou 1 siècle),
si tu REcrypte la même chose (ici : "toto"),
alors le résultat sera à nouveau : "0ff5plx324f5sdf6a99e" (la même chose).

Just4Fun, il y a 8 ans

Sinon tu peux utiliser : password_hash() et password_verify(), c'est plus simple ^^

Balsakup, il y a 8 ans

Salut, on ne décrypte pas un mot de passe.
On crypte le mot de passe envoyé par le formulaire de connexion et on le compare au mot de passe crypté en base de données.
Si c'est égale, alors c'est bon, sinon pas bon.