Chiffrement de Lester Hill

Slides:



Advertisements
Présentations similaires
Eléments d'algèbre linéaire
Advertisements

Les matrices.
VII) Formalisme Quantique
Unité #1 Analyse numérique matricielle Giansalvo EXIN Cirrincione.
2. Echantillonnage et interpolation des signaux vidéo
La spécialité mathématique en TS
Enseigner l’arithmétique en série L
Autour des nombres en première L(option) et en terminale L (spécialité) Marie-Françoise BOURDEAU Jeanne-Marie DUMAS.
I CRYPTOLOGIE traditionnelle Sommaire 1.Les fondements p. 9 2.Confusion & Diffusion p Cryptages composés p. 39.
Le codage Vigenère.
Nombre de chaînes de longueur r
Continuité Introduction Continuité Théorème des valeurs intermédiaires
Cryptographie Mener des Activités en classe
Enseignement de spécialité en S
Algorithmes sur les images dans Excel
Rappel... Sous-espaces de Rn: Définition;
ASI 3 Méthodes numériques pour l’ingénieur
Approche par les problèmes en TS spécialité maths
Sémantique axiomatique
Rappel... Opérations élémentaires sur les matrices:
1.2 COMPOSANTES DES VECTEURS
Le codage des nombres en informatique
Chapitre 3bis Applications linéaires et Matrices
Examen partiel #2 Mercredi le 15 novembre de 13h30 à 15h20
Division euclidienne - décimale
Rappel... Solution itérative de systèmes linéaires (suite et fin).
Les Algorithmes Cryptographiques Symétriques
EXEMPLE DE MESSAGE CRYPTE PUIS DECRYPTE avec la méthode RSA
La droite dans R2 Montage préparé par : André Ross
Espaces vectoriels Montage préparé par : S André Ross
Introduction aux matrices : exemples en dynamique de population
LES NOMBRES Articulation CM2-SIXIÈME
6.1 LE LANGAGE MATRICIEL Cours 16. Aujourdhui, nous allons voir La définition dune matrice Plusieurs définitions de matrice particulière La somme de matrices.
Présentation dans le cadre du congrès mathématique
Dénombrements.
Calcul des groupes d'homologie d’objets discrets
Transformations linéaires et sous-espaces associés
Cryptographie - 2.
ASI 3 Méthodes numériques pour l’ingénieur
Cours du 25 octobre Mardi le 24 octobre
Probabilités Série n°1.
Un peu de maths (et d’info)
Elaboré par M. NUTH Sothan 1. 2 Soit x, y et z des coordonnées cartésiennes à 3 dimension. G un ensemble de points dans le plan (u, v). Déf. : On appelle.
Solution connue à l’avance
La décomposition en valeurs singulières: un outil fort utile
Eléments d’arithmétique dans l’ensemble des naturels
Arithmétique Modulaire
ASI 3 Méthodes numériques pour l’ingénieur
ASI 3 Méthodes numériques pour l’ingénieur
Rappel... Valeurs propres et vecteurs propres. Définitions;
Arithmétique Classe 3e.
Le chiffrement asymétrique
Cours de mathématiques économiques
La spécialité mathématique en TS
Séquence FONCTION DE VARIABLE(S) REELLE(S) :
l’économie de Robinson et de vendredi
Algorithmes sur les images dans Excel
Le protocole d’authentification
L’endomorphisme le plus simple est l’ homothétie
TAI DE MATHEMATIQUE Michaël Gallego, Alexis Yvin, Bruno Gabriel Promo 2013 Janvier 2009.
STATISTIQUES – PROBABILITÉS
Pr BELKHIR Abdelkader USTHB
Mathématiques Discrètes Chapitre 2 (section 3)
Les fonctions de référence
Structure de groupe Def: un groupe est un ensemble (G,*) où
Réalisation d’un logiciel de Chiffrement RSA.
Soit n un nombre entier supérieur ou égal à 1.
La NUMERISATION de l’information
Pierre Joli Cours de Mathématique Pierre Joli
MATHÉMATIQUES L1 Second Semestre Armand Taranco. BIBLIOGRAPHIE Dupont : Algèbre pour les sciences économiques, Flash U, A. Colin. Bernard Guerrien, Isabelle.
Transcription de la présentation:

