새로운 클럭 제어 스트림 암호 PALS 설계와 평가
초록
본 논문은 256비트 메인키와 32비트 메시지키를 이용해 8개의 프라임 길이 LFSR을 비정규 클럭으로 구동하는 조합 생성기와 메모리를 결합한 스트림 암호 PALS를 제안한다. 설계 목표는 최대 주기, 높은 선형 복잡도, 상관면역, 비선형성 및 통계적 무작위성을 확보하는 것이며, 이를 위해 스크램블‑5 함수, S‑박스 기반 확산, 그리고 메모리 기반 상관면역을 적용한다. 논문은 설계 원리와 구현 흐름을 서술하지만, 구체적인 보안 증명이나 실험적 평가가 부족하다.
상세 분석
PALS 설계는 크게 네 부분으로 나뉜다. 첫째, 키 관리 단계에서는 256비트 메인키와 32비트 메시지키를 결합해 1600비트 초기벡터(IV)를 생성한다. 여기서는 Scram‑5라는 5단계 반복 S‑박스·P‑박스 변환을 사용해 메인키와 메시지키를 섞고, 최종적으로 XOR 연산으로 세션키를 만든다. 이 과정은 ‘아발란체 효과’를 주장하지만, 실제 비트‑별 확산 정도와 비선형성 측정이 제시되지 않아 충분히 검증되지 않았다.
둘째, 메시지키 생성기는 32비트 LFSR을 사용해 최대 4.25년 동안 중복 없이 키를 제공한다는 계산을 제시한다. 그러나 LFSR의 다항식이 원시(polynomial)임을 밝히면서도, 실제 운영 환경에서 키 재사용 위험이나 재동기화 비용을 논의하지 않는다.
셋째, 초기벡터 생성은 256비트 LFSR에 4개의 8×8 S‑박스를 삽입해 피드백에 적용하고, 초기 320비트를 폐기한 뒤 1600비트를 실제 IV로 사용한다. 여기서 S‑박스 선택 로직이 ‘95% 확신’이라는 표현으로 제시되지만, 통계적 테스트 결과나 충돌 확률에 대한 정량적 분석이 빠져 있다.
넷째, 핵심 keystream generator는 길이가 서로 소인 8개의 LFSR(239,163,223,181,199,173,193,229)을 비정규 클럭 방식으로 구동한다. 클럭 제어는 두 그룹의 LFSR 출력을 XOR해 2비트 인덱스로 S‑박스를 선택하고, 선택된 S‑박스의 출력을 다시 클럭 제어에 활용한다는 구조다. 이 설계는 메모리 기반 상관면역을 도입해 상관 공격을 방어하려는 의도지만, 메모리 비트 m의 크기와 실제 복잡도 감소 효과를 정량화한 부분이 부족하다. 논문은 LFSR 조합에 대한 선형 복잡도와 주기를 ‘최대’라고 주장하지만, 구체적인 수식이나 실험적 주기 측정값을 제시하지 않는다.
보안 분석에서는 상관면역, 높은 비선형성, 알제브라적 차수 등을 만족한다고 주장하지만, 실제 알려진 공격(예: fast correlation attack, algebraic attack, cube attack)에 대한 복합적인 복잡도 추정이 부실하다. 특히, ‘LSCA2 알고리즘 복잡도 O(2^{k+m})’를 회피하기 위해 m을 최소화한다는 논리는 설계 선택을 정당화하기엔 부족하고, m값이 작을 경우 여전히 공격이 실현 가능할 가능성을 배제하지 않는다.
또한, 구현 효율성에 대한 언급이 거의 없으며, 1600비트 상태와 복잡한 S‑박스·스크램블 연산이 실제 하드웨어/소프트웨어에서 어느 정도의 처리량을 보이는지 전혀 제시되지 않는다. 따라서 PALS가 ‘금융 암호화에 적합’하다는 결론은 실용적인 성능·보안 평가 없이 추정된 것으로 보인다.
전반적으로 PALS는 기존 클럭 제어 조합 생성기의 구조를 확장하고 메모리 기반 상관면역을 도입한 점은 흥미롭지만, 설계 파라미터 선택 근거, 보안 증명, 실험적 검증이 부족해 학술적·산업적 채택을 평가하기엔 불충분하다.
댓글 및 학술 토론
Loading comments...
의견 남기기