물리층 보안을 위한 오류 제어 코딩과 암호의 결합
초록
와이너 와이어탭 채널 모델을 이용해 LFSR 기반 키스트림 암호에 오류 제어 코딩을 적용하면, 수동적 도청자는 두 단계의 이진 대칭 채널을 거치게 된다. 이때 발생하는 추가 비트 오류는 기존의 빠른 상관 공격(Attack A, Attack B)의 성공 확률을 크게 낮추고, 키 복구에 필요한 계산량을 지수적으로 증가시킨다. 논문은 이 현상을 이론적으로 분석하고 시뮬레이션으로 검증하여, 물리층 오류가 암호 보안에 기여할 수 있음을 보여준다.
상세 분석
본 논문은 와이너의 와이어탭 채널 모델을 기반으로, 친밀한 사용자 간의 주 채널(cm)과 도청자에게 노출되는 열화된 채널(cw)을 각각 이산 메모리 없는 이진 대칭 채널(BSC)로 가정한다. 주 채널의 비트 오류 확률을 pm, 열화된 채널의 오류 확률을 pw(pw > pm)라 두고, 오류 제어 코딩(ECC)을 적용한 후 도청자가 관찰하는 최종 비트 오류 확률을 p′ = p1 + p2 − 2p1p2 로 정의한다. 여기서 p1은 LFSR 출력 a_n과 키스트림 z_n 사이의 상관 오류 확률, p2는 ECC 복호화 후 남은 오류 확률이다.
키스트림 생성기는 M개의 LFSR을 결합한 형태이지만, 분석을 위해 단일 LFSR에 대한 BSC 모델로 단순화한다. 공격자는 알려진 평문을 이용해 N비트의 키스트림을 복원하고, 이를 y_n이라는 노이즈가 섞인 관측열로 변환한다. y_n은 두 개의 BSC를 연속으로 통과한 결과이며, 각 비트가 원래 LFSR 출력 a_n과 일치할 확률은 p′이다.
논문은 Meier와 Staffelbach가 제시한 두 가지 빠른 상관 공격을 재검토한다. Attack A는 각 비트가 만족하는 체크 수를 기반으로 신뢰도 p* _n을 계산하고, 가장 신뢰도가 높은 k비트를 선택해 선형 연립방정식을 풀어 초기 상태를 복구한다. 오류가 존재하면 추가적인 조합 탐색이 필요하며, 탐색 복잡도는 2^{H(r/k)·k} 로 상한을 가진다. 여기서 r은 선택된 k비트 중 실제 오류 비트 수이며, H(·)는 이진 엔트로피 함수이다. p′가 0.5에 가까워질수록 r/k는 0.5에 수렴하고, 상한은 2^k에 근접해 사실상 브루트포스와 동등한 비용이 된다.
Attack B는 Gallager의 LDPC 디코딩과 유사한 반복적인 확률 업데이트 방식을 사용한다. 초기 p* _n을 구한 뒤, 임계값 p_thr을 설정해 p* _j < p_thr인 비트를 반전시킨다. 반전 후 다시 p* _n을 재계산하고, 이 과정을 수차례 반복한다. 첫 번째 반복에서 충분히 많은 비트가 올바르게 복원되면 전체 복구가 성공한다. 따라서 p′가 커질수록 첫 번째 반복에서의 정정 효과가 감소하고, 전체 알고리즘이 수렴하기 어려워진다.
이론적 분석과 시뮬레이션 결과는 p2(즉, ECC 후 남은 오류 확률)를 적절히 높이면 p′가 0.5에 근접하게 조정될 수 있음을 보여준다. 특히, k = 32, N = 10^6·k 정도의 대규모 관측 데이터에서도 p2 ≥ 0.1이면 Attack A의 기대 복구 횟수가 2^{30} 수준으로 급격히 상승한다. Attack B 역시 첫 번째 반복에서 정정 비트 비율이 0.5에 가까워지면, 반복 과정이 거의 무의미해져 실질적인 복구가 불가능해진다. 따라서 물리층에서 오류 제어 코딩을 설계할 때, 친밀한 사용자에게는 충분한 신뢰성을 보장하면서 도청자에게는 p′≈0.5에 가까운 오류 환경을 강제하는 것이 실질적인 보안 향상을 제공한다는 결론에 도달한다.
댓글 및 학술 토론
Loading comments...
의견 남기기