it-swarm-korea.com

공개 키를 어떻게 배포해야합니까?

방금 GPG를 사용하기 시작했고 공개 키를 만들었습니다. 아무도 모른다면 그것은 무의미합니다. 어떻게 배포해야합니까? Facebook 및 LinkedIn의 프로필에 게시해야합니까? 내 블로그는 어때? 위험은 무엇입니까?

193

키를 배포하는 가장 좋은 방법은 사용 가능한 키 서버 중 하나를 사용하는 것입니다 (예 : keyserver.ubuntu.com , pgp.mit.ed 또는 keyserver.pgp.com .

Seahorse (우분투의 기본 키 관리자)를 사용하면 키가 이러한 서버 중 하나에 자동으로 동기화됩니다. 그런 다음 사용자는 전자 메일 주소 또는 키 ID를 사용하여 키를 조회 할 수 있습니다.

LinkedIn 또는 블로그에 공개 키를 게시하려면 키를 서버에 업로드하거나 위의 키 서버 중 하나에서 키 페이지로 링크하면됩니다. 개인적으로 파일을 다른 위치에로드하지 않고 한곳에서 최신 상태로 유지하는 것이 더 쉽기 때문에 키 서버 중 하나에 업로드하고 링크합니다. 사람들과 키 ID를 공유 한 다음 gpg --recv-keys.

공개 키를 Facebook에 게시하려면 프로필의 연락처 정보 섹션 아래에 배치 할 필드가 있습니다. 동일한 공개 키를 사용하여 이메일을 암호화하도록 Facebook 보안 설정을 변경할 수도 있습니다.

예를 들어 다음은 내 공개 키 입니다.

내가 알기로는 공개 키 게시와 관련된 위험이 없습니다.

107
Mark Davidson

귀하와 @Mark가 설명한 방식으로 공개 키를 게시함으로써 개인 키가 노출되거나 공개 키가 무효화 될 위험은 없습니다. @pboin이 언급했듯이 세계에서 사용할 수 있도록 설계되었습니다.

그러나 또 다른 문제가 있습니다. 공개 키를 소유하고 게시하는 핵심 목적 중 하나 (실제로 이는 주 목적 일 수 있음)는 다른 사용자에게 자신을 인증하고 모든 사용자의 진위 여부를 확인할 수 있도록하는 것입니다. 귀하가 서명 한 메시지 또는 데이터 및 귀하의 눈에 대한 데이터 만 보호/암호화합니다.
그러나 해당 사용자가 자신의 공개 키임을 어떻게 알 수 있습니까? 예를 들어, --Mark Davidson에게 개인 메시지를 보내려면 http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE493B06DD070AFC8 , 마크 데이비슨이 그 키를 출판했거나 나를 지적한 것이 [~ # ~] real [~ # ~] 이었음을 어떻게 알 수 있습니까?
내 OWN 공개 키를 mit.edu, 링크드 인, 페이스 북 등에 게시하고 빌 클린턴 (또는 빌 게이츠)이라고 부르는 것은 사소한 일입니다. 다른 방법으로 어떻게 알 수 있습니까?
또한, 만약 어떻게 나는 이것이 정말로 올바른 사람이라는 것을 알고 있습니다. (예를 들어, 그의 블로그에 게시 된 pk를 통해 익명의 블로거에게 연락하고 싶습니다. 실제로 사이트의 소유자이며 따라서 pk 게시자는 올바른 사람입니다)-공개 키가 도중에 변경되지 않았 음을 보장하는 방법은 무엇입니까? 지금까지 언급 한 모든 링크와 사이트 (PGP 키 서버 제외)는 HTTP입니다. 즉 채널 보호가 없으므로 서버와 브라우저간에 쉽게 변경할 수 있습니다.

X.509/PKI 모델을 사용할 때는 항상 trusted를 보증하는 사람이 있습니다. 예 : 잘 알려진 인증 기관 (브라우저 공급 업체가이를 검증하고 브라우저의 신뢰할 수있는 루트 저장소에 루트 인증서를 추가했기 때문에 신뢰 함)은 사용자의 신원을 확인하고 signed 공개 키/인증서입니다. 따라서 본인을 확인하려는 사람은 본인의 신분을 확인하고 서명을 확인한 다음 보증 대상의 신원을 확인할 수 있습니다 (잘 알려진 신뢰할 수있는 루트 CA를 찾을 때까지 반복).

그러나 PGP 모델에는 대개 no 중앙의 신뢰할 수있는 권한이 있습니다 (현재 버전에서는이를 허용 함). 대신 PGP는 신뢰 웹 모델을 기반으로하며, 누군가 신뢰하면 다른 사람의 신원을 보증 할 수 있습니다.

어쨌든 공개 키를 공개해도 다른 사람이 사용자의 신원을 확인하거나 올바른 사람 만 암호화 된 메시지를 볼 수 있도록하는 데 도움이되지 않습니다.

할 수있는 일 :

  • 귀하와 @Mark가 말한 것처럼 공개 키를 게시하고 보안 채널을 통해 공개 키 token (기본적으로 지문과 같은 공개 키의 해시)를 제공하십시오. 예 : 그가 당신을 개인적으로 알고 있다면 이것은 전화로 읽을 수있을만큼 짧습니다 ... 심지어 누군가 자신의 명함에 자신의 pk 토큰을 넣은 것을 보았고, 회의를 건네는 것을 보았습니다.
  • 이메일 서명을 시작한 다음, 대역 외 채널 (예 : 전화 또는 직접 ()gasp !!을 통해 서명인지 수신자에게 확인하십시오. = ))
  • 상황을 복잡하게하고 표준 X.509 인증서를 얻고 웹 사이트에서 SSL (바람직하게 EV)을 구현하면 누구나 해당 도메인 이름을 소유 한 사람이 제공 한 지식으로 누구나 pk 안전을 다운로드 할 수 있습니다 ... 대기업에 더 좋습니다 ...)
    Microsoft 어떻게 수행 ...

