Syst`emes reposants sur la difficult´e de la factorisation (I)
27 avril 2017
L’´echange de clef Diffie-Hellman et le chiffrement/signature Elgamal reposent sur la difficult´e (suppos´ee)
du calcul du logarithme discret. On va maintenant voir des sch´emas cryptgraphiques, les plus utilis´es,
reposant sur la difficult´e de la factorisation des grands entiers.
Dans tous ces sch´emas, un nombre composite (g´en´eralement not´e n) est rendu public, tandis que sa
factorisation est gard´ee secr`ete. L’id´ee c’est que nsert `a effectuer les op´erations publiques (chiffrement,
v´erification de signature, etc.). La connaissance de la d´ecomposition de nen produit de facteurs premiers
permet, elle, d’effectuer les op´erations secr`etes (d´echiffrement, signature).
Pour que ceci puisse fonctionner, il faut qu’il soit impossible de calculer la factorisation de n. Ceci exige
d’une part que nsoit suffisamment grand (2048 bits au moins en 2017) et d’autre part que nn’ait pas
de petit diviseur, qui sont faciles `a trouver. Le plus simple consiste `a g´en´erer al´eatoirement deux grands
nombres premiers (souvent not´es pet q), et de calculer n=pq. A priori, les nombres de cette forme
sont les plus difficiles `a factoriser. Le record actuel de factorisation date de 2009, o`u un nombre de cette
forme de 768 bits a ´et´e factoris´e (c’est le record connu). Le calcul a n´ecessit´e environ 267 op´erations, soit
environ 2000 ans de calcul sur un seul coeur d’un CPU moderne.
La plupart du temps, les message sont repr´esent´es comme des ´el´ements de Zn, c’est-`a-dire des entiers
modulo n. Un certain nombre de diff´erences sont `a souligner par rapport `a la situation qui pr´evaut dans
les sch´emas `a base de logarithme discret, o`u tout a lieu modulo un nombre premier. Lorsqu’on travaille
modulo un nombre composite, il faut faire attention que :
— Tous les ´el´ements de Znne sont pas inversibles modulo n.
— Le petit th´eor`eme de Fermat n’est pas vrai.
Ces pr´eliminaires ´etant pos´es, il y a deux principaux sch´emas reposant sur la difficult´e de la factorisation :
celui de Rabin et RSA. RSA est de tr`es loin le plus utilis´e, mais Rabin a l’avantage que les arguments
qui justifient sa s´ecurit´e sont plus clairs.
Ce document est consacr´e (modulo quelques digressions) au syst`eme de Rabin.
L’id´ee de base est la suivante : ´elever un nombre au carr´e modulo nest tr`es facile, tandis que l’op´eration
inverse (le calcul des racines carr´ees modulo n) n´ecessite la connaissance de pet q, comme on va le voir.
Ceci pemet d’envisager une m´ethode de chiffrement `a clef publique o`u le chiffr´e de xsoit y=x2mod n.
Pour rendre cette id´ee concr`ete, il faut quand mˆeme que le propri´etaire de la clef secr`ete puisse d´echiffrer,
donc qu’on puisse retrouver x`a partir de y.
1 Racines carr´ees modulo n
On a vu comment calculer des racines carr´ees modulo un nombre premier ptel que p≡3 mod 4.
Rappelons comment ¸ca marche : si aest un r´esidu quadratique, alors ap+1
4est une racine carr´ee de a
modulo p. En effet :
ap+1
42
≡ap+1
2≡a1+ p−1
2≡amod p
La derni`ere ´egalit´e d´ecoule du crit`ere d’Euler : puisque aest un r´esidu quadratique, alors ap−1
2≡1 mod p.
Il nous reste `a voir comment calculer une racine carr´ee modulo n. Pour cela, on va calculer une racine
carr´ee modulo p, puis modulo q, et on va les recombiner ensemble pour obtenir une racine carr´ee modulo n.
1