HTTP
- HTTP는 Hyper Text Transfer Protocol의 줄임말으로써, 서버와 클라이언트간에 데이터를 주고받는 프로토콜 입니다.
- HTTP는 텍스트, 이미지, 영상, JSON 등등 거의 모든 형태의 데이터를 전송할 수 있습니다.
HTTP는 보안적으로 안전할까?
- HTTP 통신은 클라이언트와 서버간의 통신에 있어서 별다른 보안 조치가 없기 때문에 만약 누군가 네트워클 신호를 가로챈다면 HTTP의 내용은 그대로 외부에 노출됩니다.
- 중요 정보가 없는 소규모의 프로젝트라면 문제가 되지 않겠지만 고객의 개인정보나 비밀을 취급하는 대규모 서비스라면 큰 보안적 허점이 될 것입니다.
- 이러한 문제를 해결하기 위해서 HTTPS가 등장합니다.
HTTPS는 어떻게 해결했을까?
- 기존의 HTTP 프로토콜은 전송계층의 TCP 위에서 동작합니다. 여기서 SSL(Secure Sockets Layer)라는 보안 계층이 전송계층 위에 올라갑니다. HTTPS는 SSL 위에 HTTP를 얹어서 보안이 보장된 통신을 하는 프로토콜이며 이 통신 방식을 SSL 암호화 통신 이라고도 합니다.
- SSL 암호화 통신은 공개키 암호화 방식이라는 알고리즘을 통해 구현됩니다.
공개키 암호화 방식

- 공개키 암호화 방식에는 공개키와 개인키 두 종류의 키가 존재합니다. 한쪽 키로 데이터를 암호화 했다면 오직 다른쪽 키로만 복호화를 할 수 있습니다.