Detecting Common Modules in Java Packages Based on Static Object Trace Birthmark
Detecting Common Modules in Java Packages Based on Static Object Trace Birthmark
复制标题
DOI:
10.1093/comjnl/bxp095
复制
发表时间:
2011
期刊:
影响因子:
--
通讯作者:
Heewan Park;Hyun-il Lim;Seokwoo Choi;Taisook Han
中科院分区:
文献类型:
--
作者:
Heewan Park;Hyun-il Lim;Seokwoo Choi;Taisook Han
A software birthmark means inherent characteristics that can be used to identify a program. In this paper, we propose a birthmark technique based on object traces of Java programs. Java is an object-oriented programming language that provides various predefined class libraries that help programmers to produce software easily. In order to utilize Java class libraries, we have to use Java object instructions. The Java object instructions are hard to replace or remove, and so a set of sequences of object instructions is a proper candidate to represent inherent characteristics of a program. We propose a new birthmark using the sequences of object instructions. We evaluate the proposed birthmark with open source programs and compare it with previous static birthmarks. Experiments show that the detection capability of our birthmark is much higher than that of other static birthmarks despite obfuscations by Smokescreen and ZKM.