Introduction à la Cryptologie 3I024. Première partie

Dimension: px
Commencer à balayer dès la page:

Download "Introduction à la Cryptologie 3I024. Première partie"

Transcription

1 Introduction à la Cryptologie 3I024 Première partie Guénaël Renault & Valérie Ménissier-Morain CALSCI LIP6/UPMC 21 janvier 2016

2 UPMC - Licence Info - Crypto /16 2/182 Part I Cryptographie - Objets mathématiques de base

3 Plan UPMC - Licence Info - Crypto /16 3/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

4 UPMC - Licence Info - Crypto /16 4/182 La cryptologie Définitions La cryptologie est la science du secret. Elle se divise en deux disciplines : La cryptographie qui est l étude des algorithmes permettant de protéger (cacher) de l information. Ces algorithmes sont appelés cryptosystèmes ; la cryptanalyse qui est l étude du niveau de sécurité des cryptosystèmes fournis par les cryptographes. Première partie du cours On s intéresse au problème de confidentialité (chiffrer des messages) La clé est la même pour chiffrer et déchiffrer

5 Terminologie et principe de base de la cryptologie Terminologie Chiffrer : l action de rendre un message clair M (plaintext) en un message C appelé cryptogramme ou message chiffré, illisible. Déchiffrer : Action inverse du chiffrement. Cryptosystème : L algorithme (ou le dispositif physique) permettant de chiffrer des données. Attaquer, Casser : Mettre à mal la sécurité d un cryptosystème (retrouver M à partir de C sans connaître la clé, retrouver la clé). Principe de Kerckhoffs (Journal des sciences militaires, 1883) La sécurité d un cryptosystème ne doit reposer que sur le secret de la clef. En particulier un attaquant est supposé connaître le cryptosystème (Les cryptosystèmes militaires, vus comme des dispositifs physiques, peuvent tomber aux mains de l ennemi). La sécurité d un cryptosystème est attestée par la cryptanalyse. UPMC - Licence Info - Crypto /16 5/182

6 UPMC - Licence Info - Crypto /16 6/182 Cryptographie symétrique : Modélisation Définition Un cryptosystème est dit symétrique (ou à clé privée) si pour chiffrer et déchiffrer, la même clé secrète est utilisée. Cryptosystème P et C les alphabets pour écrire les messages clairs et les messages chiffrés respectivement. K l ensemble des clés possibles. Pour tout K K on peut définir deux applications e K : P C et d K : C P telles que d K (e K (x)) = x pour tout x P. les alphabets peuvent être composés de symboles uniques ou de blocs de symboles. Pour commencer on s en tiendra aux caractères de l alphabet usuel.

7 La cryptographie symétrique en pratique UPMC - Licence Info - Crypto /16 7/182 Cryptosystème symétrique (la même clé K pour dé/chiffrer) P et C les alphabets clairs et chiffrés. K l ensemble des clés possibles. K K : e K : P C et d K : C P avec x P d K (e K (x)) = x. Les applications e K et d K nécessitent la connaissance complète de K pour être définies. En pratique : chiffrer avec la clé K Pour chiffrer un texte P clair on procède comme suit 1 On découpe P en blocs correspondant aux éléments de P 2 On applique e K sur chacun des blocs de P 3 On obtient ainsi C un message correspondant à P et écrit à l aide de C.

8 UPMC - Licence Info - Crypto /16 7/182 La cryptographie symétrique en pratique Cryptosystème symétrique (la même clé K pour dé/chiffrer) P et C les alphabets clairs et chiffrés. K l ensemble des clés possibles. K K : e K : P C et d K : C P avec x P d K (e K (x)) = x. Les applications e K et d K nécessitent la connaissance complète de K pour être définies. En pratique : déchiffrer avec la clé K Pour déchiffrer le texte C on procède comme suit 1 On découpe C en blocs correspondant aux éléments de C 2 On applique d K sur chacun des blocs de C 3 On obtient ainsi P le clair associé à C.

9 Chiffrement de messages en pratique UPMC - Licence Info - Crypto /16 8/182 Découpage par blocs de P P P P P... e K e K e K e K C C C C...

10 Plan UPMC - Licence Info - Crypto /16 9/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

11 Chiffrement par substitution ou mono-alphabétique Définition À chaque élément de P correspond un unique élément de C. Un exemple où l alphabet d arrivée est différent de celui de départ Le chiffrement des Francs-Maçons. A B C D E F G H I T S V U J K L M N O P Q R UPMC - Licence Info - Crypto /16 10/182 X W Z Y

12 UPMC - Licence Info - Crypto /16 10/182 Chiffrement par substitution ou mono-alphabétique Définition À chaque élément de P correspond un unique élément de C. Cryptosystème par substitution P, C sont différents (de même cardinal) K est l ensemble des bijections de P dans C. Pour tout K K on a e K (x) = K(x) d K (y) = K 1 (x)

13 UPMC - Licence Info - Crypto /16 10/182 Chiffrement par substitution ou mono-alphabétique Définition À chaque élément de P correspond un unique élément de C. On prend les alphabets canoniques P = C = {A,..., Z} mais dans ce cas il faut mélanger cet alphabet. Cryptosystème par substitution sur alphabets identiques P, C sont tous les deux égaux à A = {A,..., Z} K est l ensemble des permutations de P dans C. Pour tout K K on a e K (x) = K(x) d K (y) = K 1 (x)

14 Plan UPMC - Licence Info - Crypto /16 11/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

15 Plan UPMC - Licence Info - Crypto /16 12/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

16 Groupes Groupe (G, ) Associativité : (a, b, c) G G G, Neutre : il existe un élément e neutre pour, i.e. a G, a e = e a = a Inverse : a G, b G a b = b a = e a (b c) = (a b) c Le groupe est dit Commutatif si de plus (a, b) G G, Exemples L ensemble Z des entiers muni de l addition (commutatif) L ensemble Q \ {0} muni de la multiplication (commutatif) a b = b a L ensemble Perm(E) des permutations d un ensemble fini E muni de la composition (non commutatif). Avoir à l esprit quelle est l opération du groupe! Parfois, l opération est implicite, par exemple Z/nZ est canoniquement un groupe additif. UPMC - Licence Info - Crypto /16 13/182

17 UPMC - Licence Info - Crypto /16 14/182 Groupes et chiffrement par substitution Chiffrement par substitution À chaque élément de P correspond un unique élément de C. Si on choisit de numéroter les lettres de l alphabet de 0 à 25 on aura alors la modélisation : P = C = {0,..., 25} K = Perm(P) σ K, e K = σ et d K = σ 1

18 Cas particulier : César UPMC - Licence Info - Crypto /16 15/182

19 Cas particulier : César Les clés forment un sous-groupe de Perm(P), celui des rotations. 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 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 disque clair (fixe) disque chiffré (mobile) UPMC - Licence Info - Crypto /16 15/182

20 UPMC - Licence Info - Crypto /16 15/182 Cas particulier : César Les clés forment un sous-groupe de Perm(P), celui des rotations. Définition sous-groupe Soit (G, ) un groupe. Un ensemble H contenu dans G est un sous-groupe (de G) s il est lui même un groupe pour. Chiffrement de César : modulaire P = C = Z/26Z K = {0,..., 25} ρ K, e K : p p + ρ mod 26 et d K : c c ρ mod 26 Arithmétique modulaire!

21 Cas particulier : César Chiffrement de César : modulaire P = C = Z/26Z K = {0,..., 25} ρ K, e K : p p + ρ mod 26 et d K : c c ρ mod 26 Exemple ρ = = 13 mod A B C D E F G H I J K L M ROT13 N O P Q R S T U V W X Y Z H E L L O ROT13 U R Y Y B UPMC - Licence Info - Crypto /16 15/182

22 Chiffrement de César : propriétés UPMC - Licence Info - Crypto /16 16/182 Dans Perm({0,..., 25}) une rotation peut être définie comme la composition de plusieurs fois une rotation de longueur 1. Définition : Groupe cyclique (ou monogène) C est un groupe (G, ) qui peut être engendré par un élément: g G tq a G a = g g g On peut noter cette propriété sous la forme G = g. Le sous-groupe de Perm({0,..., 25}) des rotations est cyclique.

23 Ici il y a deux opérations: besoin de structures mathématiques plus riches que celle de groupe, en particulier de savoir inverser. UPMC - Licence Info - Crypto /16 17/182 Chiffrement affine En utilisant l encodage habituel, on se place directement dans un alphabet de la forme Z/nZ (ici n = 26). Cryptosystème affine P, C sont tous les deux égaux à Z/26Z K est un sous ensemble de Z/26Z Z/26Z tel que Pour tout K = (a, b) K on a e K (x) = ax + b mod 26 et il existe une fonction d K : C P inverse de e K. K forme ici aussi un sous-groupe de Perm(P). Problème Comment déterminer l ensemble des clés possibles? Ceci revient à déterminer les fonction e K qui possèdent une fonction inverse.

24 Plan UPMC - Licence Info - Crypto /16 18/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

25 UPMC - Licence Info - Crypto /16 19/182 Objets mathématiques supports de la cryptographie Groupe, anneau, corps,... Arithmétique dans Z,... Divisibilité, nombres premiers,......

26 UPMC - Licence Info - Crypto /16 20/182 Structures de base : définitions Anneau commutatif (A,, ) Groupe commutatif pour l opération Associativité et existence d un élément neutre pour Distributivité de par rapport à : (a, b, c) A 3, c (a b) = (c b) (c a) Commutativité de la seconde opération Exemples L anneau Z muni de l addition (groupe) et de la multiplication. L anneau des fractions Q avec les mêmes opérations Dans la suite, tous les anneaux seront commutatifs et munis de l addition et de la multiplication. L élément neutre est 0 pour l addition et 1 pour la multiplication.

27 UPMC - Licence Info - Crypto /16 21/182 Structures de base : définitions Sous-structure Un sous-ensemble U d un groupe G (resp. anneau) est un sous-groupe (resp. sous-anneau) de G (resp. A) s il est lui même un groupe (resp. anneau) pour les opérations de G (resp. A). Exemple L anneau Z muni de l addition (groupe) et de la multiplication est en fait un sous-anneau de Q.

28 UPMC - Licence Info - Crypto /16 22/182 Divisibilité dans un anneau (A, +, ) Diviseurs, multiples Un élément a est un diviseur de b dans un anneau A s il existe c A tel que b = ac. On note alors a b et b est appelé multiple de a. L ensemble des multiples de a dans A est noté aa = {ak : k A} L arithmétique est l étude de la divisibilité. 6 et 6 divisent 12 dans Z. si a est un entier divisant b Z alors il en est de même pour a. Ceci vient du fait que 1 est inversible dans Z. On ne s intéresse donc qu au cas positif (classes d équivalence modulo la multiplication par un inverse)

29 UPMC - Licence Info - Crypto /16 23/182 Inversibilité dans un anneau (A, +, ) Inversibles Une élément a d un anneau A est dit inversible s il existe b A tel que ab = 1. L élément b est appelé inverse de a. L ensemble des inversibles d un anneau A sera noté A (ou aussi U(A)). A forme un groupe commutatif dans A pour la multiplication. La divisibilité peut être vue à un inverse près. Association Pour a A nous appelons associé à a tout élément b de la forme b = ua avec u A et nous noterons b a. Pour A = Z nous avons A = {1, 1} Pour A = Z les associés de a sont {a, a} Pour A = Z on choisira le positif comme représentant la classe d équivalence pour l association.

