PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV (précédentes versions) → [WB20] Cryptage compatible WM,WB php et webservices
[WB20] Cryptage compatible WM,WB php et webservices
Débuté par heritiana doucet, 01 mai 2017 22:55 - 2 réponses
Posté le 01 mai 2017 - 22:55
Bonsoir à toutes et tous,
J'ai développé un site en php via Webdev 20.
Pour l'identification, j'ai utilisé la fonction crypte pour le mot de passe :
gsInscript_mdp =Crypte(SAI_mdp,salage,crypteSécurisé)
gsInscript_mdp_verif =Crypte(SAI_mdp_verif,salage,crypteSécurisé)

Ca fonctionne super bien.

Cependant, ça évolue et du coup maintenant j'ai un serveur webservice toujours sur webdev pour servir de passerelle pour une appli android développé via windev mobile.


J'ai trouvé la fonction cryptestandard mais ayant un site php, la fonction BufferVersHexa n'est pas présente.
Voici le code du webservice :
bufF_mdp est un Buffer
bufF_mdp =smdp

sMotdepasse est une chaîne
sMotdepasse =BufferVersHexa(CrypteStandard(bufF_mdp,buclef,crypteAES128))

SELON connexion_bdd()
CAS 1
HLitRecherche(techniciens,Code_alliance,sid)

SI HTrouve(techniciens) =Vrai ALORS
SI sMotdepasse =techniciens.mdp ALORS
Ws_login.sMess ="Identification réussie"
HFermeConnexion(cnxMaconnexion)
RENVOYER Ws_login
SINON
Ws_login.sMess ="Mot de passe erroné"+" "+sMotdepasse
Ws_login.sErreur ="Erreur mot de passe"
HFermeConnexion(cnxMaconnexion)
RENVOYER Ws_login
FIN

SINON
Ws_login.sMess ="Identifiant non reconnu"
Ws_login.sErreur ="Erreur identifiant"
HFermeConnexion(cnxMaconnexion)
RENVOYER Ws_login
FIN

CAS 2
Ws_login.sMess ="Echec connexion à la base de données"
Ws_login.sErreur_complete =HErreurInfo(hErrComplet)
Ws_login.sErreur ="Echec connexion bdd"
RENVOYER Ws_login
FIN

Je ne vois pas comment faire pour trouver un cryptage compatible pour mes deux plateformes.
Quelqu'un aurait une idée?
Merci d'avance
Membre enregistré
2 566 messages
Popularité : +222 (260 votes)
Posté le 03 mai 2017 - 07:22
Bonjour,

Je pense que c'est un problème de codage de caractère. Essaye comme ça:
gsInscript_mdp =Crypte(ChaîneVersUTF8(SAI_mdp),salage,crypteSécurisé)
gsInscript_mdp_verif =Crypte(ChaîneVersUTF8(SAI_mdp_verif),salage,crypteSécurisé)


--
Cordialement,

Philippe SAINT-BERTIN
Géode Informatique
Posté le 04 mai 2017 - 00:54
Hello Philippe SB,
Merci de m'avoir répondu.
En effet, c'était une erreur de codage de caractères.

Du coups, j'en ai profité pour changer et hasher mon mot de passe :

https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/183709-hashhmac-sha1-correspond-pas-entre-php-windev/read.awp