숨은 연합의 은밀한 공격 차단 방안
초록
본 논문은 시스템 내부에 존재하지만 외부에 드러나지 않는 악의적 연합(숨은 연합)이 수행하는 ‘언더핸드(underhand)’ 공격을 차단하기 위한 두 가지 알고리즘을 제시한다. 하나는 위험 가능성이 있는 에이전트를 탐색해 차단하는 결정적(Deterministic) 그리디 방법이고, 다른 하나는 최소한의 에이전트 집합만을 차단하도록 설계된 비결정적(Non‑Deterministic) 방법이다. 두 방법 모두 소프트웨어 보안 모델에 기반해 완전성(soundness)과 완비성(completeness)을 증명하고, 시간 복잡도를 분석한다.
상세 분석
이 논문은 다중 에이전트 시스템을 ‘보안 공식(critical formulas)’이라는 논리식 집합 Φ 로 모델링한다. 시스템이 안전하다는 것은 모든 Φ 가 거짓인 상태를 의미하고, 하나라도 참이 되면 시스템은 불안전해진다. 각 에이전트는 자신이 통제하는 변수 집합을 독점적으로 조작할 수 있으며, 에이전트들의 행동은 변수값을 바꾸어 Φ 를 만족시킬 가능성을 만든다. 여기서 핵심은 ‘숨은 연합’이라는 개념이다. 기존 연합 논리(Coalition Logic)에서는 연합이 명시적으로 알려져야 분석이 가능했지만, 숨은 연합은 존재 자체가 시스템에 알려지지 않는다. 따라서 시스템은 어떤 에이전트가 악의적 연합에 속해 있는지 모른 채, 그들의 행동이 보안 공식을 위반하게 만들 위험을 안고 있다.
논문은 이 문제를 해결하기 위해 두 단계의 차단 메커니즘을 설계한다. 첫 번째는 결정적 차단 알고리즘으로, 현재 시점에서 활성화된 행동 집합 Γₜ₊₁ 을 시뮬레이션하고, Φ 에 영향을 주는 에이전트를 행렬 형태로 정리한다. 각 에이전트가 차단될 경우 ‘마크된 셀’(즉, 위험을 일으킬 수 있는 공식)의 수를 카운트하고, 가장 많은 셀을 차단하는 에이전트를 선택해 B 집합에 추가한다. 이 과정을 Φ 가 완전히 사라질 때까지 반복한다. 이 알고리즘은 그리디 전략이므로 최적성을 보장하지 않지만, 모든 위험을 제거한다는 완전성을 갖는다.
두 번째는 비결정적 차단 알고리즘이다. 여기서는 위의 결정적 절차에 ‘오라클’(이론적 최소 집합 탐색 도구)를 삽입해, 현재 Φ 를 없애는 최소 크기의 에이전트 집합을 찾는다. 즉, 최소 차단 문제를 NP‑hard 수준의 최적화 문제로 정의하고, 그 해를 구하면 시스템은 최소한의 제약만으로도 안전을 유지한다. 비결정적 방법은 이론적으로 최적해를 제공하지만, 실제 구현에서는 근사 알고리즘이나 SAT/SMT 솔버를 활용해야 한다는 현실적 한계가 있다.
두 알고리즘 모두 **소리(soundness)**와 **완비성(completeness)**을 형식적으로 증명한다. 소리성은 초기 상태가 안전할 때, 차단 후에도 어떤 상태에서도 Φ 가 참이 될 수 없음을 의미한다. 완비성은 어떤 안전한 상태든 차단 메커니즘을 통해 도달 가능함을 보인다. 복잡도 분석에서는 결정적 방법이 O(k·n·log n) (k는 현재 위험 공식 수, n은 에이전트 수) 정도의 다항시간을 요구하고, 비결정적 방법은 최소 차단 집합 탐색 자체가 NP‑complete임을 보여준다. 따라서 실시간 시스템에서는 결정적 그리디 방법이 실용적이며, 보안 요구가 높은 환경에서는 비결정적 최적화를 별도 오프라인 단계에서 수행하는 것이 바람직하다.
이 논문은 기존 연합 논리와 보안 모델을 결합해 ‘숨은 연합’이라는 새로운 위협 모델을 제시하고, 이를 방어하기 위한 형식적·알고리즘적 프레임워크를 제공한다는 점에서 학술적·실무적 의의가 크다. 특히 온라인 소셜 네트워크, 위키, 분산 서비스와 같이 개방형 환경에서 내부 악의가 발생할 가능성이 높은 시스템에 직접 적용할 수 있는 설계 원칙을 제시한다.
댓글 및 학술 토론
Loading comments...
의견 남기기