Chiffrement de Lester Hill Le chiffrement de Lester Hill est un crypto système conçu en 1929 pour résister aux analyses de fréquences. Principe Soit n et m deux entiers naturels supérieurs ou égaux à 2, et K une matrice carrée inversible de format (n, n) à coefficients dans Zm ( = Z/mZ). L’application qui, à toute matrice colonne X de format (n,1) et à coefficients dans Zm, associe la matrice Y = KX, définit un système de chiffrement symétrique (i.e. la même clé est utilisée pour crypter et décrypter l'information) ou à clef secrète.

Soit K une matrice appartenant à Mn(Zm). Propriété Soit K une matrice appartenant à Mn(Zm). K est inversible dans Mn(Zm) si, et seulement si, det(K) est inversible modulo m. Pour le professeur En effet : Si K est inversible dans Mn(Zm), il existe L  Mn(Zm) telle que KL = LK = In (modulo m). Alors det(KL)=det(LK) =1 (mod m) d’où det(K)  det(L) =1 (mod m), ce qui prouve que det(K) est inversible modulo m. Réciproquement : Supposons det(K) inversible modulo m. Il existe donc ℓ, entier naturel inférieur ou égal à m – 1, tel que det(K) ℓ =1 (mod m). Alors la matrice L = ℓ  t(com K) vérifie KL = LK = In (mod m), ce qui prouve que K est inversible dans Mn(Zm) .

Soit k un entier naturel. On note sa classe de congruence modulo m. Propriété Soit k un entier naturel. On note sa classe de congruence modulo m. est inversible dans Zm si, et seulement si, k et m sont premiers entre eux. En effet : k et m sont premiers entre eux si, et seulement si, il existe deux entiers u et v tels que uk + vm = 1, si, et seulement si, il existe deux entiers u et v tels que , si, et seulement si, il existe un entier u tel que .

On note (Zm)* l’ensemble des éléments inversibles de Zm et (m) son cardinal. ( est l’indicatrice d’Euler) alors : Pour le professeur Si (décomposition de m en produit de facteurs premiers),

Pour le démontrer, on utilise les deux propriétés suivantes : Si m et n sont premiers entre eux : (mn) = (m)(n). Pour le professeur En effet, Zmn  Zm  Zn , et donc (Zmn)*  (Zm)*  (Zn)*. Propriété 2 Soit p un nombre premier. Pour tout entier naturel non nul  : (p) = p − p  −1. Il y a en effet p −1 entiers compris entre 0 et p −1, non premiers avec p. Ce sont les nombres kp où k {0, 1,2,…, (p −1 – 1)} (multiples de p strictement inférieurs à pα ).

Étude de quelques exemples 1. Chiffrement d’un texte à l’aide de 26 caractères Les 26 lettres de l’alphabet sont codées de 0 à 25 (0 pour A et 25 pour Z) On enlève les caractères non alphabétiques (espaces, ponctuation, chiffres…) ; on ne distingue pas les majuscules des minuscules. On découpe le texte par blocs de n lettres. La clé est une matrice K de Mn(Z26). Exemple Si n = 2 et , alors det(K ) = 1 et . Le texte clair OTTO, défini par les matrices colonnes , est crypté en calculant et donne les codes suivants : . Le texte crypté est donc : ATVZ. Inversement le texte FX se décrypte en calculant . Le texte clair est donc PI.

Ressources sur euler Outil : 4045 Chiffre de Hill (Codage d‘un texte à l’aide du chiffre de Hill) Apprentissage 4046/4046 (Coder/décoder un mot …) Inverse d’une matrice modulo un entier Outil : 4043 Apprentissage, générateur, QCM : 4055, 4058, 4056, 4057

Le nombre de clés (nombre de matrices inversibles dans Mn (Z26) ) est : Pour le professeur Pour le démontrer, on utilise les deux propriétés suivantes : Propriété 1 Card (Mn (Z26))* = Card (Mn (Z2))*  Card (Mn (Z13))* Démonstration Propriété 2 Si p est un nombre premier, alors : Démonstration

Dans le cas d’un chiffrement de Hill avec n = 2 et 26 caractères, Card (M2(Z26))* = (22 – 1)(22 – 2)(132 – 1)(132 −13), soit 157 248 clés possibles. Pour le professeur La probabilité qu’une matrice de M2(Z26) choisie au hasard puisse être une matrice de chiffrement est égale à Card (M2(Z26))* / Card M2(Z26) soit 0,34 (arrondi au centième).

Remarques 1. On peut dénombrer directement les matrices de (M2(Z26))*. K est inversible ssi ad – bc est premier avec 26, c’est-à-dire ssi ad – bc est impair et non divisible par 13. 2. Si l’on utilise 37 caractères (les 26 lettres de l’alphabet, les 10 chiffres et l’espace) : Card (M2(Z37))* = (372 – 1)(372 – 37) soit 1 822 176 clés possibles et la probabilité qu’une matrice de M2(Z37) choisie au hasard puisse être une matrice de chiffrement est égale à Card (M2(Z37))* / Card M2(Z37) , soit 0,97 (arrondi au centième).

2. Chiffrement d’une image en niveaux de gris D’un point de vue informatique, les « niveaux de gris » sont codés sous forme de nombres entiers compris entre 0 et 255 (avec huit bits, un maximum de 256 = 28 valeurs distinctes de l’intensité lumineuse peut être atteint). La valeur 0 représente alors la couleur noire, et la valeur 255 la couleur blanche. Une première approche avec un tableur consiste à créer une image très simple (comme une spirale) et à visualiser directement cette image en associant la couleur d’arrière-plan de la cellule à la valeur de la cellule elle-même. On peut ensuite crypter l’image en la découpant en blocs de n pixels (dans l’exemple de la spirale, n = 2) et en la chiffrant avec une clé K de Mn (Z256) Une image numérique matricielle est essentiellement un ensemble de pixels, organisés en un rectangle, chacun de ces pixels étant pourvu d’une « couleur » qui peut être un niveau de gris, une combinaison d’intensités lumineuses en rouge, vert et bleu ou simplement du noir ou blanc. spirale

Démonstrations Pour le professeur Démontrons que Card (Mn (Z26))* = Card (Mn (Z2))*  Card (Mn (Z13))*. Pour le professeur Soit K  Mn (Z26). K est inversible dans Mn(Z26) si, et seulement si K est inversible dans Mn (Z2) et dans Mn (Z13) (en effet K est inversible dans Mn (Z26) si et seulement si det(K) n’est divisible ni par 2 ni par 13). Considérons la relation :  définit une fonction car si aij  a’ij (mod 26) alors aij  a’ij (mod 2) et aij  a’ij (mod 13). On vérifie que  est un morphisme d’anneaux unitaires, injectif (Ker  = {(aij )i,j (mod 26) tel que (i,j),aij  0 (mod 2) et aij  0 (mod 13)} ; d’où aij  0 (mod 26) car 2 et 13 sont premiers entre eux). Comme Card Mn (Z26) = Card ((Mn (Z2) Mn (Z13)),  est un isomorphisme d’anneaux : Mn (Z26)  Mn (Z2) Mn (Z13). On en déduit que : (Mn (Z26))*  (Mn (Z2))* (Mn (Z13))*.

Pour le professeur Démontrons que Si p est premier, Zp est un corps. Dans ce cas, une matrice M de Mn(Zp) est inversible si, et seulement si, ses vecteurs colonnes forment une base B = {e1, e2,…, en} d’un Zp espace vectoriel de dimension n. Pour le professeur e1 n’est pas nul : il y a donc (pn – 1) façons de le choisir ; e2  Vect (e1 ) : il y a donc (pn – p) façons de le choisir (on exclut 0, e1, 2 e1,…, (p – 1)e1) ; e3  Vect (e1 , e2 ) : il y a donc (pn – p2) façons de le choisir (on exclut les combinaisons linéaires ke1 + ℓe2 , où k et ℓ sont des entiers compris entre 0 et p – 1) ; Etc… Donc