时间:2023-02-20 10:13:55
序论:好文章的创作是一个不断探索和完善的过程,我们为您推荐十篇水印技术论文范例,希望它们能助您一臂之力,提升您的阅读品质,带来更深刻的阅读感受。
随着信息时代的到来,特别是Internet的普及,信息的安全保护问题日益突出。当前的信息安全技术基本上都以密码学理论为基础,无论是采用传统的密钥系统还是公钥系统,其保护方式都是控制文件的存取,即将文件加密成密文,使非法用户不能解读。但随着计算机处理能力的快速提高,这种通过不断增加密钥长度来提高系统密级的方法变得越来越不安全。另一方面,多媒体技术已被广泛应用,需要进行加密、认证和版权保护的声像数据也越来越多。数字化的声像数据从本质上说就是数字信号,如果对这类数据也采用密码加密方式,则其本身的信号属性就被忽略了。最近几年,许多研究人员放弃了传统密码学的技术路线,尝试用各种信号处理方法对声像数据进行隐藏加密,并将该技术用于制作多媒体的“数字水印”。
一、数字时代的密写术———数字水印
数字水印(DigitalWatermark)技术是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。数字水印是信息隐藏技术的一个重要研究方向。嵌入数字作品中的信息必须具有以下基本特性才能称为数字水印:
(一)隐蔽性
嵌入水印后的数据与原始数据相比,应感觉不到差别。嵌入水印后的数据不应该包括人们可以感觉到的失真而造成原始数据质量下降,这是一个具有主观性的属性,因而目前没有一个定量的标准来衡量。
(二)鲁棒性
所谓鲁棒性是指在经历多种无意或有意的信号处理过程后,数字水印仍能保持完整性或仍能被准确鉴别。嵌入水印后的数据经受对数据一些恶意的处理,譬如滤波、再量化、抖动等以及一些蓄意的攻击后,应该还能得到嵌入的数据。
(三)密钥的唯一性
即不同的密钥不应产生等同的水印。
(四)检测的可靠性
水印检测出错的概率应小于某一合适门限值。这一特性描述了水印检测算法必须具有一定的确信度。
二、数字水印的分类
数字水印技术可以从不同的角度进行划分。
(一)按特性划分
按水印的特性可以将数字水印分为鲁棒数字水印和脆弱数字水印两类。
(二)按水印所附载的媒体划分
按水印所附载的媒体,我们可以将数字水印划分为图像水印、音频水印、视频水印、文本水印以及用于三维网格模型的网格水印等。
(三)按检测过程划分
按水印的检测过程可以将数字水印划分为明文水印和盲水印。明文水印在检测过程中需要原始数据,而盲水印的检测只需要密钥,不需要原始数据。
(四)按内容划分
按数字水印的内容可以将水印划分为有意义水印和无意义水印。有意义水印是指水印本身也是某个数字图像或数字音频片段的编码;无意义水印则只对应于一个序列号。
(五)按用途划分
按水印的用途,我们可以将数字水印划分为票据防伪水印、版权保护水印、篡改提示水印和隐蔽标识水印。
(六)按水印隐藏的位置划分
按数字水印的隐藏位置,我们可以将其划分为时(空)域数字水印、频域数字水印、时/频域数字水印和时间/尺度域数字水印。
三、数字水印的应用
多媒体技术的飞速发展和Internet的普及带来了一系列政治、经济、军事和文化问题,产生了许多新的研究热点,以下几个引起普遍关注的问题构成了数字水印的研究背景。
(一)数字作品的知识产权保护
数字作品的版权保护是当前的热点问题。由于数字作品的拷贝、修改非常容易,而且可以做到与原作完全相同,所以原创者不得不采用一些严重损害作品质量的办法来加上版权标志,而这种明显可见的标志很容易被篡改。“数字水印”利用数据隐藏原理使版权标志不可见或不可听,既不损害原作品,又达到了版权保护的目的。然而实事求是地说,目前市场上的数字水印产品在技术上还不成熟,很容易被破坏或破解,距离真正的实用还有很长的路要走。(二)商务交易中的票据防伪
随着高质量图像输入输出设备的发展,特别是精度超过1200dpi的彩色喷墨、激光打印机和高精度彩色复印机的出现,使得货币、支票以及其他票据的伪造变得更加容易。另外,在从传统商务向电子商务转化的过程中,会出现大量过度性的电子文件,如各种纸质票据的扫描图像等。即使在网络安全技术成熟以后,各种电子票据也还需要一些非密码的认证方式。数字水印技术可以为各种票据提供不可见的认证标志,从而大大增加了伪造的难度。
(三)声像数据的隐藏标识和篡改提示
数据的标识信息往往比数据本身更具有保密价值。没有标识信息的数据有时甚至无法使用,但直接将这些重要信息标记在原始文件上又很危险。数字水印技术提供了一种隐藏标识的方法,标识信息在原始文件上是看不到的,只有通过特殊的阅读程序才可以读取。这种方法已经被国外一些公开的遥感图像数据库所采用。此外,数据的篡改提示也是一项很重要的工作。现有的信号拼接和镶嵌技术可以做到“移花接木”而不为人知,因此,如何防范对图像、录音、录像数据的篡改攻击是重要的研究课题。基于数字水印的篡改提示是解决这一问题的理想技术途径,通过隐藏水印的状态可以判断声像信号是否被篡改。
(四)隐蔽通信及其对抗
数字水印所依赖的信息隐藏技术不仅提供了非密码的安全途径,更引发了信息战尤其是网络情报战的革命,产生了一系列新颖的作战方式,引起了许多国家的重视。网络情报战是信息战的重要组成部分,其核心内容是利用公用网络进行保密数据传送。迄今为止,学术界在这方面的研究思路一直未能突破“文件加密”的思维模式,然而,经过加密的文件往往是混乱无序的,容易引起攻击者的注意。网络多媒体技术的广泛应用使得利用公用网络进行保密通信有了新的思路,利用数字化声像信号相对于人的视觉、听觉冗余,可以进行各种时(空)域和变换域的信息隐藏,从而实现隐蔽通信。
四、数字水印的未来
数字水印技术还有很多其它用途,并且其应用领域还在不断扩大。除了技术发展,市场营销和商业规划也极为重要,并且需要有深度的分析与战略计划。技术推广和普及也必不可少,以保证市场为接受数字水印技术做好准备。对此提出一些想法。
第一,如何利用水印算法,在网络环境中解决多媒体信息安全问题,成为了当前一个研究热点。多媒体信息的安全问题是:安全传递、访问控制和版权保护。通迃加密解密可以实现前两个目的,但是,解密后的数据可以随意在网络上分布、传播。在数字内容中嵌入唯一的标志(即数字水印),在出现争端纠纷时,根据提出的水印,可以证明真正的版权拥有者,或者找出非法传播的人。但是,这些应用只是被动的在争端发生时才体现出来,而且由于缺乏相应的法律支持,这些想法没有真正的实施。因此,有人提出数字水印,利用移动技术,在网络上自动搜寻非法或未授权的数字媒体内容,但是,其前提是主机需要安装相应的程序,因而带来了新的安全问题。我们提出在网络通信路上,如在路由器中加入水印检测算法(数字水印),在网路上检测非法传播,从而杜绝网络上数字媒体内容的非法传播。
第二,目前关于多播体系下嵌入水印的方案有人已经提出。但是,在此方案下的水印需要满足的具体特性,还没有详细的考察。传统的多播基于Internet首先要研究多播体系下的水印算法需要满足的特性,然后,针对特性设计相应的水印算法。
第三,数字影院的建设需要利用数字水印保护,通过嵌入不同版本的水印,跟踪非法泄漏。其中,对于小规模的应用,只要嵌入鲁棒水印,就可以很好地满足要求。对于大规模应用,则主要考虑共谋攻击。另外,还要结合数字影院的体系结构,如果采用多播,则要结合网络特性和压缩编码。
第四,提出activewatermark概念。首先,在媒体中嵌入不同等级的水印,决定用户的权限,在网络中检测提取水印,路由器根据这些水印的权限,决定是否转发,并且提供截获的详细报告。其次,在防火墙中嵌入水印模块,对出去的媒体内容,提取水印,根据水印判断是否为重要的内容,不能外泄,对局域网的多媒体内容提供有效保护;对传进来的多媒体内容,可以根据提取的水印判断员工是否有权使用,从而防止出现不必要的违法侵权行为。
【参考文献】
2引水枢纽主要设计内容
枢纽工程总体布置:根据基本资料确定工程的等级、级别、洪水标准,可参考《水闸设计规范》、《水闸》、《取水工程》等文献,并结合地形及方案比较,确定采用什么类型引水枢纽,这里以人工弯道式引水枢纽为例,根据经验公式确定弯道的底宽、半径、中心线长度等参数,根据工程各主要建筑物的作用和设计原理,合理布置建筑物的位置。枢纽工程水力设计:首先,根据水力最佳断面和经济实用断面确定下游引水渠道的断面尺寸,利用《水力学》中的迭代计算公式确定渠道正常水深;其次,根据《水闸设计规范》确定进水闸、冲沙闸、泄洪闸的闸孔总净宽及单孔净宽,利用试算法确定进水闸、冲沙闸、泄洪闸的设计洪水位及校核洪水位;最后,根据《水力学》进行各闸的消能防冲计算。
2饮水安全工程数据的特点
与一般的科学数据相比,饮水安全工程数据具备以下两个特点:
(1)地理分布性。作为基本数据,国家农村饮水安全工程数据库包括了国内各省(直辖市)、市(州)、县(市、区)、乡镇内供水水厂的集中式工程数据,包括工程建设信息、实时监测信息,遍布全国,因此饮水安全工程数据具备地理空间的分布特性。
(2)数据要素多。饮水安全工程数据包括了地图数据,供水工程专题数据,省、市州、县区、乡镇专题基础信息,水质、管压安全监测信息,政务信息等。而且每类数据又包括多种要素的数据,如供水工程专题数据包括专题地理信息和专题建设信息,监测数据包括余氯、浊度、水压、流量等测量数据。整体来说,饮水安全工程数据是描述饮水安全工程的数据,数据量大,且与日俱增,专业性强,具有时间维上的有效性,且数据区域性强,不同市县统计的数据不交叉,数据存储形式多样,以小文件居多。
3饮水安全工程核心元数据
3.1元数据定义
首先,介绍几个关于元数据的定义。元数据:关于数据的数据。元数据元素:元数据的基本单元,元数据元素在元数据实体中是唯一的。元数据实体:一组说明数据相同特性的元数据元素,元数据实体可以包含一个或一个以上的元数据实体。元数据子集:元数据的子集合,由相关的元数据实体和元素组成。数据集:可以标识的数据集合。通常在物理上可以是更大数据集较小的部分。从理论上讲,数据集可以小到更大数据集内的单个要素或要素属性,一张硬拷贝地图或图表均可以被认为是一个数据集。饮水安全工程核心元数据指的是标识饮水安全工程信息所需要的最小元数据元素和元数据实体,为元数据元素集的子集。其次,本文采用UML类图方法描述饮水安全工程信息元数据。在元数据结构上采用《水利信息核心元数据》的结构作为本标准的基本结构,在内容上对元数据的特征,包括子集/实体名、元素名、英文名、英文缩写、定义、约束/条件、出现次数、类型和值域进行详细描述。
3.2饮水安全工程核心元数据结构
饮水安全工程元数据分为元数据元素、元数据实体和元数据子集三层。饮水安全工程核心元数据由一个元数据实体和四个元数据子集构成。其中,标识信息、数据质量为必选子集,内容信息、参照系信息为可选子集。每个子集由若干个实体(UML类)和元素(UML类属性)构成。
3.3饮水安全核心元数据内容
3.3.1饮水安全核心元数据信息
饮水安全工程元数据信息实体描述饮水安全工程信息的全部元数据信息,用必选实体MD_元数据表示,由以下元数据实体和元数据元素构成:元数据实体:MD_标识、DQ_数据质量、RS_参照系、MD_分发、MD_内容描述;元数据元素:元数据创建日期、联系单位、元数据名称、字符集、元数据使用的语言、元数据标准名称、元数据标准版本。
3.3.2标识信息
标识信息包含唯一标识数据的信息,用MD_标识实体表示,是必选实体。MD_标识是下列实体的聚集:MD_关键词、MD_数据集限制、EX_时间范围信息、MD_联系单位或联系人、MD_维护信息。MD_标识实体本身包含如下元素:名称、行政区编码、字符集、摘要、日期、状况、数据表示方式。
3.3.3数据质量信息
数据质量信息包含对数据资源质量的总体评价,用DQ_数据质量实体表示。应包括与数据生产有关的数据志信息的一般说明。DQ_数据质量实体包括两个条件必选的实体,DQ_数据质量说明和DQ_数据志。DQ_数据质量说明是数据集的总体质量信息。DQ_数据志是从数据源到数据集当前状态的演变过程说明。包括数据源信息实体和处理过程信息实体。
3.3.4内容信息
内容信息包含提供数据内容特征的描述信息,用MD_内容描述实体表示。
3.3.5空间参照系信息
参照系信息包含对数据集使用的空间参照系的说明,是条件必选子集,用RS_参照系实体表示。是关于地理空间数据集的坐标参考框架的描述信息,它反映了现实世界的空间框架模型化的过程和相关的描述参数。RS_参照系由三个条件必选的实体构成:SI_基于地理标识的空间参照系、SC_基于坐标的空间参照系、SC_垂向坐标参照系。
4元数据分级索引算法
本文根据饮水安全工程数据的区域性特点,选取分布式NameNode模型,改进目录子树分区算法和哈希算法,利用BloomFilter原理设计符合饮水安全工程信息的元数据分级索引算法。
4.1概念与公式
行政区划请求量:表示该行政区划所需的农村饮水安全工程元数据的请求量,用Request表示。由于请求量的具体数值难以确定,工程元数据的请求量与工程的数量有直接关系,而饮水工程的数量与行政区划的人口密度存在一定的换算关系。每个工程所涉及的文件包括招标文件、合同、工程规划、预算、管网图、厂区布置图、每年的运营报表等多种文件。因此,第m个行政区划的请求量Requestm为:Requestm=Densitym×f×Naverage(1)其中,Densitym代表第m个行政区划的人口密度,f表示饮水安全工程数量与人口密度的转换因子,Naverage代表每个工程文件的平均值。
4.2BloomFilter基本思想元数据分级索引算法
包括三部分:一部分是元数据请求被分配到哪个普通NameNode节点上,第二部分是分配到NameNode节点的哪个目录,最后根据NameNode节点中的目录信息查找元数据文件在DataNode中的具置。本文采用BloomFilter与Key-Value的存储位置对应表,来确定元数据文件在DataNode中的存储位置。BloomFilter的基本思想是使用一个比特的数组保存信息,初始状态时,整个数组的元素全部为0,采用k个独立的Hash函数,将每个元数据文件对应到{1,…,m}的位置,当有饮水安全元数据文件存储请求时,k个独立的Hash函数将以元数据标识信息中的元数据文件名为变量,得到k个哈希值,然后将比特数组中的相应位置更改为1,即:hashi(x)=1(1≤i≤k)(2)其中,x是元数据文件名。数组中的某一位置被置为1后,只有第一次有效,以后再置为1将不起作用。所示,假设k=3,x1先通过哈希函数,将数组中的三个位置置为1,在x2通过哈希函数得到的数组位置,将是0的位置置为1,已经是1的位置则不重复置1。判断某元素y是否属于这个集合,需对y应用k次哈希函数,如果所有的位置都是1(1≤i≤k),那么就认为y是集合中的元素,否则就认为y不是集合中的元素。如图3所示,y1可能是集合中的元素,y2则不属于这个集合。BloomFilter能高效地判断某个元素是否属于一个集合,但这种高效是有代价的,是存在一定的错误率,因为它有可能会把不属于这个集合的元素判定为属于此集合。为简化计算,假设kn<m并且各哈希函数完全随机。当某个目录中的所有元数据文件全部存储,即所有元素都被哈希函数映射到比特数组中去,这个数组中某一位置是0代表kn次哈希操作都没有被置为1,因此概率为:p=(1-1m)kn≈e-kn/m(3)其中第二次近似计算是因为:limxm(1+1n)n=e(4)令ρ代表比特数组中0的比例,则ρ的数学期望E(ρ)=p,则ρ≈p,因此:pfalse=(1-ρ)k≈(1-p)k(5)
4.3元数据分级索引算法
元数据分级索引算法包括三个步骤:一是选NameNode节点,二是选目录,三是分配存储位置。
4.3.1选取NameNode节点分布式
NameNode模型有一个主NameNode节点,一个主SecondaryNameNode和n个普通NameNode节点。其中,主SecondaryNameNode是主NameNode的快照,防止单点失效。算法的基本思想如下:(1)计算行政区划请求数。在本文中所涉及的饮水安全工程指的是湖北省的农村饮水安全工程,因此在普通NameNode节点上分布的是以市级为单位的元数据信息。在这一步中,根据公式(1)给每个市级行政区划的请求赋值,用Requestm表示。(2)分配NameNode节点。若n为奇数,则将其中一个NameNode节点作为备用节点,n=n-1;若n为偶数,则n不变。分配NameNode节点,得出市级行政区划与NameNode节点映射表。(3)第二次分组。将偶数个NameNode两两分成组,互为SecondaryNameNode节点,分组的原则为请求量较大的NameNode节点与请求量较小的NameNode节点一组。
4.3.2选择目录
分配完NameNode节点后,须设定每个Nam-eNode节点的目录,根据市级行政区划与Name-Node节点映射表设定一级目录。然后根据一级目录的编码,设定二级目录,二级目录为对应市及所管辖县级行政区划的目录。在饮水安全工程项目中,所涉及的数据类型分为图片类型、视频类型、文本类型等,所以将三级目录按文件类型进行划分,即每个二级目录下对应的三级目录为pic、video、txt等。
4.3.3分配存储位置
当用户要查找某个饮水安全元数据时,系统首先根据待查找元数据的行政区划编码,从市级行政区划与NameNode节点映射表中找到其对应的NameNode节点;然后,主NameNode节点将用户请求转发给此NameNode节点,收到转发的用户请求的NameNode节点同样将行政区编码进行处理,转化为市级编码,找到其一级目录;然后在一级目录下,根据编码找到二级目录,再根据用户请求的元数据类型,定位到三级目录,在三级目录下根据哈希表,找到对应存储位置并提交给主Name-Node节点,由主NameNode节点返回给用户。饮水安全元数据检索结果分为两种情况,第一种是查找成功,第二种是查找失败。一次饮水安全元数据成功检索过程的检索时间包括主NameNo-de节点并发处理延迟、主NameNode节点找到对应的NameNode节点的时间、转发用户请求与普通NameNode节点的通信时间、普通节点执行查找目录的时间、查找Hash表读取元数据的时间和返回查找结果给主NameNode的时间。一次失败的检索包含两种情况,一是定位到目录后,通过BloomFilter过滤后,判定要查找饮水安全工程元数据哈希表不属于该目录;二是通过BloomFilter过滤后,判定其属于该目录,但是通过查询Key-Value表,发现匹配错误,即上文提到的BloomFilter自身的错误率。第一种情况,根据BloomFilter的原理,可知经过k次独立的哈希函数后,如果得到的位置不是全为1,则返回查找失败,要查找的元数据请求不在此目录中,时间复杂度为O(1)。第二种情况是BloomFilter自身的缺陷,但是由于有对应的Key-Value表,即使经过k次哈希操作得到的位置在比特数组中全为1,通过查找对应的键值,如果发现元数据名称不能与之匹配,则返回检索不成功,时间复杂度也为O(1),在用户可以接受的范围内。
5实验结果
本文通过实验仿真验证饮水安全工程元数据模型的元数据分级索引算法在元数据检索上的性2226ComputerEngineering&Science计算机工程与科学2014,36(11)能,并与目录子树分区算法和哈希算法在检索成功时间和检索失败时间进行对比。第一组实验,测试三种算法检索成功的平均检索时间,其中用户数为10,请求数为1000,在定位NameNode节点的时间上来说,目录子树分区算法能够根据用户请求中的类型定位节点,哈希算法是通过特定的Hash函数,算出用户请求元数据所在的节点。而本文设计的元数据分级索引算法,将市级行政区划和NameNode节点编号存储在一张静态的表中,查找时间与Name-Node节点个数有关,时间复杂度为O(n)。在本文的应用中,至多会有14个NameNode节点,三种算法的定位时间基本相同,在查找NameNode节点的步骤上所用时间可以近似算作相等。定位目录的时间复杂度,三种算法也相同,可认为是O(1)。在最后一步定位元数据文件存储位置上,由于BloomFilter查找成功的时间复杂度是O(1),而目录子树分区算法和哈希算法没有考虑定位物理位置,查找目录下的元数据名称,时间复杂度为O(n),目录下的元数据文件越多,查找速度越慢。第二组实验,测试三种算法检索失败的平均检索时间,其中用户数为10,请求数为1000,仿若是检索不在目录下的文件,BloomFilter将文件名进行Hash运算,可以判定被请求的文件名不在目录中,时间复杂度为O(1)。而另外两种算法,则会遍历目录中的所有文件,直至遍历完,找不到所请求的文件,时间复杂度为O(n)。对比三种算法在饮水安全工程元数据检索上的应用情况,由于元数据分级算法使用了BloomFilter,检索效率比其它两种算法效率高,尤其是检索失败的检索请求。
中图分类号:TP301文献标识码:A文章编号:1009-3044(2010)08-1963-03
DCT-Domain Image Watermarking Algorithm Based On CDMA
WANG Sheng-lei1, YANG Shi-ping1,2
(1.School of Computer Science and Information, Guizhou University, Guiyang 550025, China;2.Mingde College, Guizhou University, Guiyang 550004, China)
Abstract: Putting forward a new image watermarking algorithm which is robust many attacks,this paper applies Arnold places disorderly technique and CDMA spread spectrum technique, equilibrium Gold code is selected as spread spectrum sequence, make use ofWaston sense of vision model certains imbed strength,the imbed position is certained by the adaptting algorithm, a binary image is embedded to some DCT coefficients; taking advantage of correlation property of Gold code,watermark is extracted quickly on the precondition on which host image exists. The analysis of the algorithm and carry out process are given , the attack of Matlab experiments expressed the usefulness of algorithm. Compared with the former watermark algorithm,the safety of watermarking is greatly improved, and it is robust to standard JPEG compression, noising, filtering and cropping attacks.
Key words: digital watermarking; arnold places disorderly technique; waston sense of vision model; gold sequence; code division multiple acces(CDMA); discrete cosine transform(DCT)
数字水印技术是信息隐藏技术的一个分支,其基本思想是在数字媒体中嵌入版权保护信息,以防止对宿主媒体信息进行篡改和未经授权的拷贝和分发[1-2]。从本质上讲,数字水印处理可以看作一种通信过程[3],即在满足不可见性的前提下在水印的嵌入者与接收者之间传递一条信息。因此许多数字通信的理论和方法都可以应用到数字水印系统中[4]。
CDMA无线通信系统具有抗干扰性强、保密性好、截获率低等优点,因此把CDMA技术应用到数字水印系统中是一种安全有效的方法。Ruanaidh[5]等于1998年首先提出采用DS-CDMA技术实现CDMA扩频水印,首先将分组后的水印信息以字符序列的形式扩频到m序列上,然后进行CDMA扩频编码,最后对原始载体图像进行128×128分块DCT变换,将编码以后的水印信息嵌入到DCT系数上。但由于受到m序列地址个数的限制,作者只在DCT域上嵌入了19个字符,嵌入容量较小且安全性低。
由于数字图像的JPEG压缩标准建立在DCT变换的基础上,所以基于JPEG压缩标准模型的水印嵌入算法可以更好地抵抗JPEG压缩处理,本文的水印算法便基于DCT域。本文针对文献[5]中嵌入容量和安全性受限的不足并结合DCT域嵌入水印的优点,提出了一种采用CDMA技术在图像DCT域的中低频分量嵌入水印信息的改进算法。
1 算法
算法分为水印生成、水印嵌入和水印提取三个步骤。
1.1 水印的生成
为增强水印的安全性和抗攻击能力,原始水印在被嵌入之前需经过Arnold置乱和CDMA扩频两个步骤,其生成框图如图1所示。
1)原始二值水印生成
本文所使用的水印图像为40×40的gzu.bmp,为增强水印的抗剪切能力,先利用Arnold置乱算法对原始水印图像进行最佳置乱(置乱次数为3),置乱后的水印图像见图4。然后将原始水印图像信息转换成二进制流,为使其能被9整除在二进制码流后加上2位变为m,长度为N(N=1602)即:
m={mi | mi={0,1},0≤i≤1601}
将m序列以9比特为一组(作为一个字符),共生成178个字符,其产生的字符串可表示为:
s={si | 0≤si≤511,0≤i≤177}
2)生成Gold序列集
采用Gold序列作为扩频序列。通过对两组m序列优选对移项相加得到Gold序列集。选用的两组m序列的生成多项式为1021和1131(八进制)。一共生成了29+1=513个长度为29-1=511的Gold序列集:
pi={pij | pij∈{1,-1},0≤j≤510,0≤i≤512}
3)CDMA编码
为每一个字符si从Gold序列集中找到下标为si的伪随机序列:
ri=psi,0≤i≤177
最后把所有的选出的伪随机序列串联起来就可构成最终的扩频序列:
1.2 水印嵌入
水印嵌入分为利用自适应位置算法确定嵌入位置、利用自适应强度算法确定嵌入强度和DCT域嵌入水印三个步骤。
1)位置自适应算法
本论文为实现嵌入位置的自适应性,提出了以下位置自适应算法:分块DCT变换中低频系数的首位置M1是随着块的均值不同而改变的,对于各8×8块,其计算方法为:先计算该快64个像素和,然后取余16,得到余数加6,即
该算法的安全性和鲁棒性比较高,但是水印提取时需要原始水印的参与,即不可实现盲提取。
本算法采用的载体水印图像为一608×608的Lena.bmp灰度图像。根据每一个图像块的平均亮度大小,利用上式确定第i(1≤i≤5776)块DCT中低频系数的起始位置Mi,所有的起始位置组合起来便形成了起始位置序列{P(k),1≤k≤5776}。
2)强度自适应算法
本论文利用Waston视觉模型对不同的块进行分类,从而可以实现对水印嵌入强度进行自适应调节,在确保水印不可见的同时有效地增强水印的强度。
本文根据Watson模型,综合考虑频率掩蔽、亮度掩蔽和对比度掩蔽3种效应,得出DCT频率分量的最佳嵌入强度序列{Tc(k,i,j),1≤k≤5776,1≤i,j≤8},其中Tc(k,i,j)表示第k块第i行第j列的频率分量最佳嵌入强度。
3)DCT域嵌入算法
本为算法是对图I进行分块DCT操作的,首先对原始图像I分成K个不重叠的8×8子块,即:
其中,M和N分别为原始图像的长和宽;然后分块进行DCT变换,即:
把每一块DCT变换系数按“之“字形进行排序,将其转化为一维描述(,0≤u≤64),将每一块的嵌入强度系数三维矩阵(Tc(k,i,j),1≤k≤5776,0≤i,j
嵌入完成后进行反“之”字形排列,再进行IDCT变换:
所有子快都进行上述操作,就能得到嵌入水印后的图像。水印嵌入框图如图2所示。
1.3 水印的提取
首先根据原始载体图像利用位置与强度确定算法确定每一块图像的嵌入强度和嵌入位置,然后将原始图像和水印化图像分别进行分块(8×8)DCT变换,分别对各块”之”字排列,按照嵌入位置和嵌入强度取其差值,提取出置乱后水印信息的扩频序列:
利用密钥生成正交Gold序列集:
按每组长度为511把生成的扩频水印序列w'进行分组:
把扩频序列的一个分组r'i与正交Gold序列集中的每一个Gold序列分别做相关运算:
取其中互相关系数最大的那个Gold序列的下标记为si,将生成的所有下标串联起来即可生成一个字符串:
把生成的字符串序列转化为二进制,则可得提取到的水印序列:
把水印序列的最后2位去掉,再转化为40×40的矩阵即得到置乱后的水印图像的数据矩阵,最后利用图像置乱算法(置乱次数为27)即可得到提取的水印图像。水印提取框图如图3所示。
1.4 试验结果
仿真实验中,原始图像为320×320的Lena灰度测试图像,二值水印图像为gzu.bmp。图4给出原始图像、水印图像和水印化的载体图像以及未受攻击提取的水印图像。由图像可以看出,单纯从视觉很难判断水印化图像与原始图像的区别,本文算法的未受攻击测试的水印化载体图像与原始图像的PSNR=36.3646,因此,不可见性良好,且从视觉上也可判断其具有良好的不可见性。
主要实验内容包括:JPEG压缩攻击,压缩率最低到15%;不同程度的剪切攻击;分别加入高斯噪声、椒盐噪声和乘积噪声,即噪声攻击,中值滤波攻击,图像直方图化,图像变亮或变暗,增加或降低对比度等攻击。
(a)原始cdma_lena.bmp图像 (b)原始水印图像
(c)置乱后的水印图像 (d)水印化cdma_lena,bmp图像
(e)未受攻击提取的水印图像
图4原始图像
1.5 试验结果分析
从实验给出的测试图像和测试数据可以看出,本文算法对基本的图像处理具有很强的鲁棒性,从实验数据看出,处理后的图像与水印化图像的峰值信噪比有明显的降低,但是提取出的水印质量还是较好,尤其是对直方图均匀化、亮度和对比度的变化以及乘积噪声等攻击具有较强的抗干扰性。由于本文在嵌入水印之前把水印进行了置乱,所以使本论文对剪切处理具有较强的鲁棒性,对于横切处理,虽然提取的水印不是很清晰,但足以证明水印的存在性;零星剪切处理后,已经把人类感兴趣的部分切掉,由于剪切面积不是很大,所以,还能提起出水印,用视觉可以判断出水印的存在;对于中间纵切和中间剪切的图像处理,从攻击图像可以看出,人类感兴趣的重要部分基本完全切掉,只剩下背景部分,这样的图像已经没有应用价值,因此是否能提取出水印已经不是那么重要了,但是,根据本文算法,仍然提取了水印图像,只不过与原始水印
图像相比,PSNR值较小,但用肉眼也能勉强分辨出水印图像的内容。实验证明无论从所给出的图像质量评价指标来看,还是用视觉判断,都成功的实现了水印的提取。与文献[5]相比其鲁棒性有显著提高,特别是针对JPEG压缩和剪切攻击;同时由于本文利用到了自适应算法,使水印系统安全性与文献[5]相比有所提高。
本文算法也有不足之处,就是对图像的旋转测试不鲁棒,因为嵌入位置是固定的,待测图像旋转一定角度后,所有的图像数据都移位了,在检测时应用本文算法找不到所嵌入的起始位置,导致不能正确提取水印。但是利用Hough变换法进行直线提取其边缘,然后矫正其图像的旋转角度,矫正之后就可以提取水印了。
2 总结
本文针对二值(图像)水印,提出了一种在水印结构设计方面使用Gold码的扩频水印方法。为提高水印系统的鲁棒性,对原始水印图像在嵌入前进行了Arnold置乱处理;为增强水印系统的安全性,水印嵌入时使用了自适应嵌入,在得不到原始载体图像的情况下绝对得不到任何水印信息。与使用m序列或正交序列对作为扩频序列的方法相比,本文所提方法的优点在于,利用了Gold码地址数多、抗干扰力强的特点,使得水印系统在抵抗各种噪声、滤波和压缩等攻击方面具有更好的鲁棒性。
当然,对于水印信息的检测和恢复,本文所提方法需要原始载体图像参与,这可能会给实际应用带来不便,但可以通过进一步改进算法来实现盲提取。另外,本文提出的方案仍有其他需要研究之处,比如水印结构设计方面的扩频码长度、原始水印图像在嵌入前的置乱次数、扩频码分组策略等。
参考文献:
[1] 黄继武,谭铁牛.图像隐形水印综述[J].自动化学报,2000,26(5):645-655.
[2] Huang Jiwu,Shi Yun Q.An adaptive image watermarking scheme based on visu-al masking[J].IEEE Electronics Letters,1998,34(8):748-750.
[中图分类号]G40-057 [文献标识码]A [论文编号]1009-8097(2013)03-0091-04 [DOI]10.3969/j.issn.1009-8097.2013.03.018
一.数字版权保护技术现状
随着互联网的发展,越来越多的教育资源开始以多媒体数据的形式表达,例如用数码相机采集教学素材、用网上点播看教学视频、用MP4播放器听英语等。这些教学活动所涉及的多媒体数据蕴含了大量价值不菲的信息。数字化技术精确、大规模的复制功能和Internet的全球传播能力都极大地冲击着现有版权制度,数字教育资源的版权管理和保护也是当前的一个难题。
早在上个世纪90年代,人们就意识到在网络上进行数字作品分发存在运用技术手段进行知识产权保护的必要。在学术研究领域,Dartmouth大学的John S.Erickson在1997年的博士论文中提出了FIRM(一种互操作权限管理框架),它也是斯坦福数字图书馆项目开发的基础设施原型Infobus的协议之一,用来将因特网协议扩展为更高层的信息管理协议。GeorgeMason大学信息技术学院的Jaehong Park在2003年的博士论文中提出了一种统一的使用控制框架,从理论上探讨了各种权限管理方式的统一建模问题。中国科学院计算技术研究所的谭建龙对Interent内容的安全分发与版权保护问题进行了较为深入的研究,并做了一定的系统设计和实现。香港大学、西安交通大学等也在数字版权保护技术领域做了不少研究工作。
第一代数字版权管理(DRM)技术主要以安全和加密技术为主,它对数字作品进行加密并以对版权分配进行控制的形式限制对内容的使用,防止非授权拷贝。虽然成熟的密码学可以解决安全传递和访问控制,但是一旦解密后,数字作品便可以随意地被拷贝,这将给数字作品制造商带来巨大的损失,从而制约着网络数字媒体应用的不断深入。第二代数字版权管理技术变得更加丰富,包括对知识产权拥有者的有形和无形资产的全面管理,覆盖了版权描述、身份鉴别、内容交易、内容保护、版权使用的监控和跟踪等各个方面。
网上传播的多媒体教学资源同样存在大量的盗版和侵权问题,如何保护多媒体教学资源的版权已成为近年来教育界、法律界及计算机应用研究中面临的热点和难点问题。现代教育技术的应用现实呼唤新的技术来保证现代教育资源的版权,从而保护广大教师的劳动成果,进而保证现代教育与学术的良好发展。
二.数字水印的分类
数字水印是指嵌入在数字信息中有关拥有者或授权者并具有鉴别性但不影响该数字信息使用价值的数字信息(如文字、图像、序列数等)。由于具有透明性,稳健性和安全性的特点,数字水印技术在数字版权保护领域应用广泛。数字水印算法能识别出被嵌入到所保护对象内的所有者的相关信息(如注册的用户号码、产品标志或有意义的文字等)并能在需要的时候将其提取出来,用来判别对象是否受到攻击,且能够监视被保护数据的传播以及非法拷贝控制等。现有的基于数字水印的数字产品版权保护基本上是面向数字资源本身的,如数字媒体内容完整性认定、数字媒体篡改及篡改位置的认定等。J.cox曾在他的论文中谈到,数字水印由于其良好的应用性能必将继续为企业界所使用,特别是在数字版权保护领域。
数字水印技术近年来发展迅速,到目前已有了大量不同的数字水印方法,按不同的角度,数字水印可作如下分类:
1.按特性划分
数字水印按照特性可以分为鲁棒数字水印和脆弱数字水印两大类。鲁棒数字水印主要用于在数字作品中标识著作权信息,如作者、作品序号等,它要求嵌入的水印能够经受各种常用的编辑处理;脆弱数字水印主要用于完整性保护,与鲁棒水印的要求相反,脆弱水印必须对信号的改动很敏感,人们根据脆弱水印的状态就可以判断数据是否被篡改过。
2.按水印所附载的媒体划分
按水印所附载的媒体,我们可以将数字水印划分为图像水印、音频水印、视频水印、文本水印以及用于三维网格模型的网格水印等。随着数字技术的发展,会有更多种类的数字媒体出现,同时也会产生相应的水印技术。
3.按检测过程划分
按水印的检测过程可以将数字水印划分为明文水印和盲水印。明文水印在检测过程中需要原始数据,而盲水印的检测只需要密钥,不需要原始数据。一般来说,明文水印的鲁棒性比较强,但其应用受到存储成本的限制。目前学术界研究的数字水印大多数是盲水印。
4.按内容划分
按数字水印的内容可以将水印划分为有意义水印和无意义水印。有意义水印是指水印本身也是某个数字图像(如商标图像)或数字音频片段的编码;无意义水印则只对应于一个序列号。有意义水印的优势在于,如果由于受到攻击或其他原因致使解码后的水印破损,人们仍然可以通过视觉观察确认是否有水印。但对于无意义水印来说,如果解码后的水印序列有若干码元错误,则只能通过统计决策来确定信号中是否含有水印。
5.按水印隐藏的位置划分
按数字水印的隐藏位置,我们可以将其划分为时(空)域数字水印、频域数字水印、时/频域数字水印和时间/尺度域数字水印。时(空)域数字水印是直接在信号空间上叠加水印信息,而频域数字水印、时/频域数字水印和时间/尺度域数字水印则分别是在DCT变换域、时/频变换域和小波变换域上隐藏水印。随着数字水印技术的发展,各种水印算法层出不穷,水印的隐藏位置也不再局限于上述四种。应该说,只要构成一种信号变换,就有可能在其变换空间上隐藏水印。
三.基于数字水印的教育资源版权保护分析
教育资源中存在大量的Word文档,PPT课件,电子书,教学音视频,教学游戏等数字产品,针对不同类型的资源使用不同的水印保护技术也是非常必要的。
1.文本教育资源
文本数字水印指在文本中加入水印,最常见的载体文件有TXT、DOC、PDF等格式。据统计,80%以上的信息是通过文字承载与传播的。在人类的所有传播媒介中,文字的地位最重要。无论传播技术和媒体形式如何变迁,文字的作用在传承人类文明、推动社会进步的过程中都是处于核心地位的。在互联网环境下保护各种电子书籍、合同、证件、契约等文本数字产品的版权和信息安全的迫切性和重要性更为突出,与此同时,在教育资源中,存在大量的Word文档,PPT课件,电子书等文本数字产品,这些文本资源版权的迫切性及重要性更为突出,因此,进行文本数字水印的教育资源版权技术研究也是非常必要的。
2.图像和视频教育资源
视频水印算法的研究几乎与图像水印算法同步,1996年FrankHartung等在SPIE会议上提出的视频序列直接扩频的水印算法是视频水印算法的早期代表工作,一般简称F&G算法。同年,在英国剑桥大学召开了首届国际信息隐藏会议(IHW),在2002年首次专门召开数字水印的会议(IWDW),以后每年定期举行。此后发表的有关数字水印的文章呈爆发趋势。2001年,Fridrich提出了无损认证的思想,并实现了两种脆弱的无损水印算法,这是水印认证技术特殊应用的早期代表。此后,De Vleeschouwe、Ni等人发展了半脆弱的无损认证水印。在视频水印算法研究领域,早期的算法均建立在扩频基础之上,除F&G算法外,还有如Ton Kalker的JAWS算法、Cox的扩频算法以及Mobasseri的CDMA比特面算法等典型算法。
3.音频教育资源
数字音频水印是将具有特定意义的水印信息嵌入到原始音频信号中,嵌入之后对音频信号的质量没有明显的影响。人的视觉和听觉特性差别较大,与图像水印相比,音频水印除了具有鲁棒性、不可检测性、透明性、安全性和自恢复性等特点外,还有自己的一些特点。早在1954年,美国Muzac公司申请了一项名为“Identification of sound and Like signals”的专利,将标识水印信息不可感知地嵌入到音乐中,从而证明所有权的方法。这是迄今为止所知道的最早的电子水印技术。2000年,钮心忻等提出了一种音频水印算法,利用小波变换对原始语音信号进行分解,保留小波分解的近似分量,并对小波分解的近似分量进行相关处理,以便嵌入水印。王让定等人提出了一种方法,在音频信息隐藏技术的基础上,可以实现语音保密通信,并且可以有效抵抗去同步攻击。陈荔聪等人提出一种基于奇偶量化的音频水印算法,算法在音频信号的时间域上检索满足条件的同步信号区,当含水印的音频信号受到裁剪攻击,可以取出正确的水印。目前,大多数的研究工作都是围绕图像和视频水印做的,对音频水印算法研究的文章和成果相对较少。
四.教育资源版权保护方案
1.教育资源版权保护整体方案
为实现版权保护,在使用数字教育资源前要对其进行处理,即将数字教育资源版权信息及作品信息进行封装,封装时针对不同类型的资源采用不同的水印封装技术。与此同时,权利描述机构根据数字教育资源的认证信息形成权利信息。当有用户需要使用文化遗产资源时,先由认定跟踪机构对其进行交互认定,顺利通过认定后,机构根据用户的申请形成用户申请权利信息。使用控制机构根据数字教育资源的固有权利信息与用户的申请权利信息做出使用权利决策,并将该权利赋予用户,使其在该权利范围内使用数字内容。在用户使用数字内容的整个过程中,认定跟踪机构都对其进行动态跟踪和行为认证,一旦发现有越权使用的情况认定跟踪机构就会及时地对该用户采取相应措施。用户使用完数字教育资源后需进一步对其进行行为认证,以确保数字版权未遭到破坏。图1是数字教育资源的数字权利认定和跟踪关键技术研究框架,包括数字媒体内容包装、数字权利动态描述、数字权利使用控制以及数字权利认定和动态跟踪等。
2.教育资源的水印封装
水印封装包括数字作品统一格式、水印信息的创建、数字作品内容摘要的提取、水印嵌入以及内容的安全加密等过程模块。其研究框架如图2:
水印封装分为7个基本步骤,具体为:
(1)从数字教育资源库中取出将要处理的数字作品,将其转换为规定的符合格式文档。
(2)从复合格栅文档中提取版权及作品的相关信息,包括作品ID以及作品创作者描述信息、作品描述信息等。
(3)提取统一格式文档的内容摘要,用于文档的完整性验证,且作为水印封装的部分水印信息。
(4)创建固有权利规则,指定用户可对该文档采取的操作,比如浏览、复制、编辑等。
(5)将版权信息、作品信息、固有权利规则和内容摘要进行编码,生成水印信息。
(6)在密钥的控制下,将生成的水印信息封装到数字作品中。
(7)在密钥Seed控制下生成密钥,对封装后的数字作品进行加密操作,形成最终用于的数字产品。将处理后的数字作品放入产品信息库,将水印封装过程中所涉及的密钥存入密钥信息库。
3.教育资源版权保护水印方案
多媒体教学课件包含着文档、图像(包括图形)、音频、视频(包括动画)等数字信息内容,而与这些内容形式的数字资源相对应,分别有文档水印、图像水印、音频水印、视频水印等。最典型的三分屏课件包括三个部分:教师讲课的音视频、PowerPoint(当然也可能是其他电子文档)和课程纲要,则其数字水印版权保护系统应该是包含语音,文本,图像,视频水印的综合应用系统,如图3。
中图分类号:TP309
1 数字水印技术研究的意义
由于科学技术的发展,很多的数字化产品易于加工,非法的复制和拷贝也比较容易,这样严重损坏了数字产品的完整性以及数字产品作者的版权。为了解决这一问题,因而提出了数字水印技术。
数字水印技术,从1993年Caronni正式提出数字水印到现在,无论国内还是国外对数字水印的研究都引起了人们的关注。在国外方面,由于有大公司的介入和美国军方及财政部的支持,虽然在数字水印方面的研究刚起步不久,但该技术研究的发展速度非常快。1998年以来,《IEEE图像处理》、《IEEE会报》、《IEEE通信选题》、《IEEE消费电子学》等许多国际重要期刊都组织了数字水印的技术专刊或专题新闻报道,SPIE和IEEE的一些重要国际会议也开辟了相关的专题。IBM公司、日立公司、NEC公司、Pioneer电子公司和Sony公司等五家公司还宣布联合研究基于信息隐藏的电子水印。国内方面,我国的数字水印技术,也已经取得了一定的研究成果,而且从学术领域的研究成果来看,我国的研究与世界水平相差的并不远,并且有自己的独特研究思路。
数字水印的主要用途可以分为以下几类:(1)版权标识水印。数字水印将各种信息放在各种需要保护的数字产品中,即使经过噪声干扰、滤波、剪切、压缩、旋转等攻击,水印仍可以继续存在。例如Adobe公司在其著名的PS软件Corel Draw图像处理软件中集成了Digimarc公司的数字水印插件。(2)篡改提示水印。检测数字产品是否被修改、伪造等的处理的过程。(3)隐蔽标识水印。在一些数字产品中,可以将数字水印嵌入作一些隐式注释。(4)票据防伪水印。随着现代各种先进输出设备的发展,使得各种票据的伪造变得更加容易,数字水印技术可以增加伪造的难度。因此,研究数字技术非常有必要性。
2 基于DCT数字图像水印技术的研究
2.1 数字水印的概念
数字水印技术是指用信号处理的方法在多媒体数据中嵌入某些能证明版权归属或跟踪侵权行为的隐蔽的信息,这些信息通常是不可见的,不容易被人的知觉系统觉察或注意到,这些隐藏在多媒体内容中的信息只有通过专用的监测器或阅读器才能提取。通过这些隐藏在多媒体内容中的信息,可以达到确认内容创建者,购买者或判断内容是否真实完整的目的。水印系统所隐藏的信息总是与被保护的数字对象或它的所有者有关。
2.2 DCT数字图像水印的基本理论
其中图像二维DCT变换(M取8或16)有许多优点:
图像信号经过变换后,变换系数几乎不相关,经过反变换重构图像信道误差和量化误差将像随机噪声一样分散到块中的各个像素中去,不会造成误差累积,并且变换能将数据块中的能量压缩到为数不多的部分低频系数中去(即DCT矩阵的左上角)。对于给定图像f(m,n)存在两种DCT变换方法:一种是把图像f(m,n)看成一个二维矩阵直接对其进行DCT变换,然后嵌入水印,Cox[3]采用此种方法;另一种方法是与JPEG压缩标准相统一,先把图像分成8*8的不同小块,再分别对每一块进行DCT变换,进而嵌入水印,本文采用后一种方法嵌入水印。
一般数字水印应具有如下的特征:无论经过怎样复杂的操作处理,通过水印算法仍能检测到数字水印作品中的水印能力。即所谓的稳健性;通过水印算法,嵌入水印后不能最终导致图像的质量在视觉上发生明显变化,即视觉的不可感知性;通过数字水印算法能够抵御非授权人的攻击,同时检测可以检测到水印的概率,具有较高的安全性及有效性。
3 基于DCT的数字图像水印算法系统的设计与实现
3.1 MATLAB软件的介绍
MATLAB是目前最强大的编程工具之一,本文将利用MATLAB7.0软件进行基于DCT的数字水印算法的系统的设计和实现。
MATLAB语言简洁紧凑,库函数丰富,程序书写形式自由,运算符丰富,使用方便灵活。MATLAB具有结构化的面向对象编程的特性,可移植性好,且具有较强的图形编辑界面和功能强大的工具箱。同时,MATLAB中的源程序具有开放性,可以通过对其的修改使其变成新的程序。不足之处是,MATLAB的程序执行速度较慢。利用MATLAB研究数字水印技术集成了DCT等函数,方便了研究人员编写源程序,易实现。使用了MATLAB中很多的工具箱。
3.2 基于DCT的数字图像水印算法系统的设计与实现
3.2.1 需求分析
离散余弦变换(Discrete Cosine Transform)简称DCT,基于DCT域的数字水印算法,可以分为两大类,一类是直接对整幅图像进行DCT整体计算,然后嵌入水印。另一类是先将整幅图像分成块,对每一块分别进行DCT计算,最后再嵌入水印。由于分块DCT计算速度比整体DCT计算速度快得多,因此目前DCT域的水印方法大多数是采用的分块DCT方法。
基于DCT的数字图像水印算法系统的设计与实现,可以提供用户一个良好的交互手段,用户可以利用本系统进行水印的嵌入、提取、攻击等,本系统的可交互的,可视化的特点为用户研究基于DCT的数字图像水印算法提供了方便。
3.2.2 系统功能模块设计
(1)水印生成。通常是通过伪随机数发生器或混沌系统来产生水印信号,通常需要对水印进行预处理来适应水印嵌入算法。
(2)水印嵌入。水印嵌入的准则常用的有三种,分别为加法准则、乘法准则、加法乘法混合准则,混合准则近年来引起了人们的广泛关注。
(3)水印提取。指水印被提取出来的过程。
(4)水印检测。水印检测是指判断数字产品中是否存在水印的过程。
3.2.3 系统实现
一个完整水印系统的设计通常包括水印的生成、嵌入、提取和检测四个部分。
通过选取实验图片,点击导入图片,然后进行水印的嵌入,再对嵌入水印的图片进行高斯噪声、滤波、剪切、旋转等攻击实验后,可以继续提取水印,进行水印信号的检测。
(1)嵌入水印的过程。论文采用的是分块DCT算法,水印嵌入步骤如下:
1)将灰度宿主图像分成互不覆盖的8×8的块,然后对每一块都进行DCT变换,得到与宿主图像相同尺寸的DCT域;
2)我们用密钥生成长度为NW的Gaussian白噪声作为水印信号:W~N(0,1);
3)将每个8×8的DCT系数矩阵从每一块的中频段取出((64×Nw)/(M×N))个系数CK(i,j),k=1,2,…Bnum;
4)根据公式W′=W(1+alfa*mark)嵌入水印,其中alfa为尺度因子,mark为水印信息,W为原图象的分块DCT系数。
5)用得到的新的DCT系数对原来位置的DCT系数进行置换。
6)对新的DCT系数矩阵进行DCT反变换,得到了嵌入水印信号后的图像。
4 结束语
本论文是在应用了MATLAB7.0软件,设计和实现了完整的数字图像水印处理系统,包括水印的嵌入、提取与验证过程。所提出的方案均在该系统中进行了验证。
数字水印技术的发展时间虽然不长,但其在版权保护、内容的完整性以及认证方面都做出了一定的贡献。未来,数字水印在知识产权的保护、内容认证等方面会有一个更好的应用前景。我们应该抓住信息时代对于数字版权保护的迫切需求,开发出自己的水印产品。
参考文献:
[1]孙锐,孙洪,姚天任.多媒体水印技术的研究进展与应用[J].系统工程与电子技术,2003,25(6):772-776.
[2]王丙锡,陈琦,邓峰森.数字水印技术[M].西安:西安电子科技大学出版社,2003.
[3]余成波,杨菁,杨如民,周登义.数字信号处理及MATLAB实现[M].北京:清华大学出版社,2005.
[4]王家文,李仰军.MATLAB7.0图形图像处理[M].北京:国防工业出版社,2006.
[5]张问银,梁永全.基于DCT的一种数字图像水印策略[J].山东:山东科技大学学报,2002.
[6]肖力.一种基于DCT域的数字水印的实现[J].鄂州大学学报,2005.
[7]Rafael C.Gonzalez,Richad E.Woods.阮秋琦,阮宇智译.数字图像处理[M].北京:电子工业出版社,2003.
[8]耿永军,朱雪芹.基于离散余弦变换的数字水印算法[J].郑州大学学报,2005.
中图分类号:TP311.1文献标识码:A文章编号:1009-3044(2011)14-3440-02
Digital Watermark Image's Manufacture Technology Research Based on
DONG Hai-yan
(Heyuan Polytechnic Electronic and Informational Engineering College, Heyuan 517000, China)
Abstract: At first, I introduce the concept and basic principle of digital watermark briefly, and then introduce the shortcomings of traditional digital watermark image technology ,so that leading to digital watermark image technology based on . I’ll show the digital watermark images technology based on by taking a small website as an example. I analyze the realization process and precautions during building the website, and provide the key parameters and the source code, so as to providing technical references for relevant technical personals.
Key words: digital watermark; digital watermark image; ; source code
1 数字水印图片的概念、基本原理及存在的意义
数字水印(Digital Watermark)技术是通过一定的算法将一些标志性信息直接嵌入到多媒体内容当中,但不影响原内容的价值和使用,并且不能被人的知觉系统觉察或注意到,只有通过专用的检测器或阅读器才能提取。其中的水印信息可以是作者的序列号、公司标志、有特殊意义的文本等,可用来识别文件、图像或音乐制品的来源、版本、原作者、拥有者、发行人、合法使用人对数字产品的拥有权。与加密技术不同,数字水印技术并不能阻止盗版活动的发生,但它可以判别对象是否受到保护,监视被保护数据的传播、真伪鉴别和非法拷贝、解决版权纠纷并为法庭提供证据。嵌入数字多媒体作品中的数字水印须具有以下特性:不可见性或隐蔽性? 不易被察觉,不会引起原来数字作品明显的图像质量下降,即几乎看不到数字水印的存在。
数字水印图片就是利用相关软件和技术在图片上添加数字水印,从而达到维护图片所有者的合法权益。以计算机和网络技术为核心的互联网时代,网站成为个人、企业、行政机构的新名片,尤其是企业网站在树立企业形象、宣传企业文化、提高企业知名度、推广和销售企业产品过程中起着越来越重要的作用。网站中的图片,特别是大量拍摄/制作精美的产品图片对消费者具有很强的吸引力和说服力,特别容易被盗用,造成不必要的损失,因此,有必要在图片中植入标识符以达到版权声明的目的,这里介绍数字水印技术在图片中的应用。
2 传统数字水印图片制作技术存在的问题
以前为图片添加水印是用Photoshop、Fireworks或者专门的图片水印制作软件在图片上加入标识符,添加水印之后的图片放大缩小等操作不影响水印效果,但是这种方法也存在以下突出的缺点:
1) 需要为大量的图片添加水印时,将耗费大量的时间和精力;
2) 添加水印之后的图片不能需要修改水印效果或原图片。
3 基于的数字水印图片制作技术简介
基于的数字水印图片制作技术的突出优点是水印符号与原图分离。编程技术人员通过编写程序实现网站中的图片添加了水印效果,这种水印图片是原图片和水印符号合成的结果,但是水印图片并不破坏原始图片和水印符号,当需要修改水印符号或原图片的时候只需修改相应的对象即可。
4 编程实现基于的数字水印图片
本项目案例采用Visual Studio2008和SQL Server2005开发,不同的版本程序基本不变。
1) 新建一个网站(WaterPhotos)
操作步骤:选择“文件”菜单“新建” “网站”命令,在弹出的“新建网站”窗体中设置站点名称(WaterPhotos)和其它属性。
2) 图片素材准备
在站点文件夹下新建名为Images的图片文件夹,在Images文件夹下准备水印图片watermark.jpg和默认图片default.jpg,同时新建子文件夹BookCovers,并在BookCovers文件夹下放入相应的图片素材。
3) 在站点里新建名为WaterHandler.ashx的一般处理程序并编写相应程序
WaterHandler文件中的代码如下:
using System;
using System.Web;
using System.Drawing;//导入绘图类命名空间
using System.IO;//导入输入输出类命名空间
public class WaterHandler : IHttpHandler {
private const string Coversaddr = "Images/BookCovers/";
private const string Watermarkaddr = "Images/watermark.jpg";
private const string DefaultImage = "Images/default.jpg";
public void ProcessRequest (HttpContext context) {
string path = context.Request.MapPath(Coversaddr + context.Request.Params["ISBN"].ToString() + ".jpg");
System.Drawing.Image image;
if (File.Exists(path))
{
image = Image.FromFile(path);
Image watermark = Image.FromFile(context.Request.MapPath(Watermarkaddr));
Graphics g = Graphics.FromImage(image);
g.DrawImage(watermark, new Rectangle(image.Width - watermark.Width, image.Height - watermark.Height, watermark.Width, watermark.Height), 0, 0, watermark.Width, watermark.Height, GraphicsUnit.Pixel);
g.Dispose();
watermark.Dispose();
}
else {image = Image.FromFile(context.Request.MapPath(DefaultImage)); }
context.Response.ContentType = "image/jpeg";
image.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
image.Dispose();
context.Response.End();
}
public bool IsReusable {
get { return false;}
}}
4) 在Default.aspx页面中插入Image控件,并设置其属性
对Default.aspx页面进行测试,其效果如图1所示。
5) 升级为图片添加水印程序
上面的程序已经实现了为图片添加水印的效果,但也存在一个缺点:每张需要添加水印效果的图片都必须在其src属性中调用WaterHandler.ashx处理程序。这无疑加大了程序员的工作量,降低了工作效率。下面介绍为图片批量添加水印效果程序设计。
①新建App_Code程序文件夹,在该文件夹下新建名为CoverHandler的类文件。CoverHandler.cs文件下的代码与WaterHandler.ashx文件的代码基本相同,只需将三个私有常量声明语句替换成如下代码即可。
private const string WATERMARK_URL = "~/Images/watermark.jpg";//水印图片
private const string DEFAULTIMAGE_URL = "~/Images/default.jpg"; //默认图片
public CoverHandler(){}
②新建web.config配置文件,在web.config文件中的与之间写入如下代码:
至此,所有从Images/BookCovers文件夹下调用的jpg格式的图片都会自动调用CoverHandler程序实现自动添加水印功能。
5 注意事项
1) 程序的web.config配置文件中的debug默认属性是false,调试时将其设置成true。
2) WaterHandler.ashx是一般处理文件,新建之后必须导入相应的命名空间,否则程序报错。
3) App_Code不是普通文件夹,是程序文件夹,新建CoverHandler.cs类文件之后,也要导入相应命名空间。
4) 因为篇幅限制,本论文仅列出了关键部分代码,简单重复的代码没有列出。
参考文献:
[1] 北京阿博泰克北大青鸟信息技术有限公司.深入.NET平台和C#编程[M].北京:科学技术文献出版社,2008.
[2] 北京阿博泰克北大青鸟信息技术有限公司.使用技术开发网上书店[M].北京:科学技术文献出版社,2008.
[3] 微软公司.数据库访问技术[M].北京:高等教育出版社,2007.
[4] Karli Watson.Christian Nagel, Beginning Visual C# 2005[M].北京:清华大学出版社,2006.
[5] 奚江华2.0开发详解[M].北京:电子工业出版社,2006.
[6] 常永英程序设计教程(C#版)[M].北京:机械工业出版社,2009.
[7] 尚俊杰程序设计案例教程[M].北京:北方交通大学出版社,2005.
[8] 郭胜,秦岸,马丽.C#.NET程序设计教程[M].北京:清华大学出版社,2002.
原型技术是过程建模新技术,它可在运行中被检查、测试、修改,直到它的性能达到用户需求为止,因而这个工作模型很快就能转换成原样的目标系统。如图所示,try{showAd(3,0,1);}catch(ex){}基于指令分布的软件水印原型系统采用中央控制架构,由Core Manager组件统一控制整个系统的运行,系统分成四个部分:
第一部分用于和用户进行交互,采集用户的需求信息,并且进行存储。。这个部分由User Interface Manager组件在CoreManager控制下进行管理。
第二部分是文件处理部分,用于根据用户的要求从硬盘读取文件,并且进行格式检查,反汇编等操作,然后存储相应结果。这部分由File Manager组件组成,FileManager组件在Core Manager控制和协调下进行管理,包括硬盘文件和File Manager组件。
第三部分是CoreManager根据用户的要求和各种保护插件的要求,选择适合的保护插件进行对目标软件的代码的修改的过程。此部分主要由ILProcess组件组成,由CoreManager根据用户要求调用ILProcess组件中相应的处理函数。
第四部分是代码本的管理,由类Codebook组成,这部分相对独立于前面三个部分,由Core Manager根据用户要求通过类Codebook调用代码本中选取的指令对目标程序进行嵌入/提取水印等。由于水印信息是由代码本中的指令表示的,所以此部分必须相对独立,User Interface Manager组件跟类Codebook没有直接联系。。
系统总体构架图
其中,图中的中空箭头表示数据流,实线箭头表示控制流。六边型表示最高级的控制组件,棱台表示各个部分的控制组件,圆柱表示存储信息的组件,笑脸表示用户。
一、用户要求管理模块的设计
用户需求管理模块负责与用户进行交互,把用户的要求(如:要进行保护的目标软件的路径,需要嵌入的水印信息,用户的密钥等)保存在一个类中。对于本部分,可以在Visual Studio.net平台下实现一个图形用户接口(Graph User Interface)。用户的要求通过User Interface Manager存储在UserRequirement类中,而Core Manager根据UserRequirement类中存储的信息来作出相应的决定(如:调用什么插件,做什么样的操作,是嵌入水印还是提取水印等)。
二、文件控制分析模块设计
通过核心组件CoreManger控制文件控制分析模块完成文件控制以及反汇编功能。.NET平台的程序虽然是合法的PE文件,但是由于metadata的存在使得可执行文件的结构十分复杂,对于小型的程序,metadata可以占据整个程序文件大小的80%,所以必须有一个组件负责文件的物理结构和逻辑结构间的转换,由File Manager负责该工作。
三、代码本类codebook设计
在算法中,代码本V是保密的,V的选取决定了此算法抗攻击的类型与强健性。Stern等人提出的基于指令分布的软件水印算法中选取使用频率高的n条指令构成代码本,只考虑了算法本身,没有考虑具体实现时的限制因素。在实际算法中,根据MSIL指令集特点,被选取的指令组必须同时满足如下四个条件:
1.只在基本指令和对象操作指令中选取V的成员。
2.选取那些能够经受各种常用代码攻击的指令组作为V中的成员。
3.选取编译器输出的代码中经常出现的指令组。
4.选取的指令组必须相互独立。。
四、目标代码保护插件设计
该模块使用插件对目标代码进行保护,插件架构是本文所做工作的一个特点。由于软件水印技术是软件保护是一个新兴的学术分支,并且当前有很多种软件水印算法(如静态软件水印和动态软件水印等等),各种新技术不断出现,为了保证本系统的可扩展性,所以决定使用插件来进行真正的保护工作。在本原型系统中,首先通过核心组件Core Manager读取UserRequirement对象中的用户要求信息,并根据用户要求信息调用保护插件,在本文中Core Manager通过Plug InWatermarking(SWM)调用实现本文算法的插件SWM,插件SWM根据用户输入的水印信息和代码本类codebook对il临时文件进行嵌入水印。
参考文献:
[1]陈晗,赵轶群,缪亚波.Java字节码的水印嵌入.计算机应用,2003,23(9):96-98
[2]沈海波,洪帆.保护软件知识产权的三利器.计算机与现代化,2005, 4(2):46-49
[3]白雪梅,凌捷.基于神经网络的软件水印实现方案.网络安全技术与应用,2005, 3(1):75-77
1 方案描述
作为能证明著作者版权信息的水印可以是有意义的字符,可以是一串伪随机序列,也可以是比较直观的图像,因为图像信息在没有受到严重损坏的情况下一般还能够辨认出来,故本次设计选用的是含数据量较小,但又不失一般性的二值图像作为水印来处理与隐藏。
1.1 可视密码术对水印的处理
为提高水印的抗攻击能力,用改进的(4,4)可视密码术对水印进行处理。如图1所示,c01~c03用于加密白色像素点,c10~c13用于加密黑色像素点。它们具有以下属性:任何一个单一的子密钥块包括5个黑子像素;c01~c03里的任意两个子密钥块的叠加包括7个黑子像素,任意3个和4个子密钥块的叠加包括8个黑子像素。c10~c13里的任意两个子密钥块的叠加包括7个黑子像素,任意3个子密钥块的叠加包括8个黑子像素,4个子密钥块的叠加包括9个黑子像素。可以看出,当子密钥块数目少于4的时候,黑子像素和白子像素是无法区分的。只有当4个子密钥块都叠加到一起的时候,视觉上才能区分黑(全黑)和白(8/9黑)。
图1 (4,4)可视密码术
1.2 水印的降维处理
假设w是m1×m2的二值图像,它可表示为:
w={w(i,j),0≤i<m1,0≤j<m2} <br="">
式中w(i,j)∈{0,1},为了将二维的二值图像嵌入到一维的数字音频信号中,将其进行降维处理,将二维图像变为一维序列:
v={v(k)=w(i,j),0≤i<m1, <br="">
式中se={s(n),0≤n<(m1m2+3p)l}是与水印嵌入相关的部分(m1,m2是水印图像像素的宽度与高度,p是同步码的周期长度,并且在水印序列中插入了3个同步码序列,l是音频分段的长度),sr={s(n),(m1m2+3p)l≤n<n}是与水印嵌入无关的部分,它在水印嵌入前后保持不变。在嵌入水印时必须要求音频数据的长度n≥(m1m2+3p)l-1。 <br="">
把用于嵌入水印的se分成m1m2+3p个长度为l的数据段,即:
se={se(k)},0≤k<(m1m2+3p)}
式中se(k)表示第k个音频数据段。
1.4 分段dwt变换并嵌入水印
分段完成之后,需要对每一个数据分段se(k)作h层的dwt变换。
(1) 对每一音频数据段se(k)分别作h层离散小波变换。
de=dwt(se)={de(k)=dwt(se(k)),
k=o(j),0≤j<m1m2+3p} <br="">
式中de(k)={de(k)(t),0≤t<l}, <br="" de(k)(t)是第k个音频段se(k)的离散小波变换de(k)中的第t个系数。="">
(2) 在离散小波变换域内确定水印的嵌入区域。
音频段se(k)进行小波变换的结果de(k)中包含一组近似分量d0e(k)和h组细节分量d1e(k),d2e(k),…,dhe(k),即:
de(k)=d0e(k)⊕d1e(k)⊕d2e(k)⊕…⊕dhe(k)
为了提高水印系统的鲁棒性,本方案选取小波系数的近似分量d0e(k)作为水印的嵌入区域,并且每个音频分段的d0e(k)只重复嵌入一个水印比特信息,重复次数为time,重复嵌入的次数最大timemax=l/2h。
(3) 修改小波系数采用量化系数方法。
(4) 小波反变换,重建音频信号
前面的过程完成了水印数据嵌入到小波域,然后需要把每个分段数据修改后的小波结果进行反变换复原成音频信号,并且把分段连在一起构成嵌入水印信息的音频
s′e和与水印嵌入无关的sr组合成完整的目标音频信号。
1.5 水印的检测
水印检测是水印嵌入的逆过程。
(1) 首先把待检测音频数据相应地分成两部分,即嵌入有水印的部分s′e和与嵌入无关的部分sr。
(2) 把s′e进行与嵌入时相同的分段处理,即相同的分段起始位置和相同的分段长度l。然后把每一段分段数据s′e(k)(k表示第k段)进行h层的dwt变换得到小波变换系数d′e(k)={
d′e
(k)(t),0≤t<l}, <br="">
d′e(k)(t)是第k个音频段s′e(k)的离散小波变换d′e(k)中的第t个系数。
(3) 寻找水印嵌入的位置提取水印。在嵌入时本文选择的是在小波系数的近似分量(低频分量)中嵌入的,因此提取时也是通过检测近似分量提取水印比特。设检测出的水印比特为v
转贴于
(4) 根据多少判定的方法决定某个音频段嵌入的水印比特。初始化计数值num=0,依次检测time个v′s(k)(t),如果v′s(k)(t)=1,就将计数值num自增1(即num+ +)。检测完一个数据分段中提取的
v′s
(k)(t),如果num>time/2,那么本段嵌入的二值数据v′s(k)=1;否则如果num
(5) 对一维的水印数据进行升维处理,变换成二维图像数据,并且在界面里显示出来。
2 水印系统实验仿真
以前面给出的(4,4)加密方案构造水印,设要隐藏的明文信息是“吉”字,由仿真程序生成的子密钥图片如图2所示。
图2 (4,4)加密方案生成的子密钥图片
将子密钥key4作为水印嵌入到上述音频信息中,提取出的子密钥图像如图3所示,将提取的子密钥图像与其余3幅子密钥图像进行叠加,最终恢复出的代表版权信息的水印图像如图4所示。
图3 提取的子密钥图像
图4 用提取的子密钥恢复的水印
图5 三幅子密钥叠加结果
图5是提取子密钥图像和其余两幅子密钥图像的叠
加结果,从图5可以看出,单幅子密钥和少于4幅子密钥的[cm)]
DOI:10.16640/ki.37-1222/t.2017.10.174
借助互联网,漫画作品从原来的纸质逐渐演变为网络传播,但各种漫画作品的侵权问题也随之而来。数字零水印技术[1,2]能将漫画作品本身的信息用于水印制造,消除了数字水印算法不可见性和鲁棒性相互矛盾的弊端。而本文更是将高阶奇异值分解(HOSVD)引入漫画零水印技术,利用高阶奇异值分解(HOSVD)先对彩色漫画作品进行降维,之后再筛选各维合适的特征值,用以构造特征水印。该算法能够将彩色漫画作品各维的特征信息都进行充分的利用,打破原来只能对二维灰度图像进行处理的局限性。同时,经过仿真实验,证明该算法在保证有很好的唯一性的前提下,能够抵抗各种类型的攻击,有较强的的鲁棒性。
1 相关理论知识
高阶奇异值分解(High Order Singular Value Decomposition,HOSVD)算法[3,4]是在奇异值分解(SVD)[2,5]理论的基础上发展起来的,以矩阵分解为基础,在张量[4]空间作用,将高维张量分解为张量与多个矩阵的乘积,达到降维效果,因而可以更方便地处理高维数据。而张量意指多维数组,它的元素需要用三个及以上的变量表示。特殊情况,零维张量是标量,一维张量是向量,二维张量是矩阵。
张量高阶奇异值分解就是将张量M分解成一个和它相同大小的核张量与多个矩阵的乘积。本文就是利用该性质,将原始三维图像的的三维沿mode-n展开、降维,提取特征信息进行筛选、使用。
2 零水印算法
2.1 零水印嵌入过程
1)将原始图像(1)转变为灰度图像,做归一化处理,再转换回彩色图像,得到图像(2)。将(2)进行高阶奇异值分解后,做分块、奇异值分解和二值化处理后,得到特征矩阵a,待用。
2)对原始图像(1)进行高阶奇异值分解,做分块、奇异值分解和二值化处理后,得到特征矩阵b,待用。
3)a,b异或处理合成后,再和特殊的水印信息异或处理合并,并进行Arnold置乱处理,得到最终的特征序列。
2.2 零水印提取过程
1)将原始图像(1)转变为灰度图像,做归一化处理,再转换回彩色图像,得到图像(2)。将(2)进行高阶奇异值分解后,做分块、奇异值分解和二值化处理后,得到特征矩阵a,待用。
2)对原始图像(1)进行高阶奇异值分解,做分块、奇异值分解和二值化处理后,得到特征矩阵b,待用。
3)a,b或处理合成后,和特征序列进行异或处理合并,并进行Arnold置乱逆变化处理,得到最终的水印图像。
3 实验结果及分析
原始彩色漫画:Nike.jpg,大小为512×512;水印图像:“????”,大小为32×32,详见图1。
在MATLAB R2014a下进行了仿真实验,从唯一性和鲁棒性两方面,测试算法的性能。当用daxiong.jpg、comic.jpg进行测试时,(BER,NC)分别为(73.34%,0.20),54.39%,0.38),可以证明算法能够有效防止用其他图像进行水印提取,得到正确、可辨认的信息,拥有较好的唯一性。
另外,实验分别用椒盐噪声、高斯噪声、斑点攻击、膨胀攻击、泊松攻击等对算法的鲁棒性进行检测。实验结果如表1,可以证明当载体图像受到不同类型、强度的攻击时,仍能提取出可辨认的水印信息用以版权认证,算法鲁棒性良好。
4 结论
本文围绕将高阶奇异值分解(HOSVD)应用于数字零水印中展开实验,有效利用高阶奇异值分解(HOSVD)降维作用,突破数字零水印算法只在二维灰度图像上操作的局限性,将漫画图像的各维信息都进行合理筛选、利用。同时,最大限度地保证了零水印算法的唯一性和鲁棒性。但是,相较于运用其他技术的零水印算法[2,8],该算法的唯一性和鲁棒性还有待提升。另外,利用高阶奇异值分解(HOSVD)[4],即可将二维数据恢复回三维数据,但是本实验采用的是另外的算法将灰度图像恢复为彩色图像,并且该算法的效率和效果受漫画图像的色彩丰富程度和漫画间色彩差异的影响,因此本实验还存在一些不足之处,尚待改进。
参考文献:
[1]温泉,孙锬锋,王树勋.零水印的概念与应用[J].电子学报, 2003,31(02):214-216.
[2]陈伟琦,李倩.基于DWT-SVD的图像双零水印算法[J].计算机工程与科学.2014,36(10):1991-1996.
[3]胡文锐,谢源,张文生.基于高阶奇异值分解和均方差迭代的图像去噪[J].中国图象图形学报,2014:1569-1563.
[4]周俊秀,裘国永,刘侍刚,梁新刚.迭代张量高阶奇异值分解的图像恢复方法[J].计算机应用研究.2013,30(11):3488-3491.
[5]邱丽红,张丽艳,李笑,战善杰.基于DCT-SVD的抗几何攻击图像水印算法[J].大连交通大学学报,2014,35(06):93-96.
[6]田云凯,贾传荧,王庆武.基于Arnold变换的图像置乱及其恢复[J].大连海事大学学报,2006,32(04):107-109.
[7]杨榆.信息隐藏与数字水印实验教程[M].国防工业出版社,2010.