Introducing dynamic name resolution mechanism for obfuscating system-defined names in programs

  • Authors:
  • Haruaki Tamada;Masahide Nakamura;Akito Monden;Ken-ichi Matsumoto

  • Affiliations:
  • Nara Institute of Science and Technology, Ikoma-shi, Nara, Japan;Kobe University, Kobe-shi, Hyogo, Japan;Nara Institute of Science and Technology, Ikoma-shi, Nara, Japan;Nara Institute of Science and Technology, Ikoma-shi, Nara, Japan

  • Venue:
  • SE '08 Proceedings of the IASTED International Conference on Software Engineering
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Name obfuscation is a software protection technique, which renames identifiers in a given program, to protect the program from illegal cracking. The conventional methods replace names appearing in the declaration part with the meaningless ones. Therefore, the methods cannot be used to obfuscate names declared in system libraries, since changing such system-defined names significantly deteriorates the program portability. This paper presents a new name obfuscation method, which can hide appearance of the system-defined names. In the proposed method, the system-defined names are statically encrypted, and the original names are resolved during run time using the reflection. An experimental evaluation on the Java platform showed that the run-time overhead for the obfuscated program was 1.74 times larger than the one for the original.