새로운 4패스 키 합의 프로토콜
초록
이 논문은 한 번의 일방향 함수와 특정 방정식 시스템의 계산적 난이도에 기반한 4패스 키 합의 프로토콜을 제안한다. 공개 매트릭스와 무작위 비밀값을 이용해 양측이 동일한 비밀값 g를 도출하지만, 실제 보안성은 초고밀도 배낭 문제와 퍼뮤테이션 추정 문제에 의존한다. 저자는 이 문제의 해결에 Ω(2^{ε√n log n}) 연산이 필요하다고 추정하지만, 구체적인 하한이나 공격 분석은 부족하다.
상세 분석
본 프로토콜은 n×n 매트릭스 C와 소수 p, 그리고 다항식 시간에 계산 가능한 일방향 함수 h를 사전 합의한다. Alice와 Bob은 각각 비밀 원소 α, β와 n개의 비트 t_i, s_i, 그리고 무작위 퍼뮤테이션 σ, ρ를 선택한다. 첫 번째 라운드에서 Alice는 μ_j = ∑{i=1}^n t_i c{i,j}+σ(j)·α 를 계산해 전송하고, Bob은 ν_i = ∑{j=1}^n s_j c{i,j}+ρ(i)·β 와 τ_A = ∑{j=1}^n s_j μ_j 를 전송한다. 이후 Alice는 τ_A−kα 에 대해 h를 적용한 값들을 n(n−1)/2 개 전송하고 τ_B = ∑{i=1}^n t_i ν_i 를 보낸다. Bob은 τ_B−lβ 에 대해 h를 적용한 리스트와 비교해 일치하는 (k₀,l₀)를 찾고 k₀을 Alice에게 알려준다. 양측은 g = τ_A−k₀α = τ_B−l₀β 를 공유한다.
정당성은 식 (5), (6) 에서 τ_A와 τ_B가 각각 t_i·s_j·c_{i,j} 의 합에 α·k′, β·l′ 를 더한 형태임을 이용한다. k′, l′ 은 0 ≤ k′, l′ ≤ n(n−1)/2 이므로 반드시 매칭되는 (k₀,l₀)가 존재한다. 계산 복잡도는 μ_j, ν_i, τ_A, τ_B 계산에 O(n²) 연산이 필요하고, 해시 리스트 정렬에 O(n² log n) 가 추가된다.
보안성은 두 가지 난제에 의존한다. 첫째, 일방향 함수 h가 충돌을 찾기 어렵고, 입력을 역추적할 수 없다는 가정이다. 그러나 h는 단순히 비트 문자열을 출력하는 함수일 뿐이며, 충돌 저항성에 대한 명시적 요구가 없으므로 실제 구현에 따라 취약점이 존재할 수 있다. 둘째, 공격자는 공개된 (μ_j), (ν_i), τ_A, τ_B, 그리고 h(τ_A−kα) 리스트를 이용해 비밀 비트 t_i, s_i, 퍼뮤테이션 σ, ρ, 그리고 α, β 를 복원하려 한다. 이는 본질적으로 초고밀도 배낭 문제와 숨겨진 퍼뮤테이션 추정 문제로 귀결된다. 초고밀도(밀도 = n / log p → ∞) 배낭은 일반적으로 격자 기반 알고리즘(LLL, BKZ)으로 쉽게 해결 가능하므로, “어려움”에 대한 근거가 약하다. 또한 퍼뮤테이션을 추정하기 위한 시도는 O(p) 혹은 O(n!) 수준의 탐색을 요구하지만, 식 (7)과 추가 선형 방정식들을 결합하면 선형 대수학적 접근이 가능할 여지가 있다.
저자는 “Ω(2^{ε√n log n}) 연산이 필요하다”는 추정만을 제시하고, 구체적인 하한 증명이나 실험적 검증을 제공하지 않는다. 따라서 현재 형태의 프로토콜은 보안 증명 없이 설계된 것으로 평가되며, 특히 초고밀도 배낭과 퍼뮤테이션 추정 문제에 대한 기존 연구 결과를 고려하면 실용적인 공격이 존재할 가능성이 높다.
댓글 및 학술 토론
Loading comments...
의견 남기기