810 likes | 1.02k Views
Lycée Jules Verne. Cryptographie et nombres premiers. Limours, 19 Novembre 2003 Michel Waldschmidt. La sécurité des cartes bancaires. Applications de la cryptographie. Les cartes bancaires Sécurisation du Web Images numériques La télévision cryptée Les télécommunications ….
E N D
Lycée Jules Verne Cryptographie et nombres premiers Limours, 19 Novembre 2003 Michel Waldschmidt
Applications de la cryptographie • Les cartes bancaires • Sécurisation du Web • Images numériques • La télévision cryptée • Les télécommunications • …
Historique chiffrement par transpositions et substitutions alphabétiques (Jules César). 1586, Blaise de Vigenère (clef: «table de Vigenère») 1850, Charles Babbage (fréquence de répétition des lettres)
Toute méthode de chiffrement est connue de l'ennemi La sécurité du système ne dépend que du choix des clés. Auguste Kerckhoffs «La cryptographie militaire», Journal des sciences militaires, vol. IX, pp. 5–38, Janvier 1883, pp. 161–191, Février 1883 .
1917, Gilbert Vernam (masque jetable ) Exemple:le téléphone rouge 1940, Claude Shannon démontre que pour être totalement sûrs, les systèmes à clefs privées doivent utiliser des clefs d'une longueur au moins égale à celle du message à chiffrer.
Alan Turing Déchiffrage des messages codés par Enigma Informatique théorique
Interprétation des hiéroglyphes • Jean-François Champollion (1790-1832) • La Pierre de Rosette (1799)
Colossus Max Newman, le premier ordinateur électronique programmable créé a Bletchley Park avant 1945
Théorie de l’Information Claude Shannon A mathematical theory of communication Bell System Technical Journal, 1948.
Claude E. Shannon, "Communication Theory of Secrecy Systems ", Bell System Technical Journal , vol.28-4, page 656--715, 1949. .
DES: Data Encryption Standard • 1970, le NBS (National Bureau of Standards) lance un appel dans le Federal Register pour la création d'un algorithme de cryptage • ayant un haut niveau de sécurité lié à une • clé secrète compréhensible ne devant pas dépendre de la confidentialité de l'algorithme • adaptable et économique • efficace et exportable Le DES a été approuvé en 1978 par le NBS
Algorithme DES:combinaisons, substitutions et permutations entre le texte à chiffrer et la clé • fractionnement du texte en blocs de 64 bits • permutation des blocs • découpage des blocs en deux parties: gauche et droite • étapes de permutations et de substitutions répétées 16 fois • recollement des parties gauche et droite puis permutation initiale inverse
Diffie-Hellman:cryptographie à clef publique • W. Diffie and M.E. Hellman, New directions in cryptography, IEEE Transactions on Information Theory, 22 (1976), 644-654
R.L. Rivest, A. Shamir, and L.M. Adleman, A method for obtaining digital signatures and public-key cryptosystems, Communications of the ACM (2) 21 (1978), 120-126
Mathématiques de la cryptographie • Algèbre • Arithmétique = théorie des nombres • Géométrie
Théorie du langage • Alphabet - par exemple {0,1} • Lettres (ou bits): 0 et 1 • Mots (octets - exemple 0 1 0 1 0 1 0 0)
ASCII American Standard Code for Information Interchange Lettre octet A: 01000001 B: 01000010 … …
Clef publique Multiplier deux grands nombres est facile. Décomposer un grand nombre en produit de deux facteurs est plus difficile.
Exemple p=1113954325148827987925490175477024844070922844843 q=1917481702524504439375786268230862180696934189293 pq=2135987035920910082395022704999628797051095341826417406442524165008583957746445088405009430865999
Quizz du malfaiteur Apprenez les maths pour devenir chef du Gang http://www.parodie.com/monetique/hacking.htm http://news.voila.fr/news/fr.misc.cryptologie
Test de primalité • Étant donné un entier, donner un algorithme permettant de décider s’il est premier ou composé. • 8051 est composé 8051=8397, 83 et 97 sont premiers. Limite actuelle : plus de 1000 chiffres
Nombres premiers industriels • Tests probabilistes. Ce ne sont pas des tests de primalité au sens strict: ils ne permettent pas de s'assurer de façon certaine qu'un nombre est premier. Ils sont pourtant très utilisés dans les cas où un faible taux d'erreur est acceptable: on les appelle des nombres premiers industriels .
Agrawal-Kayal-Saxena • Manindra Agrawal, Neeraj Kayal and Nitin Saxena, PRIMES is in P (Juillet 2002) http://www.cse.iitk.ac.in/news/primality.html
Le plus grand nombre premier connu 2 13 466 917 -1 4 053 946 chiffres 14 novembre 2001 http://primes.utm.edu/largest.html
Les quatre plus grands nombres premiers connus sont des nombres premiers de la forme 2a-1 • On connaît 9 nombres premiers ayant plus de 500 000 chiffres et 76 ayant plus de 200 000 chiffres
Nombres de Mersenne(1588-1648) • Les nombres de Mersenne sont les nombres de la forme Mp=2p -1 avec p premier. • 22 944 999 -1 est divisible par 314584703073057080643101377
Nombres parfaits • Un nombre entier n est parfait s’il est égal à la somme de ses diviseurs autres que lui-même. • Les diviseurs de 28 autres que 28 sont 1,2,4,7,14 et 28=1+2+4+7+14. • Noter que 28=4 7 et 7=M3.
Nombres parfaits • Les entiers pairs parfaits sont ceux de la forme 2 p -1 Mpavec Mp =2p -1 nombre premier de Mersenne (donc p premier). • On ne sait pas s’il existe des nombres parfait impairs!
Algorithmes de factorisation • Étant donné un entier, le décomposer en facteurs premiers • Limite actuelle: nombres de 150 chiffres. http://www.rsasecurity.com/rsalabs/challenges/
Challenge Number Prize $US • RSA-576 $10,000 Not Factored • RSA-640 $20,000 Not Factored • RSA-704 $30,000 Not Factored • RSA-768 $50,000 Not Factored • RSA-896 $75,000 Not Factored • RSA-1024 $100,000 Not Factored • RSA-1536 $150,000 Not Factored • RSA-2048 $200,000 Not Factored
RSA-576 Prize: $10,000 Status: Not Factored Decimal Digits: 174 • 188198812920607963838697239461650439807163563379417382700763356422988859715234665485319060606504743045317388011303396716199692321205734031879550656996221305168759307650257059 • Digit Sum: 785
21024 + 1 = 45592577 6487031809 4659775785220018543264560743076778192897 p252 http://discus.anu.edu.au/~rpb/F10.html
Nombres de Fermat(1601-1665) • Les nombres de Fermat sont les nombres Fn=2 2 n+1. • F1=5, F2=17, F3=257, F4=65537 sont premiers. • Constructions à la règle et au compas.
Euler(1707-1783) • F5=232+1 est divisible par 641 4 294 967 297= 641 6 700 417
John Cosgrave (1946- ) Février 2003: Le nombre de Fermat 222 145 352 + 1 est divisible par 322 145 353 + 1 qui est un nombre premier ayant 645 817 chiffres 12 octobre 2003 Le nombre de Fermat 2 22 478 782 + 1 est divisible par 3 22 478 785 + 1 qui est un nombre premier ayant 746 190 chiffres www.spd.dcu.ie/johnbcos
Calculs modulo n • On fixe un entier n : c’est la taille des messages que l’on va envoyer. • On effectue tous les calculs modulo n : on remplace chaque entier par le reste de la division par n. • Exemple: n=1000 on garde seulement les 3 derniers chiffres.
Division par n • Soit n un entier positif. • Tout entier positif x s’écrit x=q n+r, avec q et r entiers positifs et r<n. • Le nombre q est le quotient tandis que r est le reste dans la division de x par n. • Exemple: 123456789=1234561000+789 • Si x est inférieur à n, le reste est x lui même.
Division par 2 • Le reste de la division d’un entier x par 2 est 0 si x est pair 1 si x est impair.
Somme et produit modulo n • Quand x et y sont deux entiers qui ont le même reste dans la division par n, on écrit x y mod n. • En particulier si le reste de xmodulo n esta alors x a mod n. • Si xa mod n etyb mod n alors x+y a +b mod netxy ab mod n.
Calculs modulo 2 • Prenons n=2. • Si x est pair on a x 0 mod 2 tandis que si x est impair on a x 1 mod 2. • Quand x et y sont deux entiers on a x y mod 2 si et seulement si x et y sont de même parité (tous deux pairs ou tous deux impairs).
Somme modulo 2 Les règles pour l’addition sont les suivantes pair + pair = pair 0+0=0 pair + impair = impair 0+1=1 impair + pair = impair 1+0=1 impair + impair = pair 1+1=0
Produit modulo 2 Les règles pour la multiplication sont les suivantes pair pair = pair 0 0=0 pair impair = pair 0 1=0 impair pair = pair 1 0=0 impair impair = impair 1 1=1