Implementation of Bytecode-based Software Watermarking for Java Programs

J. Chen, C. Wang, Q. Shi, and G. Lv (PR China)


Software copyright protection, software watermarking, Java program, class file


With the rapid development of Internet and software industry, software security and piracy has become a very important issue. Software watermarking is a new technique appeared in recent years for software copyright protection. It embeds some secret information (watermark) into software as an identifier of the ownership of copyright for the software. This paper investigates and implements a software watermarking algorithm that is effective for the copyright protection of Java programs, especially for Java class files. By modifying the operands and/or encoding the opcodes of some selected Java virtual machine instructions, watermark information is embedded into the bytecodes of Java class files in the form of binary codes. The watermark embedded is indiscernible to program users, and not easy to erase or tamper with. Experiments show that the presented algorithm can embed and extract watermark information successfully and survive common watermark attacks including decompile-recompile attack.

Important Links:

Go Back