跳转至

WET: Overcoming Paraphrasing Vulnerabilities in Embeddings-as-a-Service with Linear Transformation Watermark

会议: ACL 2025
arXiv: 2409.04459
代码: https://github.com/anudeex/WET.git
领域: AI 安全
关键词: EaaS水印, 嵌入保护, 改写攻击, 线性变换, 知识产权保护

一句话总结

揭示了现有 EaaS 嵌入水印(EmbMarker/WARDEN)可被改写攻击绕过,提出 WET(线性变换水印),通过秘密循环矩阵对嵌入做线性变换注入水印,理论和实验证明其对改写攻击具有鲁棒性,验证 AUC 接近 100%。

研究背景与动机

  1. 领域现状:EaaS(嵌入即服务)是 LLM 开发者提供的嵌入提取 API。攻击者可以通过模仿攻击——查询 API 获取嵌入后训练替代模型来克隆服务。现有水印方法(EmbMarker、WARDEN)通过触发词机制在嵌入中注入可验证信号。
  2. 现有痛点:这些方法依赖触发词(trigger words)来触发水印注入——只有当输入包含预定义触发词时,对应嵌入才被加入水印。这意味着攻击者可以通过改写输入文本来改变触发词的存在,从而稀释水印。
  3. 核心矛盾:触发词机制是 EmbMarker/WARDEN 的核心设计,但也是其致命弱点。改写后触发词被同义词替代,水印权重降低,多次改写取平均后水印信号几乎消失。
  4. 本文要解决:(1) 验证改写攻击的有效性,(2) 设计一种对改写鲁棒的嵌入水印方法。
  5. 切入角度:不依赖触发词,而是对所有输出嵌入进行线性变换。由于线性变换的交换性,改写后取平均等价于对伪聚合嵌入的变换——水印信号不会被平均稀释。
  6. 核心idea:用秘密的循环矩阵 \(\mathbf{T}\) 对原始嵌入做线性变换产生水印嵌入,验证时用伪逆 \(\mathbf{T}^+\) 恢复原始嵌入并比较相似度。

方法详解

整体框架

