文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2016.04.033
中文引用格式: 溫濤,陳夠喜,,李瑞林. 互動式《俄羅斯方塊》游戲安全隱寫[J].電子技術(shù)應(yīng)用,,2016,42(4):120-123.
英文引用格式: Wen Tao,,Chen Gouxi,,Li Ruilin. Security steganography in interactive Tetris game[J].Application of Electronic Technique,2016,,42(4):120-123.
0 引言
信息隱藏是指通信雙方在有第三方的監(jiān)視下,將秘密信息以一種不可見的方式傳輸,,常被應(yīng)用于軍事領(lǐng)域等一些重要場合,。信息隱藏技術(shù)一直是信息安全領(lǐng)域的重要組成部分,在過去的20年內(nèi),,信息隱藏技術(shù)得到極大的發(fā)展,。首先是隱藏域的擴(kuò)大,從剛開始的空域,、頻域,,到近些年新提出的加密域[1]等,它們都是將載體做信號變換處理,,然后將秘密信息嵌入到變換后的載體中,,第三方無法輕易判斷出載體是否攜帶秘密信息;其次是隱藏算法的增加,,最開始提出的是圖像空域LSB算法[2],,該算法嵌入容量大且易實(shí)現(xiàn),使用極為廣泛,,但是容易被卡方檢驗(yàn)等統(tǒng)計分析方法判斷出是否攜帶有秘密信息,;DE算法[3]是最常見的可逆隱藏算法,但是由于嵌入容量較小,魯棒性較差,,受到壓縮,、變形等攻擊后不能無損的恢復(fù),實(shí)際情況中依舊不被廣泛使用,;最后是隱藏載體的增多,,從被研究最早同時也是最徹底的圖像載體[4]和音頻載體,到PowerPoint文件[5]和TCP幀[6]等載體中都可以實(shí)現(xiàn)信息隱藏,。
在游戲中隱藏信息以實(shí)現(xiàn)隱秘通信引起一些國內(nèi)外學(xué)者的注意,,他們利用游戲的各種特點(diǎn),在不改變游戲規(guī)則的前提下,,同樣實(shí)現(xiàn)信息隱藏。吳軍等[7]提出一種基于《七巧板》游戲的圖像信息偽裝算法,,將機(jī)密數(shù)字圖像和載體圖像分成適當(dāng)?shù)男K,,按一定的條件尋找匹配關(guān)系, 然后將描述匹配關(guān)系的參數(shù)經(jīng)編碼后隱藏在載體圖像之中,到接收方提取出描述匹配關(guān)系的參數(shù),然后利用這些匹配關(guān)系恢復(fù)出機(jī)密圖像。Hernandez-Castro等[8]提出在游戲中實(shí)現(xiàn)信息隱藏的框架,,并將其應(yīng)用于《圍棋》游戲中,;Lee等[9]提出在《迷宮》游戲中的隱藏方法,將信息隱藏在解密該迷宮的路徑中,,只有知道這種方法的人才可以獲取到秘密信息,。但是,它們的嵌入容量都受到游戲自身大小的限制,;Zhan-He[10]等在《俄羅斯方塊》游戲中實(shí)現(xiàn)信息隱藏,,將游戲中7種不同的板塊抽象為數(shù)字0~6,采用了基于七進(jìn)制而非廣泛應(yīng)用的二進(jìn)制編碼秘密信息,。
本文同樣提出一種基于《俄羅斯方塊》游戲的信息隱藏方法,,與文獻(xiàn)[10]不同的是,本文的方案適用于二進(jìn)制編碼表示的信息,,且在嵌入容量方面優(yōu)于文獻(xiàn)[10],。
1 關(guān)于《俄羅斯方塊》游戲
《俄羅斯方塊》是由俄羅斯人阿列克謝·帕基特諾夫發(fā)明的一款休閑游戲。該游戲由4個小方塊組成的不同形狀的板塊陸續(xù)從屏幕上方落下來,,板塊可以旋轉(zhuǎn)和調(diào)整位置,,使它們在屏幕底部拼出完整的一條或幾條,這些完整的橫條會隨即消失,,給新落下來的板塊騰出空間,,與此同時,玩家得到分?jǐn)?shù)獎勵,。沒有被消除掉的方塊不斷堆積起來,,一旦堆到屏幕頂端,玩家便告輸,游戲結(jié)束,。
2 本文方案
本文的核心思想是:在不改變游戲規(guī)則的前提下,,將秘密信息加載到游戲中板塊的下落過程中,從而實(shí)現(xiàn)信息隱藏,。
2.1 隱寫原理
《俄羅斯方塊》游戲中共有7種不同的板塊,,分別用ti(i∈[0,6]∩Z)表示,,如圖1所示,。
其中每個板塊可以攜帶3 bit信息I={i0 i1 i2|i0,i1,,i2∈{0,,1}},ik(k=0,,1,,2)的取值分別如下:
(1)i0的取值:t0板塊的落下不攜帶任何信息,其余6種板塊ti(i=1,,2,,3,4,,5,,6)根據(jù)形態(tài)變化的數(shù)量分為兩個板塊組,其中,,表示有兩種形態(tài)變化的組為M0={t1,,t2,t3},,表示有4種形態(tài)變化的組為M1={t4,,t5,t6},。如果本次落下的板塊ti屬于M0,,i0=0;否則,,如果本次落下的板塊ti屬于M1,,則i0=1。
(2)i1的取值:不同的板塊組有不同的形態(tài)變化,,如圖1所示,,其中t0板塊沒有變化,M0中的板塊有兩種形態(tài)的變化,,分別用a,、b表示,;M1中的板塊有4種形態(tài)的變化,分別用a,、b,、c、d表示,。每個板塊ti的形態(tài)變化都是從a形態(tài)開始,,順時針旋轉(zhuǎn)n×90°(n∈[0,3]∩Z)后得到,。假設(shè)每個板塊初始落下的形態(tài)用v=0表示,,每經(jīng)過一次旋轉(zhuǎn)v+1(mod2),i1的值為該板塊最終落到屏幕底部時的v值,。例如,,設(shè)某板塊落下的初始形態(tài)為t4.b,最終形態(tài)為t4.a,,期間需要順時針旋轉(zhuǎn)3×90°,,其形態(tài)與v值如表1所示。
(3)i2的取值:每個板塊都是從游戲區(qū)域的中間落下,。d為板塊最終落到屏幕底部的位置相對于初始位置的距離,如果d%2(%為取余運(yùn)算)=1,,則i2=1,,否則如果d%2=0,i2=0,。如圖2,、圖3所示,板塊最終落到屏幕底部的位置相對于初始位置的距離d=1,,d%2=0,則此時i2=0,。
綜上所述,一個板塊的從游戲區(qū)域的頂部落到區(qū)域底部可以攜帶3 bit秘密信息,,規(guī)則如表2所示,。
2.2 隱秘通信方案
一個完整的隱秘通信系統(tǒng)必須包括表示信息傳輸?shù)拈_始及結(jié)束的標(biāo)識,這部分將介紹它們,,并就基于2.1的算法提供一個完整的方案,。
該方案可以用元組表示:Ω={P,W,,R,,I,G},。P表示游戲雙方,,P={Sender,,Receiver};W是第三方攻擊者,,Wendy,,他有能力破解該通信系統(tǒng);R表示規(guī)則的集合,,包括傳輸信息的開始規(guī)則,、板塊下落攜帶信息規(guī)則以及信息傳輸?shù)耐瓿梢?guī)則等;I是秘密信息,,I的內(nèi)容不能被W獲取到,;G表示該《俄羅斯方塊》游戲。
該隱秘通信的方案如下:
(1)Sender和Receiver之間共享一對公鑰和私鑰,,Sender通過RSA非對稱加密算法,,將隨機(jī)種子Rs加密,Rs的作用是生成偽隨機(jī)序列K(Ki∈{0,,1}),,i∈0,1,,2,,…,M),,Sender利用該序列以按位異或的方式加密欲傳輸?shù)拿孛苄畔(Ii∈{0,,1}),i∈0,,1,,2,…,,M),,得到C,C是Sender在游戲中實(shí)際傳輸?shù)男畔?。C=ci=Iiki(i=0,,1,2,,…,,M)。
(2)Sender將加密后的Rs(長度為L,,且Receiver已提前知悉)與M bit信息按如下方式組合:Rs+C,,并將其分為(M+L)/3組,分別用T1,,T1,,…,,Tk(k∈[1,(M+L)/3])表示,。對于每組Tk,,第一個比特的值決定該攜帶該組信息的板塊ti∈M0還是ti∈M1,Sender重新編程實(shí)現(xiàn)《俄羅斯方塊》游戲,,特點(diǎn)如下:
①游戲G接收到Sender開始傳輸信息的信號之前,,G中板塊落下規(guī)則與普通游戲相同。
②G接收到Sender開始傳輸信息的信號后,,根據(jù)選擇下落板塊ti∈M0或ti∈M1,,并從它們中隨機(jī)選擇某個板塊ti落下。
③G接收到Sender完成信息傳輸?shù)男盘栔?,G將板塊下落規(guī)則恢復(fù)成正常游戲的規(guī)則,。Sender將重新編程后的游戲上傳到在線游戲網(wǎng)站中。
(3)Sender邀請Receiver參與在線《俄羅斯方塊》游戲,,模式為雙人競賽模式,。
(4)當(dāng)Sender第一次消去完整的橫條時,表示下一次落下的板塊中攜帶有信息,。
(5)Receiver收到Sender開始傳輸信息的信號后,,開始記錄Sender端每一個板塊的下落、旋轉(zhuǎn)和移動等相關(guān)信息,。
(6)當(dāng)Sender將某個板塊快速地落到屏幕最底層,,表示他已經(jīng)完成Rs+C的傳輸。Receiver收到此信號后,,停止記錄板塊的信息,并根據(jù)2.1所述原理,,得到與Sender相同的種子Rs和加密后的信息C,,生成與Sender相同的偽隨機(jī)序列K,解密后得到秘密信息I:ciki=Iikiki=Ii(i=0,,1,,2,…,,M),。
(7)如果信息傳輸完成時,Sender或Receiver還未完成游戲,,則繼續(xù)完成游戲即可,,此后的游戲并不影響信息傳輸;若Sender的游戲已經(jīng)結(jié)束,,但信息還未完成傳輸,,Sender要重新開始下一局游戲,,重復(fù)步驟(3)~(6),直到所有的信息傳輸完成,。
注意:為提高方案的安全性,,在攜帶信息的板塊中,每7個至少有一個t0板塊,。同時,,要保證每局游戲的Rs均不同。
3 安全性分析
信息隱藏技術(shù)最重要的指標(biāo)是其安全性,。信息隱藏的安全性分為兩類[11]:
第一類:信息隱藏技術(shù)是S1安全的,,是指攻擊者W沒有合理的理由證明經(jīng)過傳輸信息的通訊信息S中隱藏有秘密信息I。
第二類:信息隱藏技術(shù)是S2安全的,,是指攻擊者W無法破壞經(jīng)過傳輸信道的通信信息S中隱藏的所有秘密信息I,。
4 實(shí)驗(yàn)
從《俄羅斯方塊》官方網(wǎng)站中選擇3種不同種類的游戲,每種游戲落下的板塊均總數(shù)超過10 000,,分別記錄7種板塊出現(xiàn)的次數(shù),,并計算其頻率。同時,,選取不同大小的3組比特序列,,分別用本文提到的算法和文獻(xiàn)[10]的算法傳輸,記錄3局游戲中每個板塊出現(xiàn)的頻率,,如圖4所示,。
從圖中可以看出,普通《俄羅斯方塊》游戲的板塊頻率出現(xiàn)在[0.135,015]內(nèi),,接近1/7(約為0.143),,而本文提到的算法中板塊的頻率同樣浮動在1/7上下,由此可證明該算法是S1安全的,。
在上述實(shí)驗(yàn)的同時,,同時記錄下文獻(xiàn)[10]的算法與本文提到的算法中的核心板塊的數(shù)量,如表3所示,。
由表中數(shù)據(jù)可知,,本算法在嵌入容量方面高于文獻(xiàn)[10]。
5 結(jié)論
本文提出了一種新穎的安全隱寫方法,,在《俄羅斯方塊》游戲中隱藏信息,,首先依據(jù)板塊的變化數(shù)量,將板塊分類,,然后通過板塊的移動,、旋轉(zhuǎn)等方式,在板塊的落下過程中攜帶信息,,每個板塊都可以攜帶3 bit的信息,。本文從理論和實(shí)驗(yàn)方面,,分別證明了本算法可達(dá)到S1安全,同時分析證明了本方案在嵌入容量方面得到提升,。由于本文的方案在嵌入容量方面依賴于游戲本身的大小,,所以接下來的研究重點(diǎn)是改進(jìn)該方案,增大嵌入容量以及在其他游戲載體中嵌入秘密信息,,實(shí)現(xiàn)隱秘通信,。
參考文獻(xiàn)
[1] ZHANG X.Reversible data hiding in encrypted image[J].Signal Processing Letters,IEEE,,2011,,18(4):255-258.
[2] 劉粉林.數(shù)字圖像隱寫分析[M].北京:機(jī)械工業(yè)出版社,2010.
[3] TIAN J.Reversible data embedding using a difference expansion[J].IEEE Trans.Circuits Syst.Video Techn.,,2003,,13(8):890-896.
[4] 陳夠喜,伍玉良,,張鵬程,,等.二值圖像中的安全隱寫[J].小型微型計算機(jī)系統(tǒng),2012,,33(7):1625-1628.
[5] YANG W C,,CHEN L H.A steganographic method via various animations in PowerPoint files[J].Multimedia Tools and Applications,2013,,74(3):1003-1019.
[6] WENDEZL S,,ZANDER S,F(xiàn)ECHNER B,,et al.Pattern-based survey and categorization of network covert channel techniques[J].ACM Computing Surveys(CSUR),,2015,47(3):50.
[7] 吳軍,,吳秋新.一種基于七巧板游戲的數(shù)字圖像信息偽裝方法[J].計算機(jī)應(yīng)用,,2004,24(6):125-128.
[8] HERNANDEZ-CASTRO J C,,BLASCO-LOPEZ I,ESTEVEZ-TAPIADOR J M,,et al.Steganography in games:A general methodology and its application to the game of Go[J].Computers & Security,,2006,25(1):64-71.
[9] LEE H L,,LEE C F,,CHEN L H.A perfect maze based steganographic method[J].Journal of Systems and Software,2010,,83(12):2528-2535.
[10] OU Z H,,CHEN L H.A steganographic method based on tetris games[J].Information Sciences,,2014,276:343-353.
[11] 林代茂,,胡嵐,,郭云彪,等.廣義信息隱藏技術(shù)的安全問題[J].中山大學(xué)學(xué)報:自然科學(xué)版,,2005,,43(A02):14-16.