비트쌍과 확률 미로 기반 공개키 암호 체계
초록
본 논문은 비트쌍을 조작 단위로 삼아 다변량 순열 문제와 비정상 부분집합 곱 문제에 기반한 새로운 공개키 암호 체계 JUOAN을 제안한다. 비트쌍 그림자(bit‑pair shadow)의 정의와 특성을 제시하고, 키 생성·암호화·복호화의 세 알고리즘을 설계한다. 복호화의 정확성을 증명하고, 평문 해가 중복될 확률이 거의 0임을 보이며, 정수인수분해, 이산대수, 저밀도 부분합 문제를 효율적으로 풀 수 있다고 가정했을 때의 보안성을 분석한다. 또한 무작위 패딩과 무작위 순열을 이용해 의미론적 보안을 확보하고, 비트쌍 기법이 관련 배낭 문제의 밀도 D를 1 이상으로 높이며 모듈러스 길이를 464, 544, 640 비트로 감소시킴을 확인한다.
상세 분석
JUOAN 암호체계는 기존의 난이도 기반 암호 설계와는 달리 “비트쌍 그림자”라는 새로운 수학적 개념을 도입한다. 비트쌍은 두 개의 연속된 비트를 하나의 조작 단위로 묶어, 각 쌍을 00, 01, 10, 11 네 가지 상태로 표현한다. 이때 그림자는 각 상태에 대응하는 정수 가중치를 부여하고, 전체 평문을 이러한 가중치들의 곱으로 변환한다는 아이디어다. 이렇게 변환된 값은 다변량 순열 문제(MPP)와 비정상 부분집합 곱 문제(ASPP)라는 두 가지 난이도 높은 문제에 매핑된다. MPP는 주어진 다항식 형태의 순열을 역으로 찾는 문제이며, ASPP는 일반적인 부분합 문제와 달리 곱 연산을 사용해 해를 찾는 것이 요구된다. 두 문제 모두 현재 알려진 알고리즘으로는 하위 지수 시간(서브익스포넨셜) 해결법이 존재하지 않는다.
키 생성 단계에서는 큰 소수 p와 q를 선택해 RSA와 유사한 모듈러스 M = p·q를 만든 뒤, 비트쌍 가중치 집합을 무작위 순열과 패딩을 통해 공개키에 포함시킨다. 암호화는 평문을 비트쌍으로 분할하고, 각 쌍에 대응하는 가중치를 곱한 뒤 모듈러 연산을 수행해 ciphertext를 만든다. 복호화는 개인키에 포함된 역순열과 역가중치를 이용해 곱을 역연산함으로써 원래 비트쌍 시퀀스를 복원한다. 논문은 복호화 과정에서 발생할 수 있는 “다중 해” 현상이 확률적으로 거의 0에 수렴함을 수학적으로 증명한다. 이는 비트쌍 가중치가 서로소인 경우와 무작위 패딩이 충분히 길 경우에 한정된다.
보안 분석에서는 세 가지 가정적 공격 모델을 검토한다. 첫째, 정수인수분해가 효율적으로 해결될 경우 M을 분해해 개인키를 복구할 수 있지만, 현재의 양자 저항성 알고리즘을 포함한 모든 알려진 방법은 지수 시간 복잡도를 가진다. 둘째, 이산대수 문제(DLP)를 이용해 가중치 역원을 찾으려는 시도는 모듈러스 크기가 464~640비트 수준이므로 기존 DLP 솔버로는 실현 불가능하다. 셋째, 저밀도 부분합 문제(LDSSP)를 활용한 공격은 비트쌍 기법이 배낭의 밀도 D를 1 이상으로 끌어올려, 저밀도 가정이 깨지게 만든다. 따라서 기존 저밀도 기반 공격은 적용되지 않는다.
추가로 논문은 의미론적 보안(IND‑CPA)을 증명한다. 무작위 패딩과 순열이 매 암호화마다 독립적으로 선택되므로, 동일한 평문이라도 서로 다른 ciphertext가 생성된다. 이는 공격자가 평문과 ciphertext 사이의 통계적 연관성을 추출하는 것을 원천적으로 차단한다. 마지막으로 실험 결과는 모듈러스 길이를 기존 1024비트 수준에서 464~640비트로 크게 축소하면서도 복호화 정확도와 보안 수준을 유지함을 보여준다. 이는 비트쌍 기법이 암호 효율성을 크게 향상시킬 수 있음을 의미한다.