本發(fā)明涉及移動終端領(lǐng)域,特別涉及一種移動終端位置安全保護方法及裝置。
背景技術(shù):
智能終端與移動互聯(lián)網(wǎng)的普及,讓用戶大開眼界并措手不及。享受高品質(zhì)網(wǎng)絡服務和應用的時候,許多用戶的個人隱私被到處傳播。譬如,位置信息推送服務軟件,在無時無刻的獲取用戶位置信息。移動終端支持的定位方法,有三大類:全球定位系統(tǒng)(Global Positioning System,GPS)、基站、輔助全球衛(wèi)星定位系統(tǒng)(Assisted GPS,AGPS),并加以WIFI輔助定位。移動終端即使沒有GPS,也時刻保留著自己的個人位置信息。
GPS起始于1958年美國軍方的一個項目,1964年投入使用。20世紀70年代,美國陸??杖娐?lián)合研制了新一代衛(wèi)星定位系統(tǒng)GPS。主要目的是為陸??杖箢I(lǐng)域提供實時、全天候和全球性的導航服務,并用于情報收集、核爆監(jiān)測和應急通訊等一些軍事目的,經(jīng)過20余年的研究實驗,耗資300億美元,到1994年,全球覆蓋率高達98%的24顆GPS衛(wèi)星星座己布設完成。
AGPS是結(jié)合GSM/GPRS與傳統(tǒng)衛(wèi)星定位,利用基地臺代送輔助衛(wèi)星信息,藉以縮減GPS芯片獲取衛(wèi)星信號的延遲時間,受遮蓋的室內(nèi)也能借基地臺訊號彌補,減輕GPS芯片對衛(wèi)星的依賴度。和純GPS、基地臺三角定位比較,AGPS能提供范圍更廣、更省電、速度更快的定位服務,理想誤差范圍在10公尺以內(nèi)。A-GPS技術(shù)是一種結(jié)合了網(wǎng)絡基站信息和GPS信息對移動臺進行定位的技術(shù),可以在GSM/GPRS、WCDMA和CDMA2000網(wǎng)絡中使用。
目前有些軟件的GPS偽裝,都是通過調(diào)試模式、越獄方法實現(xiàn),會進一步增加風險,穩(wěn)定性和安全性備受質(zhì)疑。如前所述,獲取位置信息的方法有多種,即使偽裝了GPS相關(guān)信息,基站信息、WIFI接入點信息可能還是暴露的。
用戶安裝的各種第三方應用,許多會獲取用戶的位置信息,使用戶個人位置 信息被完全暴露。針對這些問題,提出本發(fā)明方案。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種移動終端位置安全保護方法及裝置,能更好地解決移動終端位置的安全保護問題。
根據(jù)本發(fā)明的一個方面,提供了一種移動終端位置安全保護方法,包括:
在移動終端中預先設置用來保存?zhèn)挝恢眯畔⒌碾x線數(shù)據(jù)庫;
移動終端對用來獲取其位置信息的請求的合法性進行判斷;
若判斷所述請求為合法請求,則獲取并提供其真實的位置信息,否則通過所述離線數(shù)據(jù)庫獲取并提供偽位置信息。
優(yōu)選地,所述移動終端對用來獲取其位置信息的請求的合法性進行判斷的步驟包括:
對發(fā)起所述請求的用戶程序的合法性進行判斷;
若判斷所述用戶程序為合法用戶程序,則確定所述請求合法,否則確定所述請求不合法。
優(yōu)選地,所述通過所述離線數(shù)據(jù)庫獲取并提供偽位置信息的步驟包括:
當移動終端處于靜止狀態(tài)時,從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序。
優(yōu)選地,所述通過所述離線數(shù)據(jù)庫獲取并提供偽位置信息的步驟包括:
當移動終端處于運動狀態(tài)時,按照預設的偽路線信息和偽速度信息,每隔預設時間從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序。
優(yōu)選地,所述方法還包括:
若判斷所述請求不合法,則將無效的位置信息提供給所述發(fā)起不合法請求的用戶程序。
根據(jù)本發(fā)明的另一方面,提供了一種移動終端位置安全保護裝置,包括:
設置模塊,用于在移動終端中預先設置用來保存?zhèn)挝恢眯畔⒌碾x線數(shù)據(jù)庫;
判斷模塊,用于對用來獲取移動終端位置信息的請求的合法性進行判斷;
處理模塊,用于在判斷所述請求為合法請求時,獲取并提供移動終端的真實 的位置信息,否則通過所述離線數(shù)據(jù)庫獲取并提供偽位置信息。
優(yōu)選地,所述判斷模塊對發(fā)起所述請求的用戶程序的合法性進行判斷,若判斷所述用戶程序為合法用戶程序,則確定所述請求合法,否則確定所述請求不合法。
優(yōu)選地,所述處理模塊在移動終端處于靜止狀態(tài)時,從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序。
優(yōu)選地,所述處理模塊在移動終端處于運動狀態(tài)時,按照預設的偽路線信息和偽速度信息,每隔預設時間從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序。
優(yōu)選地,所述處理模塊在判斷所述請求為不合法請求時,將無效的位置信息提供給所述發(fā)起不合法請求的用戶程序。
與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于:
1、本發(fā)明通過偽裝移動終端位置信息,保護移動終端位置信息安全,從而保障用戶個人位置信息安全;
2、本發(fā)明提供了靜態(tài)與動態(tài)方式進行的位置偽裝,全方位保護個人位置隱私。
附圖說明
圖1是本發(fā)明實施例提供的移動終端位置安全保護方法原理框圖;
圖2是本發(fā)明實施例提供的移動終端位置安全保護方法及裝置框圖;
圖3是本發(fā)明實施例提供的獲取當前位置信息的定位方法與相關(guān)參數(shù)示意圖;
圖4是本發(fā)明實施例提供的基站信息偽裝示意圖;
圖5是本發(fā)明實施例提供的GPS位置信息偽裝示意圖;
圖6是本發(fā)明實施例提供的黑白名單管理示意圖。
具體實施方式
以下結(jié)合附圖對本發(fā)明的優(yōu)選實施例進行詳細說明,應當理解,以下所說明的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
圖1是本發(fā)明實施例提供的移動終端位置安全保護方法原理框圖,如圖1所示,步驟包括:
步驟S101:在移動終端中預先設置用來保存?zhèn)挝恢眯畔⒌碾x線數(shù)據(jù)庫。
所述離線數(shù)據(jù)庫可以包括基站信息離線數(shù)據(jù)庫和GPS信息離線數(shù)據(jù)庫。其中基站信息離線數(shù)據(jù)庫用于偽裝基站信息,即其保存?zhèn)位拘畔?;GPS信息離線數(shù)據(jù)庫用于偽裝GPS信息,即其保存?zhèn)蜧PS信息。
步驟S102:移動終端對用來獲取其位置信息的請求的合法性進行判斷。
具體地說,移動終端對發(fā)起所述請求的用戶程序的合法性進行判斷,若判斷所述用戶程序為合法用戶程序,則確定所述請求合法,否則確定所述請求不合法。一般,可以設置黑白名單,將合法的用戶程序(即受用戶信任的用戶程序,授權(quán)的用戶程序)記錄在白名單中,將不合法的用戶程序(即不受用戶信任的用戶程序,未授權(quán)的用戶程序)記錄在黑名單中。當然,也可以根據(jù)需要設置非黑名單等。
步驟S103:若判斷所述請求為合法請求,則獲取并提供其真實的位置信息,否則通過所述離線數(shù)據(jù)庫獲取并提供偽位置信息。
當移動終端處于靜止狀態(tài)時,從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序,即靜態(tài)方式進行位置偽裝。
當移動終端處于運動狀態(tài)時,按照預設的偽路線信息和偽速度信息,每隔預設時間從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序,即動態(tài)方式進行位置偽裝。
進一步地,也可以將無效的位置信息提供給所述發(fā)起不合法請求的用戶程序。
上述位置信息可以是基站信息,也可以是GPS信息等等。
圖2是本發(fā)明實施例提供的移動終端位置安全保護方法及裝置框圖,如圖2所示,包括設置模塊10、判斷模塊20和處理模塊30。
設置模塊10用于在移動終端中預先設置用來保存?zhèn)挝恢眯畔⒌碾x線數(shù)據(jù)庫。具體地說,所述離線數(shù)據(jù)庫可以包括用于偽裝基站信息的基站信息離線數(shù)據(jù) 庫和用于偽裝GPS信息的GPS信息離線數(shù)據(jù)庫。
判斷模塊20用于對用來獲取移動終端位置信息的請求的合法性進行判斷。具體地說,判斷模塊20對發(fā)起所述請求的用戶程序的合法性進行判斷,若判斷所述用戶程序為合法用戶程序,則確定所述請求合法,否則確定所述請求不合法。判斷用戶程序是否是合法用戶程序,即判斷用戶程序是否是用戶信任的程序可通過設置的黑白名單進行判斷。
處理模塊30用于在判斷所述請求為合法請求時,獲取并提供移動終端的真實的位置信息,否則通過所述離線數(shù)據(jù)庫獲取并提供偽位置信息。具體地說,處理模塊在靜態(tài)地理位置偽裝時,從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序;在動態(tài)地理位置偽裝時,按照預設的偽路線信息和偽速度信息,每隔預設時間從所述離線數(shù)據(jù)庫獲取一個偽位置信息,并將所述偽位置信息提供給所述發(fā)起不合法請求的用戶程序。進一步地,處理模塊30還可以將無效的位置信息提供給所述發(fā)起不合法請求的用戶程序。
本發(fā)明結(jié)合GPS、AGPS、基站及WIFI處理,提供綜合性的位置信息安全防范,最大程度上保護用戶的隱私。
用戶程序獲取位置信息的方式包括以下三種:
1、GPS方式,在沒有網(wǎng)絡的時候,GPS被打開的情況下,后臺程序可以持續(xù)收集用戶的位置信息,并在聯(lián)網(wǎng)時上傳;
2、AGPS方式,即網(wǎng)絡輔助定位,用戶程序可以實時地把用戶位置信息傳到互聯(lián)網(wǎng);
3、WIFI方式,在WIFI開啟的情況下,通過獲取附近的無線路由的MAC地址等信息,可以較精確低得知用戶位置信息。
所以,為了實現(xiàn)位置信息安全保護,需要從上述三個方面入手,徹底保護用戶位置信息。本發(fā)明通過以上方式,實現(xiàn)系統(tǒng)性的保護。
圖3是本發(fā)明實施例提供的獲取當前位置信息的定位方法與相關(guān)參數(shù)示意圖,如圖3所示。
1.基站提供移動終端所在的小區(qū)信息,包括:
1)移動國家碼(Mobile Country Code,MCC),MCC的資源由國際電聯(lián)(ITU)統(tǒng)一分配和管理,唯一識別移動用戶所屬的國家,共3位,中國為460;
2)移動網(wǎng)絡碼(Mobile Network Code,MNC),共2位,中國移動TD系統(tǒng)使用00,中國聯(lián)通GSM系統(tǒng)使用01,中國移動GSM系統(tǒng)使用02,中國電信CDMA系統(tǒng)使用03,一個典型的IMSI號碼為460030912121001;
3)位置區(qū)域碼(Location Area Code,LAC);
4)基站編號(Cell Identity,CID),是個16位的數(shù)據(jù)(范圍是0到65535);
5)信號強度(Signal Strengthen)。
2.GPS衛(wèi)星定位,可直接獲取經(jīng)緯度信息:
1)緯度(Latitude);
2)經(jīng)度(Longitude)。
3.WIFI路由,移動終端應用可掃描獲取周圍的路由器相關(guān)信息,包括:
1)路由器的MAC地址(MAC);
2)無線網(wǎng)絡的名稱(Service Set Identifier,SSID);
3)信號強度(Signal Strengthen)。
移動終端用戶程序,可以把以上一種參數(shù),傳遞給位置信息服務器,就可以檢索到用戶的具體位置信息。
本發(fā)明通過對GPS、AGPS、基站以及WIFI的處理,保護用戶位置信息。通過本發(fā)明,可以實現(xiàn)三個功能:位置信息權(quán)限管理、位置信息靜態(tài)偽裝、位置信息的動態(tài)偽裝,以下結(jié)合圖4至圖6對本發(fā)明進行進一步說明。
圖4是本發(fā)明實施例提供的基站信息偽裝示意圖,如圖4所示,移動終端,雖然不一定都有GPS,但都是接入移動網(wǎng)絡的。用戶安裝的用戶程序,可以通過MCC+MNC+LAC+CID,就能快速定位用戶所在位置。本發(fā)明,在啟用安全模式時,能夠防止非授權(quán)用戶程序獲取真實的基站信息,或者禁止獲取,也就是說,防止基站信息被非授權(quán)應用獲取,用于查詢位置信息。
基站信息離線數(shù)據(jù)庫,預置在移動終端作為偽裝使用。譬如,用戶期望偽裝為中國某個城市的位置信息。用戶程序透過終端無線系獲取基站信息的時候,如果處于安全模式,并且不是白名單程序,那么就會從離線數(shù)據(jù)庫返回偽裝的位置 信息(即偽位置信息)。如果是白名單程序,那么就通過modem獲取實時的基站信息。
這樣,在用戶關(guān)閉GPS和WIFI的情況下,通過基站信息偽裝,可以非常安全的保護用戶位置隱私。
具體地,不同的網(wǎng)絡制式,提供的位置信息有差別,一般可分為:
1)GSM小區(qū)位置(GSM Cell Location),可提供參數(shù):MCC、MNC、LAC、CID、信號強度(Signal Strength,RSSI);
2)CDMA小區(qū)位置(CDMA Cell Location),可提供參數(shù):MCC、MNC、BID、NID、SID、Latitude、Longitude;
3)其他網(wǎng)絡制式,提供的位置定位信息。
因此,要根據(jù)不同的網(wǎng)絡制式,實現(xiàn)方式上有些差別。例如CDMA可以直接提供經(jīng)緯度信息,GSM則要根據(jù)基站信息去查詢經(jīng)緯度信息,不過查詢的操作多為地圖服務商。
參考圖4,移動終端系統(tǒng),分為三個層次:Modem、Framework、APP。其中,F(xiàn)ramework層維護著Modem的相關(guān)信息,上層應用通過Framework獲取網(wǎng)絡相關(guān)信息。為保護基站位置信息數(shù)據(jù),在Framework層增加相關(guān)邏輯即可。
流程如下:
(1)APP獲取Modem的Framework接口;
(2)APP向Framework請求相關(guān)信息;
(3)Framework檢索黑白名單權(quán)限控制;
(4)如果在白名單,則返回真實的位置信息;
(5)如果在黑名單,在根據(jù)用戶設置查詢離線數(shù)據(jù)庫,返回偽裝的基站位置信息。
其中,移動終端需要預置偽裝數(shù)據(jù),這些數(shù)據(jù)可來自運營商或者地圖服務商購買。偽裝數(shù)據(jù),要求也都是真實的數(shù)據(jù),這樣才可以達到偽裝效果。譬如Android系統(tǒng),通過TelephonyManager的接口getCellLocation()就可以獲取當前手機的小區(qū)地址(CellLocation)信息。返回值為相應網(wǎng)絡支持的CellLocation,可以轉(zhuǎn)化為GSM/CDMA/LTE等網(wǎng)絡定位信息。
黑白名單的處理,就可以在這里進行添加,實現(xiàn)流程大致如下:
(1)APP獲取TelephonyManager實例;
(2)APP通過TelephonyManager調(diào)用接口getCellLocation();
(3)getCellLocation進行黑白名單檢查,位置偽裝信息的規(guī)則設定;
(4)APP獲取到位置信息。
以上接口為Android開發(fā)接口,僅需要在恰當?shù)奈恢眠M行黑白名單檢查,并返回位置數(shù)據(jù),是否真實根據(jù)權(quán)限檢查結(jié)果。
圖5是本發(fā)明實施例提供的GPS位置信息偽裝示意圖,如圖5所示,GPS定位,可以提供精確的位置信息。AGPS其實也使用了GPS,但它借助基站信息減少搜索星時間,并且精度更高。GPS位置偽裝與基站信息偽裝相似,移動終端GPS模塊,對于不信任的應用,提供的是離線數(shù)據(jù)庫的偽裝數(shù)據(jù)。
具體地,GPS位置信息可以提供精確位置信息,移動終端通過GPS Framework操作GPS,提供位置信息。另外,GPS可以提供的參數(shù),除了經(jīng)緯度還可以提供附加參數(shù),如速度等,具體如下:
(1)經(jīng)度(Longitude)、緯度(Latitude);
(2)方位(Bearing);
(3)海拔(Altitude)
(4)速度(Speed)
以上這些信息,通過基站信息的時候,可以間接獲取,精度上沒有GPS準確。為了縮短GPS定位時間,基本都會結(jié)合基站信息實現(xiàn)快速GPS定位,也就是AGPS。通過無線基站可以確定天空可用的所有GPS方位,提高GPS定位效率。
現(xiàn)以Android為例提供實現(xiàn)方法,移動終端可以通過LocationManager使用GPS數(shù)據(jù)。
實現(xiàn)步驟如下:
(1)APP獲取LocationManager實例;
(2)APP通過LocationManager調(diào)用requestLocationUpdates監(jiān)聽GPS狀態(tài);
(3)LocationListenera按照設定的間隔時間通知APP位置更新數(shù)據(jù);
(4)提供位置更新數(shù)據(jù)的時候,會檢查黑白名單,是否返回有效的地址。
(5)APP獲取到位置信息。
以上接口為Android開發(fā)接口,僅需要在恰當?shù)奈恢眠M行黑白名單檢查,并返回位置數(shù)據(jù),是否真實根據(jù)權(quán)限檢查結(jié)果。
通過GPS位置信息偽裝,能夠防止GPS位置信息被應用查詢到。
對于WIFI路由信息偽裝,WIFI定位主要依賴周圍WIFI熱點的MAC地址、SSID、Signal Strengthen來查詢位置信息。無線路由器不會經(jīng)常移動這個特點,為位置定位提供了可能。為防止用戶程序通過WIFI定位的方式,可以進行簡單處理。只要不是白名單的應用,返回無效的MAC地址、SSID及Signal Strengthen。譬如,所有的MAC地址都返回0xFFFFFFFF,SSID返回-1等無效值。
具體地說,WIFI路由器眾多,不便于偽裝,可以直接進行屏蔽,讓黑名單程序獲取不到真實的WIFI熱點信息。以Android開發(fā)為例,WifiManager可以提供的參數(shù)如下:
(1)熱點名稱(SSID)
(2)MAC地址(BSSID)
(3)信號強度(level)
實現(xiàn)步驟如下:
(1)APP獲取WifiManager實例;
(2)APP通過WifiManager調(diào)用startScan()掃描附近所有WIFI熱點信息;
(3)APP通過WifiManager調(diào)用getScanResults()獲取WIFI熱點信息;
(4)在getScanResults的時候檢查黑白名單,是否返回有效的數(shù)據(jù);
(5)在黑名單的應用,統(tǒng)一把MAC地址改為0XFFFFFFFF;
(6)APP使用獲取到的參數(shù),通過地圖服務查詢位置信息;
(7)APP獲取到位置信息。
以上接口為Android開發(fā)接口,僅需要在恰當?shù)奈恢眠M行黑白名單檢查,并返回位置數(shù)據(jù),是否真實根據(jù)權(quán)限檢查結(jié)果。
圖6是本發(fā)明實施例提供的黑白名單管理示意圖,如圖6所示,本發(fā)明允許用戶設置黑白名單,只對信任的程序提供真實的位置信息,例如,有時候,用戶 獲取精確的位置信息,以便完成導航等功能,可以把導航軟件設置在白名單里面,而對于特別不信任的程序,放到黑名單里面。默認情況下,用戶還可以在“非黑名單”,“僅白名單”,“全部禁用”幾種模式切換。綜上,對于不信任的程序,可以全方位的保護用戶位置信息。
進一步地,本發(fā)明還支持動態(tài)偽裝,可以選擇一條路線進行偽裝。用戶可在軟件界面進行配置,選擇特點路線進行偽裝。并且,動態(tài)偽裝的時候,利用一定的算法,提供當前是“車速”、“步行”、“靜止”多種模式進行設定,不會出現(xiàn)超速行駛,使偽裝的數(shù)據(jù)在合理范圍之內(nèi)。
(1)車速,控制在合理是速度,并在恰當?shù)牡缆飞闲旭偂?/p>
(2)步行,速度較慢的位置信息偽裝。
(3)靜止,提供給用戶程序的位置信息基本保持不變,固定在一個位置。
本發(fā)明可以靜態(tài)和動態(tài)偽裝用戶位置信息,使用戶程序無法精確獲取用戶具體位置,保護個人位置信息安全。
圖6不僅要實現(xiàn)黑白名單管理,還提供位置信息。為了偽裝位置信息,移動終端可以通過網(wǎng)絡查詢指定服務器,或者預置有效的位置數(shù)據(jù)。服務器與預置的數(shù)據(jù)基本相同,但移動終端可能定期更新數(shù)據(jù)。數(shù)據(jù)庫提供的數(shù)據(jù)內(nèi)容:
1)MCC、MNC;
2)LAC、CID、RSSI;
3)BID、NID、SID;
4)Latitude、Longitude、Bearing、Altitude
5)道路、地名位置信息;
6)其他位置數(shù)據(jù)。
該數(shù)據(jù)庫支持:
1)通過道路、地名查詢位置信息,譬如:Latitude、Longitude、Bearing、Altitude;
2)通過位置信息查詢地名,譬如:江蘇南京秦淮區(qū)中華路47號;
3)其他位置查詢。
以Android系統(tǒng)為例,可以使用FakeLocationProvider對外提供數(shù)據(jù):
(1)黑白名單數(shù)據(jù)
管理黑白名單APP,每個APP被屏蔽位置信息的方式可能不同。可以是:靜態(tài)偽裝數(shù)據(jù)、動態(tài)偽裝數(shù)據(jù)、移動狀態(tài)(汽車行駛、步行)、地點等信息。
(2)位置信息數(shù)據(jù)
支持多種查詢操作,可能要與網(wǎng)絡服務器定期更新。如果移動終端有限,可以下載指定地方的位置數(shù)據(jù)。
本發(fā)明可以系統(tǒng)性地預防位置信息被暴露,保護用戶個人隱私。
綜上所述,本發(fā)明具有以下技術(shù)效果:
1、本發(fā)明系統(tǒng)性地保護用戶的位置信息,防止被惡意程序利用;
2、本發(fā)明不僅可以進行靜態(tài)位置信息偽裝,還支持動態(tài)位置信息偽裝;
3、本發(fā)明的用戶也可以對可信任程序進行管理,只有白名單的用戶程序可以精確獲取定位信息。
盡管上文對本發(fā)明進行了詳細說明,但是本發(fā)明不限于此,本技術(shù)領(lǐng)域技術(shù)人員可以根據(jù)本發(fā)明的原理進行各種修改。因此,凡按照本發(fā)明原理所作的修改,都應當理解為落入本發(fā)明的保護范圍。