水印注入:EaaS 收到查询后,先用原始模型生成嵌入 \(\mathbf{e}_o\),再用秘密变换矩阵 \(\mathbf{T}\) 做线性变换 \(\mathbf{e}_p = \text{Norm}(\mathbf{T} \cdot \mathbf{e}_o)\) 返回给用户。验证:对可疑服务的嵌入 \(\mathbf{e}'_p\) 用伪逆 \(\mathbf{T}^+\) 恢复 \(\mathbf{e}'_o = \mathbf{T}^+ \cdot \mathbf{e}'_p\),比较与原始嵌入的余弦相似度。

关键设计

  1. 改写攻击(新攻击方式):
  2. 做什么:验证改写可以绕过现有 EaaS 水印
  3. 核心思路:对每条输入文本生成 \(P\) 条改写(用 GPT-3.5/DIPPER/往返翻译),分别查询 EaaS 获取水印嵌入,取平均作为训练替代模型的目标。由于改写改变了触发词的存在,平均后的水印权重大幅降低
  4. 设计动机:现有水印方法只在有触发词时注入水印,改写是最自然的绕过方式。理论上证明了随 \(P\) 增加,高水印权重样本的概率指数下降

  5. WET 线性变换水印:

  6. 做什么:设计对改写鲁棒的嵌入水印
  7. 核心思路:关键定理——线性变换具有交换性:\(\text{avg}(f(\{\mathbf{e}_p^i\})) = f(\text{avg}(\{\hat{\mathbf{e}}_o^i\}))\)。即使攻击者改写并取平均,水印变换 \(\mathbf{T}\) 仍然存在于聚合嵌入中,不会被平均操作消除。且水印注入不依赖触发词,对所有嵌入统一变换
  8. 设计动机:线性变换的代数性质天然抵抗平均操作,这是 EmbMarker/WARDEN 的加法水印做不到的

  9. 循环矩阵构造:

  10. 做什么:生成满足可逆性和条件数要求的变换矩阵
  11. 核心思路:随机生成第一行(\(k\) 个非零位置,值从 \(U(0,1)\) 采样,归一化),后续行依次循环移位。循环矩阵的 FFT 值非零时保证满秩,从而伪逆计算精确。超参数 \(w\)(水印维度)和 \(k\)(每行非零数)控制信息保留和水印强度
  12. 设计动机:循环结构确保所有原始维度均等地贡献到水印中,避免信息集中于少数维度

实验关键数据

主实验(改写攻击对现有方法的影响)

GPT-3.5 改写攻击,Enron 数据集:

方法 ACC↑ AUC (验证)↓ 攻击是否成功
WARDEN (无攻击) 94.50 97.40
WARDEN + GPT-3.5 改写 92.81 62.43 ✓ (AUC大幅下降)
WET (无攻击) 90.50 100.0
WET + GPT-3.5 改写 89.80 99.98 ✗ (AUC几乎不变)

WET vs 基线(4个数据集平均)

方法 下游任务 ACC 验证 AUC 对改写鲁棒
EmbMarker ~93% ~95% (无攻击) → ~55% (攻击后)
WARDEN ~93% ~97% (无攻击) → ~63% (攻击后)
WET ~90% ~100% (无攻击) → ~100% (攻击后)

关键发现

  • 改写攻击有效瓦解现有水印:WARDEN 的验证 AUC 从 97.4 降至 62.4(接近随机),同时下游任务性能损失很小
  • WET 对改写完全鲁棒:验证 AUC 在所有改写方法(GPT-3.5、DIPPER、往返翻译)下均保持 ~100%
  • WET 的 utility 代价可控:下游任务准确率下降约 3-4 个百分点,是合理的安全性-性能trade-off
  • 单样本即可验证:WET 只需查询 1 个样本即可达到近乎完美的验证准确率,而 EmbMarker/WARDEN 需要大量样本
  • 循环矩阵的选择是关键——非循环随机矩阵的条件数较差,验证效果显著下降

亮点与洞察

  • 攻击和防御的完整链条:不只是提出新防御,还先系统性地验证了改写攻击的有效性(新贡献),然后设计了针对性的防御
  • 理论保证是最大优势:Theorem 1 从线性代数角度证明了线性变换对平均操作的鲁棒性,不是拍脑袋设计的。这使得 WET 不仅在实验上有效,理论上也是可靠的
  • 不依赖触发词的根本性改进:将水印从"条件注入"变为"全局变换",从根本上消除了选择性攻击的可能性

局限性 / 可改进方向

  • 下游任务的 utility 损失(~3-4%)在某些高精度应用中可能不可接受
  • 仅在 BERT 作为替代模型的场景下测试,不同架构的替代模型(如 Transformer 变体)可能表现不同
  • 变换矩阵 \(\mathbf{T}\) 的安全性完全依赖保密性——如果泄露则水印可被移除
  • 未考虑攻击者可能的非线性后处理(如 fine-tuning 中的非线性层)对水印的影响

相关工作与启发

  • vs EmbMarker (Peng et al., 2023):EmbMarker 用单一目标嵌入+触发词,容易被对比方法恢复目标嵌入。WET 不使用触发词且变换矩阵远大于单个嵌入,更难被逆向工程
  • vs WARDEN (Shetty et al., 2024):WARDEN 用多个目标嵌入改进了 EmbMarker,但仍依赖触发词,本文证明改写攻击可以有效绕过
  • vs 文本水印 (Kirchenbauer et al., 2023):文本水印也被证明对改写脆弱,但嵌入水印的问题更隐蔽——嵌入空间的操作对用户不可见

评分

  • 新颖性: ⭐⭐⭐⭐ 线性变换水印是新颖的方法设计,改写攻击的发现也有价值
  • 实验充分度: ⭐⭐⭐⭐ 4个数据集、3种改写方法、多个超参数消融,有理论证明
  • 写作质量: ⭐⭐⭐⭐ 问题定义清晰,攻防逻辑严密,理论推导简洁
  • 价值: ⭐⭐⭐⭐ 对 EaaS 知识产权保护有直接应用价值