Système d'identification utilisant md5

Soyez le premier à donner votre avis sur cette source.

Vue 8 442 fois - Téléchargée 1 303 fois

Description

C'est un petit système d'identification que vous pouvez rajouter à vos programmes en C-Console, il utilise MD5 pour hasher les mots de passe et ne pas les laisser en clair dans le fameux fichier "config.ini" ou ils sont stockés.
En plus de vous faire un code tout près à rajouter au début de vos programme, il donne un exemple d'utilisation de md5.h et md5.cpp.

Conclusion :


Le zip contient tous les fichiers nécéssaires à la compilation et un petit manuel en pdf.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
semaj_james Messages postés 6 Date d'inscription lundi 19 avril 2004 Statut Membre Dernière intervention 16 janvier 2005
20 déc. 2006 à 17:57
cela marche aussi si au lieu du scanf on utilise fgets a condition de supprimer le "\n":

if (fgets (PassEntree, sizeof PassEntree, stdin) != NULL)
{
char *p = strchr (PassEntree, '\n');
if (p)
{
*p = 0;
}
}

Sinon tres bon code. il va bien m'aider. merci

PS: "La fonction scanf() est une fonction destinée, comme le f dans son nom l'indique, aux saisies formatées et s'avère ainsi très peu adaptée aux saisies humaines qui peuvent présentées des erreurs de format, ces erreurs de formats pouvant entrainer des débordements de tableau, des boucles infinies, des perturbations sur les saisies suivantes, etc.
Il ainsi conseillé de remplacer les saisies formatées effectuées par scanf() par une lecture complète via fgets() suivie d'une analyse de la chaîne lue."
citation: http://c.developpez.com/faq/c/?page=clavier_ecran#SCREEN_scanf_fgets
semaj_james Messages postés 6 Date d'inscription lundi 19 avril 2004 Statut Membre Dernière intervention 16 janvier 2005
20 déc. 2006 à 17:25
En regardant de plus pres cela fonctionne si l'on fait:
strcpy(PassEntree,"message digest");
mais ne marche pas avec un scanf
semaj_james Messages postés 6 Date d'inscription lundi 19 avril 2004 Statut Membre Dernière intervention 16 janvier 2005
20 déc. 2006 à 17:09
Salut,

j'ai compare les differentes valeurs de http://abcdrfc.free.fr/rfc-vf/rfc1321.html.
cela fonctionne pour:
MD5 ("a") = 0cc175b9c0f1b6a831c399e269772661
MD5 ("abc") = 900150983cd24fb0d6963f7d28e17f72
MD5 ("abcdefghijklmnopqrstuvwxyz") = c3fcd3d76192e4007dfb496cca67e13b
MD5 ("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789") =
d174ab98d277d9f5a5611c2c9f419d9f
MD5 ("123456789012345678901234567890123456789012345678901234567890123456
78901234567890") = 57edf4a22be3c955ac49da2e2107b67a

mais pas pour:
MD5 ("message digest") = f96b697d7cb7938d525a2f31aaf161d0
ton code trouve: 78e731027d8fd50ed642340b7c9a63b3
qui correspond a MD5 ("message")
apparement il y a un probleme avec les espaces
TeLeTUbIz Messages postés 215 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 25 septembre 2010
4 juin 2006 à 13:06
Salut LaetitiaVincent. Je pense à lire le code que le 'standard' MD5 a bien été respecté. Pour le vérifier, tu peux faire un programme qui teste les différentes valeurs "officielles" que tu pourra trouver ici: http://abcdrfc.free.fr/rfc-vf/rfc1321.html tout en bas de la page (avant les considérations sur la sécurité).
Normalement, tu devrais trouver les mêmes valeurs.

Bonne continuation
laetitiavincent Messages postés 61 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 19 janvier 2007
3 juin 2006 à 19:15
Super code très bien expliqué. Mais question : le code utilisé dans le fichier md5.cpp pour le hacher est d'origine ou tu l'as modifié ? Je te demande cela car je dois hacher des informations qui vont être comparées aux mêmes informations qui se trouvent sur un serveur et qui ont déjà été hachées, donc je me demande si je vais retrouver la même chose ???

En tout cas merci pour ton code
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.