Supporting hardware attestations in the credential request when cryptographic binding is being used

Issue #1461 resolved
Tobias Looker created an issue

Some credential types that are issued by providers that are making use of cryptographic holder binding MAY want to understand the nature under which the keys are secured by the holder which could involve the usage of an HSM or secure element to meet these assurances. To facilitate this some HSM’s or secure elements support schemes whereby an attestation can be generated (either directly or indirectly) and shared to verify a particular key is hardware backed. We should consider how we can support supplying this information in a credential request so the issuer can verify it when needed.

Comments (15)

  1. David W Chadwick

    WebAuthn (FIDO2) already standardises the challenge response tokens that can be carried in any protocol. So I suggest that we simply adopt the FIDO tokens and find an appropriate place in an OIDC protocol to place them

  2. Torsten Lodderstedt

    In my perception, WebAuthn has two pieces: 1) user authentication (be way of establishing trust in a key and proof possession of the corresponding private key) and 2) authenticator attestation (what company, what product, model, batch, …). We are looking for (2) only here. Is it possible to utilize that part of the protocol separately?

  3. David W Chadwick

    Authenticator attestation is an optional feature of FIDO2. So the wallet can provide no attestations, self-asserted attestations, manufacturer provided attestations, CA provided attestations and DAA attestations to accompany proof of possession of the private key. I dont know if attestations on their own can be provided.

    BTW as part of the eSSID DOOR project we are adding DAA attestations to our Android app

  4. Tobias Looker reporter

    I think the issuer also needs to share metadata with the wallet to announce its requirements.

    +1 I think this should be elaborated on as a part of the holder binding options the issuer advertises support for

    WebAuthn (FIDO2) already standardises the challenge response tokens that can be carried in any protocol. So I suggest that we simply adopt the FIDO tokens and find an appropriate place in an OIDC protocol to place them

    Could you provide some links to this? I would be wary of constraining the attestation format to one kind there are numerous efforts going on around attestation formats.

    We are looking for (2) only here. Is it possible to utilize that part of the protocol separately?

    Just to be clear im not advocating for just sharing an attestation, instead sharing an attestation alongside the key material and PoP it is attesting to. There is no point sharing an attestation with an issuer if it does not relate to key material you are requesting a credential be bound to.

    BTW as part of the eSSID DOOR project we are adding DAA attestations to our Android app

    Can you share details on this? What format is this attestation?

  5. Tobias Looker reporter

    To me the proof value is primarily about proving you possess the associated private or secret cryptographic material associated to the key material you are supplying, not proof of the nature of how the key is stored or accessed (e.g via an HSM)

  6. Jeremie Miller Account Deactivated

    While the cryptographic contents will be different between the two, an attestation vs. PoP, the result of applying a policy decision to the proof value is not.

    An HSM attesting that it is managing a key is still a proof that can be verified showing active possession of that key.

    Evaluating wether an HSM is required is indeed a different usage and I don’t consider that in scope for this context either.

  7. Kristina Yasuda
    • changed status to open

    2022-Mar-17 SIOP call Agreed for the need of this kind of attestations, need a more concrete PR to discuss further.

  8. Log in to comment