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

Un code secret peut-il permettre une transaction sécurisée? Michel Waldschmidt 14 novembre 2011 Collège Jean-Jaurès, Pantin

Présentations similaires


Présentation au sujet: "Un code secret peut-il permettre une transaction sécurisée? Michel Waldschmidt 14 novembre 2011 Collège Jean-Jaurès, Pantin"— Transcription de la présentation:

1 Un code secret peut-il permettre une transaction sécurisée? Michel Waldschmidt 14 novembre 2011 Collège Jean-Jaurès, Pantin http://www.math.jussieu.fr/~miw/ SMF Promenade MathématiquePromenade Mathématique

2 2 http://www.math.jussieu.fr/~miw/ Quand vous retirez de l'argent à un distributeur de billets de banque, quand vous faites une transaction sécurisée par internet, plus généralement quand vous voulez vous identifier à distance en utilisant un réseau public, vous indiquez un code qui vous est personnel. Quel est le processus qui permet à votre correspondant de vous identifier, sans que les échanges de messages ne permettent de révéler votre mot de passe ? La théorie des nombres est l'élément clé de la solution.

3 3 Codes correcteurs derreurs: Pour faciliter la transmission de données http://www.math.jussieu.fr/~miw/ Cryptographie: Pour sécuriser la transmission de données

4 4 Aspects mathématiques de la théorie des codes en France: http://www.math.jussieu.fr/~miw/ Les principales équipes de recherche sont regroupées dans le réseau C2 'Théorie des codes et cryptographie '', qui fait partie du groupe de recherche (GDR) 'Informatique Mathématique''. http://www.gdr-im.fr/

5 5 Principaux centres: INRIA Rocquencourt Université de Bordeaux ENST Télécom Bretagne Université de Limoges Université de Marseille Université de Toulon Université de Toulouse Recherche en théorie des codes http://www.math.jussieu.fr/~miw/

6 6 Brest Bordeaux Marseille Toulouse Limoges INRIA Toulon

7 7 Codes correcteurs derreurs et transmission de données Transmissions par satellites CDs & DVDs Téléphones cellulaires

8 8 Le pôle nord de la planète Mars Le Mont Olympus sur la planète Mars Voyager 1 et 2 (1977) Trajet: Cap Canaveral, Jupiter, Saturn, Uranus, Neptune. Mariner 2 (1971) et 9 (1972)

9 9 Mariner 9 (1979) Photographies en noir et blanc de Mars Voyager (1979-81) JupiterSaturne

10 10 1998: perte de contrôle du satellite Soho Récupération grâce à une double correction par un turbo code. Les transmissions par radio sur ces engins spatiaux nutilisent que quelques watts. Malgré limportance du bruit qui vient perturber les messages, les transmissions sur des centaines de millions de km se font sans perte dinformation. NASA : mission Pathfinder sur Mars (1997)

11 11 Un CD de haute qualité a facilement plus de 500 000 erreurs! Le traitement du signal permet de corriger ces erreurs et dannuler le bruit. Sans code correcteur derreurs, il ny aurait ni CD ni DVD.

12 12 1 seconde de signal audio = 1 411 200 chiffres 0 ou 1 1980 : accord entre Sony et Philips pour une norme concernant les disques CD audio. 44 100 fois par seconde, 16 chiffres pour chacun des deux canaux stéréos

13 13 Codes et Mathématiques Algèbre (mathématiques discrètes, algèbre linéaire,…) Géométrie Probabilités et statistiques

14 14 Corps finis et théorie des codes Résolutions déquations par radicaux: théorie des corps finis (Galois fields) Evariste Galois (1811-1832) Construction de polygones réguliers par la règle et le compas Théorie des groupes

15 15 Codes et Géométrie 1949: Marcel Golay (specialiste des radars): trouve deux codes remarquablement efficaces. Eruptions de Io (planète volcanique de Jupiter) 1963 John Leech utilise les idées de Golay pour étudier les empilements de sphères en dimension 24 - classification des groupes finis simples. 1971: il ny a pas dautre code parfait corrigeant plus dune erreur que les deux trouvés par Golay.

16 16 Empilement de sphères kissing number 12

17 17 Empilement de sphères Problème de Kepler: densité maximale dun pavage de lespace par des sphères identiques / 18= 0.740 480 49… Conjecturé en 1611. Démontré en 1999 par Thomas Hales. Lien avec la cristallographie.

