SEED 암호화/복호화
한국 표준 128비트 블록 암호(KISA)
알고리즘 정보
참고: SEED는 고정 128비트 키를 사용합니다(128/192/256을 지원하는 AES와 다름)
참고: ECB, CBC, CFB, OFB 모드를 지원합니다
SEED 암호에 대하여
SEED는 1998년 한국 인터넷진흥원(KISA)과 전자통신연구원(ETRI)이 공동 개발한 128비트 블록 대칭 암호입니다. 한국 국가 표준(KS X 1213, 2003년), RFC 4269(SEED 알고리즘, 2006년), RFC 5469(TLS 암호 스위트, 2009년)로 표준화되었습니다. 단일 128비트 키를 사용하는 16라운드 Feistel 네트워크입니다. 한국 전자정부(G4C)와 금융 분야 PKI 암호화를 위한 필수 암호로 설계되었습니다.
| 알고리즘 | SEED |
| 표준 | KISA / ISO 18033-3 / RFC 4269 |
| 키 크기 | 128 bits (fixed) |
| 블록 크기 | 128 bits |
| 라운드 | 16 |
| 모드 | ECB / CBC / CFB / OFB |
| 패딩 | PKCS7 / Zero / ISO10126 / ANSI X.923 / None |
| 출처 | Korea (KISA) |
| 연도 | 1998 |
주요 특징
- 128비트 블록, 128비트 키만 지원: DES/3DES/Blowfish 등 64비트 블록 암호의 Sweet32 생일 경계 공격 취약성을 제거합니다. 192비트 또는 256비트 SEED 변체는 없으며, ARIA-256이 후계 암호입니다.
- 16라운드 Feistel + G함수 + S박스: 각 라운드에서 4개의 8비트 S박스(S01/S02)와 32비트 산술 연산을 포함하는 G함수로 구성된 F함수 사용. 키 스케줄은 4개의 32비트 초기 키 워드에서 32개의 라운드 키 워드(라운드당 2개)를 생성합니다.
- 한국 국가 표준 + RFC 표준화: KS X 1213(2003년)으로 전자정부(G4C) 및 금융 분야 규정 준수에 필수. RFC 4269는 알고리즘을 문서화, RFC 5469는 IANA TLS 암호 스위트(0x0096, 0x0099)를 정의합니다.
- KCMVP(국가 암호 모듈 검증 프로그램) 인증: 한국 정부 조달에서 요구하는 KCMVP 인증 모듈의 기준 암호. ARIA와 함께 국내 시장 정보보안 제품의 필수 옵션입니다.
- 지원 암호 모드: ECB, CBC, CFB, OFB, CTR. 인증 암호화를 위해 SEED-CBC에 HMAC-SHA-256을 결합하거나 별도 MAC 레이어를 사용하세요(공식 한국 표준에서 내장 AEAD 모드 미정의).
일반적인 사용 사례
보안 고려사항
- 고전적 암호 분석에 대한 내성: 차분 암호분석(Biham-Shamir) 및 선형 암호분석(Matsui)에 대한 명시적 내성 설계. S박스 설계(S01/S02)는 높은 비선형성을 보장하며 F함수는 128비트 블록에 대한 완전한 눈사태 효과를 제공합니다.
- 최선의 발표된 암호 분석 결과: Hermelin과 Nyberg의 관련 키 공격(2010년)은 SEED 전체 라운드에 대해 약 2^125의 복잡도를 달성합니다. 2^128 무차별 대입 한계보다 약간 낮지만 실제로는 악용 불가능합니다. 2025년 현재 알려진 모든 공격에 대해 안전합니다.
- 256비트 키 변체 없음: SEED는 128비트 키만 제공합니다. 128비트 보안 여유는 현재 고전적 컴퓨팅 위협을 초과하지만, 양자 후 보안 권장 사항은 장기적 기밀성을 위해 256비트 키를 제안합니다. 한국 시스템의 양자 후 전환을 위해 ARIA-256(RFC 5794)이 지정된 후계 암호입니다.
- CBC 모드 및 인증 암호화 요건: SEED-CBC는 패딩 오라클 공격(TLS의 POODLE 유사)에 취약하며 인증이 필요합니다. 데이터 무결성을 위해 항상 SEED-CBC와 HMAC-SHA-256을 결합하세요. RFC 5469의 TLS SEED 스위트는 SHA-1 MAC을 사용하며, SHA-1 충돌 저항성이 깨진(SHAttered, 2017년) 이후 레거시 조합입니다.
- ARIA(RFC 5794, 2010년)는 현대적 후계 암호입니다: 국가보안연구원(NSRI)이 2003년에 개발, 128/192/256비트 키 지원, AES 유사 SPN 구조. RFC 5794 + RFC 6209(TLS ARIA 스위트). 새로운 한국 시스템 배포에는 SEED-CBC보다 ARIA-256-GCM을 선호하세요.