(Thomas Pornin) wrote in message news:<ciht1q$3l4$...
According to chaton :
"Phong Nguyen identified a severe bug in the way GnuPG creates and uses ElGamal keys for signing."
Comme tu dis c'est rapport a l'implementation et pas a l'algo lui meme.
Nuançons néanmoins. Dans un système tel que RSA ou El Gamal, il y a un algorithme de base, mathématique, et dans le cas d'El Gamal ça fait vingt ans qu'on l'étudie et il a l'air bien solide.
Mais il y a aussi la mise en oeuvre. Pour RSA, il y a un standard (PKCS#1) qui décrit le mode de padding et précisément quel octet va où de façon non ambigüe. Il y a de plus tout un ensemble de règles, acquises par l'expérience, qui permettent d'éviter des ennuis (comme, par exemple, l'application d'un masquage adéquat pour contrer les attaques par chronométrage). Grâce à ça, la plupart des programmeurs compétents qui s'attaquent à l'implémentation de RSA arrivent à faire un boulot correct.
On ne peut pas en dire autant d'El Gamal, et c'est bien dommage.
--Thomas Pornin
Oui je suis tout a fait d'accord, mais ce que je voulais dire c'est que la faiblesse en question n'affectait pas l'algorithme en lui meme. Dans le cas d'un bug d'implementation, on peut repenser la conception de l'application pour reimplementer (partiellement le plus souvent) le meme cryptosystme en corrigeant 'erreur, si le probleme avait ete directement lie a l'algorithme, il ne serait pas possible de l'implementer de facon sure, quelles que soient les corrections faites dans l'implementation. On a deja vu des algorithmes de chiffrement surs etres sujets a des vulnerabilites dans OpenSSL (par exemple) sans que la faute vienne des algos, mais seulement de l'implementation de ceux ci.
pornin@nerim.net (Thomas Pornin) wrote in message news:<ciht1q$3l4$1@biggoron.nerim.net>...
According to chaton <chaton@tristeza.org>:
"Phong Nguyen identified a severe bug in the way GnuPG creates and uses
ElGamal keys for signing."
Comme tu dis c'est rapport a l'implementation et pas a l'algo lui meme.
Nuançons néanmoins. Dans un système tel que RSA ou El Gamal, il y a un
algorithme de base, mathématique, et dans le cas d'El Gamal ça fait
vingt ans qu'on l'étudie et il a l'air bien solide.
Mais il y a aussi la mise en oeuvre. Pour RSA, il y a un standard
(PKCS#1) qui décrit le mode de padding et précisément quel octet va
où de façon non ambigüe. Il y a de plus tout un ensemble de règles,
acquises par l'expérience, qui permettent d'éviter des ennuis (comme,
par exemple, l'application d'un masquage adéquat pour contrer les
attaques par chronométrage). Grâce à ça, la plupart des programmeurs
compétents qui s'attaquent à l'implémentation de RSA arrivent à faire
un boulot correct.
On ne peut pas en dire autant d'El Gamal, et c'est bien dommage.
--Thomas Pornin
Oui je suis tout a fait d'accord, mais ce que je voulais dire c'est
que la faiblesse en question n'affectait pas l'algorithme en lui meme.
Dans le cas d'un bug d'implementation, on peut repenser la conception
de l'application pour reimplementer (partiellement le plus souvent) le
meme cryptosystme en corrigeant 'erreur, si le probleme avait ete
directement lie a l'algorithme, il ne serait pas possible de
l'implementer de facon sure, quelles que soient les corrections faites
dans l'implementation. On a deja vu des algorithmes de chiffrement
surs etres sujets a des vulnerabilites dans OpenSSL (par exemple) sans
que la faute vienne des algos, mais seulement de l'implementation de
ceux ci.
(Thomas Pornin) wrote in message news:<ciht1q$3l4$...
According to chaton :
"Phong Nguyen identified a severe bug in the way GnuPG creates and uses ElGamal keys for signing."
Comme tu dis c'est rapport a l'implementation et pas a l'algo lui meme.
Nuançons néanmoins. Dans un système tel que RSA ou El Gamal, il y a un algorithme de base, mathématique, et dans le cas d'El Gamal ça fait vingt ans qu'on l'étudie et il a l'air bien solide.
Mais il y a aussi la mise en oeuvre. Pour RSA, il y a un standard (PKCS#1) qui décrit le mode de padding et précisément quel octet va où de façon non ambigüe. Il y a de plus tout un ensemble de règles, acquises par l'expérience, qui permettent d'éviter des ennuis (comme, par exemple, l'application d'un masquage adéquat pour contrer les attaques par chronométrage). Grâce à ça, la plupart des programmeurs compétents qui s'attaquent à l'implémentation de RSA arrivent à faire un boulot correct.
On ne peut pas en dire autant d'El Gamal, et c'est bien dommage.
--Thomas Pornin
Oui je suis tout a fait d'accord, mais ce que je voulais dire c'est que la faiblesse en question n'affectait pas l'algorithme en lui meme. Dans le cas d'un bug d'implementation, on peut repenser la conception de l'application pour reimplementer (partiellement le plus souvent) le meme cryptosystme en corrigeant 'erreur, si le probleme avait ete directement lie a l'algorithme, il ne serait pas possible de l'implementer de facon sure, quelles que soient les corrections faites dans l'implementation. On a deja vu des algorithmes de chiffrement surs etres sujets a des vulnerabilites dans OpenSSL (par exemple) sans que la faute vienne des algos, mais seulement de l'implementation de ceux ci.