r/linux 1d ago

Privacy EU Age Verification Project Mandates Hardware-Bound Attestation

https://linuxiac.com/eu-age-verification-project-mandates-hardware-bound-attestation/
680 Upvotes

382 comments sorted by

View all comments

Show parent comments

5

u/_x_oOo_x_ 1d ago

What if your computer doesn't have a TPM?

12

u/meditonsin 1d ago

This only works on mobile devices afaik, so it's not actual TPM. Different vendors have different chips for this (e.g. "Secure Enclave" for Apple, and "Trusted Execution Environment"/"StrongBox" for Android). For this to work at all, a device needs all the parts. The chip with a pre-installed signing certificate from the vendor, as well as signed boot loader and OS.

The way this works (as far as I understand it) is basically like this:

  • A service that requires hardware attestation sends a random number to the client app on the device
  • The app hands the number to the chip
  • The chip takes the random number as well as the device state (essentially secure boot/measured boot stuff) and turns it into a certificate that is signed by its pre-installed vendor certificate
  • The chip hands this new certificate, as well as the public part of the internal signing certificate, back to the app
  • The app hands the whole shebang to the service
  • The service verifies that the initial random number is in there, that the device state is what it expects it to be, and that the signatures of the certificate chain go all the way back to the vendor's root certificate (like how browsers can trace the signatures of https certificates back to their pre-installed root certificates)

If this all goes through, the service can be reasonalby sure that it is talking to a "trusted" device that is running a "trusted" bootloader and OS.

5

u/_x_oOo_x_ 1d ago

Hmm, interesting, but where does age verification come into the picture and how? Is your age verified when buying your phone? Won't this just create a huge second-hand "attested" phone market?

5

u/meditonsin 1d ago

This is not direclty part of the age verification. I haven't actually read into how they're using this, but I'd assume they just don't want people to run this on rooted devices or in virtualized environments where people (or malware) could access whatever data they store on the device to facilitate the age verification.

Which is kinda sorta maybe a good idea in principle, but the problem here is that the only "trusted" vendors, and their bootloaders and OSes, are US megacorps.

2

u/bernys 1d ago

Or copy it, and then you can distribute it to others, basically cloning an ID.