The Software Watermarking problem can be described as follows. Embed a structure W into a program P such that: W can be reliably located and extracted from P even after P has been subjected to code transformations such as translation, optimization and obfuscation; W is stealthy; W has a high data rate; embedding W into P does not adversely affect the performance of P; and W has a mathematical property that allows us to argue that its presence in P is the result of deliberate actions.
In the first part of the paper we construct an informal taxonomy of software watermarking techniques. In the second part we formalize these results. Finally, we propose a new software watermarking technique in which a dynamic graphic watermark is stored in the execution state of a program.
This paper supersedes an earlier technical report On the Limits of Software Watermarking.
See also the articles
Manufacturing Cheap, Resilient, and Stealthy Opaque Constructs
and
Breaking Abstractions and Unstructuring Data Structures.
| Gzipped Postscript |
|||
|---|---|---|---|
| Article | A4 | LETTER | (216k) |
| Postscript |
|||
| Article | A4 | LETTER | (888k) |
| |
|||
| Article | A4 | LETTER | (888k) |
| Gifs |
|||
| Article | [p1] [p2] [p3] [p4] [p5] [p6] [p7] | (7*20k) | |
| [p8] [p9] [p10] [p11] [p12] [p13] [p14] | (7*20k) | ||
| Tar'ed Gifs |
|||
| Article | A4.tar | (328k) | |
| ASCII Text |
|||
| The BibTeX entry | BibTeX.bib | (2k) | The Abstract | Abstract.txt | (2k) |