Overview
jbirth aims to detect the theft of programs. This tool can extract birthmarks from Java class files, and compare them.
A birthmark is a set of special informations that the program originally possesses. A birthmark is carefully extracted from critical portions of class file. Hence, if a class file p has the same birthmark as another class file q's, q is very likely to be a copy of p. Thus, the birthmark can be used as a simple but powerful signature to distinguish doubtful class files (those which seem to be copies).
Features
jbirth support the extracting birthmarks from Java class files, and written in Java with BCEL (Byte Code Engineering Libraries).
The main features are:
- extraction of the six types of birthmarks directly from Java class files (without source code),
- pairwise birthmark comparison of Java class files,
- Apache Ant task support (extracting birthmarks and store to file),
- Jar file support, and
- plug-in architecture for new birthmarks
Related Publications
- Haruaki Tamada, Yuichiro Kanzaki, Masahide Nakamura, Akito Monden, Ken-ichi Matsumoto, "A method for extracting program fingerprints from Java class files," The Institute of Electronics, Information and Communication Engineers Technical Report, Vol. ISEC2003-29, pp.127-133, July 2003. (in Japanese) [PDF]
- Haruaki Tamada, Masahide Nakamura, Akito Monden, and Ken-ichi Matsumoto, "Detecting the theft of programs using birthmarks," Information Science Technical Report, NAIST-IS-TR2003014, ISSN 0919-9527, Graduate School of Information Science, Nara Institute of Science and Technology, November 2003. [PDF]
- Haruaki Tamada, Masahide Nakamura, Akito Monden, and Ken-ichi Matsumoto, "Design and evaluation of birthmarks for detecting theft of Java programs," Proc. IASTED International Conference on Software Engineering (IASTED SE 2004), pp.569-575, Innsbruck, Austria, 17-19 February 2004. [PDF]
- Masateru Tsunoda, Takeshi Kakimoto, Naoki Ohsugi, Akito Monden, and Ken-ichi Matsumoto, "Javawock: A Java Class Recommender System Based on Collaborative Filtering," In Proc. of 17th International Conference on Software Engineering and Knowledge Engineering (SEKE2005), pp.491-497, July 2005. (Taipei, Taiwan) [PDF]
- Haruaki Tamada, Masahide Nakamura, Akito Monden, and Ken-ichi Matsumoto, "Java Birthmarks --Detecting the Software Theft--," IEICE Transactions on Information and Systems, Vol. E88-D, No. 9, September 2005. [PDF]
- Takesi Kakimoto, Akito Monden, Yasutaka Kamei, Haruaki Tamada, Masateru Tsunoda, and Ken-ichi Matsumoto, "Using Software Birthmarks to Identify Similar Classes and Major Functionalities," In Proc. the 3rd International Workshop on Mining Software Repositories (MSR Mining Challenge 2006), pp.171--172, Shanghai, China, May 2006. [PDF]
Author Information
- Name
- Haruaki TAMADA, Ph.D.
- Affiliation
- Software Engineering Laboratory, Graduate School of Information Science, Nara Institute of Science and Technology
- Address
- 8916-5 Takayama, Ikoma, Nara, 630-0101, Japan
- Telephone
- +81-743-72-5312
- Fax
- +81-743-72-5319
- E-mail
- harua-t__at__is.naist.jp
- Web Page
- http://se.naist.jp/~harua-t/