About eGURU
eGURU Process
Operational Details
Participants
Project Ideas
Scholarships
FAQs
The Proposal Details
Digital Copyright Management using Software Watermarking
Programming
Software Watermarking differs from multimedia watermarking in that the watermark must be embedded into an executable program, rather than passive data such as images or an audio file. The essential difficulty in copyright protection of digital data is that prevention of copying of digital media is infeasible. Securing Java through software watermarking is one of the hot topics that is going on in the field of software as Java is gaining grounds. The advantage as well as problem with Java is its byte code.
Software watermarking can be used to hide customer identification or copyright information into software applications, similar to how it can be hidden in other digital content such as songs, movies and images. A watermark can be used to identify owners of the software or track the origin of a pirated copy. This project mainly focuses on the Securing Java. You can also do the same for the other programming languages (but it may be of less important as most of them are not decompile-able). Programs written for Java are easy to reverse engineer. This is not in any way a fault in the design of Java; it is simply a reality of modern, intermediate-compiled languages. Java uses of expressive file syntax for delivery of executable code: byte code. Being much higher-level than binary machine code, the intermediate files are laden with identifiers and algorithms that are immediately observable and ultimately understandable. After all, it is obviously difficult to make something easy to understand, flexible, and extend-able while simultaneously hiding its crucial details. The basic properties of the watermark should be followed such as : the watermark should be robust, perceptible, easy to insert as well as easy to get back whenever needed. The main components and challenges to be build are : * The Watermark that is to be inserted. Writing Watermark code in such a way that it should be compiled. * Finding the right place to embed the watermark. * Inserting watermark in runtime. * 4.Able to get the watermark whenever needed.