마스터 키가 없으면 GnuPG에서 개인 하위 키를 삭제할 수 없습니다


3

마스터 키 ( 인증 기능 만 )와 3 개의 하위 키 ( 각각 Sign , EncryptAuthenticate 기능) 가있는 GnuPG 키 페어가 있습니다. 실제로 시작할 때 하위 키의 개인 키만 있습니다 ( #마스터 개인 키 대신으로 표시된 스텁이 있음 )

나는 다음과 같이한다 :

  1. 개인 키 ( gpg --list-secret-keys)를 나열합니다 . 마스터 키 스텁 ( #)에는 세 개의 하위 키가 있습니다.
  2. 공개 암호화 하위 키 ( gpg -e USER) 로 메시지를 암호화합니다.
  3. 메시지 ( gpg -d)를 해독합니다 .
  4. 세 개의 하위 키 ( gpg --edit-key)를 삭제합니다 . gpg --delete-secret-keys마스터 키 (스텁 만 해당) 나 하위 키에서는 작동하지 않습니다.
  5. 공개 마스터 키를 삭제합니다 ( gpg --delete-keys)
  6. 2 단계에서 메시지를 해독하려고합니다. 개인 키가 없습니다. 개인 키를 나열합니다 gpg --list-secret-keys: 키 없음
  7. 나는 gpg-agent를 죽인다 ( killall gpg-agent)
  8. 키 서버에서 공개 키를 다시 가져옵니다 ( gpg --receive-keys)
  9. 2 단계에서 메시지를 해독하려고 시도하고 놀랍게도 개인 하위 키를 보호하는 암호를 도입하여 메시지를 해독 할 수 있습니다! gpg --list-secret-keys다시 실행하면 개인 키가 있습니다 .

개인 하위 키를 올바르게 삭제하지 않은 것 같습니다 gpg --edit-key. 공개 하위 키만 삭제 한 명령으로 추측합니다 . 마스터 키가 없으면 개인 하위 키를 어떻게 삭제할 수 있습니까?

비밀 마스터 키를 다시 가져온 후을 실행하여 마스터 개인 키와 그의 세 하위 키를 삭제할 수 gpg --delete-secret-key있습니다. 이것이 내가 가진 유일한 옵션입니까? 마스터 키가 스텁 일 경우 비밀 하위 키를 삭제할 수 없습니까?

답변:


2

GnuPG 2.1+의 경우 비밀 키는 gpg-agent에 저장되며 기본 키 링에서만 참조됩니다.

공개 하위 키를 다시 가져 와서 실행하십시오 gpg --list-secret-keys --with-keygrip. 그러면 각 하위 키에 속하는 원시 비대칭 키의 '지문'이 표시됩니다 (전체 PGP 하위 키의 지문과 메타 데이터 및 모두를 혼동하지 마십시오).

삭제하려는 각 하위 키에 대해 다음을 실행하십시오.

gpg-connect-agent "delete_key <keygrip>" /bye

같은 문제가 있었다. 효과가있었습니다.
Toni Homedes i Saun
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.