基于数字水印的电子产品版权保护及防伪系统的设计与实现
2017-06-10郭翔胡硕袁强张越
郭翔 胡硕 袁强 张越
【摘 要】全球迅猛发展的Internet网络给世界经济带来了新的商机,数字技术提供了与原作品同样精美的复制品,但同时使得网络作品的版权保护问题日益突出。 本文介绍了最新的多媒体版权保护技术-数字水印的概念,在阐述数字水印的分类和特性的基础上,提出了以数字水印为基础的网络作品版权保护系统,并研究了数字水印系统的处理框架和数字水印算法。
【关键词】数字水印 网络作品 版权保护
信息时代,各类信息化数字技术扩充发展,针对丰富数字信息的安全保护需求也日益扩充。基于数字文档、图片、视频等可方便快捷的复制、篡改与盗取,因而令其产权保护面临一定困难。同时数字文本、图像具有一定适应性特征,可供用户任意设计更新并为己所用。为此应科学探究一种良好的数据可靠加密保护技术,进而有效应对不良信息篡改、窃取、盗用问题。本文基于这一目标引入水印数字技术探讨,该技术通过印记图形加密有效保护版权信息,形成印记图形同原始保持一致,基于一定标准形成水印图像,进而探究非法复制信息、相关违规产品的不良流通应用。该技术核心特征在于潜入模式,是通过视觉设想推理阐释实效的科学方式。
本文提出基于字符替换的文本水印算法,和基于DWT变换的图像水印算法,采用C++实现,利用编程IDE的图形化设计界面来实现数字水印防伪系统。
一、系统总体设计
数字水印防伪系统是针对现有的常用文本的格式、图片格式,利用基于文本字符替换的水印算法,和基于DWT变换的图像水印算法,并结合实际需求而开发的数字水印系统,功能包括人机界面、文本处理模块、图像处理模块,在不影响电子作品质量的情况下,利用算法,隐秘、快速、准确地地嵌入,在传输过程,然后进行正确提取。系统的总体结构框图见图1,能保持电子作品的抗噪声性,提取时,能够准确提取,在电子作品改动是能够查错纠错。
二、文本水印系統模块设计和实现
1.对于txt无格式文档
采用的是基于符号替换编码的方法,利用了人们对标点符号的不敏感性和中文和西文标点符号的相似的结构特点而提出来的。例如中文的“,”和英文的“,”,中文的“?”和英文的“?”等等,人们从肉眼根本很难区分,为我们进行信息隐藏提供了空间。这里,我们选取了文章中出现频度较高的标点符号——逗号进行替换编码,因为逗号在中文文档和英文文档中的使用都比较频繁,所以利用逗号的变换可以隐藏更多的信息。编码的规则为:假设纠错编码后的水印序列为w[n],依次读入水印比特,若w[i]=1,中文的逗号变成英文的逗号或英文的逗号变成英文的逗号,即修改它的ASCII码。若w[i]=0,不发生变化,提取算法则反之。
2.对于word格式的文档
采用的是基于文本格式字体颜色嵌入和提取水印的。 嵌入步骤为:对接收到的文档,输入提取水印的密钥k,定位嵌入水印信息的区域,依次通过轻微改变某一字符的字体颜色,如把RGB(255,255,255)黑色改为RGB(255,255,254),依次嵌入水印码。 提取步骤为:找到嵌入水印信息的字符i后,判断该字符的字体颜色是否发生了变化,由于嵌入的规则不同提取的码元序列也不同。本算法采用的是:若RGB(255,255,255)变为了RGB(253,255,255),则水印码为11,若RGB(255,255,255)变为了RGB(254,255,255),则水印码为00,若RGB(255,255,255)变为了RGB(255,253,255),则水印码为10,若RGB(255,255,255)变为了RGB(255,254,255),则水印码为01。最后检测后得到的二值序列为w。实现的文本水印模块子系统如图2和图3所示。
三、图像水印系统模块设计与实现
图像水印系统模块采用MVC模式开发,将逻辑、数据、界面显示分离。采用MVC模式开发有利于通过工程化、工具化管理程序代码。使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。整个系统使用自定义异常处理机制,能夠提供给用户更友好的体验。
图像水印系统模块采用签名文件方式对图像进行嵌入、提取水印操作。采用签名文件方式有两个优点:(1)保证图像是由签名者自己加密的,签名者不能否认或者难以否认。(2)保证图像的版权属于签发者,别人不能盗用。
图像水印系统模块采用Biorthogonal双正交小波对图像进行三级小波分解和重构,其中一个小波函数对图像进行三级小波分解,另外一个小波函数对图像进行三级小波重构。根据S. Mallat的塔式分解算法,图像经过小波变换后分解成四个子图:水平方向LH、垂直方向HL和对角线方向HH的中高频细节子图和低频逼近子图LL。低频部分还可以继续分解,产生三个高频带系列LHn、HLn、HHn(n=1,2,3)和一个低频带LL3见图4。
分解操作为周期性在LLn(n=0,1,2,3,其中LL0表示原图像)图像的行和列中选取图像的像素点通过小波分解构造出滤波后图像,经过三级变换产生大的图像由树型结构保存,构成一颗三层图像树。
重构操作为反周期性的依次对三层图像树中的图像的行和列中选取图像的像素点通过小波重构构造出滤波后图像,最终获得含水印图像。
图像水印系统模块实现嵌入水印过程:将待嵌入图像进行三级小波分解得到的图像树按层依次取出图像,根据设立的嵌入门槛值来判断该像素点是否需要做水印嵌入处理,然后再根据小波分解等级决定水印嵌入的深度,最后再由水印嵌入公式将水印信息嵌入到图像像素点内。嵌入水印公式如下所示:
Si = Xi + (Alpha * |Xi| * WM[i%n]) if |Xi| > casting_threshold
其中Xi表示第i个的未经处理的图像像素值,Alpha表示透明度因子,WM[i%n]表示水印信息序列中第(i%n)个对应的水印信息,casting_threshold表示嵌入门槛值,n表示水印序列的长度。
图像水印系统模块实现提取水印过程:将待检测图像进行三级小波分解得到的图像树按层依次取出图像,根据设立的提取门槛值来判断该像素点是否需要做水印提取处理,然后再根据小波分解等级决定水印提取的深度,最后再由水印提取公式和将图像像素点中的水印信息提取出来。提取水印公式如下:
Val[0]=Val[0]+1 ;Val[1]=Val[1]+(Xi*WM[i%n]) ;Val[2]=Val[2]+Xi
if Xi > detection_threshold
其中Val表示存放水印信息的临时数组,Xi表示第i个原始图像像素值,WM[i%n]表示水印信息序列中第(i%n)个对应的水印信息,detection_threshold表示提取门槛值,n表示水印序列长度。
图像水印系统模块实现验证水印过程:根据小波分解等级决定检验水印的深度。将提取出来的水印信息依次在HL、LH、HH頻带循环进行验证,由此统计水印信息的有效程度,得出有效系数。将有效系数与水印认证系数作比较,若有效系数大于水印认证系数,则认为对此图像拥有版权。验证水印公式如下:
Sum=Sum+(Val[1]>Val[2]*Alpha/1.0)?1:0 if Val[0]!=0
N=N-1 if Val[0]==0
V=Sum/N
其中Val[n](n=1,2,3)表示提取操作所获取的水印信息,Sum表示验证命中次数,N表示总验证次数,V表示水印有效系数。
四、结束语
数字水印系统设计的初衷是针对电子产品版权保护及防伪识别认证,在处理文本与图像方面具有一定成效,得到了预期的结果。图像处理方面采用了签名文件作为水印信息加密图像,保证了签名者对图像加密操作的不可否认性和对加密图像的主权性,具有一定的市场运用价值。目前该系统只能处理图像、文本两种电子产品,对于视频、音频等电子领域还未涉及,所以未来的目标则是针对这些领域进行研究。
参考文献
[1]王穎,肖俊,王蕴红,数字水印原理与技术,科学出版社,2007
[2]叶天语.基于图像LSB的秘密信息隐藏技术[J].计算机与现代化,2005:28-31.
[3]李丽.基于LSB的图像信息隐藏技术研究[D].北京:北京邮电大学,2011.
[4]陈明奇,钮心忻,杨义先,数字水印的研究进展和应用,通信学报,2001,22(5): 71-79
[5]易开祥,石敦英,数字水印技术研究进展,中国图像图形学报,2001,6(2):111-117
[6]王俊杰,数字水印与信息安全技术研究,知识产权出版社,2014
[7]苏庆堂,彩色图像数字盲水印技术,清华大学出版社,2015
[8]蒋天发,数字水印技术及其应用,科学出版社,2015
[9]郑芬,基于DWT的数字图像水印算法研究,南昌航空大学,2007