王雷 何欣峰
(江蘇金盾檢測技術有限公司 江蘇省南京市 210042)
隨著近年來電子商務的快速發展,目前的快遞行業的規模迅速擴大,快遞已經成為人們生活中必不可少的一個組成部分。然而,在龐大的業務量背后,存在著一個不容忽視的安全風險,就是快遞業很容易會泄露客戶的隱私信息。這會導致客戶遭受過電話騷擾甚至是經濟 損失。
由于個人隱私泄露的問題日益嚴重,其他各國也針對這一問題采取了相應的措施。比如,一些國家通過制定行業標準以及法律法規來對快遞員持有證書以及快遞信息泄露行為進行限制及規范,這雖然能夠在一定程度上減少隱私泄露問題,但是卻沒有從技術上解決隱私泄露這個問題。國內的快遞企業也針對用戶隱私泄露問題采取了一系列的措施,比如有的公司推行快遞隱私面單,有的公司規定快遞員在快遞簽收時撕下快遞單并進行銷毀。國內的學者也開始針對快遞隱私泄漏問題進行了很多的研究。周春樵等人利用DES和RSA 技術設計了一種電子面單,有效地保護了快遞過程中的客戶隱私信息;韋茜等人提出一種變型的重新平衡‐RSA 方案,并將該方案應用于隱私數據加密中,保護了用戶的隱私信息;張新文等人設計了一種基于二維碼的個人隱私保護物流系統,此系統可以解決個人隱私信息加密與物流過程之間的矛盾;胡衛等人將二維碼技術與傳統的公鑰技術相結合,實現了個人信息隱私保護的全過程。
為防止快遞單上用戶的個人信息被犯罪分子用于詐騙,因此需要對個人信息進行加密操作,本文主要提出一種基于加密二維碼的隱私保護技術,通過使用二維碼技術保存加密后的個人信息。首先使用AES 對稱加密技術對寄件人以及收件人的基本信息進行加密生成密文,然后使用RSA 非對稱加密技術對AES 中的參數進行加密生成參數密文,將密文和參數密文組合起來,使用二維碼生成技術生成二維碼,再使用奇異值分解的改進算法來對二維碼進行再次加密。通過先對信息加密再對二維碼圖形進行加密這雙重加密,實現個人隱私信息的安全保護。
隨著移動互聯網和智能手機的快速發展,二維碼成為了我們生活中不可缺少的工具。通過掃描二維碼,能夠簡單而快速地獲取二維碼信息,并且在很多領域已經得到了廣泛的應用。二維碼是對一維碼的改進,通過一定的編碼格式對信息進行處理,并使用圖像的形式表達出來,能夠對二維碼所承載的信息具有保密作用。
QR 碼是矩陣式二維條碼的典型代表,它通過黑白像素的矩陣分布,在正方形中編碼。QR 碼的結構圖如圖1所示,主要由功能圖形和編碼區編碼組成。通常情況下QR 編碼由七個步驟組成,分別是數據分析,數據編碼,糾錯編碼,構造最終數據信息,布置模塊,掩膜選擇以及填入生成格式和版本信息。
與傳統條形碼相比,QR 碼能存儲更多的信息,也能代表更多的數據類型,甚至是漢字和圖像。因此,它具有更可靠,識別范圍廣,讀取速度快等特點。然而,由于QR 編碼算法非常普遍,很容易識別出未加密的QR 碼。如果對QR 碼進行加密,可以提高數據的安全性。
RSA 是一種典型的非對稱加密算法,這種算法需要在加密和解密中使用兩個密鑰,分別是公鑰和私鑰。且這兩個密鑰成對出現,如果使用公鑰加密數據,則只能使用相應的私鑰對數據進行解密。非對稱加密技術加密解密過程圖見圖3所示。數據接收方首先生成密鑰對,保留下私鑰并將其中的公鑰發送給數據發送方。數據發送方使用公鑰對數據進行加密操作生成密文,并將密文發送給數據接收方,數據接收方收到密文后使用私鑰對密文進行解密操作最終獲得數據信息。RSA 算法具有密鑰管理和傳輸方便,實現容易的特點,且在傳輸過程中很安全,但是該算法的復雜度較高,加密時耗費的時間較長,不適合對大數據加密。該算法常用于數據加密和數字簽名。
矩陣的奇異值分解,即SVD 分解,是一種很重要的矩陣分解方法并且他的應用范圍也很廣。一個m×n 的實數矩陣A 的奇異值定義為如下形式:
A=U×S×VT
矩形矩陣的SVD 分解將矩陣分為了三個矩陣,并將它們相乘。其中,U 和V 都是單位正交陣,U 是m*m 階左奇異矩陣,V 是n*n 階右奇異矩陣,S 是m*n 階半正定對角矩陣。
一般來說,任意的n 階方陣都可以是與上三角矩陣類似的酉矩陣。設A∈C"X",則存在有酉矩陣U 和上三角矩陣T=(ti)∈C"x",使UTAU=T,ti=λi(i=1,2,...,n)為A 的特征值,當i>j 時,tij=0(i=2,3,...,n,j=1,2,...,n‐1)。
本文提出的基于二維碼加密的個人隱私保護方案由數據信息加密階段、二維碼加密階段以及數據信息解密階段三個部分組成,下面具體介紹這三個組成部分,具體的方案實現流程圖見圖4所示。
數據信息加密階段采用混合加密技術,使用AES 算法和RSA算法同時對數據信息進行加密操作,并最終生成含有加密后信息的二維碼。使用混合加密技術不僅能夠滿足數據安全加密的要求,同時也能夠保證加密的速度,從而可以達到所需的安全性能。數據加密的具體步驟如下:
(1)首先,數據接收方使用RSA 算法構造一組密鑰對,保留私鑰,并向數據發送方發送公鑰;
黃老師的幽默是平易近人的。這樣的語言幽默感是老師和學生拉近距離的一種方式,也是緊湊課堂上的一縷春風,掃去同學的疲倦。“兩次都不舉手說明你那個…好吧,哪個呢,下課再說吧……我生氣了,怎么讀書的,這是攀么。(動作示范了一下,借助黑板)……這是攀,還是爬?。所以畫的不好,你們要敢說……我就讀出了“不容易”,你們大概是沒有做爸爸的緣故(眾笑)……好,以后你們和父親吵架了,就寫一篇文字,就和解了。(眾笑)……”
(2)然后,數據發送方使用AES 算法構造對稱加密密鑰,使用剛剛生成的密鑰對數據信息進行加密操作,生成密文信息,數據信息是寄件人或者收件人的基本信息,包括姓名,電話,詳細地址,所寄物品的信息等信息;
(3)接著,使用數據接收方發送過來的公鑰對AES 生成的對稱加密密鑰進行加密操作,生成參數密文信息;
(4)將步驟(2)得到的密文信息和步驟(3)得到的參數密文信息拼接組合在一起,然后使用2.1 節中提到的二維碼編碼技術進行一系列操作生成二維碼,此時得到的二維碼中含有加密后的數據信息。
由于二維碼的編碼算法是公開的,二維碼存儲的信息可能會遭受惡意破解,引起安全隱患,所以我們對二維碼圖片也進一步實施加密操作,以保證信息的安全。對于傳統的二維碼,我們可以將其按照矩陣的形式進行處理,通過對二維碼進行壓縮和解壓操作實現對其的加密和解密。我們使用奇異值分解對二維碼進行加密,二維碼加密具體的步驟如下:
(1)首先,讀入上面數據信息加密階段獲取到的二維碼圖片,并將其轉化為灰度圖像,以方便后續的處理操作。然后,將此灰度圖像轉化為像素矩陣,即轉化成數據形式;
(2)接著,計算出灰度二維碼圖像的像素均值,用原始二維碼圖像的像素值減去像素均值,得到新的像素矩陣,也能得到新的圖像A;
(3)然后,對新得到的圖像A 進行處理,求出A 的自相關矩陣,并對該矩陣進行奇異值分解操作,使用的公式為A=USV,再使用公式X1=u’×X 更新圖像,形成加密后的二維碼圖像。
至此,二維碼圖像的加密操作完成了,我們提出的數據加密完整操作也完成了。
數據信息的解密過程是數據信息加密過程和二維碼加密過程的逆過程。具體的數據信息解密步驟如下:
(1)首先,數據接收方對加密后的二維碼圖片進行解密操作,將其圖像轉化為像素矩陣,并乘以矩陣u,然后再加上之前計算得到的像素的平均值,得到最終的像素矩陣,經過變換可以得到未加密的二維碼圖片;
(2)然后,數據接收方對未加密的二維碼圖片進行掃描解碼操作,得到加密后的密文和加密后的密鑰信息;
(3)接著,數據接收方使用RSA 算法的私鑰對加密后的密鑰信息進行解密操作,得到AES 密鑰的參數信息;
(4)最后,數據接收方使用AES 密鑰對密文進行解密操作,得到最初的明文數據信息。
至此,數據信息解碼操作完成了,可以成功地獲取到用戶的個人詳細信息。
目前,快遞行業的迅速發展不僅給人們帶來了便利,也存在一定的隱私安全問題,個人的電話地址等信息可能會被惡意泄露。因此,本文提出了一種基于二維碼加密技術的快遞個人隱私保護方案。本方案使用AES 算法對個人的基本信息,包括寄件人或者收件人的姓名,電話,詳細地址,所寄物品等信息進行加密生成密文,然后使用RSA 對AES 中的參數進行加密生成參數密文,將密文和參數密文組合起來,并根據這些信息生成二維碼,通過這種方式對個人信息進行加密。然后再使用奇異值分解對二維碼圖片進行加密。快遞員等專業人員可以通過專有的APP 對加密后的二維碼進行掃描獲取寄件人或者收件人的個人信息。通過這種雙重加密的方式,對個人的隱私信息的保護更加安全,但是這種方式的算法復雜度會更高。