OVH Cloud OVH Cloud

[WD12][eGroupWare] Vérification du mot de passe

5 réponses
Avatar
Fredo G-MDI
Bonjour à tous,

je suis en train de développer un carnet d'adresse qui lit la base de l'open
source eGroupWare, je souhaiterai intégrer la vérification du mot de passe
depuis la base de données sachant que le mot de passe stocké dans la base
est crypté, avec une fonction de Hash. J'ai testé toutes les fonctions de
Hash de Windev avec le bon mot de passe mais je n'arrive pas à trouver les
combinaisons de Hash qui correspondent entre mon mot de passe en clair et
celui stocké dans la base. Test : pour l'utilisateur "toto", le mot de passe
est "toto" stocké dans la base "f71dbe52628a3f83a77ab494817525c6".

Des idées ?

Merci d'avance pour vos réponses

5 réponses

Avatar
Daniel
Fredo G-MDI a écrit :
Bonjour à tous,

je suis en train de développer un carnet d'adresse qui lit la base de l'open
source eGroupWare, je souhaiterai intégrer la vérification du mot de passe
depuis la base de données sachant que le mot de passe stocké dans la base
est crypté, avec une fonction de Hash. J'ai testé toutes les fonctions de
Hash de Windev avec le bon mot de passe mais je n'arrive pas à trouver les
combinaisons de Hash qui correspondent entre mon mot de passe en clair et
celui stocké dans la base. Test : pour l'utilisateur "toto", le mot de passe
est "toto" stocké dans la base "f71dbe52628a3f83a77ab494817525c6".

Des idées ?

Merci d'avance pour vos réponses





si c'est toujours 32 caractères c'est du MD5.

Il faut simplement confronter le MD5 que tu génères avec ton mot de
passe en clair au MD5 stocké dans la base et le tour est joué.



--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Avatar
Fredo G-MDI
"Daniel" a écrit dans le message de news:
49084614$0$18568$
Fredo G-MDI a écrit :
Bonjour à tous,

je suis en train de développer un carnet d'adresse qui lit la base de
l'open source eGroupWare, je souhaiterai intégrer la vérification du mot
de passe depuis la base de données sachant que le mot de passe stocké
dans la base est crypté, avec une fonction de Hash. J'ai testé toutes les
fonctions de Hash de Windev avec le bon mot de passe mais je n'arrive pas
à trouver les combinaisons de Hash qui correspondent entre mon mot de
passe en clair et celui stocké dans la base. Test : pour l'utilisateur
"toto", le mot de passe est "toto" stocké dans la base
"f71dbe52628a3f83a77ab494817525c6".

Des idées ?

Merci d'avance pour vos réponses



si c'est toujours 32 caractères c'est du MD5.

Il faut simplement confronter le MD5 que tu génères avec ton mot de passe
en clair au MD5 stocké dans la base et le tour est joué.



--



Merci pour ta réponse. Faut-il que je Hash la chaîne stockée dans la base
aussi ou simplement la comparer tel quel ?
Le code ci-dessous ne fonctionne pas...

sPwd est une chaîne = "toto"

sPwdStocke est une chaîne = "f71dbe52628a3f83a77ab494817525c6"

sHashPwd est une chaîne = HashChaîne(HA_MD5_128,sPwd)

SI sHashPwd = sPwdStocke ALORS

Info("OK")

FIN



suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)


Avatar
Daniel
Fredo G-MDI a écrit :
"Daniel" a écrit dans le message de news:
49084614$0$18568$
Fredo G-MDI a écrit :
Bonjour à tous,

je suis en train de développer un carnet d'adresse qui lit la base de
l'open source eGroupWare, je souhaiterai intégrer la vérification du mot
de passe depuis la base de données sachant que le mot de passe stocké
dans la base est crypté, avec une fonction de Hash. J'ai testé toutes les
fonctions de Hash de Windev avec le bon mot de passe mais je n'arrive pas
à trouver les combinaisons de Hash qui correspondent entre mon mot de
passe en clair et celui stocké dans la base. Test : pour l'utilisateur
"toto", le mot de passe est "toto" stocké dans la base
"f71dbe52628a3f83a77ab494817525c6".

Des idées ?

Merci d'avance pour vos réponses


si c'est toujours 32 caractères c'est du MD5.

Il faut simplement confronter le MD5 que tu génères avec ton mot de passe
en clair au MD5 stocké dans la base et le tour est joué.



--



Merci pour ta réponse. Faut-il que je Hash la chaîne stockée dans la base
aussi ou simplement la comparer tel quel ?
Le code ci-dessous ne fonctionne pas...

sPwd est une chaîne = "toto"

sPwdStocke est une chaîne = "f71dbe52628a3f83a77ab494817525c6"

sHashPwd est une chaîne = HashChaîne(HA_MD5_128,sPwd)

SI sHashPwd = sPwdStocke ALORS

Info("OK")

FIN





Regarde ce que donne la fonction HAshChaine de Windev car je peux te
dire que le md5 de toto est bien
f71dbe52628a3f83a77ab494817525c6



--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Avatar
Romain PETIT
Daniel a formulé ce mercredi :
Regarde ce que donne la fonction HAshChaine de Windev car je peux te dire que
le md5 de toto est bien
f71dbe52628a3f83a77ab494817525c6



La fonction Hash WD renvoie en caractères ASCII, il faut convertir en
hexa :

sPwd est une chaîne = "toto"
sResu est une chaîne = "f71dbe52628a3f83a77ab494817525c6"
sResuHashWD est une chaîne = HashChaîne(HA_MD5_128,sPwd)
sResuHashWDHexa est une chaîne
c est un entier
POUR c=1 _A_ Taille(sResuHashWD)
sResuHashWDHexa += NumériqueVersChaîne(Asc(sResuHashWD[[c]]), "02x")
FIN
SI sResuHashWDHexa = sResu ALORS
Info("Ok")
SINON
Erreur("Pas Ok : " + RC+ "devrait :<"+sResu+">"+RC+"On a :
<"+sResuHashWDHexa+">")
FIN

A+

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Fredo G-MDI
Merci à tous les deux, il me manquait la conversion en Hexa.

"Romain PETIT" a écrit dans le message de news:

Daniel a formulé ce mercredi :
Regarde ce que donne la fonction HAshChaine de Windev car je peux te dire
que le md5 de toto est bien
f71dbe52628a3f83a77ab494817525c6



La fonction Hash WD renvoie en caractères ASCII, il faut convertir en hexa
:

sPwd est une chaîne = "toto"
sResu est une chaîne = "f71dbe52628a3f83a77ab494817525c6"
sResuHashWD est une chaîne = HashChaîne(HA_MD5_128,sPwd)
sResuHashWDHexa est une chaîne
c est un entier
POUR c=1 _A_ Taille(sResuHashWD)
sResuHashWDHexa += NumériqueVersChaîne(Asc(sResuHashWD[[c]]), "02x")
FIN
SI sResuHashWDHexa = sResu ALORS
Info("Ok")
SINON
Erreur("Pas Ok : " + RC+ "devrait :<"+sResu+">"+RC+"On a :
<"+sResuHashWDHexa+">")
FIN

A+

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)