Bonjour à tous,
J'espère que vous allez bien, moi je me casse un peu les dents sur des petit problème. Mais je suis pas assez fort pour m'en sortir en python.
Alors mon problème c'est que j'essaye de faire le cryptage RSA mais dans ma textNum() il faudrait que je convertisse ma chaine en caractère ASCII mais que le résultat soit une chaine de nombre et non un tableau comme j'ai fait.
Il faudrais aussi une fonction qui découpe une chaine par exemple: split("TOTO",2) = TO, TO
Vous voyez ?
Ensuite un problème de math, car je suis un piètre matheux.
Je dois résoudre d tel que 71*d mod 1008 = 1
mais je sais pas résoudre cela sous forme équation à 1 inconnu en Python
J'espère que vous pourrez m'aider
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 #On convertit le texte initial en texte ASCII def textNum(): text=raw_input("Votre texte: \n") text=map(ord,text) return text #Il faut qu'on retourne la clé publique et privé def key(): #On prend 2 nombres premiers au hasard p et q #Pour les tests on utilise p=29 q=37 p=29 q=37 n= p*q x=(p-1)*(q-1) #Pour les tests on prend e=71 où e est normalement choisit au hasard e=71 #Trouver d en résolvant l'équation e*d%x=1 d=1079 y=e*d%x keyPub=[e,n] keyPriv=[d,n] print keyPub print keyPriv #On crypte à l'aide de la clé publique et du texte sous forme ASCII def RSACrypt(): #On décrypte à l'aide de la clé privée et du texte crypté def RSADecrypt(): texte = textNum() key()
Merci de votre aide bonne journée
Partager