Register Expansion, SemaCall, and SideData: Three Low-Overhead Dynamic Watermarks Suitable for Automation in LLVM

Schwarzbeck D, Novac D, Philippsen M (2025)


Publication Language: English

Publication Type: Journal article, Original article

Publication year: 2025

Journal

Book Volume: 6

Pages Range: 1-22

Article Number: 18

Journal Issue: 3

URI: https://dl.acm.org/doi/10.1145/3743152

DOI: 10.1145/3743152

Open Access Link: https://dl.acm.org/doi/10.1145/3743152

Abstract

Software watermarking is a means of protection against piracy and unauthorized tampering. We propose three dynamic software watermarking techniques and show how we automatically insert them into to-be-watermarked code. All three select many spots in the code and insert randomly generated and computationally different hash-like arithmetics that at runtime transform a secret input into a watermark message.
The Register Expansion Watermark expands 32 bit values to 64 bits and piggy-backs hash computed values upon existing computations to spread the message around. The SemaCall Watermark performs its hash arithmetics on the results of a set of library functions that the to-be-watermarked code calls. As the semantics of the library functions is known, we can compare the generated hash values to the ones expected for the secret input and then trigger an easter-egg that generates the message. The SideData Watermark adapts the techniques from the SemaCall Watermark to work on memory allocations. By detecting the secret input in the allocated memory with an adapted hash generation, we can reuse the same procedures to generate the message in an easter-egg. We show that leveraging many and different hash-like arithmetics, our watermarks are hard to attack and also have a low performance overhead.


Authors with CRIS profile

Related research project(s)

How to cite

APA:

Schwarzbeck, D., Novac, D., & Philippsen, M. (2025). Register Expansion, SemaCall, and SideData: Three Low-Overhead Dynamic Watermarks Suitable for Automation in LLVM. Digital Threats: Research and Practice, 6(3), 1-22. https://doi.org/10.1145/3743152

MLA:

Schwarzbeck, David, Daniela Novac, and Michael Philippsen. "Register Expansion, SemaCall, and SideData: Three Low-Overhead Dynamic Watermarks Suitable for Automation in LLVM." Digital Threats: Research and Practice 6.3 (2025): 1-22.

BibTeX: Download