APP下载

基于PDF格式的数字版权保护算法

2016-06-13卢宇鹏

电子科技 2016年5期

陈 青,卢宇鹏

(上海理工大学 光学与电子信息工程学院,上海 200093)



基于PDF格式的数字版权保护算法

陈青,卢宇鹏

(上海理工大学 光学与电子信息工程学院,上海200093)

摘要针对互联网中多渠道信息传播导致的文档篡改和所有权归属等问题。通过分析PDF文档结构及内容流特性,文中提出一种基于文本格式的新型算法。设计使用Kerckhoffs安全性准则和数字签名算法,以解决版权归属难题,并能有效甄别文档篡改。文中将不可见水印作为便携式数字签名嵌入PDF文档中,依据PDF文档结构中内容流的字体渲染模式和字体饱和度的可修改特性,通过选择性的修改和添加相关属性,在不损坏文档结构的基础上达到嵌入水印文本的目的。通过从PDF文档中提取出的水印,与原始水印的一致性检测,来辨别文档的真伪及版权归属。实验结果表明,该算法具有良好的透明性和鲁棒性,以及较大地水印容量,能进行篡改判别。

关键词PDF;渲染模式;字体饱和度;版权归属;真伪鉴定

数字水印作为一种文档的嵌入信息,是可用以描述文档所有权和真伪性的。近年来,数字水印主要应用于多种复杂攻击下,保护版权信息及文档真伪,且数字水印在用途上,与信息隐藏并不完全相同[1-2]。

针对当前以电子文档为主体的,无纸化办公理念的发展趋势。提出一种新型的不可见水印算法,通过嵌入隐形的数字签名信息来保护PDF格式文档[3]。

国内外众多科研人员主要针对图像、音频、视频的相关保护做了大量研究。对于PDF电子文档的数字水印领域研究较少,国内甚至少有对于文本数字水印的文献。北京邮电大学的徐国爱教授提出,通过替换交叉引用表中的不可见行末标识符的水印间接嵌入算法,大幅提升了PDF文本水印的可嵌入容量[4]。兰州理工大学的张秋余教授通过分析发现PDF文档和PostScript页面的工作机制,提出了一种将文本水印信息嵌入到文档字符间距中的算法,来实现文档的保护[5]。

上述研究大幅提高了数字水印的容量且实现了电子版权的保护。然而,传统的PDF水印嵌入方式是针对文档固有格式的修改进行嵌入。无法甄别第三方软件攻击篡改。对修改后的文档依旧可以提取出完整水印。无法满足当前的实际应用需求[6-9]。同时,基于PDF文档的格式特殊性,在非Adobe公司提供的官方阅读上进行PDF的文本修改,均会破坏PDF文档固有的文本格式,形成一个新的且能被Adobe Reader读取的PDF文档。这种特性加大了对文档真伪性的判别难度。

本文针对上述问题,提出一种将字体的渲染模式和饱和度相结合的新型数字水印算法。通过修改字体的渲染模式和饱和度信息把文本水印与PDF文本内容紧密结合,通过检索文档中无法被第三方软件删减的灰度值信息,在能甄别第三方软件篡改攻击的同时,也能较好的提取出水印信息。除了能达到保护版权的目的,还能被广泛应用于医疗行业的医药处方,军工行业的机密数据保护等[10-12]。

1PDF文档结构

一个典型的PDF文件包含4个主要部分:文件头、文件体、交叉引用表、文件尾。文件头,用以表示这个PDF文件遵循的PDF规范版本,例如“%PDF-1.2”。

文件体,为PDF文件的主要部分,由一系列间接对象组成,这些间接对象构成文件的具体内容如字体、页面、图像等,如图1所示。

图1 间接对象构成

其中5是对象序号,其用来唯一标记一个对象,可用于交叉引用表中查找间接对象;0是生成号,为区分不同对象。obj和endobj是间接对象的定义范围,对象的内容应该是包含在<<和>>之间的。stream表示流对象的开始,相对应的endstream表示流对象的结束。而文本对象的开始标志是BT,相应的ET表示文字对象的结束。在流对象中TJ是字体标识符,字体内容信息在其中保存。

2数字签名

