Core Concepts
MBA(Mixed Boolean Arithmetic) 표현식을 E-그래프 데이터 구조를 사용하여 체계적으로 재작성하고 더 단순한 표현식을 찾는 방법을 제안한다.
Abstract
이 논문은 MBA(Mixed Boolean Arithmetic) 표현식을 단순화하는 방법을 제안한다. MBA 표현식은 바이트 연산과 산술 연산이 혼합된 형태로, 기존의 코드 난독화 기법 중 가장 복잡한 것으로 간주된다.
논문의 주요 내용은 다음과 같다:
MBA 표현식의 정의: 선형 MBA 표현식과 다항식 MBA 표현식으로 구분된다.
E-그래프 소개: 동일한 의미를 가진 여러 표현식을 효율적으로 표현할 수 있는 데이터 구조이다.
구현 내용: Rust 기반의 E-그래프 라이브러리를 사용하여 MBA 표현식을 단순화하는 과정을 구현했다. 기본적인 수학 규칙과 MBA 난독화 관련 연구 결과를 활용한 규칙 기반 접근법을 사용했다.
실험 결과: Tigress, Qsynth CustomEA, MBA Solver 데이터셋을 사용하여 실험을 진행했다. 대부분의 표현식을 성공적으로 단순화했으며, 기존 연구 대비 빠른 속도를 보였다.
향후 연구 방향으로는 다항식 MBA 표현식에 대한 추가 규칙 개발과 상수 폴딩 기법 적용을 통해 MBA 표현식 단순화 도구를 더욱 발전시키는 것이다.
Stats
전체 표현식 개수: 323개
성공적으로 단순화된 표현식 개수: 267개
실패한 표현식 개수: 56개
성공률: 82.66%
단순화 비율: 69%
소요 시간: 3.98초