孫浩天+王志鵬+孔德舉+都基澤
摘要:在信息安全大時代的背景下,信息隱藏作為一種可以用來保密通信的手段,也越來越多的應(yīng)用在生活的各個方面,智能移動終端設(shè)備的數(shù)量大幅增加,已經(jīng)成為了人們?nèi)粘I钪胁豢苫蛉钡耐ㄓ嵐ぞ摺TS多應(yīng)用軟件都在利用二維碼在移動用戶之間進(jìn)行快捷的信息交互,將信息隱藏與二維碼相結(jié)合,把二維碼作為信息隱藏的載體,利用編碼機制的特點直接將加密后的秘密信息寫入,在其中隱藏秘密信息。通過不同的Android解碼器的讀取,普通解碼器只能讀取出二維碼中的無效信息,而無法讀取也不會想到在二維碼之中還存有隱藏信息,只有利用根據(jù)本文提出的特殊算法設(shè)計的解碼器通過得到服務(wù)器的解密信息后才能發(fā)現(xiàn)并解讀其中的秘密信息,從而達(dá)到秘密通信的目的。
關(guān)鍵詞:Android;二維碼;信息隱藏
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)16-0077-04
1 概述
二維條碼技術(shù)是一種廣泛應(yīng)用的信息編碼方式,具有編解碼快速便捷等特點。借助于智能移動終端設(shè)備的普及,二維條碼的應(yīng)用場景越來越多,利用二維條碼在移動終端用戶之間快速交互信息的應(yīng)用軟件隨處可見,漸漸成為一種時尚。受這種風(fēng)潮的啟發(fā),本小組成員開始設(shè)想將二維條碼技術(shù)與信息隱藏思想結(jié)合起來,研究一種快捷、安全的秘密消息傳遞方法。下面介紹相關(guān)研究現(xiàn)狀和意義。
1)基于信息隱藏的保密通信
信息隱藏[1]是將一則消息、圖片或文件隱藏于其他消息、圖片或文件中的技術(shù)。在信息隱藏過程中,秘密信息往往首先被加密,然后被隱藏在某種載體中,其原理如圖1所示的模型。其中的原始圖像就是所謂的載體,而發(fā)送中的隱藏信息圖像就是被嵌入秘密消息之后的載體,因為載體是不易引起懷疑的普通消息、圖片或者文件,所以增加了通信路徑上密文被竊取的難度,因為攻擊者根本就不會發(fā)現(xiàn)有秘密通信在進(jìn)行。信息隱藏技術(shù)的應(yīng)用很廣,保密通信、身份認(rèn)證、數(shù)字版權(quán)保護和追蹤以及信息完整性、真實性鑒定與內(nèi)容恢復(fù)等方面都在使用信息隱藏技術(shù)[2-4]。其中,利用信息隱藏技術(shù)進(jìn)行保密通信時,通信雙方將秘密信息隱藏在數(shù)字載體中并利用公開信道進(jìn)行傳遞,這種保密通信方式在軍事、商業(yè)、金融等方面領(lǐng)域都有廣泛的應(yīng)用。
有關(guān)載體的研究是信息隱藏技術(shù)的基礎(chǔ)。隨著信息技術(shù)的發(fā)展,可供使用的載體類型變得越來越豐富,研究人員在不斷挖掘傳統(tǒng)載體類型如文本、圖像、音頻和視頻等潛力的同時[5-8],對于新隱藏載體的發(fā)掘一直在進(jìn)行,比如在網(wǎng)頁中隱藏信息[9],在基于PE文件的信息隱藏技術(shù)[10],在DNA序列中隱藏信息等。綜合各種優(yōu)秀的信息隱藏方法可知,要實現(xiàn)基于信息隱藏的秘密通信,隱藏載體往往滿足一些基本的特征,如本身含有大量可利用的冗余信息,嵌入和提取信息效率要高,抗攻擊能力強等,此外常用的載體類型如JPG圖片,MPEG視頻文件等都是常見的文件類型,也就是說傳播廣泛而不容易引起懷疑。
2)二維條碼技術(shù)廣泛應(yīng)用
二維條碼是一種特殊的條碼技術(shù),簡稱二維碼。與一維條碼技術(shù)相比,它采用矩形、點、六邊形等幾何圖案來表示信息,編碼時使用若干個與二進(jìn)制相對應(yīng)的幾何形體來表示文字?jǐn)?shù)值信息,解碼時則通過圖像輸入或光電掃描設(shè)備自動識讀信息。除信息表示方法不同外,二維碼仍具備普通條碼的一些共性,如每種碼制有特定的字符集;每個字符占有一定的寬度;具有校驗功能等。
因為二維碼具備快速響應(yīng)和快速數(shù)據(jù)訪問的能力,所以隨著智能手機的逐漸普及,二維碼編解碼功能軟件已經(jīng)幾乎成為了智能手機的標(biāo)配軟件。目前常用或知名的二維條碼編碼機制有DataMatrix,MaxiCode,QRCode,漢信碼等,其中QR碼是目前應(yīng)用最廣泛的條碼之一,該種編碼最多可以表示7089個字符,而傳統(tǒng)一維條碼最多則只能表示20個字符,足見其優(yōu)勢。
就應(yīng)用現(xiàn)狀來說,二維條碼技術(shù)已經(jīng)十分成熟,尤其是與智能移動終端的結(jié)合使其得到廣泛的應(yīng)用,二維條碼技術(shù)之所以得到廣泛的應(yīng)用除了其自身快速易讀和高存儲能力的優(yōu)勢外,還仰仗于移動智能終端的快速普及和網(wǎng)絡(luò)通信的發(fā)達(dá),尤其是智能手機的普及,激發(fā)了人們的想象力,把這種便捷的信息編解碼方式應(yīng)用到了產(chǎn)品跟蹤,物品標(biāo)識,實時追蹤,文檔管理,市場營銷等一系列領(lǐng)域,比如移動即時通信軟件用戶之間可以使用二維碼來相互添加好友、登陸網(wǎng)站,自動販賣機可以使用二維碼進(jìn)行商品識別,商家也都紛紛利用二維碼來發(fā)布自己的商業(yè)推廣信息,甚至各種票據(jù)上也有基于二位條碼制作的車票方位功能等。
1.1.2研究意義
本軟件最大的特點在于其對隱藏信息安全性上的保護,本軟件針對目前廣泛存在的通過破解注冊碼完成注冊身份認(rèn)證而對軟件進(jìn)行非法使用的問題,設(shè)計并實施了一系列的安全解決方案。
信息隱藏在秘密通信過程中的應(yīng)用也隨著其他信息技術(shù)的發(fā)展不斷升級,其與新技術(shù)的結(jié)合是一種趨勢,同時也符合科技發(fā)展的規(guī)律。隨著智能手機的迅速普及,二維條碼技術(shù)被推廣到生活的各個領(lǐng)域,我們設(shè)想將二維碼應(yīng)用于信息隱藏領(lǐng)域,把二維碼作為隱藏信息的載體,根據(jù)編碼機制的特點,把秘密消息嵌入其中,簡單情況下,秘密消息可以只是經(jīng)過加密過的密文,復(fù)雜情況下,秘密消息可以存儲于另一個二維碼當(dāng)中,最終我們則希望普通的解碼器只能察覺載體中無價值的內(nèi)容,而只有依據(jù)本文提出的特殊算法設(shè)計的解碼器通過得到服務(wù)器的解密信息后才能發(fā)現(xiàn)秘密消息的存在并將其解讀。在理論研究的基礎(chǔ)上,我們將基于手機安卓系統(tǒng)設(shè)計并實現(xiàn)符合該設(shè)想的秘密消息傳遞軟件,實現(xiàn)秘密消息的發(fā)布和接收,檢驗方法的有效性和應(yīng)用價值。
本文擬將流行的二維條碼編碼技術(shù)和信息隱藏研究相結(jié)合,設(shè)計一種基于二維條碼的信息隱藏方法,并基于安卓系統(tǒng)設(shè)計實現(xiàn)對應(yīng)的軟件,包括編碼器和服務(wù)器;
基礎(chǔ)工作就是首先實現(xiàn)正常二維碼的功能,然后從最簡單的情況入手,僅存儲少量密文,在不影響原文的情況下,實現(xiàn)其功能,然后在理論探究的基礎(chǔ)上實際測量出存儲的最大容量,以及最典型的情況,不斷完善編碼器和服務(wù)器的可信度,以期達(dá)到實用化的目的。
1.2 相關(guān)工作
快速響應(yīng)碼(QR碼)近年來在日常生活中的廣泛應(yīng)用,是因為它具有大容量的數(shù)據(jù),較強抗破壞性,快速解碼等優(yōu)勢。因為它很受歡迎,人們可以使用它來傳輸秘密信息,而無需檢查。QR碼的隱寫術(shù)的發(fā)展導(dǎo)致了許多問題的產(chǎn)生。如何將秘密信息嵌入到它,并保持QR碼的原始內(nèi)容是兩個主要挑戰(zhàn)。胡志明市大學(xué)的Thach V. Bui等人表示基于比特位技術(shù)的隱藏方式對于攻擊者來說太脆弱,一旦修改隱藏信息的某一位都會造成隱藏信息的破化,他們提出了一種新的解決方案,基于ReedSolomon codes 和List Decoding編碼方式,最終的分析、實驗表明可以有效解決隱藏信息易被破壞、篡改的問題。[11]
Akshara Gaikwad等人在International Journal of Computer Science and Information Technologies發(fā)表過一篇文章,提出了在彩色圖片中利用二維碼隱藏信息的方法,核心思想是使用QR碼嵌入到彩色圖像的檢測有界的概率誤差。嵌入方法設(shè)計是兼容標(biāo)準(zhǔn)的解碼程序,可以應(yīng)用于任何顏色或灰度圖像的全區(qū)域覆蓋。嵌入方法由兩部分組分。首先是利用半色調(diào)技術(shù)選擇修改的像素打破,降低粗方形結(jié)構(gòu)的QR碼,第二是亮度電平的像素在彩色圖像中肉眼不可見,進(jìn)一步從彩色圖像解碼誤差最小的QR碼。[12]
2011年,關(guān)于QR碼與信息隱藏的方法也有很多,Hsiang-Cheh Huang等人發(fā)表的一篇論文中曾經(jīng)提出過一種基于直方圖的可逆的信息隱藏方法。[14] QR碼應(yīng)用廣泛,在海報或網(wǎng)頁的角落可以普遍觀察到。QR碼的目的在于方便手機用戶使用。人們可以用手機攝像頭在網(wǎng)頁的角落捕獲的QR碼,然后相應(yīng)的QR碼的超鏈接可以即刻使用。由于QR代碼看起來像隨機噪聲,也占據(jù)原始圖像的空間,大大減少原內(nèi)容的價值,降低了觀賞性。因此,如何保留原始圖像的價值,而且保持網(wǎng)頁即時訪問的能力是文章的主要關(guān)注點。隨著可逆數(shù)據(jù)隱藏技術(shù)的發(fā)展,二維碼可以隱藏在原始圖像中嵌入容量相當(dāng)大的增加。我們提出了一個方案,當(dāng)掃描含有QR碼圖像時,相應(yīng)的QR碼的超鏈接被首先訪問,然后,QR碼會消失,原始圖像將恢復(fù)保留其中傳達(dá)的信息。
基于對QR碼的糾錯性能,我們設(shè)計QR條形碼的秘密隱藏技術(shù)。該方案可以隱藏秘密數(shù)據(jù)到原始QR碼不會扭曲QR內(nèi)容的可讀性。也就是說,一般的掃碼器可以讀取加密的QR碼的原始內(nèi)容,只有授權(quán)的接收器可以提取隱藏在QR碼的秘密。這一點是在收集資料時我們想到的,也是本方法的創(chuàng)新之處。
1.3 基于QR條碼的信息隱藏方法
一種基于二維條碼的信息隱藏方法,采用二維條碼作為信息隱藏的載體,即將秘密信息嵌入到二維條碼中進(jìn)行隱藏,再采用特定的隱藏信息的提取方法進(jìn)行提取,從而達(dá)到傳遞隱藏信息的目的。
2 方案實現(xiàn)
2.1隱藏消息的嵌入
隱藏消息的嵌入需要采用C/S(Client/Server)結(jié)構(gòu),即服務(wù)器/客戶端結(jié)構(gòu)。設(shè)計一個用來實現(xiàn)二維條碼編碼功能及加密處理的編碼器,并將此編碼器與服務(wù)器連接;同時設(shè)計一個用來實現(xiàn)二維條碼解碼功能及解密處理的解碼器,并將此解碼器存放于客戶端中。此后對秘密消息進(jìn)行加密預(yù)處理和嵌入二維碼,具體步驟如下:
對秘密信息進(jìn)行加密預(yù)處理依次分為以下3個步驟:
1)選取一種公鑰加密算法,在編碼器中生成若干個密鑰對,然后給每個密鑰對進(jìn)行編號,所編號碼均為十進(jìn)制的兩位數(shù)。并將該編號設(shè)定為每個密鑰對所對應(yīng)的密鑰特征值。其中每個密鑰對都包含一個公鑰和一個私鑰,公鑰是用來對信息進(jìn)行加密的,而私鑰是用來對信息進(jìn)行解密的;
2)編碼器在生成作為信息載體的二維條碼的過程中,需要首先在通過公鑰加密算法所生成的密鑰對中隨機選取一個秘鑰對,并利用這個密鑰對中的公鑰將所要隱藏的秘密信息的明文進(jìn)行加密處理,最終生成秘密信息的密文;
3)將選取的密鑰對所對應(yīng)的密鑰特征值添加到所生成密文的首部,同時將此密鑰對中用來解密的私鑰存放于服務(wù)器中。
將帶有密鑰特征值的秘密信息密文嵌入到作為信息隱藏載體的二維條碼中依次分為以下4個步驟:
1)根據(jù)二維條碼中的普通信息和所要嵌入的隱藏信息內(nèi)容的長度與類型,選定出作為信息隱藏載體的二維條碼的版本和糾錯碼的等級;
2)將普通信息和隱藏信息按照二維條碼中的QR條碼編碼規(guī)則,分別轉(zhuǎn)換成二進(jìn)制位流,其中所添加到秘密信息首位的密鑰特征值用8位二進(jìn)制位流表示。再根據(jù)每8位一個碼字,分別形成普通信息的數(shù)據(jù)碼字和隱藏信息的數(shù)據(jù)碼字;
3)標(biāo)定二維條碼中所存儲的普通信息的末位和糾錯碼的首位,進(jìn)而得出該二維條碼補齊碼區(qū)域的起始位和終止位;
4)將經(jīng)過加密處理并帶有密鑰特征值的秘密信息的密文從該二維條碼的補齊碼區(qū)域的起始位開始依次嵌入,直到密文結(jié)束為止,若還有剩余位置用補齊碼補齊。
2.2隱藏信息的提取
隱藏信息的提取根據(jù)用戶是否使用實施方案中的解碼器分為兩種情況:
若用戶使用本實施方案中的解碼器,用戶于客戶端輸入其個人的登錄信息,同時等待服務(wù)器驗證其身份的有效性。由于所設(shè)計的解碼器存放于客戶端中,所以在服務(wù)器驗證用戶的身份有效后,即刻跳轉(zhuǎn)到解碼器中的二維條碼掃描界面,否則重新輸入登陸信息直至通過驗證。用戶利用解碼器對準(zhǔn)作為隱藏信息載體的二維條碼進(jìn)行掃描,掃描后將獲取到密鑰特征值和隱藏信息的密文,同時將密鑰特征值發(fā)送給服務(wù)器,服務(wù)器根據(jù)密鑰特征值將選擇出對應(yīng)密鑰對中的私鑰發(fā)送回客戶端,客戶端中的解碼器隨即利用得到的私鑰解密出秘密信息的密文從而得到秘密信息的明文,即獲取秘密信息。
若用戶沒有使用本實施方案中所設(shè)計的解碼器+客戶端系統(tǒng)進(jìn)行登錄,而是使用普通帶有掃碼功能的解碼器對所生成的帶有隱藏信息的二維條碼圖像進(jìn)行掃描,則只能讀取到二維條碼中所存儲的普通信息,而獲取不到所隱藏其中的秘密信息。
3 實驗
我們在測試過程中使用的數(shù)據(jù)如下表所示。
生成的二維碼已包含隱藏信息,我們將使用二維碼的用戶分為普通用戶(沒有注冊)和特殊用戶(已經(jīng)注冊),只有特殊用戶通過驗證才能使用信息隱藏和提取的功能。我們可以根據(jù)上表的數(shù)據(jù)看到,信息隱藏之后的二維碼發(fā)生了變化,但是普通的掃碼器并不能提取到隱藏信息,這就起到了保密的作用。
下表為不同版本的信息容量:
對比其他編碼形式和方法,我們選取設(shè)計的基于二維碼的方法具有抗破解能力強的優(yōu)點:
1)最終密文嵌入位置隱蔽性強;
2)多組密鑰對,若不能與相應(yīng)的加密公鑰對應(yīng),即使解密私鑰被截獲也不能得到明文;
3)特征值嵌入初級密文構(gòu)成最終密文,即使最終密文被提取直接破解也無法得到明文。
4 結(jié)論
隱私和安全是目前社會網(wǎng)絡(luò)通信最受關(guān)注的問題,本文對一種基于二維碼的信息隱藏方法做了深入研究,采用計算機模擬與手機安卓系統(tǒng)模擬相結(jié)合的方式,進(jìn)行測試與實驗,以期達(dá)到秘密通信的目的。
研究過程中主要運用的是二維碼技術(shù)和信息隱藏技術(shù),二維條碼技術(shù)應(yīng)用范圍廣泛,在智能移動終端設(shè)備不斷普及的當(dāng)代,應(yīng)用二維碼的場景越來越多許多應(yīng)用軟件也在利用二維碼再移動用戶之間進(jìn)行快捷的信息交互,而當(dāng)二維碼遇上信息隱藏,把二維碼作為隱藏信息的載體,普通的解碼器只能察覺載體中無價值的內(nèi)容,而只有依據(jù)本項目提出的特殊算法設(shè)計的解碼器才能發(fā)現(xiàn)并解讀其中的秘密信息,無疑將大大提高通信的安全性,在理論研究的基礎(chǔ)上,基于手機安卓系統(tǒng)設(shè)計進(jìn)一步實現(xiàn)符合該設(shè)想的秘密消息傳遞軟件,實現(xiàn)秘密消息的發(fā)布和接收,檢驗方法的有效性和應(yīng)用價值。
參考文獻(xiàn):
[1] Petitcolas F A P, Anderson R J, Kuhn M G. Information hiding-a survey[J]. Proceedings of the IEEE, 1999, 87(7): 1062-1078.
[2] Yang G, Li J, He Y, et al. An information hiding algorithm based on intra-prediction modes and matrix coding for H. 264/AVC video stream[J]. AEU-International Journal of Electronics and Communications, 2011, 65(4): 331-337.
[3] Jayaram P, Ranganatha H R, Anupama H S. Information Hiding Using Audio Steganography–A Survey[J]. The International Journal of Multimedia & Its Applications (IJMA) Vol, 2011, 3: 86-96.
[4] Kaur A, Goel A, Gupta H. Digital watermarking in neural networks models[C]//Engineering and Computational Sciences (RAECS), 2014 Recent Advances in. IEEE, 2014: 1-6.
[5] Al-Shatnawi A M. A new method in image steganography with improved image quality[J]. Applied Mathematical Sciences, 2012, 6(79): 3907-3915.
[6] Ren W, Liu Y, Zhao J. Provably secure information hiding via short text in social networking tools[J]. Tsinghua Science and Technology, 2012, 17(3): 225-231.
[7] Zheng P, Wang W, Zhao B, et al. Hiding information in MPEG sequences by using of B-Frames[J]. Wuhan University Journal of Natural Sciences, 2012, 17(3): 238-242.
[8] Xu E, Liu B, Xu L, et al. Adaptive VoIP steganography for information hiding within network audio streams[C]//Network-Based Information Systems (NBiS), 2011 14th International Conference on. IEEE, 2011: 612-617.
[9] Ren J, Zhang L, Wang C. A webpage information hiding algorithm based on integration strategy[C]//Information Science and Digital Content Technology (ICIDT), 2012 8th International Conference on. IEEE, 2012, 3: 707-711.
[10]Sangeetha T, Meyappan T. New Technique of Hidden Data in PE-File with in Unused Area Two[J]. IJCSNS, 2013, 13(5): 108.
[11] Thach V. Bui, Nguyen K. Vu, Thong T.P. Nguyen, Isao Echizen and Thuc D. NguyenRobust Message Hiding for QR Code,IIH-MSP, 2014 Tenth International Conference,2014
[12] Akshara Gaikwad K R.Singh2.Information Hiding using Image Embedding in QR Codes for Color Images[J].A Review, IJCSIT,2015,6(1):278-283.