2013-08-15 2 views
0

웹 서비스, 프록시 및 SSL 연결을 사용하는 작업용 어댑터를 만들고 핸드 쉐이킹 메커니즘을 이해하는 데 한 가지 문제가 있습니다. 나는 한 가지 예를 설명 할 것이다.키 저장소에있는 개인 키. 핸드 셰이 킹 중에 어느 것이 사용됩니까?

내 행동 :

  1. 만들기 서버입니다. keytool로 비공개 키를 만듭니다. 그것을 위해 .cer 파일을 만드십시오.
  2. 클라이언트를 만듭니다. 그를 위해 똑같이 만들어라.
  3. 교환 .cer 키 스토어에서 다른 쪽 인증서를 가져옵니다.
  4. 연결을 만듭니다. 승인. 모든 것은 괜찮습니다.
  5. 서버의 키 저장소에서 새로운 개인 키를 생성합니다.

질문 : 핸드 셰이 킹 서버 사용을 할 수있는 pr_key?

답변

0

해당 개인 키를 가진 사람.

피어의 trust 저장소에서 사용할 인증서를 내 보내면 개인 키가 내보내지지 않습니다. 사실 선택할 수있는 것은 하나뿐입니다. 인증서에서 생성 된 인증서에 해당하는 것입니다.

+0

2 단계 : 1) 핸드 셰이크, 2) 그 후에 세션. 그래서 언제 pr_key와 인증서가 사용됩니까? 핸드 셰이 킹 (handshaking)하는 동안 첫 번째 메시지의 형식은 무엇입니까? – RelaxedSoul

+0

내 마음 속에서 대답은 "둘 다"입니다. 클라이언트가 client_pub.cer을 서버에 보내지 않으면 어떻게 될까요? – RelaxedSoul

+0

인증서가 핸드 셰이크 중에 피어에 전송됩니다. SSL 핸드 셰이크 메시지는 [RFC 2246] (http://www.ietf.org/rfc/rfc2246.txt)에 정의되어 있습니다. 왜 그런지 알 필요가 있다고 생각하는 이유는 다른 질문입니다. 서버가 클라이언트 인증서를 요청하고 클라이언트가 인증서를 보내지 않으면 (a) 클라이언트에 인증서가 없거나 올바르게 구성되어 있지 않아서 (b) 서버가 연결을 닫을 수도 닫지 않을 수도 있습니다 클라이언트 인증서를 '요청'또는 '요구'로 설정했는지에 따라 달라집니다. – EJP