30 UPMC - Licence Info - Crypto /16 24/182 Intégrité Dans un cadre général, certains éléments d un anneau A peuvent représentés un obstacle à l arithmétique. Ces éléments sont les diviseurs de 0. Diviseur de zéro et anneau intègre Un élément a 0 A est diviseur de 0 s il existe b 0 A tel que ab = 0. Un anneau A est dit intègre s il n existe pas de diviseur de 0 dans A. L anneau Z est intègre mais nous rencontrerons plus tard des anneaux qui ne le seront pas, les exemples les plus simples étant certains de ceux construits par quotient de Z.

31 UPMC - Licence Info - Crypto /16 25/182 Division euclidienne La division euclidienne représente un moyen puissant pour étudier la divisibilité d un anneau. Anneau euclidien Un anneau intègre A équipé d une fonction d : A N { } est dit euclidien si pour tout couple (a, b) A 2 avec b 0, il existe q et r dans A tel que a = qb + r avec d(r) < d(b). Cette dernière relation étant appelée division euclidienne de a par b, l élément q le quotient et r le reste de cette division. d s appelle un stathme sur A. Pour A = Z nous choisissons d : x x a b est équivalent à b = qa + r avec r = 0 Non unicité, pour A = Z on prendra comme convention r 0

32 Division euclidienne UPMC - Licence Info - Crypto /16 26/182 Dans le langage C, la division euclidienne sur les entiers est obtenue en utilisant les opérateurs arithmétiques binaires / pour le quotient et % pour le reste de la division de deux entiers. D après la norme ANSI, le résultat correspondra à la convention décrite plus haut (i.e. reste positif ou nul) lorsque les opérandes sont eux-mêmes positifs. Dans le cas contraire le résultat n est pas spécifié. En particulier le résultat de (3-14) % 26 peut être négatif! Si on divise par 0, le résultat n a pas de sens

33 UPMC - Licence Info - Crypto /16 27/182 Irréductibilité et Décomposition Les éléments "minimaux" pour la divisibilité Irréductible Un élément p d un anneau A est irréductible s il est ni nul ni inversible et s il a exactement deux diviseurs (à association près) : 1 et p. On veut pouvoir décomposer selon ces irréductibles (briques de base) Anneau factoriel Un anneau A est dit factoriel s il est intègre et qu il vérifie les deux conditions suivantes : existence d une factorisation : tout élément a 0 de A qui n est pas inversible peut être écrit sous la forme d un produit p 1 p 2 p n d éléments irréductibles ; unicité de la factorisation : cette décomposition est unique à association et ordre près des facteurs irréductibles.

34 UPMC - Licence Info - Crypto /16 28/182 Théorèmes fondamentaux Théorème fondamental de l arithmétique L anneau Z est factoriel. Théorème fondamental généralisé Un anneau euclidien est factoriel.

35 UPMC - Licence Info - Crypto /16 29/182 Théorème fondamental dans Z Premiers Un élément a d un anneau A est dit premier s il est ni nul ni inversible et s il vérifie la propriété suivante : p ab p a ou p b. Factoriel et premiers Dans un anneau factoriel les qualités d être premier et irréductible coïncident. Montrer l équivalence entre premier et irréductible va nous permettre de montrer le caractère factoriel de Z. Par association on se limite aux entiers naturels (i.e. les entiers positifs)

36 UPMC - Licence Info - Crypto /16 30/182 Théorème fondamental dans Z Existence de la décomposition Tout entier n > 1 vérifie la propriété P(n) : n est le produit de nombres irréductibles. Preuve : On commence par montrer que a > 1 est irréductible ssi il n est pas le produit de deux entiers > 1. Ensuite, on montre cette existence de décomposition par récurrence forte sur n : On montre que 2 est irréductible. Pour n > 2 on décompose n et on applique h.r.

37 UPMC - Licence Info - Crypto /16 31/182 Théorème fondamental dans Z Pour montrer l unicité de la décomposition nous montrons l équivalence qui suit Premier = Irréductible dans Z Tout nombre entier > 1 est irréductible ssi il est premier. Preuve : par l absurde en utilisant la division euclidienne! On récupère ici la notion usuelle de nombre premier (vue au collège, lycée, etc.)

38 UPMC - Licence Info - Crypto /16 32/182 Théorème fondamental dans Z Unicité de la décomposition dans Z Tout entier n > 1 se décompose sous la forme d un produit de nombres irréductibles (premiers) de manière unique. Preuve : p n 1 1 pn k k = n = q m 1 1 qms k où les p i et les q j sont des nombres irréductibles. D après le résultat précédent, pour i 1 fixé il existe un entier j 1 tel que p i1 = q j1. En utilisant le même raisonnement sur le quotient de n par p i1 on obtient de proche en proche le fait que la décomposition est unique. Ceci termine la démonstration du théorème fondamental dans Z.

39 UPMC - Licence Info - Crypto /16 33/182 Les nombres premiers Les nombres irréductibles sont les nombres premiers! La "vraie" notion à retenir en général est celle d irréductible. Important de connaître les irréductibles car ils définissent tous les éléments. Quel est le nombre de nombres premiers? Infinité des nombres premiers L ensemble des nombres premiers est infini. Preuve Euclide : Par l absurde. On utilise la factorisation pour réfuter. Preuve Constructive : On considère un ensemble fini de nombres premiers. On construit un nouveau nombre premier par factorisation.

40 Les nombres premiers Comment reconnaître un nombre premier? Lemme Un entier n > 1 est premier ssi il n est divisible par aucun entier compris entre 2 et n. #include<stdio.h> #include<math.h> int main() { int p,d,r; printf("entrer un entier >2 a tester : "); scanf("%d",&p); d=1; do{ d+=1; r= p % d; }while(r!=0 && d < sqrt((double)p)); if (r == 0) printf("\nl entier %d n est pas premier.\n Il est divisible par %d.\n",p,d); else printf("\nl entier %d est premier.\n",p); return 0; } UPMC - Licence Info - Crypto /16 34/182

41 Les nombres premiers, la factorisation UPMC - Licence Info - Crypto /16 35/182 Comment reconnaître un nombre premier? (primalité ordinaire) La complexité de ce programme est de l ordre de p ce qui est exponentiel en la taille de p. Agrawal, Kayal et Saxena (2002) donnent un algorithme de complexité polynomiale en la taille de l entrée non probabiliste et indépendant de toute conjecture. Le meilleur logiciel connu est FastECPP de F. Morain (basé sur les courbes elliptiques, record chiffres décimaux). Comment factoriser un nombre entier? (factorisation) C est beaucoup plus dur! Des cryptosystèmes reposent sur cette difficulté. Des algorithmes de complexité sous-exponentielle existent (MPQS, NFS). Record 232 chiffres décimaux.

42 Plan UPMC - Licence Info - Crypto /16 36/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

43 Plan UPMC - Licence Info - Crypto /16 37/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

44 UPMC - Licence Info - Crypto /16 38/182 Relation d équivalence Une relation binaire R d un ensemble E est une relation d équivalence lorsqu elle vérifie les trois propriétés suivantes: R est réflexive : tout élément de E peut être mis en relation avec lui-même ( x E, xrx) R est symétrique : tout élément de E peut être mis en relation avec les éléments qui lui sont relatifs ( (x, y) E 2, xry yrx) R est transitive : une relation d une relation est une relation ( (x, y, z) E 3, xry yrz xrz) Deux éléments de E qui sont mis en relation par R sont dits associés ou équivalents pour cette relation. Soit x un élément de E, le sous ensemble de E formé des éléments de E qui sont associés pour R est appelé classe d équivalence.

45 UPMC - Licence Info - Crypto /16 39/182 Relation d équivalence: exemple de la relation d association Soit a, b A un anneau commutatif. On note aa l ensemble des multiples de a dans A. arb aa = ba aa = aa clair aa = ba ba = aa clair aa = ba et ba = ca aa = ca clair Provient du fait que = est une relation d équivalence. On peut montrer que aa = ba est équivalent à l assertion : u inversible dans A tq a = ub. Dans Z les différentes classes d équivalence seront alors {0}, { 1, 1}, { 2, 2},....

46 UPMC - Licence Info - Crypto /16 40/182 Relation d équivalence: exemple Z/nZ (très important) Soit a, b Z et n un entier positif. ar n b a b nz a a = n 0 a b nz b a ( 1) nz = nz a b nz et b c nz (a b) + (b c) nz Les éléments d une même classe ont le même reste modulo n (exercice : le montrer) On choisit le plus petit entier positif de la classe (les classes sont donc représentées par {0, 1,..., n 1}).

47 UPMC - Licence Info - Crypto /16 41/182 Relation d équivalence: partitionnement Propriété de partitionnement Soit E un ensemble et R une relation d équivalence sur E. L ensemble des classes d équivalence pour R forme une partition de E, c est-à-dire un ensemble de sous-ensembles non vides de E, disjoints et dont l union est E. Preuve laissée en exercice. Idée imagée : E = b E tq a 1 Rb b E tq a 2 Rb b E tq a k Rb

48 Plan UPMC - Licence Info - Crypto /16 42/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

49 Relation d équivalence : application au théorème de Lagrange UPMC - Licence Info - Crypto /16 43/182 Théorème de Lagrange Soit (G, ) un groupe fini et H un sous-groupe de G. Alors le cardinal de H est un diviseur du cardinal de G. (Le cardinal d un groupe est aussi appelé ordre.) Mathématicien italo-français de la seconde moitié du 18ème siècle. Il développe les idées sur les groupes (sans que la définition soit clairement établie) de permutations pour étudier les solutions des équations polynomiales.

50 UPMC - Licence Info - Crypto /16 43/182 Relation d équivalence : application au théorème de Lagrange Théorème de Lagrange Soit (G, ) un groupe fini et H un sous-groupe de G. Alors le cardinal de H est un diviseur du cardinal de G. (Le cardinal d un groupe est aussi appelé ordre.) Démonstration On considère la relation d équivalence xr H y xy 1 H On partitionne le groupe G selon les classes de R H On montre que la classe d équivalence d un élément x est xh et que H est la classe de e On établit une application bijective entre les classes d équivalence donc toutes les classes d équivalence ont même cardinal, celui de H, qui divise donc le cardinal de G.

