5

Я неоднократно читал рекомендации по использованию первичной пары ключей в моем сертификате OpenPGP только для подписи пар вспомогательных ключей, а не для обычного ежедневного использования (даже для сохранения закрытого ключа на компьютере без сетевого подключения для дополнительного безопасность). Недавно я заметил, что каждая пара ключей в моем сертификате имеет флаги, которые определяют, для каких целей она должна использоваться исключительно. Насколько я понимаю в настоящее время (возникают проблемы с поиском документации), процесс подписания пар ключей будет обозначен буквой A (для аутентификации).

В моем недавно сгенерированном сертификате у моей первичной пары ключей есть флаги использования SC (подпись и сертификация). Теперь довольно легко изменить эти флаги для подключей с помощью инструмента командной строки GnuPG, но я не могу найти никакого способа изменить флаги использования для первичной пары ключей.

Что я хотел бы сделать, так это ограничить первичную пару ключей, чтобы иметь возможность только подписывать и отзывать дополнительные пары подключей в моем сертификате. Может кто-нибудь сказать мне, если это возможно и как это сделать?

2 ответа2

6

Вам потребуется сертификат C сертификации использования, который в любом случае требуется спецификациями OpenPGP. Аутентификация A используется редко и означает, что вы можете аутентифицировать себя (аналогично аутентификации на основе ключа SSH).

Тем не менее, невозможно изменить флаги использования в GnuPG (но взломав код). Из сообщения Ресула Цетина в ветке списка рассылки:

Хорошо, это было довольно легко сделать (не чисто, но это можно было сделать быстрым и хакерским способом). Просто искал gnupg-1.4.9/g10/getkey.c:parse_key_usage и изменил p на non-const и всегда устанавливал (*p) &=~2; , После этого я запустил свой новый скомпилированный hackish- gpg --edit-key и установил срок действия моего мастер-ключа. После этой процедуры у меня был установлен только флаг Cert. Спасибо Кристоф - ты мой личный герой дня :)

2

Чтобы изменить существующий главный ключ, поток gnupg-users, который цитировал Йенс, описывает единственный способ сделать это.

Установить мастер-ключ только для сертификации, когда он создан, немного проще:

bash-3.2$ gpg --gen-key --expert
Please select what kind of key you want:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)
   (7) DSA (set your own capabilities)
   (8) RSA (set your own capabilities)
Your selection? 8

Possible actions for a RSA key: Sign Certify Encrypt Authenticate 
Current allowed actions: Sign Certify Encrypt 

   (S) Toggle the sign capability
   (E) Toggle the encrypt capability
   (A) Toggle the authenticate capability
   (Q) Finished

Your selection? s

Possible actions for a RSA key: Sign Certify Encrypt Authenticate 
Current allowed actions: Certify Encrypt 

   (S) Toggle the sign capability
   (E) Toggle the encrypt capability
   (A) Toggle the authenticate capability
   (Q) Finished

Your selection? e

Possible actions for a RSA key: Sign Certify Encrypt Authenticate 
Current allowed actions: Certify 

   (S) Toggle the sign capability
   (E) Toggle the encrypt capability
   (A) Toggle the authenticate capability
   (Q) Finished

Your selection? q
RSA keys may be between 1024 and 16384 bits long.
What keysize do you want? (2048)   C-c C-c
gpg: Interrupt caught ... exiting

bash-3.2$ 

Однако вам необходимо будет создать подключи вручную, используя команду gpg --edit-key.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .