gpg --list--keys 출력 이해에 도움

gpg --list--keys 출력 이해에 도움

실행하면 gpg --list-keys다음과 같은 결과가 나타납니다.

/home/yax/.gnupg/pubring.kbx
----------------------------
pub   rsa2048 2020-10-09 [SC]
      4424C645C99A4C29E540C26AAD7DB850AD9CFFAB
uid           [ultimate] yaxley peaks <[email protected]>
sub   rsa2048 2020-10-09 [E]

이 텍스트에서 내 실제 키는 무엇입니까?

키 ID는 어떻게 얻나요?

[SC]와 [E]는 무엇을 의미하며, sub는 무엇을 의미합니까?

다음은 키에 대한 정보입니다.

  1. rsa를 사용하여 생성되었으며 gpg --full-generate-keyrsa rsa 옵션을 선택했습니다.
  2. 길이는 2048바이트입니다.

답변1

이 텍스트에서 내 실제 키는 무엇입니까?

표시되지 않습니다. (정확하게) 이것은 RSA 2048비트 키이므로 --list-keys16진수로 표시된 실제 공개 키(표시된 내용)는 500자를 넘습니다. 즉, 일반적인 터미널에서는 약 7줄입니다. 개인 키(역사적 이유로* PGP 및 GPG에서 "비밀"이라고 부르며 --list-secret-keys다음과 같이 표시됨) 이는 보안에 매우 해롭습니다.

키 ID는 어떻게 얻나요?

4424C645C99A4C29E540C26AAD7DB850AD9CFFAB 예지문.키 ID가 2개 있습니다., 오랫동안 사용되지 않은 v3 키를 제외하고 둘 다지문에서. "짧은" 키 ID는 지문의 하위 32비트 또는 마지막 8자리 16진수이므로 AD9CFFAB입니다. "긴" 키 ID는 지문의 하위 64비트 또는 마지막 16자리 16진수이므로 AD7DB850AD9CFFAB입니다. 역사적으로 짧은 키 ID는 거의 모든 것에 사용되었으며 대부분의 웹사이트, 블로그 및 여러분이 찾는 많은 문서에서 이를 사용하고 표시하지만 지난 몇 년 동안 짧은 키 ID가 성공적으로 악용되었습니다.현대의이제 프로그램은 긴 키 ID 또는 (여기서와 같이) 지문을 기본값으로 설정하지만 다음을 수행할 수 있습니다.다음에 추가일부 구성 파일 ( --keyid-format=long아마도 .--keyid-format=short.gnupg/config

어딘가에서 찾은 것은 2048R/0B2B9B37이전 버전의 GPG에서 사용되는 형식의 예입니다. RSA를 나타내기 위해 단일 문자 R을 사용합니다. 왜냐하면 구별할 수 있는 키 유형이 3개(및 알고리즘)뿐이었으나 이제는 8개의 16진수라는 짧은 키 ID를 사용하기 때문입니다.

* 제가 직접 쓴 글입니다히스테리 건포도고대 해커 시대에 대한 언급좋아요컴퓨터 사용자는 똑똑했지만 더 이상 그렇지 않습니다. 참고하고 제안하세요https://unix.stackexchange.com/users/424473/yaxley-peaks부분적으로 다루었습니다.

답변2

@dave_thompson_085님이 질문의 첫 번째 부분(그는 지문과 KeyID의 관계에 대해 설명했습니다)에 대해 훌륭한 답변을 제공했지만 원래 질문의 나머지(3) 부분에 답변하겠습니다.

“[SC]와 [E]는 무엇을 의미하며, sub는 무엇을 의미하나요?”

[SC]" " 및 " "에 대한 부분에 아무도 답변하지 않은 이유를 이해합니다 [E]. GPG 문서는 GPG 자체만큼 신비합니다 ;-). 나는 이러한 필드에 대한 명확한 설명을 찾기 위해 오랜 시간을 노력했지만 성공하지 못했고 키를 생성하여 해당 의미에 대한 증거를 찾았습니다.

[SC]:

스위치를 사용하여 키를 생성하는 경우 옵션 11을 선택하면 --expert" " 필드의 값을 가져옵니다.[SC]자신의 능력을 설정하세요" 그러므로 우리는 " [SC]"와 " 를 결정할 수 있습니다.서명된 인증서" 에서"현재 허용되는 작업":

gpg --expert --full-gen-key

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)
   (9) ECC and ECC
  (10) ECC (sign only)
  (11) ECC (set your own capabilities)
  (13) Existing key
  (14) Existing key from card
Your selection? 11

Possible actions for a ECDSA/EdDSA key: Sign Certify Authenticate 
Current allowed actions: Sign Certify 

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

Your selection? q

[이자형]:

gpg --expert --full-gen-key[E]" "을(를) 변경할 수 있는 옵션이 제공되지 않습니다 .

그러나 다음을 사용하여 키를 생성하십시오.gpg --default-new-key-algo 하다:

gpg --default-new-key-algo "ed25519/cert,sign+cv25519/encr" --quick-generate-key "[email protected]"

슬래시 사이의 두 번째 필드에는 "인증서, 로고"그러나 두 번째 슬래시 이후의 세 번째 필드에서는 encr그것이 설정되고 있는 것을 볼 수 있습니다.

따라서 " [E]" = 암호화[입력]

아들:

하위[키], 데비안은 아주 좋습니다위키 페이지로 서술 된:

아이란 무엇인가? OpenPGP는 마스터 키 쌍에 바인딩된다는 점을 제외하면 일반 키와 유사한 하위 키도 지원합니다. 하위 키는 서명 또는 암호화에 사용될 수 있습니다. 하위 키의 정말 유용한 부분은 기본 키와 별도로 취소할 수 있고 기본 키와 별도로 저장할 수도 있다는 것입니다.

즉, 하위 키는 별도의 키 쌍과 같지만 마스터 키 쌍과 자동으로 연결됩니다.

GnuPG는 실제로 서명 전용 키를 마스터 키로 사용하고 자동으로 암호화 하위 키를 생성합니다. 암호화 하위 키가 없으면 GnuPG를 사용하여 이메일을 전혀 암호화할 수 없습니다. 데비안에서는 debian.org 쉘 계정의 초기 비밀번호와 같은 특정 항목을 안전하게 이메일로 보낼 수 있도록 암호화 하위 키가 필요합니다.

결론적으로:

이러한 세부 사항을 찾는 것은 – 그리고 다른 사람들도 같은 문제를 겪고 있는 것을 볼 수 있습니다 – 이는 이빨을 뽑는 것과 같았습니다. GPG의 문서가 더 좋을 수 있습니다. 암호화와 같은 것에는 오해를 불러일으킬 수 있는 모호함이 있을 수 없습니다...

답변3

당신은 읽을 수있다이 기사키 플래그에 대한 설명은 (참조키 플래그 하위 패키지부분).

서명에 사용되는 마스터 키는 앞에 "pub"가 붙는 마스터 키입니다. "gpg --list-secret-keys"("sec"로 시작하는 부분)를 사용하여 비공개 섹션을 볼 수 있습니다. 암호화에 사용되는 하위 키는 "sub"(공개 하위 키) 또는 "ssb"(비밀 하위 키)가 앞에 오는 키입니다. GnuPG 개별 키에 대한 질문에 대한 답변을 확인하세요.여기.

답변4

나는 당신에게 이 가이드를 추천하고 싶습니다GPG 키 분석 - Dave Steele의 블로그

GPG와 해당 명령에 대한 포괄적인 가이드는 아니지만 GPG 전반에 대해 더 많이 이해하는 데 도움이 되었습니다.

관련 정보