51 Ordre d un élément UPMC - Licence Info - Crypto /16 44/182 Théorème de Lagrange Soit (G, ) un groupe fini et H un sous-groupe de G. Alors le cardinal de H est un diviseur du cardinal de G. (Le cardinal d un groupe est aussi appelé ordre.) Définition : ordre d un élément Soit g un élément d un groupe fini (G, ). On appelle ordre de g le plus petit entier strictement positif k tel que g g g }{{} = e k fois Soit g G on considère le sous-groupe cyclique de G engendré par g. Le cardinal de ce sous-groupe est égal à l ordre de g et divise le cardinal de G d après le theórème Lagrange. Voici une raison pour laquelle on nomme ordre le cardinal d un groupe.

52 Ordre d un élément UPMC - Licence Info - Crypto /16 44/182 Théorème de Lagrange Soit (G, ) un groupe fini et H un sous-groupe de G. Alors le cardinal de H est un diviseur du cardinal de G. (Le cardinal d un groupe est aussi appelé ordre.) Définition : ordre d un élément Soit g un élément d un groupe fini (G, ). On appelle ordre de g le plus petit entier strictement positif k tel que Corollaire g g g }{{} = e k fois Tout groupe (G, ) d ordre un nombre premier est cyclique.

53 Plan UPMC - Licence Info - Crypto /16 45/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

54 UPMC - Licence Info - Crypto /16 46/182 Valuation p-adique Soit A un anneau factoriel et P un ensemble de représentants pour chacune des classes d irréductibles de A selon la relation d équivalence xry u A tq x = uy (relation d association). Décomposition unique Pour a A non nul on a a = u p P p vp(a) où u est un inversible et les v p (a) des entiers positifs différents de 0 pour un nombre fini d entre eux (on dit presque tous nuls). Par exemple pour A = Z et a = : =

55 Valuation p-adique UPMC - Licence Info - Crypto /16 47/182 a = u p P p vp(a) Définition À tout élément p P d un anneau factoriel A est associé une fonction v p : A N { } définie comme suit : Pour a 0 l entier v p (a) est égal à la puissance de p dans la décomposition de a si p divise a et pour a = 0 on aura par convention v p (a) =. L entier v p (a) est la valuation p-adique de a.

56 UPMC - Licence Info - Crypto /16 48/182 Valuation p-adique Définition À tout élément p P d un anneau factoriel A est associé une fonction v p : A N { } définie comme suit : Pour a 0 l entier v p (a) est égal à la puissance de p dans la décomposition de a si p divise a et pour a = 0 on aura par convention v p (a) =. L entier v p (a) est la valuation p-adique de a. Par exemple pour A = Z et a = : = v 2 (a) = v 3 (a) = 1, v 5 (a) = 4, v 11 (a) = 2 v p (a) = 0 pour tout autre premier p v p (0) = a un sens

57 UPMC - Licence Info - Crypto /16 49/182 Valuation p-adique : propriétés Soit a et b deux éléments d un anneau factoriel A et P un ensemble de représentants des irréductibles de A. v p (ab) = v p (a) + v p (b) v p (a + b) min(v p (a), v p (b)) avec égalité lorsque les valuations sont différentes a est un diviseur de b ssi p P : v p (a) v p (b) Exemples : A = Z, a = , b = , c =

58 UPMC - Licence Info - Crypto /16 49/182 Valuation p-adique : propriétés Soit a et b deux éléments d un anneau factoriel A et P un ensemble de représentants des irréductibles de A. v p (ab) = v p (a) + v p (b) v p (a + b) min(v p (a), v p (b)) avec égalité lorsque les valuations sont différentes a est un diviseur de b ssi p P : v p (a) v p (b) Exemples : A = Z, a = , b = , c = v 11 (a + b) = v 11 (11 2 ( )) = v 11 (11 2 (11)) = 3 v 11 (a + c) = v 11 (11 2 ( )) = v 11 (11 2 (20)) = 2

59 UPMC - Licence Info - Crypto /16 49/182 Valuation p-adique : propriétés Soit a et b deux éléments d un anneau factoriel A et P un ensemble de représentants des irréductibles de A. v p (ab) = v p (a) + v p (b) v p (a + b) min(v p (a), v p (b)) avec égalité lorsque les valuations sont différentes a est un diviseur de b ssi p P : v p (a) v p (b) Exemples : A = Z, a = , b = , c = v 11 (ab) = 4, v 5 (ab) = 1, v 3 (ab) = 1 c ab

60 UPMC - Licence Info - Crypto /16 50/182 PGCD Soit a et b deux éléments d un anneau factoriel A et P un ensemble représentant les irréductibles de A. Définition Le plus grand diviseur commun de a et b est l élément d définit par d := p P p min(v p(a),v p (b)) et est noté pgcd(a, b). Exemples : A = Z, a = , b = , c =

61 PGCD Soit a et b deux éléments d un anneau factoriel A et P un ensemble représentant les irréductibles de A. Définition Le plus grand diviseur commun de a et b est l élément d définit par d := p P p min(v p(a),v p (b)) et est noté pgcd(a, b). Exemples : A = Z, a = , b = , c = pgcd(a, b) = 11 2 car a = et b = UPMC - Licence Info - Crypto /16 50/182

62 UPMC - Licence Info - Crypto /16 50/182 PGCD Soit a et b deux éléments d un anneau factoriel A et P un ensemble représentant les irréductibles de A. Définition Le plus grand diviseur commun de a et b est l élément d définit par d := p P p min(v p(a),v p (b)) et est noté pgcd(a, b). Exemples : A = Z, a = , b = , c = pgcd(a, c) = a

63 UPMC - Licence Info - Crypto /16 50/182 PGCD Soit a et b deux éléments d un anneau factoriel A et P un ensemble représentant les irréductibles de A. Définition Le plus grand diviseur commun de a et b est l élément d définit par d := p P p min(v p(a),v p (b)) et est noté pgcd(a, b). Exemples : A = Z, a = , b = , c = pgcd(b, c) =

64 UPMC - Licence Info - Crypto /16 51/182 PGCD Une fois que l ensemble P des représentants des irréductibles de A est fixé, le pgcd est unique. (Dans le cas A = Z les représentants sont positifs, il en sera donc de même pour le pgcd.) Le pgcd(a, b) est maximal pour la divisibilité comme l indique son nom : max(div(a) Div(b)) avec Div(a) l ensemble (fini) des diviseurs (positifs) de a. Caractérisation d = pgcd(a, b) si et seulement si l assertion suivante est vérifiée : si c divise a et b alors c est un diviseur de d

65 UPMC - Licence Info - Crypto /16 52/182 Éléments premiers entre eux Notion liée à la divisibilité Premiers entre eux Deux éléments a et b sont dits premiers entre eux (ou a est premier avec b) dès que l ensemble des diviseurs communs à a et b est réduit aux inversibles. Dans le cas A = Z les entiers premiers entre eux sont ceux pour qui l ensemble de leurs diviseurs positifs communs est réduit à {1}. Lien avec le PGCD?

66 Plan UPMC - Licence Info - Crypto /16 53/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

67 UPMC - Licence Info - Crypto /16 54/182 Calculer le PGCD : Euclide On cherche le plus grand diviseur entre 14 et 8. On a 14 = ainsi comme on cherche d divisant 8 et 14 il suffit de chercher d divisant 8 et 6, on recommence le procédé avec 8 et 6 etc. On s arrête dès que l un des entiers considéré est nul. Lemmes immédiats Si d divise a et c et que (a + b) = c alors d divise b. Le pgcd d un élément a 0 et de 0 est a.

68 Calculer le PGCD : Euclide UPMC - Licence Info - Crypto /16 55/182 Mathématicien grec (né vers -325, mort vers -265 à Alexandrie, Grèce antique), auteur (supposé) des Éléments, ouvrage fondateur des mathématiques modernes. Il était avant tout géomètre, comme tous les mathématiciens grecs de l antiquité! 14 8

69 Calculer le PGCD : Euclide UPMC - Licence Info - Crypto /16 55/182 Mathématicien grec (né vers -325, mort vers -265 à Alexandrie, Grèce antique), auteur (supposé) des Éléments, ouvrage fondateur des mathématiques modernes. Il était avant tout géomètre, comme tous les mathématiciens grecs de l antiquité! 6 8

70 Calculer le PGCD : Euclide UPMC - Licence Info - Crypto /16 55/182 Mathématicien grec (né vers -325, mort vers -265 à Alexandrie, Grèce antique), auteur (supposé) des Éléments, ouvrage fondateur des mathématiques modernes. Il était avant tout géomètre, comme tous les mathématiciens grecs de l antiquité! 6 2

71 Calculer le PGCD : Euclide UPMC - Licence Info - Crypto /16 55/182 Mathématicien grec (né vers -325, mort vers -265 à Alexandrie, Grèce antique), auteur (supposé) des Éléments, ouvrage fondateur des mathématiques modernes. Il était avant tout géomètre, comme tous les mathématiciens grecs de l antiquité! 2 4

72 Calculer le PGCD : Euclide UPMC - Licence Info - Crypto /16 55/182 Mathématicien grec (né vers -325, mort vers -265 à Alexandrie, Grèce antique), auteur (supposé) des Éléments, ouvrage fondateur des mathématiques modernes. Il était avant tout géomètre, comme tous les mathématiciens grecs de l antiquité! 2 pgcd 2

73 UPMC - Licence Info - Crypto /16 56/182 Calculer le PGCD Plus d efficacité : division euclidienne dans A L anneau A est donc supposé euclidien (de fonction d fixée). Pour calculer le pgcd de deux éléments a et b tels que d(b) < d(a). Schéma de calcul d Euclide Posant r 0 = a et r 1 = b on calcule jusqu à obtenir un reste nul. 1 si r 1 0 on a r 0 = r 1 q 1 + r 2 avec d(r 2 ) < d(r 1 ) 2 si r 2 0 on a r 1 = r 2 q 2 + r 3 avec d(r 3 ) < d(r 2 ). n 1 si r n 2 0 on a r n 2 =r n 1 q n 1 + r n avec d(r n ) < d(r n 1 ) n si r n 1 0 on a r n 1 =r n q n + r n+1 avec d(r n+1 ) < d(r n ) et Algorithme d Euclide r n+1 = 0 Le dernier reste non nul r n est égal au pgcd de a et b.

74 UPMC - Licence Info - Crypto /16 57/182 Algorithme d Euclide Ce schéma se traduit immédiatement en C pour les entiers. #include<stdio.h> #include<math.h> int main() { int a,b,tmp,r0,r1; printf("entrer deux entiers positifs a > b > 0 : "); scanf("%d",&a); scanf("%d",&b); r0=a; r1=b; while(r1!=0){ tmp=r1; r1=r0 % r1; r0=tmp; } printf("\nle pgcd de %d et %d est %d\n",a,b,r0); } return 0;

75 UPMC - Licence Info - Crypto /16 58/182 Algorithme d Euclide : démonstration Terminaison : c est immédiat puisque la suite des d(r i ) est une suite strictement décroissante dans N. Correction : on utilise les deux lemmes immédiats précédemment énoncés pour démontrer les égalités successives: pgcd(a, b) = pgcd(r 0, r 1 ) = pgcd(r 1 q 1 + r 2, r 1 ) = pgcd(r 2, r 1 ) = pgcd(r 1, r 2 ) =... = pgcd(r n, r n+1 ) = pgcd(r n, 0) = r n

76 UPMC - Licence Info - Crypto /16 59/182 Théorème de Bachet-Bézout L algorithme d Euclide fournit plus d informations que la seule valeur du pgcd Relation de Bézout Soit a et b deux éléments d un anneau euclidien A. Il existe deux éléments u et v tel que pgcd(a, b) = ua + vb. Les coefficients u et v sont appelés les coefficients de Bézout Le théorème de Bachet-Bézout a de nombreuses applications.

77 UPMC - Licence Info - Crypto /16 60/182 Théorème de Bachet-Bézout : démonstration On utilise le schéma de calcul d Euclide. En construisant des relations linéaires entre r i, a et b pour 2 i n Pour i = 2 nous avons r 2 = r 0 r 1 q 1 avec r 0 = a et r 1 = b et donc r 2 = a q 1 b On suppose que l on a les relations r i 1 = u i 1 a + v i 1 b et r i = u i a + v i b pour i 2. On a r i+1 = r i 1 q i r i = (u i 1 q i u i )a + (v i 1 q i v i )b On déduit le résultat par récurrence.

78 Algorithme d Euclide étendu UPMC - Licence Info - Crypto /16 61/182 La démonstration du théorème de Bachet-Bézout permet de déduire une formule de récurrence pour calculer les coefficients de Bézout de a et b et le pgcd(a, b). Cette formule se traduit sous la forme d un algorithme : Algorithme d Euclide étendu u 0 = 1, v 0 = 0, r 0 = a u 1 = 0, v 1 = 1, r 1 = b u i+1 = u i 1 q i u i, v i+1 = v i 1 q i v i, r i+1 = r i 1 q i r i i 1 Représentation matricielle pour i 1: ( ) ui+1 v i+1 r i+1 = u i v i r i ( ) ( ) ( ) qi 1 ui v i r i u1 v et 1 r 1 = 1 0 u i 1 v i 1 r i 1 u 0 v 0 r 0 ( 1 0 ) b 0 1 a Nous verrons plus tard dans le cours, le nombre de calculs nécessaires pour obtenir le pgcd et les coefficients de Bézout.

79 Plan UPMC - Licence Info - Crypto /16 62/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

80 UPMC - Licence Info - Crypto /16 63/182 L anneau (Z/nZ, +, ) Soit n un entier positif. On considère la relation d équivalence ar n b a b nz. Les classes d équivalence peuvent être représentées par les r + nz = {r + nk : k Z} avec r {0,..., n 1}. Addition et Multiplication dans Z/nZ (r 1 + nz) + (r 2 + nz) = (r 1 + r 2 ) + nz = r 3 + nz avec r 3 le reste modulo n de r 1 + r 2 vu dans Z. (r 1 + nz) (r 2 + nz) = (r 1 r 2 ) + nz = r 3 + nz avec r 3 le reste modulo n de r 1 r 2 vu dans Z. Muni de ces deux opérations Z/nZ est un anneau (commutatif) (exercice : montrez-le).

81 UPMC - Licence Info - Crypto /16 64/182 L anneau (Z/nZ, +, ) Exemple Z/7Z L ensemble des classes de R 7 est représenté par les Nous avons 0 + 7Z, ; 1 + 7Z,..., 6 + 7Z 3 + 7Z = 4 + 7Z l élément 4 est de la même classe que Z 1 + 7Z = 3 + 7Z Z = 9 + 7Z = 2 + 7Z se note 3 1 = = 9 = 2 mod 7

82 UPMC - Licence Info - Crypto /16 65/182 Lien entre PGCD et multiples Proposition Soient nz et mz deux ensembles de multiples dans Z. L ensemble nz + mz = {a 1 + a 2 : a 1 nz et a 2 mz} est aussi un ensemble de multiples d un élément. Plus exactement, on a nz + mz = pgcd(n, m)z. L ensemble des entiers qui sont des multiples de n ou de m sont les multiples de pgcd(m, n). Quel est l ensemble des entiers multiples de n et de m? (exercice).

83 UPMC - Licence Info - Crypto /16 66/182 Lien entre PGCD et éléments premiers entre eux Corollaire Bachet-Bézout Deux éléments a et b de Z sont premiers entre eux ssi il existe u et v tel que ua + vb = 1 En d autres termes, ssi l ensemble des entiers qui sont multiples de a ou de b forme l anneau Z tout entier az + bz = 1Z = Z

84 UPMC - Licence Info - Crypto /16 67/182 Z/nZ, intégrité et éléments inversibles Intégrité Z/nZ est intègre ssi n est premier. Éléments inversibles Un élément x Z/nZ est inversible ssi il existe y Z/nZ tq (x + nz) (y + nz) = 1 + nz. Ceci se traduit par xy = 1 mod n. Il existe donc u dans Z tel que xy + nu = 1, ceci revient au calcul d une relation de Bézout!

85 UPMC - Licence Info - Crypto /16 68/182 Z/nZ et la définition de corps Théorème Les éléments inversibles dans Z/nZ sont les classes ayant un représentant premier avec n. Corollaire Si n est irréductible ( premier) alors tous les éléments non nuls de Z/nZ sont inversibles. Définition Un anneau dont tous les éléments différents de l unité pour la première opération sont inversibles est un corps.

86 UPMC - Licence Info - Crypto /16 69/182 Z/nZ en tant que corps premier Éléments inversibles dans Z/nZ L ensemble (Z/nZ) des inversibles de Z/nZ est donné par les éléments a vérifiant pgcd(a, n) = 1 L inverse étant calculé par l algorithme d Euclide étendu Exemple : L élément 10 dans Z/21Z (représentant la classe Z) est inversible d inverse 2 = 19 mod 21. En effet nous avons la relation de Bézout : 10 ( 2) = 1 Corps premiers Les anneaux quotients Z/pZ avec p un entier premier sont des corps de cardinal p. On les note F p et on les appelle les corps premiers.

87 UPMC - Licence Info - Crypto /16 70/182 Calcul modulaire pratique Principe de base modulo n Ne jamais laisser grossir le représentant de la classe. On effectue donc des réductions modulo n à la suite des opérations. Comment calculer mod 26?

88 UPMC - Licence Info - Crypto /16 70/182 Calcul modulaire pratique Principe de base modulo n Ne jamais laisser grossir le représentant de la classe. On effectue donc des réductions modulo n à la suite des opérations. Comment calculer mod 26? Ne surtout PAS calculer la puissance!

89 UPMC - Licence Info - Crypto /16 70/182 Calcul modulaire pratique Principe de base modulo n Ne jamais laisser grossir le représentant de la classe. On effectue donc des réductions modulo n à la suite des opérations. Comment calculer mod 26? = mod 26

90 UPMC - Licence Info - Crypto /16 70/182 Calcul modulaire pratique Principe de base modulo n Ne jamais laisser grossir le représentant de la classe. On effectue donc des réductions modulo n à la suite des opérations. Comment calculer mod 26? = mod 26 De plus 362 = avec 3 3 = 1 mod 26 et 5 4 = 1 mod 26

91 UPMC - Licence Info - Crypto /16 70/182 Calcul modulaire pratique Principe de base modulo n Ne jamais laisser grossir le représentant de la classe. On effectue donc des réductions modulo n à la suite des opérations. Comment calculer mod 26? = = = 9 mod 26 De plus 362 = avec 3 3 = 1 mod 26 et 5 4 = 1 mod 26

92 Algorithme Euclide étendu : mise en pratique! UPMC - Licence Info - Crypto /16 71/182 Comment trouver l inverse de 2345 modulo s il existe?

93 Algorithme Euclide étendu : mise en pratique! UPMC - Licence Info - Crypto /16 71/182 Comment trouver l inverse de 2345 modulo s il existe? Calcul pratique du pgcd étendu (à la main): i r i 1 r i q i r i+1 u i+1 v i ???? 3??????

94 Algorithme Euclide étendu : mise en pratique! UPMC - Licence Info - Crypto /16 71/182 Comment trouver l inverse de 2345 modulo s il existe? Calcul pratique du pgcd étendu (à la main ou en machine): i r i 1 r i q i r i+1 u i+1 v i

95 Algorithme Euclide étendu : mise en pratique! UPMC - Licence Info - Crypto /16 71/182 Comment trouver l inverse de 2345 modulo s il existe? Calcul pratique du pgcd étendu (à la main): i r i 1 r i q i r i+1 u i+1 v i On en déduit que = 1 et donc = 1 mod 30003

96 Plan UPMC - Licence Info - Crypto /16 72/182 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

97 UPMC - Licence Info - Crypto /16 73/182 Chiffrement affine : problème résolu Cryptosystème affine P, C sont tous les deux égaux à Z/26Z K est un sous ensemble de Z/26Z Z/26Z tel que Pour tout K = (a, b) K on a e K (x) = ax + b mod 26 et il existe une fonction d K : C P inverse de e K. Comment déterminer l ensemble K? Étude de Z/26Z. Attention c est un anneau non intègre! Étant donnés a, b, y il faut résoudre l équation y = ax + b mod 26 Ceci est possible que si a est inversible modulo 26. On obtient alors d K (y) = a 1 (y b).

98 Chiffrement affine : Table de multiplication mod 26 UPMC - Licence Info - Crypto /16 74/

99 UPMC - Licence Info - Crypto /16 75/182 Chiffrement affine : Indicatrice d Euler Cryptosystème affine P, C sont tous les deux égaux à Z/26Z K est le sous-ensemble des (a, b) Z/26Z Z/26Z tel que a est premier avec 26. Indicatrice d Euler Étant donné un entier n, le nombre d éléments strictement positifs, inférieurs et premiers avec n est noté ϕ(n). Ce nombre est appelé indicatrice d Euler de n et noté ϕ(a) = card{0 < n < a : pgcd(a, n) = 1} Le nombre de clés possibles est donc ϕ(26) 26. Comment calculer ϕ(26)? à suivre...

100 UPMC - Licence Info - Crypto /16 76/182 Conclusion César et chiffrement affine Nous avons vu l utilisation des structures mathématiques de base pour définir des cryptosystèmes. Arithmétique modulaire et groupes de permutations. Je vous conseille de réviser l algorithme d Euclide et son utilisation pour calculer les coefficients de Bézout!

101 Plan Cryptographie - Objets mathématiques de base 1 Définitions 2 Cryptographie mono-alphabétique 3 Structures algébriques de base Groupes Anneaux 4 Relation d équivalence, théorème de Lagrange Généralités sur les relations d équivalence Théorème de Lagrange PGCD Calcul du PGCD: algorithme d Euclide 5 L anneau (Z/nZ, +, ) et l arithmétique modulaire 6 Conclusion

102 UPMC - Licence Info - Crypto /16 78/182 Part II Cryptanalyse des chiffrements mono-alphabétique et Vigenère

103 Plan UPMC - Licence Info - Crypto /16 79/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

104 UPMC - Licence Info - Crypto /16 80/182 Cryptanalyse Analyse de la sécurité d un cryptosystème (théorique, complexité) Attaquer une instance particulière d un cryptosystème (retrouver la clé, un message clair) Plusieurs niveaux d analyse Clair/Chiffré inconnu Couple Clair/Chiffré connu Chiffré choisi (on a accès à un appareil de déchiffrement, boîte noire) Clair choisi (on a accès à un appareil de chiffrement, boîte noire)

105 Cryptanalyse : distingueur Messages possibles (aléatoires) Messages chiffrés Comment distinguer les messages chiffrés des messages aléatoires? Utiliser ce distingueur pour attaquer le cryptosystème. UPMC - Licence Info - Crypto /16 81/182

106 Distingueur : rappel de probabilités UPMC - Licence Info - Crypto /16 82/182 Définitions Étant donné un ensemble fini Ω d évènements atomiques. Une fonction P définie pour tout ω Ω et à image dans R est appelée probabiblité dès que 0 P(ω) 1, ω Ω et ω Ω P(ω) = 1. Un évènement E est un sous-ensemble de Ω et sa probabilité d apparition sera donné par P(E) = P(ω) ω E en particulier P( ) = 0 et P(Ω) = 1 Exemples Pile ou face : Ω = {P, F}, P(F) = 1 2, P(P) = 1 2 Deux dés à 6 faces : Ω = {(1, 1), (1, 2),..., (6, 5), (6, 6)}, P((m, n)) = , P((1, )) = 36

107 Plan UPMC - Licence Info - Crypto /16 83/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

108 UPMC - Licence Info - Crypto /16 84/182 Distingueur : étude statistique des caractères Soit c un caractère tiré aléatoirement. On cherche à analyser des évènements du genre {Le caractère c provient d un texte français et est un A} On ne peut pas faire une analyse sur tous les textes français possibles. Principe de la statistique, on effectue un sondage sur un ensemble fini et on extrapole les résultats. Distingueur Dans un texte correspondant à un flux aléatoire de caractères on a P(A) = 1/26 Dans un texte correspondant à un flux français de caractères on a P(A) 9.2%

109 Distingueur : étude statistique des caractères UPMC - Licence Info - Crypto /16 85/182 La probabilité d apparition des caractères est un distingueur entre les différentes langues et l aléa. Francais

110 Distingueur : étude statistique des caractères UPMC - Licence Info - Crypto /16 86/182 La probabilité d apparition des caractères est un distingueur entre les différentes langues et l aléa. Francais Allemand Anglais Finnois Breton Suedois

111 Cryptanalyse du chiffrement mono-alphabétique UPMC - Licence Info - Crypto /16 87/182 Al Kindi ( 800) explique dans son ouvrage de cryptanalyse la méthode de l étude des fréquences. Il explique exactement ce que nous venons de voir : la distribution des caractères dans un texte permet de le caractériser.

112 Exemple : Cryptanalyse du décalage UPMC - Licence Info - Crypto /16 88/182 Soit à retrouver le texte clair francais correspondant au chiffré suivant PITVIWMHIRXIWXQEMRXIRERXIRZEGERGIWEY QEVSGMPIWXEGGSQTSKRIHIWEJIQQIIXHIWIW XVSMWIRJERXWXSYXIWPIWGSQQYRMGEXMSRWH IZVSRXIXVIGLMJJVIIWTEVPIGSHIBXVYREKI RXPIWYMZVEXSYXEYPSRKHYWINSYVIXWIVEIU RXIMPSGGYTIVEPITEPEGIJPSXXERXJEGIEPE ZIRYIHIWXVSMWTEPQMIVW

113 Exemple : Cryptanalyse du décalage UPMC - Licence Info - Crypto /16 89/182 Francais Chiffré On lit le décalage 4

114 Exemple : Cryptanalyse du mono-alphabétique UPMC - Licence Info - Crypto /16 90/182 Soit à retrouver le texte clair francais correspondant au chiffré suivant RDMJDQXIDBVDQVHUXBVDBUBVDBNUOUBODQUW HUJPOXRDQVUOOPHMPGBDIDQUTDHHDDVIDQDQ VJPXQDBTUBVQVPWVDQRDQOPHHWBXOUVXPBQI DNJPBVDVJDOKXTTJDDQMUJRDOPIDSVJWBUGD BVRDQWXNJUVPWVUWRPBGIWQDYPWJDVQDJUDZ WXMDIWBDNURXQDIDOPHHWBXOUVXPBOKXTTJU BVDXRPOOWMDJURDMURUODTRPVVUBVTUODURU NDBWDIDQVJPXQMURHXDJQ

115 Exemple : Cryptanalyse du chiffrement mono-alphabétique UPMC - Licence Info - Crypto /16 91/182 Francais Chiffré La clé est la permutation : [ULOIDTGKXYCRHBPMZJQVWNFSAE]

116 UPMC - Licence Info - Crypto /16 92/182 Exemple : Cryptanalyse du mono-alphabétique La cryptanalyse du chiffrement mono-alphabétique peut être vue comme une méthode force-brute-assistée où l on va faire des hypothèses tout au long de l attaque. Dans le cas général, il nous faut plus que la fréquence des lettres pour y arriver efficacement. Bigrammes Pourcentages Bigrammes Pourcentages ES 3,15 LE 2,46 EN 2,42 DE 2,15 RE 2,09 NT 1,97 ON 1,64 TE 1,63 ER 1,63 SE 1,55

117 Steno (Venise) 1411 UPMC - Licence Info - Crypto /16 93/182 Conclusion 1 Le chiffrement mono-alphabétique est très facile à attaquer! Comment le sécuriser? Substitution homophonique (15ème siècle)

118 UPMC - Licence Info - Crypto /16 93/182 Conclusion 1 Le chiffrement mono-alphabétique est très facile à attaquer! Comment le sécuriser? Substitution homophonique Passer au poly-alphabétique (Alberti, Vigenère)

119 Plan UPMC - Licence Info - Crypto /16 94/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

120 Plan UPMC - Licence Info - Crypto /16 95/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

121 UPMC - Licence Info - Crypto /16 96/182 Le poly-alphabétique par Alberti (15ème siècle) Chiffrement multi-mono-alphabétique Leon Battista Alberti ( ) On chiffre des blocs de texte de longueur l Pour la lettre d indice i d un bloc on applique un chiffrement mono-alphabétique e Ki. La clé secrète correspond à l clés secrètes de chiffrements mono-alphabétiques (permutation d un alphabet). Trop difficile à utiliser, nécessité de le simplifier.

122 UPMC - Licence Info - Crypto /16 97/182 Chiffrement de Vigenère ( ) Idée : reprendre le chiffrement de Alberti en se restreignant aux chiffrements par décalage (Trithème) Chiffrement vu sur l alphabet : A T T A Q U E N N E M I D E M A I N + C R Y P T O C R Y P T O C R Y P T O = C K R P J I G E L T F W F V K P B B Chiffrement vue sur les entiers modulo 26 : = On note c i le i-ème caractère dans l alphabet avec i {0,..., 25}.

123 Chiffrement de Vigenère ( ) UPMC - Licence Info - Crypto /16 97/182 Idée : reprendre le chiffrement de Alberti en se restreignant aux chiffrements par décalage (Trithème) La clé secrète correspond à un mot de l caractères. Ne conserve pas les proprétés statistiques du chiffrement mono-alphabétique.

124 Plan UPMC - Licence Info - Crypto /16 98/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

125 Longueurs de clef possibles (diviseurs de UPMC - Licence Info - Crypto /16 99/182 Cryptanalyse Etape 1 : longueur de la clé KQOWEFVJPUJUUNUKGLMEKJINMWUXFQMKJBGWRLFNFGHUDWUUMBSVLPS NCMUEKQCTESWREEKOYSSIWCTUAXYOTAPXPLWPNTCGOJBGFQHTDWXIZA YGFFNSXCSEYNCTSSPNTUJNYTGGWZGRWUUNEJUUQEAPYMEKQHUIDUXFP GUYTSMTFFSHNUOCZGMRUWEYTRGKMEEDCTVRECFBDJQCUSWVBPNLGOYL SKMTEFVJJTWWMFMWPNMEMTMHRSPXFSSKFFSTNUOCZGMDOEOYEEKCPJR Charles Babbage ( ) Friedrich Wilhelm Kasiski ( ) GPMURSKHFRSEIUEVGOYCWXIZAYGOSAANYDOEOYJLWUNHAMEBFELXYVL WNOJNSIOFRWUCCESWKVIDGMUCGOCRUWGNMAAFFVNSIUDEKQHCEUCPFC MPVSUDGAVEMNYMAMVLFMAOYFNTQCUAFVFJNXKLNEIWCWODCCULWRIFT Une des techniques WGMUSWOVMATNYBUHTCOCWFYTNMGYTQMKBBNLGFBTWOJFTWGNTEJKNEE pour calculer la longueur de la clé est le test de DCLDHWTVBUVGFBIJG Kasiski: il s agit de repérer les motifs qui se répètent KQOWEFVJPUJUUNUKGLMEKJINMWUXFQMKJBGWRLFNFGHUDWUUMBSVLPS NCMUEKQCTESWREEKOYSSIWCTUAXYOTAPXPLWPNTCGOJBGFQHTDWXIZA YGFFNSXCSEYNCTSSPNTUJNYTGGWZGRWUUNEJUUQEAPYMEKQHUIDUXFP GUYTSMTFFSHNUOCZGMRUWEYTRGKMEEDCTVRECFBDJQCUSWVBPNLGOYL SKMTEFVJJTWWMFMWPNMEMTMHRSPXFSSKFFSTNUOCZGMDOEOYEEKCPJR GPMURSKHFRSEIUEVGOYCWXIZAYGOSAANYDOEOYJLWUNHAMEBFELXYVL WNOJNSIOFRWUCCESWKVIDGMUCGOCRUWGNMAAFFVNSIUDEKQHCEUCPFC MPVSUDGAVEMNYMAMVLFMAOYFNTQCUAFVFJNXKLNEIWCWODCCULWRIFT WGMUSWOVMATNYBUHTCOCWFYTNMGYTQMKBBNLGFBTWOJFTWGNTEJKNEE DCLDHWTVBUVGFBIJG On regarde ensuite la distance entre les répétitions. On cherche les facteurs pour chaque pa

126 UPMC - Licence Info - Crypto /16 100/182 Cryptanalyse Etape 1 : longueur de la clé Principe du test de Kasiski Une répétition dans le message clair si elle se produit à la même position dans la clef produit une répétition dans le message chiffré, on repère les répétitions dans le chiffré en espérant qu elles correspondent à une répétition dans le clair et donc la distance entre elles fournit un multiple de la longueur de la clef. Le pgcd (probable) des distances entre les répétitions du motif Nous verrons par la suite une méthode plus fiable et plus facile à automatiser pour calculer la longueur de la clef

127 UPMC - Licence Info - Crypto /16 101/182 Cryptanalyse étape 2 : finalisation de l attaque Principe Soit C un texte dans un langage usuel représenté sous la forme d une suite finie C = (k i ) 0 i n 1 de n caractères. Pour tout 0 d < l, si la d-ième colonne du texte C, définie par C d = (k 0 i n 1,i=d mod l ), est suffisamment longue la probabilité d apparition p i du caractère c i dans C d est la même que dans C. On découpe le texte chiffré en bloc de l caractères et on applique une cryptanalyse par décalage sur les colonnes!

128 Cryptanalyse étape 2 : finalisation de l attaque Attaque du chiffrement par décalage : Basée sur les fréquences A T T A Q U C R Y P T O C K R P J I E N N E M I C R Y P T O G E L T F W D E M A I N C R Y P T O F V K P B B Sous-textes plus courts l analyse des fréquences fournit moins d informations Plus difficile de deviner la clé, 26 l tests où l est la longueur de la clé UPMC - Licence Info - Crypto /16 102/182

129 Cryptanalyse automatique : indice de coïncidence UPMC - Licence Info - Crypto /16 103/182 Définition L indice de coïncidence d un texte est la probabilité de tirer un couple de lettres identiques au hasard. William F. Friedman ( ) IC = 25 Cn 2 i C 2 i=0 n = 25 i=0 n i (n i 1) n(n 1) où n i est le nombre de caractère c i dans le texte et n est la longueur totale de ce dernier.

130 UPMC - Licence Info - Crypto /16 103/182 Cryptanalyse automatique : indice de coïncidence IC = 25 i=0 n i (n i 1) n(n 1) distingue l aléatoire attaque longueur de la clé Lorsque le texte est suffisamment long (n ) l indice IC est donné par 25 IC p 2 i = pour l alphabet français i=0 où p i est la probabilité d apparition de la lettre numérotée i dans un texte en français. Lorsque les lettres sont distribuées aléatoirement, l indice de coïncidence est faible IC 25 i=0 ( ) 1 2 =

131 Cryptanalyse automatique : indice de coïncidence UPMC - Licence Info - Crypto /16 103/182 IC = 25 i=0 n i (n i 1) n(n 1) distingue l aléatoire attaque longueur de la clé

132 UPMC - Licence Info - Crypto /16 104/182 Cryptanalyse automatique : IC Mutuelle IC mutuelle distingue l aléatoire sur deux textes attaque sur la clé. Définition L indice de coïncidence mutuelle (ICM) entre deux textes t 1 et t 2 est la probabilité de tirer au hasard la même lettre dans t 1 et t 2. ICM = 25 i=0 m i n i mn où m i (resp. n i ) est le nombre de caractères c i dans le texte t 1 (resp. t 2 ) et m (resp. n) la taille de ce dernier.

133 UPMC - Licence Info - Crypto /16 104/182 Cryptanalyse automatique : IC Mutuelle ICM = 25 i=0 m i n i mn pour distinguer l aléatoire, attaque du décalage Propriété identique à l indice de coïncidence Attaque des chiffrements par décalage par analyse successive de décalés

134 Cryptanalyse automatique : IC Mutuelle UPMC - Licence Info - Crypto /16 104/182

135 Cryptanalyse automatique : IC Mutuelle UPMC - Licence Info - Crypto /16 104/182

136 UPMC - Licence Info - Crypto /16 104/182 Cryptanalyse automatique : IC Mutuelle On termine en résolvant un système linéaire. δ 3 = δ δ 3 = δ δ 4 = δ

137 UPMC - Licence Info - Crypto /16 105/182 La cryptanalyse de Vigenère (avec les IC): trouver la longueur de clef Essayer des longueurs l = et pour chaque longueur l possible: Découper le texte en colonnes C 0 i<l, Calculer m = moyenne(ic(c i )) 0 i<l Si m > 0.06 alors l est la longueur de la clef, sinon on passe à la valeur de l suivante

138 UPMC - Licence Info - Crypto /16 106/182 La cryptanalyse de Vigenère (avec les IC): décalage de chaque colonne I Première solution: Analyse de fréquences directe Par analyse de fréquences, trouver la position f (C i ) de la lettre la plus fréquente de la colonne, compte tenu de la position f (langue) de la lettre la plus fréquente de la langue du message, déduire le décalage d i = f (C i ) f (langue) de la colonne C i.

139 UPMC - Licence Info - Crypto /16 107/182 La cryptanalyse de Vigenère (avec les IC): décalage de chaque colonne II Seconde solution: Utilisation des ICM puis analyse de fréquences Calculer les ICM des C i et les stocker dans un tableau de différences de décalage d j d i entre les colonnes i et j Résoudre le système linéaire correspondant pour exprimer le décalage d j i de toutes les colonnes sauf la colonne i en fonction de d i Procéder par analyse de fréquences soit sur la colonne i et de d i déduire les d j i, soit sur tout le texte après avoir aligné les colonnes j i sur le décalage d i Puis déduire la clef et le déchiffré du texte.

140 Plan UPMC - Licence Info - Crypto /16 108/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

141 UPMC - Licence Info - Crypto /16 109/182 Corrélation de Pearson: pourquoi s y intéresse-t-on? Lorsqu on pense avoir trouvé une substitution s entre deux alphabets A et B pour déchiffrer un chiffré C La distribution des fréquences des caractères de A dans un texte de référence de la langue de s(a) dans le chiffré C doivent être à peu près les mêmes Les points du nuage de points freq(s(c), C) en fonction de freq(c, langue) pour c A, doivent être à peu près alignés. Le coefficient de corrélation de Pearson mesure la qualité de cet alignement et peut donc servir de révélateur pour déterminer si la substitution s effectuée sur le chiffré C est la bonne.

142 Coefficient de corrélation de Pearson UPMC - Licence Info - Crypto /16 110/182 (X i X)(Y i Ȳ) ρ X,Y = (X i X) 2 i i avec X la moyenne de la variable aléatoire X. i (Y i Ȳ) 2 Une corrélation parfaite produit ρ X,Y = 1. Plus ρ X,Y est proche de 1 et plus on peut considérer que la fréquence des caractères s(c) dans le chiffré C et celle de c dans la langue sont corrélées.

143 UPMC - Licence Info - Crypto /16 111/182 Cryptanalyse de Vigenère (corrélation de Pearson) Essayer des longueurs l = et pour chaque longueur l possible: Découper le texte en colonnes C 0 i<l, Pour chaque colonne C k, calculer la corrélation maximale m k entre les fréquences de référence de la langue et C k décalé de i pour i = 0.. A 1, cette corrélation maximale est atteinte pour un décalage d k On calcule m = moyenne(m k ), k Si m > 0.6, alors l est la longueur de la clef, (d o,..., d l 1 ) est la clef et on déduit le message clair. On obtient de très bons résultats très rapidement et pour des textes bien plus courts que pour la cryptanalyse par IC.

144 UPMC - Licence Info - Crypto /16 112/182 Conclusion 2 Le chiffrement mono-alphabétique est très facile à attaquer! Le chiffrement de Vigenère ne semble pas beaucoup plus sûr! Comment le sécuriser? Substitution homophonique ( ) Substitution poly-alphabétique (Vigenère) Substitution polygrammique (Playfair) et combinaisons substitution+transposition (ADFGVX)

145 Plan UPMC - Licence Info - Crypto /16 113/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

146 UPMC - Licence Info - Crypto /16 114/182 Substitution polygrammique Polygrammique: chiffrer non plus des caractères individuels mais des blocs de caractères (des polygrammes). Ce qu on gagne On travaille sur un alphabet à 26 2 caractères donc le nombre de substitutions possibles augmente énormément (26! ! ) L analyse de fréquences sur les caractères individuels ne sert à rien et l analyse sur les polygrammes est très ardue.

147 Un exemple de substitution polygrammique: Playfair UPMC - Licence Info - Crypto /16 115/182 H O W T K Y U D X V N B F L C E S I R A G Z Q P M Wheatstone ( ) Inventé par Wheatstone en 1854 et popularisé par Lord Playfair, utilisé pendant la Première Guerre Mondiale par les anglais et la Seconde Guerre Mondiale par les australiens, bien que ce chiffrement ait été analysé en 1914 par Mauborgne. La clef secrète se présente sous la forme d un carré 5x5 qui contient toutes les lettres de l alphabet, en en confondant 2, telles que I et J ou V et W.

148 Principe du chiffrement de Playfair UPMC - Licence Info - Crypto /16 116/182 On analyse le texte par groupe de 2 caractères et on applique selon ces caractères l une des 3 règles suivantes: m 1 c 1 m 1 c 1 m 1 c 1 m 2 c 2 m 2 c 2 c 2 m 2 Règle ligne wrap si nécessaire Règle colonne wrap si nécessaire Règle rectangle S il ne reste qu un seul caractère à chiffrer ou si les deux caractères sont identiques: on ajoute une lettre neutre telle que X après le premier caractère et on applique à nouveau les règles à partir du premier caractère.

149 Exemple de chiffrement de Playfair UPMC - Licence Info - Crypto /16 117/182 H O W T K Y U D X V N B F L C E S I R A G Z Q P M ATTAQUE PARIS DEMAIN AVEC PETIT TRAIN BLEU AT TA QU EP AR IS DE MA IN AV EC PE TI TT RA IN BL EU AT TA QU EP AR IS DE MA IN AV EC PE TI TXTR AI NB LE UX RK KR ZD RG EA RI YI KM EF MC AN GR WR XL XP ER BF NR DV RKKRZ DRGEA RIYIK MEFMC ANGRW RXLXP ERBFN RDV On verra en TD un autre chiffrement polygrammique: le chiffrement de Hill.

150 Principe du chiffrement par transposition Principe Le texte est organisé selon une disposition géométrique et relu selon une autre après une éventuelle transformation. Transposition des colonnes On écrit le texte en lignes de l caractères, ce qui constitue l colonnes, puis on relit colonne par colonne en suivant l ordre fixé par une permutation. Clef La permutation est fournie par un mot: par exemple avec le mot MESSAGE, qui a 7 lettres, on écrit le texte sur 7 colonnes puis on relit les colonnes dans l ordre d apparition des lettres du mot dans l alphabet: MESSAGE UPMC - Licence Info - Crypto /16 118/182

151 Exemple de chiffrement par transposition Par exemple avec la clef MESSAGE sur la phrase: Au lieu de se diriger vers les bâtiments il se risqua enfin à gravir le terri sur lequel brûlaient les trois feux de houille. MESSAGE AEEGMSS AULIEUD ESEDIRI GERVERS LESBATI MENTSIL SERISQU AENFINA GRAVIRL ETERRIS URLEQUE LBRULAI ENTLEST ROISFEU XDEHOUI LLEXXXX et on relit colonne par colonne EUDUALI ISIREED EESRGRV AEITLSB SELIMNT SEUQSRI IEANANF IRLRGAV RTSIEER QREUULE LBIALRU ENTSETL FOUERIS ODIUXEH XLXXLEX On complète la dernière ligne avec des X par exemple EIEASSIIRQLEFOXUSEEEEERTRBNODLDISILUALSEITUIXURRTIQN RIUASEUXAEGLMSAGEULERXLLERSNRNAELRTIEEIDVBTIFVREULSHX UPMC - Licence Info - Crypto /16 119/182

152 ADFGVX UPMC - Licence Info - Crypto /16 120/182 Le chiffrement ADFGVX combine une substitution mono-alphabétique (avec le carré de Polybe comme alphabet d arrivée) avec une transposition de colonnes. Inventé par Nebel (mars 1918)... et cryptanalysé par Painvin (juin 1918). Voir TD

153 UPMC - Licence Info - Crypto /16 121/182 Cryptanalyse du chiffrement polygrammique et du chiffrement par transposition Méthodes de cryptanalyse Utilisation des statistiques d apparition des bigrammes, trigrammes, etc. (attaque manuelle plus compliquée que pour le chiffrement poly-alphabétique) Utilisation de caractérisations propres au cryptosystème (par exemple pour Playfair : RE GH alors ER HG) Cryptosystème plus long à casser mais on y arrive, surtout si on a un couple clair-chiffré (Painvin) Idée reprise pour Enigma en mélangeant plus radicalement Attaque mécanisée de Turing

154 UPMC - Licence Info - Crypto /16 122/182 Résistance d un chiffrement Cryptosystème réputé cryptanalysé mais toujours utilisé?! Playfair, double Playfair, ou double translation, bien que cryptanalysés pendant la première guerre mondiale, ont été utilisés pendant la seconde guerre mondiale pour des communications importantes mais non-critiques sur les champs de bataille. Principe On peut utiliser un cryptosystème pour chiffrer une information tant que le temps pour effectuer la cryptanalyse du système dépasse la durée de la pertinence de l information. Évidemment on ne sait pas quand la cryptanalyse devient assez rapide pour fournir le clair avant la péremption de l information! D où la question: Existe-t-il un chiffrement inattaquable? Est-ce une panacée?

155 Plan UPMC - Licence Info - Crypto /16 123/182 7 Généralités, rappels de probabilités 8 Cryptanalyse du chiffrement mono-alphabétique 9 Chiffrement de Vigenère et sa cryptanalyse Définition du chiffrement de Vigenère Cryptanalyse du Chiffrement de Vigenère avec les indices de coïncidence Utilisation de la corrélation de Pearson pour la cryptanalyse de Vigenère 10 Substitution polygrammique et combinaison substitution+transposition 11 Chiffrement Parfait

156 UPMC - Licence Info - Crypto /16 124/182 Shannon Claude Shannon ( ) a publié deux articles de recherche en 1948 et 1949 donnant les fondations de la théorie de l information et, plus généralement, de la cryptologie moderne. Il donne les première preuve de sécurité d un cryptosystème en se basant sur des principes de probabilité et de statistique. Définitions importantes Théorie de l information Entropie d un langage Chiffrement parfait

157 UPMC - Licence Info - Crypto /16 125/182 Chiffrement parfait Intuition Un cryptosystème sera dit un chiffrement parfait lorsque la donnée d un message chiffré ne révèle aucune fuite d information sur la clé ou le message clair correspondant et aucune information non plus sur les textes chiffrés futurs. Caractérisation Supposons qu un cryptosystème vérifie #K = #P = #C alors il sera un chiffrement parfait ssi on a Toutes les clés sont utilisées avec la même probabilité Pour tout couple (m, c) P C il existe une unique clé k telle que e k (m) = c.

158 Exemple : Vernam s One Time Pad UPMC - Licence Info - Crypto /16 126/182 Gilbert Vernam proposa le One Time Pad en Principe: un Vigenère avec une clef aléatoire aussi longue que le message à chiffrer, utilisée une seule fois. En pratique on utilise un outil extrêmement simple et rapide, le XOR! Les messages clairs et chiffrés ainsi que les clefs seront des suites de bits de même longueur (ce qu on peut voir comme du Vigenère bit à bit). C[i] = M[i] K[i] et M[i] = C[i] K[i]

159 UPMC - Licence Info - Crypto /16 127/182 Exemple : Vernam s One Time Pad C est le seul cryptosystème à chiffrement parfait! Très peu pratique! Utilisé dans la cryptographie Top Secrète (téléphone rouge, valise diplomatique, militaire (Atomique)). Le principe est utilisé pour faire des chiffrements symétriques dépendant de générateur aléatoire.

160 UPMC - Licence Info - Crypto /16 127/182 Exemple : Vernam s One Time Pad La clé doit être aussi longue que le message Elle doit être aléatoire Elle doit être utilisée une unique fois Projet VENONA des USA pour écouter les discussions Russes utilisant un Two-Time Pad faiblesse!

161 UPMC - Licence Info - Crypto /16 128/182 La panacée? Évidemment non si ça ne s est pas imposé en 1 siècle! Impraticable Usage unique d une clef: casse-tête de la transmission sécurisée de la nouvelle clef à chaque transmission de message Usage unique d une clef: il faut être sûr même après des années de ne pas réutiliser une clef Difficile de produire des clefs vraiment aléatoires

162 Conclusion finale! UPMC - Licence Info - Crypto /16 129/182 Chiffrement parfait existe mais impraticable Partir de ce principe pour définir des Block Ciphers standardisés Idée clé : randomiser la clé de chiffrement suivant des tours (complexifier la tâche des attaquants) Voir la suite en crypto/sécu en M1

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail

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

Exercices - Polynômes : corrigé. Opérations sur les polynômes Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)

Plus en détail

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

Nombres premiers. Comment reconnaître un nombre premier? Mais... Introduction Nombres premiers Nombres premiers Rutger Noot IRMA Université de Strasbourg et CNRS Le 19 janvier 2011 IREM Strasbourg Definition Un nombre premier est un entier naturel p > 1 ayant exactement

Plus en détail

UNIVERSITE IBN ZOHR Faculté des sciences Agadir. Filière SMA & SMI. Semestre 1. Module : Algèbre 1

UNIVERSITE IBN ZOHR Faculté des sciences Agadir. Filière SMA & SMI. Semestre 1. Module : Algèbre 1 UNIVERSITE IBN ZOHR Faculté des sciences Agadir Filière SMA & SMI Semestre 1 Module : Algèbre 1 Année universitaire : 011-01 A. Redouani & E. Elqorachi 1 Contenu du Module : Chapitre 1 : Introduction Logique

Plus en détail

Cryptographie et fonctions à sens unique

Cryptographie et fonctions à sens unique Cryptographie et fonctions à sens unique Pierre Rouchon Centre Automatique et Systèmes Mines ParisTech pierre.rouchon@mines-paristech.fr Octobre 2012 P.Rouchon (Mines ParisTech) Cryptographie et fonctions

Plus en détail

Cours arithmétique et groupes. Licence première année, premier semestre

Cours arithmétique et groupes. Licence première année, premier semestre Cours arithmétique et groupes. Licence première année, premier semestre Raphaël Danchin, Rejeb Hadiji, Stéphane Jaffard, Eva Löcherbach, Jacques Printems, Stéphane Seuret Année 2006-2007 2 Table des matières

Plus en détail

1 Définition et premières propriétés des congruences

1 Définition et premières propriétés des congruences Université Paris 13, Institut Galilée Département de Mathématiques Licence 2ème année Informatique 2013-2014 Cours de Mathématiques pour l Informatique Des nombres aux structures Sylviane R. Schwer Leçon

Plus en détail

Quelques tests de primalité

Quelques tests de primalité Quelques tests de primalité J.-M. Couveignes (merci à T. Ezome et R. Lercier) Institut de Mathématiques de Bordeaux & INRIA Bordeaux Sud-Ouest Jean-Marc.Couveignes@u-bordeaux.fr École de printemps C2 Mars

Plus en détail

Représentation d un entier en base b

Représentation d un entier en base b Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir

Plus en détail

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE Michel Rigo http://www.discmath.ulg.ac.be/ Année 2007 2008 CRYPTOGRAPHIE. N. F. Art d écrire en chiffres ou d une façon secrète quelconque. Ensemble

Plus en détail

Cours d arithmétique Première partie

Cours d arithmétique Première partie Cours d arithmétique Première partie Pierre Bornsztein Xavier Caruso Pierre Nolin Mehdi Tibouchi Décembre 2004 Ce document est la première partie d un cours d arithmétique écrit pour les élèves préparant

Plus en détail

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer

Plus en détail

Cours de mathématiques

Cours de mathématiques DEUG MIAS premier niveau Cours de mathématiques année 2003/2004 Guillaume Legendre (version révisée du 3 avril 2015) Table des matières 1 Éléments de logique 1 1.1 Assertions...............................................

Plus en détail

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)

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) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. 1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le

