3 ms·
I wonder if this would work. Divide up the world into a grid. Once you have the cell associated with your GPS location, randomly pick a nearby cell. Stick with
by babesh 6y ago
I wonder if this would work. Divide up the world into a grid. Once you have the cell associated with your GPS location, randomly pick a nearby cell. Stick with this mapping from cell to cell forever and keep this mapping only on the phone. Don’t send GPS coordinates. Send the cell instead. Have the server define nearness by cell nearness. The server should never send cells to other users, just their nearness.
This way, your actual location as fuzzy as how randomly you pick cells and the size of cells. You are also introducing a skew that the other party cannot compensate for. It’s your secret and by not repeatedly recalculating it, you aren’t vulnerable to the other party calculating the mean cell.
So if each cell is say 1 mile across and you pick randomly from say a 3 by 3 grid around your cell, then your location can only be localized to within a 3x3 mile square.
The tradeoff is that near isn’t so near but the tradeoff can at least be tuned by cell randomness and nearness. If you want to be more private, pick randomly from a larger number of nearby cells. If you want to know more people, widen the circle that you define to be near. Most people probably want defaults.
One difficulty may be when there are cells that are less likely to be populated. It may make sense to chop up the world into varying size cells based on a combination of area and population density.