HTTP
WWW상에서 클라이언트와 서버 간 데이터를 주고받기 위한 TCP/IP 기반 통신 프로토콜
특징
- stateless함
- 연결을 맺지 않기 때문에 요청/응답의 구조로 통신
- 캐싱이 가능
- 비연결성을 보완하기 위해 쿠키, 세션이 등장
주요 method
- GET
- POST
- PUT
- DELETE
HTTPS
HTTP의 보안을 강화하기 위해 통신 사이에 SSL을 추가한 프로토콜
HTTP는 HTML이나 JSON을 전송하는 평문 통신이기 때문에 도청이 가능
그리고 송신자가 누구인지 확인을 안하기 때문에 위장이 가능
주요 키워드
- 대칭키
- 공개키
- CA
동작 방식
- HTTPS를 적용하려는 서버는 공개키, 개인키를 만들고 공개키를 CA에 보낸다.
- CA는 해당 서버를 검토하고 인증서에 여러 정보와 서버의 공개키를 넣어 CA의 개인키로 암호화해 전송
- 서버는 해당 인증서를 가지고 있다가 클라이언트가 요청시 인증서를 전송
- 클라이언트의 브라우저는 이미 CA의 공개키를 가지고 있다.
- 만약 서버의 인증서를 CA의 공개키로 복호화가능하다면 CA로부터 신원이 확인된 서버라고 판단
- 그후 랜덤 생성한 대칭키와 데이터를 인증서 내부의 서버 공개키로 암호화
- 서버 클라이언트로 받은 대칭키를 복호화하고 그 이후부터는 해당 대칭키를 통해 통신
반응형
'공부' 카테고리의 다른 글
URL과 URI 헷갈리지 말자 (0) | 2020.05.28 |
---|---|
REST API (0) | 2020.05.28 |
파이썬의 GC, GIL (0) | 2020.05.27 |
기술 면접 준비 - 자바 (0) | 2020.05.27 |
끝이 안보이는 기사 공부 (0) | 2020.05.13 |
댓글