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 :

Faire un semblant de mot de passe en C [Débutant(e)]


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Par défaut Faire un semblant de mot de passe en C
    bonjour

    je souhaite faire un mot de passe dans mon programme
    en C :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    while (code!=123456789){
                    printf("ERREUR de code\n");
                    printf("Mot de passe :");
                    scanf("%d",&code);
                    }
    je suis assez difficile voir perfectionniste... lol
    est til possible de faire apparaitre des asterisques lorsque que lutilisateur saisira le mot de passe
    si oui pouvez vous me dire comment faire ?

    je suis sous BCB6

    merci davance
    cdlt

  2. #2
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    est til possible de faire apparaitre des asterisques lorsque que lutilisateur saisira le mot de passe
    si oui pouvez vous me dire comment faire ?

    je suis sous BCB6
    Plusieurs choses. Un mode de passe n'est en aucun cas une valeur numérique. C'est une chaine de caractères.

    Ensuite, pour faire une saisie masquée, il n'y a pas de solution standard. Une bibliothèque de gestion directe des I/O en mode console permet ça (et fournit probablement une fonction de saisie genre 'getpass()').

    Je recommande PDCurses qui est portable.

  3. #3
    Membre très actif Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Par défaut
    Citation Envoyé par Emmanuel Delahaye Voir le message
    Je recommande PDCurses qui est portable.
    waaah emanuel merci beaucoup !
    Compil your life guy!
    The Aures Project

  4. #4
    Membre confirmé Avatar de amine6441
    Inscrit en
    Novembre 2006
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 85
    Par défaut
    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
    #include<CONIO.H>
    #include<stdio.H>
    #include<string.H>
    int main(void){
    	clrscr();
    	printf("entrer le mots de passe de 5 caractere");
    	char c,*p,*point;
    	c=getch();
    	p=&c;
    	strcpy(point,p);
    	printf("*");
    	for(int i=0;i<4;i++){
    	printf("*");
    	c=getch();
    	p=&c;
    	strcat(point,p);
    	}
    	int test;
    	test=strcmp(point,"12345");
    	if(test>0) perror("Le mots de passe que vous avez entrer est Faux");
    	else printf("\nmerci le mots de passe que vous avez ecris est bon");
    	getch();
    	return 0;
    	}
    Voici ce code mais améliore le par exemple moi j’ai supposer que toutes les mots de passes ont une langueur de 5 caractères toi si tu veux avoir une langueur libre tu vas écrire au lieur de for tu vas faire while c=getch() et différente du code ASCII du retours chariot faire

  5. #5
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 967
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 967
    Par défaut
    Loe,
    Citation Envoyé par amine6441 Voir le message
    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
    #include<CONIO.H>
    #include<stdio.H>
    #include<string.H>
    int main(void){
    	clrscr();
    	printf("entrer le mots de passe de 5 caractere");
    	char c,*p,*point;
    	c=getch();
    	p=&c;
    	strcpy(point,p);
    	printf("*");
    	for(int i=0;i<4;i++){
    	printf("*");
    	c=getch();
    	p=&c;
    	strcat(point,p);
    	}
    	int test;
    	test=strcmp(point,"12345");
    	if(test>0) perror("Le mots de passe que vous avez entrer est Faux");
    	else printf("\nmerci le mots de passe que vous avez ecris est bon");
    	getch();
    	return 0;
    	}
    Voici ce code mais améliore le par exemple moi j’ai supposer que toutes les mots de passes ont une langueur de 5 caractères toi si tu veux avoir une langueur libre tu vas écrire au lieur de for tu vas faire while c=getch() et différente du code ASCII du retours chariot faire
    catastrophe !!

    Avant de le compléter, il faudrait surtout commencer par corriger toutes les erreurs.

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par amine6441 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #include<CONIO.H>
    #include<stdio.H>
    #include<string.H>
    int main(void){
    	char c,*p,*point;
    	c=getch();
    	p=&c;
    	strcpy(point,p);
    	}
    Ton code est complètement faux et montre que tu ne connais rien au langage C. STP, arrête d'intervenir, écoute et apprends. Quand tu auras compris ce qu'est un pointeur tu pourras contribuer. Tu peux aussi poser des questions.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 106
    Par défaut
    Citation Envoyé par Emmanuel Delahaye Voir le message
    Ton code est complètement faux et montre que tu ne connais rien au langage C. STP, arrête d'intervenir, écoute et apprends. Quand tu auras compris ce qu'est un pointeur tu pourras contribuer.
    Qui modère ce modérateur ?
    Une manière un peu plus correcte de répondre aux membres serait plus agréable à la lecture du forum.

    Merci.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 41
    Par défaut
    Pour ton mot de passe, moi je l'encoderai. Car un mot de passe c'est censé être secret ???

    Essaye de l'encoder, il existe le systeme MD5 par exemple.

  9. #9
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Le mot_ de passe est "censé être secret", mais cela sort du cadre du fichier source proposé: Il était question ici d'entrer le mot de passe sans qu'il s'affiche, et non de la cuisine derrière.

    Mais en effet, pour un vrai usage le mot de passe doit être socké d'une manière plus sécurisée, de préférence à sens unique (hachage pur, système unix (hachage+transformation en clé+cryptage d'une chaîne fixe), etc.)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/11/2009, 17h00
  2. Réponses: 9
    Dernier message: 13/02/2009, 23h14
  3. Faire afficher un mot de passe
    Par figatelliSTI dans le forum Zend Framework
    Réponses: 3
    Dernier message: 15/07/2008, 14h42
  4. Débutant: Comment faire un bouton avec un mot de passe
    Par ch@rles.be dans le forum Sécurité
    Réponses: 1
    Dernier message: 06/02/2007, 19h37

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