hashage password avec vb net
Bonjour

Je suis en train de faire un logiciel de creation de compte pour wow en vb net
tous va bien jusqu'ici, je rencontre un soucis lors de la creation du compte.

celui ci ne hash pas le mot de passe comme les mots de passe wow dans realmd, jai essayer plusieurs méthode que j'ai trouver sur le net
le mot de passe se hash bien mais sur wow il ne le reconnait pas donc soucis
si quelqun serai sa serai un plaisir car la jai pas mal chercher jai essayer de trop de code mais rien le mot de passe se hash mais pas comme celui de wow.

Un peu d'aide plizz merci sa serai gentil.

A bientot.
(22-10-2011 12:04)Tøxïc a écrit :  celui ci ne hash pas le mot de passe comme les mots de passe wow dans realmd

Dans les sites c'est fait de cette manière:
Code PHP :
sha_pass_hash=SHA1(CONCAT(UPPER('$username'),':',UPPER('$password'))) 

Donc essayes et post tes test peut être que tu as fais une erreur dans la syntaxe ou autre ...
Re et merci pour ta reponse:

Pour le insert into c bon sa marche la creation de compte est fonctionnelle
Citation : Dim query As String = "insert into account(username, sha_pass_hash, gmlevel, email, expansion, locked) values('" + TextEdit5.Text + "',(SHA1(CONCAT(UPPER('" & TextEdit5.Text & "'),':',UPPER('" & TextEdit12.Text & "')))) ,'" + TextEdit9.Text + "','" + TextEdit8.Text + "','" + expansion + "','" + TextEdit7.Text + "') "
mais sa coince sur update
j'edite le code :

Citation :Dim conn As New MySqlConnection
Dim expansion As String
conn.ConnectionString = "server=download-appli.no-ip.org;user id=*****;password=*****;port=3306;database=realmd;Convert Zero Datetime=true;Allow Zero Datetime=false"

conn.Open()
If ComboBoxEdit2.SelectedItem = "Burning Crusade" Then
expansion = 1
ElseIf ComboBoxEdit2.SelectedItem = "Wow Classique" Then
expansion = 0
Else
expansion = 2
End If
Dim cmd As New MySqlCommand
cmd = New MySqlCommand("update account set locked='" + TextEdit7.Text + "', username='" + TextEdit5.Text + "', sha_pass_hash= SHA1(CONCAT(UPPER('" & TextEdit5.Text & "'),':',UPPER('" & TextEdit12.Text & "'))) ,gmlevel='" + TextEdit9.Text + "', email='" + TextEdit8.Text + "', expansion='" + expansion + "' where id=" + TextEdit1.Text, conn)
cmd.ExecuteNonQuery()
conn.Close()

lorsque j'update mon mdp sa me le hash bien met wow le reconnait pas.
J'ai mis en rouge la ou jai rajouter si quelqun a une idée merci.
(22-10-2011 15:00)Tøxïc a écrit :  
Citation :cmd = New MySqlCommand("update account set locked='" + TextEdit7.Text + "', username='" + TextEdit5.Text + "', sha_pass_hash= SHA1(CONCAT(UPPER('" & TextEdit5.Text & "'),':',UPPER('" & TextEdit12.Text & "'))) ,gmlevel='" + TextEdit9.Text + "', email='" + TextEdit8.Text + "', expansion='" + expansion + "' where id=" + TextEdit1.Text, conn)

le sha_pass_hash le fail Clin

Citation :cmd = New MySqlCommand("update account set locked='" + TextEdit7.Text + "', username='" + TextEdit5.Text + "', SHA1(CONCAT(UPPER('" & TextEdit5.Text & "'),':',UPPER('" & TextEdit12.Text & "'))) ,gmlevel='" + TextEdit9.Text + "', email='" + TextEdit8.Text + "', expansion='" + expansion + "' where id=" + TextEdit1.Text, conn)
Re bonjour suite a ton message jai essayer la requete sans le sha_pass_hash :

Citation : cmd = New MySqlCommand("update account set locked='" + TextEdit7.Text + "', username='" + TextEdit5.Text + "', SHA1(CONCAT(UPPER('" & TextEdit5.Text & "'),':',UPPER('" & TextEdit12.Text & "'))) ,gmlevel='" + TextEdit9.Text + "', email='" + TextEdit8.Text + "', expansion='" + expansion + "' where id=" + TextEdit1.Text, conn)

mais celle-ci ne marche pas jai aussi tester de mettre une parenthèse avant sha1 et a la fin mais toujours rien, j'eesaie diffrente facon mais sa marche pas, une solution?
(22-10-2011 16:34)Tøxïc a écrit :  
Citation : cmd = New MySqlCommand("update account set locked='" + TextEdit7.Text + "', username='" + TextEdit5.Text + "', SHA1(CONCAT(UPPER('" & TextEdit5.Text & "'),':',UPPER('" & TextEdit12.Text & "'))) ,gmlevel='" + TextEdit9.Text + "', email='" + TextEdit8.Text + "', expansion='" + expansion + "' where id=" + TextEdit1.Text, conn)

Lol je vient de voir, il manque le champs à update tout simplement ...

Citation : cmd = New MySqlCommand("update account set locked='" + TextEdit7.Text + "', username='" + TextEdit5.Text + "', sha_pass_hash = (SHA1(CONCAT(UPPER('" & TextEdit5.Text & "'),':',UPPER('" & TextEdit12.Text & "')))), gmlevel='" + TextEdit9.Text + "', email='" + TextEdit8.Text + "', expansion='" + expansion + "' where id=" + TextEdit1.Text, conn)

Mais avec le vb net tu n'as pas un gestionnaire d'erreur ou de debug ?

EDIT: J'ai modifié le code et c'est ce que tu avais presque fais au début enfaite Pinch
Le vb net me perturbe Hihi
c bon sa marche nikel merci c'étais bein sa je te remercie!

je rencontre un autre soucis dans ma requete suivante :
Dim sql As String = "SELECT count(*) AS 'nbr' FROM characters where online = '1' and race='2','5'"

jaimerai quil verifie toutes les race qui sont connecter en php sa le fait mais la sa coince.
celle-ci marche:
Dim sql As String = "SELECT count(*) AS 'nbr' FROM characters where online = '1'"

une idee?
ou pas car il maffiche bien quand y a un joueur en ligne mais quand je lui met plusieur condition sa coince il reste a zero

merci si quelqun a une idée.
Euh, déjà normal que ta requête sql:
Code :
Dim sql As String = "SELECT count(*) AS 'nbr' FROM characters where online = '1' and race='2','5'"
ne fonctionne pas, c'est quoi ce ",'5'" à la fin ?

Ensuite je n'est pas compris, tu veux savoir le nombre de joueurs connecté pour chaque race ? (genre orc: 0, troll: 1, ...) ?
P.S: Là ce n'est plus un problème de vb net mais de sql ... (mass tutos sur le net)
Pour le 5 oui c normale c'est le numero de la race, ou alors on peut le mettre dans une variable et mettre la variable a la place enfin je c pas je poursui ma recherche justement peut tu m'eclairer plizz?
Revoie le SQL ... (http://sqlpro.developpez.com/cours/sqlaz/jointures/) Smile

Retourner en haut Accueil