3 ms·
Is this true on Android too? Can someone just lift your phone number via you merely having your Bluetooth/Wi-Fi/etc. running?
by mehrdadn 7y ago
Is this true on Android too? Can someone just lift your phone number via you merely having your Bluetooth/Wi-Fi/etc. running?
- bri3d 7y agoFirst off, "someone can lift your phone number via you merely having Bluetooth running" is entirely not true of this information leak. The scope of this issue is that an unsalted SHA256 of your phone number is broadcast when you open the Share dialog with AirDrop and Bluetooth active. Your phone number is broadcast to determine whether the sending device is in the receiving device's contacts list. The feature that causes this information leak (AirDrop) has no equivalent on stock Android, but hundreds of horrifyingly insecure apps exist to replicate it. Google are introducing a similar feature (Fast Share) soon and we will see how it fares security wise. This is an interesting cryptography question: how do you allow two mutually untrusted client devices to determine that they share a common secret, without disclosing the secret? And for bonus points, how do you allow this to happen without two-way communication?
- nemosaltat 7y ago>This is an interesting cryptography question Is that a solved problem?
- mehrdadn 7y agoIt sounds impossible for very-low-entropy secrets. Like just imagine if the secret is 1 bit. Anyone can pretend they have that 1 bit (since they can just try both possibilities), which would let them determine that's the same secret the other person has. The only solution would seem to be to stretch the entropy and make a brute-force enumeration slow.
- Thorrez 7y ago> how do you allow two mutually untrusted client devices to determine that they share a common secret, without disclosing the secret? Use a PAKE. Although I think they all require two-way communication. https://en.wikipedia.org/wiki/Password-authenticated_key_agreement https://en.wikipedia.org/wiki/Password-authenticated_key_agr...
- newscracker 7y agoTangentially, on Android every app you have run at least once can know your phone number through standard APIs. On iOS, as far as I know and as far as I have observed, there is no API for that — apps have to ask the user what the devices' phone number is and trust that input. So Apple revealing phone numbers (through a rainbow table of hashes attack) in this AirDrop sharing scenario isn't congruent with its approach of not revealing phone numbers in other cases.
- Dunedan 7y ago> Tangentially, on Android every app you have run at least once can know your phone number through standard APIs. How would that work? As far as I'm aware an app either needs explicit permissions (READ_PHONE_STATE) or the user gets prompted when the app requests the phone number (as shown in https://android-developers.googleblog.com/2017/10/effective-phone-number-verification.html https://android-developers.googleblog.com/2017/10/effective-...).