软件水印攻击与图像水印技术方案解析
分支基软件水印方案的低成本攻击
在软件水印领域,有针对分支基水印方案的低成本攻击方法。这种攻击旨在移除原有的水印,并嵌入攻击者自己的版权标记。
攻击步骤
- 替换 ξ 调用为 UBSs :若攻击目的是移除水印,将对 ξ 的函数调用替换为 UBSs,以获取原始带水印的代码。
- 创建修改后的带水印程序 :
- 计算位移 :对于所有属于 F 的 f,计算调用地址和目标地址之间的位移,并将其与调用地址一起存储在数组中。
- 替换 UBSs :将 UBSs 替换为对新的指纹分支函数 ξ 的调用。
- 计算新密钥 :ξ 无需进行完整性检查,只需根据旧密钥和攻击者的版权标记 AM’计算新密钥。计算公式为 (k_i = SHA1[k_{i - 1} \oplus AM’])。与原密钥序列相比,新生成的密钥序列 (FM’) 不同,因为单个密钥不同。
- 映射密钥 :使用哈希将密钥映射到正确的位移,即 (h : {k’ 1, k’_2, …, k’_n} \to {1, 2, …, m}(n \leq m)),(T[h(k’_i)] = d_i)。当使用输入 (P’)、(key {AM})、(key_{FM}) 执行识别算法时,会输出 (FM’) 和 (AM’)。 </
超级会员免费看
订阅专栏 解锁全文
837

被折叠的 条评论
为什么被折叠?