Aaaaall 그 사실은,이 pk가 무엇인지에 달려 있습니다. 어머니를 놀라게하는 것이라면 모든 것을 귀찮게하지 마십시오 :)
반면에, 정말로 민감한 커뮤니케이션이 있거나 보안에 민감한 클라이언트가 있다면 위의 모든 is 중요합니다 ...

79
AviD

일반적인 해결책은 keyserver 에 업로드하는 것입니다. 또 다른 좋은 아이디어는 Biglumber 에 항목을 만드는 것입니다. 이것은 다른 사람들과 접촉하고 서로 키에 서명하는 데 도움이됩니다.

또한받은 편지함을 살펴보고 이미 이메일에 서명 한 연락처를 찾아야합니다. 비공식 메일을 보내서 열쇠를 가지고 자원을 가리킬 수 있습니다.

키에 대한 블로그 항목도 좋습니다. 키를 다운로드 할 수있는 링크를 제공해야합니다.

메일에서 서명을 사용하는 경우 새 키와 물론 모든 메일을 가리킬 수 있습니다.

키 서버에 키를 업로드 한 후 키 서버에 배포 한 후에는 키를 삭제할 수 없습니다. 물론 취소 할 수 있습니다. 또한 스패머가 해당 전자 메일 주소를 찾아서 "Nice offer"를 보내는 것으로 가정합니다. 키 서명을 수행하고 새 서명을 업로드하면 서명에 특정 날짜의 위치가 표시됩니다.

27
qbi

키의 모든 이메일 주소는 공개 웹 인터페이스에 표시됩니다. 내 키의 이메일에 스팸이 많으므로 현재 이메일 주소를 키에 넣지 않았습니다.

11
allo

"배포"질문에 대한 간단한 대답은 자신과 의도 된 수신자에게 편리하게 작동하는 방법을 사용해야하며 개인 정보 보호 측면에서 요구 사항을 충족한다는 것입니다. 예 : 키 서버는 많은 수신자에게 배포하는 데 편리하게 사용할 수 있지만, 일반적인 키 서버는 uid (일반적으로 전자 메일 주소가 있음)가 스팸 발송자에게 항상 노출됩니다.

많은 더 어려운 질문은받는 ​​사람이 공격을 용이하게하는 위조 된 것이 아니라 자신에게 적합한 키를 가지고 있는지 어떻게 확인합니까? 키의 지문 을 다른 사람 "대역 외"와 교환 할 수 있습니다 (예 : 전화로. 또는 "신뢰의 웹 (web of trust)"에 의존 할 수 있습니다.이 목적을 위해 신뢰하는 사람들의 서명 체인입니다. 자세한 내용은 다음 질문을 참조하십시오.

7
nealmcb

공개 키 배포는 여전히 PGP/GPG에서 공개 된 문제입니다.

공개 키 서버로 업로드

  • 다른 사람은 키와 관련하여 보지 않으려는 모욕적 인 텍스트 또는 내용으로 키를 공개 서명 할 수 있습니다
  • 많은 사용자가 암호를 잊어 버리거나 해지 키를 잃어 버려 메일 주소가 변경되어 더 이상 이전 키를 제거 할 수 없습니다.
  • 이 서버에서 키 또는 서명을 제거하는 것은 거의 불가능합니다.
  • 키 서버의 데이터를 분석하는 데이터 마이닝 도구가 존재합니다
  • 이름, 메일, 친구, 타임 스탬프와 같은 많은 메타 데이터를 지원하기 때문에 자르기 쉽고 매우 흥미 롭기 때문에 공개 키 서버의 주소에 대해 더 많은 스팸을받습니다.
  • ... 모두 공개 키를 키 서버에 업로드 할 수 있습니다. 이것은 의도적으로 또는 실수로 발생할 수 있습니다. 대부분의 PGP 도구는 가져온 공개 키 업로드를 지원하며 오래 기다릴 경우 누군가가 키를 업로드하고 사용자 모르게 키에 서명합니다.

자신의 웹 사이트에 업로드

  • 사용자는 키를 제거하거나 변경할 수 있습니다
  • 신뢰할 수있는 수신자 웹 사이트에서 키를 다운로드하면 인증 키에 대한 또 다른 지표가 될 수 있습니다.
  • pGP의 많은 전문 사용자가이 방법을 선택했습니다 (너무)
  • 웹 사이트의 연락처 옆에 키를두면 PGP 사용을 알립니다

개인 회의

더 자세한 내용은

6
Jonas Stein

배포의 경우 실제로 청중에 따라 다릅니다. 낙관론자는 사람들이 내 키를 사용하여 메시지를 암호화하고 서명을 확인하기를 간절히 바랍니다. 현실은 그것을 관리하는 것이 문제가되지 않았다는 것입니다. 내 블로그와 요청에 따라 제공하여 매우 잘했습니다.

위험에 관해서는 전 세계에서 쉽게 사용할 수 있도록 설계되었습니다. 개인 키 보호에 대한 우려를 집중하십시오. 그 주위에 암호를 넣고 조심스럽게 지키십시오.

6
pboin

Linux에서는 다음 명령을 사용할 수 있습니다.

$ gpg --keyserver hkp://keyserver.ubuntu.com --send-key "your key_index or email"
$ gpg --keyserver hkp://pgp.mit.edu --send-key "your key_index or email"
$ gpg --keyserver hkp://pool.sks-keyservers.net --send-key "your key_index or email"

그리고 다른 서버로 보냈습니다. 그들은 당신의 열쇠를 전파합니다.

4
John