18 18 Géométrie projective finie Deux points déterminent une ligne (« droite »), deux droites se coupent en un point.

19 19 Plan de Fano Trois points sur chaque droite, par chaque point passent trois droites. 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0 1 1 1 0 1 0 0 0 1 Matrice dincidence: L1L2L3L4L5L6L7L1L2L3L4L5L6L7 p 1 p 2 p 3 p 4 p 5 p 6 p 7

20 20 Quelques codes utiles 1955: Codes de convolution. 1959: Bose-Chaudhuri-Hocquenghem (codes BCH). 1960: Reed-Solomon. 1970: Goppa. 1981: Géométrie algébrique

21 21 Messages Alphabet: lettres ou chiffres Exemple fondamental: {0,1} Mots: suites de lettres ou de chiffres

22 22 Corriger une erreur en répétant trois fois On envoie chaque lettre trois fois 2 mots dans le code sur 8 possibles (1 lettre pour les données, 2 lettres de contrôle) Mots du code (longueur trois) 0 0 0 1 1 1 Taux: 1/3

23 23 Corriger 0 0 1 en 0 0 0 Corriger 0 1 0 en 0 0 0 Corriger 1 0 0 en 0 0 0 et Corriger 1 1 0 en 1 1 1 Corriger 1 0 1 en 1 1 1 Corriger 0 1 1 en 1 1 1

24 24 Principe des codes corrigeant une erreur Deux mots distincts dans le code ont au moins trois lettres différentes

25 25 Distance de Hamming entre deux mots: = nombre de lettres où les deux mots diffèrent Exemples (0,0,1) et (0,0,0) sont à distance 1 (1,0,1) et (1,1,0) sont à distance 2 (0,0,1) et (1,1,0) sont à distance 3 Richard W. Hamming (1915-1998)

26 26 Distance de Hamming égale à 1 Mots obtenus en changeant une lettre

27 27 La sphère unité de Hamming La sphère unité de centre le mot bleu comporte les mots à distance 0 ou 1 La sphère unité autour dun mot

28 28 Au plus une erreur Mot envoyé Le canal Mots qui peuvent être reçus avec au plus une erreur

29 29 Mots à distance au moins 3 Les deux sphères unités sont disjointes Ces mots sont à distance au moins 3

30 30 Décoder Le mot erroné reste dans la sphère de Hamming initiale, le centre est le mot du code.

31 31

32 32 http://www.math.jussieu.fr/~miw/ Cryptographie: Pour sécuriser la transmission de données

33 Crypter pour la sécurité 33

34 Mathématiques en cryptographie Algèbre Arithmétique, théorie des nombres Géométrie Topologie, tresses Probabilités 34

35 Échange de valises Alice a une valise, un cadenas et une clé; elle veut envoyer la valise à Bob sans que Charlie ne puisse savoir ce quil y a dedans. Bob possède aussi un cadenas et une clé, mais qui ne sont pas compatibles avec ceux dAlice. 35

36 Le protocole Alice ferme la valise avec son cadenas et sa clé et lenvoie à Bob. Bob y met son propre cadenas et renvoie à Alice la valise avec les deux cadenas. Alice enlève son cadenas grâce à sa clé et renvoie la valise à Bob. Finalement Bob peut ouvrir la valise grâce à sa clé. But: en donner une traduction mathématique. 36

37 Cartes à puce ATM: Automated Teller Machine 37

38 La sécurité des cartes à puces fait intervenir trois processus différents; le code NIP, le protocole RSA et le code DES. PIN = Personal Identification Number NIP = Numéro dIdentification Personnel La carte à puce a été inventée par deux ingénieurs français, Roland Moreno (1974) et Michel Ugon (1977) http://www.cartes-bancaires.com 38

39 Code secret dune carte bancaire Vous devez vous identifier auprès de la banque. Vous avez deux clés: une publique que tout le monde connaît, une secrète (le code NIP) que personne dautre que vous ne connaît. 39

40 Les messages que vous envoyez ou que vous recevez ne doivent pas révéler votre code secret. Tout le monde (y compris la banque) ayant accès aux messages échangés peut vérifier que vous connaissez ce code secret, mais cela ne leur permet pas de le connaître. La carte à puce. Lordinateur de la banque envoie un message aléatoire. Votre réponse dépend de ce message et de votre code secret. 40

