Re: [Rats] Android comments on EAT draft

Laurence Lundblade <lgl@island-resort.com> Thu, 16 May 2019 16:13 UTC

Return-Path: <lgl@island-resort.com>
X-Original-To: rats@ietfa.amsl.com
Delivered-To: rats@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 89A37120272 for <rats@ietfa.amsl.com>; Thu, 16 May 2019 09:13:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HSOJ2s18jFo9 for <rats@ietfa.amsl.com>; Thu, 16 May 2019 09:13:23 -0700 (PDT)
Received: from p3plsmtpa11-07.prod.phx3.secureserver.net (p3plsmtpa11-07.prod.phx3.secureserver.net [68.178.252.108]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A74DC12028A for <rats@ietf.org>; Thu, 16 May 2019 09:13:06 -0700 (PDT)
Received: from [192.168.1.108] ([76.192.164.238]) by :SMTPAUTH: with ESMTPSA id RJ0Chz3uXrntCRJ0DhE5FI; Thu, 16 May 2019 09:13:06 -0700
From: Laurence Lundblade <lgl@island-resort.com>
Message-Id: <8B14704B-F50A-4DD8-B2C9-2DB9EAC2742A@island-resort.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_B34375DB-0C26-49E1-985C-8630E2286189"
Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\))
Date: Thu, 16 May 2019 09:13:04 -0700
In-Reply-To: <HE1PR0801MB1643AA2E129098E2C65F9163EF0A0@HE1PR0801MB1643.eurprd08.prod.outlook.com>
Cc: Shawn Willden <swillden=40google.com@dmarc.ietf.org>, "rats@ietf.org" <rats@ietf.org>
To: Simon Frost <Simon.Frost@arm.com>
References: <CAFyqnhVJ-ps4bdhsyQDOHdzHVZsXeK7_kCDXxUVUcuyDzWS3uA@mail.gmail.com> <35459D73-3D08-4E0B-814B-780AD60DD600@island-resort.com> <HE1PR0801MB1643AA2E129098E2C65F9163EF0A0@HE1PR0801MB1643.eurprd08.prod.outlook.com>
X-Mailer: Apple Mail (2.3445.9.1)
X-CMAE-Envelope: MS4wfEkDR9qA3WEozZFvyFFuIe30icJjqy9uy5PYHgG39tw2MtcNeUUW1XwkLbPyQjXSzsq4hcivNAL6KLLdWZrkN56EhJamnlwkLyDEas7nOCALIAyNtndE lv1PQNQ19TIjjswYs+DLfw2istaDnCzjMx/tt1argODvCHjCjevd6T4dFuNPGVOO56PSR/dVz4A6TUH65lW7wWfBcn4oGegJRPgx6PMWHiqFbw8SVTEX1BN4 LTu8JFq/fAYdVfGpTDn5ZQ==
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/GAU6gHIIa9FuOn575s5NO7ylOSQ>
Subject: Re: [Rats] Android comments on EAT draft
X-BeenThere: rats@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Remote Attestation Procedures <rats.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rats>, <mailto:rats-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rats/>
List-Post: <mailto:rats@ietf.org>
List-Help: <mailto:rats-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rats>, <mailto:rats-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 16 May 2019 16:13:29 -0000

Here’s a slide from the Prague IETF meeting aimed to outline claim definition work.



LL


