[기술요약5] HTTPS란 무엇인가?

http https

HTTPS


HyperText Transfer Protocol Secure

보안된 하이퍼텍스트 전송 프로토콜

HTTP와 HTTPS의 차이점


  • HyperText : 기존 선형적 문서를 초월한 비선형적 문서. 거창하지만 그냥 본문에 하이퍼 링크가 있어 다른 문서로 이동할 수 있는 문서다.
  • HTTP는 이 HyperText를 전송하는 프로토콜이고 여기에 보안 방식을 더한 것이 HTTPS.

개인키와 공개키


  • 암호화/복호화는 1:1간의 전송하는 정보를 남이 훔쳐보지 못하게 숨기기위해 필요하다. 암호화/복호화에는 이를 위한 키가 존재해야 한다. 이 키를 서로 동일한 1개만 가질 것인지, 서로 다른 키를 가질 것인지로 대칭키, 비대칭키로 나뉜다.
  • 개인키와 공개키는 비대칭키이다.
  • 개인키는 자신만이 가지고 있는 비밀 키, 공개키는 모두가 보고 사용할 수 있도록 하는 키이다.
  • 개인키로 암호화 한 정보는 공개키로 복호화 할 수 있고, 공개키로 암호화한 키는 개인키로 복호화 할 수 있다.
  • 그러면 위 문장에서 전자는 정보의 진위(개인키를 가진 이가 이 정보를 썼는가)를 파악할 수 있고, 후자는 정보를 한 명만 확인(공개키를 가진 이가 개인키를 가진 이만 볼 수 있는 비밀 정보를 전달)할 수 있다.

HTTPS의 동작방식


  • HTTPS는 위에 설명한 대칭키와 비대칭키를 사용하여 상호간의 인증을 통해 정보를 숨겨 통신한다. 우선 비대칭키(인증서)를 사용해 상호간에 해도되는 연결인지를 판별하고, 이후에는 대칭키(세션키)를 사용해 정보를 주고받는다. 인증은 비대칭, 통신은 대칭 방식을 써서 보안성과 성능을 둘 다 해결한다.
  • 1. Client가 Server에 접속한다.
  • 2. Server는 Client에게 공개키를 제공해준다.
  • 3. Client는 세션키를 만들어 공개키로 암호화 해 Server에 전달한다.
  • 4. Server는 개인키로 복호화 해 세션키를 얻는다.
  • 5. Client와 Server 간에 세션키를 통해 정보를 주고 받는다.
  • 여기서 공개키는 인증서이고, 이는 공인된 기관에서 관리를 해서 이 인증서가 진짜인지를 인증해준다.
  • 해당 프로토콜을 TLS라고도 하고 Transport Layer Security이다.

이전글

다음글


Posted

in

,

by

Comments

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다