41 Cryptographie: aperçu historique Exemples plus sophistiqués: prendre une permutation quelconque (ne respectant pas forcément lordre). Transpositions alphabétiques et substitutions Jules César: remplacer une lettre par une autre dans le même ordre (décalage) Exemple: (décaler de 3) remplacer 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 par D E F G H I J K L M N O P Q R S T U V W X Y Z A B C Exemple: CRYPTOGRAPHIE devient FUBSWRJUDSKLH 41

42 800-873, Abu Youssouf Ya qub Ishaq Al Kindi Manuscrit sur le décryptage des messages. Vérification de l authenticité des textes sacrés de lIslam. XIIIè siècle, Roger Bacon: sept méthodes pour chiffrer des messages. 42

43 1850, Charles Babbage (fréquence of des lettres) Machine de Babbage (ancêtre de lordinateur) Ada, comtesse de Lovelace: premier programme 1586, Blaise de Vigenère (clé: «table of Vigenère») Cryptographe, alchimiste, écrivain, diplomate 43

44 Frequency of letters in english texts 44

45 45

46 Alphabet International de Morse Samuel Morse, 1791-1872 46

47 Déchiffrage des hiéroglyphes Jean-François Champollion (1790- 1832) Pierre de Rosette (1799) 47

48 Transmission des données Pigeons voyageurs : première croisade – Siège de Tyr, Sultan de Damas Guerre franco-allemande de 1870, siège de Paris Centres militaires pour létude des pigeons voyageurs : Coëtquidan et Montoire. 48

49 Transmission des données James C. Maxwell (1831-1879) Électromagnétisme Herz, Bose: radio 49

50 Toute méthode de chiffrement doit être supposée connue par l'ennemi: la sécurité du système doit dépendre uniquement du choix de clés, qui doivent être changées régulièrement. Auguste Kerckhoffs «La cryptographie militaire», Journal des sciences militaires, vol. IX, pp. 5–38, Janvier 1883, pp. 161–191, Février 1883. 50

51 1950, Claude Shannon pour garantir la sécurité, il faut une clé secrète au moins aussi longue que le message à envoyer. 1917, Gilbert Vernam (masque jetable) Exemple: le téléphone rouge entre le Kremlin et la Maison Blanche Message Original: Clé Message envoyé 0 1 1 0 0 0 1 0 1 … 0 0 1 1 0 1 0 0 1… 0 1 0 1 0 1 1 0 0… + = = + 51

52 Alan Turing Début de linformatique Déchiffre les messages de la machine Enigma 52

53 Colossus Max Newman, premier ordinateur électronique programmable (Bletchley Park, avant1945) 53

54 Théorie de linformation Claude Shannon A mathematical theory of communication Bell System Technical Journal, 1948. 54

55 Claude E. Shannon " Communication Theory of Secrecy Systems ", Bell System Technical Journal, 28-4 (1949), 656 - 715. 55

56 Sécurité Sécurité inconditionnelle: le message codé ne révèle aucune information sur le message source, la seule méthode est dessayer toutes les clés possibles. En pratique, aucun système utilisé dans la réalité ne satisfait cette condition. Sécurité pratique: le message codé ne donne aucune information sur le message source en un temps raisonnable. 56

57 DES: Data Encryption Standard En 1970, le NBS (National Board of Standards) lance un appel doffre au Federal Register pour définir un algorithme de cryptage ayant un niveau de sécurité élevé qui ne dépend pas de la confidentialité de lalgorithme mais seulement des clés secrètes, qui fait intervenir des clés secrètes pas trop grandes, rapide, robuste, bon marché, facile à implémenter. Le DES a été approuvé en 1978 par le NBS 57

58 Lalgorithme DES: combinaisons, substitutions et permutations entre le texte et la clé Le texte est découpé en blocs de 64 lettres Les blocs sont permutés Ils sont coupés en deux: droite et gauche On effectue 16 fois un cycle de permutations et de substitutions faisant intervenir la clé secrète On regroupe les parties gauche et droite puis on effectue les permutations inverses. 58

59 Diffie-Hellman: Cryptographie à clé publique Whit Diffie and Martin E. Hellman, New directions in cryptography, IEEE Transactions on Information Theory, 22 (1976), 644-654 59

