La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Réalisation d’un logiciel de Chiffrement RSA.

Présentations similaires


Présentation au sujet: "Réalisation d’un logiciel de Chiffrement RSA."— Transcription de la présentation:

1 Réalisation d’un logiciel de Chiffrement RSA.
Projet ER13 – Réalisation d’un logiciel de Chiffrement RSA.

2 Sommaire Objectifs Chiffrement L’algorithme RSA Organisation

3 Sommaire Objectifs Chiffrement L’algorithme RSA Organisation
Généralités RSA ? Évaluation Chiffrement L’algorithme RSA Organisation

4 Objectifs - Généralités
Réaliser un programme de chiffrement RSA, 6 séances TP, 3 équipes de 4 personnes.

5 Objectifs – RSA ? RSA : Rivest, Shamir, Adleman,
Premier algorithme à clef publique, Inventé en 1977 3DES, AES, … Adi Shamir, Ronald Rivest, and Leonard Adleman

6 Objectifs – Evaluation
Bon fonctionnement, Qualité du code, Jeux de tests.

7 Sommaire Objectifs Chiffrement L’algorithme RSA Organisation
Symétrique Asymétrique L’algorithme RSA Organisation

8 Chiffrement - symétrique
Confidentialité repose sur un secret, Ex : décalage de 3 rangs dans l’alphabet : 3 est la clef secrète.

9 Chiffrement - symetrique
Symétrique : même clef pour chiffrer et déchiffrer, Comment échanger la clef ?

10 Chiffrement - asymétrique
2 clefs L’une publique : Chiffre, Publique, L’autre privée : Déchiffre, Secrète.

11 Sommaire Objectifs Chiffrement L’algorithme RSA Organisation
Définitions mathématiques Déchiffrement Robustesse Organisation

12 RSA – nombres premiers Nombre premier : un nombre premier est un nombre entier qui n’est divisible que par lui-même ou par 1, 3, 5, 7, 11, 13 sont des nombres premiers. 91 n’est pas un nombre premier car 91 = 7 x 13

13 RSA – nombres premiers entre eux
Nombres premiers entre eux : deux nombres entiers sont premiers entre eux si ils n’ont aucun diviseur commun à part 1, 15 et 8 sont des nombre premiers entre eux, 34 et 51 ont un diviseur commun : 17, ils ne sont donc pas premiers entre eux.

14 RSA – Reste d’une division euclidienne.
Rappel : l’opérateur % du C retourne le reste d’une division entre entiers. 55 % 12 = 7 car 55 = 4 * , 55 = 7 [12]. // On dit que 55 est égal à 7 modulo 12. Remarque : le modulo, c’est 12 et non 7 comme on l’entend souvent dire par erreur.

15 RSA – L’indicatrice d’Euler
C’est une fonction notée . Elle est définie de la manière suivante : (N) est le nombre d’entiers inférieurs à N, premiers avec N. Un exemple en page suivante pour calculer (55) .

16 RSA – L’indicatrice d’Euler
On écrit tous les entiers entre 1 et 55. On barre ceux qui ne sont pas premiers avec 55. On compte combien il en reste, c’est (55) 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,46,47,48,49,50,51,52,53,54,55. (55)=40.

17 RSA – un gros théorème ! Si P et Q sont premiers, et si
N = P x Q, alors (N) = (P-1)(Q-1), (55) = (5x11) = (5-1).(11-1) =40. Plus facile !

18 RSA – Un exemple de chiffrement
Q = 11, (55) =40, Message :

19 RSA – chiffrement Découper le message en nombres < N (55),
, M1 = 12, M2 = 45

20 RSA – chiffrement déterminer un nombre  qui soit premier avec (N),
Ex : (N) = 40,  = 3.

21 RSA – chiffrement Élever chaque partie du message à la puissance ,

22 RSA – chiffrement Calculer l’équivalent modulo N de chaque partie du message élevée à la puissance , (M1)[N]=(12)3[55]=1728[55]=23= MC1 (M2)[N]=(45)3[55]=91125[55]=45= MC2

23 RSA – chiffrement Message chiffré : 23 45 51 51 51 17 45 12 46 5 41 31
Clef publique = (N, ). Attention : seuls N et  sont divulgués. P et Q sont secrets

24 RSA – déchiffrement On a chiffré en élevant des blocs à la puissance  modulo N. On va déchiffrer en utilisant le même principe. On va élever les blocs chiffrés à une puissance  modulo N.

25 RSA – déchiffrement Pour ça, on va déterminer  entier tel que :  = 1 [ (N) ] ((M1)) [N] = M1 [N].

26 RSA – déchiffrement  x  = 1 + ( k x (N) )
Dans notre exemple : 3 = k C’est-à-dire que 3 % 40 = 1 On considère  comme un compteur. On part de  = 1 et on l’incrémente tant que 3 % 40 != 1 Ici on trouve  = 27

27 RSA – déchiffrement Déchiffrement consiste à effectuer l’opération inverse, (MC1) [N] = ((M1)) [N] = M1 (23)27[55] = ….[55] = 12 = M1 (45)27[55] = ….[55] = 45 = M2

28 RSA – déchiffrement Message déchiffré :
 est la clef privée.

29 RSA – robustesse Longueur de clef = longueur N,
Ex : 128 bits = 2128 = 38 chiffres.

30 RSA – robustesse Trouver  nécessite de calculer (N)
Calculer (N), c’est très long sans connaître P et Q. Connaître P et Q nécessite de décomposer N en facteurs premiers. C’est long ! … Voir l’exemple donnés par R, S et A pages suivantes

31 RSA – robustesse N=

32 RSA – robustesse P= Q=

33 RSA – robustesse Factorisé en 5 mois 80 machines
640 bits = 193 chiffres Longueur conseillé : 2048 bits.

34 Sommaire Objectifs Chiffrement L’algorithme RSA Organisation

35 Organisation 3 équipes IHM Génération des clefs
Chiffrement / Déchiffrement + écritures dans des fichiers

36 Organisation Fourni : Spécifications Documentation mathématique
Exécutable Prototypes des fonctions Structure du projet Jeux de tests pré-remplis

37 Organisation TP 1 : phase « papier » Etude du projet, réalisation d’un diaporama de présentation par équipe. TP 2 : présentation des diaporamas jusqu’à la pause, puis début du développement. TP 3, 4 : développement TP 5 : fin du développement jusqu’à la pause et intégration. TP 6 : présentation des diaporamas de fin de projet.

38 Organisation Livrables : Voir détails dans le document joint.
Diaporama de début de projet Sources Jeux de tests Rapport Diaporama de fin de projet Voir détails dans le document joint.


Télécharger ppt "Réalisation d’un logiciel de Chiffrement RSA."

Présentations similaires


Annonces Google