Plus en détail

Premiers exercices d Algèbre. Anne-Marie Simon

Premiers exercices d Algèbre. Anne-Marie Simon Premiers exercices d Algèbre Anne-Marie Simon première version: 17 août 2005 version corrigée et complétée le 12 octobre 2010 ii Table des matières 1 Quelques structures ensemblistes 1 1.0 Ensembles, relations,

Plus en détail

Mathématiques Algèbre et géométrie

Mathématiques Algèbre et géométrie Daniel FREDON Myriam MAUMY-BERTRAND Frédéric BERTRAND Mathématiques Algèbre et géométrie en 30 fiches Daniel FREDON Myriam MAUMY-BERTRAND Frédéric BERTRAND Mathématiques Algèbre et géométrie en 30 fiches

Plus en détail

Structures algébriques

Structures algébriques Structures algébriques 1. Lois de composition s Soit E un ensemble. Une loi de composition interne sur E est une application de E E dans E. Soient E et F deux ensembles. Une loi de composition externe

Plus en détail

Polynômes à plusieurs variables. Résultant

Polynômes à plusieurs variables. Résultant Polynômes à plusieurs variables. Résultant Christophe Ritzenthaler 1 Relations coefficients-racines. Polynômes symétriques Issu de [MS] et de [Goz]. Soit A un anneau intègre. Définition 1.1. Soit a A \

