psanford / tpm-fido

A WebAuthn/U2F token protected by a TPM (Go/Linux)
MIT License
285 stars 17 forks source link

Add support for TPM 1.2 #2

Closed darkdragon-001 closed 1 year ago

darkdragon-001 commented 2 years ago

Google also provides a library for TPM 1.2, so it should be easy to implement this as well. Would be nice, if I could also get this to work in my old laptop.

There are several ways to termine TPM version.

psanford commented 2 years ago

Currently tpm-fido uses the CTAP1 protocol. CTAP1 requires ECC algorithms, which are not supported by TPM 1.2.

I believe that CTAP2+FIDO2 does have support for RSA, although I'm not aware of any actual implementations that are using RSA.

If someone has the appetite to add support for TPM 1.2, you'd probably need to start by adding protocol support for CTAP2.