Crypter une chaîne de caractère (xor)
Fermé
Black:bag
Messages postés
6
Date d'inscription
dimanche 3 mars 2013
Statut
Membre
Dernière intervention
30 juin 2013
-
20 juin 2013 à 01:51
juliencolin54 Messages postés 217 Date d'inscription dimanche 22 juillet 2012 Statut Membre Dernière intervention 1 octobre 2013 - 23 juil. 2013 à 08:47
juliencolin54 Messages postés 217 Date d'inscription dimanche 22 juillet 2012 Statut Membre Dernière intervention 1 octobre 2013 - 23 juil. 2013 à 08:47
A voir également:
- Crypter une chaîne de caractère (xor)
- Caractère ascii - Guide
- Caractere speciaux - Guide
- Caractère spéciaux - Guide
- Chaine tnt gratuite sur mobile - Guide
- Plus de chaine tv - Guide
2 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
20 juin 2013 à 14:08
20 juin 2013 à 14:08
Mais ,apparemment il affiche une erreur (Windows) pouvez vous m'aider ?
Quelle erreur windows ?
printf("Votre phrase de nouveau est %s:\n",key);
key est un char et tu affiches une chaîne de caractères (%s). Il faudrait plutôt mettre : %c. Attention, cela n'est pas forcément une valeur ascii. Tu as de forts risques d'avoir un drôle de caractère ;-)
Quelle erreur windows ?
printf("Votre phrase de nouveau est %s:\n",key);
key est un char et tu affiches une chaîne de caractères (%s). Il faudrait plutôt mettre : %c. Attention, cela n'est pas forcément une valeur ascii. Tu as de forts risques d'avoir un drôle de caractère ;-)
Black:bag
Messages postés
6
Date d'inscription
dimanche 3 mars 2013
Statut
Membre
Dernière intervention
30 juin 2013
20 juin 2013 à 16:35
20 juin 2013 à 16:35
Bsr,
Oui merci
pour afficher le résultat ( du cryptage xor) je dois utiliser (%c) c'est proprement correct .
Mais que pensez vous de la structure du code est ce qu 'il est valide ??
oui , le résultat n'est pas proprement (une valeur ascii ) .
Oui merci
pour afficher le résultat ( du cryptage xor) je dois utiliser (%c) c'est proprement correct .
Mais que pensez vous de la structure du code est ce qu 'il est valide ??
oui , le résultat n'est pas proprement (une valeur ascii ) .
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
3 juil. 2013 à 20:59
3 juil. 2013 à 20:59
Bonjour,
La structure est correcte pour ce programme s'il reste en l'état.
Mais, il serait mieux de faire les fonctions :
- int ChiffrementXor(const char *clair, const char *cle, char *res);
- void affichage(const char *chaine);
Ainsi, ça sera beaucoup plus propre :-).
La structure est correcte pour ce programme s'il reste en l'état.
Mais, il serait mieux de faire les fonctions :
- int ChiffrementXor(const char *clair, const char *cle, char *res);
- void affichage(const char *chaine);
Ainsi, ça sera beaucoup plus propre :-).
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
3 juil. 2013 à 21:02
3 juil. 2013 à 21:02
Ce serait plus propre de créer deux fonctions :
int chiffrementXor(const char *clair, const char *cle, char *resultat);
void affichage(const char *chaine);
int chiffrementXor(const char *clair, const char *cle, char *resultat);
void affichage(const char *chaine);
[Dal]
Messages postés
6204
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
27 février 2025
1 101
Modifié par [Dal] le 4/07/2013 à 13:58
Modifié par [Dal] le 4/07/2013 à 13:58
Salut Black:bag, salut fiddy,
Je ne crois pas que le code donne quelque chose de bien utile, même s'il se compile et s'exécute sans erreurs ou avertissements en rectifiant le %c.
- XOR est fait sur chaque caractère de str avec successivement les caractères de psw, mais le résultat n'est pas utilisé pour les opérations suivantes, ni conservé en dehors de la boucle for. Du coup, le résultat des opérations est perdu
- ont fait un printf sur un caractère (en utilisant %c comme le dit fiddy), à chaque itération de la boucle la plus profonde.. je ne sais pas si c'est volontaire... en tout cas cela n'affiche pas un résultat, mais la série d'opérations intermédiaires
- quelque soit l'algorithme utilisé, il faut, à mon sens, conserver la taille de la chaîne d'origine, car autrement, les opérations XOR peuvent conduire à produire zéro, qui sera considéré comme le caractère '\0', et on ne saura pas quelle est la longueur des données chiffrées à sauvegarder .. et qui devront être déchiffrées ultérieurement
Dal
Je ne crois pas que le code donne quelque chose de bien utile, même s'il se compile et s'exécute sans erreurs ou avertissements en rectifiant le %c.
- XOR est fait sur chaque caractère de str avec successivement les caractères de psw, mais le résultat n'est pas utilisé pour les opérations suivantes, ni conservé en dehors de la boucle for. Du coup, le résultat des opérations est perdu
- ont fait un printf sur un caractère (en utilisant %c comme le dit fiddy), à chaque itération de la boucle la plus profonde.. je ne sais pas si c'est volontaire... en tout cas cela n'affiche pas un résultat, mais la série d'opérations intermédiaires
- quelque soit l'algorithme utilisé, il faut, à mon sens, conserver la taille de la chaîne d'origine, car autrement, les opérations XOR peuvent conduire à produire zéro, qui sera considéré comme le caractère '\0', et on ne saura pas quelle est la longueur des données chiffrées à sauvegarder .. et qui devront être déchiffrées ultérieurement
Dal
juliencolin54
Messages postés
217
Date d'inscription
dimanche 22 juillet 2012
Statut
Membre
Dernière intervention
1 octobre 2013
55
22 juil. 2013 à 16:47
22 juil. 2013 à 16:47
Bonjour,
Pour info : le mot "crypter" n'a aucun sens...
Chiffrer : encoder grâce à une clé (ce que tu veux faire)
Déchiffrer : décoder grâce à une clé
Décrypter : décoder sans la clé (bruteforce)
Crypter : encoder sans la clé ???
Cdlt.
Pour info : le mot "crypter" n'a aucun sens...
Chiffrer : encoder grâce à une clé (ce que tu veux faire)
Déchiffrer : décoder grâce à une clé
Décrypter : décoder sans la clé (bruteforce)
Crypter : encoder sans la clé ???
Cdlt.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
22 juil. 2013 à 17:12
22 juil. 2013 à 17:12
Pour info : le mot "crypter" n'a aucun sens...
+1
Chiffrer : encoder grâce à une clé (ce que tu veux faire)
Encoder ??? -1 ;-)
+1
Chiffrer : encoder grâce à une clé (ce que tu veux faire)
Encoder ??? -1 ;-)