Bonjour,
Je suis un jeune étudiant qui va commencer seulement l'année prochaine des études d'informatique. Donc je "bricole" des sites internet si je peux appeler sa comme ça, enfin bref vu que mes études seront basées sur la construction du site internet, j'ai décidé de commencer à coder pour avoir de l'avance et avoir deux trois bases quand j'arriverai au lycée l'année prochaine.
Jusque-là aucun souci car avec les tutoriels que l'on trouve sur le net c'est relativement simple d'apprendre en autodidacte. Mais aujourd'hui j'ai malheureusement une question qui ne trouve pas de réponse (google ne m'a absolument pas aidé :/), donc je me suis tourné vers des professionnels pour tenter de répondre à ma question.
Donc enfaite un ami à un serveur privé de jeu, et il m'a demandé de lui construire un site internet, j'ai déjà pas mal avancé j'ai créé la base du site, c'est-à-dire page d'accueil, classement des joueurs, pages d'informations ainsi que le forum. Là où je bloque c'est pour la page d'inscription, c'est le système de mot de passe qui me bloque.
Voici ce que j'ai trouvé sur internet pour une page d'inscription :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| if(isset($_POST['name']) and isset($_POST['email']) and isset($_POST['mdp']) and $CONFIG['inscription'] == 1)
{
$tpl->assign('envoie_form', '1');
$pseudo=mysql_real_escape_string($_POST['name']);
$mdp=mysql_real_escape_string($_POST['mdp']);
$email=mysql_real_escape_string($_POST['email']);
$errors = '';
if(preg_match('#^[a-zA-Z0-9_\.-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$#', $email))
{
if (strlen(trim($pseudo)) > 5 && strlen(trim($pseudo)) < 11)
{
if (strlen(trim($mdp)) > 5 && strlen(trim($mdp)) < 11)
{
mysql_select_db("account");
$sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM `account` WHERE name='$pseudo'");
if (mysql_result($sql, 0, 'nb_pseudo') == 0)
{
$sql="INSERT INTO account (name, password, email) VALUES ('$name', password ('$mdp'), '$email')";
mysql_query($sql) or die (mysql_error());
}
else { $errors =5; }//5: pseudo est deja utilise
}
else { $errors =4; }//4: le mot de passe doit etre compris entre 6 et 10 caracteres
}
else { $errors =3; }//3:le name doit etre compris entre 6 et 10 caracteres
}
else { $errors =2; }//2: email invalide |
Ça fonctionne bien, mais le problème c'est que le mot de passe ne ce crypte pas de la façon dont le jeu utilise.
Voici le mot de passe "testmdp" issu du code ci-dessus :
*BE19D2CF958FCC313C82A64EC01249FFBC595299
Et voici le même mot de passe "testmdp" mais crypté de la façon qu'utilise le jeu :
0Rr7gtBnq2QHKce2G4qjtw85SQ0=
M'on ami m'a dit que le jeu utilise le cryptage :
base64_encode(pack("H*",sha1(utf8_encode)))
A vrai dire la je suis lessivé je comprends pas comment changer le script ci-dessus pour prendre en compte ce type de cryptage.
Pouvez-vous m'aider ?
Merci d'avance.
Partager