摘要

Control flow obfuscation is used to obfuscate program execution flow, thus preventing reverse engineering of software. However, the code size and execution time will be increased greatly after program is obfuscated. Since opaque predicate is difficult to resist the dynamic attack, the paper proposes the scheme about control flow obfuscation based on garbage code. The algorithm combines branch garbage code with loop garbage code, and hash function is introduced to limit the number of insert operation about code. Thereby controlling the growth of the code size and reducing the accuracy of program analysis and resisting tampering attack. Experimental results show that the obfuscation algorithm can control performance overloading effectively that is brought by obfuscation transformation, while preventing a variety of reverse engineering attacks effectively.

  • 出版日期2012

全文