Blind evaluation of nearest neighbor queries wherein locations of users are transformed into a transformed space using a plurality of keys
First Claim
1. A method comprising:
- receiving locations of a plurality of users in an original space;
encoding, by a computer, the locations in the original space into encoded locations in a transformed space using a transformation parameter, wherein a relative proximity of the locations in the original space is maintained in the transformed space after the encoding;
generating a plurality of keys corresponding to the plurality of users, each key including the transformation parameter used to encode the locations and enabling a reverse transformation of an encoded user location in the transformed space to an original user location in the original space;
providing the plurality of keys to the corresponding plurality of users; and
providing the encoded locations in the transformed space to a device, wherein an order of computations required to reverse transform the encoded locations in the transformed space to the locations in the original space in the absence of one of the plurality of keys is greater than a computational threshold.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and techniques are described for blind evaluation of nearest neighbor queries. Locations of multiple users in an original space are received. The locations in the original space are encoded into encoded locations in a transformed space. A relative proximity of the encoded locations in the transformed space is maintained after the encoding. Multiple keys corresponding to the multiple users are generated. Each key enables a reverse transformation of an encoded user location in the transformed space to an original user location in the original space. The multiple keys are provided to the corresponding multiple users, and the encoded locations in the transformed space are provided to a device. An order of computations required to reverse transform the encoded locations in the transformed space to the locations in the original space in the absence of a key is greater than a computational threshold.
-
Citations
25 Claims
-
1. A method comprising:
-
receiving locations of a plurality of users in an original space; encoding, by a computer, the locations in the original space into encoded locations in a transformed space using a transformation parameter, wherein a relative proximity of the locations in the original space is maintained in the transformed space after the encoding; generating a plurality of keys corresponding to the plurality of users, each key including the transformation parameter used to encode the locations and enabling a reverse transformation of an encoded user location in the transformed space to an original user location in the original space; providing the plurality of keys to the corresponding plurality of users; and providing the encoded locations in the transformed space to a device, wherein an order of computations required to reverse transform the encoded locations in the transformed space to the locations in the original space in the absence of one of the plurality of keys is greater than a computational threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
means for receiving locations of a plurality of users in an original space; means for encoding the locations in the original space into encoded locations in a transformed space using a transformation parameter, wherein a relative proximity of the locations in the original space is maintained in the transformed space after the encoding; means for generating a plurality of keys corresponding to the plurality of users, each key including the transformation parameter used to encode the locations and enabling a reverse transformation of an encoded user location in the transformed space to an original user location in the original space; means for providing the plurality of keys to the corresponding plurality of users; and means for providing the encoded locations in the transformed space to a device, wherein an order of computations required to reverse transform the encoded locations in the transformed space to the locations in the original space in the absence of one of the plurality of keys is greater than a computational threshold. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 25)
-
-
19. A system comprising:
-
an encoding device configured to encode locations of a plurality of users in an original space into encoded locations in a transformed space using a transformation parameter, generate a key that includes the transformation parameter used to encode the locations, the key to enable a reverse transformation of an encoded user location in the transformed space to an original user location in the original space, provide the key to each user of the plurality of users, and provide the encoded locations in the transformed space; and a server configured to receive the encoded locations in the transformed space, receive a query from a user to identify one or more nearest users, the user and the one or more nearest users included in the plurality of users, resolve the query to identify encoded locations in the transformed space of the one or more nearest users based on an encoded location in the transformed space of the user, and provide the identified encoded locations to the user. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification