Chapitre 5: La cryptographie à clé publique: RSA



Documents pareils
Cryptographie et fonctions à sens unique

Cryptologie à clé publique

Cryptographie. Cours 3/8 - Chiffrement asymétrique

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

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

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

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

Mieux comprendre les certificats SSL THAWTE EST L UN DES PRINCIPAUX FOURNISSEURS DE CERTIFICATS SSL DANS LE MONDE

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

Sécurité de l'information

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

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

ÉPREUVE COMMUNE DE TIPE Partie D

Guide d'initiation aux. certificats SSL. Faire le bon choix parmi les options qui s'offrent à vous en matière de sécurité en ligne. Document technique

Calculateur quantique: factorisation des entiers

Conversion d un entier. Méthode par soustraction

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

D31: Protocoles Cryptographiques

Sécurisez votre serveur Web Internet Information Services de Microsoft (MS IIS) avec un certificat numérique de thawte thawte thawte thawte thawte

I.1. Chiffrement I.1.1 Chiffrement symétrique I.1.2 Chiffrement asymétrique I.2 La signature numérique I.2.1 Les fonctions de hachage I.2.

Chapitre 1 I:\ Soyez courageux!

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

Certificats X509 & Infrastructure de Gestion de Clés. Claude Gross CNRS/UREC

Signature électronique. Romain Kolb 31/10/2008

Cryptographie. Master de cryptographie Architectures PKI. 23 mars Université Rennes 1

Gestion des Clés. Pr Belkhir Abdelkader. 10/04/2013 Pr BELKHIR Abdelkader

Manuel Utilisateur Version 1.6 Décembre 2001

Université Paris-Dauphine DUMI2E 1ère année, Applications

LES SECURITES DE LA CARTE BANCAIRE

Protocoles cryptographiques

Certificats (électroniques) : Pourquoi? Comment? CA CNRS-Test et CNRS

Aristote Groupe PIN. Utilisations pratiques de la cryptographie. Frédéric Pailler (CNES) 13 janvier 2009

Une version javascript sera disponible directement dans le cours prochainement.

Codage d information. Codage d information : -Définition-

Fonction de hachage et signatures électroniques

CA SIC Directives de certification Certificate Practice Statement (CPS) du SIC Customer ID CA 1024 Level 2

Vous revisiterez tous les nombres rencontrés au collège, en commençant par les nombres entiers pour finir par les nombres réels.

Manuel d utilisation du logiciel RÉSULTATS. Édition destinée aux départements

Crypter le courrier. Pourquoi crypter? Les clés de cryptage. Supplément au manuel Internet sécurité d'abord!

Royal Military Academy Brussels, BELGIUM Secure Information Storage in the Cloud

Jeux de caracte res et encodage (par Michel Michaud 2014)

Protocoles d authentification

Politique de Certification Autorité de Certification Signature Gamme «Signature simple»

Date : Tangram en carré page

Principes de cryptographie pour les RSSI

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

TECHNIQUES DE CRYPTOGRAPHIE

Petite introduction aux protocoles cryptographiques. Master d informatique M2

Manuel d'utilisation d'apimail V3

Le protocole sécurisé SSL

INF 4420: Sécurité Informatique Cryptographie II

Gestion des certificats digitaux et méthodes alternatives de chiffrement

Le chiffre est le signe, le nombre est la valeur.

Devoir Surveillé de Sécurité des Réseaux

e)services - Guide de l utilisateur e)carpa

DISTANT ACESS. Emna TRABELSI (RT3) Chourouk CHAOUCH (RT3) Rabab AMMAR (RT3) Rania BEN MANSOUR (RT3) Mouafek BOUZIDI (RT3)

Licence Sciences et Technologies Examen janvier 2010

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

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Le format OpenPGP. Traduit par : Sébastien Person. personseb@yahoo.fr. Matthieu Hautreux. matthieu.hautreux@insa-rouen.fr.

Audit des risques informatiques. Introduction à la Cryptographie Pierre-François Bonnefoi

Informatique Générale

IV- Comment fonctionne un ordinateur?

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

Utilisez Toucan portable pour vos sauvegardes

Table des matières Hakim Benameurlaine 1

Gestion des clés cryptographiques

Représentation d un entier en base b

Introduction à l étude des Corps Finis

Livre blanc. Sécuriser les échanges

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

Documentation SecurBdF

Compter à Babylone. L écriture des nombres

La sécurité dans les grilles

Achat V9.7 Dématérialisation des Achats et des Marchés Publics

ETUDE DES MODELES DE CONFIANCE

Coupez la ligne des courriels hameçons

L identité numérique. Risques, protection

L'assistance à distance

FORMATION SUR «CRYPTOGRAPHIE APPLIQUEE

Panorama de la cryptographie des courbes elliptiques

La Clé informatique. Formation Excel XP Aide-mémoire

Secure de la Suva. Brochure à l intention des cadres et des responsables informatiques

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

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

Initiation au cryptage et à la signature électronique

TP 1 : 1 Calculs en binaire, octal et hexadécimal

Processus 2D-Doc. Version : 1.1 Date : 16/11/2012 Pôle Convergence AGENCE NATIONALE DES TITRES SECURISÉS. Processus 2D-Doc.

ApiCrypt - Réception des résultats de biologie

14.1. Paiements et achats en ligne

Algorithme. Table des matières

Guide d'utilisation. Centre des ressources Demande électronique de matériel publicitaire. Juin 2005

Ordonnance sur les services de certification électronique

La cryptographie dans le système bancaire

Audit des risques informatiques

INFORMATIONS DECISIONS ACTIONS. Entreprises Informations Décisions Actions État des ventes Prévisions Comportement consommateur. Augmenter 20 % le CA

avec des nombres entiers

Espace Numérique Régional de Santé Formation sur la messagerie sécurisée. Version Auteur : Nathalie MEDA

Sécurisation avancée des données de cartes bancaires Guide Hôtel v1.0 SECURISATION AVANCEE DES DONNEES BANCAIRES. Guide Hôtel

Transcription:

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 53 Chapitre 5: La cryptographie à clé publique: RSA 5.1 Quelques nouveaux outils mathématiques (appliqués dans MuPAD) Rappels : Deux nombres d et e sont dits inverses modulo n si : d e 1 (mod n). d admet un inverse modulo n ssi d et n sont premiers entre eux. Exemple : Déterminer l'inverse de 7 modulo 20 (sans utiliser Bézout). Exercice 5.1 : Concevoir une procédure invmod(d,n) sur MuPad permettant de calculer e, l'inverse d'un nombre d modulo n. Par exemple: doit fournir invmod(5,1848) "l'inverse de 5 mod 1848 est 1109" Exercice 5.2 : À l'aide de votre procédure, déterminer a) l'inverse de 5 modulo 39; b) l'inverse de 37 modulo 123456789. Constatation : Vous avez dû constater, dans le dernier calcul, que votre procédure est relativement "lente". On peut alors proposer la commande: 1/37 mod 123456789 qui fournit immédiatement la réponse. Définition : On appelle exponentiation modulaire les calculs du type: a b (mod n) Exercice 5.3 : À l'aide de MuPAD, calculer a) 5 51 (mod 97) b) 11 22 (mod 167) c) 123456789 987654 (mod 11) Constatation : Dans ce dernier calcul, l'opération proposée dépasse les capacités de calcul de MuPAD. Mais une commande préprogrammée permet néanmoins d'obtenir la réponse powermod(a,b,n): powermod(123456789,987654,11) fournit immédiatement la réponse: 9.

54 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 5.2 La cryptographie à clé publique principe de fonctionnement Introduction : Dans les années 1970, la cryptographie n'est plus seulement l'apanage des militaires. Les banques, pour la sécurité de leurs transactions, sont devenues de grandes consommatrices de messages codés. Les chiffrements disponibles alors sont sûrs, eu égard aux possibilités d'attaques contemporaines. Le problème essentiel est alors la distribution des clés, ce secret que l'envoyeur et le destinataire doivent partager pour pouvoir respectivement chiffrer et déchiffrer. Les armées et les états ont recours aux valises diplomatiques pour ces échanges, mais ceci n'est pas accessible aux civils... cryptage décryptage texte en clair texte chiffré texte en clair En 1976, Whitfield Diffie et Martin Hellman proposent une nouvelle façon de chiffrer, qui contourne cet écueil. Commençons par expliquer leur procédé de façon imagée. Un ami doit vous faire parvenir un message très important par la poste, mais vous n'avez pas confiance en votre facteur que vous soupçonnez d'ouvrir vos lettres. Comment être sûr de recevoir ce message sans qu'il soit lu? Vous commencez par envoyer à votre ami un cadenas sans sa clé, mais en position ouverte. Celui-ci glisse alors le message dans une boîte qu'il ferme à l'aide du cadenas, puis il vous envoie cette boîte. Le facteur ne peut pas ouvrir cette boîte, car la seule clé le permettant est en votre possession. La cryptographie à clé publique repose exactement sur ce principe. Mais il s'agira de créer deux clés différentes: une permettant de crypter (clé publique) et une deuxième, ne pouvant de déduire de la précédente permettant de décrypter le message (clé privée).

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 55 clé publique clé privée On dispose d'une fonction f sur les entiers, qui possède un inverse g. On suppose qu'on peut fabriquer un tel couple ( f, g), mais que connaissant uniquement f, il est impossible (ou du moins très difficile) de retrouver g. f est la clé publique, que vous pouvez révéler à quiconque. Si Alice veut vous envoyer un message M, elle le code à l'aide de f et vous transmet M, sans aucune précaution. g est la clé secrète, elle reste en votre seule possession. Vous décodez le message en calculant: g(f (M)) = g(m ) = M. La connaissance de f par un tiers ne compromet pas la sécurité de l'envoi des messages codés, puisqu'elle ne permet pas de retrouver g. Il est possible de donner librement f, qui mérite bien son nom de clé publique. Bien sûr, il reste une difficulté : comment trouver de telles fonctions f et g? Diffie et Hellman n'ont pas eux-mêmes proposé de fonctions satisfaisantes, mais dès 1977, R. Rivest, A. Shamir et L. Adleman trouvent une solution possible, la meilleure et la plus utilisée à ce jour, la cryptographie RSA. Adi Ronald Len Shamir Rivest Adleman

