蘇鵬濤,田 澤,劉逸涵
(1. 中國航空工業(yè)西安航空計算技術(shù)研究所, 陜西 西安, 710068;2.集成電路與微系統(tǒng)設(shè)計航空科技重點實驗室, 陜西 西安, 710068)
自人類誕生起,如何保護、傳遞和使用重要信息就始終被關(guān)注。最早被提出的解決方案是加密處理[1],但由于加密后的信息與普通信息有較大差別,造成秘密信息容易暴漏,提高被破解的概率[2]。信息隱藏技術(shù)則是將秘密信息內(nèi)嵌在非密信息中,使不知情者無法察覺秘密信息的存在[3]。1996年劍橋大學(xué)召開的第一屆國際信息隱藏學(xué)術(shù)研討會(First International Workshop on Information Hiding)標(biāo)志著信息隱藏學(xué)的誕生。
隨著互聯(lián)網(wǎng)的普及,越來越多的信息通過圖片和視頻的方式傳遞,如何將重要信息嵌入視頻并借助互聯(lián)網(wǎng)進行傳輸,不僅能提高秘密信息的傳播范圍,同時也能借助互聯(lián)網(wǎng)內(nèi)龐大的非密數(shù)據(jù)有效隱藏秘密信息。
大多數(shù)視頻在編碼為標(biāo)準(zhǔn)NTSC/PAL格式時,由于顯示屏幕在切換數(shù)據(jù)時,色度數(shù)據(jù)在經(jīng)過視頻格式編碼器的低通濾波器時會產(chǎn)生模糊(blurring)和振鈴(ringing)現(xiàn)象,通過使用alpha混合,控制該濾波器的開關(guān)沿的陡峭程度,就能有效改善模糊和振鈴現(xiàn)象[4]。因此,本文提出了一種基于alpha疊加的視頻信息隱藏算法,能夠?qū)?nèi)嵌在像素RGB值的隱藏信息進行操作以實現(xiàn)秘密信息的編解碼,該算法實現(xiàn)原理簡單,可隱藏的數(shù)據(jù)量大,密文和密鑰可分開存儲,有較好的應(yīng)用前景。
Alpha疊加也稱為alpha混合,用來將顯示屏中的某些色度屬性漸變成其他色度屬性,常用于同一屏幕內(nèi)視頻信號的疊加。Alpha的取值范圍是(0,1),顯示控制邏輯通過公式(1.1)的轉(zhuǎn)換公式來實現(xiàn)alpha混合,其中data_out表示疊加后的色度值,gra表示背景色度值,win表示疊加色度值。
dataout=alpha0×gra+alpha1×win1+…+alphan×winn
(1)
需要注意,背景和疊加窗口的alpha值之和不要求為1,以只疊加一個窗口為例,當(dāng)alpha0=0且alpha1=1時,輸出色度為win,當(dāng)alpha0=1且alpha1=0時,輸出色度為gra,其他情況下背景和窗口將按照比例進行疊加。
根據(jù)alpha疊加的原理,可以將秘密信息隱藏在gra和win的像素信息中,通過alpha控制實現(xiàn)信息的隱藏和恢復(fù)。該信息隱藏算法能夠兼容灰度視頻和彩色視頻,對視頻的色度位寬也無要求,其實現(xiàn)原理如圖1所示。
圖1 信息隱藏原理
以常見的24位色(R8G8B8)視頻為例,信息加密的步驟如下:①在正常視頻中我們選取人眼容易忽略的區(qū)域作為隱藏信息的窗口區(qū)域;②將部分隱藏信息寫入窗口視頻像素點的RGB像素值最低兩位;③將該區(qū)域內(nèi)源視頻像素點的RGB像素值的最低兩位也進行修改,嵌入剩余的隱藏信息,④記錄該窗口的位置信息和開窗時間。
秘密信息的解碼過程,步驟為:①根據(jù)窗口位置和開窗時間將窗口視頻與正常視頻進行疊加;②通過alpha 屬性序列恢復(fù)秘密信息視頻片段;③通過掩碼方式丟棄非密信息位,恢復(fù)秘密信息。
該信息隱藏算法將秘密信息植入非密視頻的靜態(tài)背景中,可根據(jù)視屏中人物和場景的變化而動態(tài)調(diào)整加密窗口的位置和加密時間,將視頻疊加需要配置的alpha屬性值、疊加窗口位置和疊加時間作為密鑰,具有很高的保密性。
同時,該算法可以根據(jù)視頻色度的位寬來調(diào)整加密信息的位寬,當(dāng)視頻色度的位寬較小(如16位色R5G6B5)時加密位只取3位(R1G1B1),當(dāng)視頻色度的位寬較大(如30位色R10G10B10)時加密位可以增加為8位(R3G2B3),選取兩位G分量主要是由于人眼對綠色分量的敏感度高。
此外,該算法為了避免潛在信息竊取者發(fā)現(xiàn)秘密信息所處的視頻區(qū)域,采用了視頻復(fù)制的方式將源視頻進行拷貝,假設(shè)兩份視頻分別為Video1和Video2,將兩部分秘密信息分別隱藏在Video1和Video2的疊加窗口數(shù)據(jù)中,傳輸秘密信息時只需將Video1和Video2分別傳輸給信息使用者,并將密鑰(alpha屬性值、疊加窗口位置和疊加時間)以配置程序的方式對視頻進行加載,再以掩碼形式丟棄非密視頻數(shù)據(jù),就能完成隱藏數(shù)據(jù)的恢復(fù)。
正常視頻的幀速率一般在30Hz以上,假設(shè)疊加窗口的規(guī)模為64x64像素點,則在幀速率為30Hz情況下每秒24位色視頻可傳輸?shù)碾[藏數(shù)據(jù)量Q為:
Q=30×64×64=120 KB
假設(shè)一部視頻時長30min,則能夠傳輸秘密信息超過210MB,目前主流VESA視頻的幀速率基本都在60Hz以上,因此該隱藏算法具有很高的數(shù)據(jù)傳輸率。
本算法可以采用ECC校驗實現(xiàn)隱藏數(shù)據(jù)的檢錯和糾錯,假設(shè)按照每64bit隱藏數(shù)據(jù)生成一個8bit校驗數(shù)據(jù)的規(guī)則,其中bit0、bit1、bit2、bit4、bit8、bit16、bit32、bit64均為校驗位,將生成的校驗數(shù)據(jù)拼接在隱藏數(shù)據(jù)尾部內(nèi)部,校驗位生成規(guī)則如圖2所示:
圖2 隱藏信息的校驗位計算
恢復(fù)隱藏信息時,首先從每72位隱藏數(shù)據(jù)中提取bit0、bit1、bit2、bit4、bit8、bit16、bit32、bit64校驗位數(shù)據(jù),然后根據(jù)余下的64位數(shù)據(jù)計算新的ECC校驗數(shù)據(jù),并與原生成的ECC校驗數(shù)據(jù)進行異或,倘若兩個8bit校驗數(shù)據(jù)完全相同,則表示該隱藏數(shù)據(jù)無錯誤或存在無法判斷的錯誤;倘若異或結(jié)果有三位為1,則表示數(shù)據(jù)有一位錯誤并且該錯誤可糾正;倘若異或結(jié)果有一位為1,則表示原校驗數(shù)據(jù)出錯;其他情況表示出現(xiàn)了ECC校驗功能無法糾正的錯誤。
通過增加校驗功能,有效提高了算法的魯棒性,除了ECC校驗外,也可以采用奇偶校驗、CRC校驗等方式提高隱藏信息的可靠性。假設(shè)竊密者試圖篡改加密信息,則秘密信息將無法恢復(fù)出正確的校驗碼,也就失去了篡改的價值。
評價一種信息隱藏算法可以根據(jù)該算法對信息的隱藏程度來評判其隱藏性能,因此本文通過對隱藏數(shù)據(jù)前后同一幀圖像的人眼分析,和圖像均方根誤差和峰值信噪比分析[5],以及馬氏距離分析[6]這三種方式對該算法進行客觀的評價。
圖3為野生動物視頻的某幀圖像,圖4中在沙灘進行了視窗疊加,疊加窗口內(nèi)畫面包含隱藏信息,疊加窗口用白色虛線包圍,兩幅圖像的區(qū)別人眼難以分辨。
圖3 原始奔馬圖像
圖4 隱藏信息的奔馬圖像
圖像均方根誤差(RMSE)和峰值信噪比(PSNR)是評價圖像失真程度的常用度量指標(biāo),設(shè)F(x,y)為原始圖像像素信息,F(xiàn)‘(x,y)為隱藏秘密信息后的圖像像素信息,奔馬圖像為24位色標(biāo)準(zhǔn)VESA格式800×600@60 Hz視頻,隱藏圖像和原始圖像的像素值誤差總和Err為:
則均方根誤差RMSE為:
設(shè)疊加窗口的大小為MxN,隱藏信息信息后圖像均方根信噪比SNR為:
由計算公式可知,圖像的均方根誤差越小和峰值信噪比越高,圖像失真越小,即秘密信息的隱藏效果越好。
奔馬視頻每幀均為標(biāo)準(zhǔn)VESA格式24位色圖像,選取大小分別為32×32、64×32、64×64和128×64的疊加窗口,計算隱藏信息后的奔馬視頻一幀圖像的均方根誤差和峰值信噪比。如表1所示,疊加窗口規(guī)模由32×32增加為128×64,圖像的RMSE和PSNR數(shù)值收斂。
(2)
分析連續(xù)四幀插入隱藏信息的圖像數(shù)據(jù),疊加窗口大小均為64×64,計算四幅圖像與原始圖像的馬氏距離分別為0.96、0.88、1.02和0.93,均在圖像白噪聲的影響范圍之內(nèi),因此采用馬氏距離檢測的方式無法檢測出圖像是否隱藏秘密信息。
表1 隱藏信息后圖像的均方根誤差和峰值信噪比
信息隱藏作為一個開放的研究領(lǐng)域,隨著各學(xué)科研究人員的加入,關(guān)鍵問題逐一被解決,本文提出的基于alpha疊加的信息隱藏算法側(cè)重于算法隱蔽性、隱藏信息容量和算法魯棒性等指標(biāo),并采用人眼分析、圖像均方根誤差和峰值信噪比分析、以及馬氏距離分析三種方式對算法隱蔽性進行了評價,下一步的工作重點是在保證算法隱蔽性的前提下進一步
提高隱藏信息容量,提高算法性能。
[1] Kahn D. The History of Steganography. Lecture Notes in Computer Science 1174, Proceedings of Information Hiding: first intemational workshop, Cambridge, UK, May 30-Junel, 1996, Berlin: Springer -Veriag, 1996, pp: 1-5.
[2] J. Davis, J. MacLean; D, Dampier. Methods of information hiding and detection in file systems. 5th International Workshop on Systematic Approaches to Digital Forensic Engineering, Oakland, CA, United states, SADFE, 2010: 66-69.
[3] Petiteolas F, Anderson R, Kuhn M. Information hiding- a survey. Proc. IEEE, 1999, 87(8):1062-1078.
[4] Keith Jack. Video Demystified[M]. Fifth Edition. New York: Newnes, 2007.
[5] 章毓晉. 圖像處理和分析教程[M]. 北京:人民郵電出版社. 2009.
[6] Taguchi G. Jugulum R. The Mahalanobis-Taguchi Strategy: A Pattern Technology System[M]. New York: Wiley, 2002.