錢宗峰,曹學(xué)軍,湯 偉,李彥爽
(1.總參謀部通信訓(xùn)練基地教研部,河北宣化075100;2.河北北方學(xué)院理學(xué)院,河北張家口075000)
基于Word文檔縮放字符比例的信息隱藏算法研究
錢宗峰1,曹學(xué)軍1,湯 偉1,李彥爽2
(1.總參謀部通信訓(xùn)練基地教研部,河北宣化075100;2.河北北方學(xué)院理學(xué)院,河北張家口075000)
根據(jù)Word文檔的特點(diǎn),提出了通過(guò)改變Word文檔字符縮放比例,在文檔中嵌入秘密文本的信息隱藏算法,實(shí)驗(yàn)表明:算法簡(jiǎn)單,很好地實(shí)現(xiàn)了秘密文本的嵌入,信息隱藏量大于傳統(tǒng)算法,隱藏效果較好,可以滿足文件隱秘傳輸需要,具有廣闊的應(yīng)用前景.
信息隱藏;字符縮放比例;Word文檔;文本隱藏
信息隱藏指的是在不對(duì)載體媒體產(chǎn)生過(guò)多影響的前提下,將要發(fā)送的秘密信息隱藏在另一個(gè)非秘密的公開載體媒體中,以實(shí)現(xiàn)隱秘通信,達(dá)到信息安全傳輸?shù)哪康?由于信息隱藏技術(shù)不但隱藏了信息的內(nèi)容,而且隱藏了信息的存在,因而可以十分容易地避開非法攔截者的追擊.被隱藏的秘密信息可以是圖像、文字、聲音或計(jì)算機(jī)中的文件,用以隱藏秘密信息的公開載體媒體可以是文本、數(shù)字圖像、數(shù)字視頻或數(shù)字音頻.目前網(wǎng)絡(luò)上傳輸?shù)慕^大部分信息是文本信息,由于文本文檔本身存在的冗余很小,故以文本信息為載體進(jìn)行隱秘通信具有較高難度,所以隱藏過(guò)密文的文本也不容易受到懷疑,具有比較好的安全性,因此基于文本的信息隱藏具有重要的現(xiàn)實(shí)意義和廣闊的應(yīng)用前景.
目前Microsoft Word是全世界使用最廣的文字處理軟件,Word己經(jīng)成為辦公自動(dòng)化和日常編輯事實(shí)上的標(biāo)準(zhǔn).隨著Internet的迅猛發(fā)展和日益普及,Word在電子商務(wù)、遠(yuǎn)程教育和電子政務(wù)中的應(yīng)用也日益廣泛,基于Word文檔的信息隱藏技術(shù)研究也成為了一個(gè)熱點(diǎn),人們提出了各種各樣的隱藏算法.基于行移編碼的信息隱藏技術(shù)是通過(guò)將文本的某一行垂直移動(dòng)一個(gè)微小量來(lái)嵌入秘密信息,由于人的眼睛無(wú)法覺察小于1/300英寸的垂直位移量,當(dāng)一行被上移或下移時(shí),而與其相鄰的一行或兩行位置保持不動(dòng),將不動(dòng)的相鄰行作為解碼的參考位置,這就實(shí)現(xiàn)了信息隱藏,但該方法可嵌入的信息量比較小[1].基于字移編碼的算法與基于行移編碼的算法相比在信息隱藏量方面有了一定的改進(jìn),而且實(shí)現(xiàn)起來(lái)也不困難.基于文字下劃線顏色的信息隱藏技術(shù)利用下劃線顏色值的冗余來(lái)嵌入信息,此方法可加載的信息量大,但載體信息文件比原始文件要大,其變化比率與嵌入秘密信息的容量成正比[2].基于文字顏色的信息隱藏算法信息隱藏量較大,但魯棒性相對(duì)較弱[3,4].基于字號(hào)變化的信息隱藏方法在隱藏信息后文件大小基本不變,迷惑性高,但信息隱藏容量受明文長(zhǎng)度限制,抗排版編輯能力較差[5].另外還有替換隱藏方法,它通過(guò)用視覺上相似的文本特征替換原始文本中的一些特征來(lái)隱藏信息,人們研究的比較多的有字體替換,標(biāo)點(diǎn)信息隱藏,同義詞替換,修改字符筆畫寬度,修改區(qū)域亮度等,缺點(diǎn)是這類算法的魯棒性較差,常因?yàn)槲淖中畔⒌母膭?dòng)而丟失所隱藏的信息.
本文所研究的算法通過(guò)改變字符縮放比例來(lái)實(shí)現(xiàn)信息隱藏,在Word文檔中利用VBA編程語(yǔ)言實(shí)現(xiàn)了秘密信息的隱藏和提取.
研究表明,在Word文本文檔中,輕微縮放字符的比例,人的肉眼是不易察覺的,我們實(shí)現(xiàn)信息隱藏的方法是通過(guò)改變文本中字符的橫向縮放比例.在一篇正常的Word文本文檔中字符的縮放比例通常是標(biāo)準(zhǔn)型,即100%,對(duì)需要嵌入秘密信息的文本字符,可以采用縮放的比例分別設(shè)定為101%,102%,103%和104%來(lái)進(jìn)行編碼,從而使得每個(gè)載體文本字符可實(shí)現(xiàn)2位二進(jìn)制碼的隱藏而不易被發(fā)覺.隱蔽通信的原理框架如圖1所示.秘密信息W通過(guò)嵌入算法隱藏到原始載體 T中,形成包含有秘密信息的載體 T′,T′與 T必須非常相似,這才不會(huì)引起他人的懷疑.通常,T′在無(wú)噪信道中傳輸,但在一些特殊應(yīng)用場(chǎng)合也可以考慮噪聲對(duì)載體數(shù)據(jù)的干擾,這就要求帶有密文的載體具有比較好的魯棒性和抗攻擊能力.
圖1 隱蔽通信的原理框架
輸入:載體Word文檔 T,秘密信息W.
輸出:嵌入秘密信息的Word文本 T′,具體實(shí)現(xiàn)時(shí)需要進(jìn)行以下幾個(gè)步驟.
1)判斷秘密信息W能否嵌入到載體Word文檔T中.
2)順序提取秘密信息W每個(gè)字節(jié)的ASCII碼值.
3)順序?qū)ふ襑ord文檔 T中適合嵌入秘密信息的字符,根據(jù)秘密信息每個(gè)字節(jié)的ASCII碼值,分別替換該字符的縮放比例值.為了提取秘密信息的方便,可以先把秘密信息的文件長(zhǎng)度、文件名等相關(guān)信息嵌入到Word文檔 T中.
4)生成嵌入秘密信息后的Word文檔 T′.
輸入:Word文檔 T′.
輸出:秘密信息W,具體實(shí)現(xiàn)時(shí)需要進(jìn)行以下幾個(gè)步驟.
1)查找秘密信息在Word文檔 T′中的位置.
2)順序取出字符縮放的比例值,并將其轉(zhuǎn)換成對(duì)應(yīng)字符的ASCII碼,進(jìn)而恢復(fù)秘密信息的長(zhǎng)度及文件名.
3)生成秘密信息文件.
如果整篇文檔的文字縮放比例一致,則提取算法可用盲檢測(cè)的方法實(shí)現(xiàn).利用統(tǒng)計(jì)學(xué)原理,檢測(cè)相鄰的文字縮放比例變化的概率,在沒有隱藏信息的情況下,這個(gè)概率值較小.如果該概率值過(guò)大,則認(rèn)為嵌入了秘密信息.如果整篇文檔的文字縮放比例不一致,則相關(guān)提取算法必須借助原始文檔,實(shí)現(xiàn)起來(lái)較為困難.
考慮到Word文本文檔的特點(diǎn)以及信息隱藏系統(tǒng)對(duì)隱蔽性能和信息隱藏量的要求,我們對(duì)嵌入算法及提取算法的操作做了相應(yīng)的改進(jìn),進(jìn)一步簡(jiǎn)化了算法的復(fù)雜程度.下面從幾個(gè)方面來(lái)討論本算法的特點(diǎn).
字符縮放比例的選取是所研究算法實(shí)現(xiàn)的關(guān)鍵.在嵌入過(guò)程中,秘密信息在載體文本中的位置可以隨意設(shè)置,嵌入的目標(biāo)是使通道信息在不可見性、信息隱藏量和魯棒性之間找到一個(gè)較好的折中.
盲檢:因?yàn)榻^大多數(shù)Word文檔的文字縮放比例是一致的,所以提取算法可以使用盲檢測(cè)的方法來(lái)實(shí)現(xiàn).
信息容量:Maxemchuk[6]等人提出的特征編碼法和文獻(xiàn) [7]中改變文字大小的算法中,載體文本每個(gè)字符最多只有兩種變化量,分別代表0或者1,因此至少需要8個(gè)字符才能嵌入1個(gè)字節(jié)的信息量.而使用本文算法的編碼方式,每個(gè)字符有四種變化量,分別代表00、01、10或11,由于4個(gè)字符即可嵌入1個(gè)字節(jié) (4×2bit=8bit)的信息量,所以信息隱藏量得到了較大提高.
魯棒性:如果僅僅是對(duì)文檔的某些文字進(jìn)行逐個(gè)的替換操作,由于Word本身的繼承性,即如果當(dāng)前的格式不變并且不主動(dòng)去修改格式,則在當(dāng)前格式下新增加的字符會(huì)套用當(dāng)前的格式.所以,如果是逐個(gè)替換的話,則替換后的字符格式和替換前的字符格式一致,這種情況仍然能夠保存隱藏信息.
安全性:在我們?cè)O(shè)計(jì)的算法中,并沒有對(duì)載體文檔的內(nèi)容本身進(jìn)行加密,也沒有對(duì)秘密信息進(jìn)行加密,而在實(shí)際應(yīng)用的方案中,為了增加算法的抗攻擊能力,可以在信息隱藏之前,將待隱藏的秘密信息進(jìn)行糾錯(cuò)編碼,如漢明碼.當(dāng)待隱藏信息容量很大時(shí),也可以先對(duì)隱藏信息進(jìn)行數(shù)據(jù)壓縮,然后再進(jìn)行隱藏,這就進(jìn)一步提高了安全性.
隱蔽性:字符縮放比例的選取是衡量隱蔽性的關(guān)鍵.文獻(xiàn) [7]中提出的改變文字大小算法中,載體文本每個(gè)字符的字號(hào)大小改變量為0.5磅 (Word文檔中字號(hào)的最小變化量為0.5磅),在這種情況下,對(duì)于較大的字體,如四號(hào) (14磅)字以上的文本文檔,其大小改變比例小于3.57%(0.5/14),人的視覺對(duì)這一改變感覺不明顯,算法的隱蔽性符合要求.但是對(duì)于比較小的字體,如小五號(hào) (9磅)字以下的文本,其大小改變比例為5.56%(0.5/9),人的視覺對(duì)這一改變感覺較為明顯,導(dǎo)致算法的隱蔽性變差.在本算法中,不直接改變字符的字號(hào)大小,而是改變字符的橫向縮放比例,縮放比例平均分布在101%、102%、103%和104%,因此對(duì)于任意字號(hào)大小的字體,其縱向高度沒有改變,橫向大小改變的比例都小于或等于4%,人的視覺對(duì)這一改變基本感覺不出來(lái).
Sub openfile() ’此過(guò)程實(shí)現(xiàn)秘密信息的隱藏算法
Dim b As Byte ’定義字節(jié)型臨時(shí)變量b,存放讀取的秘密信息字符
Open"C:Documents and SettingsAdministrator桌面李彥爽新建文件夾 (2)新建文件夾
新建文件夾密文.txt"For Binary As#256 ’打開秘密信息文件
l=LOF(256) ’計(jì)算秘密信息字符長(zhǎng)度
For i=1 To l ’依次讀取秘密信息每個(gè)字符
Get#256,,b ’把讀取的秘密信息字符放入b中
a=b Mod 2
If(a=0)And(b<>0)Then ’當(dāng)二進(jìn)制位為字符ASCII碼值的有效位且為0時(shí)
Selection.MoveRight unit:=wdCharacter,Count:=1,Extend:=wdExtend’選中載體文本中光標(biāo)后面的字符,并把光標(biāo)右移一個(gè)字符
With Selection.Font
.Scaling=101 ’改變選中字符的縮放值為101%
End With
End If
If b=0 Then ’當(dāng)二進(jìn)制位為字符ASCII碼值的擴(kuò)展位時(shí)
Selection.MoveRight unit:=wdCharacter,Count:=1,Extend:=wdExtend’選中載體文本中光標(biāo)后面的字符,并把光標(biāo)右移一個(gè)字符
With Selection.Font
.Scaling=101 ’改變選中字符的縮放值為101%
End With
End If
Selection.MoveRight ’光標(biāo)右移
b=b2
Next j
Next i
Close#256 ’關(guān)閉秘密信息文件
End Sub
Sub newfile() ’此過(guò)程實(shí)現(xiàn)秘密信息的提取
Dim b As Byte
Open"C:Documents and SettingsAdministrator桌面彥爽新建文件夾 (2)新建文件夾新
建文件夾解密.txt"For Binary As#257 ’打開存放提取的秘密信息的解密文件
Selection.EndKey unit:=wdStory,Extend:=wdExtend ’全選載體文本
With Selection.Characters
s=.Count ’計(jì)算載體文本的字符長(zhǎng)度
End With
Selection.HomeKey ’光標(biāo)移到載體文本開頭
For j=1 To s8 ’八個(gè)載體字符隱藏一個(gè)秘密信息二進(jìn)制位字符,不足八位的舍掉
b=0
For i=1 To 8 ’依次讀取嵌入的秘密信息二進(jìn)制位
Selection.MoveRight unit:=wdCharacter,Count:=1,Extend:=wdExtend
With Selection.Font
If.Scaling=100 Then ’縮放值不變,取1
b=b+2^(i-1) ’把讀取的二進(jìn)制轉(zhuǎn)化為十進(jìn)制
End If
End With
Selection.MoveRight ’光標(biāo)右移
Next i
If b<>255 Then ’當(dāng)檢測(cè)不到有效的0時(shí),結(jié)束
Put#257,,b ’把提取的秘密信息寫進(jìn)解密文件中
End If
Next j
Close#257 ’關(guān)閉解密文件,提取秘密信息完成
End Sub
實(shí)驗(yàn)中所選擇的秘密信息文本共包含26個(gè)字符,采用的載體文本為 Word2003文檔,格式為*.doc,文檔包含1019個(gè)字符.提取到的秘密信息為26個(gè)字符,格式為*.txt.所用的信息隱藏時(shí)間不超過(guò)2秒,提取時(shí)間不超過(guò)3秒.隱藏后的文檔和原始文檔的相似度大于95%,提取的秘密信息和原始秘密信息的相似度為100%.實(shí)驗(yàn)結(jié)果如圖2~圖5所示.
圖2 存放秘密信息的文件
圖3 提取出的秘密信息文件
圖4 載體文件
圖5 嵌入秘密信息后的載體文件
從圖4、圖5可以看出,隱藏后的文檔和原始文檔差別很小.本次信息隱藏共修改了從載體文本第1行開始的551個(gè)字符的縮放比例值.如果想要獲得更好的不可見性,可以選擇減少每行修改的字符,這樣可以更好的保證不可見性.
本文設(shè)計(jì)實(shí)現(xiàn)了一種通過(guò)改變文檔字符縮放比例,在Word文檔中嵌入秘密文本的信息隱藏算法,從實(shí)驗(yàn)結(jié)果來(lái)看,所提出的算法不可覺察性好,信息隱藏后文件大小基本不變,具有完全解碼獨(dú)立性等優(yōu)點(diǎn),而且算法實(shí)現(xiàn)復(fù)雜度很小,可以滿足文件隱秘傳輸需要,具有廣闊的應(yīng)用前景.該算法的缺點(diǎn)是隱藏容量受明文長(zhǎng)度的限制,抗排版編輯能力比較弱.當(dāng)然不能期望一種隱藏算法能抵御各種攻擊,在實(shí)際應(yīng)用中可以結(jié)合多種算法,使隱秘通信具有更好的魯棒性.
[1] 梁旭,遠(yuǎn)志永,黃明,等.基于行間距編碼的文本數(shù)字水印算法 [J].信息技術(shù),2008,(3):38-41
[2] 耿紅琴.基于Word文本文檔的信息隱藏技術(shù)研究 [J].科學(xué)技術(shù)與工程,2007,(11):2686-2688
[3] 吳斌.文本信息的隱藏技術(shù) [J].牡丹江教育學(xué)院學(xué)報(bào),2007,(4):100-101
[4] 付兵.基于Word字符RGB值的信息隱藏技術(shù) [J].電腦知識(shí)與技術(shù),2007,(3):1067-1068
[5] 陳振,陳建華.基于Word文本的信息隱藏方法 [J].福建電腦,2006,(2):41-42
[6] Brassil J,Low S,Maxemchuk N,et al.Electronic marking and identification techniques to discourage document copying[J].Proc IEEE,1999,(7):1181-1196
[7] 張浩,鐘尚平.一種以文本內(nèi)容為載體的信息隱藏技術(shù) [J].微處理機(jī),2010,(3):39-42
On Information Hiding Algorithm Based on Changing Character Scaling in Word Document
QIAN Zong-feng1,CAO Xue-jun1,TANG Wei1,LI Yan-shuang2
(1.Department of Teaching and Research,Communication Training Base of GSD,Xuanhua 075100,Hebei,China;2.College of Science,Hebei North University,Zhangjiakou 075000,Hebei,China)
According to the characteristics of word document,this paper presents information hiding algorithm embedding secret message to word document by changing character scaling.It is showed that it is a simple algbrithm to achieve the goal of embedding secret text with larger information hidden capacity than traditional algorithm.It has a promising prospect of wide use in the fields of file transmitting in a secret way.
information hiding;character scaling;word document;text hiding
TP 317.2
A
1673-1492(2011)04-0032-05
來(lái)稿日期:2011-05-16
錢宗峰(1975-),男,河北陽(yáng)原人,總參謀部通信訓(xùn)練基地信息與通信工程教研室主任,副教授,碩士.
劉守義 英文編輯:劉彥哲]
河北北方學(xué)院學(xué)報(bào)(自然科學(xué)版)2011年4期