Skip to Main Content
Illegal distribution and use of software is a big ad hoc problem in software industry today, especially on the growing market of Java software product. Tamper-proofing techniques will disable some or all of the programÂ¿s functionality once they detect any unwanted modifications during run time. This paper presents the attempt to Java software tamper-proofing technology by dynamic monitoring. The Java methodÂ¿s control flow graph is described by regular expressions, which can be regarded as a language. Certain stack signature in these control flows is also computed. During program execution, the protected methodÂ¿s control flow and stack signature information is verified at runtime by a monitor thread which checking whether the execution trace is accepted by the language, and the signature belongs to the right method. Experimental result shows that this tamper-proofing method is especially suitable for non-computation dense Java applications.