《数字水印技术的研究与实现(45页).doc》由会员分享,可在线阅读,更多相关《数字水印技术的研究与实现(45页).doc(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-第一章 绪论1.1 数字水印背景简介1.1.1数字水印的来源Internet(因特网)让多媒体信息的交流达到了前所未有的深度和广度,其多种多样的发布形式使人们更加准确并有效率的发布自己的重要信息和作品,并进行网络贸易,但随之也产生了一些严重的问题,如信息篡改,作品侵权。为了有效地保护这类数字安全,一门新兴的交叉学科信息隐藏学正式诞生。按照隐藏技术的应用目的和载体对象不同,信息隐藏可分为许多分支领域。数字水印便是其对以数字形式存储和发布的载体对象进行处理的一大分支。 1.1.2数字水印需求背景在现实生活中,对于水印技术研究兴趣的突然增长很可能源于人们对版权保护的问题的关注。近年来,随着计算机多
2、媒体技术的飞速发展,人们可以方便的利用数字设备制作、处理和存储图像、语音、文本和视频等信息媒体。与此同时,数字网络通信正在飞速发展,使得信息的发布和传输实现了“数字化”和“网络化”。对于数字媒体而言,Internet成了出色的分发系统,因为它不但便宜,而且不需要仓库存储,又能实时发送。因此数字媒体很容易借助Internet或CD-ROM被复制、处理、传播和公开。这样就引发出数字信息传输的安全问题和数字产品的版权保护问题。如何在网络环境中实施有效的版权保护和信息安全手段,已经引起了国际学术界、企业界以及政府部门的广泛关注。其中如何防止数字产品(如电子出版物、音频、视频、动画、图像产品等)被侵权、
3、盗版、和随意篡改,已经成为世界各国亟待解决的热门问题。数字产品的实际发布机制的详细描述是相当复杂的。论文给出如下简单发布模型:图1-1 数字产品网络发布的基本模型如上图,非法操作行为包括以下三种,非法访问、故意篡改、版权破坏。为此产品所有者需要一种技术,可以在数字图像、音频和视频等数字产品中嵌入秘密信息,以便保护数字产品的版权、证明产品的真实可靠性、跟踪盗版行为或者提供产品的附加信息。其中的秘密信息可以是版权标志、用户序列号或者是产品相关信息。一般情况下,它需要经过适当变换再嵌入到数字产品中,通常称变换后的秘密信息为数字水印。1.1.3数字水印基础知识数字水印技术涉及多个学科知识,其中主要包括
4、图像存储处理原理,密码学技术。数字图像在计算机里的储存,从结构上讲,分为两种,即位图和矢量图。在位图中,图像由许多的屏幕小点(我们通常说的像素)组成,这些小点对应显存中的“位”,而就是这些 “位”决定了像素的图形属性,如像素的颜色、灰度、明暗对比度等。当一个像素所占的位数多时,它所能表现的颜色就更多、更丰富,从整体上看,图像的色彩就更艳丽,分辨率就更高。位图中所分的二位图、八位图等正是指像素所占的位数。当位图被放大或缩小时,由于像素的数量没有改变,图像的分辨率就会降低,图像的外观自然就大打折扣。密码学是研究编制密码和破译密码的技术科学。它包括密码编码学(cryptography)和密码分析学(
5、cryptanalysis)两个相互独立又相互促进的分支。数字水印中经常会用到一些经典的算法。至今,最著名也是最成熟的公钥密码算法是由三位数学家Rivest、Shamir和Adleman于1978年提出的RSA算法。其数学基础是数论的互素数、指数模和模逆元计算。1.2 数字水印的发展和应用1.2.1数字水印的发展历程自1993年以来,公开发表的有关信息隐藏和数字水印的文章日渐增多。Va SchvndGl在ICIP94会议上发表了题为“A digital watermark”的文章,它是第一篇在主要会议上发表的关于数字水印的文章,其中阐明了一些关于水印的重要概念。这篇文章被认为是一篇具有历史价值
6、的文献。1996年在英国剑桥举行的第一届信息隐藏学术研讨会标志着信息隐藏作为一个新的学科的诞生。1998年在美国波特士、1999年在德国德雷斯顿、2001年在美国匹兹经分别召开了第二至第四届研讨会。第五届会议在荷兰NoordwikerhouI举行。此外,一些信息安全、密码学和信息处理领域的国际会议也都有关于信息隐藏技术的专题和文章。一些著名的杂志,如IEEE会报、SPIE等都出版了有关信息隐藏技术的专题。1999年12月Stefan KAtZenbciss和Fabien APPeticolas等人出版了该领域的第一本专业论著“Information hiding techniques for
7、steganography and digital watermarking”, 其中文译本于2001年由人民邮电出版社出版。Neil F.Johnson等人于2000午l2月出版了“Information hiding steganography and watermarking attacks and countermeasures”一书,Ingemar Cox等人于2001年10月出版了关于数字水印的专著“Digital watermarking” 。1.2.2数字水印技术分类从含水印图像中的水印是否可见分为可见水印和不可见两大类2,7 ,从水印生成是否依赖于原始载体来分,可分为非自适应
8、水印(独立于原始载体的水印)和自适应水印。独立于原始载体的水印可以是随机产生的、用算法生成、也可以是事先给定的;而自适应水印是考虑原始载体的特性并生成的水印。从含水印载体的抗攻击能力即鲁棒性来分,可以分为易碎水印、半易碎水印、鲁棒性水印。从水印检测是否需要原始图像的参与,而分为明检测水印(私有水印)和盲检测水印(公有水印)。根据水印应用目的的不同,可分为版权保护水印、篡改提示水印(内容认证水印)、版权跟踪水印(数字指纹)、拷贝控制水印、标注水印(用来注释载体的拍摄日期等)和隐藏通信(保密通信)水印等。相应的,水印算法也可以分为两大类:可见水印处理算法和不可见水印处理算法。1.2.3数字水印的现
9、实应用数字水印的应用极为广泛。主要有以下7种应用领域:广播监控、所有者识别、所有权验证、交易跟踪、内容真伪鉴别、拷贝控制以及设备控制。1) 广播监控通过数字水印技术对识别信息进行编码,替代动态监控技术。它利用自身嵌入在内容中的特点,无需利用广播信号的某些特殊片段,因而能完全兼容于所安装的模拟或数字的广播基础设施。2) 所有者识别文本版权声明用于作品所有者识别具有一些局限。而因为水印的不可见性和同其嵌入的作品不可分离性,故水印比文本声明更有利于使用在所有者识别中。如果作品的用户拥有水印检测器,他们就能识别出含水印作品的所有者,即使使用能够将文本版权声明除去的方法来改动它,水印也依然能够被检测到。
10、3) 所有权验证除了对版权所有者信息进行识别,利用水印技术对其进行验证也是令人关注的一项应用。人们无须通过所嵌入的水印信息直接证明版权,而是设法证明一幅图像从另一幅得来这一事实。这种系统能够间接证明有争议的这幅图像更有可能为版权所有者所有而不是攻击者所有,因为版权所有者拥有创作出含水印图像的水印图像。4) 交易跟踪利用水印可以记录作品的某个拷贝所经历的一个或多个交易或者流通过程。5) 内容真伪鉴别如今以难以察觉的方式对数字作品进行篡改已经变得越来越容易。消息真伪鉴别问题在密码学中已有比较成熟的研究。如果极微小改动就能造成真伪鉴别印记失效,这种印记便可称作“脆弱水印”,通过这种办法,可对内容是否
11、被修改进行鉴别。6) 拷贝控制人们可以将水印嵌入内容中,与内容一同运作。如果每个录制设备都装有一个水印检测器,设备就能够在输入端检测到“禁止拷贝”水印的时候禁用拷贝操作。7) 设备控制拷贝控制实际上属于更大范围的一个应用设备控制的范畴。设备控制是指设备能够在检测到内容中的水印时作出反应,实现自动化运作。1.2.4数字水印的发展现状与趋势数字水印软件的发展速度非常快,起初仅仅作为图像处理软件的插件,而今已经开始向大型商业化软件发展,加上3D打印机的出现,呈现出面向Internet、实体工业、多种技术集成的发展趋势,它的运用和主要发展方向体现在以下几个方面:1、结合智能体技术,开发水印Agent和
12、自动追踪版权标志。2、面向电子商务,提供服务器端的完整性保护和客户端的数据认证。3、建立水印认证中心,提供各种网上服务。4、开发基于数字水印技术的数字作品电子销售系统,提供完整的安全与版权保护机制。5、为各种付费点播服务,提供基于流技术的数字水印产品。6、面向更广泛的数字媒体,如三维动画、数字地图等,开发基于数字水印的安全保护产品,保护3D打印原设计图的版权。7、与密码技术,尤其是数字签名技术相结合,构造综合的数据安全系统。8、使用各种生物认证技术(如指纹、视网膜)构造专人标识水印。数字水印软件作为数据安全领域中的新生事物,具有很高的技术含量和很强的生命力,同时也孕育着巨大的商机。我们有理由相
13、信,会有越来越多的有识之士投入到数字水印技术的研究和产业化进程中来10。1.3 本论文研究与实现内容本课题的工作主要是设计并实现一个较为完整的数字水印系统,优化数字水印运作流程,提供不可见的数字水印技术与实现,测试数字水印的鲁棒性。该系统可以满足针对彩色或者灰度图片进行二值水印的嵌入和提取工作。系统的主要功能有:用户身份认证登录,密码安全保护使用公认的RSA加密算法;数字水印的生成,通过对图像的基本操作,自定义水印图片,添加用户私密信息;数字水印的嵌入,通过将原始图像进行分块DCT处理和Zig-Zag排序,然后将数字水印图像替换经DCT矩阵正交化后的DCT系数的指定值,最后经过逆变换生成嵌入后
14、的水印图片;数字水印的提取,对已嵌入水印的图像同样采用分块处理,然后进行DCT操作,最后采用特定算法提取出指定区域的值与整个区域平均值进行比较,最后经替换得出水印的值,并将其还原成水印图片;数字水印的测试,通过计算图片的NC值(归一化相关系数)和PSNR值(峰值信噪比)来进行比较,判断相似度,检测鲁棒性及不可见性。本文的内容安排如下: 第一章绪论,简介项目背景和发展现状;第二章数字水印基本原理,介绍了数字水印以及其原理和分类;第三章数字水印的关键技术,深入学习和研究了一些数字水印中常用的技术;第四章一种优化的数字水印系统的实现,详细描述了本水印系统的实现原理和过程;第五章总结与展望,总结了本文
15、的工作,同时也指出本系统的不足之处和今后研究的方向。-第 44 页-第二章 数字水印基本原理2.1概述对数字水印(Digital Watermarking)技术来说,载体对象通常是数字产品,是版权保护对象,而所嵌入的信息则是与该产品相关的版权标志、购买者或者其他相关信息。其是将一些标识信息(即数字水印)直接嵌入数字载体当中(包括多媒体、文档、软件等)或是间接表示(修改特定区域的结构),不影响原载体的使用价值,也不容易被探知和再次修改,但可以被生产方识别和辨认。通过这些隐藏在载体中的信息,可以达到确认内容创建者、购买者、传送隐秘信息或者判断载体是否被篡改等目的。2.2数字水印的特点作为数字水印技
16、术基本上具有下面几个方面的特点: 1、安全性:表现为水印能够抵抗恶意攻击的能力。数字水印的信息应是安全的,难以篡改或伪造,同时,应当有较低的误检测率,当原内容发生变化时,数字水印应当发生变化,从而可以检测原始数据的变更;当然数字水印同样对重复添加有较强的抵抗性 2、隐蔽性:数字水印应是不可知觉的,而且应不影响被保护数据的正常使用;不会降质; 3、鲁棒性:是指在经过常规信号处理后,数字水印仍能保持部分完整性并能被准确鉴别。可能的信号处理过程包括信道噪声、滤波、数/模与模/数转换、重采样、剪切、位移、尺度变化以及有损压缩编码等。主要用于版权保护的数字水印易损水印(Fragile Watermark
17、ing),这种水印是在内容数据中嵌入不可见的信息。当内容发生改变时,这些水印信息会相应地发生改变,从而可以鉴定原始数据是否被篡改。 4、水印容量:是指载体在不发生形变的前提下可嵌入的水印信息量。嵌入的水印信息必须足以表示多媒体内容的创建者或所有者的标志信息,或购买者的序列号,这样有利于解决版权纠纷,保护数字产权合法拥有者的利益。尤其是隐蔽通信领域的特殊性,对水印的容量需求很大11。2.3数字水印的基本原理2.3.1数字水印系统的基本框架粗略来看,数字水印系统包含嵌入器和检测器两大部分。嵌入器至少具有两个输入量:一个是原始信息,它通过适当变换后作为待嵌入水印信号;另一个就是要在其中嵌入水印的载体
18、作品。水印嵌入器输出结果为含水印的载体作品,通常用于传输和转录。之后这件作品或另一件未经过这个嵌入器的作品可以作为水印检测器的输入量。具体如图2-1所示:图 2-1 数字水印处理系统基本框架通用的水印技术包含两个方面:水印的嵌入和水印的提取、检测,如图2-2和图2-3所示。 水印信息原始数据密 钥水印嵌入算法含水印产品图 2-2 水印信号嵌入水印载体原始数据密 钥水印提取算法水印提取或检测图 2-3 水印信号提取或检测2.4数字水印的几种主要算法对于水印嵌入和提取技术,纵观近几年来相关的报道和文献,从整体框架构思到具体实现细节,可以说是百花齐放,设计思想往往取决于研究人员的研究背景和入手角度。
19、一般来讲,主要包括以下几个方面:1、空间域水印LFTurner与RGvan Schyndel等人的空间域水印算法是最低有效位算法(LSB)与改进算法。由于该算法是通过调整原始数据的最低几位来隐藏信息,使一般用户对于隐藏信息,在视觉上很难察觉。虽然其有较大的信息嵌入量,但作为数字水印算法,因其基本原理限制,所隐藏的数字水印信息是极为脆弱的,无法经受一些有损的信号处理。Bander等人提出的基于统计的数字水印方案(Patchwork)和纹理块映射编码方法则是空间域水印技术的典型设计。Patchwork任意选择N对图像点,增加其一点的亮度的同时,相应降低另一点的亮度值。通过这一调整过程完成水印的嵌入
20、。该算法具有不易察觉性,并且对于有损压缩编码(JPEG)和一些恶意攻击处理等具有抵抗力。纹理块映射编码方法则是将数字信息隐藏于数字图像的任意纹理部分,其将隐藏信息纹理映射到另一纹理相似的区域。该算法对于滤波、压缩和扭转等操作具有抵抗力,但仅适于具有大量任意纹理区域的图像。 Pitas和Kaskalis利用“Patchwork”算法的基本原理,提出了数字图像签名的思想。这种算法可以有效抵抗二次采样攻击与JPEG压缩。2、变换域算法 基于变换域的技术可以嵌入大量比特数据而不会导致可察觉的缺陷,往往采用类似扩频图像的技术来隐藏数字水印信息。这类技术一般基于常用的图像变换,基于局部或是全部的变换,这些
21、变换包括离散余弦变换(discrete consine transform,DCT)、小波变换(discrete wavelet transform,DWT)、傅氏变换(fourier transform,FT)以及哈达马变换(Hadamard transform)等等。其中基于分块的DCT是最常用的变换之一,现在所采用的静止图像压缩标准JPEG也是基于分块DCT的。 最早的基于分块DCT的一种数字水印技术方案是由一个密钥随机地选择图像的一些分块,在频域的中频上稍稍改变一个三元组以隐藏二进制序列信息。选择在中频分量编码是因为在高频编码易于被各种信号处理方法所破坏,而在低频编码则由于人的视觉对低
22、频分量很敏感,对低频分量的改变易于被察觉。该数字水印算法对有损压缩和低通滤波是稳健的。 另一种DCT数字水印算法是首先把图像分成88的不重叠像块,在经过分块DCT变换后,即得到由DCT系数组成的频率块,然后随机选取一些频率块,将水印信号嵌入到由密钥控制选择的一些DCT系数中。该算法是通过对选定的DCT系数进行微小变换以满足特定的关系,以此来表示一个比特的信息。在水印信息提取时,则选取相同的DCT系数,并根据系数之间的关系抽取比特信息。 除了上述有代表性的变换域算法外,还有一些变换域数字水印方法,它们当中有相当一部分都是上述算法的改进及发展,这其中有代表性的算法是IPodichuk和Zeng W
23、en-jun提出的算法。他们的方法是基于静止图像的DCT变换或小波变换,研究视觉模型模块返回数字水印应加载在何处及每处可承受的JND(Just Noticeable Difference恰好可察觉差别)的量值(加载数字水印的强度上限),这种水印算法是自适应的。3、压缩域算法 基于JPEG、MPEG标准的压缩域数字水印系统不仅节省了大量的完全解码和重新编码过程,而且在数字电视广播及VOD(Video Oil Demand)中有很大的实用价值。相应地,水印检测与提取也可直接在压缩域数据中进行。 Hartung提出了一种针对MPEG-2压缩视频数据流的数字水印案。虽然MPEG-2数据流语法允许把用户
24、数据加到数据流中,但是这种方案并不适合数字水印技术,因为用户数据可以简单地从数据流中去掉,同时在MPEG-2编码视频数据流中增加用户数据会加大位率,使之不适于固定带宽的应用,所以关键是如何把水印信号加到数据信号中,即加入到表示视频帧的数据流中。对于输入的MPEG-2数据流而言,它可分为数据头信息、运动向量(用于运动补偿)和DCT编码信号块3部分,在Hartung方案中,只有MPEG-2数据流最后一部分数据被改变,其原理是,首先对DCT编码数据块中每一输入的Huffman码进行解码和逆量化,以得到当前数据块的一个DCT系数;其次,把相应水印信号块的变换系数与之相加,从而得到水印叠加的DCT系数,
25、再重新进行量化和Huffman编码,最后对新的Huffman码字的位数n,与原来的无水印系数的码字n0进行比较,只在n1不大于n0的时候,才能传输水印码字,否则传输原码字,这就保证了不增加视频数据流位率。该方案有一个问题值得考虑,即引入的水印信号是一种引起降质的误差信号,而基于运动补偿的编码方案会将一个误差扩散和累积起来,为解决此问题,该算法采取了漂移补偿的方案来抵消因水印信号的引入所引起的视觉变形。4、 NEC算法 该算法由NEC实验室的Cox等人提出,该算法在数字水印算法中占有重要地位,其实现方法是,首先以密钥为种子来产生伪随机序列,该序列具有高斯N(0,1)分布,密钥一般由作者的标识码和
26、图像的哈希值组成,其次对图像做DCT变换,最后用伪随机高斯序列来调制(叠加)该图像除直流分量外的1000个最大的DCT系数。该算法具有较强的鲁棒性、安全性、透明性等。由于采用特殊的密钥,故可防止IBM攻击,而且该算法还提出了增强水印鲁棒性和抗攻击算法的重要原则,即水印信号应该嵌人源数据中对人感觉最重要的部分,这种水印信号由独立同分布随机实数序列构成,且该实数序列应具有高斯分布N(0,1)的特征。随后Podilchuk等利用人类视觉模型又对该算法进行了改进,从而提高了该算法的鲁棒性、透明性等。5、生理模型算法 人的生理模型包括人类视觉系统HVS和人类听觉系统HAS。该模型不仅被多媒体数据压缩系统
27、利用,同样可以供数字水印系统利用。它们的基本思想均是利用从视觉模型导出的JND描述来确定在图像的各个部分所能容忍的数字水印信号的最大强度,从而能避免破坏视觉质量,也就是说,利用视觉模型来确定与图像相关的调制掩模,然后再利用其来插人水印。这一方法同时具有好的透明性和鲁棒性。2.5数字水印的分类1、按特性划分按水印的特性可以将数字水印分为鲁棒性数字水印和易损性数字水印两类。鲁棒性数字水印主要用于在数字作品中标识著作权信息,利用这种水印技术在多媒体内容的数据中嵌入创建者、所有者的标示信息,或者嵌入购买者的标示(即序列号)。在发生版权纠纷时,创建者或所有者的信息用于标示数据的版权所有者,而序列号用于追
28、踪违反协议而为盗版提供多媒体数据的用户。用于版权保护的数字水印要求有很强的鲁棒性和安全性,除了要求在一般图像处理(如:滤波、加噪声、替换、压缩等)中生存外,还需能抵抗一些恶意攻击。 易损性水印,与鲁棒水印的要求相反,易损数字水印主要用于完整性保护,这种水印同样是在内容数据中嵌入不可见的信息。当内容发生改变时,这些水印信息会发生相应的改变,从而可以鉴定原始数据是否被篡改。易损水印应对一般图像处理(如:滤波、加噪声、替换、压缩等)有较强的免疫能力(鲁棒性),同时又要求有较强的敏感性,即:既允许一定程度的失真,又要能将失真情况探测出来。必须对信号的改动很敏感,人们根据易损水印的状态就可以判断数据是否
29、被篡改过。2、按水印所附载的媒体划分按水印所附载的媒体,我们可以将数字水印划分为图像水印、音频水印、视频水印、文本水印以及用于三维网格模型的网格水印等。随着数字技术的发展,会有更多种类的数字媒体出现,同时也会产生相应的水印技术。3、按检测过程划分按水印的检测过程可以将数字水印划分为明文水印和盲水印。明文水印在检测过程中需要原始数据,而盲水印的检测只需要密钥,不需要原始数据。一般来说,明文水印的鲁棒性比较强,但其应用受到存储成本的限制。目前学术界研究的数字水印大多数是盲水印。4、按内容划分按数字水印的内容可以将水印划分为有意义水印和无意义水印。有意义水印是指水印本身也是某个数字图像(如商标图像)
30、或数字音频片段的编码;无意义水印则只对应于一个序列号。有意义水印的优势在于,如果由于受到攻击或其他原因致使解码后的水印破损,人们仍然可以通过视觉观察确认是否有水印。但对于无意义水印来说,如果解码后的水印序列有若干码元错误,则只能通过统计决策来确定信号中是否含有水印。5、按水印隐藏的位置划分按数字水印的隐藏位置,我们可以将其划分为时(空)域数字水印、频域数字水印、时/频域数字水印和时间/尺度域数字水印。 时(空)域数字水印是直接在信号空间上叠加水印信息,而频域数字水印、时/频域数字水印和时间/尺度域数字水印则分别是在DCT变换域、时/ 频变换域和小波变换域上隐藏水印。 随着数字水印技术的发展,各
31、种水印算法层出不穷,水印的隐藏位置也不再局限于上述四种。应该说,只要构成一种信号变换,就有可能在其变换空间上隐藏水印。第三章 数字水印的关键技术3.1公钥密码算法 RSA1976年Diffle和Hellman发表了“密码学的新方向”一文,提出了公钥密码算法。它不仅使对称密码的密钥分发困难得到有效解决,而且可用于数字水印,为网络时代的信息安全提供新的理论和技术基础。公钥加密体制系统如图3-1所示:图3-1 公钥密码系统本系统运用基于数论的互素数、指数模和模逆元计算的。大数的因子的分解是RSA的安全性的保证,但同时并没有从上证明破译RSA的难度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把
32、握它的保密性能如何,而且密码学界多数人士倾向于因子分解而不是NPC问题。任何算法都有其自身的缺陷,RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)其速度较慢。由于RSA算法涉及大数的高次幂模运算,计算量很大。这种算法出现于1978年,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。但RSA的安全性一直未能得到理论上的证明。RSA的安全性依赖于大数分解。公钥和都是两个大素数( 大于 100个十进制位)的函数。据猜测,从
33、一个密钥和密文推断出明文的难度等同于分解两个大素数的积。为了计算两个密钥,给定两个大素数,p 和q ,并计算。计算:n = p * q、r=(p-1)*(q-1)然后随机选择加密密钥e,要求 e 和 r互质,即互素数。再然后,利用欧几里得(Euclid)扩展算法计算解密密钥d, 它满足e * d = 1 ( mod r)其中,e即为公钥,d即为私钥。e和n是公开的,p和q在加解密过程中不再需要,但绝不能泄露,应该丢弃。给定(明文)m(二进制表示)时,首先把m分成等长数据块 m1 ,m2,., mi ,块长s,其中 s应小于n的位数,对应的加密密文是:ci = mie ( mod n ) ( 3
34、-1)得到相应的密文块,加密后的密文m由相同长度的密文块ci组成。解密时作如下计算:mi = cid ( mod n ) (3-2)RSA 可用于数字签名时,签名是用 (3-1) 式,验证使用(3-2)式。具体操作时考虑到安全性和 m信息量较大等因素,一般是先作 HASH 运算。破译者要解密,就要根据已知的e和n,计算d。而要计算d,应知道r,因而必须知道p和q。但是,如果n是一个600位的大整数,如何能在有生之年将它分解为两个素数因子呢,据研究,目前最快的计算机也无法做到。这就是RSA的安全所性依赖的。但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。
35、假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前,RSA的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解140多个十进制位的大素数。因此,模数n必须选大一些,因应就具体适用情况而定。3.2数字图像置乱技术置乱技术是随着信息的安全和保密被重视而发展起来的图像加密技术。它可以看作是从经典密码学中的单表系统扩展而来的。数字图像置乱即是一种加密方法,合法使用者可以自由控制算法的选择,参数的选择以及使用随机数技术,达到非法使用者无法破译图像内容的目的12。3.2.1 数字图像置乱技术的基本概念经典密码学对于一维数据流提供了很好的加解密算法
36、,其中如DES、RSA等著名密码系统得到了广泛的应用,但是这些系统往往忽视数字图像的一些特殊性质如二维的自相似性、大数据量等。图像置乱技术早期是对模拟图像的位置空间做置换,可以看作从经典密码学中的单表系统扩展而来。对于数字化的图像,置乱过程不仅可以在数字图像的空域(色彩空间、位置空间)上进行,还可以在数字图像的频域上进行。数字图像置乱即是对数字图像的一种加密方法,它使得合法使用者可以自由控制算法的选择、参数的选择以及使用随机数技术,这就给攻击者带来非法破译的难度,主要表现在统计分析各种可能的组合的巨大计算量。此外,近年兴起的信息隐藏以及数字水印技术,从不同角度对数字图像的隐藏与伪装、著作权保护
37、等问题提出了一些解决方法,本文提出的数字水印算法把图像置乱技术和水印技术结合起来,通过产生置乱算法和水印算法的密钥来保护水印原始数据和跟踪产品的流动等。数字图像的置乱变换就是一种可逆变换,通过对数字图像的位置或灰度级等做变换,来“扰乱”图像,以达到在一定程度上迷惑第三者的目的。如果不知道所使用的置乱变换算法,很难恢复出原始图像。置乱算法图3-1 原始图像和置乱后的图像图3-1给出了一个通过象素置乱算法得到的置乱图像和原始图像的比较。3.2.2 最佳置乱度文献6提出了最佳置乱度的定义,通过计算置乱度判断图像置乱的程度。图像中的任意两个像素的距离可以用公式表示如下: (3-3)式中(xi,yi),
38、(xj.yj)分别表示像素的空间坐标值,如果将图像以矩阵形式表示,相当于矩阵元素的行和列的值。某矩阵元素和它相邻的元素之间的距离称为一阶距离,用 Dl(i,j) 表示,将某一矩阵元素和它相距一个元素的元素之间的距离称为二阶距离,用D2(i,j) 表示,同理相距n个元素的元素之间的距离称为n阶距离、用Dn(i,j)表示。定义1:一阶置乱度是图像I中所有像素的一阶距离的均值和方差之比,用公式表示如下: (3-4)从公式3-4可以看出,一阶距离的均值比较大表示置乱后相邻像素之间的距离变大了也即相邻像素被分散了,阶距离的方差比较小表示距离变化程度比较集中,所以二者的比值越大表示置乱度越大,即原来完整的
39、图像的像素被均匀地打散的程度越大。直观地看,置乱度大表示一幅图像中原先空间距离小的像素对之间的距离变大了。因为一阶置乱度只定义了原来相邻像素对之间的距离变化,还不足以十分精确地描绘置乱程度,为此将一阶置乱度的公式推广,引出n阶置乱度的计算公式。(3-5)公式3-5中通过引入一个加权系数ak来体现不同阶距离在置乱度中所起的作用,即首先考虑将相距最近的像素对尽量分散开,然后再考虑其它距离较大的像素对12。3.2.3 Arnold变换Arnold变换是在Arnold遍历理论研究中提出的一种变换,俗称描脸变换。定义2 设有单位正方形上的点(x,y),将点(x,y)变到另一点 的变换为:此变换称作猫变换
40、。公式3-6定义的变换实际上是一种点的位置移动,该变换是一一对应的,且具有周期性。此外,这种变换可以迭代地做下去。需要注意的是,Arnold变换具有周期性,即当迭代到某一步时,将从新得到原始图像。Dyson和Falk分析了离散Arnold变换的周期性,给出了对于任意 ,Arnold变换的周期 ,这也许是迄今最好的结果了。3.2.4 基于Arnold变换的数字图像位置置乱对于数字化图像而言,我们所说的位置移动实际上是对应点的灰度值或者RGB颜色值的移动,即将原来点处象素对应的灰度值或RGB颜色值移动至变换后的点处。如果我们对一个数字图像迭代地使用离散化的Arnold变换,即将左端输出的 作为下一
41、次Arnold变换的输入,可以重复这个过程一直作下去,当迭代到某一步时,如果出现的图像符合我们对图像的“杂乱无章”标准的要求,这即是一副置乱了的图像。图3-2即是经Arnold变换置乱后的图像,我们可以看到对图像只需进行几次Arnold变换迭代,原图像就已经杂乱无章了,置乱效果非常好。 (a) 原始图像 (b) 一次Arnold变换后的图像(c) 三次Arnold变换后的图像(d) 五次Arnold变换后的图像图3-2 Arnold变换置乱3.3 DCT域数字水印3.3.1 DCT 变换概述 离散余弦变换是数字图像处理以及信号处理常用的一种正交变换,具有压缩比高、误码率小、信息集中能力和计算复
42、杂性综合效果较好等优点,是图像编码的核心技术之一13,14。二维离散DCT 变换及IDCT 反变换公式如下: (3-7)=DCT逆变换 (3-8)图像二维DCT 变换(N 取8 或16)有许多优点: 图像信号经过变换后,变换系数几乎不相关,经过反变换重构图象信道误差和量化误差将像随机噪声一样分散到块中的各个像素中去,不会造成误差累积, 并且变换能将数据块中的能量压缩到为数不多的部分低频系数中去(即DCT 矩阵的左上角)。对于给定图像存在两种DCT 变换方法:一种是把图像看成一个二维矩阵直接对其进行DCT 变换,然后嵌入水印,Cox采用此种方法;另一种方法是与JPEG 压缩标准相统一,先把图像分
43、成88 的不同小块, 再分别对每一块进行DCT 变换,进而嵌入水印。3.3.2 DCT 数字图像水印基本特点不同的应用对数字水印的要求不尽相同,一般认为数字水印应具有如下特点:1、透明性:对于以模拟方式存储和分发的信息(如电视节目),或是以物理形式存储的信息(如报刊、杂志),用可见的标志就足以表明其所有权。但在数字方式下,标志信息极易被修改或擦除。因此应根据多媒体信息的类型和几何特性,利用用户提供的密钥将水印隐藏到一系列随机产生的位置中,使人无法察觉。2、鲁棒性:水印必须对一般的信号处理操作(如滤波、平滑、增强和有失真压缩等)、删除攻击和迷惑攻击等具有鲁棒性。除非对数字水印具有足够的先验知识,
44、任何破坏和消除水印的企图都将严重破坏多媒体信息的质量。3、 不可检测性:包括两方面的含义:(1)水印信息与原始载体数据具有一致的特性,使攻击者无法通过信息分析手段判断多媒体数据中是否存在水印;(2)水印信息本身具有不可统计性,避免攻击者通过统计多个多媒体数据进而分析存在的相似性来进行攻击。4、 安全性:指水印嵌入算法具有较强的抵抗攻击的能力,能够承受一定程度的人为攻击而使水印不会被破坏。5、自恢复性:经过一些操作或者变换之后,可能会使原始载体数据产生较大的破坏,如果从留下的片断数据能够恢复信号,就是所谓的自恢复性。3.3.3 DCT 数字图像水印基本特点3.4数字水印的模式识别3.4.1、模式
45、识别的基本概念模式识别就是机器识别,计算机识别或机器自动识别,目的在于让机器自动识别事物。3.4.2、数字水印的检测方法:基于假设检验的水印检测设要检验的作品x属于一下两种情况之一:H0: x = xH1: x=x + w即假设H0假定接收到的作品x中没有水印,称之为零假设。假设H1假定接收到的作品x中嵌入水印w,称之为备择假设。满足假设H0的作品全体组成集合R0,满足假设H1的作品全体组成集合R1。假设检验的方法,顾名思义,就是利用接受到的载体作品对假设进行检验,从而判断假设检验是否成立。本章研究了实现的数字水印系统中用到的一些关键技术和对其中一小点的扩展,在学习和研究这些技术的同时,也为本
46、文后续的工作做了充足的基础准备,在后期实现的过程中,也更深入的了解了这些技术,并做了自己的优化。第四章 一种优化的数字水印系统的实现4.1 数字水印系统说明本文提出了一种优化的数字水印算法,及基于系数关系的DCT域数字图像水印算法。在嵌入的过程中,优化嵌入内容,提高原图片的不可见性;在提取过程中,优化提取判定条件,提高水印图片的鲁棒性。算法作用域在DCT 变换后的中频域内,通过算法的处理在DCT系数里嵌入二值水印,系统能够支持彩色和灰度两种格式的BMP图像文件,并实现数字图像的隐藏,且水印的提取完全是盲提取,不需要原始图像,具有较强的安全性和鲁棒性。4.2 数字水印系统优化设计普通数字水印系统
47、仅仅包含对图像的嵌入以及提取,用户数字水印系统分为6个模块,分别为用户身份验证模块、采集图像等数据载体和预处理模块、数字水印嵌入模块、数字水印检测模块、水印提取以及水印测试模块。充分分析用户的需求,弥补了当下系统人机操作不协调的缺陷。4.2.1 用户身份验证首先用户只有获得授权方能进入系统,其次对已授权的用户的身份加以验证和加密保护。不仅保证了用户的信息安全,而且可以实现用户的分配。图4-1 用户身份验证用例图4.2.2采集图像与预处理系统支持数据载体的采集,查看,收藏,预处理等基本操作,优化当前系统用户对初始图片的采集,修改的缺陷。图4-2 预处理用例图4.2.3 数字水印的生成系统提供用户生成自定义水印信息的功能,方便用户添加自己的个人信息或者是版权信息。用户可通过简单的操作,实现自己的水印,而不需借助其他图像处理工具。图4-3水印生成用例图4.2.4数