[HTTPS]HTTPS 란?

이원찬·2024년 5월 17일
0

네트워크

목록 보기
8/8

HTTPS 란?

흔히 알고 있는 HTTP 에 S(Secure) 가 붙은 것이다.

풀어서 쓰면 Hyper Text Transfer Protocol Secure가 되시겠다.

풀어서 쓴 문장만 봐도 알겠지만 기존 보안에 취약한 HTTP 에 보안 기능이 강화된 버전이라 보면 된다.

Secure Layer?

레이어 계층으로 살펴 본다면 HTTP 응용계층 아래에 Secure 보안 계층이 있다고 생각하면 된다.

HTTP가 보안에 취약한 이유?

HTTP가 왜 보안에 취약했냐면 사용자가 인터넷에 비밀번호를 입력했을때 입력한 비밀번호가 그대로 인터넷을 떠돌며 데이터가 전송되었고 해커가 맘만먹으면 비밀번호를 가로챌수 있기 때문이다.

HTTPS 작동원리?

HTTPS는 암호화 프로토콜(SSL/TLS)을 이용해 통신을 암호화 한다.

이 프로토콜은 공개키 알고리즘을 이용해 대칭키를 전달하고 서로 공유한 대칭키를 이용한 통신이다.

SSL과 TLS의 차이?

SSL과 TLS는 버전 차이로 SSL이 더 이전기술이고 소유권을 변경하기 위해 TLS 로 변경한 것 뿐임

공개키 알고리즘?

우리가 암호화된 데이터를 보고 싶으면 복호화 키만 있으면 된다.

그렇다면 데이터를 암호화하는 암호화키는 아무나 가지면 되므로 암호화키를 공개하여 아무나 사용할수있게 해주고 데이터를 보여주고 싶은 대상에게만 복호화 키를 주기만 하면 되는 보안 방식이다.

공개키 방식에서 중요한 것은 공개 되어 있는 암호화 키가 신뢰할 수 있는 암호화 키 인지 확인해야만 한다.

이때 공개키를 신뢰할수 있게 해주는 기관이 CA(Certificate Authority) 라고 한다.

HTTPS 의 동작과정

  1. 사이트는 본인의 사이트 정보와 공개키를 CA에 넘겨 인증서를 발급 받는다.

    이때 인증서는 CA가 가지고 있는 개인키로 암호화 되어 넘겨받는다.

  2. CA는 브라우저에게 인증서를 복호화 가능한 공개키를 제공한다. (모든 클라이언트가 CA의 공개키를 조회 가능함)

  1. 사용자가 사이트에 접속하면 사이트가 자신의 인증서를 클라이언트에게 먼저 보낸다. 브라우저에 있는 CA의 공개키로 인증서를 복호화 하여 사이트 정보와 사이트 공개키를 획득한다.
  2. 클라이언트는 사이트와 통신을 위한 대칭키를 만들고 방금 획득한 사이트의 공개키로 암호화 한뒤 사이트와 통신한다.
  3. 세션이 종료되면 대칭키는 폐기 한다.

참고자료

HTTPS란 무엇입니까? | Cloudflare

HTTPS란? (동작방식, 장단점)

profile
소통과 기록이 무기(Weapon)인 개발자

0개의 댓글