基于圖媒介的多形態(tài)即時(shí)信息隱密通信方法與系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于即時(shí)信息安全通信領(lǐng)域,具體涉及一種基于圖媒介的多形態(tài)即時(shí)信息 隱密通信方法與系統(tǒng)。
【背景技術(shù)】
[0002] 隨著智能手機(jī)的廣泛普及和數(shù)據(jù)傳輸速度的大幅增加,當(dāng)今正是自媒體信息的互 聯(lián)網(wǎng)時(shí)代,人們喜歡用手機(jī)自拍或拍攝生活的場景,并通過社交網(wǎng)絡(luò)(如微信、QQ、Facebook 等)分享給好友們,留下當(dāng)時(shí)的心情告白。可見,圖片已經(jīng)成為自媒體信息中最重要的信息 來源。人們在分享圖片時(shí)也在分享著一種心情,有些心情涉及個(gè)人的隱私只愿意開放給指 定的好友,有些心情只愿意自己一人獨(dú)享一一留著今后慢慢品味。如何將這些看似平常可 以公開的圖片承載著我們內(nèi)心真情的告白,而不會造成個(gè)人隱私也隨著互聯(lián)網(wǎng)肆意傳播, 同時(shí)我們或好友隨時(shí)可"翻開"圖片回顧下當(dāng)時(shí)的心情與那些話語呢?為此,針對這種情 況,設(shè)計(jì)一種以圖像為媒介的多形態(tài)即時(shí)信息隱秘通信軟件,具有重要的應(yīng)用價(jià)值與發(fā)展 前景。
[0003] 目前即時(shí)信息通信軟件已經(jīng)有許多,但針對普通大眾即時(shí)信息的安全通信的關(guān)注 較少,也未曾有以圖像為媒介的安全通信模式。與傳統(tǒng)的即時(shí)信息通信軟件相比,本發(fā)明采 用了信息加密和信息隱藏的雙重安全通信模式,有著無可比擬的優(yōu)勢。本發(fā)明以一種全新 載體實(shí)現(xiàn)多媒體信息的交流,采用加密和信息隱藏等手段,將私密的信息(文本、語音或圖 片)加密內(nèi)嵌在普通的圖片中,通過互聯(lián)網(wǎng)傳播或點(diǎn)對點(diǎn)通信,只有懂得加密口令的人才能 解出其中的秘密,否則只是一張看似普通的圖片,不僅增加了朋友之間通信方式的多樣性 和趣味性,而且由于互聯(lián)網(wǎng)圖片的數(shù)量龐大,無法知曉哪張圖片是載有保密信息,也增加了 信息傳播的保密性和可靠性。
[0004] JPEG圖像是目前網(wǎng)絡(luò)應(yīng)用、數(shù)碼相機(jī)及智能手機(jī)等領(lǐng)域使用最廣泛的圖像格式。 但JPEG壓縮算法以其較高的壓縮率取勝,在JPEG圖像中隱藏信息難度較大,信息隱藏要能 夠抵抗JPEG壓縮。雖然目前已經(jīng)有很多在JPEG圖像中嵌入信息的隱寫或水印算法,但隱藏 的信息量不大?,F(xiàn)有相關(guān)研究工作主要集中于文本信息的隱藏,而針對語音和圖片信息的 隱藏則研究極少。文獻(xiàn)[1]所提出的方法,雖然可以實(shí)現(xiàn)1:1的信息隱藏,但在隱藏信息提 取時(shí)需要原始圖像的參與,且信息隱藏對原始圖像質(zhì)量影響較大。田源等人 [2]提出的方法 是在視頻中隱藏彩色圖像。Tamimi等人[3]提出的方法則數(shù)據(jù)嵌入率太低。以上方法均難 以滿足本發(fā)明的應(yīng)用需求。為了滿足本發(fā)明的需求,即大容量、多形態(tài)的信息隱藏的需求, 本發(fā)明所采用的信息隱藏算法是基于文獻(xiàn)[4]所提算法的改進(jìn)。該方法可在長為n=2m比
比特而能嵌入m比特的數(shù)據(jù),具有較高的平均數(shù)據(jù)嵌入效 率和較大的信息嵌入容量,一定程度上緩解了信息隱藏中隱蔽性和嵌入容量之間的矛盾, 并具有較低的時(shí)間復(fù)雜度和較好的結(jié)果,應(yīng)用到JPEG圖像中,對宿主信息的修改不易被察 覺,增強(qiáng)了嵌入信息的不可見性。
[0005] 參考文獻(xiàn):
[1] 詹玲超,黃繼風(fēng),姜林美.一種基于DCT系數(shù)的圖像隱藏方法[J].計(jì)算機(jī)技術(shù) 與發(fā)展,2006,16 (10) :39-41.
[2] 田源,程義民,王以孝.一種新的數(shù)據(jù)隱藏方法[J].電子學(xué)報(bào),2004, 32(9) :1444-1447.
[3]TamimiAA,AbdallaAM,Al-Allaf0.HidinganImageinsideanother ImageusingVariable-RateSteganography[J].InternationalJournalofAdvanced ComputerScience&Application, 2013, 4(10):18-21.
[4] 邱應(yīng)強(qiáng),程義民,謝春輝,等.一種基于JPEG壓縮圖像的信息隱藏方法[J]. 電路與系統(tǒng)學(xué)報(bào),2008,13(5):129-135.。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的在于提供一種基于圖媒介的多形態(tài)即時(shí)信息隱密通信方法與系統(tǒng), 可對即時(shí)信息進(jìn)行加密、隱藏、傳輸、提取等操作,實(shí)現(xiàn)即時(shí)信息的安全通信。
[0007] 為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案是:一種基于圖媒介的多形態(tài)即時(shí)信息隱密 通信方法,包括如下步驟, 51 :用戶輸入密碼,通過哈希算法生成信息隱藏密鑰; 52 :將待傳輸即時(shí)信息轉(zhuǎn)換為二進(jìn)制數(shù)據(jù),結(jié)合步驟Sl生成的信息隱藏密鑰,形成待 隱藏信息; 53 :選取一載體JPEG圖像,經(jīng)過熵解碼,獲得一系列8X8子塊DCT系數(shù)量化后的數(shù)據(jù) 序列; 54 :在步驟S3獲得的每一 8X8子塊中,根據(jù)待隱藏信息的大小選取相應(yīng)部分的中低頻 量化系數(shù)的低位按原順序排列組成宿主可修改向量,并根據(jù)待嵌入的待隱藏信息確定修改 數(shù)位信息,然后修改宿主數(shù)據(jù),嵌入待隱藏信息; 55 :將步驟S4用修改后的宿主信息直接取代相應(yīng)的量化系數(shù)低位后,將含隱藏信息的 8X8DCT域量化系數(shù)序列進(jìn)行熵編碼,得到嵌入隱藏信息后的JPEG壓縮圖像數(shù)據(jù); 56 :將步驟S5獲得的JPEG壓縮圖像數(shù)據(jù)進(jìn)行傳輸及分享后,輸入用戶密碼,采用與所 述步驟S4至S5相逆的過程,即可獲取用戶傳輸?shù)募磿r(shí)信息。
[0008] 在本發(fā)明一實(shí)施例中,所述待傳輸即時(shí)信息為文本信息、語音信息或JPEG圖像信 息。
[0009] 在本發(fā)明一實(shí)施例中,所述JPEG圖像信息隱藏至載體JPEG圖像的方式如下: 步驟S31 :轉(zhuǎn)換為二進(jìn)制數(shù)據(jù): 將待隱藏的JPEG圖像,經(jīng)過熵解碼,獲得一系列8X8子塊DCT系數(shù)量化后的數(shù)據(jù)序 列;設(shè)所述待隱藏JPEG圖像亮色分量Y其中一子塊DCT系數(shù)量化后的8X8數(shù)據(jù)矩陣為 H(i,j);將8X8數(shù)據(jù)矩陣H(i,j)分解為A和B兩個(gè)矩陣,分解方式如下: H= 8*A+B 取出矩陣A和B中的非零數(shù)據(jù),即需隱藏的數(shù)據(jù),每個(gè)數(shù)據(jù)可用3個(gè)比特表示,數(shù)據(jù)按ZigZag順序,并將采用比特表示完的A和B矩陣合并,且用000表示為A和B矩陣的間隔, 形成二進(jìn)制數(shù)據(jù);另,因矩陣數(shù)據(jù)的位置需要標(biāo)識,故用矩陣P(i,j)表示H(i,j)中正數(shù)的 位置;用矩陣N(i,j)表示H(i,j)中負(fù)數(shù)的位置; 步驟S32 :將載體JPEG進(jìn)行熵解碼,獲得一系列8X8子塊DCT系數(shù)量化后的數(shù)據(jù)序列; 取其中5個(gè)8X8子塊來隱藏步驟S31中待隱藏JPEG圖像轉(zhuǎn)換后的1個(gè)8X8子塊數(shù)據(jù)的 二進(jìn)制和位置信息,其中, 1) 第1子塊,利用奇偶性可隱藏正數(shù)位置矩陣P(i,j); 2) 第2子塊,利用奇偶性可隱藏負(fù)數(shù)位置矩陣N(i,j); 3) 第3、4、5子塊,隱藏二進(jìn)制數(shù)據(jù)。
[0010] 在本發(fā)明一實(shí)施例中,所述步驟S3至S5的具體實(shí)現(xiàn)方式如下: 設(shè)n為可修改宿主數(shù)據(jù)長度,m為待隱藏?cái)?shù)據(jù)長度,且有屬 藤為可修改宿主數(shù)據(jù)n維列向量,I? = 為待嵌入隱藏信息 組成的m維列向量,為待隱藏信息隱藏后生成的n維宿主信息列向量;I#嘯$__$為n維密鑰流列向量;令矩陣
階單位矩陣席P-個(gè)m階方陣f:構(gòu)成,其中,m階方陣滿足 m階I/T矩陣如下:
令m.維列向量産為:
再令縱維二值列向量義=:1?.來表述隱藏信息數(shù)據(jù)與i的距離,其中,:鎮(zhèn)為模2運(yùn) 算; 若_=:蠻,則有1:=_,宿主向量茲不作改變,即獲氧有;
,則對屬中每一值為"1"的行,一定能 在子陣/中找到唯一的相應(yīng)行值為"1"的列向量,共I個(gè)列向量^…可使得: 若_中"1"的個(gè)數(shù)|為:__|:.____,則其中"0"的個(gè)數(shù)_為:___:;因此,則對i中每一值為"〇"的行,一定能在子陣I:中找到唯一的相應(yīng)行值為"〇"的列向量,共I個(gè)列 向量穩(wěn)|議_釋_ ;當(dāng):|為奇數(shù)時(shí),可使得:1:???顯,義輪;當(dāng)|為偶數(shù)時(shí),通過替換J 列中任意一列為沖的對應(yīng)列,記為i|],可使得::
若謂全為"1"時(shí),有I^I釋; 根據(jù)選定列向量所對應(yīng)的位置對&進(jìn)行修改,BP:
[0011] 在本發(fā)明一實(shí)施例中,所述步驟S6,對JPEG壓縮圖像數(shù)據(jù)隱藏信息的提取,只需 計(jì)算f= 即可,即:
〇
[0012] 本發(fā)明還提供了一種基于圖媒介的多形態(tài)即時(shí)信息隱密通信系統(tǒng),包括用于將待 傳輸即時(shí)信息轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)化模塊、將用戶輸入密碼生成信息隱藏密鑰的加 密模塊、用于將經(jīng)所述數(shù)據(jù)轉(zhuǎn)化模塊轉(zhuǎn)換后的二進(jìn)制數(shù)據(jù)嵌入至載體JPEG圖像中的信息 隱藏模塊、實(shí)現(xiàn)嵌有二進(jìn)制數(shù)據(jù)信息的JPEG圖像傳輸及分享的數(shù)據(jù)傳輸模塊以及用于提 取嵌有二進(jìn)制數(shù)據(jù)信息的JPEG圖像中的二進(jìn)制數(shù)據(jù)的信息提取模塊;還包括一便于用戶 調(diào)用系統(tǒng)功能的API接口。
[0013] 在本發(fā)明一實(shí)施例中,所述待傳輸即時(shí)信息為文本信息、語音信息或JPEG圖像信 息。
[0014] 在本發(fā)明一實(shí)施例中,所述JPEG圖像信息隱藏至載體JPEG圖像的方式如下: 步驟S31 :轉(zhuǎn)換為二進(jìn)制數(shù)據(jù): 將待隱藏的JPEG圖像,經(jīng)過熵解碼,獲得一系列8X8子塊DCT系數(shù)量化后的數(shù)據(jù)序 列;設(shè)所述待隱藏JPEG圖像亮色分量Y其中一子塊DCT系數(shù)量化后的8X8數(shù)據(jù)矩陣為 H(i,j);將8X8數(shù)據(jù)矩陣H(i,j)分解為A和B兩個(gè)矩陣,分解方式如下: H= 8*A+B 取出矩陣A和B中的非零數(shù)據(jù),即需隱藏的數(shù)據(jù),每個(gè)數(shù)據(jù)可用3個(gè)比特表示,數(shù)據(jù)按ZigZag順序,并將采用比特表示完的A和B矩陣合并,且用000表示為A和B矩陣的間隔, 形成二進(jìn)制數(shù)據(jù);另,因矩陣數(shù)據(jù)的位置需要標(biāo)識,故用矩陣P(i,j)表示H(i,j)中正數(shù)的 位置;用矩陣N(i,j)