Back to Search
Start Over
Effective and efficient Java‐type obfuscation
- Source :
- Software: Practice and Experience. 50:136-160
- Publication Year :
- 2019
- Publisher :
- Wiley, 2019.
-
Abstract
- To protect valuable assets embedded in software against reverse-engineering attacks, software obfuscations aim at raising the apparent complexity of programs and at removing information that is useful for attackers. In this work, we propose to combine five transformations that obfuscate the type hierarchy of Java applications and eliminate much of the type information that can be inferred from the Java bytecode. We rely on some existing algorithms, present adaptations, and introduce new algorithms for some of the transformations, which are all made available in an open-source prototype implementation ready for take-up. We present an extensive experimental evaluation on benchmarks of real-world complexity, using complementary metrics that cover the protection strength against both human and tool-based reverse-engineering attack methods. The results indicate that the obfuscation is effective as well as much more efficient than the previous state of the art. For the first time, this makes these obfuscations practically viable in real-world deployment scenarios.
- Subjects :
- Java
Cover (telecommunications)
Computer science
business.industry
020207 software engineering
Java bytecode
02 engineering and technology
Software
Software deployment
Obfuscation
0202 electrical engineering, electronic engineering, information engineering
Overhead (computing)
State (computer science)
Software engineering
business
computer
computer.programming_language
Subjects
Details
- ISSN :
- 1097024X and 00380644
- Volume :
- 50
- Database :
- OpenAIRE
- Journal :
- Software: Practice and Experience
- Accession number :
- edsair.doi...........6f4f30681eeee1eacb14b482e31eb676
- Full Text :
- https://doi.org/10.1002/spe.2773