Cryptosystème asymétrique - RSA Rivest Shamir Adleman

Documents pareils
Cryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1

Cryptographie et fonctions à sens unique

Quelques tests de primalité

La cryptographie du futur

INF 4420: Sécurité Informatique Cryptographie II

CRYPTOGRAPHIE. Signature électronique. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Cryptographie. Cours 3/8 - Chiffrement asymétrique

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

Panorama de la cryptographie des courbes elliptiques

Calculateur quantique: factorisation des entiers

Fonction de hachage et signatures électroniques

Sécurité de l'information

Factorisation d entiers (première partie)

0x700. Cryptologie Pearson France Techniques de hacking, 2e éd. Jon Erickson

Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux

Représentation des Nombres

Cours 14. Crypto. 2004, Marc-André Léger

Certificats «CREDIT LYONNAIS Authentys Entreprise» Manuel utilisateur du support cryptographique

Espace pro. Installation des composants avec Firefox. Pour. Windows XP Vista en 32 et 64 bits Windows 7 en 32 et 64 bits

Cours 1 : Qu est-ce que la programmation?

Travail d intérêt personnel encadré : La cryptographie

Gestion des Clés Publiques (PKI)

Annexe 8. Documents et URL de référence

Nombres premiers. Comment reconnaître un nombre premier? Mais...

Conversion d un entier. Méthode par soustraction

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

TABLE DES MATIÈRES CHAPITRE I. Les quanta s invitent

Introduction à l étude des Corps Finis

Petite introduction aux protocoles cryptographiques. Master d informatique M2

Les fonctions de hachage, un domaine à la mode

Sécurisation des accès au CRM avec un certificat client générique

Nouveaux résultats en cryptographie basée sur les codes correcteurs d erreurs

Tests de primalité et cryptographie

Introduction à MATLAB R

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

ÉPREUVE COMMUNE DE TIPE Partie D

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Représentation d un entier en base b

Rapport de stage de fin de première année : exemples de groupes, leur traitement par MAGMA, et applications en cryptographie

Cryptologie à clé publique

Signatures électroniques dans les applications INTERNET

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Raisonnement par récurrence Suites numériques

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

PHILA-Collector-USB-16Go Pour Windows & Android

Fibonacci et les paquerettes

Cryptographie à clé publique : Constructions et preuves de sécurité

De la sécurité physique des crypto-systèmes embarqués

Développement décimal d un réel

GUIDE D INSTALLATION INTERNET haute vitesse

FORMATION SUR «CRYPTOGRAPHIE APPLIQUEE

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Installation et configuration du serveur syslog sur Synology DSM 4.0

LES SECURITES DE LA CARTE BANCAIRE

BIBLIOTHEQUE NOMADE. PressReader dans les Bibliothèques de la Ville de Lausanne

1 Recherche en table par balayage

Cryptographie appliquée

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

SERVICE APGIS MOBILE : Siège social : 12, rue Massue Vincennes cedex

Cours Informatique Master STEP

Introduction à l informatique en BCPST

Fiche Mémo : Options d accessibilité sous Windows et Internet Explorer 5

Licence Sciences et Technologies Examen janvier 2010

SOMMAIRE ÉTAPES OBLIGATOIRES. Récupérer le connecteur... 3

sommaire ÉTAPES OBLIGATOIRES Récupérer le connecteur... 3

Pascal Gachet Travail de diplôme Déploiement de solutions VPN : PKI Etude de cas

Des codes secrets dans la carte bleue. François Dubois 1

Le partage de clés cryptographiques : Théorie et Pratique

Éditorial. Tangente ÉDUCATION. Scratch, AlgoBox, Python. Trimestriel - n 15 - janvier 2011 Numéro spécial 16 activités TICE pour le lycée

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

PROCÉDURE D AIDE AU PARAMÉTRAGE

Exercices - Polynômes : corrigé. Opérations sur les polynômes

TECHNIQUES DE CRYPTOGRAPHIE

Les risques liés à la signature numérique. Pascal Seeger Expert en cybercriminalité

: protection de la vie privée dans le contexte des services mobiles sans contact

Chapitre 7. Sécurité des réseaux. Services, attaques et mécanismes cryptographiques. Hdhili M.H. Cours Administration et sécurité des réseaux

Table des matières. I Mise à niveau 11. Préface

NOTICE TELESERVICES : Créer mon compte personnel

Qu est-ce qu un outil de travail collaboratif Google Drive?

Chapitre VI - Méthodes de factorisation

Installation et utilisation de Cobian Backup 8