数字签名就像日常生活中的物理签名一般,是用来表明版权所有者的标识信息。为防止未经授权的数字签名嵌入文档中。在嵌入之前,经过一系列的加密算法预处理数字签名信息,阻止攻击者伪造数字签名信息。数字签名算法包含密钥和数字签名信息。

假使PDF文档为P,密钥信息为k,数字签名信息为w。在数字签名嵌入方,使用k与数字签名w想结合形成一段新的数字信息M=(Sign(k,w)),将M嵌入文档内容中。接收方如需验证数字签名信息,可使用M与k进行逆向操作,得到原始的数字签名信息(w=(‘Sign’(M,k)))。

攻击者由于未获得授权信息(密钥k),从而无法从文档嵌入的信息中准确的提取出数字签名信息,从而保证的版权所有者的数字签名的正确性。本文采用密钥与数字签名循环取模的方式进行加密,用以保证算法的安全性。

获取待嵌入的数字签名信息w及密钥k,按照ANSI编码标准,将数字签名信息w转换为8位的二进制序列w={w1,w2,w3,…,wn}和k={k1,k2,k3,…,kM}。

将两个二进制序列w,k进行循环取模,并取其中长度较长的序列作为新的序列长度,得到一个新的二进制序列M,M={M1,M2,M3,…,Mmax(M,n)}

(1)

验证过程则为逆向操作,图2为数字签名加/解密流程框图。

图2 数字签名加/解密流程图

3嵌入与提取算法

在PDF文件结构中,文件体包含了所有的字体和图片信息。修改相应属性的变量,可以改变PDF文档的显示内容。基于这一PDF基本结构,本文作者提出了一种将字体渲染模式和饱和度信息相结合的新型数字水印算法。

Adobe公司提供了0~7号渲染模式。通过查询PDF用户手册,作者选取0号渲染模式。在0号渲染模式下,通过修改字体的饱和度信息,达到隐蔽嵌入数字签名的目的。

3.1嵌入水印算法

输入:PDF文档P,数字签名信息w,密钥信息k。

输出:含有数字签名的PDF文档P′。

M=Sign(W,K);

D=Uncompress(P);//将PDF格式文档加密

For

if(Mi==0)

t=Search(TJ);//找到文档中TJ的位置

t′=Offset(T);//指针偏移到TJ上一行

//在t′位置处插入渲染模式0,及饱和度信息0.01

Insert(T′,"0 Tr 0.01 g ");

endif

else

if(Mi==1)

t=Search(TJ);//找到文档中TJ的位置

t′=Offset(T);//指针偏移到TJ上一行

//在T′位置处插入渲染模式0,及饱和度信息0.02

Insert(T′,"0 Tr 0.02 g ");

endif

endfor

Return D;

P′=Compress(D);

嵌入算法的核心思想,就是将获取的加密数字签名信息。按照顺序,依次判别。若当前信息sI=0,则对当前间接对象类添加0号渲染以及数值为0.01的字体饱和度。影响该间接对象类中包含的字体集。若当前信息sI=1,则对当前间接对象类添加0号渲染以及数值为0.02 的字体饱和度。

经过理论分析推断,由于一篇PDF文档具有多个字体图形标识符“TJ”,用以显示文档信息,故本算法具有较大的水印容量,同时通过数字签名预处理,增强了数字签名的鲁棒性。基于人眼视觉效应,选取合理的饱和度数值,可使具有饱和度信息的字形与原字形相差无几。这样完全隐蔽的嵌入了数字签名信息,具有较高的鲁棒性和隐蔽性。

3.2提取水印算法

输入:含有数字签名的PDF文档P′,密钥信息k。

输出:数字签名信息w′。

D=Uncompress(P′);

For

Q=Search(Tr);//寻找文档中tR的所在位置

第一,跟生产条件相联系,明确施肥量。在近些年来,各地有效开展测土配方施肥项目,深入研究小麦测土配方技术,掌握了在不同生态条件下小麦的施肥规律、供肥性能和肥料效应等参数,应按照不同的环境和条件,科学测量施肥量。

Q′=Offset(Q);//将指针偏移到tR下一行开头

If(Q′==0)

mi==0;

else

if(Q′==1)

mi==1;

endif

endfor

Return M={m1,m2,m3,…,mmax(m,n)};

