블록 암호는 64 또는 128비트와 같은 짧은 특정 길이의 데이터 블록을 기본 처리 단위로 암호화 또는 복호화를 수행하는 암호기술입니다. 암호문으로부터 평문을 얻는 복호화 과정에서 암호화 과정과 동일한 암호 키(이하 비밀키)를 사용해야 하는 대칭 키 암호기술의 일종이며, 블록 암호 알고리즘 중 하나입니다. 사용 가능한 키 길이는 요구되는 데이터의 보안 강도에 따라 128, 192, 256비트로 구분할 수 있습니다.
3년간의 개발을 통해 2013년에 공개된 128비트 블록암호 LEA는 소프트웨어 환경에서 현재 미국 연방정부 표준 블록 암호인 AES*의 성능을 능가하면서 효과적인 경량 구현이 가능하도록 설계되었습니다. LEA는 당시 새로운 정보통신기술로 주목받고 있던 사물인터넷(IoT) 환경을 구성하는 기기, 네트워크, 서비스, 플랫폼의 경량 및 저전력 운용 특성을 고려하여 설계되었으며, 기술발전에 따라 32 또는 64비트 프로세서를 탑재한 기기의 활용이 증가하고, 기기에 적용되는 보안 기능을 위해 별도의 하드웨어 전용 칩이 아닌 소프트웨어로 구현된 정보보호 시스템이 적용될 것이라는 판단에 근거하여 개발되었습니다. 기존의 설계 목표를 달성하기 위해 기존 대다수 블록 암호 알고리즘의 설계에서 활용되었던 설계기술(비선형 치환 기반의 구조)과는 차별화된 ARX 구조*를 활용한 것이 LEA의 특징입니다. 따라서 LEA는 ARX 구조가 가진 코드 크기 대비 빠른 동작의 장점을 유지하면서, 정량적인 안전성 분석과 병렬처리를 통한 고속화 구현도 가능합니다. 이러한 특성을 통해 LEA는 경량 구현이 요구되는 제한된 자원을 가진 환경뿐만 아니라 많은 양의 데이터를 빠른 속도로 암호화해야 하는 환경에서도 경쟁력을 가지고 있습니다.
2013년 LEA가 개발된 당시, 국내에서 개발한 블록 암호 알고리즘으로 SEED, ARIA, HIGHT가 있었습니다. SEED와 ARIA는 LEA와 같은 128비트 블록 암호 알고리즘으로, DES*나 AES와 같이 범용성을 가지도록 개발되었으나, AES 대비 성능 측면의 장점이 없어, 정책적인 수요 이외에 현재 부각되고 있는 ICBM(IoT, Cloud, Big data, Mobile) 환경에서의 새로운 암호제품 수요 창출이나 경쟁력 강화의 여지를 찾기 어려운 것이 단점입니다. 또한 HIGHT의 경우 국내에서는 하드웨어 경량 환경에 특화된 자체 수요를 찾기 어렵고 이외의 환경에서는 역시 성능 문제를 가지고 있습니다.
반면 LEA는 소프트웨어 환경에서 AES를 능가하는 성능의 경량, 고속 구현이 모두 가능하다는 점에서 기존의 표준 블록 암호 알고리즘과 차별화됩니다.
LEA의 전체 구조와 암ㆍ복호화 과정 자체는 다른 블록 암호 알고리즘과 크게 다르지 않으나 다른 블록 암호 알고리즘과 차별화하는 LEA의 핵심 요소는 라운드 함수입니다. LEA에서 ARX 구조가 적용된 부분이 바로 라운드 함수로, 32 또는 64비트 프로세서에서 최적으로 동작하면서 안전성을 보장할 수 있도록 32비트 단위 연산이 정교하게 배치되었습니다. 라운드 함수는 비밀 키의 길이와 독립적으로 정의되지만, 키 스케줄 함수는 안전성 수준에 따른 라운드 함수 반복 횟수 증가를 고려하여 다른 방식으로 정의되어 있습니다.
‘128비트 블록 암호 LEA’ 표준(이하 LEA 표준)은 블록 암호 LEA를 구현하거나 검증하는데 참조할 수 있는 규격과 참조 구현 값을 정의한 표준입니다. 구체적으로 살펴보면, LEA 표준은 LEA의 전체 구조와 암ㆍ복호화 과정에서 반복 동작하는 라운드 함수, 그리고 라운드 함수의 변화 요소로 작용하는 라운드 키를 생성하는 키 스케줄 함수를 규정하고 있습니다.
LEA의 동작 방식을 규정하고 있는 LEA 표준은 32 또는 64비트 플랫폼 등을 대상으로 고속, 경량, 저전력을 요구하는 소프트웨어 암호제품 및 정보보호 시스템에 다양하게 활용되어 국내 정보통신망의 안전성과 신뢰성을 제고하는 데 기여할 수 있습니다. 특히 LEA 표준은 기존의 국내 표준 블록 암호 알고리즘을 적용하기 어려운 신규 ICBM 환경에서 정보시스템에 대한 기밀성과 무결성 등 주요 정보보호 서비스를 제공하는 데 필요한 암호기술 수요에 선제적으로 대응하고 실제로 활용하는데 필요한 준비 장치입니다.
암호 알고리즘의 우수성은 실제 암호제품에 탑재되어 정보통신망 보안에 활용되었을 때 비로소 가치를 가질 수 있고, LEA가 암호제품 시장에서 실제로 활용되기 위해서 먼저 필요한 것이 표준이었습니다.
암호화된 데이터를 주고받는 사용자들은 LEA를 탑재한 동일 기능의 서로 다른 회사에서 개발한 암호제품을 사용하더라도 데이터를 공유할 수 있어야 합니다. 이러한 상호 운용성을 보장할 수 있게 하는 것이 바로 ‘128비트 블록 암호 LEA’ 표준이었습니다. 표준이 있으면 향후 발생 가능한 기술적/정책적 변화를 반영하여 개정되는 문서를 표준이라는 체계를 통해 공신력을 가지도록 관리할 수 있으며, 이를 LEA를 탑재하는 암호제품 개발, 검증 시 활용할 수 있습니다. 개발자는 구현 과정에서 표준을 참고하여 처리 단계별 중간값과 최종 결과값을 참조 구현 값과 비교하여 LEA가 정확하게 구현되었는지를 확인할 수 있고, LEA가 탑재된 암호제품을 평가하는 기관에서도 LEA 구현 정확성 검증의 첫 단계로 표준에서 제시하는 참조 구현 값과의 일치 여부를 확인할 수 있습니다.
뿐만 아니라 표준을 통해 누구나 최신 규격과 변경 사항들을 쉽게 확인할 수 있다는 장점이 있습니다. 이러한 사항들을 고려하여 알고리즘을 공개한 2013년에 LEA 규격의 국내 표준화를 추진했습니다.
LEA는 그 우수성을 확인하는 것과 동시에 LEA의 안전성 및 투명성에 대해 객관적인 자료를 확보하기 위해 표준화에 앞서 학계 발표를 통해 전문가들의 충분한 검증을 받았습니다. LEA가 ‘백도어를 이용한 암호 알고리즘 부정 사용의 여지가 없다는 것’에 대한 객관적인 보장을 위해, 국가보안기술연구소(NSR)에서는 구체적인 설계안을 도출한 후 국외(벨기에) 암호 전문 연구기관인 COSIC에 알고리즘의 안전성과 성능에 대한 평가를 의뢰했습니다. AES 개발자가 직접 참여한 평가에서, LEA는 “매우 주목할 만한 설계이고 일반 CPU에서의 성능이 매우 인상적이며, 현재까지 알려진 모든 블록 암호 공격 방법에 안전하다”는 결과를 받았습니다.
개발 완료 후 한국정보통신기술협회(TTA) 표준으로 제안하는 과정에서는 국제학회에 발표한 논문과 함께 COSIC의 평가 결과를 같이 제시하여 LEA의 신규성(차별성)과 성능이 탁월함을 인정받았습니다. 특히 ICBM 환경에서 LEA가 AES를 비롯한 기존의 표준 블록 암호 알고리즘 대비 우수한 성능의 소프트웨어 경량/고속 구현이 가능한 장점이 있다는 점이 표준화 회의에서 인정을 받아 이후 원활하게 표준화 작업이 진행되었습니다.
LEA는 2015년 암호 모듈검증(KCMVP) 제도*의 검증대상 암호 알고리즘으로 지정된 이후 2019년 8월 19종의 LEA 적용 암호 모듈이 검증을 통과하였습니다. 이들은 국가, 공공의 정보시스템에 도입되는 소프트웨어 라이브러리 암호제품에 탑재되어 활용되고 있습니다. 공개 암호 라이브러리에 적용된 사례로는 국가보안기술연구소에서 LEA의 이용 활성화를 위해 제작, 배포하는 고속 구현 코드와 공개 암호 알고리즘 라이브러리인 CRYPTO++*이 있습니다. 그리고 LEA를 적용한 단독 소프트웨어 제품으로는 알집(AlZip)이 있습니다. 알집 10.5 버전 이후부터 EGG 압축파일의 암호화 기능에 LEA를 지원하고 있습니다.
LEA는 국내 표준 블록 암호 알고리즘 중에서 가장 우수한 성능을 바탕으로 경량 구현이 가능해야 하는 사물인터넷 환경, 고속으로 동작해야 하는 클라우드와 빅데이터 환경, 그리고 이들을 포괄하는 5G 모바일 환경에 모두 적용 가능합니다. 국내 정보통신 환경에서 ICBM 환경의 비중이 증가함에 따라 LEA의 사용 또한 증가할 것으로 기대되고 있습니다.
또한 향후 암호 모듈검증(KCMVP)을 통과한 암호 모듈이 탑재된 국가ㆍ공공 정보통신망의 정보보호 시스템을 시작으로 민간 영역까지 LEA의 적용이 확대될 때는 LEA는 국산 암호제품의 시장 경쟁력을 강화하는 데 기여할 수 있을 것으로 예상됩니다.LEA가 국제표준(ISO/IEC29192-2)으로 제정됨(2019.10.24)으로써, 향후 LEA를 적용한 국산 암호제품의 해외 시장 확대에도 기여할 것으로 기대하고 있습니다.
LEA의 표준화는 KS 표준화(KSX3246, 2016.10.)에 이어 현재 ISO 표준 제정을 눈앞에 두고 있으며, 알고리즘 자체에 대한 표준화는 마무리되는 단계입니다. 하지만 LEA의 활용성을 제고하기 위해서는 TLS, IPSec과 같이 정보보호 시스템에서 널리 활용되고 있는 각종 암호 프로토콜을 대상으로 LEA를 사용할 수 있도록 하는 방법이 표준으로 제정될 필요가 있습니다. 이러한 표준을 개발하는 기구(IETF)가 기존(ISO)과 다르고 표준화에 참여하는 전문가들의 관심 분야가 실제 제품 개발 및 활용 측면에 집중되어 있어, 지금까지와는 다른 전략을 가지고 단계별로 표준화를 진행할 필요가 있습니다.
정보보호 시스템 전반에서도 다양한 영역에서 블록 암호 알고리즘의 사용이 확대될 전망이기 때문에, 정보보호 시스템 운용 전반의 관련 표준/가이드라인에서 LEA(표준)가 반영될 수 있도록 국내 표준화 전문가들의 관심과 지원이 필요합니다.
표준명 | 표준번호 | 목적 및 내용 |
---|---|---|
128 비트 블록 암호 LEA | TTAK.KO-12.0223 |
|
글과 인터뷰