<p>Code watermarking has gained increasing attention for tracing the provenance of code with the rapid growth of the open-source community. Existing work on code watermarking has shown promising results yet still falls short, especially when a multi-bit watermark for encoding diverse information is required. In this paper, we propose <span>DWC</span>, a novel code watermarking method with highly watermark capacity. The key idea of <span>DWC</span> is to first decompose the code into natural and formal channels, then embed the watermark separately into each channel based solely on its respective information. As such, <span>DWC</span> reduces the mutual interference between these two channels and the impacts of irrelevant information within the code, thus enabling more effective transformations for embedding watermarks with higher capacity and robustness. Our extensive experiments on source code snippets in four programming languages (C, C++, Java, and Python) demonstrate the effectiveness, efficiency, and capability of <span>DWC</span> in embedding multi-bit watermarks, as well as the utility and robustness of the watermarked code it generates.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Decomposition then watermarking: Enhancing code traceability with dual-channel code watermarking

  • Haibo Lin,
  • Zhong Li,
  • Ruihua Ji,
  • Minxue Pan,
  • Tian Zhang,
  • Nan Wu,
  • Xuandong Li

摘要

Code watermarking has gained increasing attention for tracing the provenance of code with the rapid growth of the open-source community. Existing work on code watermarking has shown promising results yet still falls short, especially when a multi-bit watermark for encoding diverse information is required. In this paper, we propose DWC, a novel code watermarking method with highly watermark capacity. The key idea of DWC is to first decompose the code into natural and formal channels, then embed the watermark separately into each channel based solely on its respective information. As such, DWC reduces the mutual interference between these two channels and the impacts of irrelevant information within the code, thus enabling more effective transformations for embedding watermarks with higher capacity and robustness. Our extensive experiments on source code snippets in four programming languages (C, C++, Java, and Python) demonstrate the effectiveness, efficiency, and capability of DWC in embedding multi-bit watermarks, as well as the utility and robustness of the watermarked code it generates.