Мой открытый ключ pgp имеет вложенный ключ с подписью (собственной подписью), которая содержит недопустимый URL-адрес политики. Как я могу обновить подпись и удалить политику?
Использование gpg (GnuPG) 1.4.21 в macOS Sierra, 10.12.3 (16D32)
Мой открытый ключ pgp имеет вложенный ключ с подписью (собственной подписью), которая содержит недопустимый URL-адрес политики. Как я могу обновить подпись и удалить политику?
Использование gpg (GnuPG) 1.4.21 в macOS Sierra, 10.12.3 (16D32)
Не совсем решение, но именно так я и решил эту проблему (используя GnuPG 2.2).
Во-первых, у меня была такая же проблема с моими UID. Это можно решить: удалите URL политики из gpg.conf, затем удалите подписи (gpg --edit-key
и delsig
) и снова подпишите uid с помощью первичного ключа.
Для дополнительных ключей этот подход не работает. Каждый дополнительный ключ должен быть подписан первичным ключом после его создания, дополнительные подписи не имеют смысла. Таким образом, для GnuPG нет необходимости поддерживать редактирование или добавление подписей подключей. Поэтому мне пришлось попробовать что-то еще (контрольный пример с test
uid).
gpg --export-secret-key test > testexport
gpgsplit testexport
000006-002.sig
. Вы можете перепроверить и проверить содержимое с помощью gpg --list-packets 000006-002.sig
.gpg --local-user test --output 000006.newsig --detach-sign 000005-007.secret_subkey
cat 0* > newkey
gpg --delete-key test
gpg --import newkey
. Но для дополнительного ключа импорт, к сожалению, не удался, так как подпись была неверной.Таким образом, этот подход был слишком наивным, и нужно глубже изучить подписи OpenPGP, чтобы создать действительную.
В конце концов, поскольку мой ключ был загружен кем-то еще на сервер ключей, я решил отозвать дополнительный ключ и создал новый.