[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/964001.964016acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article

An abstract interpretation-based framework for software watermarking

Published: 01 January 2004 Publication History

Abstract

Software watermarking consists in the intentional embedding of indelible stegosignatures or watermarks into the subject software and extraction of the stegosignatures embedded in the stegoprograms for purposes such as intellectual property protection. We introduce the novel concept of abstract software watermarking. The basic idea is that the watermark is hidden in the program code in such a way that it can only be extracted by an abstract interpretation of the (maybe non-standard) concrete semantics of this code. This static analysis-based approach allows the watermark to be recovered even if only a small part of the program code is present and does not even need that code to be executed. We illustrate the technique by a simple abstract watermarking protocol for methods of Java™ classes. The concept applies equally well to any other kind of software (including hardware originally specified by software).

References

[1]
ARBOIT, G. A method for watermarking Java™ programs via opaque predicates. In Proc. Int. Conf. Electronic Commerce Research (ICECR-5) (Montreal, CA, 23-27 Oct. 2002).]]
[2]
BARAK, B., GOLDREICH, O., IMPAGLIAZZO, R., RUDICH, S., SAHAI, A., VADHAN, S., AND YANG, K. On the (im)possibility of obfuscating programs. In Proc. CRYPTO'2001, Santa Barbara, CA, LNCS 2139 (19-23 Aug. 2001), J. Kilian, Ed., Springer, 1--18.]]
[3]
COLLBERG, C., AND THOMBORSON, C. Software watermarking: Models and dynamic embeddings. In 24th POPL (San Antonio, TX, 20-22 Jan. 1997), ACM Press, 311--324.]]
[4]
COLLBERG, C., THOMBORSON, C., AND LOW, D. Breaking abstractions and unstructuring data structures. In Proc. 1998 ICCL (Chicago, IL, 14-16 May 1998), IEEE Comp. Soc. Press, 28--38.]]
[5]
COLLBERG, C., THOMBORSON, C., AND LOW, D. Manufacturing cheap, resilient, and stealthy opaque constructs. In 25th POPL (San Diego, CA, Jan. 1998), 184--196.]]
[6]
COUSOT, P.,AND COUSOT, R. Systematic design of program analysis frameworks. In 6th POPL (San Antonio, TX, 1979), ACM Press, 269--282.]]
[7]
COUSOT, P., AND COUSOT, R. Invariance proof methods and analysis techniques for parallel programs. In Automatic Program Construction Techniques, A. Biermann, G. Guiho, and Y. Kodratoff, Eds. Macmillan, 1984, ch. 12, 243--271.]]
[8]
GHIYA, R., AND HENDREN, L. Is it a tree, a dag, or a cyclic graph? a shape analysis for heap-directed pointers in C. In 23rd POPL (St. Petersburg Beach, FL, 1996), ACM Press, 1--15.]]
[9]
GOSLER, J. Software protection: Myth or reality? In Proc. Advances in Cryptology -- CRYPTO'85, LNCS 218 (Santa Barbara, CA, 18-22 Aug. 1985, 1986), H. Williams, Ed., Springer, 140--157.]]
[10]
GRANGER, P. Static analysis of arithmetical congruences. Int. J. Comput. Math. 30 (1989), 165--190.]]
[11]
GUTTMAN, J. D. Private communication. 21 Jan. 2003.]]
[12]
KILDALL, G. A unified approach to global program optimization. In 1st POPL (Boston, MA, Oct. 1973), ACM press, 194--206.]]
[13]
MONDEN, A., IIDA, H., MATSUMOTO, K., INOUE, K., AND TORII, K. A practical method for watermarking Java™ programs. In 24th IEEE Computer Software and Applications Conf., Compsac'2000 (Taipei, Taiwan, 25-29 Oct. 2000), 191--197.]]
[14]
NAGRA, J., COLLBERG, C., AND THOMBORSON, C. A functional taxonomy for software watermarking. In 25th Australasian Computer Science Conf. (ACSC'2002) (Melbourne, Australia, Jan. 2002), M. J. Oudshoorn, Ed., Conferences in Research and Practice in Information Technology, ACS.]]
[15]
PALSBERG, J., KRISHNASWAMY, S., KWON, M., MA, D., SHAO, Q., AND ZHANG, Y. Experience with software watermarking. In Proc. 16th ACSAC'00, New Orleans, LA (11-15 Dec. 2000), IEEE Comp. Soc. Press.]]
[16]
SAGIV, M., REPS, T., AND WILHELM, R. Shape analysis. In Proc. Int. Conf. CC'2000, LNCS 1781 (Berlin, DE, 25 Mar. - 2 Apr. 2000), D. A. Watt, Ed., Springer, 1--17.]]
[17]
SAGIV, M., REPS, T., AND HORWITZ, S. Precise interprocedural dataflow analysis with applications to constant propagation. Theoret. Comput. Sci. 167, 1&2 (1996), 131--170.]]
[18]
STERN, J., HACHEZ, G., KOEUNE,F., AND QUISQUATER, J.-J. Robust object watermarking: Application to code. In Proc. 3rd Int. Work. on Information Hiding, IH'99 (Dresden, DE, 29 Sep. - 1 Oct. 1999), A. Pfitzmann, Ed., vol. 1768 of LNCS, Springer, 368--378.]]
[19]
VALLÉE-RAI, R., HENDREN, L., SUNDARESAN, V., LAM, P., GAGNON, É., AND CO, P. Soot -- a Java™ optimization framework. In CASCON'99 (IBM Center for Advanced Studies Conference) (Toronto, Ontario, CA, -11 Nov. 1999), 125--135.]]

