顧艷春,馮君婷
(1.佛山科學(xué)技術(shù)學(xué)院電子與信息工程學(xué)院,廣東佛山528000;2.佛山市第一人民醫(yī)院計(jì)算機(jī)中心,廣東佛山528000)
一種基于空格編碼的PDF文本數(shù)字水印算法
顧艷春1,馮君婷2
(1.佛山科學(xué)技術(shù)學(xué)院電子與信息工程學(xué)院,廣東佛山528000;2.佛山市第一人民醫(yī)院計(jì)算機(jī)中心,廣東佛山528000)
提出一種基于空格編碼和置亂技術(shù)的適用于PDF文檔的文本數(shù)字水印算法。首先,將水印圖像進(jìn)行置亂變換;其次,將原PDF文檔轉(zhuǎn)換成PS文件,PS文件中保存有字符和位置信息。利用空格不可見(jiàn)的特點(diǎn),在PS文件中疊加若干由空格組成的行,并利用空格的位置信息來(lái)嵌入水印信息值及水印的位置信息值;最后,將PS文件轉(zhuǎn)換為含有水印的PDF文檔。實(shí)驗(yàn)結(jié)果表明,該算法具有較好的可視性和魯棒性。
信息隱藏;空格編碼;置亂技術(shù);文本數(shù)字水??;PDF文檔
作為多媒體產(chǎn)權(quán)保護(hù)和信息安全維護(hù)的一種有效手段,數(shù)字水印技術(shù)已經(jīng)成為信息處理領(lǐng)域的一個(gè)研究熱點(diǎn)[1-2]。當(dāng)前,數(shù)字水印的研究主要集中在圖像、音頻、視頻等方面,對(duì)以文本文檔為載體的數(shù)字水印研究較少[3]。但是,文本數(shù)字水印同樣具有很廣闊的應(yīng)用空間和重要價(jià)值[4]。由于文本文件的特殊性,在嵌入水印的方法上還存在一定的難度。目前,文本水印算法在基于文本格式、結(jié)構(gòu)、語(yǔ)義、語(yǔ)法等方面的研究已取得了長(zhǎng)足發(fā)展。Bender等[5]從信息隱藏的角度提出對(duì)文本中特定單詞進(jìn)行同義詞替換的方法。Brassil等[6]提出了基于文本空間特征的水印嵌入算法。Zhao等[7]提出了基于像素統(tǒng)計(jì)特征的信息隱藏方案。文獻(xiàn)[8-9]分別提出了基于文本特征編碼的二值文本水印方案。但是,文本數(shù)字水印技術(shù)在理論上尚未成熟,已有的研究結(jié)果普遍存在水印難以深入到文本的內(nèi)容中、水印嵌入容量不足、魯棒性較差、破壞原文檔內(nèi)容等問(wèn)題[10]。
PDF(Portable DocumentFormat)文檔由于其獨(dú)立于硬件及操作系統(tǒng),可以方便地在不同計(jì)算機(jī)平臺(tái)傳播和共享,目前PDF文檔已經(jīng)發(fā)展成為網(wǎng)絡(luò)信息傳遞中的主流文件格式。因此,研究基于PDF文檔的數(shù)字水印技術(shù),具有重要的應(yīng)用價(jià)值[11]。
本文在分析以往算法的基礎(chǔ)上,提出一種根據(jù)PDF文檔格式,利用空格編碼原理,將不會(huì)影響文檔視覺(jué)變化的空格插入文檔中,并利用其對(duì)應(yīng)PS文件中的字符間距等信息,嵌入二值圖像水印的算法。插入過(guò)程中,首先,對(duì)原水印圖像進(jìn)行置亂變換,提高嵌入水印的安全性和檢測(cè)的準(zhǔn)確率;其次,獲取原文檔對(duì)應(yīng)的PS文件,找到各行中行位置信息和字符的間距信息,添加若干由空格字符組成的行,將置亂變換后的二值圖像水印信息依據(jù)一定的規(guī)則嵌入到這些空格對(duì)應(yīng)的間距信息中,同時(shí),將水印的行值和列值信息嵌入到指定位置,作為檢測(cè)水印的位置信息;最后,保存嵌入了水印信息的PS文件,并由此得到含有水印信息的PDF文檔。
1.1 PDF文本表示方法和基于PDF的水印算法模型
PDF文檔的文字內(nèi)容和頁(yè)面格式可由相應(yīng)的PS文件獲得,PS文件是用PostScript語(yǔ)言編寫(xiě)的頁(yè)面描述程序。PDF和PS之間可以相互轉(zhuǎn)換。為了簡(jiǎn)化頁(yè)面描述過(guò)程和實(shí)現(xiàn)文檔的隨機(jī)定位,PDF采用一種嚴(yán)格定義的文件結(jié)構(gòu),而PS能提供可讀性較好的編程語(yǔ)言結(jié)構(gòu),所以利用PS文件更容易實(shí)現(xiàn)水印編、解碼的操作,通過(guò)修改PS文件中頁(yè)面輸出格式來(lái)實(shí)現(xiàn)PDF文檔水印的嵌入?;诖怂枷氲臄?shù)字水印模型[12]如圖1所示。
圖1 PDF文檔的水印嵌入與水印提取模型
在水印編碼過(guò)程中,先將PDF文檔轉(zhuǎn)換成PS文件,然后將處理后的水印信息嵌入到關(guān)于PDF文檔格式的描述中,最后將修改后的PS文件轉(zhuǎn)換成含有水印信息的PDF文檔。水印解碼時(shí),同樣先將PDF文檔轉(zhuǎn)換成PS文件,然后從PS文件的PDF頁(yè)面格式描述中,依照某種方式提取出水印信息。
1.2 空格編碼算法原理
空格編碼是指利用文本中的空白空間變換來(lái)加入水印??崭窬幋a具有不易引起閱讀者注意的優(yōu)點(diǎn)??崭窬幋a主要有三種實(shí)現(xiàn)方式:利用句間空格、利用行尾空格和利用字間空格[13-14]。
第1種方法是在某個(gè)特征符號(hào)后插入一個(gè)或者兩個(gè)空格來(lái)表示放入的信息數(shù)據(jù),如在英文詩(shī)歌的每行后,C語(yǔ)言源程序的每個(gè)分號(hào)后等等。這種方法具有如下缺點(diǎn):首先是編碼效率非常低;其次是數(shù)字水印的編碼方法在一定程度上依賴(lài)于文本的內(nèi)容類(lèi)型,如有些散文詩(shī)缺乏特征字符來(lái)標(biāo)記,一些字處理軟件在一個(gè)或兩個(gè)詞后會(huì)自動(dòng)插入空格等。
第2種方法是在每一行的行尾插入空格。這種方法的好處在于幾乎對(duì)所有的文本格式均可進(jìn)行數(shù)字水印的加載,而且不易覺(jué)察。這種方法也存在著許多缺點(diǎn),例如有一些軟件會(huì)自動(dòng)刪除文本中行尾的空格,無(wú)法抵抗復(fù)制攻擊,水印健壯性較差等。
第3種方法是在詞和詞之間插入空格從而嵌入信息。為了區(qū)別插入的空格和原有的空格,可以使用類(lèi)似曼徹斯特編碼的方法進(jìn)行編碼和解碼。這種方法的編碼速率較前兩種有顯著提高。
本文利用在PDF文件中加入空格不會(huì)引起讀者視覺(jué)上的變化的特點(diǎn),在PDF文件中疊加一些由空格組成的行,并利用所加行中各空格之間的字符間距值來(lái)嵌入水印信息。
1.3 Arnold置亂變換
Arnold變換[15]又稱(chēng)貓臉變換,因?yàn)榻?jīng)常用一張貓臉演示而得名。Arnold變換與其他一些置亂算法相比,變換簡(jiǎn)單且具有周期性,因此使用較為廣泛。Arnold變換方程如下
其中,x,y∈(0,1,2,…,N-1)表示某一像素點(diǎn)的坐標(biāo),N表示圖像矩陣的階數(shù)。經(jīng)Arnold變換后的圖像會(huì)變得混亂不堪,可以利用Arnold變換的這種性質(zhì)來(lái)增加圖像對(duì)某些攻擊的抵抗力。當(dāng)被置亂的圖像遭到惡意攻擊導(dǎo)致局部受到嚴(yán)重毀壞后,在置亂圖像的恢復(fù)中,Arnold變換將會(huì)把原來(lái)遭到毀壞的那部分分散開(kāi)來(lái),減少其對(duì)人眼視覺(jué)的影響,從而提高了數(shù)字水印的魯棒性。對(duì)置亂后的圖像繼續(xù)使用Arnold變換,一定會(huì)出現(xiàn)一幅與原圖相同的圖像,即Arnold變換具有周期性。
2.1 對(duì)水印圖像置亂處理
水印圖像為二值圖像文件。對(duì)原水印圖像,做Arnold置亂變換,置亂因子即變換次數(shù),可作為檢測(cè)水印的密鑰。
2.2 水印嵌入算法
(1)運(yùn)用Arnold置亂方法對(duì)原始二值水印圖像Iw(圖像大小為N×N)進(jìn)行K次置亂,保存K作為提取水印時(shí)的密碼,置亂后的圖像記為Iw'。
(2)將原始文檔Dp轉(zhuǎn)換為PS文件Dps,獲取行位置信息和字符間距信息。記行位置信息為L(zhǎng)r,字符間距信息為L(zhǎng)r(x,y)。
(3)增加一些由空格字符組成的行,行位置信息為L(zhǎng)r,將置亂后的水印圖像值按下式(2)嵌入到字符間距信息中
同時(shí),將水印圖像的位置信息也嵌入到字符間距值中。嵌入過(guò)程為:選取PDF文檔增加的空格行的第i個(gè)字符間距作為水印位置信息的嵌入起始位置,選取此位置時(shí),應(yīng)盡量選取每行中間位置處。這是因?yàn)榉欠◤?fù)制者經(jīng)常選取中間位置處的內(nèi)容,而且中間位置處的信息不容易發(fā)生改變,這樣會(huì)提高水印提取的準(zhǔn)確率。本文實(shí)驗(yàn)中,取i=10,即選取每行第10個(gè)字符間距開(kāi)始處,連續(xù)的2*M位作為水印信息的位置信息,其中M=「log2N」。得到每行第i+2*M個(gè)字符間距嵌入水印的位置信息,將行列值分別轉(zhuǎn)換為二進(jìn)制數(shù)據(jù),再將此位置的二進(jìn)制的行列值信息按下式(3)填入此行從第i到i+2*M的字符間距信息內(nèi)
其中,LL'(x,y)為嵌入位置信息后的字符間距值,LL2(x,y)為初始字符間距值,W2(x,y)為位置信息值,P2為加權(quán)因子,可適當(dāng)調(diào)整此值增加魯棒性。
(4)將嵌入水印后的PS文件轉(zhuǎn)換為PDF文件,從而得到含有水印的PDF文檔。
2.3 水印提取算法
(1)將含有水印的PDF文檔轉(zhuǎn)換為PS文件。
(2)取出所有由空格字符組成的行,讀取字符間距值,獲取嵌入的水印信息和位置信息(PDF轉(zhuǎn)換到PS過(guò)程中可能有很小的誤差,實(shí)驗(yàn)中可考慮這些誤差)。然后根據(jù)獲得的位置信息值和水印信息值,得到二值圖像。
(3)將得到的二值圖像進(jìn)行反Arnold置亂變換,得到提取出的水印圖像。
本文的實(shí)驗(yàn)以Adobe distiller 9為工具,圖像處理環(huán)境為Matlab 7.0,原始水印圖像為32×32的二值圖像,Arnold變換次數(shù)K為3。
圖2給出了實(shí)驗(yàn)過(guò)程的部分?jǐn)?shù)據(jù)。其中,LL1取為2,LL2取為3,P1取為5,P2取為8。
圖2 水印嵌入過(guò)程效果圖
實(shí)驗(yàn)結(jié)果分析:可感知性方面,由人的肉眼來(lái)識(shí)別。用NC值來(lái)反映提取水印與原始水印的相似程度,計(jì)算公式如下
其中,w表示原始水印圖像的像素點(diǎn),w'表示提取出的水印圖像中的像素點(diǎn)。NC越接近1,說(shuō)明提出的水印和原始水印越相似。
圖3給出了實(shí)驗(yàn)結(jié)果。由于水印算法的原理是在原始PDF文檔上疊加由空格組成的行,因此,人眼觀測(cè)到的嵌入水印后的文檔與原圖完全一致,從中提取出的水印圖像跟原始水印圖像完全相同,具有很好的效果。
同時(shí),筆者也對(duì)嵌入水印后的文檔做了一些攻擊,以檢測(cè)水印提取算法的魯棒性。對(duì)于PDF文檔,最常見(jiàn)的操作方法就是裁剪。為此,裁剪出其中的一段,根據(jù)裁剪出的這一段PDF文檔,利用水印提取算法對(duì)其分析,得到如圖4所示的水印圖像。由圖4可以看出,即使是裁剪出比較小的一部分文檔,仍然能檢測(cè)出含有的水印圖像。
圖4 裁剪后提取的水印效果圖
由以上結(jié)果可以看出,本文提出的算法信息隱藏能力較強(qiáng),嵌入效果較好,水印提取算法具有一定的魯棒性。另外,筆者也做了在水印提取時(shí)置亂因子值不符的實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,當(dāng)密碼不正確時(shí),基本不可能提取到正確的水印。
本文針對(duì)PDF文檔的特點(diǎn),提出了一種適用于PDF文檔的水印嵌入方案。實(shí)驗(yàn)結(jié)果表明,本算法具有較好的透明性、可視性和較強(qiáng)的魯棒性。同時(shí),利用Arnold置亂技術(shù),進(jìn)一步增強(qiáng)了水印的安全性和健壯性。水印檢測(cè)結(jié)果準(zhǔn)確,從而具有較強(qiáng)的實(shí)用性。但本文提到的算法只能針對(duì)PDF文檔,而且,不能應(yīng)對(duì)文字識(shí)別軟件類(lèi)的攻擊。
[1]LUCS,LIAO H YM.MultipurposeWatermarking for Image Authentication and Protection[J].IEEE Transactions on Image Processing,2001,10(10)∶1579-1592.
[2]COX I J,MILLER M L.Watermarking Application and Their Properties[C]//International Conference on Information Technology∶Coding and Computing.Las Vegas∶[s.n.],2000∶27-29.
[3]KIM YW,OH S.Watermarking textdocument images using edge direction histograms[J].Pattern Recognition Letters,2004, 25(11)∶1243-1251.
[4]COX L J,MILLERM L.The First50 YearsofElectronicWatermarking[J].EURASIPJofApplied SignalProcessing,2002(2)∶120-132.
[5]BENDERW,KUTTERM.Multimediawatermark technique[J].Proc of IEEE,1999,87(7)∶1077-1079.
[6]BRASSIL J,LOW S,MAXEMCHUK N F.Copyright Protection for the Electronic Distribution of Text Documents[J]. Proceedingsof the IEEE,1999,87(7)∶1181-1196.
[7]ZHAO J,KOCH E.Embedding Robust Labels into Images for Copyright Protection[C]//The Int Congress on Intellectual Perperty Rights for Speciallized Information,Knowledgeand New Technologies.Vienna,Austria∶[s.n.],1995∶8.
[8]RABAH K.Steganography-the ArtofHiding Data[J].Information Technology Journal.2004,3(3)∶245-249.
[9]SHIRALIS.A New Approach to Persian/Arabic Text Steganography Computer and Information Science[C]//5th IEEE/ACIS InternationalConference.Honolulu,USA∶[s.n.],2006∶310-315.
[10]王飛燕,李峰,陳松貴.基于一維正態(tài)云模型的半脆弱文本水印[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(17)∶4578-4580.
[11]張秋余,余冬梅,管偉.中文PDF文檔數(shù)字水印算法[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(24)∶5983-5987.
[12]顧艷春,楊揚(yáng).一種基于PDF文檔和置亂技術(shù)的文本數(shù)字水印技術(shù)[J].佛山科學(xué)技術(shù)學(xué)院學(xué)報(bào)∶自然科學(xué)版,2009, 27(2)∶43-46.
[13]STEFANK.Information Hiding Techniques for Steganography and DigitalWatermarking[M].Boston∶Artech House,2000.
[14]傅瑜,王保保.文本水印附加空格編碼方法的實(shí)現(xiàn)及其性能[J].長(zhǎng)安大學(xué)學(xué)報(bào),2002,22(3)∶85-87.
[15]ARNOLDEA,AVEZA.Ergodic problemsofclassicalmechanics[M].New Jersey∶Benjamin,W A,1968.
【責(zé)任編輯:王桂珍foshanwgzh@163.com】
A text digitalwatermarking algorithm for PDF documentbased on spaceencoding and scrambling technique
GUYan-chun1,F(xiàn)ENG Jun-ting2
(1.SchoolofElectronicsand Information Engineering,Foshan University,Foshan 528000,China; 2.Information System Department,The FirstPeople’sHospitalof Foshan,Foshan 528000,China)
∶A text digital watermarking algorithm for PDF document based on space encoding and scrambling technique is proposed.Thewatermark image is firstencrypted by scrambling technique.Then,the original PDF document is transformed into PS file,in which preserved the characters and their location information.Thirdly, we superimpose some rows composed of space into the PS file.The binary watermark image with its location information is embedded into the character spacing of the PS file.Finally,we get the PDF document containing watermark through the PS file.Experimental results demonstrate that the proposed algorithm is imperceptibility and robust to some degradation processessuch as cropping.
information hiding;spaceencoding;scrambling technique;textdigitalwatermarking;PDFdocument
TP391.4
A
1008-0171(2015)01-0076-05
2014-05-14
佛山科學(xué)技術(shù)學(xué)院科研基金資助項(xiàng)目(2010X063)
顧艷春(1981-),男,河南信陽(yáng)人,佛山科學(xué)技術(shù)學(xué)院講師,博士。
佛山科學(xué)技術(shù)學(xué)院學(xué)報(bào)(自然科學(xué)版)2015年1期