Mixed Boolean-Arithmetic (MBA) obfuscation is a common technique used to transform simple expressions into semantically equivalent but more complex combinations of boolean and arithmetic operators. Its widespread usage in DRM systems, malware, and software protectors is well documented. In 2021, Liu et al. proposed a groundbreaking method of simplifying linear MBAs, utilizing a hidden two-way transformation between 1-bit and n-bit variables. In 2022, Reichenwallner et al. proposed a similar but more effective method of simplifying linear MBAs, SiMBA, relying on a similar but more involved theorem. However, because current linear MBA simplifiers operate in 1-bit space, they cannot handle expressions which utilize constants inside of their bitwise operands, e.g. (x&1), (x&1111) + (y&1111). We propose an extension to SiMBA that enables simplification of this broader class of expressions. It surpasses peer tools, achieving efficient simplification of a class of MBAs that current simplifiers struggle with.
翻译:混合布尔算术混淆是一种常用技术,用于将简单表达式转换为语义等价但更复杂的布尔与算术运算符组合。其在数字版权管理系统、恶意软件和软件保护器中的广泛使用已有充分记载。2021年,Liu等人提出了一种突破性的线性MBA简化方法,利用了1比特与n比特变量间的隐式双向变换。2022年,Reichenwallner等人提出了一种类似但更有效的线性MBA简化方法SiMBA,该方法依赖于一个类似但更复杂的定理。然而,由于当前线性MBA简化器在1比特空间内运行,它们无法处理在位运算操作数内部使用常量的表达式,例如(x&1)、(x&1111)+(y&1111)。我们提出了一种对SiMBA的扩展,使其能够简化这类更广泛的表达式。该方法超越了同类工具,能高效简化当前简化器难以处理的一类MBA表达式。