NIST 표준 타원곡선의 트윈 존재 확률과 NSA 선택 의혹
초록
본 논문은 NIST가 표준화한 P‑224, P‑256, P‑384 소수체 위에서 소수 차수와 그 트위스트도 소수 차인을 갖는 “elliptic twin” 곡선의 빈도를 수치 실험으로 조사한다. 2^20개의 j‑불변량을 전부 탐색한 결과, 소수 차수 곡선 대비 트윈 비율은 약 0.8%~1.8% 수준이며, 99% 신뢰구간은 0.5%~1%이다. 특히 P‑384가 트윈임을 고려하면, 무작위로 소수 차수 곡선을 선택했을 때 트윈이 될 확률이 낮아 NSA가 균등 무작위 선택이 아닌 별도 기준을 적용했을 가능성을 제시한다.
상세 분석
이 연구는 타원곡선 암호학에서 “twist‑security” 라는 개념을 정량화하려는 시도로, 소수 차수 곡선과 그 비자명 이차 트위스트가 동시에 소수 차수를 가질 확률을 구체적인 유한체(특히 NIST 표준 소수 P‑224, P‑256, P‑384)에서 실험적으로 측정한다. 저자는 두 가지 실험 방식을 사용한다. 첫 번째는 j‑불변량을 0 ~ 2^20 범위에서 전부 순회하면서 각 곡선의 점 개수를 점‑카운팅하고, 그 결과가 소수인지와 트위스트의 점 개수가 소수인지를 검사한다. 이 과정에서 소수 차수 곡선(Nπ)과 elliptic twin(Nπ′)의 절대 수를 기록한다. 결과는 P‑224에서 Nπ=2790, Nπ′=31(비율≈1.1 × 10⁻²), P‑256에서 Nπ=1956, Nπ′=15(≈0.8 × 10⁻²), P‑384에서 Nπ=1131, Nπ′=20(≈1.8 × 10⁻²)이다. 두 번째 실험은 무작위 j‑값을 생성해 트윈이 나타날 때까지 반복하는 “waiting‑time” 방식으로, 441개의 트윈을 발견해 전체 확률에 대한 부트스트랩 추정을 수행했다. 이로부터 p(π′|π)≈0.005~0.01의 99 % 신뢰구간이 도출되었다.
통계적으로 보면, 소수 차수 곡선 중 약 1 % 정도만이 트윈 특성을 가진다. 따라서 P‑384가 트윈이라는 사실은 무작위 선택 가정 하에 약 1 % 수준의 사건이며, “NSA가 균등 무작위로 선택했다”는 가설을 95 % 이상 기각할 수 있다. 저자는 이 결과가 NSA가 곡선 선택 시 추가적인 안전 기준(예: 트위스트 보안)을 적용했을 가능성을 시사한다고 주장한다.
또한, P‑224의 트위스트가 58‑비트 보안만 제공한다는 점을 들어, 트위스트 보안이 반드시 실용적인 보안 향상을 의미하지 않을 수 있음을 경고한다. 논문은 현재 실험이 제한된 j‑범위와 계산 자원에 의해 제약받았으며, 더 큰 필드(예: M‑521)에서는 계산 복잡도가 급증한다는 점을 인정한다. 향후 연구 계획으로는 비소수 차수 곡선의 군 구조 분포와, IETF 후보 곡선(M‑255, H‑448) 등에 대한 트윈 분석을 제시한다.
이 논문은 Shparlinski‑Sutantyo(2014)의 이론적 밀도 결과와 비교했을 때, 실제 고정 필드에서의 빈도가 이론과 크게 차이 나지 않음을 암시한다. 그러나 표본 크기가 작고, j‑불변량과 트윈 발생 확률 사이의 독립성 가정이 완전히 검증되지 않았으므로, 결론을 내리기 전에 더 광범위한 실험이 필요하다.
댓글 및 학술 토론
Loading comments...
의견 남기기