Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

une clé publique RSA de 1, 2 ou 3 bits est-elle sure ?

3 réponses
Avatar
x-kane
Bonjour

J'ai implanté un système de signature digitale sur un update logiciel,
et pour cette signature j'utilise un chiffrement RSA 1024 bits.
--> le modulo n est de 1024 bits
--> le chiffrement du hash est fait avec l'exposant privé de taille
environ 1024 bits
--> le déchiffrement du hash est fait avec l'exposant public de petite
taille

Par peur et ignorance, j'ai donné à l'exposant public une taille assez
grande quand même (64 bits environ). Mais un copain m'a dit que même si
l'exposant public est très petit (1, 3 ou 5), cela n'entraine pas de
vulnérabilité sur la clé privée.

Est-ce vrai ?


L'intéret serait d'accélérer d'un facteur 30 le temps de déchiffrement!

3 réponses

Avatar
Guillermito
On Mon, 24 May 2004 22:21:33 +0200, x-kane wrote:

Par peur et ignorance, j'ai donné à l'exposant public une taille assez
grande quand même (64 bits environ). Mais un copain m'a dit que même si
l'exposant public est très petit (1, 3 ou 5), cela n'entraine pas de
vulnérabilité sur la clé privée.


Peut-être ce message donnera un début de réponse à votre question:

http://groups.google.com/groups?selm=bgb3pp%242i88%241%40biggoron.nerim.net

--
Guillermito
http://www.guillermito2.net

Avatar
Francois Grieu
Dans l'article , x-kane
dit:

si l'exposant public est très petit (1, 3 ou 5), cela
entraine (-t-il une) vulnérabilité ?


L'esposant public 1 est à proscrire (aucune sécurité).

Le plus petit exposant public utilisable pour RSA est 3 (2 bits).

L'exposant 2 est utilisable (et conseillé) dans un système
similaire, Rabin.

On ne connais d'attaque pour les petits e que si un "padding"
innaproprié est utilisé, par exemple
- chiffrement sans padding, de sorte que m^e mod n = m^e
ce qui permet de trouver le message par un racine e-ième
- chiffrement du même message vers e destinataires,
quel que soit le padding s'il est non aléatoire

Si un padding est faible, un petit e tend à rendre
les attaques plus faciles, surtout en chiffrement, et dans
une moindre mesure en signature. Mais si le padding est faible,
il faut le changer, plutôt que e !!

Pour de la signature de code, on peut utiliser un
padding PKCS#1 ou ISO 9796-2; l'avantage de ce dernier
est que la taille perdue par la signature peut être réduite
à celle du hash plus 2 octets (e.g. 22 octets avec SHA-1),
et non à celle du module n (e.g. 128 octets avec un clé de
1024 bits)

Je considère que bien employé, e=3 est sur; et que personne
n'a jamais regretté d'utiliser 65537 plutôt qu'une valeur
plus grande.


François Grieu

Avatar
x-kane
Merci


Francois Grieu a écrit:
Dans l'article , x-kane
dit:


si l'exposant public est très petit (1, 3 ou 5), cela
entraine (-t-il une) vulnérabilité ?



L'esposant public 1 est à proscrire (aucune sécurité).

Le plus petit exposant public utilisable pour RSA est 3 (2 bits).

L'exposant 2 est utilisable (et conseillé) dans un système
similaire, Rabin.

On ne connais d'attaque pour les petits e que si un "padding"
innaproprié est utilisé, par exemple
- chiffrement sans padding, de sorte que m^e mod n = m^e
ce qui permet de trouver le message par un racine e-ième
- chiffrement du même message vers e destinataires,
quel que soit le padding s'il est non aléatoire

Si un padding est faible, un petit e tend à rendre
les attaques plus faciles, surtout en chiffrement, et dans
une moindre mesure en signature. Mais si le padding est faible,
il faut le changer, plutôt que e !!

Pour de la signature de code, on peut utiliser un
padding PKCS#1 ou ISO 9796-2; l'avantage de ce dernier
est que la taille perdue par la signature peut être réduite
à celle du hash plus 2 octets (e.g. 22 octets avec SHA-1),
et non à celle du module n (e.g. 128 octets avec un clé de
1024 bits)

Je considère que bien employé, e=3 est sur; et que personne
n'a jamais regretté d'utiliser 65537 plutôt qu'une valeur
plus grande.


François Grieu