WaterRPG: A Graph-based Dynamic Watermarking Model for Software Protection
Abstract
Software watermarking involves embedding a unique identifier or, equivalently, a watermark value within a software to prove owner's authenticity and thus to prevent or discourage copyright infringement. Towards the embedding process, several graph theoretic watermarking algorithmic techniques encode the watermark values as graph structures and embed them in application programs. Recently, we presented an efficient codec system for encoding a watermark number as a reducible permutation graph through the use of self-inverting permutations . In this paper, we propose a dynamic watermarking model, which we call WaterRPG, for embedding the watermark graph into an application program . The main idea behind the proposed watermarking model is a systematic use of appropriate calls of specific functions of the program . More precisely, for a specific input of the program , our model takes the dynamic call-graph of and the watermark graph , and produces the watermarked program having the following key property: its dynamic call-graph is isomorphic to the watermark graph . Within this idea the program is produced by only altering appropriate calls of specific functions of the input application program . We have implemented our watermarking model WaterRPG in real application programs and evaluated its functionality under various and broadly used watermarking assessment criteria. The evaluation results show that our model efficiently watermarks Java application programs with respect to several watermarking metrics like data-rate, bytecode instructions overhead, resiliency, time and space efficiency. Moreover, the embedded watermarks withstand several software obfuscation and optimization attacks.
Keywords
Cite
@article{arxiv.1403.6658,
title = {WaterRPG: A Graph-based Dynamic Watermarking Model for Software Protection},
author = {Ioannis Chionis and Maria Chroni and Stavros D. Nikolopoulos},
journal= {arXiv preprint arXiv:1403.6658},
year = {2014}
}
Comments
27 pages, 11 pages