OVH Cloud OVH Cloud

clé publique/clé privée

2 réponses
Avatar
doryparker
Est-ce que(avec PGP par exemple)à chaque clé publique,une seule clé
privée?
Autrement dit,si je veux changer la clé privée,dois-je aussi changer
la clé publique?

autre question:par mesure de précaution,au lieu d'envoyer par mail la
clé privée à mon destinataire grâce à une phrase secrète,puis-je la
lui transmettre simplement sur une disquette que je lui remettrai en
mains propres?

2 réponses

Avatar
Guillaume Kaddouch
"max" a écrit dans le message de
news:
Est-ce que(avec PGP par exemple)à chaque clé publique,une seule clé
privée?


J'ai des connaissances toutes fraiches grace a Mr Pornin de ce forum, donc
je vais essayer de te répondre ;-)
Normalement oui, tu n'as qu'un seule paire de clé, une clé publique ne peut
correspondre qu'à une seule et unique clé privée.

Autrement dit,si je veux changer la clé privée,dois-je aussi changer
la clé publique?


Je répondrai par l'affirmative, je dirai meme que si tu genere une clé, son
opposé le sera aussi, donc tu générera une paire.

autre question:par mesure de précaution,au lieu d'envoyer par mail la
clé privée à mon destinataire grâce à une phrase secrète,puis-je la
lui transmettre simplement sur une disquette que je lui remettrai en
mains propres?


Pourquoi faire une telle chose ?
Une clé "privée" est par définition censée resté en ta possession unique,
c'est la clé publique qui permettra a tes contacts de te chiffrer des
messages que toi seul pourra décrypt___... arg, déchiffrer (désolé c'est un
réflexe) avec ta clé privée.

Voilà, j'espere ne pas m'etre trompé dans ce que je t'ai dit, on me
corrigera autrement ;-)

Guillaume.

Avatar
pornin
According to Laurent Picouleau :
Non. d est _une_ solution à e*d = 1 mod phi(n)


Juste pour préciser :

-- Dans le cas de RSA, il peut y avoir plusieurs clés privées ("d")
qui correspondent à la même clé publique ; mais elles sont toutes
équivalentes, en ce sens que non seulement elles déchiffrent les mêmes
messages, mais en plus la connaissance de l'une d'elles apporte la
connaissance de toutes les autres. En effet, connaissant une valeur
"e" et une valeur "d" telles que e*d = 1 mod phi(n), alors il est
aisé de factoriser n.

-- Quand n = p*q, on a phi(n) = (p-1)*(q-1). On peut définir lambda(n)
comme étant le ppcm (plus petit commun multiple) de p-1 et q-1, et
il s'avère que pour que RSA fonctionne, il suffit que e*d = 1 mod
lambda(n). lambda(n) est légèrement plus petit que phi(n) (ne serait-ce
que parce que p-1 et q-1 sont tous les deux pairs). Si on note f le
plus petit entier tel que e*f = 1 mod lambda(n), alors les clés privées
RSA sont tous les entiers f+k*lambda(n) pour tout k entier.

Dans certains cas (pas celui du courrier électronique avec PGP), il
est important de gratter le plus possible de cycles d'horloge pour
les calculs avec la clé privée, et on cherche alors la clé privée
"optimale". En effet, dans un algorithme d'exponentiation classique
"square and multiply", le coût augmente avec la taille de l'exposant et
son pods de Hamming (nombre de bits à 1 dans sa représentation binaire).
On peut souvent gagner un peu avec un exposant un peu plus grand mais de
poids de Hamming plus faible.

Un autre cas (encore plus tordu) est quand on craint les "side-channel
attacks" où un méchant mesure précisément le temps ou la consommation
électrique lors d'une exponentiation avec la clé privée RSA. Là encore,
ce n'est pas applicable au cas du courrier électronique avec PGP,
mais plutôt à des cartes à puce. En utilisant plusieurs clés privées
différentes mais correspondant à la même clé publique, et en choisissant
aléatoirement une des clés pour faire le boulot à chaque fois, on peut
déjouer ces attaques.


Toujours est-il que d'habitude, quand on veut changer la clé privée,
c'est qu'on soupçonne que ladite clé a été découverte par un tiers,
qui pourrait dès lors déchiffrer les messages ou faire de fausses
signatures. Dans ce cas, il faut forcément changer la clé publique,
parce que sinon on ne lui enlève pas ce pouvoir.


--Thomas Pornin