P′=Compress(P′);

W′=(Sign′(M,K);

提取算法的核心思想与嵌入算法相反。检索解压后的含数字签名的PDF文档。寻找渲染模式关键字tR。通过检索匹配字体饱和度信息,得到加密过后的数字签名信息。运用密钥还原出原始数字签名信息。

4实验结果与分析

实验分析表明,新型文本水印算法与传统的文本水印算法相比,具有以下特点:

(1)本文提出的算法,是在PDF压缩编码后的文档中进行对属性的添加。可有效避免针对文档的恶意格式去除。如在交叉引用表中添加的不可见行末标识符,可人为进行删减。会对增加水印提取和辨别的难度;

(2)新型水印嵌入算法,将水印信息与原文档内容较好的结合。能甄别原文档是否被删减和修改。而不是仅能够在含水印的文档中提取出水印信息。新型水印算法扩大了文本水印算法的实际应用范围。能在保护版权信息的基础上提供文档鉴别的功能,可被应用于医疗处方等高精度行业。

4.1透明性分析

在测试实验中,本文嵌入“USST”作为数字签名信息,在《海的女儿》节选中。文档大小为139 kB,共有44个嵌入点。在嵌入过程中,根据数字签名信息在每个嵌入点嵌入饱和度信息,分别调整该系列字形饱和度。使嵌入后的字形与嵌入前尽可能相同。

图3 原始文档截图

通过对比图得出在数字签名嵌入前后,文档的差异较小,即使在放大800%的情况下,肉眼仍不可见,具有良好的隐蔽性。

4.2嵌入容量分析

本文对不同文本大小的PDF文档进行嵌入容量分析统计,如图5所示。

图5 水印容量统计

由图5可以看出,随着文本大小的增加,文档可嵌入容量也随着提升。且容量大小完全能够满足数字签名信息嵌入需求。在文档大小约为1 MB时,能嵌入10 000 bit的数字签名信息,远远超过传统水印算法的可嵌入容量。实验结果表明,本文提出的信息水印算法在大容量嵌入上具有实用性。

4.3水印鲁棒性分析

由于上文实验和分析发现,本算法具有较大的信息嵌入容量,可通过增加数字签名的循环嵌入的次数,来保证水印的鲁棒性需求。表1给出了对嵌入水印的PDF文档进行各类攻击后的检测结果。

表1 抗攻击能力统计表

由于本算法是嵌入在文档内容中的,所有行移,字移和特征值修改,均不影响水印提取。

4.4攻击甄别

从理论上分析,一个经过修改后的PDF文档,文本格式虽发生了变化,但要保证文档的直观可读性,文本的属性会进行相应的保留。如通过本文算法得到的含有字体饱和度信息的PDF文档tw,通过第三方软件进行删减等攻击后,生成的PDF文档tw′应保留原有的字体位置信息以及饱和度信息。

对于本文的使用样本《海的女儿》节选,通过第三方软件的删减操作后,文档格式发生变动后,字体的饱和度信息依旧保留,用以提取水印,这与实验结果吻合。修改后的PDF文档解码信息如图6所示。

图6 修改后的PDF文档解码信息节选

可通过在提取饱和度信息后的原PDF格式的相应标识符“tR”,记为e,e={e1,e2,e3,…,es}。若e=NULL,则表示含水印的PDF文档被人为的修改,如图3所示,文档被人为修改。实验结果表明,无法寻找到含数字签名信息的文档中应有渲染模式标识符,与理论分析所得的结论一致。因此,本文提出的新型数字水印算法,在提取出数字签名信息,保护版权信息的基础上,同时达到了甄别文档真伪的效果。

5结束语

本算法根据PDF文档的特殊性,通过修改文本对象操作参数和相应操作符,在不破坏PDF文本自身结构和内容的前提下,达到水印嵌入和提取的目的。新型文本水印算法较传统水印算法而言,嵌入水印与文档的文本内容很好的结合在一起,能甄别文本的完整性和真实性。在具有良好隐蔽性与鲁棒性的同时,还扩大了文档可嵌入容量。本文算法满足PDF文档嵌入的绝大部分需求,并扩大了实际应用范围,使PDF文本能被应用于高精度行业,进行真伪鉴别。尽管基于PDF的数字水印技术还未成熟,嵌入数字签名来保护版权问题尚未得到相关法律的认可。但可以相信,这是个极具发展潜力的新兴领域,等待后续的研究和完善。

参考文献

[1]金聪.数字水印理论与技术[M].北京:清华大学出版社,2008.

[2]Cox I J,Matthew L M,Jeffrey A B.Digital watermarking[M].Beijing:Publishing House of Electronics Industry,2003.

[3]Maxemchuk N F,Low S.Marking text documents[C].Santa Barbara Calif:International Conference on Image Processing,1997.

[3]钟征燕,郭燕慧,徐爱国.基于PDF文档结构的数字水印算法[J].计算机应用,2012,32(10):2776-2778,2782.

[4]张秋余,余冬梅,管伟.中文PDF文档数字水印算法[J].计算机工程与设计,2007,28(24):5983-5987.

[5]Tan C K,Ng J C,Xu X T,et al.Security protection of DICOM medical images using dual-layer reversible watermarking with tamper detection capability[J].Journal of Digital Imaging,2011,24(3):528-540.

[6]Deng X H,Chen Z G,Deng X H,et al.A novel dual-layer reversible watermarking fo medical image authentication and EPR hiding[J].Advanced Science Letters,2011,4(11):3678-3684.

[7]Guo X T,Zhuang T G.A region-based lossless watermarking scheme for enhancing security of medical data[J].Journal of Digital Imaging,2009,22(1):53-64.

[8]Peng F,Li X I,Yang B.Adaptive reversible data hiding scheme based on interger transform[J].Signal Processing,2012,92(1):54-62.

[9]Mahmoud A,Al Maharmeh H,Al-Ahmad H,et al.A new watermarking algorithm for scanned colored PDF files using DWT and hash function[J].Information and Communication Technology Research,2015,7156441:140-143.

[10]Alakk W,Al-Ahmad H,Kunhu A.A new watermarking algorithm for scanned grey PDF files using DWT and hash function[J].IEEE Transactions on Computer Science,2014(9):690-693.

[11]Alahmad M A,Alshaikhli I,Alduwaikh A E.A new fragile digital watermarking technique for a pdf digital holy quran[J].Advanced Computer Science Applications and Technologies,2013,56(3):250-253.

[12]Adobe.Adobe PDF reference[M].CA,USA:Adobe,2006.

Digital Watermarking Protection Algorithm Based on Format of PDF Document

CHEN Qing,LU Yupeng

(School of Optical-Electronical and Computer Engineering,University of Shanghai for Science and Technology,Shanghai 200093,China)

AbstractIn order to solve the problems like document tampering that is leaded by multi-channel information dissemination on the Internet and the copyright of documents,this paper proposes a new algorithm that is based on the text format by analyzing the structure and content flow characteristics of PDF (Portable Document Format).The Kerckhoffs safety criteria and the digital signature algorithm are adopted to solve the problem of the copyright and to identify document tampering effectively.The author put the invisible watermark in the PDF document as a portable digital signature,thus modifying the properties of saturation without damage to the structure of the document through selective modification and adding related attributes to achieve the purpose of putting watermark in the document.Checking the watermark from the PDF document and the comparison with the original watermark can identify both the authenticity of a document and the copyright.The experimental result shows that the algorithm has good transparency and robustness,and has a larger capacity of watermark,which helps identify if the document has been tampered.

KeywordsPDF;rendering mode;saturation characteristics;original;check the consistency

doi:10.16180/j.cnki.issn1007-7820.2016.05.029 10.16180/j.cnki.issn1007-7820.2016.05.030

收稿日期:2015-10-08 2015-09-14

基金项目:国家自然科学基金资助项目(61303203);上海自然科学基金资助项目(12ZR1420800)

作者简介:陈青(1962—),女,副教授。研究方向:数字水印技术,图像编码等。卢宇鹏(1991—),男,硕士研究生。研究方向:数字水印技术等。 贺宏洲(1984—),男,硕士,工程师。研究方向:卫星测控跟踪技术。秦玉峰(1979—),男,硕士,高级工程师。研究方向:卫星测控跟踪技术。

中图分类号TP311.1

文献标识码A

文章编号1007-7820(2016)05-108-05