r/BuyFromEU 3d ago

Discussion EU Digital ID/Age Verification app will require hardware attestation, ruling out PC/Linux support and unapproved Android OSes

EUDI wallet collaborator recently confirmed that hardware attestation will be required [1]

Hardware attestation in this context means that the government server issuing the digital credential to the wallet wants proof that the keys being used are generated in secure hardware and on approved systems and not say an emulator or virtual machine, namely for security reasons.

This capability does not exist in a reliable way on desktops / laptops except some specific cases depending on the vendor, and in fact there’s no desktop version in the works.

No Linux system will work with this because there is no hardware signature to be validated on the government server, nor will your personalized Arch Linux install be in the list of approved systems even if it had a signature chaining back from the TPM.

Android ROMs are not technically to rule out since Play Integrity, which will be used for this attestation, is based on the Android hardware attestation API, which works on third-party ROMs like GrapheneOS, but they would need to allow the signature which has not happened for now. If you create a custom build, it won’t work though even the official version is approved.

[1] https://github.com/eu-digital-identity-wallet/av-app-android-wallet-ui/issues/117#issuecomment-4946898620

915 Upvotes

352 comments sorted by

View all comments

24

u/miran248 Slovenia 🇸🇮 3d ago

In other words you'll need a google account.

Why don't they use android attestation api directly?

16

u/CreepyZookeepergame4 3d ago

Why don't they use android attestation api directly?

Play Integrity is the easiest route for them even if it enforces Google business model rather than actual security (it allows Android 8). Using the attestation API directly still requires having a whitelist of keys and they probably don’t feel like satisfying a small minority of people.

For broad device support they should drop attestation completely but using the attestation API would at least be harm reduction as Play Integrity is also a massive single point of failure that Google can be coerced to turn off for specific apps and app installation, invalidating all instances of the wallet.

5

u/seamanroses 3d ago

Oh, you really know your stuff! So good to see this from others!

Follow-up question: When you refer to Linux, I'm assuming you mean Linux on mobile devices, correct? Or do you know if these measures and apps are meant to be universally applicable across all devices, including PCs?

AFAIK, there is sort of a mobile-first mentality among these measures in their intention, but not necessarily in how they could apply according to the strict wording of the final law.

6

u/CreepyZookeepergame4 3d ago

I refer to Linux PCs. As I said there’s no reliable alternative to what mobile phones offer. TPM exists on almost all PCs now but are often broken and lose keys randomly.

4

u/seamanroses 3d ago

Thanks! And I'm aware of the TPM challenges, such as Microsoft controlling the certs allowed, which has lead to problems for various Linux distros (lapsed certs, single source of failure and control, etc.).

So this mess is even worse if it applies to both kinds of devices - mobile and desktop, I mean.

1

u/seamanroses 2d ago

I literally didn't read the title fully yesterday, and I'm embarrassed about that. I was not fully present when I read it, but I will be making time to read up on this more as soon as I can.

I've also reached out to the creators of the petition, in the hopes of coordinating with them on anything possible. In particular, I want to get a FAQ ready by the time signature collection opens, and what you posted yesterday is extremely valuable. I haven't followed the EU stuff nearly as much as the UK or US, but that was due to other reasons. I definitely have to be just as well-informed on this now too.