IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

hashage pwd MD5


Sujet :

C

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2013
    Messages : 3
    Points : 4
    Points
    4
    Par défaut hashage pwd MD5
    Bonjour,
    J'ai un code en C pour encrypter un pwd MD5
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    #define _XOPEN_SOURCE_
    #include <unistd.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    char *crypt(const char *clef,const char *salt);
    /***************************************/
    /* Cette fonction génère aléatoirement */
    /* un salt pour hachage MD5 */
    /* =================================== */
    /* buf : tampon où stocker le salt */
    /***************************************/
    void generate_md5_salt(char buf[13])
    {
    int i;
    //on initialse le générateur de nombre aléatoire
    srand(time(NULL));
    //un salt pour MD5 a le format : $1$<chaine de 8 caractères>$
    //les huits caractères sont à choisir parmi [a-zA-Z0-9./]
    buf[0]='$';
    buf[1]='1';
    buf[2]='$';
    for (i=3; i < 11;i++)
    {
    do{
    buf[i]=rand() % 128;
    }while(
    (buf[i] < 'a' || buf[i] > 'z')
    && (buf[i] < 'A' || buf[i] > 'Z')
    && (buf[i] < '0' || buf[i] > '9')
    && (buf[i] != '.')
    && (buf[i] != '/')
    );
    }
    buf[11]='$';
    buf[12]='\0';
    }
    int main ()
    {
    char salt[13];
    char buff[256];
    generate_md5_salt(salt);
    printf("Entrez le texte à crypter :");
    scanf("%s",buff);
    printf("Le salt est %s\nLe texte crypte est %s\n",salt,crypt(buff,salt));
    return 0;
    le problème que je rencontre est que le compilateur me sort undefined reference to 'crypt'
    est ce que quelqu'un peut m'aider à résoudre ce problème

    Merci d'avance

  2. #2
    Membre expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Points : 3 352
    Points
    3 352
    Par défaut
    Bonjour,

    la man page de crypt spécifie :
    Citation Envoyé par man page crypt
    Programs using any of these functions on a glibc 2.x system must be linked against libcrypt.
    Conclusion: il faut spécifier -lcrypt lors de l'édition des liens.

  3. #3
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 145
    Points
    23 145
    Par défaut
    Bonjour,

    Vous déclarez une fonction crypt mais vous ne semblez pas la définir.

    Attention aussi à l'indentation


    EDIT : grillé par kwariz.

    Sinon pourquoi ne pas inclure l'en-tête de la bibliothèque plutôt que de déclarer soit-même la fonction ?

Discussions similaires

  1. Hashage md5 et system.security.cryptography
    Par user8 dans le forum Langage
    Réponses: 4
    Dernier message: 13/08/2009, 10h30
  2. Hashage Md5 UnicodeString
    Par Quaker dans le forum C++Builder
    Réponses: 0
    Dernier message: 01/12/2008, 18h23
  3. [SSIS][2k5]Hashage MD5 SSIS
    Par Patchain dans le forum SSIS
    Réponses: 1
    Dernier message: 17/04/2008, 14h28
  4. Réponses: 3
    Dernier message: 09/02/2007, 17h57
  5. [Cryptage] Hashage MD5
    Par Ethylene dans le forum Sécurité
    Réponses: 3
    Dernier message: 06/09/2005, 17h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo