專利名稱:用于基于位置的服務中的位置隱私的虛擬信息的制作方法
用于基于位置的服務中的位置隱私的虛擬信息
背景技術:
除非本文另外指出,否則本部分記載的素材并不是本申請權利要求的現有技術,也不以包含在本部分中的方式被認可為現有技術。移動設備(例如蜂窩電話或智能電話)的位置恢復是大范圍的基于位置的服務(LBS)的基礎。基于位置的服務是信息服務,可由移動設備使用移動設備的地理位置通過蜂窩網絡來訪問。通過使用移動設備的位置來識別個人或對象的位置并向個人提供與個人鄰近的位置中的各個服務提供商有關的信息,基于位置的服務可以用在各種環境中,例如健康、工作、個人和娛樂。LBS可以包括基于顧客位置向顧客發送廣告、個人化天氣服務、餐館位置、加油站位置、其他商業活動以及類似的服務。LBS中傳輸用戶位置信息可能關系到隱私。因此,已經開發出各種隱私保護方法。一種隱私保護方法包括:與用戶的真實位置信息一起發送匿名信息或假虛擬元。例如,如果除了用戶的真實位置信息之外用戶還正在發送四組匿名位置信息,則總共存在五組位置信息。因此,能夠實現空間遮蔽(spatial cloaking)效應。然而,發送和接收大量的不相關數據可能降低信道效率。對于發送的每一組匿名位置信息,可以接收多個LBS邀請,阻塞了通常具有有限帶寬的通信信道。此外,在按數據量支付的類型的計劃中,用戶可能快速用盡他們的已分配數據量。另一個問題可能是移動設備上的功率使用,這通常也在可用性方面受到限制,而且產生虛擬數據的位置確定服務(例如GPS)的連續使用可能浪費寶貴的電池功率。
發明內容
本公開描述了一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的方法。該方法可以包括:與基于位置的服務(LBS)提供商相連,以及向LBS提供商提交用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、與LBS提供商相連的計算設備的功耗、和/或LBS提供商的服務要求。該方法還可以包括從LBS提供商接收與第二子組虛擬位置以及用戶的實際位置相關聯的基于位置的服務數據,其中所述第二子組是所述第一子組的子集。本公開還提供了一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的裝置。該裝置可以包括:存儲器,被配置為存儲指令;以及處理器,與所述存儲器耦合并且被適配為執行所述指令。當所述指令被執行時,它們可以使所述處理器與基于位置的服務(LBS)提供商相連并且向LBS提供商提交用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、所述裝置的功耗、和/或LBS提供商的服務要求。所述處理器還可以從LBS提供商接收與第二子組虛擬位置以及用戶的實際位置相關聯的基于位置的服務數據,其中所述第二子組是所述第一子組的子集。本公開還描述了一種其上存儲有指令的計算機可讀存儲介質,用于一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的方法。該方法可以包括與基于位置的服務(LBS)提供商相連以及向LBS提供商提交用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、與LBS提供商相連的計算設備的功耗、和/或LBS提供商的服務要求。該方法還可以包括從LBS提供商接收與第二子組虛擬位置以及用戶的實際位置相關聯的基于位置的服務數據,其中所述第二子組是所述第一子組的子集。本公開還描述了一種通過采用虛擬信息連同基于位置的服務來實現位置隱私的保護的方法。該方法可以包括向基于位置的服務(LBS)提供商注冊用戶以及在LBS提供商處接收用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、與LBS提供商相連的計算設備的功耗、和/或LBS提供商的服務要求。可以將與第二子組虛擬位置以及用戶的實際位置相關聯的LBS數據提供給與LBS提供商相連的計算設備,其中所述第二子組是所述第一子組的子集。以上發明內容僅僅是說明性的,而絕不是限制性的。除了上述示例性的各方案、各實施例和各特征之外,參照附圖和以下詳細說明,將清楚其他方案、其他實施例和其他特征。
根據以下說明和所附權利要求,結合附圖,本公開的前述和其他特征將更加清楚。在認識到這些附圖僅僅示出了根據本公開的一些示例且因此不應被認為是限制本公開范圍的前提下,通過使用附圖以額外的特征和細節來詳細描述本公開,附圖中:圖1示出了用于向移動設備提供基于位置的服務的示例系統的框圖;圖2示出了用于實施基于位置的服務的示例環境;圖3示出了為了位置隱私保護而向基于位置的服務提供虛擬信息的概念圖;圖4示出了針對包括用于保護位置隱私的虛擬信息的位置信息的示例數據分組;圖5示出了與基于位置的服務一同使用的示例虛擬信息系統的框圖;圖6示出了可以用于實現針對位置隱私保護的虛擬信息的通用計算設備;圖7示出了可以用于實現針對位置隱私保護的虛擬信息的專用處理器;圖8是示出了采用虛擬信息來保護位置隱私的示例方法的流程圖,該方法可以由如圖6的設備600之類的計算設備或者如圖7的處理器790之類的專用處理器來執行;以及圖9示出了示例計算機程序產品的框圖,以上附圖全部根據本文所述的至少一些實施例來布置。
具體實施例方式在以下詳細說明中,參考了作為詳細說明的一部分的附圖。在附圖中,類似符號通常表示類似部件,除非上下文另行指明。
具體實施方式
部分、附圖和權利要求書中記載的示例性實施例并不是限制性的。在不脫離在此所呈現主題的精神或范圍的情況下,可以利用其他實施例,且可以進行其他改變。應當理解,在此一般性記載以及附圖中圖示的本公開的各方案可以按照在此明確和隱含公開的多種不同配置來設置、替換、組合、分割和設計。本公開尤其針對與向基于位置的服務(LBS)提供商發送位置數據中的隱私保護相關的方法、裝置、系統、設備和/或計算機程序產品。簡要來說,可以基于要接收的預計LBS數據和帶寬可用性的比較以及發送信息的移動設備上的預計功率使用和移動設備的可用功率的比較來確定要連同實際位置信息一起發送至LBS提供商的虛擬位置信息集合的最大數目以用于保護隱私。根據一些實施例,可以產生虛擬信息,使得現實軌跡的獲取不會使入侵者檢測到當用戶移動時的用戶的實際路徑。圖1示出了根據本文描述的至少一些實施例的用于向移動設備提供基于位置的服務的示例系統的框圖100。框圖100中所示的移動設備操作環境可以包括與蜂窩設備102,GPS服務101和/或無線網絡103相連的移動設備120,這些可以與移動設備120交互以提供移動位置數據和其他服務。移動設備120可以包括移動位置數據模塊123,用于獲得與移動位置有關的數據或移動設備的地理位置,例如移動設備的GPS詳細位置或周圍的蜂窩塔的蜂窩塔信號強度或周圍的WLAN熱點的信號強度。移動設備120可以連續地或周期性地收集和存儲移動位置數據和信號強度數據,并且經由蜂窩網絡或另一無線網絡向服務器110傳送移動位置數據。因為發送信息會消耗很大的能量,設備可以在其可以使用準確位置(例如GPS)時發送更新以更新服務器,并且在其沒有獲得GPS時偶爾發送更新。服務器110的LBS應用113可以存儲并處理位置數據以提供基于位置的服務,例如購物建議、折扣券、地圖服務等等。移動設備120和服務器110可以采用通信硬件接口 121和111,通過其各自的通信應用122和112進行通信。為了保護用戶的位置隱私,移動位置數據模塊123可以產生多個虛擬位置信息集合(匿名)并將其發送至LBS應用113。作為響應,移動設備120可以接收針對提交的位置數據(包括虛擬信息)的LBS提議,并從中選擇實際位置,在該處理中保護用戶的實際位置。由于接收大量的LBS提議數據可能消耗寶貴的帶寬(通常出于物理原因或系統要求(例如用戶被分配的帶寬)),而且額外的通信/處理量可能占用移動設備120的通常有限的電源,根據一些實施例,可以基于系統中的這兩個限制來確定虛擬位置信息集合的最大數目。服務器110的各個操作方面可以通過其用戶接口 114來控制。類似的,可以使用戶能夠通過移動設備120的用戶接口 124來提供偏好并接收LBS。圖2示出了根據本文描述的至少一些實施例的用于實施基于位置的服務的示例環境。如圖所示,圖示200示出了具有移動設備220的用戶位于地圖202上的特定位置處。當例如通過位置確定服務(例如全球定位服務GPS)確定其位置時,移動設備可以將其位置數據204發送至LBS提供商210。LBS提供商210可以基于接收的位置數據在數據存儲器208中查找可用的服務,并利用基于位置的服務將消息206發送至移動設備220。然而,移動設備220和LBS提供商210之間的通信可能被入侵者捕獲,從而確定用戶的實際位置。為了保護用戶的位置隱私,根據一些實施例,可以在系統中連同實際位置信息一起發送虛擬位置信息。盡管可能隨著發送的虛擬位置數據集合的數目的增大而使保護增強,系統的效率可能降低,因為每一個虛擬位置數據集合的產生和發送以及作為響應的服務的接收可能消耗帶寬和移動設備的功率。根據一些實施例,可以通過設置用于從服務提供商接收基于位置的服務信息的匿名(虛擬位置數據)的數目來非對稱地提升信道效率。通常,接收的LBS數據遠大于發送的位置數據。因此,與發送位置信息相比,如果在接收數據時使用更少數目的匿名,則可以減小所交換的數據量。從用戶的服務提供商接收的數據從侵入角度看典型地更安全,因為與向服務提供商發送的原始位置數據相比,它們是假數據。根據其他實施例,還可以考慮接收LBS數據的移動設備處的功耗。移動設備典型地具有有限數量的可用功率(電池組、太陽能等)。大部分可用功率消耗在活動的通信(例如接收大量的LBS數據)中。因此,通過基于移動設備處的可用功率來限制發送的虛擬位置數據集合的數目,可以節省功率。典型地,移動設備在使用位置確定服務(例如GPS)時發送位置信息,這進一步消耗功率。根據其他實施例,可以以預先定義的周期或隨機間隔來發送虛擬位置信息,即使用戶未使用位置確定服務(例如,GPS服務關閉),這使得入侵者實際上不可能捕捉用戶的實時位置。額外的考慮可能涉及服務要求。例如,用戶可被分配有限數量的帶寬或要在給定時間段中傳輸的數據(例如,每月的數據分配)。因此,可以基于該服務要求和當前使用級別而進一步限制要發送的虛擬位置數據集合的數目。圖3示出了根據本文描述的至少一些實施例的為了位置隱私保護而向基于位置的服務提供虛擬信息的概念圖示300。如圖所示,圖示300示出了用戶的移動設備320如何能夠從GPS服務301或蜂窩服務302 (或前文討論的其他服務)獲得位置信息。然后,移動設備320通過蜂窩服務302或其他手段(例如,無線LAN連接、有線連接等)向LBS提供商310提供實際位置數據324,并接收與基于位置的服務相關聯的數據。為了保護用戶的位置隱私,移動設備320可以連同實際位置數據324 —起向LBS提供商310發送虛擬位置數據集合 322,326 和 328。
·
通常,從LBS提供商310接收的數據在數量上可以遠大于移動設備320向LBS提供商310發送的位置信息。因此,設置過多的匿名可能導致超過業務容量或允許的帶寬分配,因為服務數據與匿名的數目成比例地增大。增大的服務數據的數量還可能導致不必要的電池消耗。考慮到帶寬使用,B[比特/秒]可以表示針對移動設備320的分配的或可用的帶寬,Qn [比特/秒](n= I,2...N)可以是服務提供商針對每一個位置數據集合而傳輸的LBS數據的數量,其中N是虛擬數據集合的數目。如前文所述,從移動設備320向LBS提供商310發送的位置信息可以被省略,因為該數據量與接收的數據相比較小。不失一般性,接收的數據可以表達為Ql = Q2 =...= QN。因此,[1]Β 彡 N*Qn,從中可以得到[2]N<B/Qn。類似的,用于接收Qn數據的功率使用可以定義為Pn[W]。如果T[W]是最大可用(或允許的)功率,[3]T 彡 N*Pn,從中可以得到[4]N<T/Pn。
因此,根據等式[2]和[4],可以取得[5] N ( min (B/Qn, T/Pn)因此,虛擬位置數據集合或匿名的最大數目可以表達為min(B/Qn,T/Pn)。當用戶未移動(即,處于固定位置)并且使用基于位置的服務時,入侵者/黑客不容易從用戶的查詢中檢測到虛擬數據。然而,當用戶正在移動時,入侵者可以檢測到虛擬數據并基于虛擬數據集合的軌跡來推斷用戶的位置。因此,可以產生虛擬位置數據集合322、326和328,以超出現實并偏離用戶的路徑軌跡。圖4示出了根據本文描述的至少一些實施例而布置的、針對包括用于保護位置隱私的虛擬信息的位置信息的示例數據分組。根據一些實施例,移動設備可以發送虛擬位置信息,即使該使用未創建與LBS有關的任何查詢。因為位置信息的發送甚至與是否存在查詢無關,入侵者可能無法辨別哪個信息是真實的信息。此外,即使在移動設備處關閉位置確定以降低功耗,也可以發送假信息。根據其他實施例,用戶能夠通過調整假信息發送的頻率來設置隱私保護級別。如圖4所示,圖示400示出了如何基于來自LBS提供商的子碼來選擇匿名(虛擬位置數據集合)。整個組410是移動設備向LBS提供商發送的位置數據集合(411-415)的組。子組430是包括用戶的實際位置412以及多個選擇的匿名(例如411和414)的位置數據集合的組,該組是移動設備從LBS提供商接收的。整個組410中的匿名的數目大于針對子組430所選擇的匿名的數目。子碼420是允許移動設備在整個組內選擇子組的索引碼。子碼420可以在移動設備第一次向LBS提供商注冊時的初始化過程中產生。根據一些實施例,子碼420可以被看作唯一的密碼。在圖示400中,子碼數據分組示出了匿名以及實際用戶位置信息的順序(421、422、423、424和425)以及哪些(421、422和424)被實際發送。圖5示出了根據本文描述的至少一些實施例而布置的、與基于位置的服務一同使用的示例虛擬信息系統的框圖500。如上所述,整個組表示能夠被發送至LBS提供商的位置數據集合的組(用戶+K個匿名)。因此,該數目可以表達為K+1。子組表示用戶從LBS提供商接收的用戶+M個匿名的組。該第二數目是M+1,其中K>M。如圖示500中所示,根據實施例的系統中的操作流程包括初始化過程502,其中用戶506第一次向LBS提供商510注冊。在初始化過程502期間,LBS提供商510可以為不同用戶產生不同的子碼(504),并將其發送給用戶。因為這些碼一旦被創建便可以永久地使用,可能不需要再次創建它們,或者可以為了額外的安全性以預定的間隔再次創建這些碼。該碼表示用戶和子組之間的索引。在隱私保護過程503期間,當用戶506實際上使用LBS時,用戶506可以向LBS提供商510發送個人位置信息和K個匿名514(總稱為“整個組”)。在此階段,可以對用戶的位置信息進行加密(512)以將其置于具有索引編號“I”的子碼的中間。LBS提供商510可以不處理所有接收的(K+1)個位置數據集合并發送相關聯的LBS數據。可以使用子碼對接收的數據進行解密(508),然后發送對應的(M+1)個服務數據集合。因為LBS提供商510提供的信息對于攻擊來說典型地受到更好的保護,即使空間遮蔽域降低,也可以保護隱私。圖6示出了根據本文描述的至少一些實施例的可以用于實現針對位置隱私保護的虛擬信息的通用計算設備600。在非常基本的配置602中,計算設備600典型地包括一個或多個處理器604以及系統存儲器606。存儲總線608可以用于在處理器604與系統存儲器606之間通信。根據上述配置,處理器604可以是任何類型的,包括但不限于微處理器(μ P)、微控制器(μ C)、數字信號處理器(DSP)或其任意組合。處理器804可以包括一級或多級高速緩存,如,高速緩存存儲器612、處理器核芯614和寄存器616。示例處理器核心614可以包括算數邏輯單元(ALU)、浮點運算單元(FPU)、數字信號處理核心(DSP核心)或其任意組合。示例存儲器控制器618也可以與處理器604 —起使用,或者在一些實現方式中存儲器控制器618可以是處理器604的內部部件。根據期望的配置,系統存儲器606可以是任何類型的,包括但不限于易失性存儲器(如,RAM)、非易失性存儲器(如,ROM、閃存等)或其任意組合。系統存儲器606可以包括操作系統620、通信應用622和程序數據624。通信應用622可以包括定位模塊626,定位模塊626被布置為確定計算設備600的實際位置、產生一個或更多個虛擬位置數據并管理虛擬位置數據和實際位置數據向一個或更多個LBS提供商的發送,以及上文討論的其他任何過程、方法以及功能。如以上結合圖1至圖5討論的,程序數據624可以包括一個或更多個位置數據628以及類似數據。如本文描述的,該數據可以用于產生虛擬位置數據并提供實際位置數據以及虛擬位置數據以保護位置隱私。在一些實施例中,通信應用622可以被布置為如本文所述與程序數據624—起操作在操作系統620上。圖6中利用內部虛線中的組件示出了上述基本配置602。計算設備600可以具有附加特征或功能以及附加界面,以便于在基本配置602與任何所需設備和接口之間的通信。例如,可以使用總線/接口控制器630以便于在基本配置602與一個或多個數據存儲設備632之間經由存儲接口總線634進行通信。數據存儲設備632可以是可移除存儲設備636、不可移除存儲設備638或其組合。可移除存儲設備和不可移除存儲設備的示例包括:磁盤設備,如,軟盤驅動器和硬盤驅動器(HDD);光盤驅動器,如,緊致盤(CD)驅動器或數字多功能光盤(DVD)驅動器;固態驅動器(SSD);以及磁帶驅動器等。示例計算機存儲介質可以包括以任何方法或技術實現的易失性和非易失性、可移除和不可移除的介質以用于存儲信息,如,計算機可讀指令、數據結構、程序模塊或其他數據。系統存儲器606、可移除存儲設備636、不可移除存儲設備638是計算機存儲介質的示例。計算機存儲介質包括但不限于RAM、R0M、EEPR0M、閃存或其他存儲技術、CD-ROM、數字通用盤(DVD)或其他光學存儲裝置、磁盒、磁帶、磁盤存儲裝置或其他磁性存儲設備或者可以用于存儲所需信息并且可以被計算設備600訪問的任何其他介質。任何這樣的計算機存儲介質都可以是計算設備600的一部分。計算設備600還可以包括接口總線640,所述接口總線640用于促進從各種接口設備(例如,輸出設備642、外圍接口 644和通信設備666)經由總線/接口控制器630至基本配置602的通信。示例輸出設備642包括:圖形處理單元648和音頻處理單元650,可以配置為經由一個或多個AV端口 652與諸如顯示器或揚聲器之類的各種外圍設備通信。示例外圍接口 644包括:串行接口控制器654和并行接口控制器656,配置為經由一個或多個I/O端口 658與諸如輸入設備(例如,鍵盤、鼠標、筆、語音輸入設備、觸摸輸入設備等)之類的外部設備或其他外圍設備(例如,打印機、掃描儀等)通信。示例通信設備666包括:網絡控制器660,可以布置為促進經由一個或多個通信端口 664在網絡通信鏈路上與一個或多個其他計算設備662通信。網絡通信鏈路可以是通信介質的一個示例。通信介質可以典型地體現為計算機可讀指令、數據結構、程序模塊或調制數據信號中的其他數據,如,載波或其他傳輸介質,并且通信介質可以包括任何信息傳遞介質。“調制數據信號”可以是以下這樣的信號:該信號的特性中的一個或多個被設置或改變為使得將信息編碼在信號中。例如而非限制性的,通信介質可以包括諸如有線網絡或直接有線連接等有線介質以及諸如聲學、射頻(RF)、微波、紅外(IR)和其他無線介質等無線網絡。本文使用的術語計算機可讀介質可以包括存儲介質和通信介質兩者。計算設備600可以實現為物理服務器、虛擬服務器、計算云或包括上述功能的混合設備的一部分。計算設備600還可以實現為包括膝上型計算機配置和非膝上型計算機配置兩者的個人計算機。此外,計算設備800可以實現為聯網系統或者實現為通用或專用服務器的一部分。包括計算設備600的聯網系統的網絡可以包括服務器、客戶端、交換機、路由器、調制解調器、互聯網服務提供商以及任意適當通信介質(例如,有線通信或無線通信)的任何拓撲。根據一些實施例的系統可以具有靜態或動態網絡拓撲。網絡可以包括諸如企業網(例如,LAN、WAN或WLAN)之類的安全網絡、諸如無線開放網絡(例如,IEEE802.11無線網絡)之類的非安全網絡或者全球網絡(例如,互聯網)。網絡還可以包括適于一起工作的多個不同網絡。這樣的網絡被配置為在本文描述的節點之間提供通信。例如而非限制性的,這些網絡可以包括無線介質,如,聲音、RF、紅外和其他無線介質。此外,網絡可以是同一網絡或分立網絡的一部分。圖7示出了根據本文描述的至少一些實施例布置的可以用于實現針對位置隱私保護的虛擬信息的專用處理器。圖示700中的處理器790可以是與負責確定移動設備的位置并通過有線或無線網絡與LBS提供商通信的一個或多個模塊通信耦合的移動設備的一部分。處理器790可以包括多個模塊,如,配置為通過一個或多個網絡710-2與一個或多個LBS提供商780通信以發送位置數據(實際和虛擬)并繼而接收LBS有關數據的通信模塊796。匿名產生模塊798可以產生匿名數據,該數據虛擬位置信息可以被創建并連同實際位置數據一起發送至LBS提供商780,以保護移動設備的用戶的隱私。存儲器791可以被配置為存儲用于處理器790的控制模塊的指令,處理器790可以實現為硬件、軟件或者硬件與軟件的組合。數據中的一些可以包括但不限于位置數據792、用戶偏好794或類似信息。處理器790可以被配置為通過電耦合或通過聯網通信(例如,一個或多個網絡710-1)與其他計算設備(例如,一個或更多個位置數據源770和/或諸如存儲設施760之類的數據存儲裝置)通信。示例實施例還可以包括方法。可以以多種方式實現這些方法,包括本文描述的結構。一種方式是通過本公開描述的類型的設備的機器操作。另一種可選方式是,結合操作人員來執行方法的各個操作中的一個或多個操作,其中一些操作由一個或更多個操作人員來執行,而其他操作由機器來執行。這些操作人員不需要彼此處于相同位置,而是可以每個人僅需要具有執行程序的一部分的機器。在其他示例中,例如可以通過預先選擇機器自動化的標準來使人交互自動化。
圖8是示出了根據本文描述的至少一些實施例的采用虛擬信息來保護位置隱私的示例方法的流程圖,該方法可以由如圖6的計算設備600之類的計算設備或者如圖7的處理器790之類的專用處理器來執行。方框822至832描述的操作可以作為計算機可執行指令存儲在計算機可讀介質820中,并由控制器設備810來執行,控制器設備810可以是圖6中的計算設備600、圖7的專用處理器790或類似設備。采用虛擬信息來保護位置隱私的過程可以開始于操作822,“連接至LBS提供商”。在操作822,諸如圖1中的移動設備120之類的移動設備可以與LBS提供商和其他位置數據源(例如GPS提供商)通信,以確定移動設備的位置。操作822之后可以是操作824,“接收/產生子碼”。在操作824,索引碼(也被稱為子碼)可以在用戶和LBS提供商之間預先確定、由LBS提供商產生并與用戶預先共享、或由與LBS提供商相連的計算設備產生并發送至LBS提供商。子碼可以在當移動設備第一次連接到服務提供商時在初始化過程中產生,類似于密碼。操作824之后可以是可選的操作826,“確定用戶是否在移動”。在可選的操作826中,移動設備可以基于改變的實際位置數據來確定用戶正在移動。即使假位置數據集合連同實際位置數據一同發送,可以根據移動路徑來確定用戶的軌跡(從而確定估計的位置)。因此,在操作826之后的可選的操作828處,“如果用戶在移動,產生虛擬軌跡”,可以產生偽裝用戶的實際運動路徑的虛擬軌跡。可選的操作828之后可以是操作830,“提交實際位置和基于BW和/或功率的虛擬位置的最大數目的子組”。在操作830處,可以基于在操作824處接收/產生的子碼來選擇虛擬位置數據集合的子組,并連同實際位置數據一起發送至LBS提供商。可以確定要發送的虛擬位置數據集合的數目,以基于帶寬可用性和/或移動設備處的功率可用性來選擇虛擬位置的最大數目。操作830之后可以是操作832,“接收針對實際和虛擬位置的LBS”。在操作832處,可以基于所發送的位置來接收LBS數據。隨后,移動設備可以濾除針對虛擬位置的LBS數據,并向用戶呈現針對實際位置的可用LBS。上述過程中包含的操作用于說明的目的。可以通過類似的過程以更少或額外的操作來實現針對位置隱私的虛擬信息的發送。在一些實例中,可以按照不同順序來執行操作。在一些其他示例中,可以消除各種操作。在一些其他示例中,各個操作可以分成附加的操作或者組合在一起成為更少的操作。圖9示出了根據本文描述的至少一些實施例布置的示例計算機程序產品900的框圖。在一些示例中,如圖9所示,計算機程序產品900可以包括信號承載介質902,信號承載介質902還可以包括機器可讀指令904,所述機器可讀指令904在由例如處理器來執行時,可以提供以上參考圖6或圖7描述的功能。因此,例如,關于計算設備600,定位模塊626可以響應于信號承載介質902傳送至處理器604的指令904來執行圖9所示任務中的一個或多個,以執行如本文所述與發送針對位置隱私的虛擬信息相關聯的動作。這些指令中的一些可以與以下操作相關聯:產生子碼、產生虛擬位置數據的組以及提交實際位置信息和基于可用帶寬和/或接收LBS的移動設備處的功率而從產生的組中選擇的虛擬位置數據的子組。在一些實現方式中,圖9所示的信號承載介質902可以包括計算機可讀介質906,例如但不限于硬盤驅動器、緊致盤(CD)、數字通用盤(DVD)、數字磁帶、存儲器等。在一些實現方式中,信號承載介質902可以包括可記錄介質908,例如但不限于存儲器、讀/寫(R/W)⑶、R/WDVD等等。在一些實現方式中,信號承載介質902可以包括通信介質910,例如但不限于數字和/或模擬通信介質(例如,光纖光纜、波導、有線通信鏈路、無線通信鏈路等等)。因此,例如,可以通過RF信號承載介質將程序產品900傳送至處理器790的一個或多個模塊,其中,可以通過無線通信介質910(例如,符合IEEE802.11標準的無線通信介質)來傳送信號承載介質902。本公開描述了一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的方法。該方法可以包括:與基于位置的服務(LBS)提供商相連,以及向LBS提供商提交用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、與LBS提供商相連的計算設備的功耗、和/或LBS提供商的服務要求。該方法還可以包括從LBS提供商接收與第二子組虛擬位置以及用戶的實際位置相關聯的基于位置的服務數據,其中所述第二子組是所述第一子組的子集。根據一些示例,虛擬位置的整個組可以表示在不考慮任何約束的情況下LBS提供商所允許的最大數目的虛擬位置,第一子組虛擬位置可以表示基于所述一個或更多個約束而允許由用戶提交的最大數目的虛擬位置,以及第二組虛擬位置可以表示從LBS提供商接收LBS信息的位置。可以使用子碼來選擇第二子組虛擬位置,所述子碼表示用戶的實際位置與所述第二子組虛擬位置之間的索引。子碼可以在用戶和LBS提供商之間預先確定、由LBS提供商產生并與用戶預先共享、或由與LBS提供商相連的計算設備產生并向LBS提供商發送。根據其他示例,第一子組虛擬位置可以基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇。可以對用戶的實際位置和第一子組虛擬位置進行加密以向LBS提供商發送。此外,可以基于N < min(B/Qn,T/Pn)-l,針對要提交給LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對與LBS提供商相連的計算設備的可用帶寬,Qn表示LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述計算設備的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。可以以預定周期性間隔和隨機間隔之一向LBS提供商發送第一子組虛擬位置。此夕卜,可以使用戶能夠通過調整發送的頻率來設置隱私保護等級。根據其他示例,該方法還可以包括:當計算設備的位置確定服務無效和/或并未向LBS提供商查詢時,向LBS提供商發送用戶的實際位置信息和第一子組虛擬位置。虛擬位置信息可以包括虛構位置信息和/或過往實際位置信息中的至少一項。該方法還可以包括:當確定用戶正在移動時,產生虛擬位置的軌跡;以及發送沿著所產生的軌跡的虛擬位置,使得用戶的移動被隱藏。本公開還提供了一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的裝置。該裝置可以包括:存儲器,被配置為存儲指令;以及處理器,與所述存儲器耦合并且被適配為執行所述指令。當所述指令被執行時,它們可以使所述處理器與基于位置的服務(LBS)提供商相連并且向LBS提供商提交用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、該裝置的功耗、和/或LBS提供商的服務要求。所述處理器還可以從LBS提供商接收與第二子組虛擬位置以及用戶的實際位置相關聯的基于位置的服務數據,其中所述第二子組是所述第一子組的子集。根據一些示例,虛擬位置的整個組可以表示在不考慮任何約束的情況下LBS提供商所允許的最大數目的虛擬位置,第一子組虛擬位置可以表示基于所述一個或更多個約束而允許由用戶提交的最大數目的虛擬位置,以及第二組虛擬位置可以表示從LBS提供商接收LBS信息的位置。處理器可以使用子碼來選擇第二子組虛擬位置,所述子碼表示用戶的實際位置與所述第二子組虛擬位置之間的索引。子碼可以是在用戶和LBS提供商之間預先確定的、由LBS提供商產生并與用戶預先共享、或由與LBS提供商相連的計算設備產生并向LBS提供商發送。根據其他示例,處理器可以基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇第一子組虛擬位置。處理器可以對用戶的實際位置和所述第一子組虛擬位置進行加密以向LBS提供商發送。此外,可以基于N ( min (B/Qn, T/Pn)-1,針對要提交給LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對與LBS提供商相連的計算設備的可用帶寬,Qn表示LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述計算設備的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。處理器可以以預定周期性間隔和隨機間隔之一向LBS提供商發送第一子組虛擬位置。此外,可以使用戶能夠通過調整發送的頻率來設置隱私保護等級。根據其他示例,處理器還可以被配置為:當計算設備的位置確定服務無效時和/或并未向LBS提供商查詢時,向LBS提供商發送用戶的實際位置信息和所述第一子組虛擬位置。虛擬位置信息可以包括虛構位置信息和/或過往實際位置信息中的至少一項。處理器還可以被配置為:當確定用戶正在移動時,產生虛擬位置的軌跡;以及發送沿著所產生的軌跡的虛擬位置,使得用戶的移動被隱藏。本公開還描述了一種其上存儲有指令的計算機可讀存儲介質,用于一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的方法。該方法可以包括與基于位置的服務(LBS)提供商相連以及向LBS提供商提交用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、與LBS提供商相連的計算設備的功耗、和/或LBS提供商的服務要求。該方法還可以包括從LBS提供商接收與第二子組虛擬位置以及用戶的實際位置相關聯的基于位置的服務數據,其中所述第二子組是所述第一子組的子集。根據一些示例,虛擬位置的整個組可以表示在不考慮任何約束的情況下LBS提供商所允許的最大數目的虛擬位置,第一子組虛擬位置可以表示基于所述一個或更多個約束允許由用戶提交的最大數目的虛擬位置,以及第二組虛擬位置可以表示從LBS提供商接收LBS信息的位置。可以使用子碼來選擇第二子組虛擬位置,所述子碼表示用戶的實際位置與所述第二子組虛擬位置之間的索引,以及所述子碼可以在用戶和LBS提供商之間預先確定、由LBS提供商產生并與用戶預先共享、和/或由與LBS提供商相連的計算設備產生并向LBS提供商發送。第一子組虛擬位置可以基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇。該方法還可以包括:基于N<min(B/Qn,T/Pn)-l,針對要提交給LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對與LBS提供商相連的計算設備的可用帶寬,Qn表示LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述計算設備的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。根據其他示例,該方法還可以包括:以預定周期性間隔或隨機間隔向LBS提供商發送所述第一子組虛擬位置,并且當所述計算設備的位置確定服務無效時,向LBS提供商發送用戶的實際位置信息和所述第一子組虛擬位置。本公開還描述了一種通過采用虛擬信息連同基于位置的服務來實現位置隱私的保護的方法。該方法可以包括向基于位置的服務(LBS)提供商注冊用戶以及在LBS提供商處接收用戶的實際位置以及第一子組虛擬位置。所述第一子組可以基于一個或更多個約束從虛擬位置的整個組中選擇,所述一個或更多個約束包括:可用帶寬、與LBS提供商相連的計算設備的功耗、和/或LBS提供商的服務要求。可以將與第二子組虛擬位置以及用戶的實際位置相關聯的LBS數據提供給與LBS提供商相連的計算設備,其中所述第二子組是所述第一子組的子集。虛擬位置的整個組可以表示在不考慮任何約束的情況下LBS提供商所允許的最大數目的虛擬位置,第一子組虛擬位置可以表示基于所述一個或更多個約束允許從用戶接收的最大數目的虛擬位置,以及第二組虛擬位置可以表示LBS提供商發送LBS信息的位置。根據一些示例,可以使用子碼來選擇第二子組虛擬位置,所述子碼表示用戶的實際位置與所述第二子組虛擬位置之間的索引,所述子碼可以在用戶和LBS提供商之間預先確定、由LBS提供商產生并與用戶預先共享、或由與LBS提供商相連的計算設備產生并向LBS提供商發送。第一子組虛擬位置可以基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇。此外,可以基于N < min (B/Qn, T/Pn)-1,針對要提交給LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對與LBS提供商相連的計算設備的可用帶寬,Qn表示LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述計算設備的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。根據一些示例的其他方法還可以包括:使所述計算設備以預定周期性間隔和隨機間隔之一向LBS提供商發送所述第一子組虛擬位置,并且使用戶能夠通過調整發送的頻率來設置隱私保護等級。當計算設備的位置確定服務無效時,可以實現向LBS提供商發送用戶的實際位置信息和所述第一子組虛擬位置。此外,虛擬位置信息可以包括虛構位置信息和/或過往實際位置信息中的至少一項。根據其他示例,該方法還可以包括:當確定用戶正在移動時,使所述計算設備能夠產生虛擬位置的軌跡;以及實現沿著所產生的軌跡的虛擬位置的發送,使得用戶的移動被隱藏。在系統方案的硬件和軟件實現方式之間存在一些小差別;硬件或軟件的使用一般(但并非總是,因為在特定情況下硬件和軟件之間的選擇可能變得很重要)是一種體現成本與效率之間權衡的設計選擇。可以各種手段(例如,硬件、軟件和/或固件)來實施這里所描述的工藝和/或系統和/或其他技術,并且優選的工藝將隨著所述工藝和/或系統和/或其他技術所應用的環境而改變。例如,如果實現方確定速度和準確性是最重要的,則實現方可以選擇主要為硬件和/或固件的手段;如果靈活性是最重要的,則實現方可以選擇主要是軟件的實施方式;或者,同樣也是可選地,實現方可以選擇硬件、軟件和/或固件的特定組合。以上的詳細描述通過使用方框圖、流程圖和/或示例,已經闡述了設備和/或工藝的眾多實施例。在這種方框圖、流程圖和/或示例包含一個或多個功能和/或操作的情況下,本領域技術人員應理解,這種方框圖、流程圖或示例中的每一功能和/或操作可以通過各種硬件、軟件、固件或實質上它們的任意組合來單獨和/或共同實現。在一個實施例中,本公開所述主題的若干部分可以通過專用集成電路(ASIC)、現場可編程門陣列(FPGA)、數字信號處理器(DSP)、或其他集成格式來實現。然而,本領域技術人員應認識到,這里所公開的實施例的一些方面在整體上或部分地可以等同地實現在集成電路中,實現為在一臺或多臺計算機上運行的一個或多個計算機程序(例如,實現為在一臺或多臺計算機系統上運行的一個或多個程序),實現為在一個或多個處理器上運行的一個或多個程序(例如,實現為在一個或多個微處理器上運行的一個或多個程序),實現為固件,或者實質上實現為上述方式的任意組合,并且本領域技術人員根據本公開,將具備設計電路和/或寫入軟件和/或固件代碼的能力。本公開不限于在本申請中描述的具體示例,這些具體示例意在說明不同方案。本領域技術人員清楚,不脫離本公開的精神和范圍,可以做出許多修改和變型。本領域技術人員根據之前的描述,除了在此所列舉的方法和裝置之外,還可以想到本公開范圍內功能上等價的其他方法和裝置。這種修改和變型應落在所附權利要求的范圍內。本公開應當僅由所附權利要求的術語及其等價描述的整個范圍來限定。應當理解,本公開不限于具體方法、材料、配置,這些當然都是可以改變的。還應理解,這里所使用的術語僅用于描述具體示例的目的,而不應被認為是限制性的。此外,本領域技術人員將認識到,本公開所述主題的機制能夠作為多種形式的程序產品進行分發,并且無論實際用來執行分發的信號承載介質的具體類型如何,本公開所述主題的示例性實施例均適用。信號承載介質的示例包括但不限于:可記錄型介質,如軟盤、硬盤驅動器、緊致盤(CD)、數字通用盤(DVD)、數字磁帶、計算機存儲器等;以及傳輸型等。本領域技術人員應認識到,上文詳細描述了設備和/或工藝,此后使用工程實踐來將所描述的設備和/或工藝集成到數據處理系統中是本領域的常用手段。也即,這里所述的設備和/或工藝的至少一部分可以通過合理數量的試驗而被集成到數據處理系統中。本領域技術人員將認識到,典型的數據處理系統一般包括以下各項中的一項或多項:系統單元外殼;視頻顯示設備;存儲器,如易失性和非易失性存儲器;處理器,如微處理器和數字信號處理器;計算實體,如操作系統、驅動程序、圖形用戶接口、以及應用程序;一個或多個交互設備,如觸摸板或屏幕;和/或控制系統,包括反饋環和控制模塊(例如,調整位置確定或匿名信息產生參數)。典型的數據處理系統可以利用任意合適的商用部件(如數據計算/通信和/或網絡計算/通信系統中常用的部件)予以實現。本公開所述的主題有時說明不同部件包含在不同的其他部件內或者不同部件與不同的其他部件相連。應當理解,這樣描述的架構只是示例,事實上可以實現許多能夠實現相同功能的其他架構。在概念上,有效地“關聯”用以實現相同功能的部件的任意設置,從而實現所需功能。因此,這里組合實現具體功能的任意兩個部件可以被視為彼此“關聯”從而實現所需功能,而無論架構或中間部件如何。同樣,任意兩個如此關聯的部件也可以看作是彼此“可操作地連接”或“可操作地耦合”以實現所需功能,且能夠如此關聯的任意兩個部件也可以被視為彼此“能可操作地耦合”以實現所需功能。能可操作地耦合的具體示例包括但不限于物理上可配對和/或物理上交互的部件,和/或無線交互和/或可無線交互的部件,和/或邏輯交互和/或可邏輯交互的部件。至于本文中任何關于多數和/或單數術語的使用,本領域技術人員可以從多數形式轉換為單數形式,和/或從單數形式轉換為多數形式,以適合具體環境和應用。為清楚起見,在此明確聲明單數形式/多數形式可互換。本領域技術人員應當理解,一般而言,所使用的術語,特別是所附權利要求中(例如,在所附權利要求的主體部分中)使用的術語,一般地應理解為“開放”術語(例如,術語“包括”應解釋為“包括但不限于”,術語“具有”應解釋為“至少具有”等)。本領域技術人員還應理解,如果意在所引入的權利要求中標明具體數目,則這種意圖將在該權利要求中明確指出,而在沒有這種明確標明的情況下,則不存在這種意圖。例如,為幫助理解,所附權利要求可能使用了引導短語“至少一個”和“一個或多個”來引入權利要求中的特征。然而,這種短語的使用不應被解釋為暗示著由不定冠詞“一”或“一個”引入的權利要求特征將包含該特征的任意特定權利要求限制為僅包含一個該特征的實施例,即便是該權利要求既包括引導短語“一個或多個”或“至少一個”又包括不定冠詞如“一”或“一個”(例如,“一”和/或“一個”應當被解釋為意指“至少一個”或“一個或多個”);在使用定冠詞來引入權利要求中的特征時,同樣如此。另外,即使明確指出了所引入權利要求特征的具體數目,本領域技術人員應認識到,這種列舉應解釋為意指至少是所列數目(例如,不存在其他修飾語的短語“兩個特征”意指至少兩個該特征,或者兩個或更多該特征)。另外,在使用類似于“A、B和C等中至少一個”這樣的表述的情況下,一般來說應該按照本領域技術人員通常理解該表述的含義來予以解釋(例如,“具有A、B和C中至少一個的系統”應包括但不限于單獨具有A、單獨具有B、單獨具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系統等)。在使用類似于“A、B或C等中至少一個”這樣的表述的情況下,一般來說應該按照本領域技術人員通常理解該表述的含義來予以解釋(例如,“具有A、B或C中至少一個的系統”應包括但不限于單獨具有A、單獨具有B、單獨具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系統等)。本領域技術人員還應理解,實質上任意表示兩個或更多可選項目的轉折連詞和/或短語,無論是在說明書、權利要求書還是附圖中,都應被理解為給出了包括這些項目之一、這些項目任一方、或兩個項目的可能性。例如,短語“A或B”應當被理解為包括“A”或“B”、或“A和B”的可能性。另外,在以馬庫什組描述本公開的特征或方案的情況下,本領域技術人員應認識至IJ,本公開由此也是以該馬庫什組中的任意單獨成員或成員子組來描述的。本領域技術人員應當理解,出于任意和所有目的,例如為了提供書面說明,本文公開的所有范圍也包含任意及全部可能的子范圍及其子范圍的組合。任意列出的范圍可以被容易地看作充分描述且實現了將該范圍至少進行二等分、三等分、四等分、五等分、十等分等。作為非限制性示例,在此所討論的每一范圍可以容易地分成下三分之一、中三分之一和上三分之一等。本領域技術人員應當理解,所有諸如“直至”、“至少”、“大于”、“小于”之類的語言包括所列數字,并且指代了隨后可以如上所述被分成子范圍的范圍。最后,本領域技術人員應當理解,范圍包括每一單獨數字。因此,例如具有I 3個單元的組是指具有1、2或3個單元的組。類似地,具有I 5個單元的組是指具有1、2、3、4或5個單元的組,以此類推。盡管已經在此公開了多個方案和實施例,但是本領域技術人員應當明白其他方案和實施例。這里所公開的多個方案和實施例是出于說明性的目的,而不是限制性的,本公開的真實范圍和精神由所附權利要求表征。
權利要求
1.一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的方法,所述方法包括: 與基于位置的服務“ LBS ”提供商相連; 向所述LBS提供商提交用戶的實際位置以及第一子組虛擬位置,其中,所述第一子組是基于一個或更多個約束從虛擬位置的整個組中選擇的,所述一個或更多個約束包括:可用帶寬、與所述LBS提供商相連的計算設備的功耗、和/或所述LBS提供商的服務要求;以及 從所述LBS提供商接收與第二子組虛擬位置以及所述用戶的實際位置相關聯的基于位置的服務數據,其中,所述第二子組是所述第一子組的子集。
2.根據權利要求1所述的方法,其中,所述虛擬位置的整個組表示在不考慮任何約束的情況下所述LBS提供商所允許的最大數目的虛擬位置,所述第一子組虛擬位置表示基于所述一個或更多個約束而允許由所述用戶提交的最大數目的虛擬位置,以及所述第二組虛擬位置表示從所述LBS提供商接收LBS信息的位置。
3.根據權利要求2所述的方法,其中,使用子碼來選擇所述第二子組虛擬位置,所述子碼表示所述用戶的實際位置與所述第二子組虛擬位置之間的索引。
4.根據權利要求3所述的方法,其中,所述子碼是在所述用戶和所述LBS提供商之間預先確定的。
5.根據權利要求3所述的方法,其中,所述子碼是由所述LBS提供商產生并與所述用戶預先共享的。
6.根據權利 要求3所述的方法,其中,所述子碼是由與所述LBS提供商相連的所述計算設備產生并向所述LBS提供商發送的。
7.根據權利要求3所述的方法,其中,所述第一子組虛擬位置是基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇的。
8.根據權利要求1所述的方法,還包括: 對所述用戶的實際位置和所述第一子組虛擬位置進行加密以向所述LBS提供商發送。
9.根據權利要求1所述的方法,還包括: 基于N < min(B/Qn,T/Pn)-1,針對要提交給所述LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對與所述LBS提供商相連的所述計算設備的可用帶寬,Qn表示所述LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述計算設備的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。
10.根據權利要求1所述的方法,還包括: 以預定周期性間隔和隨機間隔之一向所述LBS提供商發送所述第一子組虛擬位置。
11.根據權利要求10所述的方法,還包括: 使用戶能夠通過調整發送的頻率來設置隱私保護等級。
12.根據權利要求10所述的方法,還包括: 當所述計算設備的位置確定服務無效時,向所述LBS提供商發送用戶的實際位置信息和所述第一子組虛擬位置。
13.根據權利要求10所述的方法,還包括: 在并未向所述LBS提供商查詢的情況下,向所述LBS提供商發送所述用戶的實際位置和所述第一子組虛擬位置。
14.根據權利要求1所述的方法,其中,虛擬位置信息包括虛構位置信息和/或過往實際位置信息中的至少一項。
15.根據權利要求1所述的方法,還包括: 當確定用戶正在移動時,產生虛擬位置的軌跡;以及 發送沿著所產生的軌跡的虛擬位置,使得用戶的移動被隱藏。
16.一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的裝置,所述裝置包括: 存儲器,被配置為存儲指令; 處理器,與所述存儲器耦合,其中,所述處理器被適配為執行所述指令,當所述指令由所述處理器執行時,配置所述處理器: 與基于位置的服務“ LBS ”提供商相連; 向所述LBS提供商提交用戶的實際位置以及第一子組虛擬位置,其中,所述第一子組是基于一個或更多個約束從虛擬位置的整個組中選擇的,所述一個或更多個約束包括:可用帶寬、所述裝置的功耗、和/或所述LBS提供商的服務要求;以及 從所述LBS提供商接收與第二子組虛擬位置以及所述用戶的實際位置相關聯的基于位置的服務數據,其中,所述第二子組是所述第一子組的子集。
17.根據權利要求16所述的裝置,其中,所述虛擬位置的整個組表示在不考慮任何約束的情況下所述LBS提供商所允許的最大數目的`虛擬位置,所述第一子組虛擬位置表示基于所述一個或更多個約束而允許由所述用戶提交的最大數目的虛擬位置,以及所述第二組虛擬位置表示從所述LBS提供商接收LBS信息的位置。
18.根據權利要求17所述的裝置,其中,使用子碼來選擇所述第二子組虛擬位置,所述子碼表示所述用戶的實際位置與所述第二子組虛擬位置之間的索引。
19.根據權利要求18所述的裝置,其中,所述子碼是在所述用戶和所述LBS提供商之間預先確定的。
20.根據權利要求18所述的裝置,其中,所述子碼是由所述LBS提供商產生并與所述用戶預先共享的。
21.根據權利要求18所述的裝置,其中,所述子碼是由所述裝置產生并向所述LBS提供商發送的。
22.根據權利要求18所述的裝置,其中,所述第一子組虛擬位置是基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇的。
23.根據權利要求16所述的裝置,其中,所述處理器還被配置為: 對所述用戶的實際位置和所述第一子組虛擬位置進行加密以向所述LBS提供商發送。
24.根據權利要求16所述的裝置,其中,所述處理器還被配置為: 基于N < min(B/Qn,T/Pn)-1,針對要提交給所述LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對所述裝置的可用帶寬,Qn表示所述LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述裝置的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。
25.根據權利要求16所述的裝置,其中,所述處理器還被配置為:以預定周期性間隔和隨機間隔之一向所述LBS提供商發送所述第一子組虛擬位置。
26.根據權利要求25所述的裝置,其中,所述處理器還被配置為: 使用戶能夠通過調整發送的頻率來設置隱私保護等級。
27.根據權利要求25所述的裝置,其中,所述處理器還被配置為: 當所述裝置的位置確定服務無效時,向所述LBS提供商發送用戶的實際位置信息和所述第一子組虛擬位置。
28.根據權利要求25所述的裝置,其中,所述處理器還被配置為: 在并未向所述LBS提供商查詢的情況下,向所述LBS提供商發送所述用戶的實際位置和所述第一子組虛擬位置。
29.根據權利要求16所述的裝置,其中,虛擬位置信息包括虛構位置信息和/或過往實際位置信息中的至少一項。
30.根據權利要求16所述的裝置,其中,所述處理器還被配置為: 當確定用戶正在移動時,產生虛擬位置的軌跡;以及 發送沿著所產生的軌跡的虛擬位置,使得用戶的移動被隱藏。
31.一種其上存儲有指令的計算機可讀存儲介質,用于一種在使用基于位置的服務時通過采用虛擬信息來保護位置隱私的方法,所述方法包括: 與基于位置的服務“ LBS ”提供商相連; 向所述LBS提供商提交用戶的實際位置以及第一子組虛擬位置,其中,所述第一子組是基于一個或更多個約束從虛擬位置的整個組中選擇的,所述一個或更多個約束包括:可用帶寬、與所述LBS提供商相連的計算設備的功耗、和/或所述LBS提供商的服務要求;以及 從所述LBS提供商接收與第二子組虛擬位置以及所述用戶的實際位置相關聯的基于位置的服務數據,其中,所述第二子組是所述第一子組的子集。
32.根據權利要求31所述的計算機可讀存儲介質,其中,所述虛擬位置的整個組表示在不考慮任何約束的情況下所述LBS提供商所允許的最大數目的虛擬位置,所述第一子組虛擬位置表示基于所述一個或更多個約束而允許由所述用戶提交的最大數目的虛擬位置,以及所述第二組虛擬位置表示從所述LBS提供商接收LBS信息的位置。
33.根據權利要求32所述的計算機可讀存儲介質,其中,使用子碼來選擇所述第二子組虛擬位置,所述子碼表示所述用戶的實際位置與所述第二子組虛擬位置之間的索引,以及所述子碼是以下之一: 在所述用戶和所述LBS提供商之間預先確定的; 由所述LBS提供商產生并與所述用戶預先共享的;以及 由與所述LBS提供商相連的所述計算設備產生并向所述LBS提供商發送的。
34.根據權利要求33所述的計算機可讀存儲介質,其中,所述第一子組虛擬位置是基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇的。
35.根據權利要求31所述的計算機可讀存儲介質,其中,所述方法還包括: 基于N < min(B/Qn,T/Pn)-1,針對要提交給所述LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對與所述LBS提供商相連的所述計算設備的可用帶寬,Qn表示所述LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述計算設備的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。
36.根據權利要求31所述的計算機可讀存儲介質,其中,所述方法還包括: 以預定周期性間隔和隨機間隔之一向所述LBS提供商發送所述第一子組虛擬位置。
37.根據權利要求36所述的計算機可讀存儲介質,其中,所述方法還包括: 當所述計算設備的位置確定服務無效時,向所述LBS提供商發送用戶的實際位置信息和所述第一子組虛擬位置。
38.一種通過采用虛擬信息連同基于位置的服務來實現位置隱私的保護的方法,所述方法包括: 向基于位置的服務“LBS”提供商注冊用戶; 在所述LBS提供商處接收所述用戶的實際位置以及第一子組虛擬位置,其中,所述第一子組是基于一個或更多個約束從虛擬位置的整個組中選擇的,所述一個或更多個約束包括:可用帶寬、與所述LBS提供商相連的計算設備的功耗、和/或所述LBS提供商的服務要求;以及 向與所述LBS提供商相連的所述計算設備提供與第二子組虛擬位置以及所述用戶的實際位置相關聯的LBS數據,其中,所述第二子組是所述第一子組的子集。
39.根據權利要求38所述的方法,其中,所述虛擬位置的整個組表示在不考慮任何約束的情況下所述LBS提供商所允許的最大數目的虛擬位置,所述第一子組虛擬位置表示基于所述一個或更多個約束而允許從所述用戶接收的最大數目的虛擬位置,以及所述第二組虛擬位置表示所述LBS提供商發送LBS信息的位置。
40.根據權利要求39所述的方法,其中,使用子碼來選擇所述第二子組虛擬位置,所述子碼表示所述用戶的實際位置與所述第二子組虛擬位置之間的索引。
41.根據權利要求40所述的方法,其中,所述子碼是以下之一: 在所述用戶和所述LBS提供商之間預先確定的; 由所述LBS提供商產生并與所述用戶預先共享的;以及 由與所述LBS提供商相連的所述計算設備產生并向所述LBS提供商發送的。
42.根據權利要求40所述的方法,其中,所述第一子組虛擬位置是基于所允許數目的虛擬位置從虛擬位置的整個組中隨機選擇的。
43.根據權利要求40所 述的方法,其中,基于N( min(B/Qn, T/Pn)-1,針對要提交給所述LBS提供商的第一子組選擇虛擬位置的個數N,其中B表示針對與所述LBS提供商相連的所述計算設備的可用帶寬,Qn表示所述LBS提供商要針對每一個位置發送的位置服務數據的平均數量,T表示針對所述計算設備的最大可允許功率使用,以及Pn表示用于接收Qn的功率使用率。
44.根據權利要求40所述的方法,還包括: 使所述計算設備以預定周期性間隔和隨機間隔之一向所述LBS提供商發送所述第一子組虛擬位置。
45.根據權利要求44所述的方法,還包括: 使用戶能夠通過調整發送的頻率來設置隱私保護等級。
46.根據權利要求44所述的方法,還包括: 當所述計算設備的位置確定服務無效時,實現向所述LBS提供商發送所述用戶的實際位置信息和所述第一子組虛擬位置。
47.根據權利要求40所述的方法,其中,虛擬位置信息包括虛構位置信息和/或過往實際位置信息中的至少一項。
48.根據權利要求40所述的方法,還包括: 當確定用戶正在移動時,使所述計算設備能夠產生虛擬位置的軌跡;以及 實現沿著所產生的軌跡 的虛擬位置的發送,使得用戶的移動被隱藏。
全文摘要
大體上描述了用于位置隱私保護的技術。在一些示例中,通過基于要接收的預計LBS數據與帶寬可用性的比較以及移動設備上發送信息的預計功率使用率和移動設備的可用功率的比較,確定要連同實際位置信息一起發送至LBS提供商的虛擬位置信息集合的最大數目,來提供位置隱私保護。可以產生虛擬信息,使得現實軌跡的獲取不會使入侵者檢測到當用戶移動時的用戶的實際路徑。
文檔編號G01S19/39GK103210320SQ201080070100
公開日2013年7月17日 申請日期2010年12月21日 優先權日2010年12月21日
發明者金承一 申請人:英派爾科技開發有限公司