水印残差可跨图伪造,NUS用CoverLock把平均攻击成功率压到0.25%

Residual Transferability in Neural Image Watermarking

Ziping Dong, Qi Li, Xinchao Wang

cs.CR, cs.CV

2026-09-26

NUS把水印残差跨图可解码程度量化为RT,发现架构设计主导可转移性;插件CoverLock在CIN、VINE、MBRS上把平均伪造成功率压到0.25%以下。

这篇在解决什么

Google SynthID、Meta、OpenAI、Amazon都在生成图上嵌不可见水印,用来做来源追溯。攻击者可以从一张或几张已发布的加水印图里估出残差,也就是加水印图相对干净图的那层扰动,再贴到无关图上,让解码器把无关内容认成同一条消息。Yang等人用多图平均,WmForger用单张参考加辅助模型,门槛已经很低。

先前工作主攻更强的伪造,没解释残差为什么能跨图存活。NUS把这件事收成系统属性残差可转移性(residual transferability, RT):水印证据迁到无关封面上之后还能不能解码。RT高,等于模型走了一条不怎么看图的捷径。

方法

RT不绑死某一种估残差算法。对每条消息,用s张源图的ground-truth残差平均后贴到T张无关目标图,把平均比特准确率ā归一化成RT@s = max(2ā−1, 0)。0是随机猜,1是残差几乎无损迁移。默认s = T = 100,消息数5。

五个系统的RT@100:CIN 1.00、VINE 0.99、MBRS 0.98,HiDDeN 0.28,RivaGAN 0.08。换训练集、消息长度、损失权重、噪声增强,HiDDeN仍低、MBRS仍高。缺口在架构。

高RT残差跨封面组平均后形状几乎不变。解码器末层里,封面引起的方差CIN / VINE / MBRS只占4.6%、5.5%、1.0%;HiDDeN为57.2%,RivaGAN为74.1%。

对照实验钉住两条绑图机制。Broadcast-GAP把消息在空间上广播并与局部特征融合,解码器保持空间特征直到最后才全局平均池化。从HiDDeN拆掉这对组件,RT@100从0.214升到0.985;给MBRS、CIN装上,分别降到0.098和0.091。只拆broadcast得到0.228,只拆GAP得到0.313,必须两个一起拆才会崩。RivaGAN靠内容自适应attention按输入图调制嵌入;改成固定图案后RT@100从0.077升到0.944。

VINE装Broadcast-GAP训失败,BitAcc 0.600、PSNR 6.97 dB。MBRS装上之后PSNR从42.32掉到27.07。低RT用画质换。

现成系统不好改架构时,CoverLock在消息外包一层图相关码。冻结DINOv2抽patch token,通道均值和标准差经轻量投影头与固定正交投影得到二进制码b,嵌入前做p = m ⊕ b,解码再XOR回来。同一用户消息在不同封面上变成不同payload,原编码器解码器参数不动。训练只用MSCOCO自然图和失真视图做对比学习,不碰水印模型和伪造样本。

结果

在CIN、VINE、MBRS与COCO、ImageNet、DIV2K上测三种攻击:单张GT残差GT@1、Yang等人100张平均、WmForger单张参考。阈值按Bernoulli零模型校准到FPR < 10^{-6}。

CoverLock在全部设定上平均伪造成功率(ASR,假阳率)最高不超过0.25%。对照格子如下。

设定ConvNeXtMHDWCoverLock
CIN, COCO, Yang攻击 ASR86.09%0.00%0.00%
MBRS, COCO, WmForger ASR96.28%4.76%0.06%
MBRS, COCO, GT@1 ASR2.41%11.37%0.11%

同设置下CoverLock-G的真阳率TPR为92.50%,MHDW为86.38%。ConvNeXt用真水印图和GT伪造训练,换一种估残差方法痕迹就变。MHDW在残差更干净时失效更明显,MBRS上Yang攻击ASR升到46.14%。

MHDW与CoverLock-G的payload BER同为7.4%,CoverLock把哈希BER从14.6%降到4.2%。多出来的鲁棒性来自图相关码更稳。

COCO上六种失真(高斯噪声σ=0.05、亮度×1.2、模糊σ=1.0、JPEG Q=70、对比度×1.2、中心裁80%)的平均BitAcc:

系统VanillaMHDWCoverLock
CIN99.3684.0994.60
MBRS92.5581.3989.40
VINE91.6183.1287.75

DINOv2换成Giant后,MBRS+COCO上ASR落到0.111%,Small是0.489%,TPR仍约92%。5万张ImageNet干净图上CoverLock-G与Binomial(256, 0.5)对齐,虚警为零,原验证阈值不用重校。

为什么重要

对已经上线、图生成完再嵌的post-processing水印,RT是一个不绑死某种攻击的体检指标。新架构应优先保证封面依赖:把消息和局部特征在空间上绑住,或按内容调嵌入,别让编码器学出一套跟图无关的加扰。

CoverLock的用处是不动原模型。只训投影头,DINOv2冻住,也不要伪造样本。分类器防御要跟着攻击痕迹重训,这里没有这条回路。代价是多一次DINO前向,以及相对Vanilla掉几个点的BitAcc。这是工程补丁,不是新的水印范式,但比手搓哈希和学分类器更划算。

局限与存疑

附录写明:更猛或没见过的变换下,安全和鲁棒的平衡可能翻脸;针对绑图机制的自适应攻击、更大分布偏移都还没测;多一个模块就有训练和部署开销;低RT也可以走别的架构路径,这里只钉了两条。

干预实验为降低优化难度拿掉了鲁棒性失真,和真实部署不完全同分布。Broadcast-GAP换低RT时PSNR掉十几个dB,VINE直接训失败,把HiDDeN的模块塞进别人不是通用配方。评测只覆盖post-processing神经水印,生成过程里埋水印的in-generation方法不在范围内。CoverLock在COCO上训练,评测集也含COCO,跨域数字不能当成完全外推。威胁模型假定攻击者不知道方法和保护模块;一旦针对DINO哈希做自适应,数字还没有。

术语

原文与代码

相关论文

全部论文解读