Abstract
We present a graph theoretic approach for watermarking software in a robust fashion. While watermarking software that are small in size (e.g. a few kilobytes) may be infeasible through this approach, it seems to be a viable scheme for large applications. Our approach works with control/data flow graphs and uses abstractions, approximate k-partitions, and a random walk method to embed the watermark, with the goal of minimizing and controlling the additions to be made for embedding, while keeping the estimated effort to undo the watermark (WM) as high as possible. The watermarks are so embedded that small changes to the software or flow graph are unlikely to disable detection by a probabilistic algorithm that has a secret. This is done by using some relatively robust graph properties and error correcting codes.
Under some natural assumptions about the code added to embed the WM, locating the WM by an attacker is related to some graph approximation problems. Since little theoretical foundation exists for hardness of typical instances of graph approximation problems, we present heuristics to generate such hard instances and, in a limited case, present a heuristic analysis of how hard it is to separate the WM in an information theoretic model. We describe some related experimental work. The approach and methods described here also suitable for solving the problem of software tamper resistance.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Ross J. Anderson and Fabien A. P. Petitcolas. On the limits of Steganography. IEEE J-SAC, 16(4), May 1998.
U. Assmann. OPTIMIX optimizer generator. http://i44www.info.uni-karlsruhe.de/assmann/optimix.html
Council for IBM Corporation Software birthmarks. Talk to BCS Technology of Software Protection Special Interest Interest Group. Reported in [AP].
Bella Bollobas. 1985. Random Graphs. Academic Press.
C. Collberg and C. Thomborson. Software Watermarking: Models and Dynamic Embeddings. Principles of Programming Languages 1999, POPL’99.
R. L. Davidson and N. Myhrvold Method and system for generating and auditing a signature for a computer program.US Patent 5559884, September 1996. Assignee: Microsoft Corporation
Reinhard Diestel. 2000. Graph Theory Springer-Verlag, second edition.
William Feller. 1993. An Introduction To Probability Theory And Its Applications, volume 1. Wiley Easter Limited, third edition.
A. Frieze and R. Kannan. The Regularity lemma and approximation schemes for dense problems. 37th Annual Symposium on Foundations of Computer Science, 2–11, October 1996. IEEE.
S. Guattery and G. L. Miller. On the Performance of Spectral Graph Partitioning Methods. Sixth Annual ACM-SIAM Symposium on Discrete Algorithms, 233–242, ACM-SIAM, 1995.
N. Garg, H. Saran and V. V. Vazirani. Finding Separator Cuts in Planar Graphs within Twice the Optimal. SI AM J. Computing, vol 29, No. 1, 159–179 (1999).
G. Holloway. The Data Flow Analysis Library of Machine SUIF. http://www.eecs.harvard.edu/hube/software/v130/dfa.html
Norman L. Johnson and Samuel Kotz. Discrete Distributions. Wiley Series in Probability and Statistics, 1999.
G. Karypis and V. Kumar. Multilevel k-way Hypergraph Partitioning. DAC 1999, 343–348.
N. Linial, E. London, and Y. Rabinovich. The geometry of graphs and some of its algorithmic applications. Combinatorica, 15:215–245, 1995.
T. Leighton and S. Rao. An approximate max-flow min-cut theorem for uniform multicommodity flow problems with applications to approximation algorithms. In Proc. 29th Ann. IEEE Symp. on Foundations of Comput. Sci., pages 422–431, 1988.
R. J. Lipton and R. E. Tarjan. A Separator Theorem for Planar Graphs. SIAM J. Appl. Math., 36 (1979), 177–189.
V Communications. Sourcer: Advanced Commenting Disassembler. http://www.v-com.com/products/sourcer.html.
D. A. Spielman and S. Teng. Spectral Partitioning works: Planar graphs and finite element meshes. Technical Report CSD-96-989, U. C. Berkley, February 1996. extended abstract in Proc. 37. IEEE Conf. Foundations of Comp. Sci., 1996.
Amitabha Srivastava Vulcan Tech Report Technical Report Vol TR99, No 76, Microsoft Research Technical Reports, 1999.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Venkatesan, R., Vazirani, V., Sinha, S. (2001). A Graph Theoretic Approach to Software Watermarking. In: Moskowitz, I.S. (eds) Information Hiding. IH 2001. Lecture Notes in Computer Science, vol 2137. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45496-9_12
Download citation
DOI: https://doi.org/10.1007/3-540-45496-9_12
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42733-9
Online ISBN: 978-3-540-45496-0
eBook Packages: Springer Book Archive