(1)数字水印的特点
数字水印技术基本上具有下面几个方面的特点:
安全性(Security):数字水印的信息应是安全的,难以篡改或伪造,同时,应当有较低的误检测率,当原内容发生变化时,数字水印应当发生变化,从而可以检测原始数据的变更;当然数字水印同样对重复添加有很强的抵抗性;
隐蔽性(Invisibility):数字水印应是不可知觉的,而且应不影响被保护数据的正常使用;不会降质;
鲁棒性(Robustness):该特性适用于鲁棒水印。是指在经历多种无意或有意的信号处理过程后,数字水印仍能保持部分完整性并能被准确鉴别。可能的信号处理过程包括信道噪声、滤波、数/模与模/数转换、重采样、剪切、位移、尺度变化以及有损压缩编码等;
敏感性(Sensitivity):该特性适用于脆弱水印。是经过分发、传输、使用过程后,数字水印能够准确的判断数据是否遭受篡改。进一步的,可判断数据篡改位置、程度甚至恢复原始信息。
(2)数字水印的分类
按水印的特性可以将数字水印分为鲁棒数字水印和脆弱数字水印两类。鲁棒水印(Robust Watermarking)主要用于在数字作品中标识著作权信息,利用这种水印技术在多媒体内容的数据中嵌入创建者、所有者的标示信息,或者嵌入购买者的标示(即序列号)。在发生版权纠纷时,创建者或所有者的信息用于标示数据的版权所有者,而序列号用于追踪违反协议而为盗版提供多媒体数据的用户。用于版权保护的数字水印要求有很强的鲁棒性和安全性,除了要求在一般图像处理(如:滤波、加噪声、替换、压缩等)中生存外,还需能抵抗一些恶意攻击。
脆弱水印(Fragile Watermarking),与鲁棒水印的要求相反,脆弱数字水印主要用于完整性保护和认证,这种水印同样是在内容数据中嵌入不可见的信息。当内容发生改变时,这些水印信息会发生相应的改变,从而可以鉴定原始数据是否被篡改。根据脆弱水印的应用范围,脆弱水印又可分为选择性和非选择性脆弱水印。非选择性脆弱水印能够鉴别出比特位的任意变化,选择性脆弱水印能够根据应用范围选择对某些变化敏感。例如,图像的选择性脆弱水印可以实现对同一幅图像的不同格式转换不敏感,而对图像内容本身的处理(如:滤波、加噪声、替换、压缩等)又有较强的敏感性,即:既允许一定程度的失真,又要能将特定的失真情况探测出来。
按水印所附载的媒体,我们可以将数字水印划分为图像水印、音频水印、视频水印、文本水印以及用于三维网格模型的网格水印等。随着数字技术的发展,会有更多种类的数字媒体出现,同时也会产生相应的水印技术。
按水印的检测过程可以将数字水印划分为盲水印和非盲水印。非盲水印在检测过程中需要原始数据或者预留信息,而盲水印的检测不需要任何原始数据和辅助信息。一般来说,非盲水印的鲁棒性比较强,但其应用需要原始数据的辅助而受到限制。盲水印的实用性强,应用范围广。非盲水印中,新出现的半盲水印能够以少量的存储代价换来更低的误检率、漏检率,提高水印算法的性能。目前学术界研究的数字水印大多数是盲水印或者半盲水印。
按数字水印的内容可以将水印划分为有意义水印和无意义水印。有意义水印是指水印本身也是某个数字图像(如商标图像)或数字音频片段的编码;无意义水印则只对应于一个序列。有意义水印的优势在于,如果由于受到攻击或其他原因致使解码后的水印破损,人们仍然可以通过视觉观察确认是否有水印。但对于无意义水印来说,如果解码后的水印序列有若干码元错误,则只能通过统计决策来确定信号中是否含有水印。
不同的应用需求造就了不同的水印技术。按水印的用途,我们可以将数字水印划分为票证防伪水印、版权保护水印、篡改提示水印和隐蔽标识水印。
票证防伪水印是一类比较特殊的水印,主要用于打印票据和电子票据、各种证件的防伪。一般来说,伪币的制造者不可能对票据图像进行过多的修改,所以,诸如尺度变换等信号编辑操作是不用考虑的。但另一方面,人们必须考虑票据破损、图案模糊等情形,而且考虑到快速检测的要求,用于票证防伪的数字水印算法不能太复杂。
版权标识水印是目前研究最多的一类数字水印。数字作品既是商品又是知识作品,这种双重性决定了版权标识水印主要强调隐蔽性和鲁棒性,而对数据量的要求相对较小。
篡改提示水印是一种脆弱水印,其目的是标识原文件信号的完整性和真实性。
隐蔽标识水印的目的是将保密数据的重要标注隐藏起来,限制非法用户对保密数据的使用。
按数字水印的隐藏位置,我们可以将其划分为时(空)域数字水印、频域数字水印、时/频域数字水印和时间/尺度域数字水印。
时(空)域数字水印是直接在信号空间上叠加水印信息,而频域数字水印、时/频域数字水印和时间/尺度域数字水印则分别是在DCT变换域、时/频变换域和小波变换域上隐藏水印。
随着数字水印技术的发展,各种水印算法层出不穷,水印的隐藏位置也不再局限于上述四种。应该说,只要构成一种信号变换,就有可能在其变换空间上隐藏水印。
按数字水印是否透明的性质,可分为可见水印和不可见水印两种。可见水印就是人眼能看见的水印,比如照片上标记的拍照的日期或者电视频道上的标识等。不可见水印就是人类视觉系统难以感知的,也是当前数字水印领域关注比较多的。
(3)数字水印的特性
数字水印系统必须满足一些特定的条件才能使其在数字产品版权保护和完整性鉴定方面成为值得信赖的应用体系。一个安全可靠的水印系统一般应满足如下要求:
1.隐蔽性
也称不可感知性,即对于不可见水印处理系统,水印嵌入算法不应产生可感知的数据修改,也就是水印在通常的视觉条件下应该是不可见的,水印的存在不会影响作品的视觉效果。
2.鲁棒性
水印必须很难去掉(希望不可能去掉),当然在理论上任何水印都可以去掉,只要对水印的嵌入过程有足够的了解,但是如果对水印的嵌入只是部分了解的话,任何破坏或消除水印的企图都应导致载体严重的降质而不可用。
3.抗篡改性
与抗毁坏的鲁棒性不同,抗篡改性是指水印一旦嵌入到载体中,攻击者就很难改变或伪造。鲁棒性要求高的应用,通常也需要很强的抗篡改性。在版权保护中,要达到好的抗窜改性是比较困难的。
4.水印容量
嵌入的水印信息必须足以表示多媒体内容的创建者或所有者的标志信息,或是购买者的序列号。这样在发生版权纠纷时,创建者或所有者的信息用于标示数据的版权所有者,而序列号用于标示违反协议而为盗版提供多媒体数据的用户。
5.安全性
应确保嵌入信息的保密性和较低的误检测率。水印可以是任何形式的数据,比如数值、文本、图像等。所有的水印都包含一个水印嵌入系统和水印恢复系统。
6.低错误率
即使在不受攻击或者无信号失真的情况下,也要求不能检测到水印(漏检、false -negative)以及不存在水印的情况下,检测到水印(虚检、false - positive)的概率必须非常小。
(4)数字水印算法
近年来,数字水印技术研究取得了很大的进步,下面对一些典型的算法进行了分析,除特别指明外,这些算法主要针对图像数据(某些算法也适合视频和音频数据)。
空域算法
该类算法中典型的水印算法是将信息嵌入到随机选择的图像点中最不重要的像素位(LSB:least significant bits)上,这可保证嵌入的水印是不可见的。但是由于使用了图像不重要的像素位,算法的鲁棒性差,水印信息很容易为滤波、图像量化、几何变形的操作破坏。另外一个常用方法是利用像素的统计特征将信息嵌入像素的亮度值中。
Patchwork算法
方法是随机选择N对像素点(ai,bi),然后将每个ai点的亮度值加1,每个bi点的亮度值减1,这样整个图像的平均亮度保持不变。适当地调整参数,Patchwork方法对JPEG压缩、FIR滤波以及图像裁剪有一定的抵抗力,但该方法嵌入的信息量有限。为了嵌入更多的水印信息,可以将图像分块[1],然后对每一个图像块进行嵌入操作。
变换域算法
该类算法中,大部分水印算法采用了扩展频谱通信(spread spectrum communication)技术。算法实现过程为:先计算图像的离散余弦变换(DCT),然后将水印叠加到DCT域中幅值最大的前k系数上(不包括直流分量),通常为图像的低频分量。若DCT系数的前k个最大分量表示为D=,i=1,…,k,水印是服从高斯分布的随机实数序列W =,i=1,…,k,那么水印的嵌入算法为di = di(1 + awi),其中常数a为尺度因子,控制水印添加的强度。然后用新的系数做反变换得到水印图像I。解码函数则分别计算原始图像I和水印图像I*的离散余弦变换,并提取嵌入的水印W*,再做相关检验以确定水印的存在与否。该方法即使当水印图像经过一些通用的几何变形和信号处理操作而产生比较明显的变形后仍然能够提取出一个可信赖的水印拷贝。一个简单改进是不将水印嵌入到DCT域的低频分量上,而是嵌入到中频分量上以调节水印的顽健性与不可见性之间的矛盾。另外,还可以将数字图像的空间域数据通过离散傅里叶变换(DFT)或离散小波变换(DWT)转化为相应的频域系数;其次,根据待隐藏的信息类型,对其进行适当编码或变形;再次,根据隐藏信息量的大小和其相应的安全目标,选择某些类型的频域系数序列(如高频或中频或低频);再次,确定某种规则或算法,用待隐藏的信息的相应数据去修改前面选定的频域系数序列;最后,将数字图像的频域系数经相应的反变换转化为空间域数据。该类算法的隐藏和提取信息操作复杂,隐藏信息量不能很大,但抗攻击能力强,很适合于数字作品版权保护的数字水印技术中。
1.基于离散余弦变换的数字水印
最早的基于分块DCT水印技术出现于E Koch,J Zhao的文献。针对静止图像和视频压缩标准(JPEG和MPEG),他们的水印方案中图像也被分成8×8的块,由一个密钥随机的选择图像的一些分块,在频域的中频上稍微改变一个三元组以隐藏二进序列信息。选择在中频分量编码是因为在高频编码易于被各种信号处理方法破坏,而在低频编码则由于人的视觉对低频分量很敏感,对低频分量的改变易于被察觉。未经授权者由于不知道水印嵌入的区域,因此是很难测出水印的,此外,该水印算法对有损压缩和低通滤波是鲁棒的。将图像分割成8×8块,并对每个块做DCT变换,然后随机选择构造所有块的一个子集,对子集的每一个块,选择一组频率并嵌入二进制水印信息。由于频率组的选择不是基于最显著分量,并且频率系数的方差较小,因此该方法对噪声、几何变形以及多文档攻击比较敏感。
Cox等人于1995年提出了基于图像全局变换的水印方法,称之为扩频法。这也是目前大部分变换域水印算法中所用到的技术。它将满足正态分布的伪随机序列加入到图像的DCT变换后视觉最重要系数中,利用了序列扩频技术(SS)和人类视觉特性(HVS)。算法原理为先选定视觉重要系数,再进行修改,最常用的嵌入规则如下:
其中分别是修改前和修改后的频域系数,α是缩放因子,是第i个信息位水印。
一般说来,乘法准则的抗失真性能要优于加法准则。水印的检测是通过计算相关函数实现的。从嵌入水印的图像中提取出是嵌入规则的逆过程,把提取出来的水印与原水印作相似性运算,与制定的阈值比较,可确定是否存在水印。这是稳健性水印的奠基性算法。
Chiou-Ting Hsu等人提出一种基于分块DCT的水印,他们的水印是可辨识的图像,而不是简单的一个符号或一个随机数。通过有选择地修改图像的中频系数来嵌入水印。验证时,衡量提取出的水印同原水印之间的相似性来判断是否加入了水印
2.基于离散小波变换的数字水印
与传统的DCT变换相比,小波变换是一种变分辨率的,将时域与频域相联合的分析方法,时间窗的大小随频率自动进行调整,更加符合人眼视觉特性。小波分析在时、频域同时具有良好的局部性,为传统的时域分析和频域分析提供了良好的结合。
目前,小波分析已经广泛应用于数字图像和视频的压缩编码、计算机视觉、纹理特征识别等领域。由于小波分析在图像处理上的许多特点可用于信息隐藏的研究,所以这种分析方法在信息隐藏和数字水印领域的应用也越来越受到广大研究者的重视,目前已经有很多比较典型的基于离散小波变换的数字水印算法。
除了上述有代表性的变换域算法外,还有一些变换域水印算法,它们中有相当一部分是上述算法的改进及发展。
总的来说,与空域的方法相比,变换域的方法具有如下优点:
1.在变换域中嵌入的水印信号能量可以分布到空域的所有像素上,有利于保证水印的不可见性;
2.在变换域,人类视觉系统(HVS)的某些特性(如频率掩蔽特性)可以更方便地结合到水印编码过程中,因而其隐蔽性更好;
3.变换域的方法可与国际数据压缩标准兼容,从而易实现在压缩域(compressed domain)内的水印算法,同时也能抵抗相应的有损压缩。
压缩域算法
基于JPEG、MPEG标准的压缩域数字水印系统不仅节省了大量的完全解码和重新编码过程,而且在数字电视广播及VOD(Video on Demand)中有很大的实用价值。相应地,水印检测与提取也可直接在压缩域数据中进行。下面介绍一种针对MPEG-2压缩视频数据流的数字水印方案。虽然MPEG-2数据流语法允许把用户数据加到数据流中,但是这种方案并不适合数字水印技术,因为用户数据可以简单地从数据流中去掉,同时,在MPEG-2编码视频数据流中增加用户数据会加大位率,使之不适于固定带宽的应用,所以关键是如何把水印信号加到数据信号中,即加入到表示视频帧的数据流中。对于输入的MPEG-2数据流而言,它可分为数据头信息、运动向量(用于运动补偿)和DCT编码信号块3部分,在方案中只有MPEG-2数据流最后一部分数据被改变,其原理是,首先对DCT编码数据块中每一输入的Huffman码进行解码和逆量化,以得到当前数据块的一个DCT系数;其次,把相应水印信号块的变换系数与之相加,从而得到水印叠加的DCT系数,再重新进行量化和Huffman编码,最后对新的Huffman码字的位数n1与原来的无水印系数的码字n0进行比较,只在n1不大于n0的时候,才能传输水印码字,否则传输原码字,这就保证了不增加视频数据流位率。该方法有一个问题值得考虑,即水印信号的引入是一种引起降质的误差信号,而基于运动补偿的编码方案会将一个误差扩散和累积起来,为解决此问题,该算法采取了漂移补偿的方案来抵消因水印信号的引入所引起的视觉变形。
NEC算法
该算法由NEC实验室的Cox等人提出,该算法在数字水印算法中占有重要地位,其实现方法是,首先以密钥为种子来产生伪随机序列,该序列具有高斯N(0,1)分布,密钥一般由作者的标识码和图像的哈希值组成,其次对图像做DCT变换,最后用伪随机高斯序列来调制(叠加)该图像除直流(DC)分量外的1000个最大的DCT系数。该算法具有较强的鲁棒性、安全性、透明性等。由于采用特殊的密钥,因此可防止IBM攻击,而且该算法还提出了增强水印鲁棒性和抗攻击算法的重要原则,即水印信号应该嵌入源数据中对人感觉最重要的部分,这种水印信号由独立同分布随机实数序列构成,且该实数序列应该具有高斯分布N(0,1)的特征。
生理模型算法
人的生理模型包括人类视HVS(HumanVisualSystem)和人类听觉系统HAS。该模型不仅被多媒体数据压缩系统利用,同样可以供数字水印系统利用。利用视觉模型的基本思想均是利用从视觉模型导出的JND(Just Noticeable Difference)描述来确定在图像的各个部分所能容忍的数字水印信号的最大强度,从而能避免破坏视觉质量。也就是说,利用视觉模型来确定与图像相关的调制掩模,然后再利用其来插入水印。这一方法同时具有好的透明性和强健性。
(5)数字水印应用领域
随着数字水印技术的发展,数字水印的应用领域也得到了扩展,数字水印的基本应用领域是防伪溯源、版权保护、隐藏标识、认证和安全隐蔽通信。
当数字水印应用于防伪溯源时,包装、票据、证卡、文件印刷打印都是潜在的应用领域。用于版权保护时,潜在的应用市场在于电子商务、在线或离线地分发多媒体内容以及大规模的广播服务。数字水印用于隐藏标识时,可在医学、制图、数字成像、数字图像监控、多媒体索引和基于内容的检索等领域得到应用。数字水印的认证方面主要ID卡、信用卡、ATM卡等上面数字水印的安全不可见通信将在国防和情报部门得到广泛的应用。多媒体技术的飞速发展和Internet的普及带来了一系列政治、经济、军事和文化问题,产生了许多新的研究热点,以下几个引起普遍关注的问题构成了数字水印的研究背景。