I was thinking that it would be nice to see if anyone here lives in the same city I do, so we could start organizing in real life. But, I thought, if they don't live in the same city, then I don't want to reveal my real location to them, as I'm sure they don't want to reveal their real location to me.
So, my original idea was for each person to take the name of their city, hash it using
sha512sum, then send the hash to the other person. If the hashes match, then they both live in the same city. If they don't, then they live in different cities (or one typed their city name with a capital letter and the other didn't, or one typed the city and the province where the other typed only the city name, etc. This would have to be accounted for somehow).
This sounded like a good idea, until I realized that there are not that many city names (even if there were 10,000, that wouldn't be that many for hash cracking), so one person could brute-force attack the hash quite easily, especially if they started with the most populated cities. If the other person was in fact not a revolutionary leftist, but a double agent pretending to be a leftist, they would be able to find out what city you live in this way. Since that's always a possibility, this method won't work, because we need a method that makes absolutely sure the other person could never figure out what city you live in, if they don't live in the same city.
Does anyone have any ideas?