60 Cryptographie Symétrique versus Asymétrique Symétrique (clé secrète): Alice et Bob ont chacun une clé de la boîte aux lettres. Alice utilise sa clé pour déposer sa lettre dans la boîte. Bob utilise sa clé pour récupérer la lettre. Alice et Bob sont les seuls à pouvoir ouvrir la boîte aux lettres. Asymétrique (clé publique) Alice trouve ladresse de Bob dans un annuaire public, elle envoie sa lettre à Bob, qui utilise sa clé secrète pour la lire. Tout le monde peut envoyer un message à Bob, lui seul peut les lire. 60

61 RSA (Rivest, Shamir, Adleman - 1978) 61

62 R.L. Rivest, A. Shamir, et L.M. Adleman A method for obtaining digital signatures and public- key cryptosystems, Communications of the ACM (2) 21 (1978), 120-126. 62

63 Fonction trappe x y est une fonction trappe – à sens unique si Étant donné x, il est facile de calculer y Étant donné y, il est difficile de trouver x, sauf si on connaît une clé. Les exemples font intervenir des problèmes mathématiques connus pour être difficiles. 63

64 Exemple dune fonction trappe: le logarithme discret (version simplifiée) On part dun nombre à trois chiffres x. On calcule le cube de x, à savoir : x x x = x 3. On ne conserve que les trois derniers chiffres = reste de la division par 1000: cest y. Partant de x, trouver y est facile. Connaissant y, retrouver x est difficile. 64

65 Le logarithme discret modulo 1000 Exemple: sachant que les trois derniers chiffres de x 3 sont 631, ce que lon écrit x 3 631 modulo 1000, trouver x. Solution brutale: essayer toutes les valeurs de x=001, 002, … on trouve ainsi x=111 – cest la seule solution. Vérification: 111 111 = 12 321 On ne garde que les trois derniers chiffres: 111 2 321 modulo 1000 Puis 111 321 = 35 631 65

66 Racine cubique modulo 1000 Résoudre x 3 631 modulo 1000. Autre méthode: utiliser une clé secrète. La clé publique est 3, car on calcule x 3. Une clé secrète est 67. Cela signifie que si on calcule la puissance 67 de 631, on trouve x: 631 67 x modulo 1000. (x 3 ) 67 x modulo 1000 66

67 Racine 7ème modulo 1000 Pour une clé publique 3, une clé secrète est 67. Autre exemple: clé publique 7, clé secrète 43. Sachant x 7 871 modulo 1000 on calcule 871 43 111 modulo 1000 donc x = 111. 67

68 Protocole de léchange de valises Alice a une valise, un cadenas et une clé; elle veut envoyer la valise à Bob sans que Charlie ne puisse savoir ce quil y a dedans. Bob possède aussi un cadenas et une clé, mais qui ne sont pas compatibles avec ceux dAlice. 68

69 Échange de valises 111 111 7 871 871 3 311 311 43 631 631 67 111 111 743 367 69

70 Cartes à puce 70

71 ATM message aléatoire 631 Code NIP 67 Clé Publique 3 631 67 111 111 3 631 Connaissant la clé publique 3 et le message 631 envoyé par la banque, on vérifie que la réponse 111 est correcte, mais cela ne permet pas de deviner le code secret 67. 71

72 Message modulo n On choisit un entier n (à la place of 1000): cest la taille des messages qui seront échangés. Tous les calculs seront faits modulo n : on remplace chaque entier par le reste de sa division par n. n sera un entier avec environ 300 chiffres. 72

73 Il est plus facile de vérifier une démonstration que de la trouver Multiplier deux nombres, même un peu grands, est facile. Si on sait quun nombre donné est le produit de deux nombres, trouver les facteurs peut être difficile. 2047 est-il le produit de deux nombres plus petits? Réponse: oui 2047=23 89 73

74 Exemple p=111395432514882798792549017547702484407 0922844843 q=191748170252450443937578626823086218069 6934189293 pq=21359870359209100823950227049996287970 510953418264174064425241650085839577464 45088405009430865999 74

75 Choix de n On prend pour n le produit de deux nombres premiers de 150 chiffres chacun Le produit a environ 300 chiffres: les ordinateurs ne peuvent pas actuellement trouver les facteurs. 75

76 Un code secret peut-il permettre une transaction sécurisée? Michel Waldschmidt 14 novembre 2011 Collège Jean-Jaurès, Pantin http://www.math.jussieu.fr/~miw/


Télécharger ppt "Un code secret peut-il permettre une transaction sécurisée? Michel Waldschmidt 14 novembre 2011 Collège Jean-Jaurès, Pantin"

Présentations similaires


Annonces Google