Please download the dossier by clicking on the dossier button x
×

Location brokering for providing security, privacy and services

  • US 8,693,689 B2
  • Filed: 11/01/2010
  • Issued: 04/08/2014
  • Est. Priority Date: 11/01/2010
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented process for location brokering, comprising:

  • using one or more computers to perform the following process actions;

    encrypting location data associated with multiple communication-enabled devices, wherein for each communication-enabled device associated with a user in each group of three or more communication-enabled device users,said location data encryption comprises encrypting grid coordinates of a grid cell of a location grid in which the location of the communication-enabled device falls, but not the location within the grid cell, via an encryption scheme using a group encryption key and an initialization vector associated with the group, wherein the initialization vector associated with a group is computed based on a secret shared between the communication-enabled device users of the group and a current time interval such that the initialization vector computed by members of a group within the same time interval matches, but varies from one time interval to the next and so the encrypted location data for communication-enabled devices associated with users in the same group and located in the same grid cell within the same time interval match, andsaid location data encryption further comprises,receiving information from the communication-enabled device, wherein said information comprises,a user identifier associated with a user of the communication-enabled device,location data concerning the location of the communication-enabled device, andan initialization vector for each group of users that the user of the communication-enabled device is a member of,identifying grid coordinates of a grid cell in which the communication-enabled device'"'"'s location falls,ascertaining the current time associated with the establishment of the received information and a current time interval in which the ascertained current time falls, andfor each group the user belongs to,obtaining an encryption key associated with the group,encrypting the identified grid coordinates for the group via an encryption scheme using the encryption key and initialization vector associated with the group,encrypting a location message for the group comprising at least an encryption of the location of the communication-enabled device,generating a location tuple, said location tuple comprising the encrypted grid coordinates for the group and the encrypted location message for the group, andstoring the location tuple generated for the group in a location database; and

    providing at least one location service that gives users location-related information based on the encrypted location data, comprising,receiving a query from a communication-enabled device associated with a querying user which asks for the location of each communication-enabled device associated with other users who belong to a group that the querying user also belongs to and who are currently located in the same grid cell as the querying user,obtaining encrypted grid coordinates associated with the current location of the querying user,finding location tuples in the location database that include encrypted grid coordinates that match the querying user'"'"'s encrypted grid coordinates and designating each location tuple discovered to be a matching location tuple,for each matching location tuple, generating a neighbor tuple comprising the encrypted location message associated with the matching location tuple, andsending the generated neighbor tuple or tuples, if any, to the communication-enabled device associated with a querying user.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×