난이도 높은 배낭문제로 만든 공개키 암호체계
본 논문은 난이도가 높은 무작위 배낭문제 인스턴스를 기반으로 하는 세 가지 공개키 암호체계를 제안한다. 키 생성·암호·복호화의 복잡도 분석과 실험 결과를 제시하고, 두 번째 체계에 대해 사설키 복구가 소인수분해와 동일한 난이도임을 증명한다. 또한 LLL 기반 휴리스틱 공격에 대한 저항성을 분석한다.
저자: Laurent Evain
본 논문은 공개키 암호 설계에 있어 NP‑complete 문제인 배낭문제를 직접 활용하는 새로운 접근법을 제시한다. 기존의 메르클‑헬만, 브리클리, 차르‑리베스트 등 대부분의 배낭 기반 암호는 “쉬운 인스턴스 → 난수 사설키” 구조를 사용했으며, 이는 사설키가 존재한다는 사실 자체가 암호문에 숨겨진 구조적 정보를 제공해 공격자가 사설키를 복구하거나 평문을 직접 복원할 수 있게 만든다. 이러한 구조적 약점을 극복하기 위해 저자들은 처음부터 무작위로 생성된, 구조가 전혀 없는 배낭문제 인스턴스 \(w_i\) 를 사용한다. 이때 차원 \(s\) 를 최소 300 이상으로 설정해 저밀도 공격을 방지하고, 밀도 \(d\) 를 1에 가깝게 조정해 기존의 저밀도 기반 CVP·SVP 공격을 무력화한다.
세 가지 암호체계는 모두 동일한 일방향 함수를 기반으로 한다. 이 함수는 큰 정수 \(n_i\) 를 \(q x_i + r_i\) 로 나눌 때, 나머지 \(r_i\) 가 \(q\) 에 비해 매우 작도록 설계된다. 여기서 \(q\) 가 사설키이며, \(r_i\) 가 작다는 조건은 \((M-1)\lambda_i \|\epsilon_i\|_1 < 1\) 형태의 부등식으로 표현된다. 주어진 공개키 \(\{n_i\}\) 로부터 \(q\) 를 복원하려면 사실상 두 소수의 곱을 인수분해하는 문제와 동등한 난이도가 요구된다. 논문은 정리 22를 통해 “다항식 시간 확률적 감소”를 이용해 사설키 복구 문제를 소인수분해 문제에 귀속시킨다. 즉, 사설키를 찾는 알고리즘이 존재한다면, 동일한 확률로 소인수분해도 해결할 수 있다는 강력한 보안 근거를 제공한다.
첫 번째 체계는 가장 직관적인 구현으로, 파라미터 \(\epsilon, q_i, p_i\) 등을 이용해 재귀적으로 행벡터 \(x_i = q_i x_{i-1} + p_i \epsilon_i\) 를 생성하고, 최종 행벡터 \(x_s\) 를 공개키로 사용한다. 암호화는 \(C(m)=x_s \cdot m\) 로 수행되며, 복호화는 역행렬 \(\epsilon\) 와 나머지 연산을 통해 단계별로 원래 메시지를 복원한다. 복잡도는 키 생성 O\( (s^3 \log^2 p)\), 암호화·복호화 O\( (s^2 \log^2 p)\)이며, 공개키와 사설키 모두 O\( (s^2 \log^2 p)\) 바이트 크기를 가진다. 실험 결과, \(s=200\) 에서 키 크기가 약 0.1 MB, 암호화가 0.001 s, 복호화가 0.15 s 정도로 실용적인 성능을 보였다.
두 번째 체계는 첫 번째 체계의 키 길이를 크게 줄이기 위해 파라미터 선택을 최적화한다. 공개키 크기는 O\( (s^2 + s \log p)\) 로 0.03 MB 수준까지 감소하고, 암호화·복호화 시간도 비슷하거나 약간 빠른 수준을 유지한다. 보안 분석에서는 사설키 \(q\) 를 찾는 것이 여전히 소인수분해와 동등한 난이도임을 증명한다(정리 22). 또한, LLL 기반 휴리스틱 공격에 대해 정리 29를 통해 원본 무작위 인스턴스 \(x_0\) 와 변형된 공개키 \(x_1\) 사이의 차이가 공격 성공률이나 실행 단계 수에 실질적인 영향을 주지 않음을 보인다.
세 번째 체계는 전·후 체계의 장점을 혼합한 하이브리드 형태이다. 키 길이는 두 번째 체계와 비슷하지만, 사설키 은닉이 더 정교하게 설계되어 보안성이 더욱 강화된다. 구체적인 복잡도와 성능 수치는 논문에 제시되지 않았지만, 앞선 두 체계와 동일한 일방향 함수와 파라미터 구조를 공유한다.
보안 섹션에서는 먼저 키 길이와 밀도 선택을 통해 저밀도 공격을 회피할 수 있음을 강조한다. 그 다음, 사설키 복구가 소인수분해와 동등함을 정리 22로 증명하고, 사설키가 유일하도록 설계할 경우 공격 난이도가 더욱 증가한다는 실험적 증거를 제시한다. 마지막으로 LLL 기반 공격에 대한 저항성을 정리 29로 입증한다. 이는 공개키가 무작위 배낭 인스턴스와 거의 동일한 보안을 제공한다는 의미이다.
전체적으로 논문은 “난이도 높은 무작위 배낭문제 → 일방향 함수 → 공개키”라는 새로운 설계 패러다임을 제시하고, 복잡도 이론, 보안 감소, 실험적 성능 평가를 종합적으로 제공한다. 기존 배낭 기반 암호가 구조적 약점으로 인해 쉽게 깨지는 반면, 제안된 세 체계는 높은 차원, 밀도 1에 근접한 설계, 그리고 사설키 복구의 소인수분해 동등성을 통해 실질적인 보안성을 확보한다. 또한 키 길이와 실행 시간 사이의 트레이드오프를 명확히 제시함으로써, 다양한 응용 환경에 맞는 선택이 가능하도록 한다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기