









摘" 要: 現有的圖像隱寫方法大多數都聚焦在增加隱寫容量和提升載密圖像的不可檢測性上,對于載密圖像在遭受裁剪后信息提取完整性的研究相對較少。為解決載密圖像遭受裁剪后無法恢復信息的問題,文中為圖像隱藏任務提出一種基于生成對抗網絡的抗裁剪圖像隱寫方法。該方法基于生成對抗網絡構建一個編碼?解碼網絡,被命名為ACIS。通過在網絡結構中增加評價器,讓評價器與編碼器進行對抗訓練,使得編碼器生成的載密圖像更具有真實性,并提高載密圖像抗隱寫分析能力。同時,在訓練過程中通過添加噪聲層模擬現實傳輸過程中遇到的圖像裁剪攻擊,以提高載密圖像的魯棒性,提升解碼器的解碼準確率。為減少梯度消失問題帶來的影響,使用DenseNet連接并對ACIS網絡結構進行調整以提升解碼準確率。實驗結果表明,ACIS生成的載密圖像在被裁剪掉20%的區域后,仍有70%以上的載密圖像能完整恢復出隱藏信息。同時,該方法還能保持較大的隱寫容量(最高可達到1.37 bpp),是傳統方法0.2~0.4 bpp容量的3~6倍,而且圖像質量高,對于通用的隱寫分析工具也有很好的隱蔽性。
關鍵詞: 圖像隱寫術; 抗裁剪; 生成對抗網絡; 信息隱藏; 自適應; DenseNet連接
中圖分類號: TN911.73?34" " " " " " " " " " " " " 文獻標識碼: A" " " " " " " " " " " 文章編號: 1004?373X(2025)03?0081?06
Anti?cropping image steganography based on generative adversarial network
XU Shichuan1, 2, XU Yang1, 2, ZHANG Sicong1, 2
(1. Key Laboratory of Information and Computing Science of Guizhou Province, Guizhou Normal University, Guiyang 550001, China;
2. School of Cyber Science and Technology, Guizhou Normal University, Guiyang 550001, China)
Abstract: Most of the existing image steganography methods focus on increasing the steganography capacity and improving the undetectability of the encrypted image. There are relatively few studies on the integrity of information extraction after the encrypted image is cropped. It is unable to recover information after the encrypted image is cropped, so a crop?resistant image steganography method based on generative adversarial networks (GANs) is proposed for the task of image hiding. In this method, a GAN?based encoding?decoding network is built, and the network is named ACIS. By adding a critic to the network, the critic and encoder can conduct adversarial training, so as to improve the reality of the encoded images generated by the encoder and improve its anti?steganalysis capability. During the process of training, a noise layer is added to simulate image cropping attacks encountered during real process of transmission, so as to improve the robustness of the encrypted image and improve the decoding accuracy of the decoder. In order to reduce the impact of the vanishing gradient, DenseNet connection is used and the ACIS network structure is fine?tuned to improve the decoding accuracy. Experimental results show that more than 70% of the ciphered image can still completely recover the hidden information after 20% of the area of the ciphered image generated by ACIS is cropped. At the same time, this method can also maintain a large steganography capacity (the maximum can reach 1.37 bpp), which is 3~6 times the capacity (0.2~0.4 bpp) of the traditional method, and the image quality is high, and it is also very concealable for steganalysis tools.
Keywords: image steganography; anti?cropping; GAN; data hiding; self?adaption; DenseNet connection
0" 引" 言
在大數據時代,企業通過對大量客戶的消費數據進行分析,可以為顧客提供大量個性化、定制化的服務,為人們的生活工作帶來了諸多便捷。然而大數據的發展應用也帶來了許多安全方面的問題,比如個人信息泄露、軍事機要被竊取、非法出售個人信息等[1]。目前,保障數據安全的主流方法為:加密和信息隱藏[2]。隱寫術是通過將一些機密數據嵌入到非機密的載體中來隱藏某些秘密數據的技術。不同于隱藏數據真實意義的密碼學,隱寫的最終目的是隱匿數據存在的痕跡以實現隱蔽通信[3],通過隱寫方法生成的隱藏了秘密信息的新圖像稱為載密圖像[4]。
圖像隱寫術本質上是一種強大的圖像表示機制,該機制可以有效地將帶有隱藏信息“噪聲”的載密圖像表示為與載體圖像十分相近的形式[5]。另外,這個過程還要求是可逆的,因為在圖像隱寫術的解碼過程中應該從載體圖像中很好地重構出隱藏信息。傳統方法通常將信息隱藏在空間域、變換域或某些自適應域中,應用最廣泛的方法是將秘密信息寫入到像素點的最低有效位(Least Significance Bit, LSB)中,這個位置對圖像的影響最小[6]。
學術界對圖像隱寫已經進行了廣泛的研究,在這里簡要討論一些圖像隱寫術的代表性工作以及神經網絡與圖像隱寫術相關的一些技術。
傳統圖像隱寫算法簡要地分為三種類型:基于空間域的、基于頻率域的和自適應的隱寫算法。最常用的空間域隱寫算法是LSB,但LSB隱蔽性較差,可以通過某些通用的隱寫分析方法[7?8]輕松檢測出來。其他空間域隱寫算法還包括像素值差法[9](PVD)、直方圖位移法、多位平面法、調色板法等。頻率域隱寫算法則在各種頻率域中進行圖像隱寫[10],例如:文獻[3]中使用DCT系數符號將秘密信息寫入載體圖像的離散余弦變換域中。
自適應隱寫算法可以自動識別圖像中適當的隱寫位置(通常選取的區域是紋理較復雜的位置)。自適應算法雖然遵循了最小化嵌入偏差的策略,但是仍然沒有完全消除載密圖像存在的修改痕跡,隱寫算法在信息寫入過程中會對載體圖像的統計特征造成改動,自適應隱寫算法只能減少這種改動而不能完全消除。
近年來,相繼提出了多種基于深度學習的圖像隱寫算法。文獻[11]的模型在信息提取時需要額外的掩碼。在基于映射關系式的方法中,文獻[12?13]的模型會先建立隱藏信息與目標對象的映射關系,然后利用深度學習模型學習這種映射關系完成信息的隱藏和提取,雖然生成的圖像沒有寫入痕跡,但也導致隱藏的秘密信息很難恢復。
在實際的使用中,載密圖像在傳輸過程中會遭受各式各樣的圖像處理操作,這些操作會改變載密圖像的一些特征,從而使得其中隱藏的信息受損而無法恢復。能抵抗這些攻擊的隱寫算法相對較少,大部分文獻都致力于研究隱蔽性與有效負載容量。
因此,為提高隱寫方法的效果,本文提出基于生成對抗網絡的抗裁剪圖像隱寫方法(Anti?cropping Image Steganography Based on Generative Adversarial Network, ACIS)。
1" 本文方法
1.1" 網絡結構
在本文中提出基于生成對抗網絡構造的網絡結構,由四個模塊組成:編碼器,用于獲取載體圖像和數據張量,并生成載密圖像;噪聲層,向生成的載密圖像中添加噪聲,然后輸入解碼器進行訓練,增強圖像隱寫的魯棒性;解碼器,獲取載密圖像并提取出隱藏的數據張量;評價器,獲取載體圖像與載密圖像并評估,使得編碼器生成更真實的載密圖像。
1.1.1" 編碼器
編碼器網絡負責生成載密圖像[S],其獲取載體圖像[G]和隱藏數據[M∈0,1(D×W×H)],[M]是一個尺寸為[D×W×H]的數據張量。
由于在訓練的過程中添加了噪聲,導致圖像特征損失嚴重,需要添加更多的特征來解決梯度消失問題,因此在模型中使用DenseNet網絡進行密集連接,以降低梯度消失帶來的影響。DenseNet采用了比較特別的密集連接機制,即網絡結構中的所有層相互連接,每一層都使用其前面所有層的輸出作為額外的輸入。在DenseNet中,每一層都會與前面所有層在通道維度上拼接在一起并作為下一層的訓練輸入,且每一層的特征圖大小是相同的。
對于一個[L]層的網絡,DenseNet共包含[LL+12]個連接,該網絡連接不同層的特征圖以達到特征重用的目的。網絡在[l]層的輸出為:[xl=Hlxl-1];對于ResNet來說,其增加來自上一層輸入的函數以增加額外的特征:[xl=Hlxl-1+xl-1];而在DenseNet中,該網絡會連接前面所有層的輸出作為輸入:[xl=Hlx0,x1,…,xl-1]。其中[Hl(·)]為非線性轉化函數。
模型ACIS有兩種編碼器結構(見圖1):一種是四層卷積層的初始模型ACIS4;另一種是有五層卷積層的改進模型ACIS5。
1) 初始模型ACIS4
用卷積塊處理載體圖像[G]獲得一個尺寸為32×[W]×[H]的特征圖[a]。
[a=Conv3→32G] (1)
將需要隱藏在[G]中同樣尺寸的[M]在[D]維度上拼接到特征圖[a],然后使用channel為32的卷積層處理得到[b]。
[b=Conv32+D→32Cata,M] (2)
接著使用密集連接機制,將每層網絡的輸出進行連接,然后再作為下一層網絡的輸入,依次將[a]、[b]、[M]進行連接再經過卷積塊處理得到特征圖[c],再將[a]、[b]、[c]、[M]依次連接后經過卷積塊得到特征圖[d]。最后采用殘差網絡思想,為使得載密圖像與載體圖像分辨率保持一致,將[G]與[d]相加得到[S]。
[c=Conv64+D→32Cata,b,Md=Conv96+D→3Cata,b,c,MEn0G,M=G+d] (3)
2) 改進模型ACIS5
在初始模型上添加一層卷積層,使得解碼準確率提升了10%。
[e=Conv96+D→32Cata,b,c,Mf=Conv128+D→3Cata,b,c,e,MEn1G,M=G+f] (4)
式中:[M]為隱藏在[G]中的秘密信息,[M∈0,1(D×W×H)];[EnG,M]為編碼器。最終載密圖像[S]由這兩個編碼器之一輸出,[S=En0,1}G,M],輸出的圖像與載體圖像[G]具有相同的分辨率與隱藏數據位數[D]。該編碼器的每層卷積層kernel大小為3,stride為1,padding為“same”,使用一個Leaky ReLU函數和BN層組成。初始模型ACIS4與改進模型ACIS5中[d]和[f]作為網絡結構的最后一層,只需經過一次卷積操作就可得到載密圖像,省略Leaky ReLU函數與BN層。
1.1.2" 噪聲層
經過編碼器生成的載密圖像[S]會在這被添加隨機噪聲,去掉一部分圖像特征后再送入解碼器中去訓練,提高解碼器在復雜情況下的解碼精度。隨機噪聲包含了Crop、Cropout、Drop、Dropout、Scale、Compression、Gaussian Noise,噪聲層隨機給載密圖像[S]添加其中一種噪聲得到噪聲圖像[SN]。噪聲層表示如下:
[SN=Noise3→3S,n] (5)
式中:[n]為添加的噪聲;[Noise]為噪聲層。添加了噪聲的載密圖像[SN]會被送往解碼器進行訓練。
Crop表示裁剪,裁剪掉的區域使用NULL填充;Cropout裁剪后,使用載體圖像的相應區域進行填充;Drop表示隨機丟棄像素點,然后使用NULL填充;Dropout隨機丟棄像素點后使用載體圖像相應點位填充;Scale表示隨機縮放,將載密圖像等比例縮小為原來的80%~100%,原始圖像與縮小后圖像之間的空白區域使用NULL填充;Compression使用DCT變換來生成JPEG壓縮,并將高頻系數設置為零。Gaussian Noise表示對圖像每個像素點添加高斯噪聲,其標準差設置為2。
1.1.3" 解碼器
解碼器負責提取添加了噪聲的載密圖像[SN]中隱藏的信息[M],為解決梯度消失問題,解碼器采用與編碼器一樣的密集連接。先將尺寸為3×[W]×[H]的圖像[SN]輸入解碼器,經過一個輸出channel為32的卷積層得到特征圖[A];[A]再經過一次卷積操作得到特征圖[B],將[A]、[B]連接后再卷積得到特征圖[C];最后將[A]、[B]、[C]連接后進行一次卷積得到恢復數據[M],基本流程如下:
[A=Conv3→32SNB=Conv32→32AC=Conv64→32CatA,BDeSN=Conv96→DCatA,B,CM=DeSN] (6)
解碼器最終得到恢復數據[M],其與隱藏數據[M]之間使用交叉熵損失函數計算損失值,解碼器經過訓練使損失值最小以提高解碼的精度,力求讓恢復數據[M]與隱藏數據[M]保持一致。
解碼器共包含4個卷積層,每個卷積層kernel大小為3,stride為1,padding為“same”,前三層都使用了Leaky ReLU函數和BN層,最后一層省略Leaky ReLU函數與BN層。
1.1.4" 評價器
為了對編碼器的性能進行評價并生成更具真實性的載密圖像,引入一個評價網絡[Cn(S)]。該網絡由三個大小尺寸相同的卷積層組成,輸出形狀均為32×[W]×[H]的特征圖,最后經過[Mean]操作得到一維張量score。在訓練過程中,將載體圖像的標簽設為1,載密圖像的標簽設為0,經過多次迭代使評價器和編碼器對抗訓練,直到評價器無法識別圖像是否為編碼器生成的載密圖像,即評價器對生成圖像的判定值接近于1。
[p=Conv32→32Conv32→32Conv3→32SCnS=MeanConv32→1pscore=CnS] (7)
1.2" 損失函數
為了對編碼器、解碼器還有評價器進行迭代優化,設置了三個損失函數并共同進行優化。
1) 為提高解碼的精度,使用了交叉熵損失函數,數據重構損失為[LM]。
[LM=CrossEntropyDeEnG,M,M] (8)
2) 為提高載密圖像的質量,載體圖像和載密圖像之間的相似程度使用均方誤差來分析,圖像重構損失為[LE]。
[LE=13×W×HG-EnG,M22] (9)
3) 載密圖像的真實性使用評價網絡來評判。
[LR=CnEnG,M] (10)
在整個訓練的過程中,目標是使損失值最小化,在圖像質量、解碼精度以及圖像真實性之間找到一個平衡點:[Minimize(LM+LE+LR)]。
在每一次迭代過程中,將每個載體圖像[G]和一個隱藏信息[M]進行匹配,[M]是一個形狀為[D]×[W]×[H]的隨機比特生成的序列,該序列服從伯努利分布[M~Ber0.5]。
2" 實驗結果與分析
2.1" 實現細節
模型ACIS是通過PyTorch實現的,并使用NVIDIA GeForce RTX 3080 Ti顯卡加速。在訓練中用Adam優化器,學習率為0.001,梯度范數為0.25,critic權值范圍為[-0.1,0.1],batch size為4。
實驗在包含了大量人像、動物、人為和自然景觀等場景的COCO數據集上對模型進行訓練與測試,所使用的COCO數據集包含了80 000張訓練圖像和40 000張測試圖像,這些圖片全部應用到ACIS的模型訓練中。在訓練時隨機裁剪360×360大小的圖像塊來進行訓練,同時采用隨機翻轉和旋轉進行數據增強。模型訓練1個epoch的時間約為2 h,共訓練10個epoch。
2.2" 對比實驗
在本節中對ACIS進行了一些對比實驗,選取文獻[7]中LSB方法和文獻[11]中SteganoGAN方法作為對比方法,從COCO中隨機選取1 000張圖片與所提方法展開對比實驗,實驗設置如下。
1) 對每個隱寫算法都設置3種情形:裁剪10%、裁剪20%、添加水印。分別測試各隱寫算法生成的隱寫圖片解碼的準確率,在圖2中展示無噪聲、裁剪、水印的實施細節。
2) 為了模擬現實傳輸中的情況,不使用正確恢復的比特位數來計算準確率,因為當恢復出的比特位數不是8的整倍數時,無法還原成具體的文字信息。所以這里定義的準確率為:
[Acc=完整恢復信息的圖片數總圖片數] (11)
不同情況下的提取結果如表1、表2所示。
從表1與表2結果可以分析出,在遭受裁剪時,兩種傳統方法就會完全失效,解碼準確率基本為0,幾乎不能完整地恢復出隱藏信息以達到秘密傳遞消息的目的。而ACIS與SteganoGAN都是采用深度學習方法的隱寫算法,具有一定的抗裁剪能力,但兩者經對比,ACIS無論是在裁剪10%還是裁剪20%情況下的抗裁剪能力均高于SteganoGAN。在圖2中,ACIS生成的載密圖像質量較高,且從ACIS隱寫效果圖可以看出載密圖像的質量較高。向隱寫后的圖片添加水印,并不會對隱寫算法的解碼造成太大的困難,所有隱寫算法對應的解碼準確率基本沒有下降。
2.3" 隱寫分析
對于ACIS抗隱寫分析能力的評估,采用廣泛使用的開源工具StegExpose對ACIS生成的載密圖像進行隱寫分析測試。為了衡量ACIS規避這些隱寫分析方法檢測的有效性,從COCO數據集中隨機選擇1 000張圖像,并向每張圖像寫入64 B的隨機信息生成載密圖像,然后使用StegExpose進行隱寫分析,對隱寫分析的結果進行統計并作出ROC曲線如圖3所示。
ROC曲線下面積為0.52,說明ACIS生成的載密圖像可以有效地規避該工具的隱寫分析方法。
3" 結" 語
本文提出了一種基于生成對抗網絡的抗裁剪圖像隱寫方法,在保證較大的隱寫容量與較高的圖像質量的前提之下,顯著提高了模型抗裁剪的能力,同時還具有很強的隱蔽性。后續將繼續改進模型,提出一種能抵抗更多噪聲攻擊的隱寫方法。
注:本文通訊作者為徐洋。
參考文獻
[1] 付章杰,王帆,孫星明,等.基于深度學習的圖像隱寫方法研究[J].計算機學報,2020,43(9):1656?1672.
[2] SETIADI DE R I M, RUSTAD S, ANDONO P N, et al. Digital image steganography survey and investigation (goal, assessment, method, development, and dataset) [J]. Signal processing, 2023, 206: 108908?108936.
[3] ZHU Z Q, ZHENG N, QIAO T, et al. Robust steganography by modifying sign of DCT coefficients [J]. IEEE access, 2019, 7: 168613?168628.
[4] MANDAL P C, MUKHERJEE I, PAUL G, et al. Digital image steganography: A literature survey [J]. Information sciences, 2022, 609: 1451?1488.
[5] LI L, ZHANG W M, CHEN K J, et al. Steganographic security analysis from side channel steganalysis and its complementary attacks [J]. IEEE transactions on multimedia, 2019, 22(10): 2526?2536.
[6] CHAN C K, CHENG L M. Hiding data in images by simple LSB substitution [J]. Pattern recognition, 2004, 37(3): 469?474.
[7] FRIDRICH J J, GOLJAN M, DU R. Detecting LSB steganography in color, and gray?scale images [J]. IEEE multimedia, 2001, 8(4): 22?28.
[8] HAWI T A, QUTAYRI M A, BARADA H. Steganalysis attacks on stego?images using stego?signatures and statistical image properties [C]// 2004 IEEE Region 10 Conference TENCON 2004. New York: IEEE, 2004: 104?107.
[9] HAMEED M A, HASSABALLAH M, ALY S, et al. An adaptive image steganography method based on histogram of oriented gradient and PVD?LSB techniques [J]. IEEE access, 2019, 7: 185189?185204.
[10] KADHIM I J, PREMARATNE P, VIAL P J, et al. Comprehensive survey of image steganography: Techniques, evaluations, and trends in future research [J]. Neurocomputing, 2019, 335: 299?326.
[11] LIU J, ZHOU T P, ZHANG Z, et al. Digital cardan grille: A modern approach for information hiding [C]// Proceedings of the 2018 2nd International Conference on Computer Science and Artificial Intelligence. New York: ACM, 2018: 441?446.
[12] HU D H, WANG L, JIANG W J, et al. A novel image stega?nography method via deep convolutional generative adversarial networks [J]. IEEE access, 2018, 6: 38303?38314.
[13] ZHANG Z, FU G Y, DI F Q, et al. Generative reversible data hiding by image?to?image translation via GANs [EB/OL]. [2019?09?11]. https://onlinelibrary.wiley.com/doi/10.1155/2019/4932782.