A software protection method based on instruction camouflage

Yuichiro Kanzaki, Akito Monden, Masahide Nakamura, Ken'ichi Matsumoto

Research output: Contribution to journalArticle

10 Citations (Scopus)

Abstract

This paper presents a method in which program analysis by a malicious user (attacker) is made difficult by camouflaging (hiding) a large number of instructions contained in the program. In the proposed method, an arbitrary instruction (target) in the program is camouflaged by a different instruction. Using the self-modification mechanism in the program, the original instruction is restored only in a certain period during execution. Even if the attacker attempts an analysis of the range containing the camouflaged instruction, it is impossible for him to correctly understand the original behavior of the program unless he notices the existence of the routine that rewrites the target (restoring routine). In order to make the analysis a success, the range containing the restoring routine must be analyzed, and the attacker is forced to analyze a wider range of the program. The proposed method can easily be automated, and the number of targets can be specified arbitrarily according to the required degree of protection and the acceptable degradation of execution efficiency.

Original languageEnglish
Pages (from-to)47-59
Number of pages13
JournalElectronics and Communications in Japan, Part III: Fundamental Electronic Science (English translation of Denshi Tsushin Gakkai Ronbunshi)
Volume89
Issue number1
DOIs
Publication statusPublished - Jan 1 2006
Externally publishedYes

    Fingerprint

Keywords

  • Copyright protection
  • Program encryption
  • Program obfuscation
  • Self-modification
  • Software protection

ASJC Scopus subject areas

  • Electrical and Electronic Engineering

Cite this