Plus en détail

Algorithmes récursifs

Algorithmes récursifs Licence 1 MASS - Algorithmique et Calcul Formel S. Verel, M.-E. Voge www.i3s.unice.fr/ verel 23 mars 2007 Objectifs de la séance 3 écrire des algorithmes récursifs avec un seul test rechercher un élément

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

Plus en détail

Chapitre VI - Méthodes de factorisation

Chapitre VI - Méthodes de factorisation Université Pierre et Marie Curie Cours de cryptographie MM067-2012/13 Alain Kraus Chapitre VI - Méthodes de factorisation Le problème de la factorisation des grands entiers est a priori très difficile.

Plus en détail

Raisonnement par récurrence Suites numériques

Raisonnement par récurrence Suites numériques Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.

Plus en détail

FONDEMENTS DES MATHÉMATIQUES

FONDEMENTS DES MATHÉMATIQUES FONDEMENTS DES MATHÉMATIQUES AYBERK ZEYTİN 1. DIVISIBILITÉ Comment on peut écrire un entier naturel comme un produit des petits entiers? Cette question a une infinitude d interconnexions entre les nombres

Plus en détail

Résumé du cours d algèbre 1, 2013-2014. Sandra Rozensztajn. UMPA, ENS de Lyon, sandra.rozensztajn@ens-lyon.fr

