基于pdf格式的自适应文本水印方法
【技术领域】
[0001] 本发明属于计算机信息安全领域。用于对PDF格式文本文档的数字版权保护、数 据真伪鉴别以及数据的安全通信。
【背景技术】
[0002] 近年来,随着网络通信技术的迅猛发展,人们可以更方便快捷的在网络上传输、发 表数字作品,同时也使得这些作品的版权问题显得尤为重要。数字水印技术在版权保护方 面具有很大的优势,因此越来越多的人们投身于数字水印的研究。现如今,人们对水印的研 究主要聚集在图像水印、视频水印以及音频水印,而对应用广泛的文本水印的研究比较少, 成果也较少。而且越来越多的重要文件、军事机密、商业机密等的呈现方式也是文字材料, 确保文本文档中信息的安全关系到国家的发展与安全。因此,对在PDF文档中实现数字水 印的嵌入的研究十分重要。
[0003] PDF格式文档应用越来越广泛,由于其具有跨媒体、跨平台等优点,现已逐渐成为 数字化时代的一个工业标准,在文本领域起着至关重要的作用。然而,在文本水印中,PDF文 本水印的研究更是处于一个相对不成熟的发展阶段,这与PDF文档在文本信息领域的重要 地位形成巨大的反差,因此,对PDF文本数字水印技术的研究显得格外重要。
【发明内容】
[0004] 本发明提出了一种基于PDF格式的自适应文本水印方法,该方法基于PDF格式, 利用二次剩余理论自适应地选择要进行字移编码的字符位置,对整篇文档进行字符间距编 码,使水印的嵌入位置呈现随机状态,这样水印嵌入位置没有规律而言,降低了水印被破坏 的可能性,从而使得算法的鲁棒性得到了提高,实现了版权保护的目的。同时结合密码学原 理和纠错编码理论,设计了循环嵌入、同步编码、汉明编码、循环加密等关键技术,进一步提 高了算法的鲁棒性和安全性,以克服上述现有技术的存在缺陷。
[0005] 本发明提供一种基于PDF格式的自适应文本水印嵌入方法,包括以下步骤:
[0006] 步骤A :将需要隐藏的版权信息M及密钥D根据编码规则转换为8位二进制序列;
[0007] 步骤B :将水印信息M与密钥D对应的二进制序列进行循环取模操作,得到加密后 的^进制水印序列;
[0008] 步骤C :对二进制序列X进行纠错编码,为待嵌入的水印信息添加一定的纠错编 码,得到水印序列P ;
[0009] 步骤D :在水印的二进制序列P的头部,加入同步标识F以及长度标识N,得到新的 水印^进制比特序列W ;
[0010] 步骤E :在预嵌入水印位置TJ处,定位并选择具体嵌入水印位置,嵌入水印信息, 具体步骤如下;
[0011] 步骤EU从文本第一个字符开始,以每个标点符号为界的一段文本,统计文本的字 符数N ;
[0012] 步骤E2、遍历文档寻找预嵌入水印位置TJ,定位文档中各字符间距属性。判读字 符数N的奇偶性,根据字符数N确定嵌入位;
[0013] 步骤E2-1、若字符数为偶数且N = 2时,那么N的二次剩余为1,即嵌入水印的位 置为1,即在第一个字符间距处嵌入水印信息;
[0014] 步骤E2-2、若字符数N为非2的偶数时,取字符数N的平均值,然后判断N/2是否 为质数,若为质数,求N/2的二次剩余,该二次剩余作为水印信息的嵌入位;
[0015] 步骤E2-3、若字符数N为奇数,判断字符数N是否为质数,若是质数,求字符数N的 二次剩余,该二次剩余作为水印信息的嵌入位;
[0016] 步骤E2-4、若字符数N不是质数,判断(N-l)/2是否为质数,若是,求字符数N二次 剩余,该二次剩余作为水印信息的嵌入位;否则的话不嵌入水印信息;
[0017] 步骤F、依次修改二次剩余位置上的字符间距,当水印信息为1时,此处嵌入间距 基数a。当水印信息为0时,此处嵌入负间距基数-a ;
[0018] 步骤G、重复步骤E和步骤F,循环嵌入水印信息,增大水印容量,提供水印鲁棒 性;
[0019] 步骤H、嵌入完成,保存已嵌入水印的PDF文档。
[0020] 进一步,本发明提供一种基于PDF格式的自适应文本水印嵌入方法,还可以具有 这样的特征:所述编码规则为ANSI编码规则。
[0021] 进一步,本发明提供一种基于PDF格式的自适应文本水印嵌入方法,步骤C中,所 述纠错编码为(7, 4)汉明码编码。
[0022] 进一步,本发明提供一种基于PDF格式的自适应文本水印嵌入方法,在循环嵌入 水印信息的过程中,每当嵌入水印二进制序列的第一个比特为标识F时,以此标记水印起 始位置。
[0023] 另外,本发明提供一种基于PDF格式的自适应文本水印提取方法,包括以下步骤:
[0024] 步骤一、统计含水印文本的字符数N,判断其奇偶性;
[0025] 若字符数N为偶数且N = 2,那么N的二次剩余为1,即在第一个字符间距处嵌入 了水印信息;
[0026] 若字符数N为非2的偶数,取N的平均值,然后判断N/2是否为质数,若为质数,求 N/2二次剩余,这些二次剩余就是水印信息的嵌入位;
[0027] 若字符数N为奇数,判断字符数N是否为质数,若是字符数N为质数,求N的二次 剩余,这些二次剩余就是水印信息的嵌入位置;
[0028] 若字符数N为奇数,但不是质数,判断(N-I)/2是否为质数,若是,求(N-I)/2的二 次剩余,这些二次剩余就是水印信息的嵌入位置;否则,没有嵌入水印信息;
[0029] 步骤二、对提取的二进制序列M'进行同步解码,提取出循环嵌入的多个水印二进 制序列Q',利用长度标识,对各个水印二进制序列Q'进行大数判决,得出水印信息的有效 长度,并提取出相应的水印二进制序列Q",并对该二进制序列Q"进行纠错解码,得出正确 的水印^进制序列X' ;
[0030] 步骤三、按照编码标准,转换密钥信息为二进制序列D,进行循环解密,得到最终的 ^进制序列W' ;
[0031] 步骤四、最后对水印二进制序列X'和密钥二进制序列D循环解密,得到最终的二 进制序列w',并根据编码标准,转换W'为水印字符串,并将该字符串作为水印信息输出。
[0032] 进一步,本发明提供一种基于PDF格式的自适应文本水印提取方法,还可以具有 这样的特征:所述编码规则为ANSI编码规则。
[0033] 进一步,本发明还提供一种基于PDF格式的自适应文本水印提取方法,还可以具 有这样的特征:步骤一中,若某处的字符间距为a,则对应的水印信息为1,若某处的字符间 距为-a,则对应的水印信息为0。
[0034] 进一步,本发明还提供一种基于PDF格式的自适应文本水印提取方法,还可以具 有这样的特征:所述纠错解码为(7, 4)汉明码编码。
[0035] 发明的有益效果
[0036] 本发明提出的嵌入方法是一种基于PDF格式的文本数字水印方法,通过操作文本 的字符间距的变化来嵌入并隐藏水印信息,与前人的文本水印算法不同,本发明的水印算 法将水印信息嵌入到文本的字符间距中,通过引入二次剩余来确定水印嵌入位置,自适应 的嵌入水印,以提高鲁棒性;并基于人类视觉模型,提出改进水印隐蔽性的方法,同时通过 对水印信息进行密钥循环加密,引入纠错编码理论对加密后的水印信息进行汉明编码等, 以提尚水印的安全性。
[0037] 本发明提供的一种基于PDF格式的自适应文本水印方法,具有较好的隐蔽性和较 强抗攻击能力,并能够实现携带秘密信息,对文本文档的数字版权保护、文档的完整性认证 和篡改的识别定位等功能,具有一定的实用价值。
【附图说明】
[0038] 图1是本发明的基于PDF格式的自适应文本水印嵌入方法流程图。
[0039] 图2是本发明的基于PDF格式的自适应文本水印提取方法流程图。
[0040] 图3是信息位与监督位对应关系图表。
[0041] 图4是错码位置与校正子关系图表。
【具体实施方式】
[0042] 下面结合附图和具体实施例对本发明做进一步的描述。
[0043] 如图1所示,基于PDF格式的自适应文本水印嵌入算法的流程图。
[0044] 步骤A、将需要隐藏的版权信息M及密钥D根据ANSI编码规则转换为8位二进制 序列。
[0045] 读取需要嵌入的数字水印信息M(如版权信息)和密钥D,将待隐藏的有效水印信 息转换为二进制序列M = nyiyiv · · ms,其中HiiG {〇, 1},1彡i彡s,将密钥转换为二进制序 列 D =山(12(13· · · dt,其中(Ii e {〇, 1},I < i < t。
[0046] 步骤B、将水印信息M与密钥D对应的二进制序列进行循环取模操作,得到加密后 的二进制水印序列。
[0047] 将水印与密钥的二进制序列进行循环取模加密,得到加密后的新的水印序列X = X1X2X3. · · X1,其中 Xi e {〇, 1},I < i < 1,其中 I = max {s,t}
[0049] 加密后的水印信息数据X = X1X2X3…X1,其中xi e {〇, 1}。
[0050] 步骤C、对二进制序列X进行纠错编码,为待嵌入的水印信息添加一定的纠错编 码,得到水印序列P。
[0051] 对加密后的水