SE 03) 4. 기타 대칭키 암호 알고리즘
(1) 국제 암호 알고리즘
1) IDEA (Interntional Data Encryption Algorithm)
① DES를 대체하기 위해 스위스 연방기술 기관에서 개발한 알고리즘으로 128비트 키, 64비트 블록 암호로 Feistel 구조를 변형하였다. (IDEA가 Feistel과 SPN의 중간 형태인 Lai-Massey Scheme)
② 8라운드에 걸쳐 데이터를 변환하고 마지막에 한 번 더 키를 작용시켜 64비트 암호문을 생성하기 때문에 보통 8.5라운드라고 말한다. IDEA는 DES와 달리 S-box를 사용하지 않고, 대수적 구조가 서로 다른 연산을 교대로 사용하여 암호학적 강도를 증가시켰다.
③ 현재까지 특별한 분석 방법이 알려지지 않아 DES에 비해 안전한 것으로 판단되고 있으며, PGP(Pretty Good Privacy)의 데이터 암호 알고리즘으로 채택되어 사용되고 있다. (DES보다 2배 정도 빠르고, 무차별 공격에 더욱 효율적으로 대응)
2) RC5
(2) 국내 암호 알고리즘
1) SEED
① 1999년 한국정보 진흥원(현 한국인터넷 진흥원)과 국내 암호 전문가들이 함께 개발한 알고리즘으로 인터넷, 전자상거래, 무선 통신 등에서 공개될 경우 민감한 영향을 끼칠 수 있는 중요 정보 및 개인 정보를 보호하기 위한 대칭키 알고리즘이다.
② 128비트 비밀키에서 생성된 16개의 64비트 라운드 키를 사용하여 총 16회의 라운드를 거쳐 128비트의 평문(plaintext) 블록을 128비트 암호문(ciphertext) 블록으로 암호화 하여 출력하는 방식이다. (2009년 128비트 키를 사용하는 SEED-256으로 확정되어 보다 강력한 암호화 능력 제공)
③ SEED의 F 함수는 수정된 64비트 Feistel 형태로 구성된다.
2) ARIA (Academy Research Institute Agency)
① 전자 정부 구현 등으로 다양한 환경에 적합한 암호화 알고리즘이 필요하게 됨에 따라 국가 보안 기술 연구소(NSRI)* 주도로 학계, 국가 정보원 등의 암호 기술 전문가들이 힘을 모아 개발한 국가 암호화 알고리즘이다.
② ARIA는 개발팀이 Academy(학계), Research Institute(연구소), Agency(정부기관)로 구성 되었음을 의미하며 학·연·관이 공동으로 개발한 정보 보호 핵심 기술임을 함축하고 있다.
③ ISPN(Involutional SPN) 구조의 128비트 블록 암호로 128비트, 192비트, 256비트의 3종류의 키 사용을 제공하며 키의 길이에 따라 ARIA-128, ARIA-192, ARIA-256으로 구분한다.
④ ARIA의 입출력 크기와 사용 가능한 키 크기는 미국 표준 블록 암호인 AES와 동일하다.
* NSRI (National Security Research Institute)
- 대한민국의 정보 보호 전문 연구기관으로 2000년에 설립되었으며 한국 전자 통신 연구원의 부설 연구소.
3) HIGHT (HIGh security and light weigHT)
4) LEA (Lightweight Encryption Algorithm)
① LEA는 2012년 국가 보안 기술 연구소가 개발한 '128bit 경량 고속 블록 암호 알고리즘' 이다. LEA는 현재 가장 많이 쓰이는 미국 연방 표준 알고리즘 AES(Advanced Enctyption Standard)보다 1.5~2배 빠르다.
② 다양한 정보 보호 서비스에서 대용량 데이터를 빠르게 처리하거나 스마트폰 보안, 사물 인터넷(IoT) 등 저전력 암호화에 널리 쓸 수 있다.
③ 특히 단시간에 배치작업을 완료해야 하는 금융 분야에 강하다. LEA는 AES를 개발한 벨기에 루벤대학 COSIC 연구소에서 안전성을 검증받았다.
구분 | 개발 국가 |
개발 년도 |
특징 | 블록 크기 |
키의 길이 | 라운드수 |
DES | 미국 | 1972 | NIST에서 표준으로 공표(1977년) | 64 | 56 | 16 |
IDEA | 유럽 | 1990 | PGP채택 | 64 | 128 | 8 |
Rijndael | 벨기에 | 1998 | 2000년 AES알고리즘으로 선정 | 128 | 128, 192, 256 | 10, 12, 14 |
SEED | 한국 | 1999 | 한국 표준 블록 암호 알고리즘 | 128 | 128, 256 | 16, 24 |
CRYPTON | 한국 | 1998 | AES 후보 중 하나 | 128 | 128, 192, 256 | 12 |
RC5 | 미국 | 1994 | 알고리즘이 간단, 속도가 빠름 | 32, 64, 128 | 0-2040 | 1-255 |
REAL | 일본 | 1987 | S/W구현에 적합 | 64, 128 | 64 | 4, 8, 32 |
MISTY | 일본 | 1996 | 차분/선형 공격에 안전성 증명 구조 | 64 | 128 | 8 |
SKIPJACK | 미국 | 1990 | Fortezza 카드에 사용 | 64 | 80 | 32 |