Subject: [Rats] The context claim -- classification of intended use

From: Laurence Lundblade <[email-masked]>
Date: Tue, 17 Nov 2020 11:40:59 -0800

This is about the context claim proposed in this PR <https://github.com/ietf-rats-wg/eat/pull/60>.

It classifies the use intended by the create of an attestation into the five listed below. Protocols using EAT can use this claim if they want to tell the RP the intended use if they want to.

My question to the list is whether this classification system is reasonably complete. Does it work for the FIDO, IoT on-boarding, Android attestation, the router use cases, TEEP…

Since this is claim is optional and there is a generic classification, the classification doesn’t need to be perfect, but it seems useful to check it against the use cases folks have in mind for EAT.

Thanks,

LL

1 — On-demand (generic)
: On-demand attestation describes an application where the EAT consumer
requres the most up-to-date security assessment of the attesting entity. It
is expected that this is the most commonly-used application of EAT.

2-- Registration
: Entities that are registering for a new service may be expected to 
provide an attestation as part of the registration process.  This context
setting indicates that the attestation is not intended for any use but registration.

3 -- Provisioning
: Entities may be provisioned with different values or settings by an EAT
consumer.  Examples include key material or device management trees.  The consumer
may require an EAT to assess device security state of the entity prior to provisioning.

4 -- Certificate Issuance (Certificate Signing Request)
: Certifying authorities (CA's) may require attestations prior to
the issuance of certificates related to keypairs hosted at the entity.  An
EAT may be used as part of the certificate signing request (CSR).

5 -- Proof-of-Possession
: An EAT consumer may require an attestation as part of an accompanying 
proof-of-possession (PoP) appication.  This may be neceesary to verify the
security state of the entity storing the private key used in a PoP application.