Théorie des groupes et cryptographie
Les mathématiques sont l’étude de structures abstraites. Un ensemble d’éléments avec des caractéristiques bien définies constitue une structure. La nature des éléments n’importe peu. L’abstraction est ce qui fait la puissance des mathématiques.
Comme son nom l’indique, la théorie des groupes étudie la structure de groupe. Elle est utile pour concevoir des solutions au Rubik’s Cube. Elle devient indispensable en chimie ainsi qu’en cryptographie.
Cet article s’adresse aux lecteurs ayant déjà des bases dans le raisonnement mathématique. L’objectif est de présenter les résultats élémentaires de la théorie des groupes, et de les appliquer pour démontrer le fonctionnement de la cryptographie RSA.
Les démonstrations des propositions simples ne sont pas indiquées, celles des propositions plus avancées sont suggérées. Toutes les démonstrations peuvent être détaillées dans une prochaine version de l’article.
Sommaire
- Groupes et sous-groupes
- Théorème de Lagrange
- Groupe quotient
- Le groupe quotient Z/nZ
- Protocole RSA
- Conclusion
Groupes et sous-groupes
Définition : un ensemble est un groupe si :
- est muni d’une loi de composition interne
- La loi est associative
- possède un élément neutre, noté
- Tout élément de est inversible
Si la loi est commutative, on dit que le groupe est abélien.
Exemple : est un groupe abélien.
Proposition : soit un groupe, alors :
- L’élément neutre est unique
- L’élément a un unique inverse, noté
- L’inverse de est
Définition : Soit un sous-ensemble d’un groupe , est un sous-groupe de si est aussi un groupe sous la loi de composition de
Proposition : est un sous-groupe de si pour tout ,
Proposition : Soit un groupe, . On définit . Alors est un sous-groupe abélien de . est le sous-groupe généré par
Proposition : Tout sous-groupe de est de la forme avec .
Définition : Soit un groupe et :
- On définit l’ordre de comme étant le plus petit entier positif tel que . Notation : . Si un tel entier n’existe pas, l’ordre de est infini.
- On définit l’ordre de , noté , le cardinal fini ou infini de l’ensemble. On définit de même l’ordre de tout sous-groupe de .
Proposition : Soit un groupe et . Si est fini, égale à , alors , et .
Démonstration : Il existe un entier , tel que . Le plus petit entier vérifiant cette propriété ne peut être que .
Proposition : Soit un groupe et , alors . Autrement dit, l’ordre d’un élément est égal à l’odre du sous-groupe généré par cet élément.
Théorème de Lagrange
Définition : Soit un groupe et un sous-groupe de . Pour tout , on définit la classe à gauche de suivant (dénommée coset en anglais). Plus précisément :
- est appelé coset à gauche
- est appelé coset à droite
Proposition : Les () forment une partition de .
Démonstration : pour tout car . Les forment donc des ensembles non-vides qui couvrent . Il reste à montrer que deux tels ensembles distincts sont disjoints. Soit et distincts. On montre qu’ils sont disjoints par l’absurde. On peut montrer que si un élément appartient aux deux cosets, alors ces deux cosets sont égaux, ce qui contredit l’hypothèse.
Proposition : si définit une relation d’équivalence.
Proposition : telle que est une bijection. Donc .
Théorème de Lagrange : Si est un groupe fini et un sous groupe de , alors divise .
Démonstration : les cosets forment une partition de et comme est fini, il existe un nombre fini de cosets distincts : et et comme , on a .
est l’index de dans et se note . On peut donc écrire que :
Proposition : Soit un groupe fini d’ordre , alors pour tout élément , .
Démonstration : Soit , on sait que . D’après le théorème de Lagrange, divise , il existe un entier tel que . Donc .
Groupe quotient
Définition : Soit un sous-groupe du groupe , est normal si pour tout , .
Définition : on définit . C’est l’ensemble des cosets de ou classes (d’équivalence) suivant .
Proposition : si est un sous-groupe normal de , alors est un groupe sous la loi suivante : .
Note : est le groupe-quotient de par rapport au sous-groupe . Les éléments d’un groupe quotient sont des classes d’équivalence, c’est-à-dire des sous-ensembles d’éléments de .
Démonstration :
- Grâce à la normalité de , on peut montrer que la loi précédemment définie est bien une loi de composition interne (ie une fonction). Si et , alors on doit montrer que .
- La loi est associative grâce à l’associativité de la loi dans .
- est l’élément neutre.
Le groupe quotient
est un sous-groupe de , clairement normal. Les cosets de ce sous-groupe sont de la forme , qu’on note .
On définit la relation d’équivalence si .
Cela signifie que :
- divise
- et ont le même reste par la division euclidienne par
On sait que est un groupe. Et comme il y a restes possibles par la division euclidienne par , on a .
On a vu précédemment la définition de la loi du groupe quotient :
De façon similaire, on peut définir une loi de multiplication dans :
On peut vérifier que cette loi est bien définie. En revanche, n’est pas un groupe. Par exemple n’est pas inversible.
On définit , alors on peut montrer que est bien un groupe.
Soit ,
alors il existe tel que :
- d’après le théorème de Bachet-Bézout
On montre ainsi que , étant l’indicatrice d’Euler.
Protocole RSA
Chiffrement RSA
On choisit et deux nombres premiers très grands et on forme . On a .
Soit (choix quelconque, e pour encryption) et son inverse. On a donc :
et sont les représentants uniques de leurs classes .
- est la clé publique
- est la clé privée
On se place maintenant dans le groupe qui a pour ordre .
Soit un message à chiffré ; on prend l’unique représentant . Si le message est trop grand, on le chiffre par bloc.
- Chiffrement du message :
- Déchiffrement du message :
Démonstration :
- En effet par le théorème de Lagrange
- On a donc
- On retrouve bien l’unique
Sécurité du protocole RSA
La sécurité de ce protocole s’appuie sur le fait que la connaissance de la clé publique ne permet pas de déduire la clé privée . Le nombre étant déjà publique, pour trouver , un hacker devra connaître la décomposition de en facteurs premiers (trouver et ). A partir de et , il pourra calculer et trouver sans peine.
Il est très difficile de décomposer un grand nombre en facteurs premiers, mais il est facile de vérifier une solution (si on donne et , il est simple de vérifier que est bien égal à ).
Pour des nombres et choisis suffisamment grands (au moins 2048 bits), le chiffrement RSA est considéré comme très sûr avec la technologie informatique actuelle et pour un avenir prévisible. La principale menace pour RSA serait un progrès significatif dans la technologie, notamment le développement des ordinateurs quantiques, qui pourraient potentiellement casser le chiffrement RSA en utilisant des algorithmes quantiques, comme l’algorithme de Shor.
Signature numérique
Celui qui envoie un message peut le signer en utilisant sa clé privée. Pour se faire il hache d’abord le message selon un protocole convenu (via une fonction de hachage cryptographique) et obtient .
, avec
Il génère ensuite une signature sur le hash du message : .
La signature consiste à envoyer avec le message .
Vérification : , en effet :
Le destinataire peut alors vérifier que le hash correspond bien à celui du message reçu.
Conclusion
La théorie des groupes est un outil puissant pour la cryptographie. Elle permet de comprendre le fonctionnement et de démontrer le protocole RSA. Elle devient encore plus indispensable pour les protocoles de cryptographie plus modernes basés sur les courbes elliptiques.