Cours d initiation à la programmation en C++ Johann Cuenin

Du 03 au 07 Février 2014 Tunis (Tunisie)

PUBLIC KEY INFRASTRUCTURE. Rappels PKI PKI des Impôts PKI de la Carte de Professionnel de Santé

Maple: premiers calculs et premières applications

Le guide des parents

La prise de conscience de la Cyber Sécurité est en hausse

Vous avez cliqué sur le lien disponible sur le Site Uniformation. Vous venez d arriver sur cette page.

Le nombre d or et Fibonacci

CRYPTOGRAPHIE. Chiffrement par flot. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

GUIDE D UTILISATION. Gestion de compte. à destination des intermédiaires

Richard MONTBEYRE Master 2 Professionnel Droit de l Internet Administration Entreprises. La banque en ligne et le protocole TLS : exemple

Création d un compte Exchange (Vista / Seven)

Tutoriel Infuse Learning. Créer des quizzes multimédias sur ordinateur ou tablette

Configuration APN internet Réseau 3G «Terminaux et tablettes sous Android» Configuration APN «internet» sur système Android :

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique

Objets et Programmation. origine des langages orientés-objet

1 Introduction C+ + Algorithm e. languag. Algorigramm. machine binaire. 1-1 Chaîne de développement. Séance n 4

Transcription:

Cryptosystème asymétrique - RSA Rivest Shamir Adleman Université de Rennes 1 Algèbre & Arithmétique 1 6 décembre 2011

Plan 1- Utilité du RSA Exemple d utilisation de RSA avec la messagerie 2- Fondement de la cryptographie asymétrique 3- Fonctionnement du RSA 3.1- Génération des clés 3.2- Chiffrement et déchiffrement 3.3- Exemple pratique avec maple 4- Pourquoi cela fonctionne? 4.1- Vérifions qu on retrouve le message initial 4.2- RSA est-il sûr? 5- Inconvénients du RSA

Utilisation du RSA RSA du nom de ses auteurs est un algorithme de chiffrement "asymétrique" utilisé dans les applications et services demandant de la sécurité. Actuellement, on utilise RSA dans : les banques les messageries sur internet mail (voir exemple) les achats et paiements en ligne etc. Le chiffrement asymétrique est un chiffrement qui utilise une clé publique et une clé secrète (on dit aussi algorithme à clé publique). Les algorithmes de chiffrement asymétrique n ont commencé à vu qu à partir de 1978 avec le RSA, grâce aux études théoriques de Diffie et de Hellman en 1976.

Exemple d utilisation de RSA avec la messagerie

Exemple d utilisation de RSA avec la messagerie On clique sur l icône gauche de la barre des tâches puis sur plus d informations. On peut aussi appuyer sur Ctrl+I, puis sur l onglet sécurité.

Exemple d utilisation de RSA avec la messagerie On clique sur la commande Afficher le certificat

Exemple d utilisation de RSA avec la messagerie On clique sur l onglet Détails

Exemple d utilisation de RSA avec la messagerie Dans le 2ième cadre, on clique sur Algorithme clé publique du sujet Dans le 3ième cadre, on peut lire Chiffrement PKCS #1 RSA

Exemple d utilisation de RSA avec la messagerie Dans le deuxième cadre, on clique sur Clé publique du sujet Dans le 3ième cadre, on lit la clé publique de 2048 bits, écrit en base hexadécimale.

Fondement de la cryptographie asymétrique La cryptographie asymétrique est inventée théoriquement par Diffie et Hellman, en 1976, mais ils étaient incapables de donner des exemples. La cryptographie asymétrique, ou cryptographie à clé publique est fondée sur l existence de fonctions à sens unique. Une fonction à sens unique est une application bijective qui peut être aisément calculer et difficilement inverser : f : A B telle qu il est facile de calculer f (a), a A, mais très difficile à calculer f 1 (b), b B. Difficile à calculer signifie que le temps pour calculer l inverse est presque infinie (largement supérieur à 1000 ans).

Fonctionnement du RSA La fonction a sens unique utilisée dans le RSA est la fonction puissance modulaire qu on appelle aussi exponentiation modulaire : f : A B, x x e (mod N) et f 1 : B A, x x d (mod N) Il est clair que si N, e et d sont petits (10 chiffres, voir même jusqu à 100 chiffres), on peut facilement inverser. Ainsi le RSA peut se décomposer en 3 étapes : (1) trouver les bons nombres N, e et d : la génération des clés, (2) calculer f (x), pour x A : le chiffrement, (3) calculer f 1 (x), pour x B : le déchiffrement.