Résumé du cours d algèbre 1, 2013-2014. Sandra Rozensztajn. UMPA, ENS de Lyon, sandra.rozensztajn@ens-lyon.fr Résumé du cours d algèbre 1, 2013-2014 Sandra Rozensztajn UMPA, ENS de Lyon, sandra.rozensztajn@ens-lyon.fr CHAPITRE 0 Relations d équivalence et classes d équivalence 1. Relation d équivalence Définition

Plus en détail

Simulation de variables aléatoires

Simulation de variables aléatoires Chapter 1 Simulation de variables aléatoires Références: [F] Fishman, A first course in Monte Carlo, chap 3. [B] Bouleau, Probabilités de l ingénieur, chap 4. [R] Rubinstein, Simulation and Monte Carlo

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme

Plus en détail

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur

Plus en détail

Le produit semi-direct

Le produit semi-direct Le produit semi-direct Préparation à l agrégation de mathématiques Université de Nice - Sophia Antipolis Antoine Ducros Octobre 2007 Ce texte est consacré, comme son titre l indique, au produit semi-direct.

Plus en détail

Développement décimal d un réel

Développement décimal d un réel 4 Développement décimal d un réel On rappelle que le corps R des nombres réels est archimédien, ce qui permet d y définir la fonction partie entière. En utilisant cette partie entière on verra dans ce

