Разные пароли к главному ключу и подключу
Как известно при создании и эксплуатации OpenPGP ключа используется пароль/фраза. Современный OpenPGP ключ кроме главного ключа имеет один или более подключей. Главный ключ осуществляет (кроме прочих функций) подписываение информации, подключи используются для операций шифрования/расшифрования (если не создается специальный ключ подписания, но по умолчанию люди как правило создают "обычные" ключи).Однако пароль при использовании такого ключа только один, т.е. этот пароль используется как для доступа к секретной части главного ключа, так и для доступа к секретной части подключей шифрования. Вынося за скобки способность человеческого мозга к запоминанию паролей возник вопрос, есть ли возможность использовать для подписывания и расшифрования (т.е. для главного ключа и подключа) разные пароли?
Да, есть.
Так называемые CKT версии PGP(основанные на основной ветке PGP) даже имели средства для установки двух парольных фраз: для подписи и расшифрования. Это немного не та функциональность, что нужна Вам, но это что-то рядом :)
Как я понимаю, простых средств в GnuPG для реализации такого сейчас нет, но, я думаю, можно попробовать разделить главный ключ и подключи, как описано здесь на сайте, изменить парольную фразу на подключах и заменить подключи в главном ключе. Для этого придётся удалить подключи из основного ключа и импортировать на содержащую его связку набор подключей с измененной парольной фразой.
P. S. Всё, что выше – чистая теория, так что сперва экспериментируйте на фейковых ключах.
GnuPG позволяет устанавливать пароли индивидуально для каждого из подключей. Вначале Вы открываете диалог правки ключа (--edit-key keyID), затем выбираете нужный подключ (key N) и устанавливаете ему собственный пароль (passwd). При этом, если не выбран ни один подключ (key 0), то пароль будет установлен для главного ключа подписи, т.е. можно установить раздельные пароли для шифрования и подписи, даже если не создавалось специальных подключей.
Да, все гораздо проще :)
SATtva, Вы уверены? Только что попробовал – пароль устанавливается общий для основного ключа и всех подключей.
Генерим ключ, --gen-key, 2048 бит, ставим пароль "123", получаем ключ 01234567.
--edit-key, addkey, 1024 бита, установить пароль не предлагают, ключ 11111111.
Ещё раз --edit-key, addkey, 1024 бита, установить пароль не предлагают, ключ 22222222.
--edit-key alice,
pub 2048R/01234567 created: 2008-10-19 expires: never usage: SC
sub 1024R/22222222 created: 2008-10-19 expires: never usage: S
key 1,
pub 2048R/01234567 created: 2008-10-19 expires: never usage: SC
sub 1024R/22222222 created: 2008-10-19 expires: never usage: S
passwd
You need a passphrase to unlock the secret key for
user: "Alice (test key) <alice@wonderland.uk>"
2048-bit RSA key, ID 01234567, created 2008-10-19
Я не разбираюсь, но, кажется, тут должны бы просить пароль для доступа к ключевому материалу 11111111, а не 01234567. Вводим новый пароль "1". save.
--edit-key alice, key 2, passwd
You need a passphrase to unlock the secret key for
user: "Alice (test key) <alice@wonderland.uk>"
2048-bit RSA key, ID 01234567, created 2008-10-19
Пишем "123". Не подходит! "1" – подходит.
Версия gpg – 1.4.9, система – Mandriva Linux 2008.1.
Память мне настойчиво подсказывает, что в более ранних версиях работало и так, но склероз — штука суровая. Не исключено, что для установки паролей у подключей сами подключи нужно сначала отделить.