吴 琪, 杨世平b
(贵州大学 a.计算机与信息工程学院;b.贵州大学明德学院, 贵州 贵阳 550025)
随着数字浪潮的兴起,数字产品的使用范围也越来越广阔,如何对数字产品的版权进行保护,成为了人们当前考虑的重要问题。从而应运而生出了数字水印,数字指纹这些对数字产品版权保护的技术。尤其是数字指纹技术是在数字水印基础上发展起来的。通常情况下,数字产品的盗用往往是从合法购买者那里传播出去的,当其将购买到的数字产品解密后,就可以无限制的拷贝,传播出去,从而对发行商的经济利益带来损失。如何管理好数字产品的购买者,使得其不成为盗版的源头,遏制盗版的发生,或者当合法的购买者非法传播了数字产品后,我们能够通过查获到的盗版数字产品中带有的指纹信息,追查到非法传播的源头。
数字指纹技术是将同一份数字产品中嵌入不同的标记,不同的购买者拥有嵌入不同标记的拷贝,该标记代表着购买者的身份,具有唯一性,相当于生物特征的指纹。通过此种技术,可以在对数字产品的版权进行保护,追查合法数字产品使用者非法拷贝传播。
现今对数字指纹存有的合谋的攻击方式分为,线性攻击合谋攻击及非线性合谋攻击。线性合谋攻击:平均攻击,线性组合攻击。非线性攻击有最大值,最小值攻击等。文献[1]解决共谋攻击的思路是将获得的合谋指纹提取出来以后,而该种共谋攻击中主要是指平均合谋攻击,将得到平均合谋后的合谋指纹同每个合法用户的指纹进行相关检测。各个不同的指纹都参与到合谋中以后,指纹之间的相关度不同,可以剥离出参与合谋的用户指纹信息。但是该种指纹信息存在的一个缺点是其检测指纹之间的相关度,不是跟参与合谋用户的人数有关,而是和数字指纹长度有关,只有在一定范围内查找出合谋用户。正交指纹的缺点是,随着用户数目的真多,指纹码长线性增加。文献[2]TWWL指纹,是基于二进制AND-ACC[3](在BIBD区域均衡设计原理构造的)和正交指纹[4]构造的数字指纹,主要是针对线性组合攻击。文献[5]也反应了数字指纹抗共谋攻击的一种解决方法。
本片文章,主要介绍,参照码分多址技术完成数字指纹的编码和具体的实施步骤,以及将多用户的合谋攻击类比为多址干扰,消除这种干扰就相当于消除多用户合谋攻击,以及理论上的分析。
数字指纹合谋的产生,主要是在不降低多媒体数字产品信号质量的前提下,可以通过合法用户的数字拷贝来获得新的盗版数字产品。多个合法用户参与合谋的数学模型可以描述为下式(1):yˆ(i)是一个通过多用户合谋的数字拷贝信号。yk(i)是一个合法的数字拷贝信号,其中包含了有其数字指纹信息码,同时也是参与此次数字指纹合谋的一个合谋者。e(i)是噪声项。λk是用户K在这次合谋中的权限因子。
数字指纹编码过程如下图1所示,处于PMU-OFDM或MC-CDMA通信系统。它包括有3个模块,第一个模块为信息流发生器,第二个模块为用码片部分来进行转换比特位的扩频部分,第三个模块就将身份矩阵和傅里叶逆变换矩阵相乘。
图1 数字指纹编码框架
①信息发生器。给每个用户一个足够长的数据序列,叫做信息序列(MS,Message Sequence)用M来表示。U表示用户ID。M信息序列。U和M形成一一对应的关系。信息序列(M)可以是一个比特,也可以是多个比特的序列。如果信息序列(M),那么就会有LM个不同的ID。U=LM。L就相当于码子的总长度,M就相当于L中每个位置中可以选定的元素个数。
②使用(chip signal)码片信号作为载体,将比特转换为码片来表示的扩频过程。在这一部分中,为一个用户选择它的扩频码字。将M序列上每一个元素用(a chip signal)来调制。扩频码字可以用二进制或者q-进制。一般都采用高斯(Gaussion)序列和PN序列来当扩频码。PN序列中包括有M序列,Gold序列和Kasami序列。PN序列具有噪声频谱所以码字的检测能被高效率的解扩出来,如果在没有合谋攻击的情况下。但是,在合谋的情况下,因为PN序列具有很弱的互相关性(cross-correlation),不同的码字(codewords)在解扩过程中会相互干扰。相反,正交码字在不同的码字之间具有零互相关(zero cross-correlation),所以他们具有更强的鲁棒性合谋攻击。可是其付出则是在码字检测过程中具有很大的挑战性,PN序列的自相关频谱的尖峰不是那么的尖。正交序列中包括有 Hadamard-Walsh(HW)codes,Orthogonal Gold codes, Multirate OGold codes.对于合谋攻击,正交码比高斯码和PN码是一个更好的选择。
③第三部,用单位矩阵和IF matrix相乘。有两种方式,乘以分发识别矩阵(identity matrix)单位矩阵,或者乘以傅里叶逆变换矩阵(IFT matrix)。前者类似于CDMA,单载波通信方案。而后者类似于多载波方案。
具体的执行步骤如下:
①L个用户分配L个长度相同的不同信息流。
②将信息流中的每个符号用正交码(Hadamard-Walsh)扩频为L的长度。
③使用反傅里叶变换。
指纹的嵌入在发射端,采用在音频水印在时域上嵌入的方法。而指纹的检测则是在接收端,采用传统的相关检测方法。水印的嵌入与检测框架系统如图2所示。
图2 数字指纹的嵌入与检测框架
将信号x(i),i=0,1,…,N-1,从载体信号中采样出N个采样标本。然后将其分为P个部分,每个部分又有L个样本,则可以将给某个用户j的信号x(i)表示为式(2):
采用加性嵌入的方法,式(3)表示如下:
aj(i)是嵌入的指纹。是用户j的隐藏码字(hiding code),α则是一个常量,是为了调整嵌入码字的长度。码字的嵌入强度可以由α的值来决定。
对于码字的检测。我们则采用的是二元假设测试,如式(4):是接收端的信号,dj代表的是噪声和干扰的一个影响,m则是用户信息的二进制比特位。在输出端采用到的相关检测器可用下述表达式(5)。
vj可以用一个矩阵来表示指纹信息的鲁棒性。
在加权合谋攻击当中,合谋者有可能共享同一组的同一个码字,也有可能来源于不同的组,不同的码字。可以把不同用户码字之间的干扰用下式表示出来,作为一个抗合谋的分析。
由于合谋系统是在加性嵌入和相关检测的方案下讨论的,计算用户k的hk和用户j的hj的相关性为:
采用的解决思路是,在数字指纹系统中,每一个用户都有唯一的一个指纹信息,而合谋就是多个合法用户利用自己的数字指纹产生一个新的数字指纹。目的是通过这个新的非法合成的数字指纹来找出参与合谋的用户。将这一个过程,视为是在码分多址系统中,有多址干扰(MAI)影响下对多用户信号的检测过程。因为,每一个用户都有自己唯一不可盗用的个人 ID身份号,作为嵌入数字产品中的指纹信息。由发行商分发给已经购买有同种数字产品的合法购买者,同种数字产品,就相当于是共享同一信道。多个合谋用户共同伪造的数字指纹信息,等同于多用户在信道中传播,受到了码分多址干扰后,造成各个用户信号之间模糊。我们就采用抗多址干扰的多用户检测方法来查找出参与合谋的合法用户们。又因为类比于 CDMA通信系统中,每一个用户的码字唯一,且用户数量多。又是采用扩频技术,可以使得数字水印具有好的鲁棒性。
本文根据多载波的系统的思路构建出一个数字指纹的编码框架和具体的实行步骤。并且采用抗码址干扰的原理,用来实现抗多个合法用户之间合谋产生新的用户指纹信息的性质,给出了分析的过程。
[1]潘广毅,李晓强,李伟.连续型抗共谋数字指纹研究[J].计算机应用与软件,2010(04):13-17.
[2]王威,李乔良,胡德发.抗线性组合攻击的数字指纹[J].计算机工程与设计,2011(02):505-508.
[3]BONEH D, SHAW J.Collusion-secure Fingerprinting for Digital Data[J].IEEE Transactions on Information Theory, 1998(44):1897-1905.
[4]王文奇.正交数字指纹技术的研究[D].湖南:湖南大学,2010.
[5]梁华,李飞,范志海.共谋安全的 q-进制数字指纹[J]通信技术,2007(07): 63-65.
[6]BASSIA P, PITAS I, NIKOLAIDIS N.Robust Audio Watermarking in the Time Domain[J].IEEE Transactions on Multimedia, 2001(03):232-240.
[7]HOU Shuhui. TETSUTARO Uehara. Yoshitaka Morimura.Michihiko Minoh.Fingerprinting Codes for Live Pay-television Broadcast Via Internet[C]. Heidelberg:Springer,2007:252-261.
[8]TSAI S H, LIN Y P, JAY KUO C C.MAI-free MC-CDMA based on Hadamard-Walsh codes[J].IEEE Transactions on signal Processing,2006,54(03):316-317.