SSL 통신 암호화 프로세스 및 다양한 인증서의 역할 요약

2867 단어 SSL암호
암호화의 반대는 암호 해독입니다.- 復号化+ 復号네, 지적 해 주셔서 감사합니다 m (_ _) m

소개



서버를 SSL화하는 작업은 잘 하고 있었습니다만, 생성하고 있는 파일이 SSL 통신으로 하고 있는 역할이 제대로 오지 않았기 때문에 정리했습니다.

개요





등장인물


  • 클라이언트
    Chrome과 같은 브라우저이거나 Android/iOS와 같은 네이티브 앱. SSL 통신에서는 공통 키 암호화 방식의 공통 키를 생성하는 역할을 담당한다.
  • 서버
    SSL 인증서가 있습니다. SSL 통신에서는 공개키 암호화 방식의 공개키/비밀키를 생성하는 역할을 담당한다.
  • 중간 인증국
    흔히 말하는 SSL 인증서 발급자. 개발자가 서버를 SSL화하려고 했을 때에 csr 를 건네주는 상대이며 SSL 증명서( crt )를 발행하는 역할을 담당한다.
  • 루트 인증 기관
    SSL 증명서를 발행하는 작업을 하고 있어도 특별히 의식하지 않는 존재. 중간 인증국이 가지는 중간 증명서에 서명하는 역할을 담당한다. 루트 인증서는 미리 클라이언트에도 전달됩니다.

  • 상세



    1-3 서버를 SSL화할 때 특별히 의식하지 않는 부분



    1. 루트 인증서 발급

    자체 증명이 가능한 루트 인증 기관으로부터 루트 증명서를 중간 증명서에 부여하는 루트 증명서의 검증은 불필요

    2. 루트 인증서로 중간 인증서에 서명

    부여된 루트 인증서로 중간 인증서에 서명합니다.

    3. 루트 인증서 발급

    자체 인증이 가능한 루트 인증 기관에서 루트 인증서를 클라이언트에 부여하는 루트 인증서 유효성 검사는 필요하지 않습니다.

    4-7 개발자가 서버를 SSL화할 때의 작업 공정



    4. private-key , csr 만들기

    SSL 인증서를 발급할 때 먼저 수행하는 작업. openssl genrsa 로 개인 키를 만들고 openssl req -new -key 로 csr을 만듭니다. csr에는 공통 이름 등의 정보와 함께 대응하는 공개 키 정보가 부여된다.

    5.csr 보내기

    작성한 csr을 SSL 증명서 업자에게 송부한다.

    6.csr에 중간 인증서로 서명

    SSL 증명서 업자는 루트 증명서로 서명된 중간 증명서를 사용해 받은 crt에 서명을 실시한다.

    7.SSL 증명서(crt)를 발행

    서명된 서명 파일을 전송합니다. 일반적으로 SSL 증명서라고 하면 crt 파일이라고 생각해도 좋다고 생각한다.

    8-14 사용자가 SSL 통신으로 서비스를 이용하는 공정



    8.DNS 요청

    URL 또는 엔드포인트를 지정하여 연결 요청을 보내는 작업.

    9.SSL 인증서 발급

    필요하다면 MITM 대책에 SSL 증명서에 기재되어 있는 CommonName 과 DNS 가 일치하고 있는지 검증을 실시한다. 

    10.SSL 인증서 검증

    SSL 인증서에 서명 한 중간 인증서가 유효한지 확인합니다. 공정 3에서 이미 클라이언트 측에 루트 증명서가 존재하기 때문에, SSL 증명서에 체인 된 루트 증명서의 서명의 검증이 가능.

    11. 공통 키 생성

    클라이언트로부터 데이터를 전송할 때 암호화에 사용되는 공통 키 생성. 엄밀히 말하면 시퀀스적으로는 여기에서 가고 있지 않다고 생각한다.

    12. 공통 키 암호화

    SSL 인증서에 첨부된 공개 키를 사용하여 공통 키를 암호화합니다.

    13. 암호화된 공통 키 부여

    암호화된 공통 키를 서버로 보내기

    14. 암호화된 공통키를 비밀키로 복호

    공통 키는 공개 키 암호 방식으로 암호화되어 있기 때문에, 서버 측의 비밀 키로 이것을 복호한다.

    참조



    h tps : // 미스 s와 네- f-세. 네스케. 이 m / sv-d d ゔ 펜 세 d / ぢ ギ せ rt / ぢ ギ ル セ チ ぃ 카치 온 - 스마 ry /
    htps : // 코 m / 카와 · ms / f90810b9 823b6556 8

    좋은 웹페이지 즐겨찾기