PGP 개인 키 블록도 공개 키를 "포함"합니까?


13

ASCII로 Armoured PGP 개인 키를 빈 GnuPG 키 링으로 가져 오면 ( ~/.gnupg사전 삭제 ) 키 링에 공개 키와 개인 키가 모두 포함되어 있음을 알았습니다 . 또한 ASCII가 주장하는 개인 키 블록은 내 공개 키 대응 크기의 두 배 크기이므로 개인 키 블록에는 개인 키와 공개 키가 모두 포함되어 있지만 공개 키 블록에는 후자가 포함되어 있다고 생각합니다.

키를 만들었으므로 지금까지 내 보낸 개인 키 블록이 포함 된 파일 하나와 내 보낸 공개 키 블록이 포함 된 파일 하나를 사용하여 키를 백업했습니다. 공개 키 블록 백업이 중복되어 개인 키 파일 만 보관해도 안전합니까?

이 명령을 사용하여 개인 키 파일을 만듭니다.

gpg --export-secret-keys -a > private

이 명령은 공개 키 파일을 작성합니다.

gpg --export -a > public

1
누군가 귀하의 질문에 대답하려면 키를 내보내는 데 사용하는 명령을 추가해야합니다. 아마 그 대답이있을 것입니다. 그러나 공개 키를 내 보내지 않으면 무엇을 얻을 수 있습니까? 백업 루틴에 그대로 두십시오. 비용이 들지 않으며 이미 사용 가능한 공개 키 만 필요한 모든 목적에 적합합니다.
Bram

고마워 브램; 명확성을 높이기 위해 질문을 편집했습니다. 그리고 그렇습니다, ~ 3KB를 절약하는 것은 실질적인 이점이 없습니다. 단지 궁금합니다.
Delan Azabani

답변:


15

예. OpenPGP "비밀 키"및 "비밀 하위 키"패킷에는 공개 및 개인 매개 변수가 모두 포함됩니다. pgpdump 를 사용 하여 내 보낸 키를 검사 하여 이를 확인할 수 있습니다 .

$ gpg-수출-비밀 키 grawity | pgpdump
Old : Secret Key Packet (태그 5) (1854 바이트)
    버전 4-새로운
    공개 키 생성 시간-2009 년 10 월 31 일 토요일 14:54:03 EET 2009
    Pub alg-RSA 암호화 또는 서명 (pub 1)
    RSA n (4096 비트)-...
    RSA e (17 비트)-...
    Sym Alg-CAST5 (심볼 3)
    반복되고 소금에 절인 문자열-키 (s2k 3) :
        해시 알고리즘-SHA1 (해시 2)
        소금-12 24 0f e1 5b 7e e2 46 
        카운트-65536 (코딩 된 카운트 96)
    IV-91 a3 44 71 47 87 a4 바 
    암호화 된 RSA d
    암호화 된 RSA p
    암호화 된 RSA q
    암호화 된 RSA u
    암호화 된 SHA1 해시

이것은 OpenPGP뿐만 아니라 대부분의 비대칭 키 시스템에도 적용됩니다.


PEM으로 인코딩 된 RSA PUBLIC KEY 및 RSA SECRET KEY 블록에 대해서는 사실이 아니라고 생각합니다.
vy32

2
@ vy32 : 이것들은 OpenPGP 키가 아니므로 관련이 없습니다. 그러나 여전히 그렇습니다 . ( openssl genrsa공개 블록 파생 할 수 있도록 "비공개"블록 만 출력 하는 방법에 유의 하십시오.) 직접 확인할 수 있습니다 openssl genrsa 512 | openssl asn1parse -i.. 또는 RSAPrivateKey 구조에서 모듈러스 및 publicExponent를 명확하게 보여주는 RFC 3447 부록 A 를 확인하십시오 .
user1686
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.