范 昊,束德勤,張 亮
(山東農(nóng)業(yè)大學 信息科學與工程學院,山東 泰安 271018)
隨著基于位置服務 LBS(Location-Based Service)需求的增長,傳統(tǒng)位置隱私保護模型的局限性日益凸顯,傳統(tǒng)的基于位置服務很少考慮用戶隱私問題,用戶的標識等敏感信息暴露,其安全性逐漸成為一種隱患。存在很多因為用戶位置隱私泄露而導致被人跟蹤、被垃圾廣告郵件填滿收件箱的案例[1-2]。因此,對LBS中的隱私保護問題進行研究具有較好的理論意義和實際應用意義,人們迫切需要更人性化、更安全快速的位置隱私保護方案[3-4]。
本文實現(xiàn)的系統(tǒng)主要研究并解決了當人們在使用LBS時所涉及到的位置隱私安全問題。為了實現(xiàn)用戶在其他用戶對其進行定位時提供不同等級和精度的位置服務,并且兼顧位置服務與隱私保護的目的,提出了一種個性化的位置隱私保護方案,即目標用戶可以在為不同類別的用戶提供個性化位置服務的同時保護自身的位置隱私。當其他用戶對目標用戶進行定位時,系統(tǒng)將在數(shù)據(jù)服務器和位置匿名服務器中查找用戶對其好友的隱私策略樹,并得到對應的隱私開放類別,對用戶自身的位置信息進行處理,從而實現(xiàn)個性化位置隱私保護的目標。
基于位置的服務LBS是指通過無線網(wǎng)絡服務提供商 SP(Service Provider)提供給移動終端(如手機、PDA、無線筆記本等)的位置信息(經(jīng)緯度坐標),在電子地圖平臺的支持下,為用戶提供所需的與位置相關的一種移動增值業(yè)務[5]。
定位系統(tǒng)是LBS的一項重要的基礎設施,一般分為兩類:基于網(wǎng)絡的定位系統(tǒng)通過電信網(wǎng)絡的基礎設施(例如基站、衛(wèi)星)結合某種定位方法來定位移動設備,不需要移動設備上安裝定位芯片;基于終端的定位系統(tǒng)需要在移動設備上安裝GPS定位芯片,然后利用GPS系統(tǒng)或者伽利略衛(wèi)星系統(tǒng)定位出用戶的當前位置[6]。
位置隱私是一種特殊的信息隱私,指的是防止其他人以任何方式獲知對象過去、現(xiàn)在的位置[7]。在基于位置的服務中,敏感數(shù)據(jù)可以是有關用戶的時空信息、可以是查詢請求內容中涉及軍事或政治的信息、可以是推斷出的用戶的運動模式、用戶的興趣愛好等的個人隱私信息。
本文主要研究了在人們使用LBS時涉及到的位置隱私安全問題,以及如何實現(xiàn)個性化的多等級位置隱私保護。提出了一種個性化位置隱私保護方案:被定位者可以針對不同類別的用戶群體,構建不同的隱私保護策略,當其被定位時,根據(jù)隱私保護策略來決定為其提供不同精度(不同等級)的位置服務。本文主要從以下兩個方面對LBS進行安全性建設。
(1)使用戶具有自主選擇能否讓指定的好友知道自己真實位置的權力,按照用戶的需求將其好友按照不同的位置隱私等級分為“對其位置隱身”、“對其顯示真實位置”和“對其顯示虛假位置”3組。
在“真實位置”設置組中,用戶的該組好友可以通過電子地圖讀取用戶實時的真實位置;在“位置隱身”設置組中,用戶的該組好友無法讀取用戶的位置,即用戶對他的該組好友在位置上隱身不可見;在“虛假位置”設置組中,用戶可以根據(jù)需要對該組好友分別在電子地圖上設置不同的假位置,完成位置隱私保護的功能。
(2)“雙服務器保護模式”,確保服務器端與客戶端相互通信時的用戶信息安全。當用戶選擇向服務器發(fā)送自己的真實位置時,位置匿名服務器能夠對用戶發(fā)送過來的用戶信息和位置信息進行匿名處理,處理結果顯示為某位置具有人的活動特征,卻無法獲取該位置的用戶信息。
當用戶A請求其好友B的位置信息時,請求命令將首先發(fā)送到信息處理服務器。此時,信息處理服務器將作出判斷,若判斷結果為A在B的好友列表中,并且策略分組為“對其顯示真實位置”時,信息處理服務器選擇直接向B發(fā)送一條請求其位置的命令,并同時向位置匿名服務器發(fā)送一條帶有特定標簽的A的IP信息??蛻舳薆在收到位置請求信息后,會將帶有特定標簽的自己的位置信息發(fā)送給可信的位置匿名服務器,而不是信息處理服務器。
也就是說,當信息處理服務器在接收到某用戶的位置信息時,不會記錄客戶端的IP地址或除位置信息以外的任何個人信息,并將通過標簽核對,將制定的位置信息直接發(fā)送給指定的用戶。最后,位置匿名服務器將給信息處理服務器返回一條帶有與接收IP時相同的特定標簽,告知其過程是否成功完成。
不僅如此,當用戶選擇向服務器發(fā)送自己的真實位置時,雙服務器中的位置匿名服務器還能夠對用戶發(fā)送過來的用戶信息和位置信息進行匿名處理,即便檢測出某位置具有人的活動特征,也無法獲取該位置的用戶信息,避免了在位置信息傳送過程中的隱私泄露隱患。
數(shù)據(jù)庫是位置隱私保護系統(tǒng)的重要基礎,在本系統(tǒng)中,選用MySQL數(shù)據(jù)庫。使用JDBC驅動實現(xiàn)了MySQL數(shù)據(jù)庫與Java服務器端的連接。數(shù)據(jù)庫中各個表的設計如表1、表 2所示。
表1 用戶信息表 user(代表 true)
表2 好友信息表fri(代表 false)
信息處理服務器使用Java語言開發(fā),主要文件結構及使用的類如圖1所示。
圖1 信息處理服務器主要文件結構及使用的類
各類實現(xiàn)的功能說明如下:CreateServerThread類用于生成新的線程,并通過處理Socket收到的字符串提取出所請求對象的IP和發(fā)送請求對象的IP。緊接著建立一個Socket通信請求目標的地址坐標,然后將獲取到的位置坐標用新的Socket發(fā)送到發(fā)送請求者手機中。Function類為各項功能的具體實現(xiàn)及收到錯誤數(shù)據(jù)時的異常處理:Main為主類,實例化一個Server對象:
Server繼承于ServerSocket,當收到信息后調用CreateServerThread 類生成新線程:super(SERVER_PORT)。Xxaq類用于服務端與數(shù)據(jù)庫的連接及數(shù)據(jù)庫各種操作的實現(xiàn)(代碼見數(shù)據(jù)庫實現(xiàn)部分)。
使用Java語言開發(fā)主要文件結構及使用的類如圖2所示。
圖2 位置匿名服務器主要文件結構及使用的類
其中,Main類和Server類的功能及實現(xiàn)方法同于信息處理服務器,CreateServerThread類實現(xiàn)了接收到合法請求后對客戶端位置的獲取及向請求者發(fā)送被請求者的位置信息。
移動端采用在Windows 7操作系統(tǒng)下,安裝Mac OS虛擬機,并用X-code作為開發(fā)工具、Objective-C作為開發(fā)語言進行開發(fā)。UIAlertTableView用于NoteDetailController中選擇好友隱私等級時等級列表的顯示,MapLocation為定位時使用的蘋果官方工具類;KissXML和classes中的xml組均為xml的第三方解析工具,直接導入后使用,Classes中的 tool為 AsyncSocket類,用于 Socket通信,是蘋果官方提供的工具類。
服務器端因為采用了跨平臺性很強的Java語言編寫附加MySQL數(shù)據(jù)庫,故幾乎可在所有服務器上運行,且部署工作簡單,在Windows Server 2003環(huán)境下的部署如下。
(1)安裝 MySQL數(shù)據(jù)庫,并使用 sql轉儲文件將用到的表及數(shù)據(jù)導入到數(shù)據(jù)庫中,字符集設置為utf-8。
(2)配置Java環(huán)境,并將JDBC驅動放置到服務器端主目錄后,直接執(zhí)行服務器端的主類Main。
(3)開啟服務器的12310端口并在防火墻添加此端口的例外。
經(jīng)過以上3個步驟,服務器的部署即完成。
因為客戶端運行平臺為iPhone或iPad,故用戶可以在iPhone或iPad上直接安裝生成好的 IOS安裝包(ipa)文件進行安裝。安裝后打開軟件登錄即可使用。
性能測試在軟件的質量保證中起著重要作用,是系統(tǒng)優(yōu)化的有效手段,主要檢驗軟件是否達到需求規(guī)格說明中規(guī)定的各類性能指標,確保系統(tǒng)達到設計要求的性能。
對于本系統(tǒng),主要測試目的如下。
(1)確保服務端軟件在長時間運行時能夠及時釋放內存并且不存在多余死循環(huán),不會造成服務器系統(tǒng)的崩潰。
(2)確保在多客戶端同時登錄時,對數(shù)據(jù)庫操作的同步性,避免讀寫錯誤及讀臟數(shù)據(jù)等。
(3)確??蛻舳嗽谶\行時,內存能夠及時釋放,不會占用客戶機平臺過多資源。
(4)測試服務器的安全性,嘗試通過非法手段獲取用戶相關數(shù)據(jù)的各種方法并采取相應對策。
(5)嘗試用戶使用時可能存在的誤操作,處理對應異常。
(6)統(tǒng)計數(shù)據(jù)通信所產(chǎn)生的流量并作出優(yōu)化。
測試表明:
(1)服務器可以及時釋放內存,且能夠保證并發(fā)時對數(shù)據(jù)庫操作的同步。
(2)客戶端用戶誤操作造成的異常均已避免或作出處理。
(3)已知在安全性測試中,數(shù)據(jù)均以明文形式傳輸,可能在傳輸信道中被截取,此缺陷均將在后期調試中解決。
由于便攜式設備、芯片感測技術和寬帶網(wǎng)絡的發(fā)展,使得基于位置的服務應用無處不在,為人們的生活帶來了便利的同時,也帶來了隱私威脅的問題。本文的創(chuàng)新之處在于解決了當人們在使用LBS時所涉及到的位置隱私安全問題,其創(chuàng)新點總結如下。
(1)用戶根據(jù)自己的需求可將其好友按照不同的位置隱私策略分組,“對其可見真實位置”、“對其位置隱身”和“對其可見虛假位置”3個分組能讓用戶按照自己的意愿去管理自己的位置信息,避免了在位置設置時的單調性。
(2)為了支持最優(yōu)的位置匿名,必須考慮到廣泛使用的具有可信用戶和可信LSP的可信LBS中間件——位置匿名服務器。實際上,位置匿名服務器是一個位于移動用戶和信息處理服務器的中間層,接收來自移動用戶的精確位置信息以及所有用戶的隱私特征,根據(jù)每一個用戶的隱私特征,將精確的位置信息匿名成隱藏的空間區(qū)域,避免了在位置信息傳送過程中的隱私泄露隱患。
本文所述基于移動平臺的定制化位置隱私保護方案在系統(tǒng)功能上均已初步實現(xiàn)。
[1]程瑤,應凌云,焦四輩,等.移動社交應用的用戶隱私泄漏問題研究[J].計算機學報,2014,37(1):87-100.
[2] BERESFORD A R, RICE A, SKEHIN N, etal.Mockdroid,trading privacy for application functionality on smartphones[C].Proceedings ofthe 12th Workshop on Mobile Computing Systemsand Applications(HotMobile′11).New York USA, 2011:49-54.
[3]EGELE M, KRUEGEL C, KIRDA E, et al. PiOS:detecting privacy leaks in IOS applications[C].Proceedings of the 18th Annual Network&Distributed System Security Symposium (NDSS).San Diego, USA, 2011:66-71.
[4]李瑞軒,董新華,辜希武,等.移動云服務的數(shù)據(jù)安全與隱私保護綜述[J].通信學報,2013,34(2):159-165.
[5]傅建慶,陳健,范容,等.基于代理簽名的移動通信網(wǎng)絡匿名漫游認證協(xié)議[J].電子與信息學報,2011,33(1):156-162.
[6]UNAL D,CAGLAYAN M U.A formal role-based access model control model for security policies in multi-domain mobile networks[J].Computer Networks, 2013,57(1):330-350.
[7]徐小龍,周靜嵐,楊庚.一種基于數(shù)據(jù)分剖與分級的云存儲數(shù)據(jù)隱私保護機制[J].計算機算機科學,2013,40(2):98-102.