본문으로 건너뛰기

© 2026 Molayo

arXiv논문2026. 05. 20. 13:43

Divergent Multi-Version Execution (DME): 구조적 주소 공간 비상관성을 통한 표준 명령어 추적(Canonical

요약

전통적인 중복 실행 기법은 동일한 메모리 레이아웃을 사용하여 상관관계가 있는 결함에 취약하다는 단점이 있습니다. 본 연구에서 제안하는 DME(Divergent Multi-Version Execution)는 각 복제본을 독립적으로 컴파일하여 서로 다른 코드 및 데이터 메모리 레이아웃을 생성함으로써 이러한 문제를 해결합니다. 이를 통해 레이아웃에 의존적인 주소를 제외한 표준 명령어 추적(Canonical instruction traces)을 비교하여 침묵하는 데이터 손상(SDC)을 효과적으로 탐지합니다.

핵심 포인트

  • 기존 Lockstep 및 TMR 방식은 동일한 메모리 레이아웃으로 인해 상관관계가 있는 결함에 취약함
  • DME는 독립적 컴파일을 통해 복제본 간의 코드 및 데이터 메모리 레이아웃을 다양화함
  • 레이아웃 의존적 주소를 제외한 연산 코드, 레지스터, 로드/스토어 값 중심의 표준 명령어 추적 비교 방식 채택
  • 의도적인 변조, 소프트웨어 버그, 물리적 교란 등으로 인한 침묵하는 데이터 손상(SDC) 방지

전통적인 중복성 (Redundancy) 기법 (Lockstep, TMR)은 동일한 메모리 레이아웃을 가진 동일한 바이너리를 실행합니다. 상관관계가 있는 단일 결함(Correlated fault) — 예를 들어, 모든 복제본(Replica)에서 발생하는 임의의 프로그램 카운터 (Program Counter, PC) 값이나 섭동 델타-PC (Perturbation delta-PC) — 은 모든 복제본을 동일한 잘못된 경로로 유도합니다. 이는 데이터 포인터 (Data pointer)의 손상에도 동일하게 적용됩니다. 이러한 두 가지 유형의 결함은 그 기원(의도적인 변조, 소프트웨어 버그, 컴파일 버그 또는 물리적 교란)에 관계없이 침묵하는 데이터 손상 (Silent Data Corruption, SDC)과 잘못된 프로그램 실행을 유발합니다. 본 연구에서는 다양화된 실행 (Diversified executions)을 위한 런타임 의미론적 일관성 검증기 (Runtime semantic consistency verifier)인 Divergent Multi-Version Execution (DME)을 제시합니다. 각 복제본은 독립적으로 컴파일되어, 동일한 의미론 (Semantics)을 유지하면서도 서로 다른 코드 및 데이터 메모리 레이아웃을 생성합니다. 결함은 레이아웃에 의존적인 주소 (Layout-dependent addresses)는 제외하고, 연산 코드 (Opcode), 레지스터 식별자 (Register identifiers), 로드/스토어 값 (Loaded/stored values) 및 결과값을 포함하는 표준 명령어 추적 (Canonical instruction traces)을 비교함으로써 탐지됩니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 arXiv cs.PL (Programming Languages)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0