×

Selecting anonymous users based on user location history

  • US 10,643,222 B2
  • Filed: 09/27/2012
  • Issued: 05/05/2020
  • Est. Priority Date: 09/27/2012
  • Status: Active Grant
First Claim
Patent Images

1. A tangible, non-transitory, machine-readable memory storing instructions, that when executed, cause one or more processors to perform operations comprising:

  • sensing, with a location detector of a mobile computing device, locations of the mobile computing device a plurality of times over a duration of time to obtain a location history of time-stamped geolocations of the mobile computing device spanning a plurality of days;

    determining, with one or more processors of the mobile computing device, reduced resolution versions of the time-stamped geolocations in the location history, the reduced resolution versions having less resolution than sensed locations;

    determining, with a cryptographic hash function, with the one or more processors of the mobile computing device, a first set of cryptographic hash values each based on a respective time-stamp and respective location of a respective reduced resolution version of the time-stamped geolocations in the location history;

    storing in memory of the mobile computing device the first set of cryptographic hash values based on the location history of the mobile computing device;

    receiving, at the mobile computing device, from a remote server, via a wireless interface of the mobile computing device, location criteria specifying a geographic area related to a survey, the location criteria being sent from the remote server to a plurality of candidate computing devices including the mobile computing device;

    in response to receiving the location criteria, accessing, with the one or more processors of the mobile computing device, the first set of cryptographic hash values based on the location history of the mobile computing device stored in memory of the mobile computing device;

    determining, with the one or more processors of the mobile computing device, whether the location history satisfies the location criteria that specifies the geographic area related to the survey from the remote server, without decrypting the first set of cryptographic hash values based on the location history, without revealing the location history to the remote server, and without the location history being accessible via inspection of the mobile computing device, wherein;

    the location history is determined to satisfy the location criteria by determining whether any cryptographic hash values in the first set of cryptographic hash values match any cryptographic hash values in a second set of cryptographic hash values, andthe second set of cryptographic hash values are each determined with the cryptographic hash function based on different subsets of the location criteria, the location criteria being at a same granularity as the reduced resolution versions of the time-stamped geolocations in the location history; and

    after determining that the location history satisfies the location criteria, displaying on the mobile computing device an indication that a user of the mobile computing device has an option to answer questions related to the survey, wherein determining reduced resolution versions of the time-stamped geolocations in the location history and determining the first set of cryptographic hash values comprises, for a given time-stamped geolocation in the location history;

    reducing a granularity of a location of the given time-stamped geolocation to a predetermined location granularity;

    reducing a granularity of a time of the given time-stamped geolocation to a predetermined time granularity;

    combining a resulting reduced-granularity location and reduced-granularity time into a string; and

    hashing the string with the cryptographic hash function.

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