摘要:Dynamic code obfuscation technique increases the difficulty of dynamically reverse by the runtime confusion. Path explosion directly affects the efficiency and accuracy of dynamic symbolic analysis. Because of the defect, this paper presents a novel algorithm DDD (Demand-Driven Dynamic Obfuscation Algorithm) by using the demand-driven theory of symbolic analysis. First, create a large number of invalid paths to mislead the result of symbolic analysis. Second, according to the demand-driven theory, create a specific execution path to protect the security of software. The design and implementation of the algorithm is based on the current popular and mature SMT (satisfiability model theory), and the experimental effects are tested by Z3 - the SMT solver and Pex - the symbolic execution test tools. The experimental results prove that the algorithm enhance the security of the program.