dc.contributor.authorLiang, Shan
dc.identifier.citationLiang, S. (2010). Software code protection through software obfuscation. Master’s thesis, Nanyang Technological University, Singapore.
dc.description.abstractThe mode of platform-independent software running on client machine has various advantages. But it also introduces some problems, such as how to guard against software piracy, how to protect user from intellectual property theft and from attacks by malicious modifications. Development of reverse engineering techniques makes all these attacks easier. Therefore, obfuscation has gained a lot of interest since the obfuscation technique makes the cost of program reverse engineering prohibitively high with least program size and execution speed overheads. In this report, we present our proposed obfuscation algorithms which are primarily based on self-modifying code. We have designed three software obfuscation algorithms. The first self-modifying proposal is integrated with Control Flow Flattening to realize the obscurity in instruction and execution control flow. The second one is based on Basic Blocks to improve both the performance of storage size overhead and the instruction disassembly errors metrics. And the third one is proposed at the function level to provide full protection to improve the security to both static and dynamic attacks. We implement these obfuscation algorithms at link time and evaluate them on standard benchmark suite. The novel techniques are evaluated with metrics referred by existing proposals to prove that our algorithms succeed in confusing the disassembler when reverse engineering the control flow and instructions of program. We also discuss how the novel methods improve the obfuscation efficiency in comparison with the existing competing obfuscation methods.en_US
dc.format.extent104 p.en_US
dc.subjectDRNTU::Engineering::Computer science and engineering::Software::Software engineeringen_US
dc.titleSoftware code protection through software obfuscationen_US
dc.contributor.schoolSchool of Computer Engineeringen_US
dc.contributor.supervisorSabu Emmanuelen_US
dc.description.degreeMASTER OF ENGINEERING (SCE)en_US

Files in this item


This item appears in the following Collection(s)

Show simple item record