Plus en détail

Journées Télécom-UPS «Le numérique pour tous» David A. Madore. david.madore@enst.fr. 29 mai 2015

Journées Télécom-UPS «Le numérique pour tous» David A. Madore. david.madore@enst.fr. 29 mai 2015 et et Journées Télécom-UPS «Le numérique pour tous» David A. Madore Télécom ParisTech david.madore@enst.fr 29 mai 2015 1/31 et 2/31 : définition Un réseau de R m est un sous-groupe (additif) discret L

Plus en détail

Tests de primalité et cryptographie

Tests de primalité et cryptographie UNIVERSITE D EVRY VAL D ESSONNE Tests de primalité et cryptographie Latifa Elkhati Chargé de TER : Mr.Abdelmajid.BAYAD composé d une courbe de Weierstrass et la fonction (exp(x), cos (y), cos(z) ) Maîtrise

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

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

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

Corrigé des TD 1 à 5

Corrigé des TD 1 à 5 Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un

Plus en détail

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

Table des matières. I Mise à niveau 11. Préface Table des matières Préface v I Mise à niveau 11 1 Bases du calcul commercial 13 1.1 Alphabet grec...................................... 13 1.2 Symboles mathématiques............................... 14 1.3

Plus en détail

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS = 7 10 1 + 5 10 2 + 2 10 3

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS = 7 10 1 + 5 10 2 + 2 10 3 8 Systèmes de numération INTRODUCTION SYSTÈMES DE NUMÉRATION POSITIONNELS Dans un système positionnel, le nombre de symboles est fixe On représente par un symbole chaque chiffre inférieur à la base, incluant

Plus en détail

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. A1 Trouvez l entier positif n qui satisfait l équation suivante: Solution 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. En additionnant les termes du côté gauche de l équation en les mettant sur le même dénominateur

Plus en détail

INF 4420: Sécurité Informatique Cryptographie II

INF 4420: Sécurité Informatique Cryptographie II : Cryptographie II José M. Fernandez M-3106 340-4711 poste 5433 Aperçu Crypto II Types de chiffrement Par bloc vs. par flux Symétrique vs. asymétrique Algorithmes symétriques modernes DES AES Masque jetable

Plus en détail

Extrait du poly de Stage de Grésillon 1, août 2010

Extrait du poly de Stage de Grésillon 1, août 2010 MINI-COURS SUR LES POLYNÔMES À UNE VARIABLE Extrait du poly de Stage de Grésillon 1, août 2010 Table des matières I Opérations sur les polynômes 3 II Division euclidienne et racines 5 1 Division euclidienne

Plus en détail

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies INF 232: Langages et Automates Travaux Dirigés Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies Année Académique 2013-2014 Année Académique 2013-2014 UNIVERSITÉ JOSEPH

Plus en détail

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x = LE NOMBRE D OR Présentation et calcul du nombre d or Euclide avait trouvé un moyen de partager en deu un segment selon en «etrême et moyenne raison» Soit un segment [AB]. Le partage d Euclide consiste

Plus en détail

Objets Combinatoires élementaires

Objets Combinatoires élementaires Objets Combinatoires élementaires 0-0 Permutations Arrangements Permutations pour un multi-ensemble mots sous-ensemble à k éléments (Problème du choix) Compositions LE2I 04 1 Permutations Supposons que

Plus en détail

Rappels et compléments, première partie : Nombres complexes et applications à la géométrie

Rappels et compléments, première partie : Nombres complexes et applications à la géométrie Rappels et compléments, première partie : Nombres complexes et applications à la géométrie 1 Définition des nombres complexes On définit sur les couples de réels une loi d addition comme suit : (x; y)