56 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA Le principe général: Il est "facile" de fabriquer de grands nombres premiers p et q (pour fixer les idées, 100 chiffres). Par exemple, la commande MuPAD nextprime(12345678910) fournit le nombre premier qui suit le nombre proposé. Ici, il s'agit de: 12345678923 Étant donné un nombre entier n = p q produit de 2 grands nombres premiers, il est très difficile de retrouver les facteurs p et q. Marche à suivre: Bob Alice doit envoyer un message à Bob, elle a donc besoin de la clé publique RSA de Bob. Voici les différentes étapes: 1) Il choisit p et q deux grands nombres premiers (plus de 100 chiffres). 2) Il calcule n = p q. Le nombre n, le modulo RSA, a environ 200 chiffres. Elle est publique alors que p et q sont gardés secrets. 3) Il calcule ϕ(n) = ( p 1)(q 1), qui s'appelle la fonction d'euler, et qui doit rester secret. Retrouver ϕ (n) sans connaître p et q est aussi difficile que de factoriser n. 4) Il choisit e en s'assurant que PGDC(e, ϕ(n)) = 1. Il s'agira de l'exposant d'encryptage RSA. 5) Il calcule d, inverse de e modulo ϕ(n) et garde secret le couple (n, d). Il s'agira de la clé privée RSA. Il la garde secrète afin de pouvoir décoder par la suite le message transmis par Alice. 6) Il transmet (ou publie dans un annuaire) le couple (n, e). Ce couple s'appelle la clé publique RSA. Alice 7) Elle convertit son message "texte" en un nombre M compris entre 0 et n. 8) Elle calcule M M e (mod n) et envoie ce message crypté M. À l'aide d'un logiciel (comme MuPAD par exemple). Bob 9) Pour le décoder, il calcule M (M ) d (mod n) à l'aide de sa clé privée d. Ceci lui permet de retrouver le message d'origine car: (M ) d (M e ) d (mod n) M e d (mod n) M (mod n). 10) Il reconvertit ce nombre en un message clair.

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 57 Exemple 1: Une compagnie veut instaurer un système de commandes sur Internet. Elle instaure donc un cryptage à clé publique (RSA) pour la transmission du numéro de carte de crédit. Le numéro de carte de crédit est un numéro de 16 chiffres auquel on ajoute les 4 chiffres qui correspondent à la date d expiration, soit un nombre de 20 chiffres. La compagnie choisit donc p et q deux grands nombres premiers 1. p = 9760959751111112041886431 q = 8345523998678341256491111. Ceci donne n = p q et ϕ(n) = ( p 1)(q 1) n = 81460323853031154412157864943449033559900223014841 ϕ(n) = 81460323853031154412157846836965283770446924637300. La compagnie choisit sa clé d'encryptage e = 45879256903 et calcule son inverse d (mod ϕ(n) ): d = 61424931651866171450267589992180175612167475740167. Un client a le numéro de carte de crédit : 1234 5678 9098 7654 et la date d expiration de sa carte est le 01/06. On doit donc envoyer le message M = 12345678909876540106. Le programme d envoi calcule M M e (mod n): M = 6251765106260591109794074603619900234555266946485. Le nombre M est transmis. À la réception la compagnie calcule : (M ) d 12345678909876540106 (mod n). Qui correspond donc bien au n de la carte de crédit ainsi que sa date d'expiration. Dans la réalité, les entiers p et q choisis ne sont pas encore assez grands et un ordinateur pourrait factoriser n dans un temps convenable. Exercice 5.4 : Exercice 5.5 : À l'aide de MuPAD, contrôler que toutes les valeurs proposées (p, q, n, ϕ(n), e, d, M vérifient bien les conditions de la marche à suivre. Quelques commandes MuPAD à utiliser: isprime( ), gcd( ), powermod(,, ), Effectuer la démarche de cryptage avec la clé (n,e) proposée : (51201345568138081747, 158792633) sur le même numéro de carte de crédit M. a) Calculer M le message crypté correspondant à ce numéro. b) Vérifier que la clé ci-dessous permet de retrouver le numéro. d = 39115303732664896793 1 Ces différentes valeurs peuvent être retrouvées et recopiées sur www.javmath.c.la

58 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA Exemple 2: Alice a pris connaissance de la clé publique de Bob: (253, 3), où 253 correspond à n et 3 à e. Elle veut lui envoyer le message OUI. Elle chiffre le message selon le code standard: 14 pour O, 20 pour U et 8 pour I. O U I M (en clair) 14 20 08 M M 3 (mod 253) 214 157 006 Le message codé est donc 214 157 006. Exercice 5.6 : À l'aide de MuPad, déterminer dans ce cas simple, les 2 nombres premiers p et q, ϕ(n) et la clé d de décodage. Assurez-vous, en décryptant le message, que vous obtenez bien le message OUI en clair. Remarque: Sur un long texte, la démarche proposée dans l'exemple précédent n'aurait pas tenu longtemps à une analyse statistique de fréquences des lettres. On peut alors tenter de coder le message en le considérant en un unique bloc (exercice suivant) ou en le découpant en bloc de deux (digramme) comme le montrera l'exemple qui suit l'exercice 5.7. Exercice 5.7 : Suite de l'exemple 2: Si Alice avait voulu transmettre son message en un seul bloc, elle aurait calculé 142008 3 modulo 253. a) Montrer en quoi cette démarche n'aurait pas permis de décrypter le message correctement. b) Elle décide alors d'utiliser les nombres premiers p = 5147 et q = 7351. Montrer que la clé e = 307 est compatible puis coder ce message en un bloc. c) Calculer la clé d de décodage et assurez-vous du message décodé. Exemple 3: Encryptage d'un message par blocs (digrammes) Supposons que la clé publique de Bob soit (1943, 5). Alice veut lui envoyer le message: OKPOURLUNDI en utilisant le code standard sur 26 lettres. Elle convertit ces lettres en chiffres comme d'habitude: O K P O U R L U N D I 14 10 15 14 20 17 11 20 13 03 08 Afin d'obtenir exactement 6 blocs de 2 lettres, elle ajoute deux zéros à la fin du chiffre. Elle obtient: OK PO UR LU ND IA 14 10 15 14 20 17 11 20 13 03 08 00

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 59 Alice va numériser les digrammes de la manière suivante: Le digramme OK devient d 1 = 14 26 1 + 10 = 374. Le digramme PO devient d 2 = 15 26 1 + 14 = 404. Etc En utilisant la clé publique de Bob, elle obtient ainsi: OK PO UR LU ND IA M 374 404 537 306 341 208 M = M 5 (mod 1943) 1932 635 68 1705 71 660 Elle peut envoyer le message soit directement sous sa forme numérique : 1932 635 68 1705 71 660 soit en convertissant ces nombres, selon le même principe, en lettres : 1932 = 2 26 2 + 22 26 + 8 qui correspond au trigramme CWI. 635 = 24 26 + 11 qui correspond au digramme YL. Etc M = M 5 (mod 1943) 1932 635 68 1705 71 660 CWI YL CQ CNP CT ZK Elle enverra donc le message : CWI YL CQ CNP CT ZK Bob recevant ce message, il le décrypte à l'aide de sa clé privée (n = 1943, d = 1109): CWI YL CQ CNP CT ZK M 1932 635 68 1705 71 660 M = (M ) 1109 (mod 1943) 374 404 537 306 341 208 14 26 + 10 15 26 + 14 20 26 + 17 11 26 + 20 13 26 + 03 08 26 + 00 OK PO UR LU ND I(A) Le A terminal étant dû à la technique d'encryptage, il doit donc être supprimé. Exercice 5.8 : Exercice 5.9 : a) Coder, à l'aide de digrammes, le message JETAIME à l'aide de la clé publique (2077, 19). b) Retrouver la clé privée d puis décoder ce nouveau message: 3 261 833. En appliquant une démarche comparable, mais en décomposant le message en trigrammes, montrer que le message YES chiffré à l'aide de la clé publique (46927, 39423) devient BFIC.

