🔎 HTTPS, SSH, SSL, TLS... 이 단어들, 다 비슷비슷해 보이지 않나요?
하지만 그 안엔 우리가 모르는 ‘진짜 자물쇠’, 즉 암호화 알고리즘이 숨어 있어요.
이 글에서는 SSL, TLS, SSH가 단순한 보안 통신 방식이 아니라,
**암호화 기술(대칭, 비대칭, 해시)**이 어떻게 실제로 조합되어 작동하는지,
택배 상자와 열쇠 비유를 통해 쉽고 정확하게 알려드릴게요.
📦 먼저 비유로 이해해보기 – 자물쇠와 택배
- 📬 HTTP는 그냥 택배 상자야.
→ 누가 열어보면 내용이 그대로 보여. - 🔐 HTTPS는 금고에 자물쇠 걸어 보낸 택배야.
→ 금고 안을 볼 수 없고, 누가 훼손했는지도 알 수 있어.
이 자물쇠(보안 기술)가 바로 SSL, TLS, SSH,
그리고 그 안에서 자물쇠를 구현하는 진짜 기술이 암호화 알고리즘이에요.
🧠 암호화 알고리즘이란?
정보를 이해할 수 없는 암호문으로 바꿔주는 공식이자,
그걸 다시 원래대로 풀 수 있게 해주는 보안 기술이에요. 3가지로 나뉘어요:
| 대칭키 | 암호화/복호화에 같은 키 사용 | AES, ChaCha20 |
| 비대칭키 | 공개키로 암호화, 개인키로 복호화 | RSA, ECDSA, Ed25519 |
| 해시 함수 | 데이터를 되돌릴 수 없는 고정 길이로 변환 | SHA-256, SHA-1, MD5 |
🔑 대칭키는 “속도”, 비대칭키는 “보안”, 해시는 “위조 방지”에 강해요.
🔐 SSL / TLS / SSH는 암호화 알고리즘을 조합해서 만든 ‘보안 도구 세트’
이 보안 프로토콜들은 각각의 목적에 맞게 암호화 알고리즘을 조립해서 사용합니다.
자동차에 들어가는 엔진, 브레이크 같은 기술 부품이 암호화 알고리즘이라면,
SSL/TLS/SSH는 전체 자동차 구조라고 생각하면 쉬워요.
🧷 SSL (Secure Sockets Layer)
예전에는 HTTPS를 SSL 기반으로 만들었어요.
하지만 지금은 취약점 때문에 사용되지 않아요.
🔧 포함 알고리즘 예시
| 키 교환 | RSA, DH |
| 대칭 암호화 | AES, RC4 (← 오래되어 취약) |
| 해시 | MD5, SHA-1 |
❗ RC4, MD5, SHA-1 같은 알고리즘은 지금은 안전하지 않기 때문에 금지되어 있어요.
🛡️ TLS (Transport Layer Security)
HTTPS의 현재 표준 보안 프로토콜
브라우저와 서버 사이의 모든 보안 통신이 여기에 기반해요.
🔐 TLS에서 쓰는 알고리즘
| 키 교환 (비대칭) | RSA, ECDHE, DHE |
| 데이터 암호화 (대칭) | AES-GCM, ChaCha20 |
| 무결성 검증 (해시) | SHA-256, SHA-384 |
💡 TLS 비유:
1️⃣ 서버가 공개키로 자물쇠를 보냄
2️⃣ 클라이언트는 그 자물쇠로 세션키를 잠가서 전송
3️⃣ 이후는 세션키(대칭키)로 통신: 빠르고 안전!
🎯 TLS 1.3 특징
- RSA handshake 제거 → ECDHE만 사용
- 더 빠르고 안전함 (중간자 공격 차단)
- SHA-2 계열 해시만 사용 (SHA-1 제거)
🧩 SSH (Secure Shell)
원격 서버 접속할 때 사용하는 보안 통신 프로토콜
예: ssh root@ip 로 접속할 때
🔐 SSH 내부 암호화 구조
역할 알고리즘
| 키 교환 | Diffie-Hellman, ECDH |
| 사용자 인증 | RSA, Ed25519, ECDSA |
| 대칭 암호화 | AES-CTR, ChaCha20 |
| 무결성 확인 | SHA-1, SHA-2 계열 |
🔐 SSH 비유
서버 입장: “나한테 접속하려면 너의 진짜 열쇠(개인키)를 보여줘”
클라이언트 입장: “자 여기 내 열쇠야!”
🔑 인증 후, 같은 키(세션 키)로 빠르게 통신해요.
🔍 SSL vs TLS vs SSH 핵심 비교
항목 SSL TLS SSH
| 목적 | HTTPS(구형) | HTTPS(표준) | 원격 접속, Git, SCP |
| 현재 사용 | ❌ (중단됨) | ✅ (표준) | ✅ (보편적) |
| 비대칭 알고리즘 | RSA, DH | RSA, ECDHE | RSA, Ed25519 |
| 대칭 알고리즘 | AES, RC4 | AES, ChaCha20 | AES, ChaCha20 |
| 해시 알고리즘 | MD5, SHA-1 | SHA-256 이상 | SHA-1, SHA-2 |
| 포트번호 | 443 (HTTPS) | 443 (HTTPS) | 22 (기본) |
🧠 한 문장 정리
SSL, TLS, SSH는 모두 암호화 알고리즘을 내부에 포함한 보안 통신 프로토콜이며,
공개키 암호화 + 대칭키 암호화 + 해시를 조합해서 데이터를 안전하게 전송합니다.
💡 보안 설계 팁
- ✅ 웹사이트는 TLS 1.2 이상, SHA-256 이상 알고리즘 사용 권장
- ✅ SSH 키는 RSA보다 Ed25519, ECDSA가 더 가볍고 안전
- ❌ SSL, SHA-1, RC4, MD5는 이제 보안상 금지
'study' 카테고리의 다른 글
| 네트워크는 어떻게 통신할까? – IP, 포트, 패킷의 개념 (0) | 2025.07.13 |
|---|---|
| [Kubernetes] 마스터 노드가 NotReady였던 이유? containerd cgroup 설정으로 해결! (1) | 2025.07.10 |
| 협업이 쉬워지는 개발 표기법 (2) | 2025.07.04 |
| Nginx에서 Let’s Encrypt로 HTTPS 적용하고, Ingress로 트래픽 넘기기 (0) | 2025.07.02 |
| 인터넷 (0) | 2025.07.01 |