Plus en détail

ÉPREUVE COMMUNE DE TIPE 2008 - Partie D

ÉPREUVE COMMUNE DE TIPE 2008 - Partie D ÉPREUVE COMMUNE DE TIPE 2008 - Partie D TITRE : Les Fonctions de Hachage Temps de préparation :.. 2 h 15 minutes Temps de présentation devant le jury :.10 minutes Entretien avec le jury :..10 minutes GUIDE

Plus en détail

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

Cours d Analyse. Fonctions de plusieurs variables

Cours d Analyse. Fonctions de plusieurs variables Cours d Analyse Fonctions de plusieurs variables Licence 1ère année 2007/2008 Nicolas Prioux Université de Marne-la-Vallée Table des matières 1 Notions de géométrie dans l espace et fonctions à deux variables........

Plus en détail

Exercices sur le chapitre «Probabilités»

Exercices sur le chapitre «Probabilités» Arnaud de Saint Julien - MPSI Lycée La Merci 2014-2015 1 Pour démarrer Exercices sur le chapitre «Probabilités» Exercice 1 (Modélisation d un dé non cubique) On considère un parallélépipède rectangle de

Plus en détail

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

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique NOM DE L'UE : Algorithmique et programmation C++ LICENCE INFORMATIQUE Non Alt Alt S1 S2 S3 S4 S5 S6 Parcours : IL (Ingénierie Logicielle) SRI (Systèmes et Réseaux Informatiques) MASTER INFORMATIQUE Non

Plus en détail

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Groupe symétrique. Chapitre II. 1 Définitions et généralités Chapitre II Groupe symétrique 1 Définitions et généralités Définition. Soient n et X l ensemble 1,..., n. On appelle permutation de X toute application bijective f : X X. On note S n l ensemble des permutations

Plus en détail

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé. Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé. L usage d une calculatrice est autorisé Durée : 3heures Deux annexes sont à rendre avec la copie. Exercice 1 5 points 1_ Soit f la

Plus en détail

Petit lexique de calcul à l usage des élèves de sixième et de cinquième par M. PARCABE, professeur au collège Alain FOURNIER de BORDEAUX, mars 2007

Petit lexique de calcul à l usage des élèves de sixième et de cinquième par M. PARCABE, professeur au collège Alain FOURNIER de BORDEAUX, mars 2007 Petit lexique de calcul à l usage des élèves de sixième et de cinquième par M. PARCABE, professeur au collège Alain FOURNIER de BORDEAUX, mars 2007 page 1 / 10 abscisse addition additionner ajouter appliquer

Plus en détail

Cours de Probabilités et de Statistique

Cours de Probabilités et de Statistique Cours de Probabilités et de Statistique Licence 1ère année 2007/2008 Nicolas Prioux Université Paris-Est Cours de Proba-Stat 2 L1.2 Science-Éco Chapitre Notions de théorie des ensembles 1 1.1 Ensembles

Plus en détail

Cours d algorithmique pour la classe de 2nde

Cours d algorithmique pour la classe de 2nde Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage

Plus en détail

Problèmes de Mathématiques Filtres et ultrafiltres

Problèmes de Mathématiques Filtres et ultrafiltres Énoncé Soit E un ensemble non vide. On dit qu un sous-ensemble F de P(E) est un filtre sur E si (P 0 ) F. (P 1 ) (X, Y ) F 2, X Y F. (P 2 ) X F, Y P(E) : X Y Y F. (P 3 ) / F. Première Partie 1. Que dire

Plus en détail

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA 75. Un plombier connaît la disposition de trois tuyaux sous des dalles ( voir figure ci dessous ) et il lui suffit de découvrir une partie de chacun d eux pour pouvoir y poser les robinets. Il cherche

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

108y= 1 où x et y sont des entiers

108y= 1 où x et y sont des entiers Polynésie Juin 202 Série S Exercice Partie A On considère l équation ( ) relatifs E :x y= où x et y sont des entiers Vérifier que le couple ( ;3 ) est solution de cette équation 2 Déterminer l ensemble

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

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

Travail d intérêt personnel encadré : La cryptographie DÉCAMPS Régis & JUÈS Thomas 110101 111011 111001 111100 100011 001111 001110 110111 111011 111111 011111.......... 011111 110101 110100 011110 001111 000110 101111 010100 011011 100110 101111 010110 101010

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

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

0x700. Cryptologie. 2012 Pearson France Techniques de hacking, 2e éd. Jon Erickson 0x700 Cryptologie La cryptologie est une science qui englobe la cryptographie et la cryptanalyse. La cryptographie sous-tend le processus de communication secrète à l aide de codes. La cryptanalyse correspond

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

Probabilité. Table des matières. 1 Loi de probabilité 2 1.1 Conditions préalables... 2 1.2 Définitions... 2 1.3 Loi équirépartie...

Probabilité. Table des matières. 1 Loi de probabilité 2 1.1 Conditions préalables... 2 1.2 Définitions... 2 1.3 Loi équirépartie... 1 Probabilité Table des matières 1 Loi de probabilité 2 1.1 Conditions préalables........................... 2 1.2 Définitions................................. 2 1.3 Loi équirépartie..............................

Plus en détail

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro.

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro. Chapitre : Les nombres rationnels Programme officiel BO du 8/08/08 Connaissances : Diviseurs communs à deux entiers, PGCD. Fractions irréductibles. Opérations sur les nombres relatifs en écriture fractionnaire.

Plus en détail

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

Codage d information. Codage d information : -Définition- Introduction Plan Systèmes de numération et Représentation des nombres Systèmes de numération Système de numération décimale Représentation dans une base b Représentation binaire, Octale et Hexadécimale

Plus en détail

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples, Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

Probabilités conditionnelles Exercices corrigés

Probabilités conditionnelles Exercices corrigés Terminale S Probabilités conditionnelles Exercices corrigés Exercice : (solution Une compagnie d assurance automobile fait un bilan des frais d intervention, parmi ses dossiers d accidents de la circulation.

Plus en détail

Programme de la classe de première année MPSI

Programme de la classe de première année MPSI Objectifs Programme de la classe de première année MPSI I - Introduction à l analyse L objectif de cette partie est d amener les étudiants vers des problèmes effectifs d analyse élémentaire, d introduire

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

3 Approximation de solutions d équations

3 Approximation de solutions d équations 3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle

Plus en détail

Une forme générale de la conjecture abc

Une forme générale de la conjecture abc Une forme générale de la conjecture abc Nicolas Billerey avec l aide de Manuel Pégourié-Gonnard 6 août 2009 Dans [Lan99a], M Langevin montre que la conjecture abc est équivalente à la conjecture suivante

Plus en détail

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

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Factorisation d entiers (première partie)

Factorisation d entiers (première partie) Factorisation d entiers ÉCOLE DE THEORIE DES NOMBRES 0 Factorisation d entiers (première partie) Francesco Pappalardi Théorie des nombres et algorithmique 22 novembre, Bamako (Mali) Factorisation d entiers

Plus en détail

Fonctions homographiques

Fonctions homographiques Seconde-Fonctions homographiques-cours Mai 0 Fonctions homographiques Introduction Voir le TP Géogébra. La fonction inverse. Définition Considérons la fonction f définie par f() =. Alors :. f est définie

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

avec des nombres entiers

avec des nombres entiers Calculer avec des nombres entiers Effectuez les calculs suivants.. + 9 + 9. Calculez. 9 9 Calculez le quotient et le rest. : : : : 0 :. : : 9 : : 9 0 : 0. 9 9 0 9. Calculez. 9 0 9. : : 0 : 9 : :. : : 0

Plus en détail

Introduction. Mathématiques Quantiques Discrètes

Introduction. Mathématiques Quantiques Discrètes Mathématiques Quantiques Discrètes Didier Robert Facultés des Sciences et Techniques Laboratoire de Mathématiques Jean Leray, Université de Nantes email: v-nantes.fr Commençons par expliquer le titre.

Plus en détail

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

Chapitre 6. Fonction réelle d une variable réelle

Chapitre 6. Fonction réelle d une variable réelle Chapitre 6 Fonction réelle d une variable réelle 6. Généralités et plan d étude Une application de I dans R est une correspondance entre les éléments de I et ceu de R telle que tout élément de I admette

Plus en détail

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin. Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).

Plus en détail

Cours 02 : Problème général de la programmation linéaire

Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la Programmation Linéaire. 5 . Introduction Un programme linéaire s'écrit sous la forme suivante. MinZ(ou maxw) =

Plus en détail

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

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Chapitre 2. Matrices

Chapitre 2. Matrices Département de mathématiques et informatique L1S1, module A ou B Chapitre 2 Matrices Emmanuel Royer emmanuelroyer@mathuniv-bpclermontfr Ce texte mis gratuitement à votre disposition a été rédigé grâce

Plus en détail

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre : Terminale STSS 2 012 2 013 Pourcentages Synthèse 1) Définition : Calculer t % d'un nombre, c'est multiplier ce nombre par t 100. 2) Exemples de calcul : a) Calcul d un pourcentage : Un article coûtant

Plus en détail

Cours Fonctions de deux variables

Cours Fonctions de deux variables Cours Fonctions de deux variables par Pierre Veuillez 1 Support théorique 1.1 Représentation Plan et espace : Grâce à un repère cartésien ( ) O, i, j du plan, les couples (x, y) de R 2 peuvent être représenté

Plus en détail

Distribution Uniforme Probabilité de Laplace Dénombrements Les Paris. Chapitre 2 Le calcul des probabilités

Distribution Uniforme Probabilité de Laplace Dénombrements Les Paris. Chapitre 2 Le calcul des probabilités Chapitre 2 Le calcul des probabilités Equiprobabilité et Distribution Uniforme Deux événements A et B sont dits équiprobables si P(A) = P(B) Si il y a équiprobabilité sur Ω, cad si tous les événements

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

Date : 18.11.2013 Tangram en carré page

Date : 18.11.2013 Tangram en carré page Date : 18.11.2013 Tangram en carré page Titre : Tangram en carré Numéro de la dernière page : 14 Degrés : 1 e 4 e du Collège Durée : 90 minutes Résumé : Le jeu de Tangram (appelé en chinois les sept planches

Plus en détail

3. Conditionnement P (B)

3. Conditionnement P (B) Conditionnement 16 3. Conditionnement Dans cette section, nous allons rappeler un certain nombre de définitions et de propriétés liées au problème du conditionnement, c est à dire à la prise en compte

Plus en détail

Logique. Plan du chapitre

Logique. Plan du chapitre Logique Ce chapitre est assez abstrait en première lecture, mais est (avec le chapitre suivant «Ensembles») probablement le plus important de l année car il est à la base de tous les raisonnements usuels

Plus en détail

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 10 août 2015 Enoncés 1 Proailités sur un univers fini Evènements et langage ensemliste A quelle condition sur (a,, c, d) ]0, 1[ 4 existe-t-il une proailité P sur

Plus en détail

Conversion d un entier. Méthode par soustraction

Conversion d un entier. Méthode par soustraction Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut

Plus en détail

Pour l épreuve d algèbre, les calculatrices sont interdites.

Pour l épreuve d algèbre, les calculatrices sont interdites. Les pages qui suivent comportent, à titre d exemples, les questions d algèbre depuis juillet 003 jusqu à juillet 015, avec leurs solutions. Pour l épreuve d algèbre, les calculatrices sont interdites.

Plus en détail

Probabilités. C. Charignon. I Cours 3

Probabilités. C. Charignon. I Cours 3 Probabilités C. Charignon Table des matières I Cours 3 1 Dénombrements 3 1.1 Cardinal.................................................. 3 1.1.1 Définition............................................. 3

Plus en détail