Java birthmarks - Detecting the software theft

Haruaki Tamada, Masahide Nakamura, Akito Monden, Ken Ichi Matsumoto

Research output: Contribution to journalArticlepeer-review

47 Citations (Scopus)


To detect the theft of Java class files efficiently, we propose a concept of Java birthmarks, which are unique and native characteristics of every class file. For a pair of class files p and q, if q has the same birthmark as p's, q is suspected as a copy of p. Ideally, the birthmarks should satisfy the following properties: (a) preservation - the birthmarks should be preserved even if the original class file is tampered with, and (b) distinction - independent class files must be distinguished by completely different birthmarks. Taking (a) and (b) into account, we propose four types of birthmarks for Java class files. To show the effectiveness of the proposed birthmarks, we conduct three experiments. In the first experiment, we demonstrate that the proposed birthmarks are sufficiently robust against automatic program transformation (93.3876% of the birthmarks were preserved). The second experiment shows that the proposed birthmarks successfully distinguish non-copied files in a practical Java application (97.8005% of given class files were distinguished). In the third experiment, we exploit different Java compilers to confirm that the proposed Java birthmarks are core characteristics independent of compiler-specific issues.

Original languageEnglish
Pages (from-to)2148-2158
Number of pages11
JournalIEICE Transactions on Information and Systems
Issue number9
Publication statusPublished - Sept 2005
Externally publishedYes


  • Copyright protection
  • Software protection
  • Watermark, birthmark

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture
  • Computer Vision and Pattern Recognition
  • Electrical and Electronic Engineering
  • Artificial Intelligence


Dive into the research topics of 'Java birthmarks - Detecting the software theft'. Together they form a unique fingerprint.

Cite this