專利名稱:一種基于關(guān)鍵詞替換的文本密寫方法
技術(shù)領(lǐng)域:
本發(fā)明屬信息安全領(lǐng)域,涉及一種基于關(guān)鍵詞替換的文本密寫方法。
背景技術(shù):
Meganography (密寫術(shù)、隱寫術(shù))是一門關(guān)于信息隱藏的技巧與科學(xué),所謂信息隱藏(informationhiding)指的是不讓除預(yù)期的接收者之外的任何人知曉信息的傳遞事件或者信息的內(nèi)容。現(xiàn)代的密寫技術(shù)主要是依靠在圖像、音頻、視頻等大容量的文件中隱藏信息。還有一種特殊的信息隱藏技術(shù),是1983年Simmons提出的閾下信道(subliminal channel),狹義的閾下信道主要采用數(shù)字簽名等來實(shí)現(xiàn)消息隱匿,但是閾下信道可以被封閉,并且利用數(shù)字簽名傳輸?shù)拈撓孪⑼芏獭?梢?,目前的信息隱藏技術(shù)要么需要依靠大文件作為載體,要么只能傳輸很短消息,偽裝文本(載體,covertext)利隱秘文本 (stegotext,這里稱為原文)相比較大很多,信道利用率不高。一旦被禁止發(fā)送圖片音頻、 視頻等大容量的文件,不允許進(jìn)行數(shù)字簽名的情況下,秘密消息的隱匿就無法實(shí)現(xiàn),而信息隱藏利閾下信道問題往往是針對被監(jiān)視的因犯之類的背景的,監(jiān)管入完全可以禁止任何可能隱匿消息的行為。我們也曾經(jīng)設(shè)計(jì)了一種采用流密碼來控制子密鑰的文本密寫方法,但是,得到的偽裝文本雖然具有誤導(dǎo)性,但是由于是流密碼產(chǎn)生的密鑰序列,偽裝文本是根據(jù)密鑰序列產(chǎn)生的,不能隨意去設(shè)置偽裝文本,本發(fā)明設(shè)計(jì)了一種可以任意誤導(dǎo)對方的密寫方法。
發(fā)明內(nèi)容
本發(fā)明旨在克服現(xiàn)有密寫方法冗余量大,依賴于圖像、語音數(shù)據(jù)的缺點(diǎn),提供一種對文本進(jìn)行密寫的方法,并且可以具有誤導(dǎo)的功能。與加密不一樣,密寫的偽裝文本直接進(jìn)行傳遞,對方會以為是明文,所以可以直接去誤導(dǎo)對方。為具備誤導(dǎo)功能,在本發(fā)明中,設(shè)計(jì)了采用類似完形選抒題密寫的方式,它需要有一個(gè)關(guān)鍵詞數(shù)據(jù)庫,在數(shù)據(jù)庫中,把相似、相近、相反或者可以替代的關(guān)鍵詞放在一個(gè)相同的組中。密寫的時(shí)候,打開文件,讀取文本的內(nèi)容,密寫時(shí)候把關(guān)鍵詞替換成為具有相同性質(zhì)的關(guān)鍵詞,這一個(gè)關(guān)鍵詞與原關(guān)鍵詞意義相近、相反或者具有替代性。密寫的時(shí)候,密寫系統(tǒng)將這一組中的所有的同一組中的關(guān)鍵詞顯示出來,密寫則可以進(jìn)行選擇,將文本中的關(guān)鍵詞按照順序替換為自己選擇的關(guān)鍵詞,并且依據(jù)替換的位置差異而生成一個(gè)密鑰,便于提取原文本的時(shí)候能夠正確還原。由于文本中的關(guān)鍵詞都是被用相似、相近和相反的關(guān)鍵詞代替的,因而偽裝文本具有誤導(dǎo)作用。關(guān)鍵詞數(shù)據(jù)庫是一個(gè)基礎(chǔ)性的數(shù)據(jù)庫,在設(shè)計(jì)的時(shí)候,為了保證密寫和提取的唯一可逆性必須禁止一個(gè)關(guān)鍵詞出現(xiàn)在兩組關(guān)鍵詞中。因?yàn)槿绻P(guān)鍵詞有包含關(guān)系,比如關(guān)鍵詞數(shù)據(jù)庫中有中華,也有中華人民共利國。此外,如果一個(gè)關(guān)鍵詞出現(xiàn)在數(shù)據(jù)庫的兩組關(guān)鍵詞中,則加密利解密也會遇到歧義而無法得到確定的結(jié)果的問題。此外為了避免歧義,關(guān)鍵詞之間互相不存在包含關(guān)系,不能有重合。
在進(jìn)行替換的時(shí)候,有些關(guān)鍵詞的替換是固定的、自動進(jìn)行的,而有些關(guān)鍵詞則是由發(fā)送者來自己隨心所欲選擇。這樣的誤導(dǎo)效果更好。在每一組關(guān)鍵詞中,有一個(gè)屬性代表是否是固定的替換1)如果是固定的替換, 這樣的固定替換的組中只有兩個(gè)詞,當(dāng)然一般這樣的替換是一對反義詞。2)如果是非固定的替換,在數(shù)據(jù)庫中,每一個(gè)關(guān)鍵詞在這一組中都有一個(gè)編號,從0,1,一直到n-1,其中η 為這一組中的關(guān)鍵詞數(shù)目。密寫的時(shí)候,將所有這一組中的關(guān)鍵詞都顯示出來,讓發(fā)送者選擇其中的關(guān)鍵詞替換,系統(tǒng)記錄關(guān)鍵詞替換的關(guān)系,并且以此來生產(chǎn)一個(gè)密鑰,密鑰k = a-b mod(n),其中a是原文中的關(guān)鍵詞,b是被選中進(jìn)行替換的關(guān)鍵詞的編號。這樣可以保證提取原文的時(shí)候能夠根據(jù)對應(yīng)關(guān)系恢復(fù)原文。密鑰只是針對非固定的替換,對于固定的替換,直接根據(jù)固定的對應(yīng)關(guān)系提取原文的關(guān)鍵詞。密寫完成以后,就會根據(jù)原文中關(guān)鍵詞的序列生成了一個(gè)密鑰k的序列,解密的時(shí)候用這個(gè)序列進(jìn)行解密,逐一計(jì)算a = b+k mod (η),就可以確定原文中的關(guān)鍵詞。根據(jù)數(shù)據(jù)庫中每一組中關(guān)鍵詞的最大數(shù)目max {η},計(jì)算[log2max{n}]+l,即可以得出密鑰k編碼需要的最少比特?cái)?shù),其中[]表示取整。由于密寫本身是偽裝成明文的形式,對手并不知道已經(jīng)經(jīng)過了密寫,所以關(guān)鍵詞數(shù)據(jù)庫需要保密,特別是那些固定的關(guān)鍵詞替換的部分。密寫不同于加密,加密是可以讓對方知道加密過程的存在的,而密寫則不應(yīng)該,而且偽裝文本應(yīng)該是一個(gè)正常的,有意義的文本或者圖像之類的,這樣才能夠起到誤導(dǎo)的效果,本發(fā)明采用關(guān)鍵詞替換,發(fā)送者選擇關(guān)鍵詞使得偽裝的文本具有意義。由于該密寫方法只是對文本內(nèi)容進(jìn)行替換,因此,對于文檔的密寫需要先打開文檔,比如先打開word或者txt文檔,讀取里面的文本內(nèi)容,再對文本內(nèi)容進(jìn)行偽裝替換,最后將替換后的文本進(jìn)行保存,而提取隱秘信息的過程則是一個(gè)相反的過程。
具體實(shí)施例方式下面舉例說明假設(shè)現(xiàn)在要對一個(gè).txt文本文件進(jìn)行密寫,其文本的內(nèi)容為“今天是星期一”。在系統(tǒng)的關(guān)鍵詞數(shù)據(jù)庫中,“今天”對應(yīng)的一組關(guān)鍵詞是“明天”、“后天”,替換屬性是非固定替換;“是”對應(yīng)的一組關(guān)鍵詞是“不是”,替換屬性是固定替換。數(shù)據(jù)庫中所有組中關(guān)鍵詞最多的一組有15個(gè)關(guān)鍵詞,即可得出密鑰k只需要4個(gè)比特,因此設(shè)定每一個(gè)關(guān)鍵詞對應(yīng)的k為4比特。密寫的時(shí)候,先用記事本打開文本文件,讀取內(nèi)容。然后逐一在文本中搜索是否有關(guān)鍵詞,根據(jù)關(guān)鍵詞的屬性進(jìn)行相應(yīng)替換。今天由于是關(guān)鍵詞,而且是非固定的,所以,將今天、明天、后天全部顯示出來,它們對應(yīng)的編碼分別為0,1,2,發(fā)送者進(jìn)行選抒,比如發(fā)送者選擇后天,則k = 0-2mod(3) = 1,我們?nèi)?001作為密鑰,并且將它寫入總密鑰的最前面的 4比特中,后面如果有關(guān)鍵詞,繼續(xù)按照順序往后寫。接著對文本繼續(xù)按照順序掃描和搜索, 發(fā)現(xiàn)“是”是關(guān)鍵詞,且為固定的替換,所以直接將“是”替換為“不是”。得到偽裝文本“后天不是星期一”,將文本存入txt文件,作為偽裝文本文件,總密鑰為0001。提取原文的時(shí)候,打開文本文件,讀取“后天不是星期一”,在文本中搜索,后天是關(guān)鍵詞,所以讀取總密鑰中最前面的4比特,0001,后天在數(shù)據(jù)庫中的該組中的編號為2,a =2+1 mod(3) =0,所以取編號為0的關(guān)鍵詞,即今天。接著搜索到“不是”是關(guān)鍵詞,根據(jù)屬性,直接將它還原為是。因此,可以得到原始的文本為“今天是星期一”,將它存入txt文件,即得到了原始文件。
權(quán)利要求
1.一種基于關(guān)鍵詞替換的文本密寫方法,其特征在于是針對文本的密寫,將文件打開, 讀取文本,進(jìn)行一定的關(guān)鍵詞替換,由于替換的詞可能和原來的詞意義相近、相反和類似, 替換后的文本依然具有意義,并且可能與原來的意義相近、相反,使之具有隨意誤導(dǎo)的功能。
2.如權(quán)利要求1所述的基于關(guān)鍵詞替換的文本密寫方法,其特征在于在進(jìn)行固定替換的時(shí)候,直接將一個(gè)關(guān)鍵詞替換為數(shù)據(jù)庫中規(guī)定的關(guān)鍵詞,無需生成密鑰,提取原文無需利用密鑰。
3.如權(quán)利要求1所述的基于關(guān)鍵詞替換的文本密寫方法,其特征在于在進(jìn)行非固定替換的時(shí)候,發(fā)送者可以直接選擇自己想要用于誤導(dǎo)監(jiān)聽者的關(guān)鍵詞,根據(jù)關(guān)鍵詞和原來關(guān)鍵詞的對應(yīng)關(guān)系,生成子密鑰,提取原文時(shí)根據(jù)對應(yīng)的子密鑰來還原原文中的關(guān)鍵詞,密鑰的對應(yīng)關(guān)系是根據(jù)關(guān)鍵詞的先后順序在總密鑰中截取固定長度的對應(yīng)子密鑰。這種發(fā)送者選擇關(guān)鍵詞的方法可以明顯提高誤導(dǎo)的針對性,達(dá)到很好的誤導(dǎo)效果。
全文摘要
本發(fā)明涉及一種基于關(guān)鍵詞替換的文本密寫方法,通過兩種不同形式的關(guān)鍵詞替換,使得發(fā)送者可以將重要的關(guān)鍵詞替換為自己希望的關(guān)鍵詞,達(dá)到隨心所欲的誤導(dǎo)目的。在密寫的時(shí)候,可以隨意選擇關(guān)鍵詞,并且根據(jù)替換前后的關(guān)鍵詞之間的關(guān)系生成密鑰,接受者根據(jù)總密鑰可以提取原文。由于替換的關(guān)鍵詞是發(fā)送者確定的,因而具有很好的針對性,誤導(dǎo)效果更好,不容易暴露破綻。在一個(gè)截獲到偽裝文本的監(jiān)聽者(對手)看來,發(fā)送的偽裝文件應(yīng)該是原文,因?yàn)槲谋居幸饬x,而如果是經(jīng)過加密一般是無意義的,并且其他的密寫方法,比如在視頻、音頻文件中的密寫需要有多媒體文件,豈不知原文經(jīng)過密寫處理,具有誤導(dǎo)的功能,甚至于偽裝文本的意義和原文意義相反。
文檔編號G06F21/24GK102169535SQ20111009430
公開日2011年8月31日 申請日期2011年4月11日 優(yōu)先權(quán)日2011年4月11日
發(fā)明者王勇 申請人:桂林電子科技大學(xué)