Dynamic Graph-Based Software Fingerprinting
Fingerprinting embeds a secret message into a cover message. In media fingerprinting, the secret is usually a copyright notice and the cover a digital image. Fingerprinting an object discourages intellectual property theft, or when such theft has occurred, allows us to prove ownership. The Software...
Gespeichert in:
Veröffentlicht in: | ACM transactions on programming languages and systems 2007-10, Vol.29 (6), p.35 |
---|---|
Hauptverfasser: | , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Fingerprinting embeds a secret message into a cover message. In media fingerprinting, the secret is usually a copyright notice and the cover a digital image. Fingerprinting an object discourages intellectual property theft, or when such theft has occurred, allows us to prove ownership.
The Software Fingerprinting 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 this article, we describe a software fingerprinting technique in which a dynamic graph fingerprint is stored in the execution state of a program. Because of the hardness of pointer alias analysis such fingerprints are difficult to attack automatically. |
---|---|
ISSN: | 0164-0925 1558-4593 |
DOI: | 10.1145/1286821.1286826 |