경량 스트림 암호 COZMO
초록
본 논문은 기존 경량 스트림 암호인 A5/1과 Trivium을 결합하여 새로운 암호 COZMO를 제안한다. Trivium이 생성한 키스트림을 A5/1의 레지스터 입력으로 사용하고, 두 알고리즘의 구조적 특성을 혼합함으로써 개별 암호가 갖는 취약점을 보완하고 난수성 및 보안성을 향상시킨다. NIST 통계 테스트 결과, 제안된 COZMO는 기존 두 암호보다 우수한 무작위성을 보이며, 구현 비용도 낮은 편이다.
상세 분석
COZMO는 두 개의 경량 스트림 암호인 Trivium(93‑84‑111 비트 3개의 비선형 피드백 시프트 레지스터)과 A5/1(19‑22‑23 비트 3개의 레지스터) 를 순차적으로 연결한 하이브리드 구조이다. 먼저 Trivium은 80‑비트 비밀키와 80‑비트 초기화 벡터(IV)를 이용해 1152 클럭(초기화 단계) 후 64 비트의 키스트림을 생성한다. 이 64 비트는 A5/1의 세 레지스터에 입력으로 사용되며, A5/1은 기존과 동일하게 다수결(majority) 함수와 선택된 비트들의 XOR을 통해 레지스터를 시프트한다. 그러나 COZMO에서는 A5/1의 시프트 연산에 Trivium에서 나온 비트를 추가 XOR함으로써 레지스터 내부 상태를 외부 난수와 결합한다. 구체적으로 레지스터 A(13,16,17,18 비트), B(20,21 비트), C(7,20,21,22 비트)를 XOR한 값을 각각 p1, p2, p3이라 정의하고, 다수결에 따라 다수에 속한 레지스터만 오른쪽으로 한 비트 시프트한다. 시프트된 첫 번째 비트는 해당 레지스터의 p값 혹은 Trivium 비트(z_i) 로 교체된다. 최종 키스트림 비트는 세 레지스터의 마지막 비트들의 XOR 결과이다.
이 설계는 다음과 같은 보안적 장점을 제공한다. 첫째, Trivium의 비선형 피드백 구조와 A5/1의 다수결 기반 비선형성을 동시에 활용함으로써 단일 암호에 대한 통계적·수학적 공격(예: 차분 공격, 상관 공격)의 성공 확률을 크게 낮춘다. 둘째, Trivium에서 출력된 비트가 A5/1 레지스터에 직접 주입되므로, A5/1의 초기 상태가 전적으로 0으로 시작하더라도 외부 난수에 의해 빠르게 혼합된다. 이는 기존 A5/1이 초기 키에 의존해 취약점이 노출되는 문제를 완화한다. 셋째, 두 암호의 레지스터 길이가 서로 다르고, 피드백 위치도 겹치지 않으므로 내부 상태 복구를 위한 연산 복잡도가 크게 증가한다.
논문은 NIST SP 800‑22 통계 테스트 스위트를 이용해 Frequency, Cumulative Sum, Approximate Entropy, Linear Complexity, Serial, Longest Run of Ones, Runs 등 7가지 테스트를 수행하였다. COZMO의 모든 p‑값이 0.01보다 크게 나타나 1 % 유의 수준에서 귀무가설을 기각하지 못했으며, 이는 난수성 측면에서 기존 A5/1·Trivium보다 우수함을 의미한다. 또한 구현 복잡도와 하드웨어 자원 소모는 각각의 개별 암호와 비슷하거나 약간 증가했지만, 경량 임베디드 환경에서 충분히 적용 가능하다.
하지만 설계상의 몇 가지 한계도 존재한다. 첫째, Trivium 초기화 단계(1152 클럭)와 A5/1 레지스터 초기화(0) 사이의 동기화 문제가 명확히 정의되지 않아 실시간 스트리밍 환경에서 지연이 발생할 수 있다. 둘째, 다수결 함수가 여전히 A5/1의 핵심이므로, 기존에 알려진 다수결 기반 공격(예: 시간‑복잡도 O(2^20) 수준의 공격)에 대한 저항성을 별도 분석이 필요하다. 셋째, 제안된 알고리즘은 두 암호를 단순히 직렬 연결한 형태이므로, 전체 키 공간이 2^160(80 bit 키 + 80 bit IV) 수준에 머물며, 키 관리 측면에서 추가적인 보강이 요구된다.
전반적으로 COZMO는 경량 암호 분야에서 기존 두 암호의 장점을 결합한 새로운 설계 시도로, 난수성 및 통계적 보안성에서 긍정적인 결과를 보였으며, 임베디드 시스템·IoT 디바이스 등에 적용 가능성을 제시한다. 향후에는 보다 정량적인 보안 분석(예: 차분·선형·상관 공격 시뮬레이션)과 하드웨어 구현 최적화가 필요하다.
댓글 및 학술 토론
Loading comments...
의견 남기기