← Back to context

Comment by thrtythreeforty

2 years ago

As a baseline for discussion, I agree that GrapheneOS is far more secure than stock Android (fantastic Cellebrite citation, by the way). I'm not attacking your assertion that Google is misusing Play Integrity anticompetitively, which you make a plausible case for.

But hardware-based attestation is fundamentally based on a whitelist of OS images. With AVB, the only job of hardware is to validate that the chain of trust starts with the certificate the user provides (or the factory default). That certificate, if controlled by a trusted party, attests that the resulting chain of trust implements the Android security model correctly. But all the Android API does is provide a verifiable attestation of what is running; it can't attest that Android hasn't been e.g. Magisk'd and then re-signed. (Please correct me if I'm wrong here!)

Google trusts themselves, of course, perhaps too much. But, they're unwilling to add others to the whitelist of things they trust. I think what you're asking for, is actually for the Play Integrity code to have some mechanism to become trusted/whitelisted (this would prevent other app devs from having to play whack-a-mole to allow other secure images). Phrasing it that way might be a good clarification.

They don't seem to have an issue with trusting other phone manufacturers, many of whom have a very half-assed attitude towards security.

Why would they have an issue with trusting the single most security-conscious Android OS producer other than preventing competition?