Software watermarking

Models and dynamic embeddings

Christian S Collberg, Clark Thomborson

Research output: Chapter in Book/Report/Conference proceedingChapter

244 Citations (Scopus)

Abstract

Watermarking embeds a secret message into a cover message. In media watermarking the secret is usually a copyright notice and the cover a digital image. Watermarking an object discourages intellectual property theft, or when such theft has occurred, allows us to prove ownership. 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.

Original languageEnglish (US)
Title of host publicationConference Record of the Annual ACM Symposium on Principles of Programming Languages
PublisherACM
Pages311-324
Number of pages14
StatePublished - 1999
Externally publishedYes
EventProceedings of the 1999 26th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Language, POPL'99 - San Antonio, TX, USA
Duration: Jan 20 1999Jan 22 1999

Other

OtherProceedings of the 1999 26th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Language, POPL'99
CitySan Antonio, TX, USA
Period1/20/991/22/99

Fingerprint

Watermarking
Intellectual property
Taxonomies

ASJC Scopus subject areas

  • Software

Cite this

Collberg, C. S., & Thomborson, C. (1999). Software watermarking: Models and dynamic embeddings. In Conference Record of the Annual ACM Symposium on Principles of Programming Languages (pp. 311-324). ACM.

Software watermarking : Models and dynamic embeddings. / Collberg, Christian S; Thomborson, Clark.

Conference Record of the Annual ACM Symposium on Principles of Programming Languages. ACM, 1999. p. 311-324.

Research output: Chapter in Book/Report/Conference proceedingChapter

Collberg, CS & Thomborson, C 1999, Software watermarking: Models and dynamic embeddings. in Conference Record of the Annual ACM Symposium on Principles of Programming Languages. ACM, pp. 311-324, Proceedings of the 1999 26th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Language, POPL'99, San Antonio, TX, USA, 1/20/99.
Collberg CS, Thomborson C. Software watermarking: Models and dynamic embeddings. In Conference Record of the Annual ACM Symposium on Principles of Programming Languages. ACM. 1999. p. 311-324
Collberg, Christian S ; Thomborson, Clark. / Software watermarking : Models and dynamic embeddings. Conference Record of the Annual ACM Symposium on Principles of Programming Languages. ACM, 1999. pp. 311-324
@inbook{3b3274dcf76547699a4424e855f8f797,
title = "Software watermarking: Models and dynamic embeddings",
abstract = "Watermarking embeds a secret message into a cover message. In media watermarking the secret is usually a copyright notice and the cover a digital image. Watermarking an object discourages intellectual property theft, or when such theft has occurred, allows us to prove ownership. 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.",
author = "Collberg, {Christian S} and Clark Thomborson",
year = "1999",
language = "English (US)",
pages = "311--324",
booktitle = "Conference Record of the Annual ACM Symposium on Principles of Programming Languages",
publisher = "ACM",

}

TY - CHAP

T1 - Software watermarking

T2 - Models and dynamic embeddings

AU - Collberg, Christian S

AU - Thomborson, Clark

PY - 1999

Y1 - 1999

N2 - Watermarking embeds a secret message into a cover message. In media watermarking the secret is usually a copyright notice and the cover a digital image. Watermarking an object discourages intellectual property theft, or when such theft has occurred, allows us to prove ownership. 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.

AB - Watermarking embeds a secret message into a cover message. In media watermarking the secret is usually a copyright notice and the cover a digital image. Watermarking an object discourages intellectual property theft, or when such theft has occurred, allows us to prove ownership. 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.

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

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

M3 - Chapter

SP - 311

EP - 324

BT - Conference Record of the Annual ACM Symposium on Principles of Programming Languages

PB - ACM

ER -