摘 要:為提高無載體信息隱藏的數(shù)據(jù)嵌入容量和通信效率,注意到半構(gòu)造式無載體信息隱藏算法所具有的優(yōu)勢(shì),在仔細(xì)分析幾種社交平臺(tái)的用戶行為習(xí)慣后,提出了一種以社交平臺(tái)的行為習(xí)慣為構(gòu)造原則的半構(gòu)造式無載體信息隱藏算法. 該算法的具體思想通過構(gòu)建小圖標(biāo)庫中的圖標(biāo)與秘密消息的一一映射關(guān)系,將小圖標(biāo)按照一定的原則拼接,完成秘密消息的圖像表達(dá),通過傳遞拼接好的圖片,實(shí)現(xiàn)秘密消息的傳遞. 為了提高小圖標(biāo)的識(shí)別率和整個(gè)隱蔽通信系統(tǒng)的抗干擾能力,算法還引入了卷積神經(jīng)網(wǎng)絡(luò)對(duì)圖標(biāo)庫中的圖標(biāo)進(jìn)行訓(xùn)練和分類,同時(shí)在訓(xùn)練時(shí)特意引入經(jīng)過多種攻擊方式處理過的小圖標(biāo)作為干擾樣本. 實(shí)驗(yàn)和仿真結(jié)果表明,該隱藏方法具備良好的抗攻擊能力,隱藏容量和通信效率得到了實(shí)質(zhì)性的提高,可用于實(shí)際的隱蔽通信系統(tǒng).
關(guān)鍵詞:深度學(xué)習(xí);圖像分類;社交習(xí)慣;隱寫;無載體信息隱藏
《計(jì)算機(jī)科學(xué)與探索》是由中國電子科技集團(tuán)公司主管、華北計(jì)算技術(shù)研究所主辦的國內(nèi)外公開發(fā)行的計(jì)算機(jī)學(xué)報(bào)級(jí)高級(jí)學(xué)術(shù)期刊,中國計(jì)算機(jī)學(xué)會(huì)會(huì)刊。
信息隱藏是將秘密信息隱藏于載體信號(hào)中,并在需要時(shí)將秘密信息提取出來,以實(shí)現(xiàn)隱蔽通信和版權(quán)保護(hù)等目的[1].由于數(shù)字圖像冗余度大且使用廣泛,常被作為信息隱藏載體. 傳統(tǒng)的嵌入式信息隱藏方法是通過對(duì)載體數(shù)據(jù)的修改,將秘密消息嵌入載體中,這必然會(huì)導(dǎo)致含密載體與原始載體間存在一定的差異,難以抵抗隱寫分析檢測[2]. 為提高隱蔽通信的安全性,無載體信息隱藏[3]受到了廣泛關(guān)注.
“無載體”并不是指不需要載體,而是直接以秘密信息為驅(qū)動(dòng)來“生成”或者“獲取”含密載體. 從本質(zhì)上來說,基于圖像的無載體信息隱藏是一種圖像特征的編碼方法. 目前所見的無載體隱藏算法大多都存在數(shù)據(jù)嵌入容量不高的問題,離實(shí)用化還存在一定的距離.
為解決上述問題,本文提出了一種基于社交習(xí)慣的半構(gòu)造式無載體信息隱藏算法[4],其思路是通過挖掘人們的社交行為習(xí)慣,以社交行為習(xí)慣為構(gòu)造原則,設(shè)計(jì)不同的拼接模板,從圖標(biāo)庫中選取圖標(biāo),構(gòu)造出一幅具有實(shí)際意義的圖像并在社交平臺(tái)中傳輸,達(dá)到隱蔽傳輸秘密消息的目的. 其中,小圖標(biāo)庫是在利用深度學(xué)習(xí)的方法對(duì)小圖標(biāo)進(jìn)行訓(xùn)練、分類和識(shí)別的基礎(chǔ)上所建立起來的. 具體來講,是利用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural network,CNN)[5]提取圖像特征并輸入到該模型中進(jìn)行訓(xùn)練,根據(jù)圖像的高維特征對(duì)小圖標(biāo)進(jìn)行識(shí)別和分類,考慮到傳輸過程中的圖像可能會(huì)被攻擊者攻擊,用于訓(xùn)練的圖像數(shù)據(jù)集應(yīng)含有各種干擾樣本. 干擾樣本來之于特殊處理過的圖像數(shù)據(jù),包含有干擾樣本的訓(xùn)練集可以保證訓(xùn)練好的CNN網(wǎng)絡(luò)能夠在含密圖像遭受攻擊后也能對(duì)圖標(biāo)內(nèi)容進(jìn)行正確分類,確保算法的魯棒性.
1 利用AlexNet進(jìn)行遷移學(xué)習(xí)
1.1 深度卷積神經(jīng)網(wǎng)絡(luò) AlexNet 模型
卷積神經(jīng)網(wǎng)絡(luò)具有低網(wǎng)絡(luò)模型復(fù)雜度,可減少權(quán)值數(shù)目等優(yōu)點(diǎn),被廣泛用于深度學(xué)習(xí). 采用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行深度學(xué)習(xí),將圖像直接輸入網(wǎng)絡(luò),可以避免傳統(tǒng)算法中的數(shù)據(jù)重建和復(fù)雜的特征提取過程,能提高算法的運(yùn)行效率. Krizhevsky等[6]提出的卷積神經(jīng)網(wǎng)絡(luò)AlexNet在圖像分類和物體檢測方面的性能優(yōu)于傳統(tǒng)方法,雖然GoogleNet[7]和VGG[8]的性能相比AlexNet 網(wǎng)絡(luò)性能更好,但其網(wǎng)絡(luò)復(fù)雜,訓(xùn)練耗時(shí). 綜合考慮訓(xùn)練及識(shí)別效率等因素,本文選用AlexNet 網(wǎng)絡(luò)進(jìn)行圖像識(shí)別與分類,其網(wǎng)絡(luò)相對(duì)簡單且易于訓(xùn)練,可通過修改神經(jīng)網(wǎng)絡(luò)中的某些參數(shù)提高網(wǎng)絡(luò)性能. 本文所采用的卷積神經(jīng)網(wǎng)絡(luò)AlexNet網(wǎng)絡(luò)層次結(jié)構(gòu)圖如圖 1所示.
不計(jì)輸入層,該模型共8大層,25小層結(jié)構(gòu),前5層是卷積層,接著3層為全連接層[5],全連接的結(jié)果通過Softmax分類器[9]產(chǎn)生1 000個(gè)分類輸出. 在前5層中,每一層都包含有卷積子層[5],縮寫為 Conv1 到 Conv5,每一個(gè)卷積操作后緊跟的是激活函數(shù)reLu處理. 采用reLu激活函數(shù)[10]的作用是使學(xué)習(xí)周期大大縮短,提高運(yùn)算速度和效率. Norm1和Norm2表示歸一化操作. 最后是池化操作,相比平均池化,該神經(jīng)網(wǎng)絡(luò)采用的最大池化(max pooling)[11]可以讓特征參數(shù)減少,使更多的紋理特征信息保留下來. Dropout[6]操作是在兩個(gè)全連接層中,其作用是為了防止訓(xùn)練樣本較少的時(shí)候模型過擬合,最后通過 Softmax 分類器產(chǎn)生多維分類輸出.
1.2 AlexNet結(jié)構(gòu)的修改
由于受時(shí)間和設(shè)備的計(jì)算能力所限,考慮到主要是做模型驗(yàn)證,因此本文在建立圖標(biāo)庫時(shí)只選擇了32種小圖標(biāo). 為獲得較好的分類性能,共享AlexNet的模型訓(xùn)練參數(shù),達(dá)到遷移學(xué)習(xí)的目的[12], 本文改造了部分網(wǎng)絡(luò)結(jié)構(gòu):首先凍結(jié)AlexNet的前7大層,即前23小層,去掉Layer8并在后面加上自己的網(wǎng)絡(luò)輸出層. 本文在新的Layer8中先加一層輸出為64的全連接層,然后接一層relu激活層精簡特征參數(shù),再接一層全連接層(Fullconnection)并接上一層softmax分類器和一層分類輸出層(Output)共輸出32個(gè)類別,改造后的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示.
2 信息隱藏算法
由于受時(shí)間和具體計(jì)算設(shè)備的計(jì)算能力所限,為兼顧隱藏容量、誤碼率、魯棒性以及拼接圖像內(nèi)容的合理性等要求,同時(shí),本文旨在驗(yàn)證算法的可行性,因此,圖標(biāo)庫只構(gòu)建了32種小圖標(biāo),每一個(gè)圖標(biāo)的類別標(biāo)簽對(duì)應(yīng)一段5 bit的二進(jìn)制序列.
2.1 題目規(guī)則的設(shè)計(jì)
為了避免被第三方懷疑,在社交網(wǎng)絡(luò)上傳播的含密載體應(yīng)當(dāng)符合人們的社交習(xí)慣. 為此,利用數(shù)據(jù)挖掘的方法,對(duì)社交平臺(tái)上的各種數(shù)據(jù)進(jìn)行挖掘并進(jìn)行數(shù)據(jù)分析以尋求使用較為廣泛的大眾行為習(xí)慣,按照這種行為習(xí)慣設(shè)計(jì)圖片的拼接原則和思考題的題目規(guī)則. 以將圖片處理成一些有趣味性的智力題目為例,目前設(shè)計(jì)了5種規(guī)則拼接生成含密載體圖像,如:“算價(jià)格”,“分類別”,“編故事”,“找最長”和“找相同”.
2.2 隱藏算法
隱藏秘密信息的流程示意圖如圖3所示,其具體的實(shí)現(xiàn)步驟如下:
步驟 1 輸入一段秘密信息S(信息內(nèi)容可以是中文漢字,英文單詞,二進(jìn)制或者是十進(jìn)制數(shù),也可以選擇生成一段80 bit長度的隨機(jī)二進(jìn)制序列,輸入類型K用2 bit二進(jìn)制數(shù)表示),將待隱藏的信息轉(zhuǎn)換為二進(jìn)制序列E,根據(jù)O的長度判斷需要X張圖片將秘密隱藏完全表達(dá). 將X分為若干段,每段計(jì)算其長度L作為標(biāo)志位一,每張圖像的順序序號(hào)N作為標(biāo)志位二,接著選擇相應(yīng)的輸入類型K作為標(biāo)志位三,這樣最多可構(gòu)成一個(gè)13 bit的二進(jìn)制序列作為標(biāo)志位.
步驟 2 將標(biāo)志位加在含密序列E的前端,得到最終的含密二進(jìn)制序列C. 對(duì)C進(jìn)行分段,每5位為一段,每一段根據(jù)二進(jìn)制序列與自建圖像庫中32種物體標(biāo)簽的映射關(guān)系進(jìn)行查詢,映射為相應(yīng)的類別標(biāo)簽并獲得相應(yīng)的物體圖像,按從左至右、從上往下的順序?qū)⑦@些子圖像拼接起來.
步驟 3 拼接圖像的大小根據(jù)E的長度L相應(yīng)有2×2、3×3、4×4、5×5、6×6共5種模板. 在每個(gè)模板能表達(dá)的位數(shù)區(qū)間內(nèi),不足區(qū)間上限的補(bǔ)隨機(jī)數(shù)至區(qū)間上限值.
步驟 4 對(duì)圖片內(nèi)容的題目描述類型目前設(shè)計(jì)了5種:“算價(jià)格”,“分類別”,“編故事”,“找最長”和“找相同”,其中“找相同”只有拼接圖片為6×6形式的時(shí)候才可能出現(xiàn),因?yàn)閳D像數(shù)據(jù)庫中一共只有32種不同的類別,而6×6的拼接圖片中36張圖片必然有相同的類別. 可以自行指定4種題目類型之一,也可以設(shè)置為隨機(jī)選擇.
論文指導(dǎo) >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >
请填写信息,出书/专利/国内外/中英文/全学科期刊推荐与发表指导