+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Freelance
    Inscrit en
    juin 2009
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Freelance

    Informations forums :
    Inscription : juin 2009
    Messages : 213
    Points : 298
    Points
    298

    Par défaut Windev : Se connecter sur un site par authentification cryptée en MD5

    Vous avez besoin de faire entrer vos utilisateurs sur un site, mais il faut s'authentifier.
    Tout d'abord, côté site web, il faut mettre en place un système d'authentification par mot de passe crypté en MD5, cela donnera une URL du style : http:...monsite.pro/login.php?id=demo&mdp=d6aa97d33d459ea3670056e737c99a3d

    içi dans l'exemple, le mot de passe mdp crypté en MD5 est "Wikipedia, l'encyclopedie libre et gratuite".

    Côté windev, il faut agir en deux étapes :
    Etape 1 : Utilisation de la fonction HashChaine pour crypter avec l'algorithme de votre choix (içi c'est MD5).
    Etape 2 : Il faut tranformer la chaine binaire générée par la fonction de cryptage en chaine Hexadécimale. Je pense que php génére directement des chaines Hexadécimales. Sans cette opération vous risquez de vous dire que décidément rien ne marche...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    sURLBase est une chaîne = "http://www.monsite.pro/login.php?"
    sURLEnvoyée est une chaîne
    sMotPasseCrypté est une chaîne
    sMotPasseCryptéHexa est une chaîne
    nIndice est un entier
     
     
    SI Parametres.PAR_Login = "" OU Parametres.PAR_Mdp = "" ALORS
    	Erreur("Le login ou/et le mot de passe de connexion au système manquent ","vous devez les renseigner dans la fenêtre de paramétrage du logiciel")
    	RETOUR
    FIN
     
    sMotPasseCrypté = HashChaîne(HA_MD5_128,Parametres.PAR_Mdp)
     POUR nIndice=1 _A_ Taille(sMotPasseCrypté)
    	sMotPasseCryptéHexa += NumériqueVersChaîne(Asc(sMotPasseCrypté[[nIndice]]),"02x")
    FIN
     
    sURLEnvoyée = sURLBase+"id="+Parametres.PAR_Login+"&mdp="+sMotPasseCryptéHexa
     
    LanceAppliAssociée(sURLEnvoyée)
    La connaissance s'accroît quand on la partage.

  2. #2
    Expert Confirmé Sénior Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    août 2005
    Messages
    1 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : août 2005
    Messages : 1 905
    Points : 4 555
    Points
    4 555

    Par défaut

    L'algorithme MD5 n'est pas un algorithme de chiffrement (on dit chiffrer et pas crypter qui n'existe pas) mais un algorithme de hashage, ou condensat.

    Par ailleurs, l'authentification basée sur un hash sans inclure de salage ne doit pas être considérée comme une méthodologie sécurisée car trop vulnérable aux attaques par dictionnaire.
    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu