author: Tom Leemreize
title: Tracking Code Elements Through Program Updates in Java Applications
keywords: Java, Bytecode Analysis, Mapping, Theft, Plagiarism, Obfuscation, Updates, Global Alignment
topics: Languages , Testing
committee: Marieke Huisman ,
Sebastiaan Joosten
started: April 2018
end: July 2018


Code theft can be a major issue in software development resulting in major losses as competitors can easily steal code that may have cost thousands of man-hours to develop. By being able to analyze and compare software products where source code is not available it is possible to point out instances of code theft, which is almost impossible with the methods currently available. In this paper we propose a method to create a mapping from one set of code elements of Java bytecode to another, where a code element is a class or any of its members. As opposed to methods currently available, the proposed method will have a level of granularity which allows each instance of similar code to be pointed out, instead of merely pointing out that two software products are similar.