728x90
📚 Chapter 4.4: HTTPS, SSL, TLS 완전 정복
✅ HTTPS란?
HTTP + SSL/TLS = HTTPS
즉, 웹 통신 내용을 암호화해서 도청/변조/위조를 막는 버전의 HTTP다!
🔓 HTTP vs 🔐 HTTPS 차이
항목 | HTTP | HTTPS |
---|---|---|
암호화 | ❌ 없음 | ✅ 있음 |
포트 | 80 | 443 |
보안 | 낮음 | 높음 |
주소창 | http:// | https:// + 🔒 자물쇠 표시 |
https 주소 접속 = SSL/TLS로 보호된 안전한 통신이라는 뜻!
✅ 그럼 SSL이랑 TLS는 뭔데?
구분 | 설명 |
---|---|
SSL (Secure Sockets Layer) | 옛날 암호화 프로토콜 (현재는 쓰지 않음) |
TLS (Transport Layer Security) | SSL의 업그레이드 버전 (현재 사용 중) |
요즘은 SSL이라고 부르지만 사실상 다 TLS임!
🎯 HTTPS 통신 흐름
클라이언트(브라우저) ↔ 서버 간 암호화된 연결 수립 절차
- 클라이언트 → 서버
- "나 https 접속하고 싶소~" (Client Hello)
- 가능한 암호화 방식 목록 전달 - 서버 → 클라이언트
- "이 중에 이 방식 쓰자~" (Server Hello)
- 서버 인증서 (인증서 + 공개키) 전달 - 클라이언트
- 인증서 유효성 검사 (CA 신뢰 여부, 유효기간 등)
- 공개키로 대칭키 암호화해서 서버에 전송 - 서버
- 받은 대칭키를 개인키로 복호화
→ 이후부터는 대칭키로 통신 시작!
🔑 왜 공개키 → 대칭키로 바꾸나?
이유 | 설명 |
---|---|
공개키 방식 | 안전하지만 느림 |
대칭키 방식 | 빠르지만 초기 키 공유가 불안함 |
→ 그래서 처음만 공개키로 대칭키를 전달하고, 이후엔 빠르고 안전한 대칭키 통신으로 전환!
🛡️ 인증서는 뭐고 왜 필요한가?
"이 서버 진짜 구글 맞아??" 이걸 증명해주는 게 인증서다!
- 인증서는 CA (공인 인증기관)가 발급함
- 브라우저는 신뢰할 수 있는 CA 목록을 갖고 있음
- 인증서 내용:
- 서버 도메인
- 공개키
- 발급자, 만료일
- 서명 (위조 방지)
✅ 인증서 신뢰 안 되면?
→ 브라우저가 "주의 요함" 경고 뿜어냄!
💡 요약 흐름도
1. 클라이언트: HTTPS 요청
2. 서버: 인증서 + 공개키 제공
3. 클라이언트: 인증서 확인 후, 대칭키 암호화하여 전달
4. 서버: 대칭키 복호화 → 통신 시작
→ 이후부터는 대칭키 기반으로 암호화된 통신!
🔐 실무 보안 꿀팁
항목 | 실무 팁 |
---|---|
인증서 만료 체크 | 자동 갱신 or 갱신 알림 설정 |
HSTS | 강제로 HTTPS만 접속하도록 설정 |
Let's Encrypt | 무료 인증서 발급 기관, 실무에서도 많이 씀 |
TLS 1.2/1.3 사용 | TLS 1.0/1.1은 보안 취약, 비추천 |
✅ 정리 요약
개념 | 설명 |
---|---|
HTTPS | HTTP + TLS 암호화 통신 |
SSL/TLS | 보안 프로토콜 (요즘은 TLS) |
공개키 → 대칭키 전환 | 초기엔 안전하게, 이후엔 빠르게 |
인증서 | 진짜 서버임을 증명 + 위조 방지 역할 |
📦 다음 수업 예고 🎓
Chapter 4.5: IDS / IPS – 침입 탐지와 차단 시스템
"누가 몰래 네트워크에 침입하려 한다면?"
그걸 감지하고, 차단까지 하는 보안 시스템의 끝판왕!
728x90
'네트워크' 카테고리의 다른 글
Chapter 5.1. 공인 IP vs 사설 IP – 진짜 차이와 역할 (0) | 2025.04.19 |
---|---|
Chapter 4.5. IDS / IPS – 침입 감지와 차단 시스템 (1) | 2025.04.19 |
Chapter 4.3. 패킷 스니핑 & 방어 전략 (1) | 2025.04.18 |
Chapter 4.2. 프록시(Proxy) vs 리버스 프록시(Reverse Proxy) (0) | 2025.04.17 |
Chapter 4.1. VPN이란 무엇인가? (2) | 2025.04.16 |