> On May 16, 2019, at 4:16 AM, Simon Frost <Simon.Frost@arm.com> wrote:
> 
> Hi Shawn,
>  
> I think you’re at the stage with EAT that we were at Arm on first embracing it. We received the essential guidance, as below, from Laurence that all claims are optional and that the conversation about the claim set is at an early stage. I would encourage you to enlarge on the set of claims you think would be needed for the Android use case and we can see what overlap there might be with other use cases and whether the working group can converge on more standard claims.
>  
> From your email, it appears that the two major areas you may need additional claims on are the description of (at least one) software component and description of (at least one) key. The description of a software component appears to be a recurring need and one that seems likely can achieve some convergence towards some standard claims. As an example, have a look at the draft ‘profile’ we put together for an Arm PSA attestation (https://www.ietf.org/id/draft-tschofenig-rats-psa-token-01.txt <https://www.ietf.org/id/draft-tschofenig-rats-psa-token-01.txt>) and let us know where that does or doesn’t cover your software needs. Note that all claims in that profile are marked as custom ones as it is being used in an existing implementation and we did not want to use what is in the draft in anticipation of potential change, even where some of the PSA profile claims are closely modelled on those in the draft.
> I would be very interested in reading your set of claims necessary to describe a key as that use case has also been expressed for our usage.
>  
> Thanks
> Simon
>  
> From: Laurence Lundblade <lgl@island-resort.com <mailto:lgl@island-resort.com>> 
> Sent: 16 May 2019 03:26
> To: Shawn Willden <swillden=40google.com@dmarc.ietf.org <mailto:swillden=40google.com@dmarc.ietf.org>>
> Cc: rats@ietf.org <mailto:rats@ietf.org>
> Subject: Re: [Rats] Android comments on EAT draft
>  
> Hi Shawn, a couple notes:
>  
> - The claims in EAT are just a start and by no means complete. Adding claims that carry and describe keys is certainly on the list.
>  
> - All claims are considered optional and many claims are expected to be left out in some use cases for privacy reasons.
>  
> Personally, I’d like to see EAT be useful for Android and would value yours and Google’s input to make it so.
>  
> LL
>  
> (Not sure what rats@ietfa.amsl.com <mailto:rats@ietfa.amsl.com> is, have replaced that address with rats@ietf.org <mailto:rats@ietf.org>)
>  
> 
> 
> On May 15, 2019, at 5:43 PM, Shawn Willden <swillden=40google.com@dmarc.ietf.org <mailto:swillden=40google.com@dmarc.ietf.org>> wrote:
>  
> Hi all.
>  
> After being invited by Laurence to join this WG some time ago, I have completely dropped the ball. I apologize for that; in the interim period I have expanded my team from one engineer (me) to six, and we all still have more to do than we can accomplish, which gives a good indication of how much I was dropping on the floor.  I think I have now delegated enough that I can begin to put some time into this.
>  
> After reviewing the draft (which I like a lot, in many ways), I notice a crucial divergence of focus between EAT and Android Keystore Attestation.  Perhaps this means that EAT is not applicable for Android; but I'd like to explore the question a bit.
>  
> Specifically, EAT is about attesting to a device while Keystore Attestation is about attesting to a key -- though we also attest to quite a bit about the context of the key, i.e. the device. Indeed, the device information we provide is growing with every release, because there's a strong pent-up demand for device attestation.  So Keystore Attestation is gradually expanding to include the device attestation role, but must also retain its key attestation purpose.  For EAT to be directly applicable, it would have to include claims about a key as well.
>  
> Perhaps another option is that we could use an EAT attestation as a sub-element inside a CBOR structure that attests to a key.  Or maybe there are other ideas about how an EAT attestation may fit into a larger attestation that describes characteristics of entities other than the containing device?
>  
> Another, more tractable, area of difference is that EAT provides Claims for several data items which Android will likely never allow to be attested because of their privacy implications and potential for ecosystem fragmentation (apps choosing which devices they'll run on -- we generally try to deny them the information they'd like to have to make those choices).  These are:
> UEID
> Origination
> Location
> We do allow OEM Identification, though it's a different format and is restricted.
>  
> Some other claims that we have, and think are important, are OS version and patch-level (represented as a date, YYYYMMDD); secure boot verification key digest; secure boot digest (hash of all verified code); application ID (a digest of the requesting app signing key); and secure app version (hmm, don't have a patchlevel, but we should!  I'll see about adding that for R).
>  
> I suppose all of this could be address by registering additional claims.  I'm not sure it would make sense to add a set of claims (or a complex claim) that addresses key attestation, though.  That seems to significantly change the semantics. Or does that sort of extension seem appropriate to folks?
>  
> I also have a set of more detailed comments and questions, plus some editorial suggestions.  I put the draft into a Google Doc and added comments.  I've asked my team to take a pass through it as well, and I'll share it with this mailing list as soon as they've had a chance to weigh in.
>  
> Again, my apologies for jumping in late.  Let me know if you think EAT just isn't appropriate for Android.
>  
> -- 
> Shawn Willden | Staff Software Engineer | swillden@google.com <mailto:swillden@google.com> | 720-924-6645
> _______________________________________________
> RATS mailing list
> RATS@ietf.org <mailto:RATS@ietf.org>
> https://www.ietf.org/mailman/listinfo/rats <https://www.ietf.org/mailman/listinfo/rats>
>  
> IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.