60 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA Exercice 5.10 : Votre professeur d'oc envoie votre moyenne au secrétariat via un courriel crypté en RSA. La clé publique du secrétariat est (55, 7) et le message crypté envoyé est 25. Quelle est votre moyenne? Remarque: Les algorithmes à clé publique (on parle aussi de chiffrement asymétrique) ont pourtant un grave défaut : ils sont lents, beaucoup plus lents que leurs homologues symétriques. Pour des applications où il faut échanger de nombreuses données, ils sont inutilisables en pratique. On a alors recours à des cryptosystèmes hybrides. On échange des clés pour un chiffrement asymétrique grâce à la cryptographie à clé publique, ce qui permet de sécuriser la communication de la clé. On utilise ensuite un algorithme de chiffrement symétrique. Le célèbre PGP, notamment utilisé pour chiffrer le courrier électronique, fonctionne sur ce principe. 5.3 La cryptographie à clé publique transactions bancaires (WEB) Comment ça marche? : La majorité des transactions sécurisées sur Internet utilisent l algorithme RSA avec des clés publiques de différentes tailles. En voici une, fictive, qui pourrait être celle de votre banque : ED 74 A7 6C D3 3A E3 77 0B BC FC DF E5 0D 32 C4 35 10 86 D8 B8 89 5E F8 AC 23 14 1D 27 7F D3 FA 78 4F 55 60 0B 6A C9 C0 83 0B 90 A0 5F 6B 69 2A F7 12 23 44 25 A7 C0 5F 96 28 35 EB B4 C8 BE DE 3C 35 59 EF 92 49 17 F6 1D A6 6B 75 3E 78 BD 9C 6C 14 0A 7C 09 35 29 9C C2 B9 F2 1C 77 2C 57 1F D4 04 0B 09 C6 1D A4 F4 13 27 45 0B 2C D7 8B B5 9C 75 5C 38 AF 18 78 04 9B F6 A6 0E DD EB 18 AE 2A 8D 96 35 28 63 48 F2 A5 92 C0 4C D5 4B 02 39 38 35 73 74 04 CE 6C F6 CB F1 55 08 FC EA DA 17 C6 A7 7C C0 EE E7 0B FB CB 99 B3 11 94 C4 26 A1 C5 EE 31 FC CB 1F F2 89 0F A9 CD E1 10 E6 0F 96 D3 6B FE D0 65 F7 A0 95 95 31 35 96 13 74 8F 7D 08 13 6E 1D DA 8F 7C 59 FC 62 BC 0F CD 80 72 3E 2D 29 4A 8C 78 C0 23 86 6D EF FB 8C C3 3F 73 0C AE 24 5D 25 90 86 44 DD 81 45 A5 A6 37 81 0F 7D Il s agit d un nombre hexadécimal, c est-à-dire écrit en base 16. Si on le convertissait en base 10 (cf. paragraphe suivant), on obtiendrait : 237 116 167 108 15 125 En vous loguant sur le site de votre banque, une phase d authentification a eu lieu sans que le vous ne vous en rendiez compte. En effet, lorsque vous arrivez sur une page sécurisées (https) via votre navigateur, celui-ci vérifie également l identité de la banque via une autorité de certification. Si le certificat n est pas valable ou s il est manquant, le navigateur le signale au client. Un tel certificat peut être consulté en cliquant sur le cadenas d une page sécurisée. En voici un exemple :

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 61 Une autorité de certification est une organisation qui recense des clés publiques associées et leurs propriétaires légitimes. Lors d une communication sécurisée, les deux parties font confiance à cette organisation. Quand le navigateur du client reçoit la clé publique de la banque, il peut contacter l autorité de certification pour lui demander si la clé publique appartient effectivement à cette banque. Il va de soi que la réponse est signée (sous forme également cryptée) par l autorité de certification. Étant donné que la banque utilise une clé publique certifiée par l autorité de certification, un site frauduleux qui imiterait le site de la banque ne peut pas envoyer sa propre clé sans que le navigateur ne le détecte. Lorsque cette étape s est donc passée sans encombre, vous devrez préciser votre nom d utilisateur avec différents mots de passe personnels (NIP) selon le protocole proposé par votre banque. C est la phase d authentification du client. Vous pourrez alors enfin effectuer votre transaction bancaire. Pour plus d informations sur le sujet : http://fr.wikipedia.org/wiki/infrastructure_à_clés_publiques

