← 最新论文
🤖 machine learning

SWaRL: Safeguard Code Watermarking via Reinforcement Learning

SWaRL 是一个稳健且保真的代码水印框架,它利用带有编译器反馈的强化学习和一个保密验证器,在大型语言模型生成的代码中嵌入可验证的签名,从而在保持功能正确性的同时确保强大的检测准确性和对攻击的鲁棒性。

原作者: Neusha Javidnia, Ruisi Zhang, Ashish Kundu, Farinaz Koushanfar

发布于 2026-05-11
📖 1 分钟阅读☕ 轻松阅读

原作者: Neusha Javidnia, Ruisi Zhang, Ashish Kundu, Farinaz Koushanfar

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象你是一位主厨,多年来致力于完善一款世界最佳披萨的秘制配方。你开了一家餐厅,顾客可以点一片披萨,端上来的披萨美味可口。但有个问题:顾客可以拍下披萨的照片,复制配方,并将其作为自己的成果出售。或者,一位竞争对手可以潜入厨房,更改几种配料,然后声称这个新版本是他们的。

在人工智能领域,"代码大语言模型(Code LLMs)"就像那些主厨。它们是强大的计算机,为我们编写计算机代码(即软件的配方)。但就像你的披萨一样,它们生成的代码是宝贵的知识产权。如果有人窃取它,或稍作修改以掩盖其来源,原创者就会失去署名权和掌控权。

本文介绍了SWaRL,这是一个旨在解决该问题的新系统。可以将 SWaRL 想象为主厨在披萨离开厨房前,贴在每一片披萨上的魔法隐形印章。这个印章极其微妙,披萨的味道完全不变,但如果你拥有正确的“印章检测器”,就能百分之百地证明这片披萨出自你的厨房。

以下是 SWaRL 的工作原理,分解为简单概念:

1. 旧式印章的问题

在 SWaRL 出现之前,主要有两种给代码盖章的方式:

  • “重手”方法:想象主厨强行让披萨呈现出一种怪异、可见的饼边形状,以此证明它是自己的。这往往会让披萨难以下咽(代码会出错或无法运行)。
  • “人工规则”方法:想象主厨遵循一份严格的规则清单,例如“如果单词'loop'出现,就总是多加一片意大利辣香肠”。聪明的窃贼很容易找出这些规则,并重新排列披萨(重构代码),在不改变味道的情况下移除辣香肠。

2. SWaRL 解决方案:智能训练营

SWaRL 的不同之处在于,它不只是遵循规则;它通过一种称为强化学习的过程,学习如何完美地为代码盖章。

可以将这想象成 AI 主厨的训练营:

  • 目标:主厨必须制作出既(1)味道完美(运行正确)又(2)带有隐形印章的披萨。
  • 教练(奖励系统):主厨尝试制作披萨。两位评委进行检查:
    1. 味觉测试员:代码是否真的能运行?如果代码崩溃,主厨得分低。
    2. 印章侦探:能否找到隐形印章?如果印章缺失,主厨得分低。
  • 学习循环:主厨尝试许多不同版本的披萨。如果某个版本味道好带有印章,主厨就会获得高分并学会重复这一做法。如果它出错或丢失了印章,主厨就会学会避免这样做。

3. 秘密武器:"LoRA"(轻量级适配器)

通常,教会一个巨型 AI 主厨新技巧需要重建整个厨房,这既昂贵又缓慢。SWaRL 使用了一种称为LoRA(低秩自适应)的技术。

想象一下,与其重建整个厨房,不如给主厨一条特殊的、极小的围裙。这条围裙上印有隐形印章的指令。主厨将这条围裙穿在正常衣服外面。

  • 为何出色:它便宜、快速,如果主厨以后换了新围裙,也很容易更换。它不会改变主厨的核心个性,只是增加了盖章的技能。

4. 为何难以作弊(鲁棒性)

该论文针对试图移除印章的“窃贼”测试了 SWaRL。

  • “重排”攻击:窃贼获取代码并重新编写,更改变量名或移动代码行(就像重新排列披萨上的配料)。
  • 结果:旧方法(如“人工规则”方法)在代码被重排后失效;印章消失了。然而,SWaRL 学会了为代码的本质盖章,而不仅仅是表面。即使代码被大幅重排,隐形印章仍然可被检测到。

5. 核心结论

该论文声称,SWaRL 兼具两者之长:

  • 运行完美:SWaRL 生成的代码通过测试的表现与未加水印的代码一样好(有时甚至更好,因为训练过程迫使 AI 更加谨慎)。
  • 难以移除:水印在尝试重写或重构代码后依然幸存。
  • 快速:添加印章不会减慢代码生成速度,而检查印章则极其迅速。

简而言之,SWaRL 教会 AI 代码生成器自动在其作品中嵌入“数字指纹”。这个指纹证明了代码的制作者,能在试图抹除它的行动中幸存,且不会破坏代码本身的质量。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →