Атака на RSA ключи подписи с публичной экспонентой 3
На IETF OpenPGP mailing list появилась атака, которую на Crypto 2006 представил Daniel Bleichenbacher, позволяющая подделывать RSA подписи для ключей, где публичная экспонента ровна 3.
Такие подделки будут проверяться как настоящие подписи, если в проверяющей программе допущена достаточно распостраненная ошибка: не проверяется факт того, что после padding-a и структуры содержащей хеш (обычно, как и в OpenPGP, это — структура ASN1 закодированая в BER), больше ничего нету в расшифрованой подписи.
В реализации SUN языка java, эта ошибка есть, так что предидущие версии моей собственной OpenPGP реализации ePointPGP тоже неустойчивы против этой атаки. В новой версии я ошибку исправил (сам проверяю RSA подписи, вместо того, чтобы довиеиться SUN-у).
Ссылки
[link1] http://www.imc.org/ietf-openpgp/mail-archive/msg14307.html
Есть ли такая ошибка в GnuPG и PGP?
Насколько я помню, в PGP и GnuPG публичная экспонента равна 65537. Так что нет.
На сколько мне известно, нет.
Одно к другому не имеет отношения.
Публичная экспонента 65537 используется при создании нового ключа, а ошибка, если она есть, то при проверке подписей.
Как в PGP, так и в GnuPG, проверяются любые публичные экспоненты, но проверяются достаточно досконяльно для того, чтобы поддельная подпись не была расценена как правильная.
Кстати, вот обещаная ссылка:
http://www.imc.org/ietf-openpg.....rchive/msg14307.html[link1]
Я имелл ввиду, что даже если ошибка при проверке подписи есть, её всё равно нельзя использовать для атаки.