새로운 배낭형 공개키 암호의 취약점 분석
초록
Hwang 등은 배낭형 공개키 암호의 밀도를 높이기 위해 순열 결합 알고리즘을 도입했으나, 기본이 되는 Merkle‑Hellman 구조가 여전히 초증가 수열을 포함한다. 본 논문은 이 초증가 특성을 이용해 Shamir의 공격을 적용함으로써 해당 암호체계가 실질적으로 깨질 수 있음을 증명한다.
상세 분석
Hwang et al.가 제안한 암호는 전통적인 Merkle‑Hellman(Knapsack) 방식을 변형한 것으로, 공개키를 생성할 때 ‘순열 결합 알고리즘(Permutation Combination Algorithm)’을 사용해 원래의 초증가 수열을 여러 번 섞어 밀도(density)를 인위적으로 높였다. 이 설계 의도는 저밀도 공격, 특히 Lagarias‑Odlyzko와 같은 저밀도 기반의 복원 공격을 회피하는 데 있다. 그러나 논문은 두 가지 근본적인 결함을 지적한다. 첫째, 초증가 수열 자체가 공개키 변환 과정에서 완전히 사라지지 않는다. 변환 후에도 각 원소는 원래 초증가 수열의 선형 조합 형태를 유지하며, 이는 Shamir가 1982년에 제시한 ‘초증가 구조 복원 공격(Shamir’s attack)’의 적용 가능성을 남긴다. Shamir의 방법은 공개키 행렬의 행/열 간 선형 관계를 이용해 원래의 초증가 수열을 추정하고, 이를 바탕으로 비밀키를 복원한다. 둘째, 순열 결합 알고리즘이 밀도를 높이는 효과는 표면적인 것에 불과하다. 실제 공격자는 변환된 공개키를 정규화하고, 각 원소를 정수 선형 결합 형태로 표현함으로써 원래 초증가 수열의 비율을 추정한다. 이 과정에서 필요한 연산량은 다항식 시간 안에 수렴한다. 또한, 변환 과정에서 사용된 퍼뮤테이션과 조합 파라미터가 공개키와 함께 전송되므로, 공격자는 이 파라미터를 역추적해 원본 초증가 수열을 재구성할 수 있다. 결과적으로, Hwang et al.의 설계는 ‘밀도 증가’라는 겉보기에 강력한 방어 메커니즘을 도입했지만, 근본적인 수학적 구조—특히 초증가 수열—를 변경하지 못했기 때문에 Shamir의 공격에 취약하다. 논문은 실험적으로 128비트 보안 수준을 목표로 한 파라미터 설정에서도 공격이 성공했음을 보여주며, 제안된 암호가 실제 적용 가능성이 낮음을 결론짓는다.