aaabla
Messages postés3Date d'inscriptionmercredi 13 mai 2009StatutMembreDernière intervention18 mai 2009
-
18 mai 2009 à 15:08
aaabla
Messages postés3Date d'inscriptionmercredi 13 mai 2009StatutMembreDernière intervention18 mai 2009
-
18 mai 2009 à 22:58
Salut tout le monde,
Svp, celui qui a un algorithme simple d’encryptage RSA qui permit de crypter une chaine de caractères (un message) et non un nombre, en C , qu’il m’aide à l’avoir le plutôt possible. J’ai essayé de l’écrire et je suis arrivée à crypter un nombre et le décrypté.
J’espère trouver l’aide ici, c’est pour ça j’ai demandé de l’aide sur ce forum.
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 18 mai 2009 à 17:18
Salut.
Tout d'abord, tu es sur le forum C# ici. Pour tout ce qui concerne le C et le C++, merci de poster sur www.cppfrance.com. Ensuite, si tu as déjà un bout de code, merci de le fournir, et d'indiquer pourquoi où tu bloques au niveau de l'adaptation de ton code d'un nombre à une chaine de caractères.
Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
aaabla
Messages postés3Date d'inscriptionmercredi 13 mai 2009StatutMembreDernière intervention18 mai 2009 18 mai 2009 à 18:34
Le problème consiste à :
Pour pouvoir crypté le message je doit le convertir en un nombre, j’ai pensée à créer un tableau d’enregistrement oû je représente chaque caractère par un nombre précis (par exemple : le A par 10, la B par 11……etc.) mais j’ai trouvé un problème a représenté l’espace, l’entrée,… donc j’ai pensé a une autre solution qui est de représenter chaque caractère par son code ASCII, mais je n’ai pas pu trouvé une fonction prédéfini en C qui retourne pour chaque caractère son code ASCII et je ne sais même pas est ce qu’ elle existe ou non
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 18 mai 2009 à 19:24
Si mes souvenirs sont corrects (car je ne touche plus au C depuis plusieurs années, et que tu es sur le forum C#), une chaine de caractères en C est simplement un tableau de caractères (char*) avec un '\0' pour indiquer la fin. De plus, lorsque tu cast un char en int, cela te renvoie son code ascii.
Donc j'imagine que tu peux faire un truc comme ça :
int i;
char* texte = "MonTexteAEncoder";
char* texteEncode = (char*)malloc((strlen(texte)+1)*sizeof(char));
for(i = 0 ; i < strlen[texte] +1 /* Pour inclure le '\0' */ ; i++)
{
texteEncode[i] = encodeRSA((int)(texte[i]));
}
avec comme prototype pour encodeRSA :
char encodeRSA(int);
(et si ta fonction renvoie un int, il "suffit" de remplacer char* texteEncode par un int*)
Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -