GnuPG는 keyserver.ubuntu.com을 어떻게 신뢰할 수 있나요?

GnuPG는 keyserver.ubuntu.com을 어떻게 신뢰할 수 있나요?

나는 모든 OpenPGP 인증서의 유효성은 신뢰 웹 내에서 신뢰할 수 있는 당사자가 확인하는 인증서를 기반으로 한다는 점을 이해합니다.

그러나 매일 GnuPG를 사용하지 않는 대부분의 사람들은 키를 keyserver.ubuntu.com한 번만 받고 그 키가 정확하다고 믿습니다. 예를 들어 팔로우할 때"인증 방법" 가이드Ubuntu.com에서:

gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys "8439 38DF 228D 22F7 B374 2BC0 D94A A3F0 EFE2 1092" "C598 6B4F 1257 FFA8 6632 CBA7 4618 1433 FBB7 5451"

이런 소통이 이루어지긴 하지만암호화되지 않은 일반 HTTP를 통해, 나는 우리가 키서버로부터 돌려받은 인증서가 키서버 자체에 의해 서명될 것이라고 믿습니다. 따라서 우리가 키서버에 대한 신뢰할 수 있는 인증서를 알고 있는 한 우리는 응답을 신뢰할 수 있습니다.

trustdb하지만 GnuPG가 아직 파일을 생성하지 않을 것이라고 믿지 않기 때문에 이 명령을 한 번만 실행함으로써 어떻게 키 서버를 신뢰할 수 있습니까 ? GnuPG에는 의 인증서를 포함하여 신뢰하는 내장 인증서 목록이 있습니까 keyserver.ubuntu.com? 그렇다면 이 목록을 찾아 이것이 사실인지 확인하려면 어떻게 해야 합니까?

이 신뢰할 수 있는 목록이 없으면 동일한 MITM(Man-In-The-Middle)이 내 모든 통신을 가로채서 동시에 나에게 가짜 인증서를 제공할 수 있지 않을까요 keyserver.ubuntu.com? 위조된 서명 패키지(예: 운영 체제 ISO 자체)를 나에게 제공합니까?

답변1

키 수신을 위한 매개변수는 두 키의 전체 지문입니다.

  • 8439 38DF 228D 22F7 B374 2BC0 D94A A3F0 EFE2 1092
  • C598 6B4F 1257 FFA8 6632 CBA7 4618 1433 FBB7 5451

지문은 공개 키(I슈퍼 유저의 OpenPGP 키 ID에 대해 논의했습니다., 더 많은 참조를 원할 경우). GnuPG는 수신된 키의 계산된 지문이 요청된 지문과 일치하지 않는 경우 잘못된 키가 반환되었음을 인식합니다. 즉, 키 서버를 신뢰하지 않을 수도 있지만(이 서버는 무작위 개인에 의해 운영되며 악의적인 목적을 가질 수 있음) 반드시 그럴 필요는 없습니다. 어쨌든 키 서버에서 받은 모든 정보는 검증되어야 합니다. 가능한 지문의 범위는 매우 넓습니다. 예를 들어 NSA처럼 대행사와 같이 엄청난 컴퓨팅 능력을 갖고 있더라도 충돌(다른 키에 대한 동일한 지문)을 찾는 것은 불가능합니다.하지만 짧은 키 ID를 신뢰하지 마십시오.

같은 이유로 메일 주소나 사용자 ID를 검색할 때 키 서버의 결과를 신뢰하지 못할 수 있습니다. 키 서버 운영자는 악의적인 정보를 반환할 수 있을 뿐만 아니라 키 서버도 아무 것도 확인하지 않습니다(모든 사람이 임의의 메일 주소에 대한 키를 업로드할 수 있음).항상 직접 키의 유효성을 검사해야 합니다.GnuPG에는 기본적으로 신뢰되는 키와 같은 것이 없으며, 심지어 GnuPG 관리자의 키도 없습니다. Ubuntu 키의 지문이 나열된 소스를 신뢰하는 경우 지문에 서명하여 GnuPG가 해당 키를 확인했음을 알릴 수 있습니다.

HKPS(HTTP를 통한 HKP)도 있지만 이는 주요 서버 정보의 확인 누락을 고려하면 아무 것도 변경되지 않습니다. HKPS는 중간에 있는 사람이 키 서버에서 어떤 키를 검색하는지 기록할 수 없도록 도입되었습니다.

관련 정보