Obfuscating application bytecode for virtual machine KVM

Krzysztof Dobosz, Robert Spyra

Abstract


The article presents essential problems of the reverse engineering of the bytecode of the application for the Java virtual machine. It concentrates on methods of code obfuscation. Next it describes three new obfuscation techniques. The article also explains details of their implementation in the demonstration application.

Keywords


bytecode; code obfuscation; java virtual machine; java ME platform

Full Text:

PDF (Polski)

References


The Java ME Platform - dokumentacja techniczna. Witryna: http://java.sun.com/javame/, sierpień 2008.

Connected Limited Device Configuration - dokumentacja techniczna. Witryna: http:// java. sun.com/products/cldc/, sierpień 2008.

Mobile Information Device Profile - dokumentacja techniczna. Witryna: http://java.sun. com/products/midp/, sierpień 2008.

Byte Code Engineering Library. Witryna: http://jakarta.apache.org/bcel/manual.html, wrzesień 2008.

Kalinovsky A.: Covert Java: Techniques for Decompiling, Patching, and Reverse Engineering. Ebook, 2004

Byte code viewer. Witryna: http://www.ej-technologies.corn/products/jclasslib/overview. html wrzesień 2008.

Jad - the fast JAva Decompiler. Witryna: http://www.kpdus.com/jad.html, wrzesień 2008.

DJ Java Decompiler. Witryna: http://www.neshkov.com/dj.html, wrzesień 2008.

Jshrink: Java Shrinker and Obfuscator. Witryna: http://www.e-t.com/jshrink.html, wrzesień 2008.

ProGuard. Witryna: http://proguard.sourceforge.net, wrzesień 2008.

RetroGuard for Java Bytecode Obfuscator - Retrologic. Witryna: http://www.retrolo-gic.com wrzesień 2008.

Java Obfuscator - Zelix KlassMaster. Witryna: http://www.zelix.com/klassmaster/index. html, wrzesień 2008.

DashO - Java Obfuscator, Java Code Protector, Pruner and Watermarker. Witryna: http://www.preemptive.com/dasho-java-obfuscator.html, wrzesień 2008.

Sun Wireless Toolkit for CLDC. Witryna, http://java.sun.com/products/sjwtoolkit/, wrzesień 2008.

Spyra R.: Analiza efektywności metod zaciemniania i dekompilacji kodu bajtowego aplikacji dla maszyny wirtualnej KVM. Praca dyplomowa magisterska. Politechnika Śląska, Gliwice, grudzień 2008.




DOI: http://dx.doi.org/10.21936/si2009_v30.n3A.442