대칭키 암호화 알고리즘
대칭키 암호화는 암호화와 복호화에 동일한 키 를 사용하는 방식입니다. 키가 하나만 존재하므로 키 관리가 매우 중요하지만, 암호화 속도가 빠르다는 장점이 있습니다.
대칭키 암호화는 크게 블록 암호화와 스트림 암호화로 나뉩니다:
- 블록 암호화: 데이터를 고정된 크기의 블록으로 나누어 암호화 (DES, AES, SEED, IDEA, Skipjack)
- 스트림 암호화: 데이터를 비트 단위로 순차적으로 암호화 (RC4, ChaCha20 등)
주요 대칭키 알고리즘 비교
| 알고리즘 | 주요 특징 |
|---|---|
| DES | 최초 표준, IBM 개발, 56비트, 현재 취약함 |
| AES | DES 성능 문제 극복, NIST 개발, 128비트, 널리 사용 |
| SEED | 국산 알고리즘, KISA 개발, 128비트, 한국 최초 표준 |
| IDEA | 초기 블록 암호화, 스위스 개발, 128비트 키, 64비트 블록 |
| Skipjack | 음성 암호화, NSA 개발, 80비트 키, 64비트 블록, 전화기 적용 |
핵심 요약:
- DES: 최초의 표준이었지만, 키 길이가 짧아 현재는 취약합니다.
- AES: 현존하는 가장 안전하고 널리 쓰이는 대칭키 알고리즘입니다.
- SEED: 최초의 국산 대칭키 알고리즘입니다.(2004년 ARIA로 대체)
- IDEA: 초기 블록 암호화 알고리즘으로 스위스에서 개발되었으며, 특허로 인해 사용이 제한적입니다.
- Skipjack: NSA에서 개발한 알고리즘으로 음성 암호화에 주로 사용되며, 전화기 등에 적용됩니다.