COMPARISON OF OBFUSCATION METHODS IN JAVA OBFUSCATORS
<p align="justify">For programs written in the Java programming language, obfuscation can be used to protect the intellectual property contained in the program. There is a large amount of information given in the Java .class file, making decompilation easy to do. There is many obfusc...
Saved in:
Main Author: | |
---|---|
Format: | Theses |
Language: | Indonesia |
Online Access: | https://digilib.itb.ac.id/gdl/view/19731 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Institut Teknologi Bandung |
Language: | Indonesia |
Summary: | <p align="justify">For programs written in the Java programming language, obfuscation can be used to protect the intellectual property contained in the program. There is a large amount of information given in the Java .class file, making decompilation easy to do. There is many obfuscators that inhibits decompilation or make the resulting source code difficult to understand. This thesis compares six Java obfuscators, three of which are open source, and the other three are commercial.<p align="justify"><p>Reverse transformations are performed to remove low-resilience obfuscation transformations, then decompilation is done to extract source code. Reverse transformations performed include name remapping, string encryption removal, fake exception handling removal, and transparent predicate removal.<p align="justify"><p>Comparisons are done by measuring complexity aspects of the source code, that is : program size, number of conditionals, total conditional complexity, number of local variables, number of abrupt flow statements, number of labeled blocks. This thesis shows the advantage and disadvantage of the compared obfuscators. |
---|