蔣 偉,李安波,吳雪榮,吳賽松
(南京師范大學(xué)虛擬地理環(huán)境教育部重點實驗室,江蘇南京 210023)
基于數(shù)字信封的矢量地理數(shù)據(jù)安全傳輸方法
蔣 偉,李安波,吳雪榮,吳賽松
(南京師范大學(xué)虛擬地理環(huán)境教育部重點實驗室,江蘇南京 210023)
地理信息服務(wù)已成為當(dāng)今解決數(shù)據(jù)異構(gòu)、平臺獨立,實現(xiàn)資源共享的有效途徑。然而,在網(wǎng)絡(luò)傳輸過程中,由于缺少必要的安全防范手段,信息攔截、竊取、篡改等安全問題逐漸凸顯出來。針對相關(guān)問題,本文在討論現(xiàn)有平臺安全性、應(yīng)用程序安全性和消息級安全性的基礎(chǔ)上,著重運用數(shù)字信封技術(shù),綜合了對稱加密算法與非對稱加密算法二者的優(yōu)點,實現(xiàn)了多重安全策略基礎(chǔ)上的用戶自主控制的消息級安全。該方法兼顧效率與安全,可有效用于矢量地理數(shù)據(jù)的安全傳輸。
矢量地理數(shù)據(jù);安全傳輸;數(shù)字信封;地理信息服務(wù)
地理信息服務(wù)的不斷發(fā)展使得用戶不需要安裝龐大的桌面GIS軟件,只需要通過瀏覽器就能夠享受GIS帶來的便利。然而,在地理信息服務(wù)應(yīng)用日益發(fā)揮重要作用的今天,如何保證矢量地理數(shù)據(jù)能夠在網(wǎng)絡(luò)中安全傳輸是一個非常重要的問題。
目前,服務(wù)提供者與用戶之間的數(shù)據(jù)基本上都是以明文方式或簡單處理后進行傳輸,容易被不法分子竊取或篡改[1]。針對這個問題,對于平臺級安全性和應(yīng)用程序級安全性來說,相關(guān)研究已經(jīng)趨于完善,但對于消息級安全性來說,因其使用靈活且功能強大,還有較大的研究空間[2]。此外,信息安全應(yīng)該是全方位的安全體系,包括訪問控制、認證、審計、內(nèi)容加密等多個方面,任何一個方面的不足,都將成為“木桶效應(yīng)”的短板因素,導(dǎo)致整個安全體系崩潰。因此,對于消息級安全性的研究同樣重要。
但是,單純地將消息級安全性與對稱加密或非對稱加密結(jié)合,難以兼顧效率與安全[3]。蔡暢等[4]采用漸進式傳輸方法來提高遙感數(shù)據(jù)服務(wù)的傳輸安全性;劉先波等[5]討論了數(shù)字信封技術(shù)在智能卡對稱密鑰傳輸中的應(yīng)用。但對于數(shù)字信封技術(shù)在矢量地理數(shù)據(jù)安全傳輸中的應(yīng)用卻鮮有研究。
因此,本文擬基于數(shù)字信封技術(shù),綜合對稱加密算法與非對稱加密算法二者的優(yōu)點,平衡效率與安全,實現(xiàn)多重安全策略基礎(chǔ)上的用戶自主控制的消息級安全,為地理信息服務(wù)的安全、高效應(yīng)用提供有效的技術(shù)方案。
1.Web服務(wù)安全體系分級
Web服務(wù)最終是發(fā)布在因特網(wǎng)中,供用戶來訪問的。然而,對于所有訪問Web服務(wù)的用戶,難以保證其都是循規(guī)蹈矩的合法用戶,Web服務(wù)可能遭受各種各樣的攻擊,如數(shù)據(jù)篡改、竊聽、未授權(quán)訪問等[6]。不僅發(fā)布在因特網(wǎng)中的Web服務(wù)承擔(dān)巨大的風(fēng)險,發(fā)布在內(nèi)網(wǎng)的Web服務(wù)同樣會遭受各種攻擊。因此,非常有必要基于各方面的安全影響因素,全方位的設(shè)計Web服務(wù)。
Web服務(wù)運行在Web服務(wù)器中,而Web服務(wù)器需要有服務(wù)器系統(tǒng)的支持,因此在因特網(wǎng)研究與應(yīng)用中,對于整個Web服務(wù)的安全性設(shè)計著重考慮3個級別[2]。其優(yōu)缺點見表1。
1)平臺級安全性。平臺級安全性是指因特網(wǎng)中兩個平臺之間的安全傳輸通道,它連接Web服務(wù)的客戶端和服務(wù)器端,在平臺(如Windows、Linux、UNIX等)之間進行點對點的安全過濾。平臺安全模型的優(yōu)點是簡單明了,可以嚴格地控制傳輸機制和終結(jié)點的配置。不過它基于平臺的特性,安全性取決于基本的平臺、網(wǎng)絡(luò)傳輸機制和安全性服務(wù)提供程序,并與它們緊密集成。
2)應(yīng)用程序級安全性。應(yīng)用程序級安全性是指由應(yīng)用程序負責(zé)提供的安全機制,因此其安全性控制全部由應(yīng)用程序自己定義,可以在Web服務(wù)應(yīng)用程序中使用自定義的SOAP消息頭傳遞用戶憑證,以便根據(jù)每個Web服務(wù)請求對用戶進行身份驗證。
3)消息級安全性。消息級安全性是指由網(wǎng)絡(luò)中發(fā)送的信息本身來控制數(shù)據(jù)的安全性。消息級安全性是一種使用非常靈活而且功能非常強大的方法,支持多種加密技術(shù),可以不依賴于基本傳輸,同時支持異類安全體系結(jié)構(gòu),并提供端對端的安全性并通過中間應(yīng)用程序節(jié)點提供消息路由。
表1 Web服務(wù)安全體系各級別優(yōu)缺點
綜上所述,對于平臺安全性與應(yīng)用程序級安全性的相關(guān)研究已經(jīng)趨于完善,而對于消息級安全性的研究仍有較大的空間。而安全應(yīng)該是全方位、多策略的安全,正是因為對消息級安全性的研究的不足,其有可能成為“木桶效應(yīng)”的短板因素,造成整個安全體系的崩潰。同時,平臺安全性和應(yīng)用程序級安全性的應(yīng)用環(huán)境具有一定的局限性,而消息級安全性因其適用靈活且功能強大,越來越受到Web服務(wù)設(shè)計者的青睞。
地理信息服務(wù)作為Web服務(wù)的一種,對其消息級安全性的研究同樣至關(guān)重要。為此,本文主要針對消息級安全性來研究矢量地理數(shù)據(jù)的安全傳輸。
2.Web服務(wù)內(nèi)容安全處理技術(shù)
針對消息級安全性,為了防止傳輸過程中的消息被竊取和篡改,可以通過結(jié)合加解密技術(shù)來保護網(wǎng)絡(luò)傳輸中數(shù)據(jù)內(nèi)容的安全。通過對稱加密算法或非對稱加密算法,可以將傳輸?shù)南⒂擅魑募用艿矫芪模梢杂行У乇苊庀⒈徊环ǚ肿痈`取并破譯。
然而,如果只使用對稱加密算法,將明文加密為密文,雖然處理效率較高,但安全系數(shù)不高。Andrey Bogdanov等[7]已發(fā)現(xiàn)一種可以攻破AES的新型攻擊方法,同時AES算法的發(fā)明人Joan Daemen、Vincent Rijmen也都已經(jīng)證明了該攻擊的有效性。
如果只使用非對稱算法進行加解密,雖然可以提高安全性,但它的運算速度一直是制約其廣泛應(yīng)用的瓶頸。對于100 MB大小的文件,RSA的加密時間只達到了分鐘級。這對于海量地理數(shù)據(jù)而言,顯然不適用。
考慮如何把對稱加密算法與非對稱加密算法結(jié)合起來,繼承二者的優(yōu)點,并互相彌補不足,成為問題解決的關(guān)鍵。為此,數(shù)字信封技術(shù)應(yīng)運而生。數(shù)字信封技術(shù)[3]的基本原理是對要發(fā)送的數(shù)據(jù)用對稱加密算法的密鑰P加密生成密文M,并傳送給接收方,該密鑰不必事先約定,可以隨機產(chǎn)生;發(fā)送方用接收方的非對稱加密算法中的公鑰對密鑰P加密后形成密文PM,并發(fā)送給接收方;接收方接收到PM后,用自己的非對稱加密算法中的私鑰解密得到密鑰P,再用P對收到的密文M解密得到真正的數(shù)據(jù)信息。
一種典型的數(shù)字信封做法就是把AES和RSA結(jié)合起來(如圖1所示),以滿足數(shù)據(jù)交換高保密性和高效性的需求。數(shù)字信封技術(shù)是利用密碼技術(shù)結(jié)合數(shù)據(jù)加密和數(shù)字簽名技術(shù)來保證文件的機密性、發(fā)送者身份的真實性、文件數(shù)據(jù)的完整性和發(fā)送者對自己行為的不可否認性[6]。數(shù)字信封采用兩層加密體系,保證了只有規(guī)定的接收人才能閱讀信息的內(nèi)容。在數(shù)字信封中,信息發(fā)送方采用對稱密鑰來加密信息內(nèi)容,然后將此對稱密鑰用接收方的公開密鑰來加密,并將它和加密后的信息一起發(fā)送給接收方,接收方先用相應(yīng)的私有密鑰打開數(shù)字信封,得到對稱密鑰,然后使用對稱密鑰解開加密信息,這種技術(shù)的安全性相當(dāng)高。采用數(shù)字信封技術(shù)后,即使加密文件被他人非法截獲,但因為截獲者無法得到發(fā)送方的通信密鑰,故也不可能對文件進行解密。
圖1 數(shù)字信封技術(shù)應(yīng)用模型
現(xiàn)有的一些地理信息服務(wù)的數(shù)據(jù)傳輸,都是基于GML格式進行數(shù)據(jù)組織,相關(guān)數(shù)據(jù)都是直接采用明文方式或進行簡單處理后傳輸。一旦有一些不法分子企圖竊取這些數(shù)據(jù),則比較容易得到這些數(shù)據(jù)。通過以上對內(nèi)容安全傳輸機制和數(shù)字信封技術(shù)的敘述,可以發(fā)現(xiàn)消息級安全性和數(shù)字信封技術(shù)可以較好地保護矢量地理數(shù)據(jù)的安全。因此本文擬從消息級安全性入手,并結(jié)合數(shù)字信封技術(shù)進行矢量地理數(shù)據(jù)的加解密處理,以實現(xiàn)兼顧安全與效率的一種矢量地圖數(shù)據(jù)的安全傳輸方法。
矢量數(shù)據(jù)是在直角坐標系中,用X、Y坐標表示地圖圖形或地理實體的位置的數(shù)據(jù)。矢量數(shù)據(jù)一般通過記錄坐標的方式來盡可能地將地理實體的空間位置表現(xiàn)得準確無誤。在矢量數(shù)據(jù)結(jié)構(gòu)中,點數(shù)據(jù)可直接用坐標值描述,線數(shù)據(jù)可用均勻或不均勻間隔的順序坐標鏈來描述,面狀數(shù)據(jù)(或多邊形數(shù)據(jù))可用邊界線來描述。點、線、面數(shù)據(jù)中包含的點坐標順序都是有序的,屬性值也是與要素一一對應(yīng)的,因此,可以通過順序提取坐標信息和屬性信息,進而轉(zhuǎn)換成比特流數(shù)據(jù),用于AES加密,并且,這種操作是可逆的。
為此,可形成如下基于數(shù)字信封技術(shù)的矢量地理數(shù)據(jù)安全傳輸方案(如圖2所示)。
圖2 基于數(shù)字信封的矢量數(shù)據(jù)安全傳輸機制
1)首先服務(wù)器端接收客戶端傳來的用戶請求,根據(jù)用戶請求針對性地對地圖中各個圖層的各個要素坐標進行提取,同時提取屬性信息;其次運用AES對提取的坐標信息和屬性信息進行加密,得到加密后的坐標信息和屬性信息;最后運用RSA對AES的對稱密鑰進行加密,得到加密后的密鑰信息,并將加密的坐標信息、屬性信息和密鑰信息發(fā)送到客戶端。
2)客戶端首先對加密的密鑰信息運用RSA進行解密,得到對稱密鑰;其次運用AES對加密的坐標消息和屬性信息進行解密,得到坐標信息和屬性信息,從而還原為地圖展示在客戶端。
1.服務(wù)器端加密
在服務(wù)器端主要進行的工作是將地圖中的點、線、面圖層所有要素的點坐標及屬性數(shù)據(jù)進行提取,然后利用AES進行加密。對AES的對稱密鑰 key運用RSA進行加密,主要過程如圖3所示。
圖3 服務(wù)器端加密過程
(1)提取坐標信息和屬性信息
獲取地圖對象M,分別得到坐標集合Coordinates和屬性信息集合Attributes。
1)對于點圖層,逐個讀取點要素的橫坐標和縱坐標,坐標之間用逗號分開,得到點圖層的坐標集合PointCoordinates。
2)對于線圖層,線與線之間用“l(fā)”隔開,線中所包括的每個點利用步驟1)的方法操作,得到線圖層的坐標集合LineCoordinates。
3)對于面圖層,面與面之間用“p”隔開,面中所包括的每個點利用步驟1)的方法操作,得到面圖層的坐標集合PolygonCoordinates。
4)逐行提取屬性表中的信息,列與列之間用逗號分開,行與行之間用分號分開。
(2)基于數(shù)字信封的技術(shù)進行加密
1)設(shè)置私鑰加密算法AES的對稱密鑰key,并對提取的點圖層的坐標集合PointCoordinates、線圖層的坐標集合LineCoordinates、面圖層的坐標集合PolygonCoordinates和屬性信息集合Attributes運用AES進行加密,得到加密的點坐標信息集合Point-Message、線坐標信息集合LineMessage、面坐標信息集合PolygonMessage和屬性信息AttributesMessage。
2)設(shè)置私鑰PrivateKey提供給授權(quán)的客戶,并運用對應(yīng)的公鑰PublicKey對所述對稱密鑰key運用公鑰加密算法 RSA進行加密,得到密鑰消息KeyMessage。
(3)定義服務(wù)器端向客戶端傳輸?shù)膬?nèi)容結(jié)構(gòu)
創(chuàng)建json對象,并分別加入點、線、面、屬性和密鑰消息5個變量,變量值分別對應(yīng)PointMessage、LineMessage、PolygonMessage、屬性信息集合 AttributesMessage和密鑰消息KeyMessage。
2.客戶端解密
在客戶端主要進行的工作是將加密的密鑰消息運用RSA進行解密,得到AES的密鑰 key;再運用key對加密的屬性信息和坐標信息解密,得到屬性數(shù)據(jù)和坐標數(shù)據(jù),進而還原在客戶端。主要過程如圖4所示。
圖4 客戶端解密過程
(1)訪問服務(wù)器,得到服務(wù)器端傳輸?shù)男畔?/p>
1)獲取用戶在瀏覽器中鍵入的服務(wù)請求,得到請求的服務(wù)名ServicesName。
2)通過服務(wù)名 ServicesName,定義訪問的URL。
3)訪問定義的URL,得到服務(wù)器端返回的json格式的信息,取出加密的點坐標信息集合PointMessage、線坐標信息集合LineMessage、面坐標信息集合PolygonMessage、屬性信息集合AttributesMessage和密鑰消息KeyMessage。
(2)對接收的信息進行解密
1)運用被授權(quán)客戶所持有的私鑰PrivateKey,對密鑰消息KeyMessage進行解密,得到私鑰加密算法AES的對稱密鑰key。
2)以對稱密鑰key為解密密鑰,對加密的點坐標信息集合PointMessage、線坐標信息集合LineMessage、面坐標信息集合PolygonMessage和屬性信息集合AttributesMessage進行解密,分別得點圖層的坐標集合PointCoordinates、線圖層的坐標集合Line-Coordinates、面圖層的坐標集合 PolygonCoordinates和屬性信息集合Attributes。
(3)將解密的信息進行還原
將點圖層的坐標集合PointCoordinates、線圖層的坐標集合 LineCoordinates、面圖層的坐標集合PolygonCoordinates和屬性信息集合Attributes按照提取的反操作還原為地圖M′,展示在客戶端,供客戶所使用。
為了體現(xiàn)數(shù)字信封技術(shù)在保護網(wǎng)絡(luò)傳輸中內(nèi)容的作用,本試驗服務(wù)器端使用ArcGIS Server、客戶端使用Silverlight作為測試環(huán)境,并采用1∶400萬省會城市點圖層的矢量數(shù)據(jù),經(jīng)過數(shù)字信封技術(shù)處理后的消息內(nèi)容如圖5所示。在同等測試環(huán)境下,本方法與RSA的加密效率對比效果如圖6所示。
圖5 使用數(shù)字信封技術(shù)處理后的消息
圖6 數(shù)字信封與RSA處理效率對比
基于數(shù)字信封技術(shù)進行矢量地理數(shù)據(jù)安全傳輸,能夠有效提高數(shù)據(jù)的安全性和保密性,其優(yōu)勢主要表現(xiàn)在以下兩個方面:①多重安全策略基礎(chǔ)上的用戶自主控制的消息級安全,根據(jù)用戶請求有針對性地實時進行消息級數(shù)據(jù)加密與解密,在服務(wù)器(如ArcGIS Server)平臺已提供安全性的基礎(chǔ)上,進一步疊加了由用戶控制的數(shù)據(jù)內(nèi)容安全性,確保只有授權(quán)用戶才能使用;②兼顧安全與效率,運用數(shù)字信封技術(shù),能夠綜合對稱加密、非對稱加密兩種方法的優(yōu)點,避開了各自的缺陷與不足,較好地兼顧了效率與安全。
針對地理信息服務(wù)中矢量地理數(shù)據(jù)安全傳輸?shù)南嚓P(guān)問題,本文在討論現(xiàn)有平臺級安全性、應(yīng)用程序級安全性、消息級安全性3種安全傳輸級別的基礎(chǔ)上,著重運用綜合對稱加密算法與非對稱加密算法二者優(yōu)點的數(shù)字信封技術(shù),實現(xiàn)了多重安全策略基礎(chǔ)上的用戶自主控制的消息級安全。該方法兼顧了效率與安全,可有效地用于矢量地理數(shù)據(jù)的安全傳輸。
[1] 吳明峰,張永勝,李園園,等.Web服務(wù)攻擊技術(shù)研究[J].計算機技術(shù)與發(fā)展,2012,22(1):213-216.
[2] 閆建強,王瑞敬.Web服務(wù)開發(fā)學(xué)習(xí)實錄[M].北京:清華大學(xué)出版社,2011:288-291.
[3] 鄧子云.數(shù)字信封技術(shù)及其應(yīng)用研究[J].華北水利水電學(xué)院學(xué)報,2006,27(1):77-79.
[4] 蔡暢,崔鐵軍,吳天君,等.一種地理信息服務(wù)中的遙感圖像安全傳輸策略[J].測繪工程,2011,20(1):15-18.
[5] 劉先波,王昭順.數(shù)字信封在智能卡對稱密鑰傳輸中的應(yīng)用[J].航空計算技術(shù),2007,37(2):80-82.
[6] 趙延博,張學(xué)杰,姜永玲.基于數(shù)字信封的高強度文件加密的應(yīng)用研究[J].計算機工程與設(shè)計,2007,28 (18):4357-4359.
[7] BOGDANOV A,KHOVRATOVICH D,RECHBERGER C.Biclique Cryptanalysis of the Full AES[J].Lecture Notes in Computer Science,2011(7073):344-371.
[8] 陸陽,楊文泉,陳蕾.一個實現(xiàn)數(shù)字信封的新方法——數(shù)字圖像信封[J].計算機應(yīng)用,2002,22(9):40-42.
[9] 劉燦由,張斌,郭黎,等.基于WCF的矢量數(shù)據(jù)服務(wù)安全機制的設(shè)計與實現(xiàn)[J].地理信息世界,2011,4 (2):63-68.
[10] 吳華意,章漢武.地理信息服務(wù)質(zhì)量(Qo GIS):概念和研究框架[J].武漢大學(xué)學(xué)報:信息科學(xué)版,2007,32 (5):385-388.
[11] KING A,MARK D R.Escrowed Data and the Digital Envelope[J].Lecture Notes in Computer Science,2010 (6101):246-256.
[12] ZHAN J.Using Homomorphic Encryption and Digital Envelope Techniques for Privacy Preserving Collaborative Sequential Pattern Mining[J].Intelligence and Security Informatics,2007:331-334.
[13] 黃全義,朱海國,鐘少波,等.主動式地理信息服務(wù)質(zhì)量(QcAGIS)評估研究[J].測繪學(xué)報,2009,38(6):545-548.
Security Transmission Method of Vector Geographic Gata Based on Digital Envelope
JIANG Wei,LI Anbo,WU Xuerong,WU Saisong
P208
B
0494-0911(2014)07-0039-05
2013-04-22
國家社科基金重大項目“我國地理信息安全的政策和法律研究”(11&ZD162);教育部博士點基金項目“GIS矢量數(shù)據(jù)版權(quán)標記算法評測基準與評測方法研究”(20113207110012)
蔣 偉(1989—),男,江蘇淮安人,碩士,研究方向為地理信息安全。
李安波
蔣偉,李安波,吳雪榮,等.基于數(shù)字信封的矢量地理數(shù)據(jù)安全傳輸方法[J].測繪通報,2014(7):39-43.
10.13474/j.cnki.11-2246. 2014.0221