310 karma · joined March 19, 2011
Apps first published to the Play store before August 2021 are not required to upload their keys [1]. This likely includes Signal.
I wish more people talked about this. At Amazon, I helped with the early threat modeling around adoption of "App Signing by Google Play", which requires sending your app's root signing key to Google (and is now required, with no publicly-available opt-out for new apps.) It would have added some nice things for Android devs: app bundles, smaller downloads, instant apps, etc.
That said, we imagined the following scenario, and were unable to find a reasonable mitigation at the time:
It seems plausible the US government could send a NSL (or similar) to Google and force them to distribute modified APKs for apps like Signal (ex: to exfiltrate keys). This would be nearly impossible to detect, especially if the modified APK were distributed to only an individual user, or a small group. A few people raised concerns [1], but I don't recall Google ever giving a reasonable response.
[1] https://commonsware.com/blog/2020/09/23/uncomfortable-questi...
Edit: clarify no opt out applies to new apps
It seems like they're synced between devices using client-side encryption, with keys derived from your phone's lock code (typically only 4-6 digits). Is it possible that the passkeys are fully random, but then encrypted with far less than 128/256 bits of actual entropy while being synchronized between devices?
Could it be possible to brute force the keys server-side (IIUC, derived from 4-6 digit pins) with non-excessive amounts of compute? What am I missing?
False alarm :) Amazing work!!
Thank you. 100% agree.
> Passkeys do not and are not designed to protect against nation-state level attackers
I've been mulling over some use-cases where this is important, hence the deep consideration over entropy. 100% not a huge deal for the passkeys case for many 9's of people.
> This approach works because the secure enclave provides measures against bruteforcing and tampering.
That's interesting!
> because that implies off-device use of the PIN, so those measures are lost
This link from your previous thread is interesting: https://support.apple.com/en-sg/guide/security/sec3e341e75d/...
Uses SRP to let the device prove to iCloud HSMs that the user entered the correct pin, without ever sending it over the wire. The HSMs have similar protections for brute forcing, etc.
From the docs I have a fairly high confidence entropy is 256 bits for iCloud Keychain. I have much less confidence on Android, but I'm still researching... :)
Has anyone seen any docs that might help characterize how much entropy the keys have for e2e encryption (Android/iOS)?
I must be missing something, because I can't see how Google would call something e2e encrypted if the keys only have like 30-35 bits of "effective" entropy after a KDF. But that seems like it's the case??
[1] "From the user's point of view, this means that when using
a passkey for the first time on the new device, they will
be asked for an existing device's screen lock in order to
restore the end-to-end encryption keys"
[1] https://security.googleblog.com/2022/10/SecurityofPasskeysin...[2] https://www.omnicalculator.com/other/password-entropy?c=SGD&...
I recently wanted to extend a stay and the front desk quoted me $120/nt while Hotels.com was $107 (plus 10% back as a reward, so ~$96).
I wish that weren't the case because this is 100% true:
> never know what's going on and when anything goes wrong they just tell you they can't help you. Then the place tells you that they can't help you because you didn't book through them and they just point fingers at each other.
I've come to rely greatly on in-app ratings/reviews before booking.
https://developer.android.com/guide/app-bundle/dynamic-deliv...
I saw this written during the 2017 cryptocurrency craze. Has stuck with me as one of the most insightful things I've ever read. Also a fan of 37 Signals' budgets. [2]
[1] https://medium.com/graphprotocol/introducing-the-graph-4a281...
[2] https://signalvnoise.com/posts/3746-drive-development-with-b...
Could probably flip it to be a 4 byte prefix (to identify this packet for contact tracing), followed by 16 bytes of the Rolling Proximity Identifier, but not sure if the underlying hardware (the BLE chips) can do low-power matching on a pattern like that. Something only Apple and Google could make work, so this is exciting.
(Or, it could be iBeacon to wake, then making a connection to fetch the Rolling Proximity Identifier. Though, in my experience, not requiring a connection will be more reliable in practice, especially for Android.)
Further, I think RED has a pretty close relationship with Nvidia [2]. For RED customers, it'd stink to buy a beefy Mac Pro and not be able to edit 8K REDCODE RAW as well as they could on other OSes that have better Nvidia support.
Especially when you consider when the Mac Pro finally ships, it will probably be up against Zen 2 Threadripper (at least 32 cores, likely more), Nvidia GPUs, and PCIe 4.0 SSDs at a significantly lower price point. To not have solid REDCODE RAW support would be a huge miss for Apple.
[1] https://www.redsharknews.com/technology/item/6408-apple-s-ma...
Or be trying to detect things like we saw this week? [2]
[1] https://techcrunch.com/2014/05/18/the-nsa-cisco-and-the-issu...
[2] https://www.bloomberg.com/news/features/2018-10-04/the-big-h...
Edit: I guess I'm assuming the ransomware doesn't have access to the raw disks, which would be true if you were using a NAS (e.g. FreeNAS) and connecting to it via NFS, CIFS, etc.