Cited By

View all
  • (2024)Structured Watermarks for Structured SoftwareSN Computer Science10.1007/s42979-024-02934-x5:5Online publication date: 22-May-2024
  • (2022)Study and Comparison of Plagiarism Detection Model for Online Studies2022 International Conference on Applied Artificial Intelligence and Computing (ICAAIC)10.1109/ICAAIC53929.2022.9793101(1154-1158)Online publication date: 9-May-2022
  • (2018)Semantics-based software watermarking by abstract interpretationMathematical Structures in Computer Science10.1017/S0960129518000038(1-50)Online publication date: 15-May-2018
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
POPL '04: Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
January 2004
364 pages
ISBN:158113729X
DOI:10.1145/964001
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 39, Issue 1
    POPL '04
    January 2004
    352 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/982962
    Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 January 2004

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. abstract interpretation
  2. authentication
  3. copyrights protection
  4. fingerprinting
  5. identification
  6. intellectual property protection
  7. obfuscation
  8. software authorship
  9. software watermarking
  10. static analysis
  11. steganography
  12. stegoanalyst
  13. stegoattacks
  14. stegokey
  15. stegomark
  16. stegosignature
  17. tamper-proofing
  18. trustworthiness
  19. validation watermarking

Qualifiers

  • Article

Conference

POPL04

Acceptance Rates

POPL '04 Paper Acceptance Rate 29 of 176 submissions, 16%;
Overall Acceptance Rate 824 of 4,130 submissions, 20%

Upcoming Conference

POPL '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)17
  • Downloads (Last 6 weeks)1
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Structured Watermarks for Structured SoftwareSN Computer Science10.1007/s42979-024-02934-x5:5Online publication date: 22-May-2024
  • (2022)Study and Comparison of Plagiarism Detection Model for Online Studies2022 International Conference on Applied Artificial Intelligence and Computing (ICAAIC)10.1109/ICAAIC53929.2022.9793101(1154-1158)Online publication date: 9-May-2022
  • (2018)Semantics-based software watermarking by abstract interpretationMathematical Structures in Computer Science10.1017/S0960129518000038(1-50)Online publication date: 15-May-2018
  • (2018)Encoding watermark numbers as reducible permutation graphs using self-inverting permutationsDiscrete Applied Mathematics10.1016/j.dam.2018.04.021250(145-164)Online publication date: Dec-2018
  • (2018)Software Watermarking: Progress and ChallengesINAE Letters10.1007/s41403-018-0058-8Online publication date: 20-Oct-2018
  • (2018)Semantic-integrated software watermarking with tamper-proofingMultimedia Tools and Applications10.1007/s11042-017-5373-777:9(11159-11178)Online publication date: 1-May-2018
  • (2018)Code obfuscation against abstraction refinement attacksFormal Aspects of Computing10.1007/s00165-018-0462-630:6(685-711)Online publication date: 1-Nov-2018
  • (2017)Hidden Path: Dynamic Software Watermarking Based on Control Flow Obfuscation22017 IEEE International Conference on Computational Science and Engineering (CSE) and IEEE International Conference on Embedded and Ubiquitous Computing (EUC)10.1109/CSE-EUC.2017.280(443-450)Online publication date: Jul-2017
  • (2017)Code Obfuscation Against Abstract Model Checking AttacksVerification, Model Checking, and Abstract Interpretation10.1007/978-3-319-73721-8_5(94-115)Online publication date: 29-Dec-2017
  • (2017)Software Watermarking for Java Program Based on Method Name EncodingProceedings of the International Conference on Advanced Intelligent Systems and Informatics 201710.1007/978-3-319-64861-3_81(865-874)Online publication date: 31-Aug-2017
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media