第七章数字水印的攻击方法和对抗策略7.1水印攻击7.1.1攻击方法分类7.1.2应用中的典型攻击方式7.2解释攻击及其解决方案7.2.1解释攻击7.2.2抗解释攻击7.3一种抗解释攻击的非对称数字水印实施框架7.1.1攻击方法分类水印必须对一些无意的攻击具有鲁棒性,也就是对那些能保持感官相似性的数字处理操作具备鲁棒性,常见的操作有:(1)剪切;(2)亮度和对比度的修改(3)增强、模糊和其他滤波算法;(4)放大、缩小和旋转;(5)有损压缩,如JPEG压缩;(6)在图像中加噪声。(1)伪造水印的抽取:盗版者对于特定产品X生成的一个信号W'使得检测算子D输出一个肯定结果,而且W'是一个从来不曾嵌入产品X中的水印信号,但盗版者把它作为自己的水印。但是,如果算法G是不可逆的,并且W'并不能与某个密钥联系,即伪造水印W'是无效的水印;有效性和不可逆性的条件导致有效的伪造水印的抽取几乎不可能。(2)伪造的肯定检测:盗版者运用一定的程序找到某个密钥K'能够使水印检测程序输出肯定结果并用该密钥表明对产品的所有权。但是,在水印能够以很高的确定度检测时,即虚警概率几乎是零,该攻击方法就不再可行。(3)统计学上的水印抽取:大量的数字图像用同一密钥加入水印不应该能用统计估计方法(例如平均)除去水印,这种统计学上的可重获性可以通过使用依赖于产品的水印来防止。-共谋攻击(4)多重水印:攻击者可能会应用基本框架的特性来嵌入他自己的水印,从而不管攻击者还是产品的原始所有者都能用自己的密钥检测出自己的水印。这时原始所有者必须在发布他的产品前保存一份他自己的加水印的产品,用备份产品来检测发布出去的产品是否被加了多重水印。7.1.2应用中的典型攻击方式(1)鲁棒性攻击:在不损害图像使用价值的前提下减弱、移去或破坏水印,也就是各种信号处理操作,还有一种可能性是面向算法分析的。这种方法针对具体的水印插入和检测算法的弱点来实现攻击。攻击者可以找到嵌入不同水印的统一原始图像的多个版本,产生一个新的图像。大部分情况下只要简单的平均一下,就可以有效的逼近原始图像,消除水印。这种攻击方法的基础就是认识到大部分现有算法不能有效的抵御多拷贝联合攻击。(相当于上述一般分类方法中的统计学水印抽取).(2)表示攻击:这种攻击并不一定要移去水印,它的目标是对数据作一定的操作和处理,使得检测器不能检测到水印的存在。一个典型的例子是用这种方法愚弄Internet上的自动侵权探测器Webcrawler。这个探测器自动在网上下载图片,然后根据水印检查有无侵权行为。它的一个弱点是当图像尺寸较小时,会认为图像太小,不可能包含水印。那么我们可以先把水印图像分割,使每一小块图像的尺寸小于Webcrawler要求的尺寸下限,再用合适的HTML标记把小图像重组在Web页中。这种攻击方法一点也不改变图像的质量,但由于Webcrawler看到的只是单个的小图像,所以它失败了。(3)解释攻击:这种攻击在面对检测到的水印证据时,试图捏造出种种解释来证明其无效。一种通用的方法是分析水印算法并逆其道而行。攻击者先设计出一个自己的水印信号,然后从水印图像中减去这个水印(不是指代数减,而是插入过程的逆),这样就制造出一个虚假的原始图像,然后他出示虚假的原始图像和捏造出的水印,声称他是图像的拥有者。实验表明,真正拥有者原始图像中含有攻击者捏造的水印的证据(即水印检测结果)与攻击者虚假图像中含有真正拥有者水印的证据旗鼓相当,这带来了无法解释的困境(相当于上述分类方法中的伪造水印的抽取)。当然,攻击者必须能够得到水印算法的细节并捏造出一个合理的水印。一个最有效的方法是设计出不可逆的水印插入算法,例如引入不可逆的哈希过程。但现行算法均不是完全不可逆的。对于解释攻击还应该引入一种对水印的管理机制,比如建立可信任的第三方作为水印验证机构,用管理手段实现对水印的仲裁。(4)法律攻击:得益于关于版权及数字信息所有权的法律的漏洞和不健全,据此应健全相关法律条例和公证制度,把数字水印作为电子证据应用于版权的仲裁,其中涉及计算机取证和纳证。7.2解释攻击及其解决方案7.2.1解释攻击(1)水印仲裁:在发生版权纠纷时第三方对水印真伪进行鉴别的过程。该过程主要由计算过程和比较过程两大部分组成。当某作品需要仲裁时,待仲裁作品的所有者需向仲裁者提供水印(如果是非盲提取水印方案,则所有者还需向仲裁者提供原作品)。仲裁者由计算过程从待仲裁作品中计算出待仲裁作品的特征值,然后由比较过程将原作品特征值W和待仲裁作品特征值相比较,根据其相似情况与阈值相比较得出仲裁结果。这里所指的特征值在大多数情况下是指水印本身,而特征值的比较则为水印相关性的测量。某些水印方案的特征值为由水印等信息计算出的一个统计量,对应的特征值的比较则为一个最大似然检测器。最简单的解释攻击过程如下:(1)作者A创作出作品Pa;然后编码并注册一个水印Wa,得到嵌有水印的作品Pa*=Pa+Wa并将其公开。(2)当发生版权纠纷,需要对Pa*进行仲裁时,A向仲裁者J提供Pa和Wa,J根据Pa*Pa和Wa执行仲裁水印过程,从而确定Pa*中是否嵌有A的水印Wa。(3)攻击者B编码并注册另一个水印Wb,然后声明Pa*是他的作品,并且向仲裁者提供原作品Pb=Pa*-Wb。(4)仲裁者J得出如下结论:若A为原作者,Pa为原作品,Pa*上嵌有水印Wa,Pb上嵌有水印Wa-Wb。若B为原作者,Pb为原作品,Pa*上嵌有水印Wb,Pa上嵌有水印Wb-Wa。以上两种结果完全对称。这样,J就无法通过鉴别确定Pa*上所嵌入的水印是Wa还是Wb所以也就无从区分版权所有者是A还是B,引起无法仲裁的版权纠纷,解释攻击成功。7.2.2抗解释攻击发现大多数不可见、需原图的数字水印方案主要有下面三方面的不足:(1)大多数水印方案没有提供本质的方法来检测两个水印中哪一个是先加上去的;(2)由于水印注册时仅仅对水印序列进行了注册,而没有对原作品进行注册,使得攻击者可以伪造原作品;(3)由于水印嵌入方案具有可逆性,为伪造水印提供了条件。由解释攻击所引起的无法仲裁的版权纠纷的解决方案主要有三种:第一种方法是引入时戳机制,从而确定两个水印被嵌入的先后顺序;第二种方法作者在注册水印序列的同时对原始作品加以注册,以便于增加对原始图像的检测;第三种方法是利用单向水印方案消除水印嵌入过程中的可逆性。7.2.2.1时戳机制由于个人难以产生可信的时戳,因此利用时戳机制来解决解释攻击问题,首先必须存在一个可信的时戳服务中心TSS。下面是作者A向作品P中添加含时戳水印一个例子的具体过程:影响水印Wa的检测,这样,当发生纠纷时,提取出的(Ta,Siga(Ta))能够证明A是在时间T之前产生水印作品的Pa*,即水印Wa是在时间T之前被嵌入作品Pa的。而攻击者B得到传播中Pa*,并创作出伪造作品的时间必然滞后于T,这样就无法成功地进行解释攻击。分析可行性这种利用时戳机制来解决解释攻击所引起的无法仲裁的版权纠纷在理论上是可行的。但由于A要向Pa中添加的信息除水印Wa外,另外增加了水印作品的哈希值Q,A对Q的签名Siga(Q),时间T,以及TSS对(Q,Siga(Q),T)的签名,这样对于一些较小作品可能会引起大的失真。另外,这些信息的加入对水印的稳健性也会有一定影响,而Wa的稳健性正是抵抗解释攻击首先要予以保证的。因为,如果无法检测出,那么时戳机制的使用也就失去了意义。7.2.2.2公证机制利用公证机制来解决解释攻击引起的版权纠纷,主要是指作者A在注册水印序列Wa的同时,也将原始作品Pa进行注册,在这样一种机制下,攻击者B也必须对他的水印Wb和伪造原始作品Pb进行注册。发生版权纠纷时,当经过图7.2所示的过程无法判定作品Pa*的所有权时,作者A可以要求仲裁者J对双方的原始作品进行检测。如果在攻击者B的伪造原始作品中能够检测出攻击者的水印Wa,而在作者A的原始作品Pa中无法检测出攻击者的水印Wb(如图7.3所示),则可以证明攻击者的伪造原始作品是由作者的原始作品修改得出的。分析在图7.3所示的情况下,公正机制有效的阻止了解释攻击。但是,在相当多的情况下,攻击者B可以构造水印和原始作品,使得在中能够检测出,这样就将版权纠纷又一次引入无法仲裁的状态之中,因此,简单的采取对水印序列和原始图像注册公证的机制并不能彻底解决由解释攻击引起的无法仲裁的版权纠纷。另外,这种公证机制要求作者对每一份原始作品都进行注册,不仅需要一个庞大的数据库,更需要复杂的协议来保证公证机构的绝对安全,其代价是相当大的。7.2.2.3单向水印机制考察解释攻击的第三步“攻击者B编码并注册另一个水印,然后声称是他的作品,并且向仲裁者提供原作品Pb=Pa*-Wb”。可见解释攻击能够获得成功的一个关键因素是,攻击者B能够通过从中提取水印来达到生成伪造的原作品的目的。如果水印的嵌入机制具有单向性,那么必定为攻击者伪造原作品造成很大的困难。反之,如果水印方案是可逆的,攻击者就一定可以对其进行攻击。一个单向水印方案实现过程的描述如下:由于该水印方案需要原始作品Pa来生成序列S才能完成水印的嵌入,即只有已知原始作品才能够嵌入水印,同样,已知原始作品才能够提取水印。这样攻击者就无法使用同样的方法直接从Pa*中提取Wb而逆向生成伪造的原作品Pb。其中λ为水印镶嵌的强度参数。单向数字水印具有以下一些优点:(1)可以对抗逆镶嵌水印伪造攻击,因此在密码学意义上有较强的安全性。(2)用户的水印码字可以公开,这样就不需要对仲裁者严格要求或一些复杂的安全协议。(3)数字水印的镶嵌与鉴别过程方便,版权所有者可以独立的添加水印而不需要履行登记手续,鉴别时也不需要在数据库中查找原因。7.3一种抗解释攻击的非对称数字水印实施框架非对称体制(双钥体制)主要具有以下优点:1)密钥数量大大减少;2)彻底消除了经特殊保密的密钥信道分送密钥的困难;3)便于实现数字签名。对于数字水印而言,已有的技术绝大多数都是对称体制:水印的加入和提取只有发送一方掌握,接收方只有通过特殊保密渠道获得原图和具体加入水印的算法才能看到隐藏的数字信息—水印。虽然该体制对发送方的鲁棒性很好,但对于接收方(在电子商务中通常为最终用户)却由于无法看到数字媒体中嵌入的有关信息而处于被动的地位。那么,能否使用非对称的数字水印呢?非对称数字水印,又称为公钥水印,是指任何用户能够“看见”但又去不掉的水印,但是它仍然是一种不可见水印。那么,如何实现即让用户“看见”而又隐藏于数字媒体的数字水印呢?实际商业模型中的水印实施架构,它有两个主要特性:1)够防止版权拥有者黑箱操作;2)能够跟踪用户的使用情况,确认盗版用户。但它同时也存在一个很大的缺陷:用户想了解一幅图像的版权情况,则必须上传该图像和有关信息,这在目前拥挤的Internet上而言,效率非常低;此外,用户的查询结果必须要通过访问一个庞大的“版权信息数据库”,势必造成低效率和数据库的不安全性。一种非对称数字水印的可行性方案:发送方用商家(Creator)来代替,接收方用用户(User)来代替。在商家和用户之间设立一个第三信任方(TrustedThirdParty,简称为TTP),它们之间的具体联系分为以下3个阶段:(1)注册申请阶段。如果商家要在网上发布数据,则首先要向第三信任方注册申请,将自己的有关版权信息发送给第三信任方;第三信任方经过一系列的检查工作后,发送回是否认可的信息。(2)水印加入阶段。商家向第三信任方成功注册后,再向其发送称之为秘密水印的分密钥(以下用代替)。秘密水印是商家要加入的第一个水印,它之所以称为秘密水印是因为用户无法浏览到它,人们用它来保护商家的版权利益,版权纠纷时起到明确版权的作用。它的算法可以是公开的,但鲁棒性要很高;第三信任方在接受到后,发送另一部分密钥给商家。秘密水印的密钥只掌握在商家和第三信任方手中,这种Diffie—Hellman密钥传送方案既解决了密钥传送的困难,又避免了商家的黑箱操作。