3 ms·
From the article: > your phone sends out SHA256 your phone number hash to all the devices around you every time you hit Share. In theory, this should be enoug
by danShumway 7y ago
From the article:
> your phone sends out SHA256 your phone number hash to all the devices around you every time you hit Share.
In theory, this should be enough to protect your number (although it's still a fingerprinting vector). The reason it's a problem isn't because other people can see the hash -- is because it's trivial to iterate over the list of possible phone numbers and figure out which one corresponds to each hash.
So... don't use 9 digit phone numbers. I'm sure I'm missing something, but this does not seem like a hard problem, at all.
Everyone using an Apple device has an Apple account. AirDrop is not compatible with Android; so this isn't a compatibility thing. I can't think of any reason why this needs to be a hash of a phone number instead of a randomized string that's attached to your account. Airdrop is fundamentally a way for you to share files across Apple devices -- so just give them new IDs.
Yes, this means that there's a tiny amount of coordination with Apple servers that would need to happen when you add a new contact or share with a brand new phone number you've never seen before, but is anyone on here seriously going to argue that's worse for privacy than essentially transmitting your phone number in the open every time you use AirDrop?
From later in the article:
> How does your friend know that the person requesting a password is you? Broadband BLE requests contain your data, namely, SHA256 hashes of your phone number, AppleID, and email.
There's a device with a screen, right in front of you, and the screen has to be visible for you to click the share button. Your friend also needs to be right next to you so that your phone's are close enough to connect over Bluetooth.
So pick one to two randomized dictionary words, display them on the screen, and just read that out loud to your friend as confirmation.
Is there something I'm misunderstanding about how these features work? The developers at Apple aren't dumb, so I'm assuming there's some good reason for needing to use a mobile number as a device ID for a proximity-based sharing service on a tightly-controlled device.
- giancarlostoro 7y ago> Yes, this means that there's a tiny amount of coordination with Apple servers that would need to happen when you add a new contact or share with a brand new phone number you've never seen before, I would just have hashes of all the numbers of all your contacts on both phones and if your hash sent over matches you have a contact. No need to phone home.
- bri3d 7y agoThat’s exactly how it works currently, but 9 numbers isn’t enough entropy to protect against a brute force enumeration.
- bri3d 7y agoThe system appears to have been architected for purely offline use and that constraint would need to be lifted - otherwise, I agree, whatever method is used to associate a phone number with iMessage could be used to issue an “Airdrop token” also.
- kalleboo 7y ago> I can't think of any reason why this needs to be a hash of a phone number instead of a randomized string that's attached to your account. That’s what came to mind to me when I read this article. iMessage already uses per-device public key encryption, it seems like per-device UUIDs hashed with the user<->user connection could be used to make the sniffed hashes non-reversible without knowing the UUIDs of the sharing phone and one of his contacts