Cryptographie : Protocoles à base de logarithme discret
|
|
- Jean-Paul Lanthier
- il y a 6 ans
- Total affichages :
Transcription
1 LICENCE SCIENCES ET TECHNOLOGIES U.E. de Travaux d Initiatives Personnels et Encadrés Cryptographie : Protocoles à base de logarithme discret BAH Mamadou Madjou Encadrants : ROBLOT Xavier DELAUNAY Christophe Responsable de l UE : CALDERO Philippe
2 SOMMAIRE I Introduction II Les outils nécessaires a) Les congruences et les classes d équivalence b) Le groupe (Z/n Z) et la fonction ϕ d Euler c) Le groupe multiplicatif cyclique (Z/p Z) d) L exponentiation rapide et modulaire et implémentation des algorithmes en Scheme et en C++ III Le problème du logarithme discret, le protocole de Diffie-Hellmann et le système El Gamal 1- Le problème du logarithme discret 2- Le protocole de Diffie-Hellmann 3- Le système El Gamal a) Fabrication de la clé publique b) Chiffrement c) Déchiffrement d) Signature e) certificat 4- Aspect programmation IV Calculs de logarithmes discrets a) Les attaques 1- La méthode des pas de bébé et de géant 2- La méthode ρ de Pollard b) Les faiblesses du logarithme discret La méthode de Pohlig-Hellmann V Conclusion VI Les références bibliographiques 2
3 I Introduction La cryptographie, art de chiffrer des messages en clair, existe depuis des siècles parce que l homme a toujours eu besoin de transmettre des messages secrets. C était le cas de Jules César ; ce dernier utilisait la cryptographie affine pour communiquer avec son état major. Ce codage affine s explique de la façon suivante : - on associe un nombre à chaque lettre de l alphabet 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 On calcule y= ax+b ; x est le nombre obtenu à partir de la lettre de départ, a est inversible mod 26 et le couple d entiers (a,b) est la clé de codage. - On calcule r, reste de la division euclidienne de y par Puis on associe à r la lettre correspondante par lecture inverse du tableau. Par exemple, si on code le mot ROME avec la clé (5, 13) on obtient UFIH Mot initial R O M E Code x x r Mot codé U F V H Jules César utilisait plus précisément un code basé sur un décalage affine c està-dire un codage avec a=1. Il est bien clair qu il est facile de retrouver un message avec ce type de codage parce qu il y a 312 (12*26) clés à tester. Il a fallu attendre les années 70 pour que la cryptographie connaisse une véritable expansion, notamment avec l apparition de systèmes à clés publiques tels que le protocole de Diffie-Hellmann, le système El Gamal (de Taher El Gamal) et le système RSA(actuellement utilisé dans plus de 85 % des échanges sécurisés mondiaux). Ayant pour vocation d assurer la confidentialité des messages, leur authentification, leur intégrité et leur non-répudiation, cette discipline concerne maintenant un grand public. Avec le progrès technologique et les techniques cryptographiques modernes, il est non seulement possible de fabriquer des cartes bleues, mais aussi d assurer la protection du copyright, de signer des documents électroniques et de contrôler des accès, etc. 3
4 II Les outils nécessaires a) Les congruences et les classes d équivalence 1- Définition Soit a, b deux entiers relatifs et n un entier strictement positif. On dit que a et b sont congrus modulo n lorsque a-b est un multiple de n. On note : a b [n] ou a b (n) ou a b mod n pour dire que a est congru à b modulo n. Cette relation de congruence est une relation d équivalence sur l ensemble Z des entiers. Elle est : - réflexive a a [n] - symétrique a b [n] b a [n] - transitive a b [n] et b c [n] a c [n]. 2- Proposition Les congruences sont compatibles avec l addition et la multiplication. Autrement dit si a b [n] et c d [n] alors a+c b+ d [n] et ac bd [n]. 3- Encore une définition On appelle Z/n Z l ensemble des classes d équivalence (ou l ensemble des classes de congruences modulo n). Pour tout entier a on note a la classe de congruence de a modulo n, a = {x Z ; x a (mod n). 4- Encore quatre propositions Proposition 1 : (découle des définitions) x = y x y [n]. Proposition 2 : L ensemble Z/n Z est fini, de cardinal n. Plus précisément Z/n Z = { 0, 1,, n-1. Proposition 3 : On munit l ensemble Z/n Z d une addition et d une multiplication en posant a + b = a+b et a b= ab. Muni de ces deux opérations Z/n Z est un anneau commutatif unitaire. Proposition 4 : Pour tout n N, Z/n Z est un corps commutatif si et seulement si n est un nombre premier. 4
5 b) Le groupe (Z/n Z) et la fonction ϕ d Euler 1- Le groupe (Z/n Z) 1-1 Théorème L ensemble des éléments inversibles de l anneau Z/n Z muni de la multiplication est un groupe. On le note (Z/n Z). 1-2 Théorème soit a Z/n z, a est inversible si et seulement si PGCD(a,n)=1. 2- La fonction ϕ d Euler 2-1 Définition Soit n N, on appelle ϕ(n) le nombre d entiers strictement positifs inférieurs à n et premiers avec n. C est donc le cardinal de l ensemble des éléments inversibles de l anneau Z/n Z. 2-2 Théorème d Euler Si PGCD(a,n)=1 alors a ϕ(n) 1 (mod n). Preuve : Il suffit d appliquer le théorème de Lagrange : «soit G un groupe fini de cardinal n, soit a G, on a a n =1». Si PGCD(a,n)=1, a (Z/n Z). Or par définition de ϕ, (Z/n Z) est de cardinal ϕ(n). Donc a ϕ(n) = 1. D où le résultat. 2-3 Théorème Si a et b sont premiers entre eux, ϕ(ab) = ϕ(a)ϕ(b). Preuve Cela résulte du théorème des restes chinois : «si q 1, q 2,,q r sont deux à deux premiers entre-eux, le système de congruences x a 1 (mod q 1 ) x a 2 (mod q 2 ) : x a r (mod q r ) est équivalent à une unique congruence x a (mod q 1 q 2 q r ). Théorème des restes chinois (version 2) Si a et b sont premiers entre-eux, les anneaux Z/ab Z et Z/a Z Z/b Z sont isomorphes.» Donc, ici, c est cette dernière version qui nous intéresse. 2-4 Trois propriétés de l indicatrice d Euler Propriété 1 : Si n est premier alors ϕ(n)= n 1. Propriété 2 : Si n= p 1 α1 p r αr alors ϕ(n)= p 1 α1 1 (p 1 1) p r αr 1 (p r 1) Propriété 3 : (résulte de la propriété 2) ϕ (n) = n * Π (1 1/p) p n 5
6 2-5 Théorème : Pour tout entier naturel n supérieur ou égal à 1, Σ ϕ (d) = n d n, d > 0 Preuve Posons ϕ d (n) = # { x (Z/n Z) PGCD(x, n)=d. On a ϕ d (n) = n. d n Or, pour tout diviseur d de n ϕ d (n) = ϕ (n/d) car ϕ (n/d) est le nombre d entiers a dans l ensemble {1,,n/d avec PGCD(a, n/d)=1, soit le nombre d entiers b dans {1,,n avec PGCD(b, n)= d. Donc ϕ d (n) = ϕ (n/d) = ϕ (d) = n. d n d n d n c) Le groupe multiplicatif cyclique (Z/p Z) 1- Définition Un groupe G est dit cyclique s il existe a G tel que G=<a> c est à-dire le sous groupe engendré par l élément a. On dit que a est un générateur. 2- Théorème Soit G un groupe multiplicatif cyclique d ordre n et g un générateur de G. Les autres générateurs sont les g t, avec t premier avec n. Plus généralement, soit g un élément d ordre n d un groupe G.Pour tout entier e, l ordre de g e est n/pgcd(n, e). Preuve : On va d abord commencer par montrer le deuxième point. Soit d le PGCD de n et e. Notons n=n d et e= e d avec n et e des entiers. L ordre de g e est le plus petit entier naturel non nul k tel que (g e ) k =1, par conséquent n e k. Donc n e k (*). Puisque PGCD(n, e )=1, (*) est satisfaite si et seulement si k est un multiple de n = n d = n PGCD(n, e). On vient donc de montrer que l ordre de g e est n/pgcd(n, e). Si g e est un générateur, son ordre est n. Par conséquent, PGCD(n, e)=1. D où la preuve du premier point. Corollaire : Le nombre de générateurs d un groupe cyclique de cardinal n est ϕ (n). Petit théorème de Fermat Si p est premier et a n est pas divisible par p alors a p 1 1 [ p]. Preuve : Immédiat par le théorème d Euler et la propriété 1 de la fonction ϕ d Euler. 6
7 Remarque sur ce théorème : Ce théorème fournit une condition nécessaire de primalité. Soit n un entier, si a n 1 et 1 ne sont pas congrus modulo n, avec (a,n) = 1, alors on est sûr que n n est pas premier. Cependant si a n 1 et 1 sont congrus modulo n, n n est pas forcément premier. En effet il existe des nombres appelés nombres de Carmichael qui vérifient le petit théorème de Fermat sans être premiers et il y en a une infinité. Définition : Soit n un nombre composé impair. Si a n est pas divisible par n et satisfait a n 1 1 [ n], on dit que n est pseudo premier pour la base a. Si de plus n est pseudo-premier pour tous les entiers a tels que PGCD(a, n)=1, on dit que n est un nombre de Carmichael. Exemple : Le plus petit nombre de Carmichael est 561=3*11*17. Pour se convaincre que a [ 561], il suffit de montrer que a 561 a est multiple de 3, 11 et 17 et conclure par le théorème des restes chinois car 3, 11 et 17 sont deux à deux premiers entre-eux. Théorème : Si p est premier, le groupe multiplicatif (Z/p Z) est cyclique. Preuve : Si p est premier l anneau (Z/p Z, +,*) est un corps commutatif. Donc le polynôme X d 1 possède au plus d racines dans Z/p Z. Soit x (Z/p Z) et d son ordre. Donc x d =1 et puisque x p-1 =1 par le petit théorème de Fermat, on a x p-1-qd =1 pour tout entier q et d doit donc être un diviseur de p-1. Les d éléments 1,x,x²,, x d-1 de (Z/p Z) sont distincts et constituent un sous-groupe de (Z/p Z) et sont tous des racines du polynôme X d 1. Vu que ce polynôme possède au plus d racines, on en déduit que tout élément d ordre d de (Z/p Z) fait partie du sous groupe engendré par x. Or ce sous-groupe contient exactement ϕ (d) éléments d ordre d. Si l on note G d l ensemble des éléments de (Z/p Z) d ordre d, on vient de montrer que # G d = 0 ou # G d =ϕ (d). Ecrivons que (Z/p Z) se partitionne en la réunion des G d, on obtient p-1 = # G d. d (p-1) Par le théorème 2-5, # G d =ϕ (d) pour tous les diviseurs d de p-1. Conclusion : # G (p-1) =ϕ (p-1) 0 ce qui prouve l existence d un générateur (parfois appelé élément primitif). Le théorème qui précède est très important (car les protocoles utilisés ici sont implémentés dans le groupe cyclique (Z/p Z) ). Comme il est possible d implémenter les protocoles à base de logarithme discret dans un autre groupe cyclique différent de (Z/p Z), je vais énoncer un théorème dû à Gauss. Cependant, dans ces groupes, le problème du logarithme discret doit être difficile à résoudre en temps raisonnable. 7
8 Théorème de Gauss : Le groupe multiplicatif (Z/n Z) est cyclique si et seulement si n est de la forme 2, 4, p k, 2p k où p est un nombre premier impair. d) L exponentiation rapide et modulaire L exponentiation rapide Il s agit de calculer a b sans utiliser la méthode naïve a*a*a*a *a. Voici donc un algorithme très efficace permettant de calculer a b avec a un nombre entier et b un grand nombre entier. Procédure : si b=0, je retourne 1 Si b=1, je retourne a Si b est pair, je calcule (a k ) 2 Si b> 2 et impair, je calcule a*(a k ) 2 Et si k> 1, on recommence. Implémentation de l algorithme en Scheme : (define exp_rap;-> nombre (lambda(x n); x et n des nombres (cond ((= n 0) 1) ; si n=0, je retourne 1 ((= n 1) x) ; si n=1, je retourne x ((even? n) (exp_rap (sqr x) (/ n 2))) ; si n est pair, je calcule (x²)^n/2 (else (* x (exp_rap (sqr x) (/ (- n 1) 2))))))) ; sinon, ; j'appelle la fonction avec les arguments x² et (n-1)/2 et je multiplie le resultat par x. ;(exp_rap 2 3);->8 ;(exp_rap 2 0);->1 ;(exp_rap 2 160);- > L exponentiation modulaire C est tout simplement l exponentiation rapide avec modulo c est-à-dire calculer a b mod n. 8
9 (define exp_mod; -> nombre (lambda(a b n); a, b et n des nombres (cond ((= b 0) 1) ((= b 1) (modulo a n)) ((even? b) (exp_mod (sqr a) (/ b 2) n)) ; si n est pair (else (modulo(* a (exp_mod (sqr a) (/ (- b 1) 2) n)) n))))) ; ; si n>2 et impair ;(exp_mod 2 4 5);->1 ;(exp_mod );->28 ;(exp_mod );->4 Voici un autre programme pour calculer l exponentiation modulaire écrit en C++. 9
10 #include<iostream> using namespace std; int exp_mod(int a, int b, int n) { int res=1; while(b > 0) { if(b % 2!=0) res=res*a % n; a=a*a % n; b=b/2; return res; int main(void) { int a, b, n, res; cout<<"-----l'exponentiation modulaire-----"<<endl; cout<<"-----ce programme calcule a^b mod n-----"<<endl; cout<<"tapez a :"<<endl; cin>> a; cout<<"tapez b :(l'exposant)"<<endl; cin>> b; cout<<"tapez n : "<<endl; cin>> n; cout<<"res="<<exp_mod(a,b, n)<<endl; system ("pause"); return 0; 10
11 III Le problème du logarithme discret, le protocole de Diffie-Hellmann et le système El Gamal 1- Le problème du logarithme discret Définition : Soit p premier, g un générateur du groupe (Z/p Z) c est-à-dire (Z/p Z) = {g 0, g 1,,g p 2. Si a (Z/p Z), le logarithme discret de a en base g est l unique entier α tel que α {0,1,,p 2 et a= g α. Le problème du logarithme discret consiste à trouvé α et c est un problème réputé difficile. 2- Le protocole d échange de clés de Diffie-Hellmann Alice et Bob veulent se mettre d accord sur une clé secrète commune (qui leur servira, par exemple, pour un système de chiffrement traditionnel) et ne disposent que d un canal de communication non sûr c est-à-dire non protégé. Pour cela, ils se mettent d accord (sur le canal) sur un grand nombre premier p et un entier g (avec 2 g p-2) générateur du groupe (Z/p Z) dont l ordre est suffisamment élevé (c est-à-dire p-1). Alice choisit un entier a {0,1,,p-2 au hasard, calcule A=g a mod p et envoie A à Bob en gardant secret a. De même, Bob choisit un entier b {0,1,,p-2 au hasard, calcule B=g b mod p et envoie B à Alice en gardant secret b. Leur clé sécrète commune est g ab mod p. Alice accède à la clé en calculant B a mod p et Bob accède à la clé en calculant A b mod p. Remarque : On pense que retrouver g ab (en temps raisonnable) est presque impossible sauf si l on est capable de résoudre le problème du logarithme discret. 3- Le système El Gamal On prendra Alice comme destinataire du message et Bob l expéditeur. On notera (Z/p Z) l espace des messages en clair et (Z/p Z) (Z/p Z) l espace des chiffrés. a) Fabrication de la clé publique Alice choisit un grand nombre premier p, un générateur g mod p et un entier a {0,1,,p-2 aléatoirement comme dans le protocole de Diffie-Hellman. Elle calcule A= g a mod p. Sa clé sécrète est a et sa clé publique (p, g, A). Si Bob souhaite envoyé un message en clair m à Alice, il doit donc disposer d un moyen de connaître la clé publique d Alice. 11
12 b) Chiffrement Bob souhaite chiffrer un message en clair m {0,1,,p-1. Il se procure la clé publique d Alice et choisit un entier b {0,1,,p-2 au hasard puis il calcule : B= g b mod p et C=A b m mod p. En fin il envoie (B,C) à Alice. Remarque : le message m est multiplié par la clé de Diffie-Hellman. c) Déchiffrement Alice reçoit le couple (B,C) et retrouve le message m en calculant B p-1-a C modp. Vérification: B p-1-a C g b(p-1-a) A b m (g p-1 ) b (g a ) -b A b m A- b A b m m mod p Un petit exemple: Alice choisit p= 31, g= 7. Puis elle choisit aléatoirement sa clé sécrète a = 7 et elle calcule A= g a mod p = 28. Donc sa clé publique est (p=31, g=7, A=28). Bob veut chiffrer m=18. Il choisit aléatoirement b=11 et calcule B=g b mod p = 20 et C=A b m mod p = 14 puis il envoie (B,C)=(20,14) à Alice. Alice retrouve m en calculant B p-1-a C mod p= 18. d) Signature Il s agit de résoudre le problème lié à l authenticité du message c est-à-dire prouver au destinataire que le message a été envoyé par le vrai expéditeur et non par quelqu un d autre. Maintenant Bob souhaite signer son message. Pour cela, il choisit sa clé sécrète (un entier s modulo un grand nombre premier p) et calcule sa clé publique (p, g, P) avec P=g s mod p. Il choisit encore au hasard un entier k premier avec p-1 et calcule : - u= g k mod p - l unique solution v de l équation m= us + kv mod (p-1) (*) Remarque : En exponentiant (*), on obtient : g m = P u u v mod p (**) Pour finir, Bob signe son message m par (u, v). Comme Alice a déjà le message m et que la clé (p, g, P) de Bob est publique, il suffit qu elle calcule et compare les deux termes de l égalité (**). Si les deux termes sont égaux, alors Bob est celui qu il prétend être. On voit que personne ne peut signer à la place de Bob sans connaître le secret s. L efficacité de la signature d El Gamal repose donc sur le problème du logarithme discret. Exemple : Bob souhaite maintenant signer le message m=18. Il choisit un nombre premier p=37, un générateur g=5 et sa clé secrète s=11. Il calcule P=g s mod p=2. Donc sa clé publique est (p=37, g=5, P=2). Il choisit une deuxième fois un entier k=17 au hasard mais avec PGCD(k, p-1)=1 et calcule u= g k mod p=22.enfin il calcule l unique solution v de l équation 12
13 -224 = 17v mod 36. Soit 8=17(-v) mod 36. Or l inverse de 17 modulo 36 est 17. Donc v=8*17 mod 36=28, soit v=8 mod 36. Bob signe donc son message par (u=22,v=8). Alice veut vérifier cette signature. Elle calcule g m mod p = 36 et P u u v mod p=36. Comme les deux termes sont égaux, elle est sûre que c est bien Bob qui a signé le message. e) Certificat Quand Bob souhaite transmettre un message à Alice, il doit être sûr que la clé publique qu il utilise appartient à Alice et réciproquement. Il ne suffit pas qu Alice ou Bob garde leur clé secrète. En effet, si un attaquant, Oscar, est capable de remplacer la clé publique d Alice, il pourra non seulement déchiffrer les messages secrets envoyés à Alice mais aussi signer des documents au nom d Alice. Pour résoudre donc ce problème, ils doivent utiliser une institution de confiance. Si Alice utilise un système à clés publiques, elle doit être enregistrée par l autorité de certification du système. Alice communique son nom et certaines informations utiles à l autorité de certification et celle-ci vérifie ces informations avant de générer et signer un certificat établissant une connexion vérifiable entre Alice et ses clés publiques. Le certificat doit contenir au moins les informations suivantes : - Le nom d utilisateur ou le pseudonyme d Alice ; - Ses clés publiques ; - Les noms des algorithmes dans lesquels ces clés sont utilisés. - Le nom de l autorité de confiance ; - Le numéro de série du certificat, les dates de début et de fin de validité du certificat. Ce certificat est ensuite stocké dans un annuaire dans lequel seul l autorité de confiance a droit d écrire. Bien sûr tous les utilisateurs de l autorité de confiance peuvent lire les informations de cet annuaire. D ailleurs cette institution de confiance peut même fabriquer les clés privées et publiques pour Alice et les autres utilisateurs surtout s ils utilisent le système RSA car on a besoin de grands nombres premiers aléatoires pour les clés RSA et il n est pas facile de trouver ces nombres. Si on fait l analogie entre un certificat et un passeport, dans ce cas c est la préfecture qui sera l institution de confiance. 13
14 4- Aspect programmation Voici 3 programmes écrits en C++. Le premier calcul la clé publique du système El Gamal, le deuxième fait le chiffrement et le dernier le déchiffrement. #include<iostream> using namespace std; int exp_mod(int g, int e, int p) { int res=1; while(e > 0) { if(e % 2!=0) res=res*g % p; g=g*g % p; e=e/2; return res; int main(void) { int g, e, p, A; cout<<"-----le systeme d'el Gamal-----"<<endl; cout<<"-----ce programme calcule la cle publique-----"<<endl; cout<<"tapez g :(le generateur)"<<endl; cin>> g; cout<<"tapez e :(la cle secrete)"<<endl; cin>> e; cout<<"tapez p : (p est un nombre premier)"<<endl; cin>> p; cout<<"la cle publique " ; cout<<"(p, g,a)="<<"("<<p<<","<<g<<","<<exp_mod(g,e,p)<<")"<<endl; system ("pause"); return 0; 14
15 #include<iostream> using namespace std; int exp_mod(int g, int e, int p) { int res=1; while(e > 0) { if(e % 2!=0) res=res*g % p; g=g*g % p; e=e/2; return res; int main(void) { int g,b,p,a,m; cout<<"-----le systeme d'el Gamal-----"<<endl; cout<<"-----ce programme chiffre un message en clair-----"<<endl; cout<<"tapez g :(le generateur)"<<endl; cin>> g; cout<<"tapez b : (un entier choisit aleatoirement)"<<endl; cin>>b; cout<<"tapez p : (p est un nombre premier)"<<endl; cin>> p; cout<<"tapez A : (la valeur trouvee dans la cle publique"<<endl; cin>> A; cout<<"b="<<g<<"^"<<b<<"mod"<<p<<"="<<exp_mod(g, b, p)<<endl; cout<<"le message a chiffrer est m="; cin>>m; cout<<"c="<<a<<"^"<<b<<"*"<<m<<"mod"<<p<<"="<<m*exp_mod(a,b,p)%p<<endl; cout<<"le cryptogramme est (B,C)="; cout<<"("<<exp_mod(g,b,p)<<","<<m*exp_mod(a,b,p)%p<<")"<<endl; system ("pause"); return 0; 15
16 #include<iostream> using namespace std; int exp_mod(int g, int e, int p) { int res=1; while(e > 0) { if(e % 2!=0) res=res*g % p; g=g*g % p; e=e/2; return res; int main(void) { int B,C,e,p; cout<<"-----le systeme d'el Gamal-----"<<endl; cout<<"-----ce programme dechiffre un message code-----"<<endl; cout<<"tapez B :"<<endl; cin>> B; cout<<"tapez C : "<<endl; cin>> C; cout<<"tapez p : (p est un nombre premier)"<<endl; cin>> p; cout<<"tapez e :(la cle secrete)"<<endl; cin>> e; cout<<"le message en clair est :"; cout<<"b^("<<p<<"-1-"<<e<<")"<<"c mod"<<p<<"="<<c*exp_mod(b,p-1-e,p)%p; system("pause"); return 0; 16
17 IV Calculs de logarithmes discrets Rappel : soit g un générateur de (Z/p Z), y (Z/p Z). On cherche x {0,1,,p 2 tel que y= g x mod p. Au lieu de calculer le logarithme discret par la méthode naïve qui consiste à calculer successivement g, g 2, g 3, jusqu à obtenir y=g x, on va voir dans cette partie des algorithmes parfois efficaces pour calculer le logarithme discret. a) Les attaques 1- L algorithme pas de bébé/pas de géant Principe de la méthode : i. On pose m= (p-1) ii. On écrit x sous la forme x=mq+ r avec 0 r < m. Puisque m (p-1) et x < p-1, il est clair que q (p-1). Rechercher x tel que y= g x, revient donc à rechercher q et r vérifiant 0 r< m, 0 q (p-1) et g qm+r y mod p ou encore 0 r< m, 0 q (p-1) et (g m ) q y g -r mod p iii. On calcule d abord (les pas de bébé) l ensemble B={ (y g -r mod p, r) : 0 r< m Si nous trouvons dans cet ensemble, un couple (1,r), alors y g -r = 1 mod p. Donc y = g r mod p et x = r car 0 r< m. Sinon, on calcule les pas de géant. On calcule δ = g m mod p, et pour q=0,1,,m-1, on calcule δ k jusqu à ce qu on obtienne q tel que : δ q g q m y g -r (mod p). Exemple: Soit p= 1009, déterminons le logarithme discret de 8 dans la base 5. On veut x tel que 8= 5 x mod On a m = 1008 =32. On calcule les pas de bébé : B= { ( 8* 5 r mod 1009, r) : 0 r< 32 = { (8,0), (607,1), (525, 2), (105,3), (21, 4), (206,5), (243,6), (654,7), (938,8), (793,9), (764,10), (960,11), (192,12), (442,13), (492,14), (502,15), (504,16),(908,17), (787,18), (561,19), (314,20), (870,21), (174,22), (842,23), (572,24), (518,25), (709,26), (949,27), (997,28), (603, 29), (726,30), (347,31) δ = 5 32 mod 1009 =
18 On calcule donc les pas de géant G = { (256 q mod 1009, q) : 0 q 31 G = { (1, 0), (256, 1), (960,2) Le couple (960,11) figure parmi les pas de bébé et (960,2) figure parmi les pas de géant. Or x = 32*2+11=75 {0,1,,1007. Par conséquent x=75 est le logarithme discret de 8 dans la base 5. Pour résoudre ce problème, il a fallu 32 opérations pour calculer les pas de bébé, 3 opérations pour calculer les pas de géant et 32 éléments à stocker. Cet algorithme demande O( p) multiplications et comparaisons et nécessite le stockage de O( p) éléments. Il faudra donc noter que si p -1> 2 160, le calcul du log discret avec cet algorithme devient impossible. 2- La méthode ρ de Pollard L algorithme ρ de Pollard est un algorithme probabiliste de complexité O( p) en temps (par le paradoxe des anniversaires) et O(1) en espace. Le paradoxe des anniversaires : En effectuant k tirages successifs avec remise dans un ensemble à n éléments, la probabilité d avoir choisi deux fois un même élément est supérieure à ½ pour k (1+ ( 1+8nln(2)))/2. Si A est l événement : «tous les éléments choisis sont distincts», on a : k-1 P(A) = n(n-1) (n-(k-1)) = Π (1 - i/n) n k i=1 k-1 k-1 Or x R, ( 1+ x) e x. Donc P(A) Π e i/n e ( - Σ i/n ) e( - k(k-1) ). i=1 i=1 2n Finalement, P(A) ½ si k² -k-2nln(2) 0. Donc pour k (1+ ( 1+8nln(2)))/2, la probabilité d avoir choisi deux fois un même élément est supérieur à ½ car le contraire de l événement «tous les éléments choisis sont distincts» est l événement «au moins deux éléments choisis soient identiques». Rappel : On cherche toujours x {0,1,,p 2 tel que y= g x mod p. Principe de la méthode : On partitionne (Z/p Z) en G 1, G 2, G 3 ( (Z/p Z) = en G 1 G 2 G 3 ) et on définit la fonction f : (Z/p Z) (Z/p Z) par g z si z G 1, f(z)= z² si z G 2 yz si z G 3 18
19 On construit une suite récurrente d éléments : z i+1 = f(z i ) avec z 0 un élément défini par le tirage aléatoire d un nombre a 0 {1,,p 1. On exprime alors les termes de cette suite comme : z i = g a i y b i pour i 1 avec et a i + 1 mod ϕ (p) si z i G 1 a i + 1 = 2a i mod ϕ (p) si z i G 2 a i mod ϕ (p) si z i G 3 b i si z i G 1 b i + 1 = 2b i mod ϕ (p) si z i G 2 b i + 1 mod ϕ (p) si z i G 3 et avec comme valeur initiale pour a 0 la valeur aléatoire choisie initialement et pour b 0 =0. Comme nous travaillons dans un groupe fini, la suite (z i ) i 0 sera périodique de période T à partir d un certain rang. Par conséquent, il existe s et T tels que z s+t = z s (s est le plus petit indice pour lequel l égalité est vérifiée. Finalement on obtient la relation : a i - a i +T x(b i +T - b i ) mod ϕ (p). Si (b i +T - b i ) est inversible modulo ϕ (p) l équation n a qu une solution et cette solution c est le logarithme discret. Sinon, il y a plusieurs solutions et si elles sont nombreuses, on peut les tester successivement, sinon on recommence l algorithme avec une autre valeur initiale a 0. b) Les faiblesses du logarithme discret La méthode de Pohlig-Hellmann C est aussi une méthode qui permet de calculer le logarithme discret et elle n est efficace que si p-1 n a que de petits facteurs premiers. Principe de la méthode : Soit p un nombre premier, g un générateur du groupe multiplicatif cyclique (Z/p Z). Soit p-1 = p λ1 1 p λ2 λk 2 p k la décomposition en facteurs premiers du cardinal de (Z/p Z). On cherche x {0,1,,p 2 tel que y= g x mod p. On pose g i = g n i et y i = y n i avec n i = (p-1). λ i p i On remarque que g i engendre un groupe G i d ordre p i λ i et que y i = g i x i. 19
20 Pour déterminer x, on calcule d abord y i, g i et x i (logarithme discret de y i dans la base g i ) puis on cherche le logarithme discret x à l aide du théorème des restes chinois c est-à-dire on cherche l unique solution x {0,1,,p 2 des congruences simultanées x x i mod (p i λ i ). Remarque : l algorithme pas de bébé/pas de géant utilise O( (p i λ i )) opérations pour calculer x i. Réduction à un ordre premier Le calcul du logarithme discret dans les groupes cycliques dont l ordre est une puissance d un nombre premier peut se ramener au calcul du logarithme discret dans des sous-groupes d ordre premier. Soit G un groupe cyclique d ordre p e, p premier et e un entier positif. On veut résoudre a= b k. On pose k = k 0 + k 1 p + + k e-1 p e-1 avec 0 k i p et 0 i e-1. On peut voir que chaque coefficient k i est un logarithme discret dans un groupe d ordre p c est à-dire b m k n i = a i avec m= p e-1 et n= p e-i-1. V Conclusion La sécurité du système El Gamal repose sur la difficulté de résoudre le problème du logarithme discret dans le groupe cyclique (Z/p Z). Cependant il faudra faire attention en ce qui concerne le choix du nombre premier p car si le cardinal de (Z/p Z) admet des petits facteurs premiers, un attaquant, Oscar, pourra retrouver le logarithme discret en utilisant notamment l algorithme de Pohlig-Hellman. Toute personne capable de résoudre le problème de logarithme discret pourra facilement casser le cryptosystème d El Gamal mais à l inverse être capable de casser le cryptosystème d El Gamal ne veut pas dire pouvoir résoudre le problème du logarithme discret. Même si dans le système d'el Gamal le message chiffré est deux fois plus long que le message original, notons que le fait d utiliser un paramètre aléatoire k est un plus en termes de sécurité car le même message m chiffré à deux moments différents donnera deux messages chiffrés différents. 20
21 VI - Les références bibliographiques [1] DELEGLISE, Marc. Cours de Calcul formel et Cryptographie (Chapitre 1). Licence d informatique. Université Lyon1- Ecole Normale Supérieure de Lyon. [2] ZEMOR, Gilles. Cours de cryptographie. Paris : Cassini, p. [3] BUCHMANN, Johannes. Introduction à la cryptographie. Paris : Dunod, p. [4] MARTIN, Bruno. Codage, cryptologie et applications. Lausanne : Presses polytechniques et universitaires romandes, p. [5] DELAHAYE, Jean Paul. Merveilleux nombres premiers voyage au cœur de l arithmétique. Paris : Belin, p. [6] Wikipédia - Nombre de Carmichael. Disponible sur < (Consulté le 15 Avril 2007). 21
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étailExercices - 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étailCryptographie. Cours 3/8 - Chiffrement asymétrique
Cryptographie Cours 3/8 - Chiffrement asymétrique Plan du cours Différents types de cryptographie Cryptographie à clé publique Motivation Applications, caractéristiques Exemples: ElGamal, RSA Faiblesses,
Plus en détailChapitre 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étailQuelques 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étailTests 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étailFonction de hachage et signatures électroniques
Université de Limoges, XLIM-DMI, 123, Av. Albert Thomas 87060 Limoges Cedex France 05.55.45.73.10 pierre-louis.cayrel@xlim.fr Licence professionnelle Administrateur de Réseaux et de Bases de Données IUT
Plus en détailProblèmes arithmétiques issus de la cryptographie reposant sur les réseaux
Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux Damien Stehlé LIP CNRS/ENSL/INRIA/UCBL/U. Lyon Perpignan, Février 2011 Damien Stehlé Problèmes arithmétiques issus de la cryptographie
Plus en détailCryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI
Cryptologie Algorithmes à clé publique Jean-Marc Robert Génie logiciel et des TI Plan de la présentation Introduction Cryptographie à clé publique Les principes essentiels La signature électronique Infrastructures
Plus en détailNombres 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étailCalcul 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étailIntroduction à 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étail1 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étailDe 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É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étailCryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1
Cryptographie RSA Introduction Opérations Attaques Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1 Introduction Historique: Rivest Shamir Adleman ou RSA est un algorithme asymétrique de cryptographie à clé
Plus en détailLe 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étailINF 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étail108y= 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étailStructures 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étailCRYPTOGRAPHIE. Signature électronique. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie
CRYPTOGRAPHIE Signature électronique E. Bresson SGDN/DCSSI Laboratoire de cryptographie Emmanuel.Bresson@sgdn.gouv.fr I. SIGNATURE ÉLECTRONIQUE I.1. GÉNÉRALITÉS Organisation de la section «GÉNÉRALITÉS»
Plus en détailProbabilité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étailExercices 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étailGroupe 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étailProgrammation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
Plus en détailLicence 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étailTriangle de Pascal dans Z/pZ avec p premier
Triangle de Pascal dans Z/pZ avec p premier Vincent Lefèvre (Lycée P. de Fermat, Toulouse) 1990, 1991 1 Introduction Nous allons étudier des propriétés du triangle de Pascal dans Z/pZ, p étant un nombre
Plus en détailCours 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étailArithmé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étailCours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
Plus en détailSommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références
Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références 2 http://securit.free.fr Introduction aux concepts de PKI Page 1/20
Plus en détailAlgorithmes 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étailRappels 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étailRaisonnement 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étailLa NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.
La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of
Plus en détailExercices - Fonctions de plusieurs variables : corrigé. Pour commencer
Pour commencer Exercice 1 - Ensembles de définition - Première année - 1. Le logarithme est défini si x + y > 0. On trouve donc le demi-plan supérieur délimité par la droite d équation x + y = 0.. 1 xy
Plus en détailCryptographie. Master de cryptographie Architectures PKI. 23 mars 2015. Université Rennes 1
Cryptographie Master de cryptographie Architectures PKI 23 mars 2015 Université Rennes 1 Master Crypto (2014-2015) Cryptographie 23 mars 2015 1 / 17 Cadre Principe de Kercho : "La sécurité d'un système
Plus en détailProposition. Si G est un groupe simple d ordre 60 alors G est isomorphe à A 5.
DÉVELOPPEMENT 32 A 5 EST LE SEUL GROUPE SIMPLE D ORDRE 60 Proposition. Si G est un groupe simple d ordre 60 alors G est isomorphe à A 5. Démonstration. On considère un groupe G d ordre 60 = 2 2 3 5 et
Plus en détailPanorama de la cryptographie des courbes elliptiques
Panorama de la cryptographie des courbes elliptiques Damien Robert 09/02/2012 (Conseil régional de Lorraine) La cryptographie, qu est-ce que c est? Définition La cryptographie est la science des messages
Plus en détailRepré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étailCorrection du baccalauréat S Liban juin 2007
Correction du baccalauréat S Liban juin 07 Exercice. a. Signe de lnx lnx) : on fait un tableau de signes : x 0 e + ln x 0 + + lnx + + 0 lnx lnx) 0 + 0 b. On afx) gx) lnx lnx) lnx lnx). On déduit du tableau
Plus en détailCalculateur quantique: factorisation des entiers
Calculateur quantique: factorisation des entiers Plan Introduction Difficulté de la factorisation des entiers Cryptographie et la factorisation Exemple RSA L'informatique quantique L'algorithme quantique
Plus en détailFactorisation 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étailRé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étailGestion des Clés. Pr Belkhir Abdelkader. 10/04/2013 Pr BELKHIR Abdelkader
Gestion des Clés Pr Belkhir Abdelkader Gestion des clés cryptographiques 1. La génération des clés: attention aux clés faibles,... et veiller à utiliser des générateurs fiables 2. Le transfert de la clé:
Plus en détail* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours
Exo7 Continuité (étude globale). Diverses fonctions Exercices de Jean-Louis Rouget. Retrouver aussi cette fiche sur www.maths-france.fr * très facile ** facile *** difficulté moyenne **** difficile *****
Plus en détailFONDEMENTS 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étailProbabilité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étail1 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étail1/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étail1.6- Génération de nombres aléatoires
1.6- Génération de nombres aléatoires 1- Le générateur aléatoire disponible en C++ 2 Création d'un générateur aléatoire uniforme sur un intervalle 3- Génération de valeurs aléatoires selon une loi normale
Plus en détailImage d un intervalle par une fonction continue
DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction
Plus en détailPour 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étailSimulation 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étailUEO11 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étailInitiation à 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étailCapacité d un canal Second Théorème de Shannon. Théorie de l information 1/34
Capacité d un canal Second Théorème de Shannon Théorie de l information 1/34 Plan du cours 1. Canaux discrets sans mémoire, exemples ; 2. Capacité ; 3. Canaux symétriques ; 4. Codage de canal ; 5. Second
Plus en détailDé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étailExtrait 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étailTexte Agrégation limitée par diffusion interne
Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse
Plus en détailUniversité Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications
Université Paris-Dauphine DUMI2E 1ère année, 2009-2010 Applications 1 Introduction Une fonction f (plus précisément, une fonction réelle d une variable réelle) est une règle qui associe à tout réel x au
Plus en détailSouad 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étailCours 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étailLa maison Ecole d ' Amortissement d un emprunt Classe de terminale ES. Ce qui est demandé. Les étapes du travail
La maison Ecole d ' Amortissement d un emprunt Classe de terminale ES Suites géométriques, fonction exponentielle Copyright c 2004 J.- M. Boucart GNU Free Documentation Licence L objectif de cet exercice
Plus en détailCours 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étailComparaison de fonctions Développements limités. Chapitre 10
PCSI - 4/5 www.ericreynaud.fr Chapitre Points importants 3 Questions de cours 6 Eercices corrigés Plan du cours 4 Eercices types 7 Devoir maison 5 Eercices Chap Et s il ne fallait retenir que si points?
Plus en détailProbabilité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étailCoefficients binomiaux
Probabilités L2 Exercices Chapitre 2 Coefficients binomiaux 1 ( ) On appelle chemin une suite de segments de longueur 1, dirigés soit vers le haut, soit vers la droite 1 Dénombrer tous les chemins allant
Plus en détailLa cryptographie du futur
La cryptographie du futur Abderrahmane Nitaj Laboratoire de Mathématiques Nicolas Oresme Université de Caen, France nitaj@math.unicaen.fr http://www.math.unicaen.fr/~nitaj Résumé Sans nous rendre compte,
Plus en détailLicence 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étailRepré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étailFICHE 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* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable
Eo7 Fonctions de plusieurs variables Eercices de Jean-Louis Rouget Retrouver aussi cette fiche sur wwwmaths-francefr * très facile ** facile *** difficulté moenne **** difficile ***** très difficile I
Plus en détailCours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
Plus en détailObjets 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étailProblème 1 : applications du plan affine
Problème 1 : applications du plan affine Notations On désigne par GL 2 (R) l ensemble des matrices 2 2 inversibles à coefficients réels. Soit un plan affine P muni d un repère (O, I, J). Les coordonnées
Plus en détailExercices - Nombres complexes : corrigé. Formes algébriques et trigonométriques, module et argument
Formes algébriques et trigonométriques, module et argument Exercice - - L/Math Sup - On multiplie le dénominateur par sa quantité conjuguée, et on obtient : Z = 4 i 3 + i 3 i 3 = 4 i 3 + 3 = + i 3. Pour
Plus en détail315 et 495 sont dans la table de 5. 5 est un diviseur commun. Leur PGCD n est pas 1. Il ne sont pas premiers entre eux
Exercice 1 : (3 points) Un sac contient 10 boules rouges, 6 boules noires et 4 boules jaunes. Chacune des boules a la même probabilité d'être tirée. On tire une boule au hasard. 1. Calculer la probabilité
Plus en détailCalcul fonctionnel holomorphe dans les algèbres de Banach
Chapitre 7 Calcul fonctionnel holomorphe dans les algèbres de Banach L objet de ce chapitre est de définir un calcul fonctionnel holomorphe qui prolonge le calcul fonctionnel polynômial et qui respecte
Plus en détailContinuité et dérivabilité d une fonction
DERNIÈRE IMPRESSIN LE 7 novembre 014 à 10:3 Continuité et dérivabilité d une fonction Table des matières 1 Continuité d une fonction 1.1 Limite finie en un point.......................... 1. Continuité
Plus en détailavec 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étailChapitre 1 : Évolution COURS
Chapitre 1 : Évolution COURS OBJECTIFS DU CHAPITRE Savoir déterminer le taux d évolution, le coefficient multiplicateur et l indice en base d une évolution. Connaître les liens entre ces notions et savoir
Plus en détailI - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES
I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES Théorème - Définition Soit un cercle (O,R) et un point. Une droite passant par coupe le cercle en deux points A et
Plus en détailCarl-Louis-Ferdinand von Lindemann (1852-1939)
Par Boris Gourévitch "L'univers de Pi" http://go.to/pi314 sai1042@ensai.fr Alors ça, c'est fort... Tranches de vie Autour de Carl-Louis-Ferdinand von Lindemann (1852-1939) est transcendant!!! Carl Louis
Plus en détailNOMBRES COMPLEXES. Exercice 1 :
Exercice 1 : NOMBRES COMPLEXES On donne θ 0 un réel tel que : cos(θ 0 ) 5 et sin(θ 0 ) 1 5. Calculer le module et l'argument de chacun des nombres complexes suivants (en fonction de θ 0 ) : a i( )( )(1
Plus en détailCours 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étailRésolution d équations non linéaires
Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique
Plus en détailL ALGORITHMIQUE. Algorithme
L ALGORITHMIQUE Inspirée par l informatique, cette démarche permet de résoudre beaucoup de problèmes. Quelques algorithmes ont été vus en 3 ième et cette année, au cours de leçons, nous verrons quelques
Plus en détailIntroduction à la théorie des graphes. Solutions des exercices
CAHIERS DE LA CRM Introduction à la théorie des graphes Solutions des exercices Didier Müller CAHIER N O 6 COMMISSION ROMANDE DE MATHÉMATIQUE 1 Graphes non orientés Exercice 1 On obtient le graphe biparti
Plus en détailMATHÉ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étail6. Les différents types de démonstrations
LES DIFFÉRENTS TYPES DE DÉMONSTRATIONS 33 6. Les différents types de démonstrations 6.1. Un peu de logique En mathématiques, une démonstration est un raisonnement qui permet, à partir de certains axiomes,
Plus en détailExo7. 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étailMoments des variables aléatoires réelles
Chapter 6 Moments des variables aléatoires réelles Sommaire 6.1 Espérance des variables aléatoires réelles................................ 46 6.1.1 Définition et calcul........................................
Plus en détailCCP PSI - 2010 Mathématiques 1 : un corrigé
CCP PSI - 00 Mathématiques : un corrigé Première partie. Définition d une structure euclidienne sur R n [X]... B est clairement symétrique et linéaire par rapport à sa seconde variable. De plus B(P, P
Plus en détailUne 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étail3. 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étailGestion des Clés Publiques (PKI)
Chapitre 3 Gestion des Clés Publiques (PKI) L infrastructure de gestion de clés publiques (PKI : Public Key Infrastructure) représente l ensemble des moyens matériels et logiciels assurant la gestion des
Plus en détailLa 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étailLimites finies en un point
8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,
Plus en détailPolynô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