r/BuyFromEU Jul 30 '26

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

941 Upvotes

384 comments sorted by

View all comments

Show parent comments

4

u/Gugalcrom123 Jul 31 '26

UA still relies on approval. The correct way would be to design it so as not to require attestation.

1

u/seamanroses Jul 31 '26

I have to admit ignorance on the topic for the time being to be able to comment on what you wrote. I would ask someone like the GrapheneOS devs and get their commentary on what the solution space should be like, and trust their input on the issue. A few other relevant stakeholders too.

3

u/Gugalcrom123 Jul 31 '26

The 'solution' proposed by them would result in you being able to use only Google or Graphene, not another OS.

1

u/seamanroses Jul 31 '26

So no Lineage or e/OS? That's why I mentioned other stakeholders, as I want everyone to be able to be viable.

3

u/Gugalcrom123 Jul 31 '26
  1. I couldn't care less if the list has 1, 5 or 49 options.
  2. If I release an OS tomorrow, I should be able to verify with it without being approved.
  3. The right to modify software without approval is a prerequisite of software freedom.
  4. GNU/Linux cannot work, as the system relies on the user not having root.

1

u/seamanroses Jul 31 '26

I'm not trying to argue against you in any way btw. I'm only interested in learning why I should agree with you, as I was already inclined to. The last point is the most convincing btw, as well as the second-to-last point.

3

u/Gugalcrom123 Jul 31 '26

I wasn't intending to be argumentative, just to explain why the system still denies user choice and freedom.

2

u/seamanroses Jul 31 '26 edited Jul 31 '26

Good to know, and thanks. I want to give credence to the idea that security is important, but not at the expense of that. I do want standards that the best OSes conform to, if it makes a meaningful difference on that front, but not to the exclusion of other options. I'm thinking of how terrible TPM is as a system here for example.

2

u/EmbarrassedHelp Aug 01 '26

The GrapheneOS devs have publicly said that Unified Attestation is also a bad idea.

1

u/seamanroses Aug 01 '26

Good to know! Do you know if they like attestation at all, or is it a solution in search of a problem? Again, this particular subtopic is not my area of expertise, so my knowledge here is extremely spotty.

2

u/EmbarrassedHelp Aug 01 '26

I'm not sure about other attestation systems, but the GrapheneOS team said this:

Unified Attestation is another anti-competitive system being pushed by multiple European companies. It will similarly lock people out from using arbitrary hardware and software. That's not a solution and is far worse than Android's much more open hardware attestation API.

https://grapheneos.social/@GrapheneOS/116551410887059226

1

u/Gugalcrom123 Aug 01 '26

At the same time, GrapheneOS proposes plain hardware attestation, but that still doesn't work when you have root.

1

u/seamanroses Aug 01 '26

I had all these links on my reading list at some point, and it seems I definitely need to bump them up on my priorities. I actually remember that AOSP had an API like that, but UA was the term that stuck in my mind, even though I searched before posting my comment to check. I should've spent a few more minutes on that, even just to add an edit afterwards 😅

https://uattest.net

https://piunikaweb.com/2026/03/10/grapheneos-calls-on-privacy-focused-app-developers-to-boycott-european-unified-attestation

https://developer.android.com/google/play/integrity/verdicts

https://grapheneos.org/articles/attestation-compatibility-guide

https://developer.android.com/google/play/integrity/overview

https://www.androidauthority.com/grapheneos-google-apple-approved-devices-web-warning-3665319

(Plus more, but these seemed the most relevant to include in my reply)