What if your address book was hashed (sha1, bcrypt) and then uploaded? In that case, all that would be uploaded is a list of hashes for the email addresses or phone numbers of people i know. Then, when another person signs up for an account, it's easy to see who they should suggest they should join, but nowhere is any personal data being stored. Sounds like it'd work to me?
If my problem is that I don't want Facebook to have the phone numbers in my address book, then surely I don't want them to have the SHA1 of each of the numbers in my address book, either?
Isn't it going to be easy for an organisation with Facebook's resources to build a dictionary of the space of SHA1s of phone numbers?
And if they salt the numbers, first, then they can't be compared with each other for suggestions? So whats the point?
Have I overlooked something?