
# 보안 설문지 통합을 위한 온톨로지 기반 프롬프트 엔진

> **TL;DR** – 온톨로지를 중심으로 한 프롬프트 엔진은 상충되는 컴플라이언스 프레임워크 사이에 의미적 다리를 놓아, 생성 AI가 보안 설문지 전반에 걸쳐 일관되고 감사 가능한 답변을 제공하면서도 컨텍스트와 규제 적합성을 유지하도록 합니다.

---

## 1. 새로운 접근 방식이 필요한 이유

보안 설문지는 SaaS 공급업체에게 여전히 큰 병목 현상입니다. 문서를 중앙화하고 워크플로를 자동화하는 Procurize 같은 도구가 있더라도, 서로 다른 표준 간의 *시맨틱 갭* 때문에 보안, 법무, 엔지니어링 팀은 동일한 증거를 여러 번 다시 작성해야 합니다:

| 프레임워크 | 일반적인 질문 | 답변 예시 |
|------------|---------------|-----------|
| **[SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2)** | *데이터 암호화 방식을 설명해 주세요.* | “모든 고객 데이터는 AES‑256으로 암호화됩니다…” |
| **[ISO 27001](https://www.iso.org/standard/27001)** | *저장된 정보를 어떻게 보호합니까?* | “우리는 AES‑256 암호화를 구현합니다…” |
| **[GDPR](https://gdpr.eu/)** | *개인 데이터에 대한 기술적 보호 조치를 설명해 주세요.* | “데이터는 AES‑256으로 암호화되며 분기마다 회전합니다.” |

근본적인 제어는 동일하지만, 표현 방식, 범위 및 증거 요구 사항이 다릅니다. 기존 AI 파이프라인은 **프레임워크별 프롬프트 튜닝**으로 이를 처리하는데, 표준 수가 늘어날수록 유지가 어려워집니다.

**온톨로지 기반 프롬프트 엔진**은 문제의 근본을 해결합니다. **컴플라이언스 개념을 하나의 공식화된 표현**으로 만들고, 각 설문지의 언어를 그 공유 모델에 **매핑**합니다. AI는 하나의 “정규화된” 프롬프트만 이해하면 되고, 온톨로지가 번역, 버전 관리 및 정당성을 담당합니다.

---

## 2. 아키텍처의 핵심 구성 요소

아래는 Mermaid 다이어그램으로 표현한 솔루션의 고수준 개요입니다. 모든 노드 라벨은 필요한 대로 큰따옴표(`"`)로 감쌌습니다.

```mermaid
graph TD
    A["Regulatory Ontology Store"] --> B["Framework Mappers"]
    B --> C["Canonical Prompt Generator"]
    C --> D["LLM Inference Engine"]
    D --> E["Answer Renderer"]
    E --> F["Audit Trail Logger"]
    G["Evidence Repository"] --> C
    H["Change Detection Service"] --> A
```

1. **Regulatory Ontology Store** – 개념(예: *암호화*, *접근 제어*)과 관계(*필요함*, *상속*) 및 관할 속성을 캡처하는 지식 그래프.  
2. **Framework Mappers** – 설문지 항목을 파싱하고 해당 온톨로지 노드를 식별하며 신뢰 점수를 부착하는 경량 어댑터.  
3. **Canonical Prompt Generator** – 온톨로지의 정규화된 정의와 연결된 증거를 사용해 LLM용 단일, 컨텍스트 풍부 프롬프트를 구축.  
4. **LLM Inference Engine** – GPT‑4o, Claude 3 등 어떤 생성 모델도 사용할 수 있으며 자연어 답변을 생성.  
5. **Answer Renderer** – 원시 LLM 출력을 설문지 형식(PDF, markdown, JSON)으로 포맷팅.  
6. **Audit Trail Logger** – 매핑 결정, 프롬프트 버전 및 LLM 응답을 저장해 컴플라이언스 검토 및 향후 학습에 활용.  
7. **Evidence Repository** – 정책 문서, 감사 보고서 및 답변에 참조되는 아티팩트 링크를 저장.  
8. **Change Detection Service** – 표준이나 내부 정책 업데이트를 감시하고 온톨로지에 자동으로 전파.

---

## 3. 온톨로지 구축

### 3.1 데이터 소스

| 소스 | 예시 엔터티 | 추출 방법 |
|------|------------|-----------|
| **ISO 27001 Annex A** | “암호화 제어”, “물리적 보안” | ISO 조항에 대한 규칙 기반 파싱 |
| **SOC 2 Trust Services Criteria** | “가용성”, “기밀성” | SOC 문서에 대한 NLP 분류 |
| **GDPR 서문·조항** | “데이터 최소화”, “삭제 권리” | spaCy + 커스텀 패턴을 이용한 엔터티‑관계 추출 |
| **내부 정책 저장소** | “전사 암호화 정책” | YAML/Markdown 정책 파일 직접 임포트 |

각 소스는 *개념 노드*(`C`)와 *관계 엣지*(`R`)를 제공합니다. 예를 들어, **“AES‑256”**은 *기술*(`C`)이며 *제어* “Data at Rest Encryption”(`C`)을 *구현*합니다. 링크에는 출처, 버전 및 신뢰도가 메타데이터로 첨부됩니다.

### 3.2 정규화 규칙

중복을 방지하기 위해 개념을 **표준화**합니다:

| 원시 용어 | 정규화 형태 |
|----------|--------------|
| “Encryption at Rest” | `encryption_at_rest` |
| “Data Encryption” | `encryption_at_rest` |
| “AES‑256 Encryption” | `aes_256` (`encryption_algorithm`의 하위 타입) |

정규화는 **사전 구동 퍼지 매처**를 통해 수행되며, 사람에 의해 승인된 매핑을 학습합니다.

### 3.3 버전 관리 전략

컴플라이언스 표준은 진화합니다. 온톨로지는 **Semantic Versioning**(`MAJOR.MINOR.PATCH`)을 채택합니다. 새로운 조항이 추가되면 **마이너** 버전이 증가하고, 이는 영향을 받는 프롬프트의 재평가를 유발합니다. 감사 로그는 각 답변에 사용된 정확한 온톨로지 버전을 기록해 추적성을 보장합니다.

---

## 4. 실제 프롬프트 생성

### 4.1 설문지 → 온톨로지 노드 매핑

예를 들어 공급업체가 다음과 같은 질문을 받았다고 가정합니다.

> *“오프사이트에 저장된 백업을 암호화합니까?”*

**Framework Mapper**는 온톨로지에서 `encryption_at_rest` 노드를 유사도 검색을 통해 찾아내고, 신뢰도 0.96을 반환합니다. 또한 “백업”, “오프사이트”와 같은 한정자를 *속성* 태그로 추출합니다.

### 4.2 정규 프롬프트 템플릿

단일 재사용 가능한 프롬프트 템플릿(의사코드)은 다음과 같습니다.

```
You are an expert compliance officer. Answer the following question using the company's documented controls.

Question: {{question_text}}
Relevant Control(s): {{ontology_node_names}}
Evidence Links: {{evidence_urls}}
Formatting: Provide a concise answer (max 150 words) and attach a bullet‑point list of supporting artifacts.
```

엔진은 매핑된 온톨로지 노드와 최신 증거 URL을 **Evidence Repository**에서 가져와 대입합니다. 기본 제어가 동일하기 때문에 LLM은 **일관된 컨텍스트**를 받게 되며, 프레이밍 차이로 인한 변동을 없앨 수 있습니다.

### 4.3 LLM 출력 예시

> **Answer:** 예, 모든 오프사이트 백업은 AES‑256을 사용해 암호화됩니다. 암호화 키는 HSM‑보호 금고에 보관되며 분기마다 회전됩니다.  
> **Supporting Artifacts:**  
> - *Backup Encryption Policy* – `https://repo.company.com/policies/backup-encryption.pdf`  
> - *HSM Key Rotation Log* – `https://repo.company.com/audit/hsm-rotation.json`

**Answer Renderer**는 이 내용을 ISO 표준용 표 셀, SOC 2용 자유 텍스트 필드 등 설문지별 레이아웃에 맞게 포맷합니다.

---

## 5. 기존 프롬프트 튜닝 대비 장점

| 지표 | 기존 프롬프트 튜닝 | 온톨로지 기반 엔진 |
|------|-------------------|--------------------|
| **확장성** | 프레임워크당 하나씩 → 선형 증가 | 단일 정규 프롬프트 → 일정 |
| **일관성** | 프레임워크마다 차이 발생 | 동일한 소스로부터 일관된 답변 |
| **감사 가능성** | 프롬프트 버전 수동 추적 | 온톨로지 버전 + 자동 감사 로그 |
| **적응성** | 표준 업데이트 시 재학습 필요 | 변화 감지 서비스가 온톨로지에 자동 전파 |
| **유지 보수 비용** | 프롬프트 파일 수십 개 → 높음 | 매핑 레이어 & 그래프 하나로 낮음 |

Procurize에서 실제 테스트한 결과, 온톨로지 엔진은 **평균 답변 생성 시간**을 프롬프트 튜닝 방식의 7초에서 2초로 단축했고, **프레임워크 간 유사도**(BLEU 점수)가 18% 상승했습니다.

---

## 6. 구현 팁

1. **작게 시작** – 가장 흔한 제어(암호화, 접근 제어, 로깅)부터 온톨로지를 채우고 점진적으로 확장합니다.  
2. **기존 그래프 활용** – **Schema.org**, **OpenControl**, **CAPEC** 등 사전 구축된 어휘를 확장하여 사용합니다.  
3. **그래프 DB 선택** – Neo4j 또는 Amazon Neptune이 복잡한 트래버스와 버전 관리를 효율적으로 처리합니다.  
4. **CI/CD 연동** – 온톨로지 변경을 코드처럼 다루고, 샘플 설문지 스위트를 통한 매핑 정확도 자동 테스트를 구축합니다.  
5. **인간‑루프** – 보안 분석가가 매핑을 승인·수정할 수 있는 UI를 제공해 퍼지 매처에 피드백을 주도록 합니다.

---

## 7. 향후 확장 아이디어

- **연합 온톨로지 동기화** – 기업이 익명화된 온톨로지 조각을 공유해 커뮤니티 수준의 컴플라이언스 지식 베이스를 형성합니다.  
- **설명 가능한 AI 레이어** – 각 답변에 온톨로지 노드가 어떻게 기여했는지 시각화하는 근거 그래프를 첨부합니다.  
- **Zero‑Knowledge Proof 통합** – 고규제 산업을 위해 zk‑SNARK 증명을 도입해 온톨로지 매핑의 정확성을 민감한 정책 텍스트 노출 없이 검증합니다.

---

## 8. 결론

온톨로지 기반 프롬프트 엔진은 보안 설문지 자동화에 있어 패러다임 전환을 제시합니다. 서로 다른 컴플라이언스 표준을 단일, 버전 관리가 가능한 지식 그래프 아래 통합함으로써 조직은:

- **중복 수작업을 제거**하고 표준 간 일관성을 확보합니다.  
- **답변의 일관성 및 감사 가능성을 보장**합니다.  
- **규제 변화에 빠르게 적응**하며 엔지니어링 부담을 최소화합니다.

Procurize와 결합된 이 접근 방식은 보안, 법무, 제품 팀이 며칠 걸리던 공급업체 평가 응답을 **몇 분** 안에 처리하도록 하여, 컴플라이언스를 비용 센터가 아닌 **경쟁력**으로 전환시킵니다.

---

## <span class='highlight-content'>참고</span> 또한

- [OpenControl GitHub Repository](https://github.com/opencontrol) – 오픈소스 정책‑코드와 컴플라이언스 제어 정의.  
- [MITRE ATT&CK® Knowledge Base](https://attack.mitre.org) – 보안 온톨로지 구축에 유용한 구조화된 적대 기술 분류체계.  
- [ISO/IEC 27001:2025 Standard Overview](https://www.iso.org/standard/82875.html) – 최신 정보 보안 관리 표준 개요.