< Back to previous page


A novel obfuscation: class hierarchy flattening

Book Contribution - Book Chapter Conference Contribution

This paper presents class hierarchy flattening, a novel obfuscation technique for programs written in object-oriented, managed programming languages. Class hierarchy flattening strives for maximally removing the inheritance relations from object-oriented programs, thus hiding the overall design of the program from reverse engineers and other attackers. We evaluate the potential of class hierarchy flattening by means of a fully automated prototype tool for Java bytecode. For real-life programs from the DaCapo benchmark suite, we demonstrate that the transformation effectively hinders both human and tool analyses, and that it does so at limited overheads.
Book: Foundations and Practice of Security, Proceedings
Volume: 7743
Pages: 194 - 210
Publication year:2013