네트워크 종류
LAN (Local Area Network)
작은 단위의 네트워크로
주로 가까운 네트워크끼리 쓰인다
MAN (Metropolitan Area Network)
중간 단위의 네트워크로
주로 도시마다의 네트워크끼리 쓰인다
WAN (Wide Area Network)
가장 큰 단위의 네트워크로
주로 나라마다의 네트워크끼리 쓰인다
택배로 비유하면 LAN(직접배송) MAN(차 배송) WAN(비행기/선박 배송) 으로 보면 된다
네트워크 계층
대표적인 네트워크 계층 모델로는 OSI 7계층이 있다
데이터를 보내거나 받을 때 위의 계층을 따르게 되는데
택배마냥 데이터도 변환하고 포장하고를 거쳐 전송하고 받게된다
HTTP / HTTPS
HTTP?
Hyper Text Transfer Protocol
웹에서 데이터를 전송하는 프로토콜
웹 브라우저와 웹 서버 간에 정보를 주고받는 규칙을 정의하는 방식이다
HTTP 기능은 아래와 같다
- 웹 페이지 요청과 전송: HTTP는 사용자가 웹사이트를 방문할 때, 웹 브라우저가 서버에 요청을 보내고, 서버가 그 요청에 대한 웹 페이지나 데이터를 응답하는 방식으로 작동합니다.
- 클라이언트-서버 모델: HTTP는 기본적으로 **클라이언트(사용자의 웹 브라우저)**가 요청을 보내고, 서버가 그 요청에 대해 응답을 보내는 형태로 이루어집니다. 이때 요청과 응답은 텍스트 형식으로 전달됩니다.
- 상태 없는 프로토콜: HTTP는 상태를 유지하지 않습니다. 즉, 각 요청은 독립적이고, 서버는 클라이언트가 이전에 보낸 요청이나 응답을 기억하지 않습니다. 이 때문에 세션 관리나 쿠키 등의 방법을 사용하여 상태를 추적할 수 있습니다.
HTTPS?
HyperText Transfer Protocol Secure
웹사이트와 사용자 간의 데이터를 안전하게 전송하기 위한 프로토콜
일반 HTTP에 암호화 기능을 추가한 형태다
HTTPS 기능은 아래와 같다
- 암호화: HTTPS는 데이터를 암호화하여 전송합니다. 이로 인해 중간에 제3자가 데이터를 가로채거나 변조하는 것을 방지합니다
- 서버 인증: HTTPS는 서버가 신뢰할 수 있는 인증기관(CA)으로부터 인증서를 발급받아서 사용자가 접속하는 웹사이트가 실제로 올바른 웹사이트인지 확인할 수 있게 해줍니다
- 데이터 무결성: HTTPS는 전송된 데이터가 중간에서 변경되지 않았음을 보장합니다. 즉, 데이터가 도중에 변조되지 않도록 보호합니다
HTTP와 HTTPS의 주요 차이점은 보안으로
HTTP는 데이터가 암호화되지 않아서 제3자가 데이터를 쉽게 엿볼 수 있지만
HTTPS는 이를 막기 위해 SSL/TLS 암호화를 사용한다
특히 개인 정보나 금융 거래와 같은
민감한 정보를 다루는 웹사이트에서 필수적으로 사용하는 걸 볼 수 있다
HTTPS의 대칭키와 비대칭키 암호화
대칭키 암호화와 비대칭키 암호화를 함께 사용하여 데이터를 안전하게 전송한다
이 두 가지 암호화 방식은 각기 다른 특성을 가지고 있으며,
HTTPS에서 보안과 성능을 모두 보장하는데 중요한 역할을 한다
비대칭키 암호화 (처음 연결할 때)
- 서버에서 공개키를 클라이언트로 전송
- 클라이언트는 이 공개키로 비밀 키(세션 키)를 암호화해서 서버에 전송
- 서버는 자신의 비공개키로 그 비밀 키를 복호화
이때 공개키로 암호화한 데이터는 오직 비공개키로만 풀 수 있다
그래서 키를 안전하게 주고받을 수 있게 된다
대칭키 암호화 (데이터를 실제로 주고받을 때)
- 위에서 교환한 비밀 키(세션 키)를 이용해 데이터를 암호화하고 복호화 작업
빠르고 효율적이라 실제 데이터는 이렇게 암호화되어서 전송된다
'OZ' 카테고리의 다른 글
[OAuth2.0] 카카오 / 네이버 로그인 (1) | 2025.02.10 |
---|---|
[OAuth2.0] 개념 (0) | 2025.02.09 |
[React] 번들링과 코드스플리팅 (0) | 2025.01.12 |
[React] 최적화 (0) | 2025.01.12 |
[Raect] Redux (0) | 2025.01.11 |