Abstract
A software birthmark means the inherent characteristics of a program that can be used to identify the program. A comparison of such birthmarks facilitates the detection of software theft. In this paper, we propose a static Java birthmark based on a set of stack patterns, which reflect the characteristic of Java applications. A stack pattern denotes a sequence of bytecodes that share their operands through the operand stack. A weight scheme is used to balance the influence of each bytecode in a comparison of the birthmarks. We evaluate the proposed birthmark with respect to two properties required for a birthmark: credibility and resilience. The empirical results show that the proposed birthmark is highly credible and resilient to program transformation. We also compare the proposed birthmark with existing birthmarks, such as that of Tamada et al. and the k-gram birthmark. The experimental results show that the proposed birthmark is more stable than the birthmarks in terms of resilience to program transformation. Thus, the proposed birthmark can provide more reliable evidence of software theft when the software is modified by someone other than author. Copyright © 2008 The Institute of Electronics, Information and Communication Engineers.
Author supplied keywords
Cite
CITATION STYLE
Lim, H. I., Park, H., Choi, S., & Han, T. (2008). Detecting theft of java applications via a static birthmark based on weighted stack patterns. IEICE Transactions on Information and Systems, E91-D(9), 2323–2332. https://doi.org/10.1093/ietisy/e91-d.9.2323
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.