Abstract
Software watermarking is a new research area that aims at providing copyright protection for commercial software. It minimizes software piracy by hiding copyright signatures inside the program code or its runtime state. Prior proposals hide the watermarks in dummy data structures, e.g., linked lists and graphs that are created during the execution of the hosting software for this reason. This makes it vulnerable to subtractive attacks, because the attacker can remove the data structure without altering the operation or the semantic of the software program. In this regard, we argue that hiding watermarks in one or more data structures that are used by the program would make the watermark more robust because removing the watermark would alter the semantic and the operations of the underlying software. However, the challenge is that the insertion of the watermark should have a minimal effect on the operations and performance of the data structure.
This paper proposes a novel method for watermarking R-tree data structure and its variants. The proposed watermarking scheme takes advantage of the redundancy in the way the entries within R-tree nodes are ordered. R-trees do not require ordering the entries in a specific way. Node entries are re-ordered in a way to map the watermark. The new order is calculated relative to a “secret” initial order, known only to the software owner, using a technique based on a numbering system that uses variable radix and factorial base. The addition of the watermark in the R-tree data structure neither affects the performance nor increases the size of the R-tree. The paper provides a threat model and analysis to show that the watermarked R-trees are robust and can withstand various types of attacks.
Keywords
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Guttman, A.: R-trees: A dynamic structure for spatial searching. In: Proc. ACM SIGMOD, pp. 47–57 (June 1984)
Monden, A., Iida, H., Matusmoto, K.: A practical method for watermarking java programs. In: 24th computer software and applications conference (COMPASAC 2000), Taipei (October 2000)
Rubin, A., Greer, D.: A survey of the world wide web security. IEEE Computer 31(9), 34–41 (1998)
Iyer, B., Mehrotra, S., Mykletun, E., Tsudik, G., Wu, Y.: A Framework for Efficient Storage Security in RDBMS. In: Bertino, E., Christodoulakis, S., Plexousakis, D., Christophides, V., Koubarakis, M., Böhm, K., Ferrari, E. (eds.) EDBT 2004. LNCS, vol. 2992, pp. 147–164. Springer, Heidelberg (2004)
Collberg, C., Thomborson, C.: Watermarking, tamper-proofing, and obfuscation- tools for software protection. IEEE transactions on software engineering 28(8) (2002)
Collberg, C., Thomborson, C.: Software watermarking: models and dynamic Embeddings. In: ACM POPL 1999, pp. 311–324 (January 1999)
Collberg, C., Carter, E., Debray, S., Huntwork, A., Linn, C., Stepp, M.: Dynamic path-based software watermarking. In: Proceedings of the ACM SIGPALN 2004 conference on programming language design and implementation, vol. 39(6) (June 2004)
Collberg, C., Nagra, J., Thomborson, C.: A functional taxonomy for software watermarking. In: Proc. 25th Australian Computer Science Conference 2002, vol. 4, pp. 177–186 (2002)
Barbara, D., Couto, J., Jajodia, S.: ADAM: A testabed for exploring the use of data mining in intrusion detection. SIGMOD Record 30(4), 15–24 (2001)
Gross-Amblard, D.: Query-preserving watermarking of relational databases and XML documents. In: ACM Symp. on Principles of Database Systems (PODS), pp. 191–201 (2003)
Kirovski, D., Malvar, H.: Robust spread-spectrum audio watermarking. In: Proceedings of 2001 IEEE International Conference on Acous tics, Speech and Signal Processing, vol. 3, pp. 1345–1348 (May 2001)
Knuth, D.E.: The art of computer programming: Volume 2: seminumerical algorithms, 3rd edn. Addison-Wesley, Reading (1998)
Smarandache, F.: Definitions, solved and unsolved problems, conjectures, and theorems in number theory and geometry. Perez, M.L. (ed.), p. 29. Xiquan publishing house (2000)
Petitcolas, F.A., Anderson, R.J., Kuhn, M.G.: Information hiding: a survey. Proceedings of the IEEE, special issue on protection of multimedia content 87(7), 1062–1078 (1999)
Kamel, I., Faloutsos, C.: On packing R-trees. In: Second Int. Conf. on Information and Knowledge Management (CIKM), pp. 490–499 (November 1993)
Cox, I.J., Miller, M.L.: Electronic watermarking: the first 50 years. EURASIP Journal on Applied Signal Processing 2002(2), 126–132 (2002)
Davidson, I.R., Myhrvold, N.: Method and system for generating and auditing a signature for a computer program. US Patent 5559884, Assignee: Microsoft Corporation (September 1996)
Industrial Design and Construction (IDC) and Business Software Alliance (BSA), Piracy study (July 2004), http://www.bsaa.com.au/downloads/PiracyStudy070704.pdf
Palsberg, J., Krishnaswamy, S., Kwon, M., Ma, D., Shao, Q., Zhang, Y.: Experience with software watermarking. In: Proceedings of ACSAC 2000, 16th Annual Computer security applications conference, pp. 308–316 (2000)
Bloom, J.A., Cox, I.J., Kalker, T., Linnartz, J.-P.M., Miller, M.L., Traw, C.B.: Copy protection for DVD video. Proceedings of the IEEE 87(7), 1267–1276 (1999)
Bouganim, L., Pucheral, P.: Chip-Secured Data Access: Confidential Data on Untrusted Servers. In: Bressan, S., Chaudhri, A.B., Li Lee, M., Yu, J.X., Lacroix, Z. (eds.) CAiSE 2002 and VLDB 2002. LNCS, vol. 2590. Springer, Heidelberg (2003)
Razeen, M., Ali, A., Muhammad Sheikh, N.: State-of-the-art in software watermarking. In: 2nd International Workshop on Frontiers of Information Technology, Islamabad, Pakistan, December 20-21 (2004)
Wu, M., Liu, B.: Data hiding in image and video: part I- Fundamental issues and solutions. IEEE Transactions on image processing 12(6), 685 (2003)
McAfee Research. State-of-the-art in decompilation and disassembly (SADD), http://isso.sparta.com/research/documents/sadd.pdf
Goodrich, M.J., Atallah, M.J., Tamassia, R.: Indexing Information for Data Forensics. In: Ioannidis, J., Keromytis, A.D., Yung, M. (eds.) ACNS 2005. LNCS, vol. 3531, pp. 206–221. Springer, Heidelberg (2005)
Beckmann, N., Kriegel, H.-P., Schneider, R., Seeger, B.: The R*-tree: an efficient and robust access method for points and rectangles. In: ACM SIGMOD, pp. 322–331 (May 1990)
Johnson, N.F., Jajodia, S.: Exploring Steganography: Seeing the unseen. IEEE Computer 31(2), 26–34 (1998)
Roussopoulos, N., Leifker, D.: Direct spatial search on pictorial databases using packed R-trees. In: Proc. ACM SIGMOD (May 1985)
Bassia, P., Pitas, I., Nikolaidis, N.: Robust audio watermarking in the time domain. Multimedia IEEE transaction 3, 232–241 (2001)
Cousot, P., Cousot, R.: An abstract interpretation-based framework for software watermarking. In: Proceedings of the 31st ACM SIGPLAN-SIGACT, pp. 173–185 (2004)
Samson, P.R.: Apparatus and method for serializing and validating copies of computer software. US Patent 5,287,408, Assignee: Autodesk, Inc. (February 1994)
Agrawal, R., Kieman, J., Srikant, R., Xu, Y.: Hippocratic Databases. In: Proc. of Very Large Databases (VLDB), Hong Kong, China (2002)
Agrawal, R., Haas, P.J., Kiernan, J.: Watermarking relational data: framework, algorithms and analysis. The VLDB journal 12(2), 157–169 (2003)
Sion, R., Atallah, M.J., Prabhakar, S.K.: Resilient information hiding for abstract semistructures. In: Kalker, T., Cox, I., Ro, Y.M. (eds.) IWDW 2003. LNCS, vol. 2939, pp. 141–153. Springer, Heidelberg (2004)
Sion, R., Atallah, M.J., Prabhakar, S.K.: Rights protection for relational data. In: ACM International Conference on Management Data (SIGMOD), pp. 98–109 (2003)
Venkatesan, R., Vazirani, V., Sinha, S.: A graph theoretic approach to software watermarking. In: Moskowitz, I.S. (ed.) IH 2001. LNCS, vol. 2137, pp. 157–168. Springer, Heidelberg (2001)
Craver, S., Katzenbeisser, S.: Security analysis of public-key watermarking schemes. In: Proceedings of SPIE Mathematics of Data/Image Coding, Compression and Encryption VI, vol. 4475, pp. 172–182 (2001)
Craver, S., Memon, N., Yeo, B.-L., Yeung, M.: On the invertibility of invisible watermarking techniques. In: Proceedings of the 1997 Int. Conf. on Image Processing, vol. 1, p. 540 (1997)
Moskowitz, S.A., Cooperman, M.: Method for stega-cipher protection of computer code. US Patent 5,745,569, Assignee: The Dice Company (January 1996)
Khanna, S., Zane, F.: Watermarking maps: Hiding information in structured data. In: ACM/SIAM Symp. on Discrete Algorithms, pp. 596–605 (2000)
Sellis, T., Roussopoulos, N., Faloutsos, C.: The R+ tree: a dynamic index for multi-dimensional objects. In: Proc. 13th Innternational Conference on VLDB, pp. 507–518 (September 1987)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Albluwi, Q., Kamel, I. (2006). Watermarking Essential Data Structures for Copyright Protection. In: Pointcheval, D., Mu, Y., Chen, K. (eds) Cryptology and Network Security. CANS 2006. Lecture Notes in Computer Science, vol 4301. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11935070_17
Download citation
DOI: https://doi.org/10.1007/11935070_17
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-49462-1
Online ISBN: 978-3-540-49463-8
eBook Packages: Computer ScienceComputer Science (R0)