Génération des clés Trouver les nombres N, e et d se fait en plusieurs étapes : 1. choisir p et q, deux nombres premiers "grands" et distincts, 2. calculer le module de chiffrement : N = pq, 3. calculer l indicatrice d Euler de n : ϕ(n) = (p 1)(q 1), 4. choisir un entier "petit" e premier avec ϕ(n) 5. calculer d : l inverse de e (mod ϕ(n)) Remarques : L étape 1 est possible grâce au test de primalité à l étape 1, "grand" signifie que log 2 (N) 1024 bits à l étape 4, l entier e = 2 16 + 1 = 65537 (actuellement) à l étape 5, l entier d existe grâce à Bezout. La clé publique est (N, e) et la clé secrète est d.

Chiffrement et déchiffrement On choisit les ensembles A = B = {1,..., N}. Le chiffrement peut être décomposer en deux étapes : 1. choisir un entier a A (a est le message) 2. calculer C = a e (mod N) Le déchiffrement se fait en une seule étape : 1. calculer M = C d (mod N) Remarque : Calculer une puissance (ou une exponentiation) de la forme a k (mod N) est très facile. Pour cela, on décompose k en base 2, ce qui coûte 2 log 2 (k) opérations.

Exemple pratique avec maple # Génération des clés # génération des nombres premiers MyPrime := proc(x) local p; p := rand(x)(); while isprime(p) = false do p:=p+1; # appelé encore rand prendrait beaucoup de temps end do; return p; end proc;

Exemple pratique avec maple # Génération des clés # génération des nombres premiers p := MyPrime(2 1024); q := MyPrime(2 1024); # module - l indicatrice d Euler et exposant de chiffrement N := p*q; PHI := (p-1)*(q-1); e := 2 16+1; # exposant de déchiffrement igcdex(e,phi, d, v ); # on vérifie Bézout et calcule d e*d+v*phi; d := d mod PHI;

Exemple pratique avec maple # Génération des clés # génération des nombres premiers p := MyPrime(2 1024); q := MyPrime(2 1024); # module - l indicatrice d Euler et exposant de chiffrement N := p*q; PHI := (p-1)*(q-1); e := 2 16+1; # exposant de déchiffrement igcdex(e,phi, d, v ); # on vérifie Bézout et calcule d e*d+v*phi; d := d mod PHI; # Chiffrement : a := rand(n)();# on choisit un message C := a e mod N; # ce calcul est trop coûteux, alors solution : C := a & e mod N; # Déchiffrement et vérification M := C & d mod N; evalb(m = a);

Vérifions qu on retrouve le message initial D abord le théorème d Euler, pour tout a premier avec N, on a a ϕ(n) 1 (mod N). Donc, pour retrouver le message initial, on calcule : C d (a e ) d a ed (mod N). Or d est l inverse de e(mod ϕ(n)), c-a-d il existe k Z tel que Donc ed + kϕ(n) = 1 ed = 1 kϕ(n). C d a ed a 1 kϕ(n) a a kϕ(n) a (a ϕ(n) ) k a( mod N).

RSA est-il sûr? Connaissant simplement la clé publique (N, e), peut-on trouver la clé privé d, en un temps raisonnablement court? Pour calculer d, il suffit de connaître ϕ(n) (non publique). La meilleur méthode pour calculer ϕ(n) est de factoriser N. La factorisation d un entier est très coûteux en calcul, sauf si on utilise un ordinateur quantique. Par exemple, la méthode naïve consistant à trouver les diviseurs de N coûte 10 30 années pour une clé N de 400 bits en effectuant 10 10 opérations par seconde. En 2011, le plus grand supercalculateur, basé au Japon, peut faire jusqu à 10 16 opérations par seconde avec 88128 processeurs de 2GHz composés de 8 cœurs chacun.

Inconvénients du RSA On a deux inconvénients du RSA, lié à la taille de la clé : a) lenteur quand on veut chiffrer et déchiffrer un nombre important de données (communications téléphoniques,...) b) pour plus de sécurité, il faut augmenter la taille de la clé (problème surtout avec des matériaux disposant de peu de ressources : smartphone, tablette, mini-ordinateur, etc.) Pour chiffrer un nombre important de données, on utilise des algorithmes symétriques qui utilise une seule clé privée pour chiffrer et pour déchiffrer, c est le cas de l AES. Pour éviter d augmenter la clé de RSA, il existe d autres alternatives, comme celles liées au problème du logarithme discret : si l on donne a et b, trouver k N tel que a k = b?