# Obfuscating Java Programs by Translating Selected Portions of Bytecode   to Native Libraries

**Authors:** Davide Pizzolotto, Mariano Ceccato

arXiv: 1901.04942 · 2019-01-16

## TL;DR

This paper proposes a method to enhance Java program obfuscation by automatically translating critical bytecode sections into native C code, reducing high-level information leakage and increasing resistance to reverse engineering.

## Contribution

It introduces an automated approach for translating selected Java bytecode segments into C to improve obfuscation effectiveness while maintaining Java as the primary development language.

## Key findings

- Enhanced obfuscation resilience against reverse engineering.
- Reduced high-level information leakage through native code translation.
- Maintained Java development environment with integrated C translation.

## Abstract

Code obfuscation is a popular approach to turn program comprehension and analysis harder, with the aim of mitigating threats related to malicious reverse engineering and code tampering. However, programming languages that compile to high level bytecode (e.g., Java) can be obfuscated only to a limited extent. In fact, high level bytecode still contains high level relevant information that an attacker might exploit.   In order to enable more resilient obfuscations, part of these programs might be implemented with programming languages (e.g., C) that compile to low level machine-dependent code. In fact, machine code contains and leaks less high level information and it enables more resilient obfuscations.   In this paper, we present an approach to automatically translate critical sections of high level Java bytecode to C code, so that more effective obfuscations can be resorted to. Moreover, a developer can still work with a single programming language, i.e., Java.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1901.04942/full.md

## Figures

9 figures with captions in the complete paper: https://tomesphere.com/paper/1901.04942/full.md

## References

25 references — full list in the complete paper: https://tomesphere.com/paper/1901.04942/full.md

---
Source: https://tomesphere.com/paper/1901.04942