ssl, cacerts 정리

구운몽·2024년 6월 14일
0

SSL 요약

  1. key gen을 이용해서 인증서를 만듬
  2. private / public key 생성
  3. ca에 public key를 가져감
  4. ca는 인증서 생성해줌 (인증서명 요청)
    4-1. 도메인, 가져간 public key 를 ca private key로 암호화
  5. 나는 다운받은 인증서를 서버에 올림
  6. 서버에는 ca에서 발급된 인증서 , server private key
  7. 클라이언트는 인증서를 받음
  8. ca 공개키로 인증서를 해제함
  9. server public key 와 어떤 대칭키를 만듬 (브라우저가 하나?)
  10. 브라우저가 만든(?) 대칭키를 서버 퍼블릭키로 암호화함
  11. 암호화된 대칭키를 서버로 전달
  12. 서버의 프라이빗키로 암호화된 대칭키로 복호화
  13. 양쪽 모두 대칭키를 소유

사실 더 복잡함

handshake 1, 2단계에서 더 복잡한 대칭키 만드는 작업을 거친다. done 단계에서는 더 많은 작업이 이루어짐

carcerts jdk

  1. 사내 프록시 환경에서는 java 어플리케이션이 오류가 나는 경우가 있음 pkix 라는
  2. 사내 브라우저에서 웹사이트에 접속 후 인증서를 보면 사내 root인증서로 표시되는데 (아마존에서 발급받은 인증서라도)
  3. jdk는 사내 인증서를 가지고 있지 않음
  4. 때문에 java 어플리케이션에서 외부 사이트와 통신을 맺으려고한다면 신뢰할 수 없다는 오류가 발생함
  5. 8번에서 문제 (ssl 요약)
  6. 해제하고 싶지만 cacerts에는 ca의 공개키가 없으므로 (사내 인증서)

0개의 댓글