62 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 5.4 Il n y a pas que la base 10 dans la vie Introduction : Le système numérique utilisé aujourd'hui par les humains est construit à l'aide de dix différents symboles, soient 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Y a-t-il une raison particulière pour laquelle les humains ont choisi 10 différents symboles plutôt que 3 ou 77. Certains disent que c'est par pur hasard, tandis que d'autres suggèrent que c'est parce que nous sommes munis de 10 doigts. Nous ne le saurons probablement jamais d'une façon certaine. En mathématiques, on dit que notre système numérique est en base 10 puisqu'on y trouve que dix symboles différents. On peut visualiser ceci sur un compteur électrique : Ainsi le nombre 4322 peut s écrire sous la forme : 4000 + 300 + 20 + 2 ou plutôt 4 10 3 + 3 10 2 + 2 10 1 + 2 10 0 2 0 0 2 0 2 0 9 2 1 0 2 2 9 9 3 0 0 Mais il est tout à fait possible de faire des mathématiques avec seulement deux symboles (on dit qu'il s'agit d'un système numérique en base 2). Ce système numérique construit qu'avec les symboles 0 et 1 est un système communément appelé le système numérique binaire. Le système numérique binaire est précisément celui utilisé par les ordinateurs pour faire les calculs. Visualisons ceci à nouveau sur un compteur qui tourne : 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 Ainsi le nombre 1011010 peut s écrire sous la forme : 1 2 6 + 0 2 5 + 1 2 4 + 1 2 3 + 0 2 2 + 1 2 1 + 0 2 0

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 63 Le système numérique en base 3 veut dire un système où tous les nombres ne sont faits qu'avec trois symboles, soient 0, 1, 2. Un berger de l'antiquité aurait très bien pu compter ses moutons comme suit: 1, 2, 10, 11, 12, 20, 21, 22, 100, 101, 102, 110, 111, 112, 120, 121, 122, 200, 201, 202, 210, 211, 212, 220, 221, 222, 1000,... Pour ne pas confondre le "100 en base 3" du berger avec notre "100 en base 10" (puisque que de toute évidence ils représentent des quantités différentes) on écrit 100 3 comme abréviation de "100 en base 3". En comptant très attentivement on voit que pour le berger, 111 3 moutons correspondent à 13 = 13 10 moutons pour nous. En effet : 5.4 Quelques bases utilisées dans le passé ou actuellement : les base 2 (système binaire), base 8 (système octal), base 16 (système hexadécimal) sont utilisées en informatique, la base 10 (système décimal), la plus commune, aujourd'hui la référence dans le domaine des sciences, la base 12 (système duodécimal), de manière embryonnaire, a été utilisée par les Égyptiens pour le compte en heures et mois, la base 20 (système vigésimal) a été utilisée par les Mayas et les Aztèques, ainsi que de manières alternatives en France (dont on garde en l'héritage pour quatre-vingts) la base 26 utilisée en cryptographie pour chiffrer les 26 caractères de l alphabet, la base 60 (système sexagésimal), dans la mesure du temps et des angles, il a été utilisé par les Sumériens, les Akkadiens, puis les Babyloniens. la base 150 ou base indienne, utilisée notamment dans la table astronomique appelée Table indienne d al-khawarizmi. 5.5 Conversion d une base vers une autre : Lorsque l on veut passer d une base à une autre, on utilisera la méthode décrite dans les exemples ci-dessous, en utilisant éventuellement la base 10 comme «pont» :

