鲁棒的自然语言哈希域扩频水印编码算法制造技术

技术编号:6874224 阅读:241 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种鲁棒的自然语言哈希域扩频水印编码算法,首先对目标文章中所有载体单元的同义集合分为A子集和B子集,然后对所有载体单元的代表的哈希值进行模运算,将文章中的载体单元进行分组,最后根据水印比特通过改写载体单元使属于A子集的数目与水印比特对应,以此在目标文章嵌入水印,生成含密文件。本发明专利技术的优点包括:1)鲁棒性好:由于采用扩频技术把水印比特扩展到频率上,攻击者在不知道密钥的情况下如果随机修改载体难以预测分组中载体单元的文本属于A子集个数变化的情况;2)隐蔽性好:嵌入n比特水印时,平均修改0.5n个载体单元,最多修改不超过n个载体单元。由于改写出错的概率一定,所以改写量越小,水印的隐蔽性就越好;3)与具体改写技术无关;4)编码算法简单,算法效率高。

【技术实现步骤摘要】

本专利技术涉及自然语言信息隐藏领域,特别涉及一种自然语言水印的扩频编码算法。
技术介绍
随着计算机网络的发展,数字视频、数字音频、电子文档等数字产品都可以通过网络迅速传播到全球各地。由于这些数字产品制作成本低、可以无限复制、在网络上传播的速度非常快,导致盗版和攻击数字产品变得轻而易举。鉴于此,近几年数字产品的安全防护以及版权保护越来越受到商业界和学术界的重视。目前针对数字产品的保护方式主要包括加密方式和信息隐藏方式,传统的加密方式可以有效的保护数据传输过程中的信息安全,但是数据一旦被所有者接收并解密,就无法继续起到保护作用,而且也不能防范所有者对解密后的数据进行复制和传播。针对传统加密方式的不足,很多研究者开始关注一种新的安全技术即信息隐藏技术。所谓信息隐藏是将秘密信息隐藏在非机密的载体内容之中,载体形式可以是视频、音频、图像或文本文档等。在所有的载体形式中,文本文档是人们进行信息交换的主要方式之一,尤其军事部门,政府机关,国家安全部门,商业机构的机密文件都需要得到有效保护。自然语言信息隐藏是指通过对文本内容进行语义的等价替换或者语态转换,从而把秘密信息嵌入到载体文本中。按照应用领域来分,信息隐藏研究主要分为隐写术 (Steganography)和数字水印(DigitaL Watermarking)。隐写术主要研究如何将秘密信息隐藏在数字产品中而不被觉察,从而实现隐藏通信。数字水印指将秘密信息嵌入待保护的载体中,用来证明数字产品的版权、信息完整性、以及使用者的合法性等。这里我们讨论的是数字水印技术。很多研究者为了更好地进行水印信息的嵌入和提取,提出了很多编码算法,这些算法各有特点,有的过程简单,容易理解;有的牺牲嵌入容量,但是可以减少对载体的改变;还有的利用扩频分组的方法,期望提高水印的鲁棒性。通过对国内外自然语言水印技术的总结分析,我们发现由于现有的研究没能找到有效的变换域(这一点是目前国际上公认的难题),因此攻击后的误码率极高(误码率高表示提取出的水印比特出错的比例较高)。本专利技术中,我们找到了一个可行的变换——哈希域,在此基础上提出了一个扩频编码算法。理论和实验证明,我们的算法对载体的改动较少,而鲁棒性比已知的空域算法都要高。
技术实现思路
本专利技术所要解决的技术问题是提供一种鲁棒的自然语言哈希域扩频水印编码算法,通过哈希域进行扩频,来解决空域算法鲁棒性差的问题。本专利技术提供了一种鲁棒的自然语言哈希域扩频水印编码算法,首先提取目标文章中的载体单元,获得每个载体单元的同义集合,然后根据密钥将每一个同义集合分为A子集和B子集,然后根据密钥在每个同义集合中选择一个可行变换作为代表,再根据密钥对每一个代表求哈希,然后对该哈希值进行模运算,根据模运算的余数将文章中的载体单元进行分组,分组的个数不小于水印的比特数,最后分别验证每一分组中载体单元属于A子集的个数,通过改写载体单元调整分组中载体单元属于A子集的个数来嵌入水印比特,生成含密文件。本专利技术提供了一种鲁棒的自然语言哈希域扩频水印编码算法,包括以下步骤(1)在目标文章中提取全部的载体单元;(2)对每一个载体单元获得其同义集合,每一个载体单元及其同义集合构成同义集合,载体单元集合中的每一个元素为可行变换;(3)根据密钥在每一个载体单元及其同义集合构成同义集合中选择一个可行变换作为代表,所有的代表形成代表集合;(4)根据密钥对每一个同义集合的所有可行变换进行哈希运算,得到哈希值,根据哈希值将每一个同义集合分为A子集和B子集,其中,哈希值的结果为奇数的可行变换分到 A子集,哈希值的结果为偶数的可行变换分到B子集;(5)对每一个同义集合中的代表求哈希,然后将该哈希值对水印长度做模运算,根据余数对所有的载体单元分组,得到S = [S0, S1, S2,……SlJ,其中,L为水印长度,其中, 第i组承载第i个水印比特;(6)根据每组水印比特,调整每一分组中载体单元的文本在A子集和B子集中出现的个数生成含密文件。作为本专利技术的优选实施例,所述载体单元选自同义词、同义句或其它可做同义变换的语义或语法单元;作为本专利技术的优选实施例,步骤(6)中,调整每一分组中载体单元的文本在A子集和B子集中出现的个数的具体步骤为根据对应的水印比特通过可行变换改写载体单元的原始文本,使得如果水印比特为“0”,则这一分组中载体单元的文本属于A子集的个数为偶数;如果水印比特为“1”,则这一分组中载体单元的文本属于A子集的个数为奇数;作为本专利技术的优选实施例,步骤(6)中,生成含密文件时,如果水印比特和这一分组载体单元的文本属于A子集的个数正好相符,则无需改动;如果不相符,则根据密钥选择组内的一个载体单元,如果原始文本属于A子集则用属于B子集的可行变换替换,原始文本属于B子集的反之。与现有技术相比,本专利技术鲁棒的自然语言哈希域扩频水印编码算法至少具有以下优点1)鲁棒性好由于采用扩频技术把水印比特扩展到频率上,攻击者在不知道密钥的情况下如果随机修改载体难以预测分组中载体单元的文本属于A子集个数变化的情况。具体证明与实验请见有益效果一节;幻隐蔽性好嵌入η比特水印时,平均修改0. 5η个载体单元,最多修改不超过η个载体单元。由于改写出错的概率一定,所以改写量越小,水印的隐蔽性就越好;幻与具体改写技术无关;4)编码算法简单,算法效率高。附图说明图1是传统空域编码算法,嵌入率小于1时的小组示意图;图2是传统空域算法误比特率的理论曲线;图3是传统空域算法鲁棒性实验结果;图4是本专利技术算法的鲁棒性实验结果;图5是本专利技术算法的系统示意图。具体实施例方式本专利技术所提出的哈希域编码方法是与载体形式无关的,无论载体是词还是句子, 都可以使用本专利技术编码方法进行水印信息的嵌入和提取。为了简明清楚,本专利技术使用中文同义词替换方法来叙述本专利技术编码算法,当然,将该同义词用字或句或其它可做同义变换的语义或语法单元替换也是可以的。为了叙述方便,首先引入如下定义载体单元是文本中可以被一种特定自然语言处理技术处理并生成语义不变的变换的最短语言片段。可行变换与载体单元中原文字语义相同的表达形式(包括原文)称为可行变换。同义集合一个载体单元及其所有可行变换构成的同义集合。载体单元集合文本中所有的载体单元构成载体单元集合。子集A、B 每个同义集合都被划分为两个不相交的子集A、B。当提取水印比特的时候,需要验证词语属于自己同义集合的A子集还是B子集。词在A(B)中一个词如果属于自己同义集合的A(B)子集,那么就称这个词在 A(B)中。代表根据密钥,在每个同义集合中选一个可行变换作为代表,它被用来确定整个同义集合所属的分组,保证载体单元替换后,载体单元所对应的分组不变。图5是本专利技术算法的系统示意图,本专利技术算法分为三个模块提取模块、哈希散列模块,以及嵌入模块。(1)提取模块首先获得文章中全部具有同义词的词,根据密钥在每个同义词集合中选出一个代表词,然后把每个同义词集合分成A、B两个子集。根据哈希散列模块获得同义词的分组情况,计算出每个分组代表的比特,获得水印信息。(2)哈希散列模块确定文章同义词的分组情况,构造同义词分组列表。对文章每一个同义词进行如下步骤首先,根据密钥对同义词集合的代表词求哈希值。然后,拿哈希值对水印长度L做模运算。运算结果为本同义词集合全本文档来自技高网
...

【技术保护点】
1.一种鲁棒的自然语言哈希域扩频水印编码算法,其特征在于:首先提取目标文章中的载体单元,获得每个载体单元的同义集合,然后根据密钥将每一个同义集合分为A子集和B子集,然后根据密钥在每个同义集合中选择一个可行变换作为代表,再根据密钥对每一个代表求哈希,然后对该哈希值进行模运算,根据模运算的余数将文章中的载体单元进行分组,分组的个数不小于水印的比特数,最后分别验证每一分组中载体单元属于A子集的个数,通过改写载体单元调整分组中载体单元属于A子集的个数来嵌入水印比特,生成含密文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:桂小林何路
申请(专利权)人:西安交通大学
类型:发明
国别省市:87

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1