發布時間:2022-04-02所屬分類:計算機職稱論文瀏覽:1次
摘 要: 摘 要:本文設計了基于 CL-LSB 的數字圖像信息隱藏算法,并使用 Python 編程實現了信息隱藏和信息提取功能。首先對載體圖像應用 Chui-Lian(CL) 多小波變換理論生成信息隱藏區域,對秘密信息進行哈希、加密和編碼等預處理,然后對信息隱藏區域進行位平面分解,在由最低
摘 要:本文設計了基于 CL-LSB 的數字圖像信息隱藏算法,并使用 Python 編程實現了信息隱藏和信息提取功能。首先對載體圖像應用 Chui-Lian(CL) 多小波變換理論生成信息隱藏區域,對秘密信息進行哈希、加密和編碼等預處理,然后對信息隱藏區域進行位平面分解,在由最低有效位(LSB)組成的位平面實施秘密信息嵌入,最后對圖像進行 CL 多小波反變換以生成含密圖像。實驗結果表明,算法的最大嵌入率可達 0.25 bpp,在最大嵌入容量范圍之內,峰值信噪比(PSNR)均大于 55 dB,平均結構相似性指數(SSIM)維持在 0.99,含密圖像與原始圖像相比保持較高的相似度,算法在容量性和不可見性上具有一定的優越性。
關鍵詞:信息隱藏;信息安全;圖像處理;隱私保護
0 引言
目前,在諸多關于信息隱藏技術的研究中,基于數字圖像的信息隱藏技術應用最為廣泛 [1],并且多數信息隱藏算法都是基于運算域的,基于空間域的信息隱藏算法的設計思想主要有:直接修改圖像的某些像素值來隱藏信息、通過直方圖移位來生成隱藏區域、在顏色空間運用顏色遷移理論和組合位平面理論實現信息隱藏、通過將圖像插值放大后在插值空間嵌入隱藏信息等 [2];诳臻g域的算法實現簡單,在嵌入容量和不可檢測性上都有較好的性能,但是這類算法的抗攻擊魯棒性較差。變換域算法通過修改圖像載體的頻率參數來隱藏信息,常見的變換域有離散余弦變換、離散小波變換、多小波變換等。這類算法的抗攻擊魯棒性會比空間域算法好。
上述算法為信息隱藏技術的發展提供了新思路,本文在現有理論的基礎上,應用 CL 多小波變換和最低有效位理論設計并實現了一種新的數字圖像信息隱藏算法:首先對載體圖像進行 CL 多小波變換生成信息隱藏區域,對輸入的隱藏信息按照信息隱藏規則進行哈希、加密和編碼,然后對隱藏區域進行位平面分解,在由最低有效位組成的位平面實施隱藏信息的嵌入,最后對載體圖像進行重構生成含密圖像。實驗證明:本算法在容量和不可見性上具有較好的表現。
1 基于 CL 多小波變換與 LSB 的信息隱藏算法
1.1 隱藏區域
隱藏區域的性質是影響信息隱藏算法的關鍵因素,隱藏區域的好壞主要從區域的能量分布特性和復雜度兩個角度來考慮 。在低能量區域進行信息隱藏能夠滿足信息隱藏不可見性的指標,而在能量高的區域進行信息隱藏能夠使隱藏信息的能量較為均勻地分布在整個區域,能夠滿足信息隱藏算法的魯棒性指標。此外,人對亮度較高的區域和紋理較為密集的區域的敏感性低,在這類區域隱藏信息可以嵌入較多的信息內容并且能夠滿足不可見性的要求。
本文使用 CL 多小波變換對載體圖像進行預處理,使其形成分量子圖分布,再將能量權重相對較大的 LL1 分量子圖進行位平面分解,把由 LSB 組成的位平面作為本算法的信息隱藏區域。
1.2 隱藏規則
在進行信息隱藏之前需要根據信息隱藏規則進行預處理,在制定信息隱藏規則時需要考慮隱藏信息的數據組織方式、信息編碼和使用的嵌入技術問題。
具體隱藏規則如下。規則 1:對于所有文本數據,默認使用 UTF-8 字符集編碼。規則 2:對隱藏信息校驗數據的生成和提取信息的校驗使用 SHA-256 算法完成。規則 3:使用 AES 加密算法對隱藏信息進行加密,加密模式為 CBC,為防止用戶使用弱密碼,加密密鑰由系統隨機生成。規則 4:二進制數據轉換為文本數據時使用 Base64 編碼。規則 5:由系統處理得到的密文、初始向量、校驗數據等統一組織為 JSON 字符串的格式。規則 6:由載體圖像生成的信息隱藏區域 LL1,將各通道分量轉換為灰度圖像,像素值的數據類型統一為 8 位無符號整型;隱藏信息轉換為由“0,1”組成的比特序列,前 4 個字節存放數據大小,其后為隱藏數據;在嵌入數據時將隱藏區域的像素值和隱藏信息的比特序列轉換為一維向量,對隱藏區域進行位平面分解,將隱藏信息按順序嵌入由 LSB 組成的位平面中。
1.3 隱藏算法的運行步驟
如圖 1 所示,信息隱藏算法由載體圖像解析系統、隱藏信息預處理系統和 LSB 嵌入系統組成,下面對隱藏算法的運行步驟進行詳細介紹。
步驟 1:由載體圖像解析系統讀取載體圖像,對圖像進行 CL 多小波變換,生成信息隱藏區域,然后將載體圖像交由 LSB 嵌入系統處理。
步驟 2:由隱藏信息預處理系統讀取隱藏信息,對隱藏信息進行 UTF-8 字符編碼。
步驟 3:對隱藏信息進行 SHA-256 哈希運算,生成校驗數據。
步驟 4:生成隨機密鑰,使用密鑰對隱藏信息進行 AES 加密,得到密文和初始向量。
步驟 5:對密文、密鑰、初始向量和校驗數據進 Base64 編碼,然后轉換為JSON字符串,輸入LSB嵌入系統進行處理。
相關期刊推薦:《信息與電腦》是一本關注計算機及其應用的學術雜志。提供一個政府及相關職能部門、高校、研究機構、經濟及技術專家、信息化軟硬件及解決方案供應商、流通業信息化需求企業以及科技人才共同交流的平臺。雜志的主要特點就是匯集流通業IT業內專家和企業管理者最新的言論和觀點,以及他們的實踐經驗與體會分享,為流通領域的企業提供理論指導和實踐參考。
步驟 6:在 LSB 嵌入系統中,計算圖像隱藏區域大小和隱藏數據大小,將隱藏區域的各個通道分量轉換為一維列向量,并進行位平面分解;將隱藏信息和隱藏數據大小轉換為 “0100101…”形式的比特向量,將隱藏大小數據填充至 4 個字節,然后拼接到隱藏數據之前作為數據頭,然后將比特序列轉換為一維向量,在隱藏區域的 LSB 位平面進行數據嵌入,最后對隱藏區域的位數據進行打包,并恢復隱藏區域圖像原來的維數。步驟 7:對嵌入隱藏信息的載體圖像進行 CL 多小波反變換,生成含密圖像并輸出。
1.4 提取算法的運行步驟
步驟 1:由載體圖像解析系統讀取含密圖像,對含密圖像進行 CL 多小波變換,生成信息隱藏區域并交由 LSB 嵌入系統進行處理。步驟 2:在 LSB 嵌入系統中,將圖像隱藏區域的各個通道分量轉換為一維列向量,然后進行位平面分解,在 LSB 位平面先提取 4 個字節數據,解析隱藏數據的大小,然后按隱藏數據大小提取出隱藏數據,將隱藏數據交由隱藏信息后處理系統操作。步驟 3:在隱藏信息后處理系統中,對提取數據進行解碼,從中解析出密文、校驗數據和初始向量。步驟 4:讀取解密密鑰,使用密鑰和初始向量對密文進行解密,得到明文數據。步驟 5:對明文進行 SHA-256 運算,并與校驗數據比較,若數據校驗一致,則對明文進行 UTF-8 解碼并輸出,秘密信息恢復成功;否則秘密信息恢復失敗。
2 實驗結果與分析
本文設計的算法在 Windows 10 1809 操作系統中進行了實現和實驗測試,使用的編程語言為 Python 3.6.7rc1,主要使用 NumPy 庫提供的 n 維數組功能處理圖像數據。
2.1 測試結果
本文算法最終以 Python 包的形式實現,編寫的程序可以在 Python shell 里面導入相應的功能模塊并直接使用,也可以通過 Python 的包管理工具 pip 從源碼安裝到自己的電腦,通過 cmd 以命令行的方式使用。測試使用的載體圖像為大小 512*512*3 的 RGB 彩色圖像 Peppers。載體圖像原圖和完成信息嵌入的含密圖如圖 2 所示,通過人的肉眼基本上無法察覺二者之間的差異,含密圖基本上保留了原圖的表征特性,從主觀評價的角度來看,本文算法是可行的,并且具有一定的不可見性。
2.2 性能分析
為定量分析算法的性能,本文采用峰值信噪比(PSNR)、結構相似度指數(Structural Similarity Index,SSIM)和嵌入率(bits per pixel,bpp)作為算法性能的客觀評價指標。 PSNR 和 SSIM 的值越大,說明載體圖像與含密圖像的相似度越高,算法的不可見性越好。嵌入率的值越大,表明可嵌入信息的容量越多,算法的容量性能越好。
對于信息嵌入量與不可見性的測試,使用的測試圖像為 512*512*3 的 RGB 彩色圖像 Peppers,圖像隱藏區域的最大嵌入率為 0.25 bpp,數據大小為 192 kbit,相當于一篇一萬字左右的中文文章經過本算法的加密和信息編碼等處理后得到的數據大小,算法在嵌入容量上有較好的表現。嵌入量與算法的不可見性測試結果如圖 3 所示,隨著嵌入數據的增加,圖片的不可見性隨之降低。在嵌入數據量小于 25 kbit 時,圖片的不可見性受嵌入數據量的影響較為顯著,而當嵌入數據量大于 25 kbit 時,圖片的不可見性隨嵌入數據量的增加而降低的趨勢有所減緩。當嵌入數據量接近本圖的最大嵌入數據大小時,對應的 PSNR 大于 55 dB,可見本算法具有較好的不可見性。
3 結 語
本文提出了一種基于 CL-LSB 的數字圖像信息隱藏算法,對載體圖像進行 CL 多小波變換處理,利用其分量子圖的區域分布特點,選擇能量權重較高的子圖分量 LL1 進行位平面分解,生成信息隱藏區域;對于隱藏信息的加密、校驗等預處理工作,制定了信息隱藏規則;算法的實現使用 Python 編程語言,完成了信息隱藏和信息提取的功能。實驗結果表明,本文算法在容量和不可見性上具有良好的性能表現。——論文作者:趙全友 朱新強
參考文獻
[1] 魏程程 . 數字圖像隱寫與隱寫分析技術的研究 [J]. 信息與電腦 ( 理論版 ),2018(12):213-215.
[2] 張弢 , 慕德俊 , 任帥 .lαβ 與組合位平面技術在信息隱藏算法中的應用 [J]. 計算機工程與應用 ,2009,45(20):10- 12,22.
SCISSCIAHCI