64 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA Exemples : Convertir en base 10 le nombre : 101001 2 Convertir en base 3 le nombre : 34 10 Convertir en base 5 le nombre 1231 4 Exercice 5.11 : Convertir les nombres suivants en base 10 a) 110101001 2 b) 110101001 3 c) 444 5 d) 1993 11 e) 7A6 16 (on utilise les lettres A à F pour noter les chiffres de 10 à 15 dans la base 16) Exercice 5.12 : Convertir a) 255 10 en base deux b) 56 10 en base sept c) 2034 10 en base onze (utiliser éventuellement la lettre A pour représenter le dixième chiffre de la base onze)

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 65 Exercice 5.13 : Une autre méthode pour l exercice 12? Convertir a) 55 7 en base deux b) 32 4 en base sept Reprenons la conversion de 2034 10 11 Exercice Défi : Exercice 5.14 : Proposer une procédure MuPAD permettant de convertir un nombre de la base 10 en une autre base. Contrôler vos réponses obtenues dans l exercice 5.12 à l aide de cette nouvelle méthode. Exemples 2 : Convertir en base 10 "le nombre" : COU 26 Convertir en base 26 le nombre : 23101 10 Exercice 5.15 : Convertir en base 10 ou en base 26 les "nombres proposés" a) 9992 10 b) NON 26 2 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 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

66 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 5.6 Les opérations en binaire (ou toute autre base ): Le fait de travailler en base 2 ne change rien aux règles profondes qui lient les nombres. On peut donc dire qu en binaire, les opérateurs existant en base 10 s appliquent avec les mêmes règles. Exemple : L addition : 110 2 + 10 2 = Exemple : La multiplication 1010 2 110 2 = Remarque : La soustraction et la division me direz-vous Et bien ça marche aussi Mais je vous laisse découvrir ceci dans le cadre d un cours de math plus sérieux ou sur Internet. Exercice 5.16 : Effectuer les opérations suivantes en binaire, puis après conversion en base 10, vérifier le résultat : a) 1111101 2 + 1101011 2 b) 1101 2 10001 2

LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA 67 Références bibliographiques [1] SIMON SINGH. Histoire des codes secrets. Livre de Poche, 2001. [2] DIDIER MULLER. Les codes secrets décryptés, City Editions, 2007 [3] DIDIER MULLER. Les 9 couronnes, Ed. : Société jurassienne d'emulation, 2009 Références WEB [4] Le site compagnon du polycopié: http://www.javmath.c.la [5] Ars Cryptographica : http://www.apprendre-en-ligne.net/crypto/menu/index.html [6] La Cryptogr@phie expliquée : http://www.bibmath.net/crypto/index.php3

68 LA CRYPTOGRAPHIE A CLE PUBLIQUE: RSA