Dynamic path-based software watermarking

Christian S Collberg, E. Carter, Saumya K Debray, A. Huntwork, M. Stepp

Research output: Chapter in Book/Report/Conference proceedingConference contribution

70 Citations (Scopus)

Abstract

Software watermarking is a tool used to combat software piracy by embedding identifying information into a program. Most existing proposals for software watermarking have the shortcoming that the mark can be destroyed via fairly straightforward semantics-preserving code transformations. This paper introduces path-based watermarking, a new approach to software watermarking based on the dynamic branching behavior of programs. The advantage of this technique is that error-correcting and tamper-proofing techniques can be used to make path-based watermarks resilient against a wide variety of attacks. Experimental results, using both Java bytecode and IA-32 native code, indicate that even relatively large watermarks can be embedded into programs at modest cost.

Original languageEnglish (US)
Title of host publicationProceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)
PublisherAssociation for Computing Machinery (ACM)
Pages107-118
Number of pages12
Volume1
StatePublished - 2004
EventProceedings of the 2004 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'04) - Washington, DC, United States
Duration: Jun 9 2004Jun 11 2004

Other

OtherProceedings of the 2004 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'04)
CountryUnited States
CityWashington, DC
Period6/9/046/11/04

Fingerprint

Watermarking
Computer crime
Semantics
Costs

Keywords

  • Software piracy
  • Software protection
  • Watermarking

ASJC Scopus subject areas

  • Computer Science(all)

Cite this

Collberg, C. S., Carter, E., Debray, S. K., Huntwork, A., & Stepp, M. (2004). Dynamic path-based software watermarking. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) (Vol. 1, pp. 107-118). Association for Computing Machinery (ACM).

Dynamic path-based software watermarking. / Collberg, Christian S; Carter, E.; Debray, Saumya K; Huntwork, A.; Stepp, M.

Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). Vol. 1 Association for Computing Machinery (ACM), 2004. p. 107-118.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Collberg, CS, Carter, E, Debray, SK, Huntwork, A & Stepp, M 2004, Dynamic path-based software watermarking. in Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). vol. 1, Association for Computing Machinery (ACM), pp. 107-118, Proceedings of the 2004 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'04), Washington, DC, United States, 6/9/04.
Collberg CS, Carter E, Debray SK, Huntwork A, Stepp M. Dynamic path-based software watermarking. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). Vol. 1. Association for Computing Machinery (ACM). 2004. p. 107-118
Collberg, Christian S ; Carter, E. ; Debray, Saumya K ; Huntwork, A. ; Stepp, M. / Dynamic path-based software watermarking. Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). Vol. 1 Association for Computing Machinery (ACM), 2004. pp. 107-118
@inproceedings{d6270f3a1b954399b056676d1269a1e8,
title = "Dynamic path-based software watermarking",
abstract = "Software watermarking is a tool used to combat software piracy by embedding identifying information into a program. Most existing proposals for software watermarking have the shortcoming that the mark can be destroyed via fairly straightforward semantics-preserving code transformations. This paper introduces path-based watermarking, a new approach to software watermarking based on the dynamic branching behavior of programs. The advantage of this technique is that error-correcting and tamper-proofing techniques can be used to make path-based watermarks resilient against a wide variety of attacks. Experimental results, using both Java bytecode and IA-32 native code, indicate that even relatively large watermarks can be embedded into programs at modest cost.",
keywords = "Software piracy, Software protection, Watermarking",
author = "Collberg, {Christian S} and E. Carter and Debray, {Saumya K} and A. Huntwork and M. Stepp",
year = "2004",
language = "English (US)",
volume = "1",
pages = "107--118",
booktitle = "Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)",
publisher = "Association for Computing Machinery (ACM)",

}

TY - GEN

T1 - Dynamic path-based software watermarking

AU - Collberg, Christian S

AU - Carter, E.

AU - Debray, Saumya K

AU - Huntwork, A.

AU - Stepp, M.

PY - 2004

Y1 - 2004

N2 - Software watermarking is a tool used to combat software piracy by embedding identifying information into a program. Most existing proposals for software watermarking have the shortcoming that the mark can be destroyed via fairly straightforward semantics-preserving code transformations. This paper introduces path-based watermarking, a new approach to software watermarking based on the dynamic branching behavior of programs. The advantage of this technique is that error-correcting and tamper-proofing techniques can be used to make path-based watermarks resilient against a wide variety of attacks. Experimental results, using both Java bytecode and IA-32 native code, indicate that even relatively large watermarks can be embedded into programs at modest cost.

AB - Software watermarking is a tool used to combat software piracy by embedding identifying information into a program. Most existing proposals for software watermarking have the shortcoming that the mark can be destroyed via fairly straightforward semantics-preserving code transformations. This paper introduces path-based watermarking, a new approach to software watermarking based on the dynamic branching behavior of programs. The advantage of this technique is that error-correcting and tamper-proofing techniques can be used to make path-based watermarks resilient against a wide variety of attacks. Experimental results, using both Java bytecode and IA-32 native code, indicate that even relatively large watermarks can be embedded into programs at modest cost.

KW - Software piracy

KW - Software protection

KW - Watermarking

UR - http://www.scopus.com/inward/record.url?scp=8344263880&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=8344263880&partnerID=8YFLogxK

M3 - Conference contribution

AN - SCOPUS:8344263880

VL - 1

SP - 107

EP - 118

BT - Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)

PB - Association for Computing Machinery (ACM)

ER -