일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- CS
- 북클럽
- 시스템 소프트웨어
- 파이썬 연산자
- 데이터 통신과 컴퓨터 네트워크
- 자료형
- ARP
- sort()
- 이것이 취업을 위한 코딩 테스트다
- 컴퓨터네트워크
- 리스트
- 노마드코더
- 쉽게 배우는 데이터 통신과 컴퓨터 네트워크
- 데이터통신
- IT5분잡학사전
- icmp
- 파이썬 정렬
- 라우팅
- 쿠키
- 노개북
- DP
- 컴퓨터 동작방식
- 이코테
- 이것이 취업을 위한 코딩테스트다
- RARP
- GIT
- 파이썬 자료형
- OSI7계층모델
- data type
- 기억장치
Archives
- Today
- Total
뚝딱햄 탈출기
[기술면접대비] HTTP vs. HTTPS 본문
HTTP vs. HTTPS
HTTPS는 TLS 혹은 SSL을 사용하여 기존의 HTTP를 암호화한 프로토콜이다.
따라서 HTTP와 HTTPS의 가장 큰 차이점은 데이터의 보안성이다.
HTTP 포트 번호: 80, HTTPS 포트 번호: 443
HTTP
- HTTP는 데이터 전송 과정에서 암호화를 하지 않는다.
- 따라서 데이터가 평문으로 전송된다.
- 이는 해커가 데이터를 가로채어 변조나 도용할 수 있는 위험이 있다.
- 따라서, 비밀번호, 계좌번호, 신용카드 정보 등 민감한 정보가 포함된 웹사이트를 HTTP로 전송할 경우 보안상 취약점이 생길 수 있다.
HTTPS
- SSL(Secure Socket Layer) 또는 TLS(Transport Layer Security) 프로토콜을 사용하여 데이터를 암호화한다.
- TLS란 인터넷에서의 정보를 암호화해 송수신하는 프로토콜
- 이를 통해 데이터가 안전하게 전송되어 해커가 데이터를 가로채어도 읽을 수 없도록 보호한다.
- 따라서, HTTPS를 사용하면 보안적으로 안전한 통신이 가능하다.
- HTTPS는 HTTP와 달리 인증서를 사용하여 서버의 신원을 확인할 수 있다.
- 이를 통해 사용자는 피싱(Phishing) 사이트를 방지할 수 있다.
- 암호화와 인증 절차 때문에 HTTP에 비해 처리 속도가 느릴 수 있다.
- HTTPS를 사용하려면 SSL/TLS 인증서를 구입하거나 발급받아야 하기 때문에 비용이 발생할 수 있다.
HTTPS 동작방식
HTTPS는 대칭키 암호화를 사용하며 다음과 같은 과정을 거친다.
- 클라이언트가 서버에게 접속 요청을 하면 서버는 CA에서 발급받은 인증서를 보낸다. 인증서에는 CA의 비밀키로 암호화된 사이트 정보와 공개키가 들어있다.
- 클라이언트는 인증서를 받아 CA의 공개키로 복호화하여 접속 요청한 서버가 신뢰할만한지 검증한다.
- 복호화가 되면 인증서가 신뢰할만하기 때문에 데이터를 주고받을 대칭키를 생성한다.
- 대칭키를 서버의 공개키로 암호화하여 서버에게 전송한다.
- 서버는 자신의 비밀키로 클라이언트가 보낸 대칭키를 복호화한 뒤 그 대칭키를 통해 데이터를 주고받는다.
공개키(Public Key)와 비밀키(Private Key)
공개키는 모두가 볼 수 있는 키이며 비밀키는 소유자만이 가지고 있는 키로 암/복호화에 사용된다.
대칭키 암호화
- 서버와 클라이언트가 암호화/복호화에 동일한 비밀키를 사용하는 방식
- 키를 공유하는데 어려움이 있으나 속도가 빠르다.
비대칭키 암호화
- 서버와 클라이언트가 암호화/복호화에 각각 다른 비밀키를 사용하는 방식
- 공개키를 통해서 암호화를 하고 비밀키를 통해서 복호화를 한다.
- 공개키는 공개해도 상관없으니 키 관리에 어려움이 없으나, 속도가 느리다.
인증기관(Certificate Authority, CA)
- 클라이언트가 접속을 요청한 서버가 의도한 서버가 맞는지 인증해주는 역할을 하는 보증된 기업들이다.
- 클라이언트는 서버에 요청을 해서 CA가 발급한 인증서를 받은 뒤 CA의 공개키로 복호화하여 신뢰할 만한 인증서인지 검증한다.
- CA의 공개키로 복호화되는 암호화는 오직 CA의 비밀키로 암호화한 경우밖에 없기 때문에 복호화되면 신뢰할 만한 것이다.
'web' 카테고리의 다른 글
[기술면접대비] CORS, SOP에 대해 알아보자 🧐 (0) | 2024.05.02 |
---|---|
[기술면접대비] SPA vs. MPA, CSR vs. SSR, SEO, 정적 페이지와 동적 페이지 (0) | 2024.05.02 |
[기술면접대비] HTTP, GET-POST 메서드의 차이?, REST API란? (0) | 2024.05.02 |
[기술면접대비] 브라우저의 동작 원리와 페이지 렌더링 과정 (0) | 2024.03.14 |
[기술면접대비] BOM, DOM, Virtual DOM (0) | 2024.03.13 |
Comments