대칭키 vs 비대칭키(공개키) 방식, 쉽게 비교하기
암호화 방식은 크게 대칭키(비밀키) 와 비대칭키(공개키) 로 나뉘어요. 핵심 차이는 “키를 하나 쓰냐(대칭), 두 개 쓰냐(비대칭)” 입니다.
한눈에 보는 비교표
| 구분 | 대칭키 방식 (Symmetric Key) | 비대칭키 방식 (Asymmetric/Public Key) |
|---|---|---|
| 사용하는 키 | 1개(같은 키) 로 암·복호화 | 2개(공개키/개인키) 로 암·복호화/서명 |
| 키 공유 | 사전에 안전하게 공유 필요(키 분배가 문제) | 공개키는 공개 가능, 개인키만 안전하게 보관 |
| 속도/성능 | 빠름(대용량 데이터에 유리) | 느림(연산이 무거운 편) |
| 주 사용처 | 파일/디스크 암호화, VPN, 대용량 데이터 보호 | 키 교환, 전자서명, 인증서(PKI), HTTPS |
| 대표 알고리즘 | AES, SEED, ARIA, DES(구식) | RSA, ECC(ECDSA/ECDH), ElGamal |
| 장점 | 속도가 빠르고 구현/처리가 효율적 | 키 분배 문제를 줄이고, 전자서명/인증에 적합 |
| 단점 | 키가 노출되면 전부 위험, 키 분배/관리 어려움 | 느리고 키/인증서 관리 등 구조가 복잡 |
| 무결성/부인방지 | 단독으로는 한계(보통 MAC/HMAC 필요) | 전자서명으로 부인방지 가능 |
실제로는 둘을 “같이” 쓴다 (시험에도 자주 나옴)
HTTPS를 예로 들면 보통 이렇게 굴러가요.
-
비대칭키로: 서버 인증 + 안전하게 세션키(대칭키) 교환
-
대칭키로: 실제 데이터(웹 트래픽) 빠르게 암호화
즉,
-
비대칭키 = 시작할 때 안전하게 연결 만들기(키 교환/인증)
-
대칭키 = 연결 후에 빠르게 데이터 암호화(대용량 처리)
암기용 한 줄 요약
-
대칭키: 빠르다 ↔ 키 공유가 어렵다
-
비대칭키: 키 공유는 편하다 ↔ 느리다(대신 서명/인증 가능)