하나의 공개 키에 어떻게 GPG가 포함된 여러 공개 키가 포함될 수 있나요(또는 제가 뭔가 잘못하고 있는 걸까요)?

하나의 공개 키에 어떻게 GPG가 포함된 여러 공개 키가 포함될 수 있나요(또는 제가 뭔가 잘못하고 있는 걸까요)?

일부 Ubuntu 서버를 설정 중입니다. somekey.pub내부 패키지에 대해 다른 시스템 관리자로부터 추가할 키(apt 패키지 확인 이라고 함)를 받았습니다 .

이 키를 추가하면 각각 'pub' 행과 'sub' 행이 있는 apt-key add somekey.pub두 개의 추가 항목이 표시 됩니다. apt-key list(두 개의 새 항목에 있는 "uid" 줄은 나에게 키를 준 시스템 관리자입니다.)

어떻게 이럴 수있어? 다음을 표시하여 키를 확인합니다 less.

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.22 (GNU/Linux)

(41 lines snipped)
-----END PGP PUBLIC KEY BLOCK-----

또한 명령을 실행하는 대신 다른 Ubuntu 서버에 키링을 넣을 수 있도록 gpg해당 키만 포함하는 키링을 생성 했습니다 ( 를 사용하여) .gpg --no-default-keyring --keyring ./somekeyring.gpg --import somekey.pub/etc/apt/trusted.gpg.d/apt-key add

이 키링을 조사하면 gpg --no-default-keyring --keyring ./somekeyring.gpg --list-keys두 개의 키가 있음을 확인할 수 있습니다. 다음은 약간 수정된 출력입니다.

pub   1024R/4AAAAAAA 2018-08-31
uid                  Joe Sysadmin (Ubuntu Dev Repo Key) <[email protected]>
sub   1024R/9FFFFFFF 2018-08-31

pub   2048R/BAAAAAAA 2018-08-31
uid                  Joe Sysadmin (Ubuntu Repo Repo Key) <[email protected]>
sub   2048R/1EEEEEEE 2018-08-31

이것은 GPG 및 apt 키에 대한 첫 번째 시도이므로 간단한 기본 정보가 누락되었을 수 있지만 그 안에 있는 단일 공개 키 블록에는 somekey.pub공개 키가 하나만 포함될 것으로 예상했습니다. 그래서 위의 결과는 나를 놀라게 했습니다.

이를 이해하는 데 도움이 될 수 있는 문서는 어디에 있습니까?

답변1

OpenPGP 메시지는 여러 기본 키를 포함하여 상당히 임의적인 OpenPGP 패킷으로 구성될 수 있습니다. 실제로 키박스 형식( .kbx)이 없는 "클래식" GnuPG 키링은 모든 키가 배열된 OpenPGP 메시지일 뿐입니다. 키링과의 유일한 차이점은 키링이 ASCII Armored라는 점입니다. 이는 이메일과 같은 초기 통신 프로토콜을 통한 전송에 사용되는 또 다른 인코딩일 뿐이며 처음에는 원래 127개의 ASCII 문자만 지원했습니다.

GnuPG 배포판에는 일반적으로 gpg-split개별 OpenPGP 패킷을 분할하는 데 사용할 수 있는 GnuPG가 포함되어 있습니다. 다시 결합하려면 cat다시 연결하면 됩니다( gpg --enarmorASCII 기반 인코딩을 선호하는 경우).

OpenPGP는 여러 OpenPGP 공개 키를 포함하는 두 번째 방법도 제공합니다. 일반적으로 모범 사례(및 특정 암호화 알고리즘에 대한 기술 요구 사항)에 따라 여러 키가 생성됩니다. 생성된 마스터 키는 키 관리(및 서명 작업)에만 사용되는 반면, 마스터 키에 바인딩된 하나 이상의 하위 키는 "일상적인" 작업에 사용됩니다."OpenPGP 키를 몇 개 만들어야 하나요?"하위 항목에 대해 좀 더 심층적인 논의가 제공됩니다.

관련 정보