For Android, the architecture relies on two mechanisms:
Android KeyAttestation, which uses hardware-enforced signals including RootOfTrust.verifiedBootState and RootOfTrust.deviceLocked opencode to confirm a signed, verified boot image
Android PlayIntegrity verdict, with the minimum requirement being MEETS_STRONG_INTEGRITY opencode
That last point is the killer for de-Googled devices. MEETS_STRONG_INTEGRITY requires Google Play Services on a stock, unmodified Android image with a locked bootloader. CalyxOS, GrapheneOS (default profile), LineageOS, /e/OS — none of these would pass.
The document explicitly notes that MEETS_STRONG_INTEGRITY also requires the device to have received a security patch within the last 12 months. opencode
On CalyxOS specifically: CalyxOS uses microG, which implements partial Play Integrity support — but it typically only reaches MEETS_BASIC_INTEGRITY, not MEETS_STRONG_INTEGRITY. The wallet as architected would reject it outright.
The deeper issue is that the architecture document doesn't mention any alternative attestation path at all. There's no provision for hardware security keys, alternative trusted execution environments, or self-sovereign attestation mechanisms — things the open source community has been pushing for precisely to avoid this kind of platform lock-in. The irony is considerable given this is a government identity infrastructure published under CC BY 4.0 on OpenCode.
@pojntfx At the moment, I cannot fully understand the document you shared, so I use an AI assistant (sorry in advance).
I want to install CalyxOS on my #Fairphone soon:
"On CalyxOS specifically: CalyxOS uses microG, which implements partial Play […]
[Original post on social.vivaldi.net]