gpg 1.4.10 -> pgp 6.5.8 = "bad packet"


Сабж. Пожалуйста, помогите заставить gpg формировать сообщение (несимметричное шифрование + подпись), которое сможет разобрать pgp.
pgp определяет ключ, которым надо расшифровывать, спрашивает пароль, а потом выдает ошибку "bad packet".
Опция --pgp6 (как и другие варианты) и --compress-algo 1 не решает проблему.
Все ключи, участвующие в процессе, были сформированы в pgp 6.5.8. Работаю напрямую через библиотеки pgp.
Решил заменить виндовый сервер разбора сообщений линуксовым демоном и уже на последнем этапе обнаружил такую несовместимость.
В обратную сторону (pgp -> gpg) – всё ок.

Комментарии
— SATtva (10/12/2010 17:19)   
Пробовали откатить версию GnuPG или обновить PGP до чего-нибудь не столь архаичного?
— parihaaraka (10/12/2010 17:32)   
Нет, не пробовал.
gpg – штатная в убунте.
pgp после обновления требует переписывания кода, который ее использует. Этому мешает отвратительная документация (или ее отсутствие), недостача времени и то, что куча клиентов сидят и работают именно с этой версией библиотек. А обновление у них программы, к сожалению, не входит в условия задачи. Хотя, по всей видимости, придется отказываться от уже написанного демона и переписывать и клиентскую, и серверную части с нуля...
Может все же есть идеи? Или способ узнать причину возникновения этой ошибки.
— SATtva (10/12/2010 18:35)   
Как вариант. Делаете даунгрейд GnuPG, проверяете передачу. Если на стороне PGP сохраняется ошибка, понижаете версию GPG дальше. Когда (и если) ошибка самоустранится, пропускаете файл с шифртекстом через gpg --list-packets и сравниваете вывод с аналогичным у проблемных версий. По результату можно будет понять, что именно не устраивает PGP 6.5.8.