à l'aide sur langage C s'il vous plait
Résolu
mahasin
Messages postés
81
Statut
Membre
-
Bilow Messages postés 1193 Statut Membre -
Bilow Messages postés 1193 Statut Membre -
Bonjour,
j'ai un programme sur langage c et je veux bien savoir comment entrer un mot de passe pour plus de sécurité, c'est à dire le programme doit demander le mot de passe pour n'importe qu'il utilisateur ??????
merci d'avance
j'ai un projet à remettre cette semaine,merci d'avoir m'aider
j'ai un programme sur langage c et je veux bien savoir comment entrer un mot de passe pour plus de sécurité, c'est à dire le programme doit demander le mot de passe pour n'importe qu'il utilisateur ??????
merci d'avance
j'ai un projet à remettre cette semaine,merci d'avoir m'aider
A voir également:
- à l'aide sur langage C s'il vous plait
- Langage ascii - Guide
- Langage binaire - Guide
- Langage visual basic - Télécharger - Langages
- Pascal langage - Télécharger - Édition & Programmation
- Cette sedcard est actuellement pas actif. s'il vous plaît vérifier plus tard. - Forum finances
3 réponses
Salut !
C'est simple :
Voila... Quelques choses à noter :
- Fais attention, si ce programme est très sécurisé, il faut prévoir que l'utilisateur n'entre pas des commandes par l'intermédiaire du buffer overflow. Cherche sur Google ce que c'est.
- strcmp() renvoi 0 si les chaines entrées sont égales, et un autre nombre si elles diffèrent.
- system("pause"); peut être remplacé par d'autres choses, comme un getch() (librairie conio.h). Mais je ne connais pas de moyen stable et portable (system et conio.h ne le sont pas).
- return 0; Come tu veux, tu peux faire un break; tu peux utiliser exit(); ...
- Ce code devrait fonctionner, "devrait" parce que cela fait longtemps que je n'ai plus fait de C. Je suis passé au C++ ;
Voila !
C'est simple :
// Ici le début du code (bonjour, coment allez-vous, ...)
char password_real [] = "ton_mot_de_passe"; // Le vrai mot de passe
char password_entry [30]; // Le mot de passe qu'entre l'utilisateur
printf("Entrez le mot de passe :\n");
scanf("%s", password_entry); // Demande le mot de passe
if(strcmp(password_real, password_entry)){ // S'ils sont différents
printf("Mot de passe incorrect.");
system("pause");
return 0;
}
// Et ici ton programme en toute sécurité !
Voila... Quelques choses à noter :
- Fais attention, si ce programme est très sécurisé, il faut prévoir que l'utilisateur n'entre pas des commandes par l'intermédiaire du buffer overflow. Cherche sur Google ce que c'est.
- strcmp() renvoi 0 si les chaines entrées sont égales, et un autre nombre si elles diffèrent.
- system("pause"); peut être remplacé par d'autres choses, comme un getch() (librairie conio.h). Mais je ne connais pas de moyen stable et portable (system et conio.h ne le sont pas).
- return 0; Come tu veux, tu peux faire un break; tu peux utiliser exit(); ...
- Ce code devrait fonctionner, "devrait" parce que cela fait longtemps que je n'ai plus fait de C. Je suis passé au C++ ;
Voila !
Bonjour,
Même code que Bilow. Par contre, je te conseille de remplacer : scanf("%s", password_entry); par scanf("%29s", password_entry); pour éviter le buffer overflow dont il parle.
Par contre, tout dépend de toi pour savoir à quel point doit être sécurisé le programme. Car un simple désassemblage de ton programme et hop on voit les mots de passe en clair dans ton programme.
Cdlt,
Même code que Bilow. Par contre, je te conseille de remplacer : scanf("%s", password_entry); par scanf("%29s", password_entry); pour éviter le buffer overflow dont il parle.
Par contre, tout dépend de toi pour savoir à quel point doit être sécurisé le programme. Car un simple désassemblage de ton programme et hop on voit les mots de passe en clair dans ton programme.
Cdlt,