저는 RSA, Elgamal, AES, SHA 뒤에 숨어있는 수학을 상당히 이해하지만 실제로 사용하는 방법은 이해하지 못합니다. 하위 키는 마스터 키와 어떻게 다릅니 까? 다양한 웹 사이트에서 그 목적을 이해하지만 내부적으로 어떻게 구현됩니까? 마스터 키에 어떻게 바인딩됩니까? OpenPGP 용어입니까?

댓글

답변

enigmail 포럼의 2008 년 rjh 사용자가 작성한 게시물 은 이에 대한 답변입니다.

원래 PGP 2.6, 90 년대 초반, 키 쌍이 하나 뿐이고 암호화와 서명 모두에 사용되었습니다. 추가 키 쌍을 가질 수있는 기능은 몇 가지 엔지니어링 과제를 제시했습니다. 궁극적으로 추가 키 쌍을 “하위 키”라고 부르기로 결정했습니다. “하위 키”가 전혀 없다는 사실에도 불구하고 마찬가지입니다. 마찬가지로 “키”라고 부르는 것은 실제로 키가 아닙니다. 용어 열쇠가 실제로 열쇠였던 시절의 이월입니다. 오늘날 키는 사용자 식별자, 서명 등에 대한 일부 메타 데이터와 함께 실제로 키의 모음 입니다.

예 : 내 “키”에는 4 개의 키 쌍이 있습니다. 5B8709EB , D0C6AAE4, 71E177DB 및 8DB02BBB3.

GnuPG가 “공개 키”라고 부르는 것은 실제로 컬렉션에서 가장 오래된 서명 키입니다. 예를 들어, 5B8709EB가 먼저 생성 되었기 때문에 GnuPG는 전체 키 및 메타 데이터 세트를 “5B8709EB 키”라고 부릅니다.

따라서 “암호화 및 서명에 사용되는 키”를 사용하지 않고 키에있는 모든 키 쌍이 하위 키이기 때문입니다. 하위 키가 하나만 있더라도

답변

하위 키

하위 키 패킷은 RFC 4880, OpenPGP, 5.5 키 자료 패킷 . “다른 패킷 ID로만 구별되며 실제로 유용하려면 바인딩 서명이 필요합니다 (아래 참조).

공개 하위 키 패킷 (태그 14) 공개 키 패킷과 정확히 동일한 형식이지만 하위 키를 나타냅니다.

하위 키 사용

OpenPGP 하위 키는 다른 용도로 사용 :

  • 기본 키를 오프라인 또는 더 안전한 장치에 저장할 수 있습니다. 하위 키가있는 시스템이 손상되면 모든 번거 로움없이 하위 키를 쉽게 취소 할 수 있습니다. 기본 키 (새 키 공유, 새 서명 받기 등).
  • 다른 시스템에 다른 하위 키 (예 : 빌드 서버의 서명 하위 키)가 있습니다. 다시 말하지만 단일 키를 취소하는 것은 쉽습니다.
  • 긴 수명을 위해 더 큰 기본 키를 사용하고 일상적인 사용을 위해 더 짧지 만 더 빠른 하위 키를 사용합니다.
  • 일부 알고리즘은 암호화와 서명을 모두 지원하지 않습니다. 예 : DSA 기본 키에는 암호화를위한 다른 키가 필요합니다. 일반적으로 ElGamal과 쌍을 이룹니다.

바인딩 서명

하위 키를 기본 키에 바인딩하는 특수 서명 하위 유형이 있으며, RFC 4880, OpenPGP, 5.2.1 서명 유형 :

0x18 : 하위 키 바인딩 서명

이 서명은 하위 키를 소유하고 있음을 나타내는 최상위 서명 키에 의한 설명입니다. 이 서명은 사용자 ID 나 다른 패킷이 아니라 기본 키와 하위 키에서 직접 계산됩니다. 서명 하위 키를 바인딩하는 서명은 기본 키 및 하위 키의 서명 하위 키에서 만든 0x19 서명을 포함하는이 바인딩 서명에 포함 된 서명 하위 패킷을 가져야합니다.

0x19 : 기본 키 바인딩 서명

이 서명은 서명 하위 키에 의한 명령문으로, 기본 키와 하위 키가 소유하고 있음을 나타냅니다. 이 서명은 0x18 서명과 동일한 방식으로 계산됩니다. 사용자 ID 또는 기타 패킷이 아니라 기본 키 및 하위 키에서 직접 계산됩니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다