Re: [Rats] Dealing with Attestation Roots

Laurence Lundblade <lgl@island-resort.com> Thu, 23 April 2020 19:21 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 4BED03A125F for <rats@ietfa.amsl.com>; Thu, 23 Apr 2020 12:21:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.894
X-Spam-Level:
X-Spam-Status: No, score=-1.894 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham 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 gq4zE75slR1D for <rats@ietfa.amsl.com>; Thu, 23 Apr 2020 12:20:58 -0700 (PDT)
Received: from p3plsmtpa06-04.prod.phx3.secureserver.net (p3plsmtpa06-04.prod.phx3.secureserver.net [173.201.192.105]) (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 84FA23A1260 for <rats@ietf.org>; Thu, 23 Apr 2020 12:20:58 -0700 (PDT)
Received: from [192.168.1.78] ([76.167.193.86]) by :SMTPAUTH: with ESMTPA id RhP7j82VByxohRhP7jgTHM; Thu, 23 Apr 2020 12:20:58 -0700
X-CMAE-Analysis: v=2.3 cv=D4M51cZj c=1 sm=1 tr=0 a=t2DvPg6iSvRzsOFYbaV4uQ==:117 a=t2DvPg6iSvRzsOFYbaV4uQ==:17 a=48vgC7mUAAAA:8 a=1MSDjx2PAAAA:20 a=pGLkceISAAAA:8 a=FOECo9npAAAA:8 a=n8i27M1mAAAA:8 a=YR1WRx-QAAAA:8 a=i0EeH86SAAAA:8 a=z6gsHLkEAAAA:8 a=hD80L64hAAAA:8 a=_fqXA1i7Q1V1SoLNugsA:9 a=c6cs0ZwzTkk7BqMS:21 a=_XqbarhqGqmHBqGP:21 a=QEXdDO2ut3YA:10 a=kWFhrK73oceN_EPdFvEA:9 a=sn_QKXJ2tMwYUIB8:21 a=hE-K0EdpAR8N2Jja:21 a=VaISDnJI_3VHSSVW:21 a=_W_S_7VecoQA:10 a=w1C3t2QeGrPiZgrLijVG:22 a=byWG51NV23l9F6lfGfes:22 a=iOyaEzCc-dPZPfZw1HLk:22 a=d-OLMTCWyvARjPbQ-enb:22
X-SECURESERVER-ACCT: lgl@island-resort.com
From: Laurence Lundblade <lgl@island-resort.com>
Message-Id: <FE63538E-389A-4F07-B8DB-6B875D27C3D0@island-resort.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_E91E2AC4-758D-4BD0-A22C-C738E3C6F2BF"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\))
Date: Thu, 23 Apr 2020 12:20:57 -0700
In-Reply-To: <d67985a1-97da-3e23-81e6-1b58b61e1d1a@gmail.com>
Cc: "rats@ietf.org" <rats@ietf.org>
To: Anders Rundgren <anders.rundgren.net@gmail.com>
References: <49d8907c-7637-3d21-0619-4999565fc50e@gmail.com> <7C65B977-FA56-4118-BA8B-121BD9697F7C@island-resort.com> <d67985a1-97da-3e23-81e6-1b58b61e1d1a@gmail.com>
X-Mailer: Apple Mail (2.3445.104.11)
X-CMAE-Envelope: MS4wfAzgkcXXKPhkxKbkf05QdqzE8LJ56AMwzWApsqcT6t+y7rB6dpZd6MX/GPsUFP5zOqSCrBacmSmxq178n2cCS5T2J+G3kDF5nUhLBxUQ7Fz+Oi/LLM9B THEbFZDGZ56+i/BE9ruv/g5EahoP8Jx4JW5cgZ79sVgYLx0RdEur8f2+bfgwpErENL1GGQ/lB3i5ole61Gm8A0ABGQeMJJRKDtM=
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/L9ZRLNm188Z6cAKD3FIdXvsmI9Q>
Subject: Re: [Rats] Dealing with Attestation Roots
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, 23 Apr 2020 19:21:00 -0000

Hi Anders,

I think using an X.509 hierarchy with EAT is a fine thing to do, but no one’s done it yet. The two EAT implementations I know of, use other means to find the verification key. One by key ID, another by a combination of claims inside the attestation.

Android’s solution is not standard, it is just used by Android AFAIK.

I think it would be fine to write a draft that says how to use X.509 with EAT. It would involve https://tools.ietf.org/html/draft-ietf-cose-x509-06 and maybe the URL you’ve suggested for finding the root. Would even be interested in adding this functionality to ctoken <https://github.com/laurencelundblade/ctoken>. 

Technically speaking, this is all about endorsements and relates to recent email threads on that subject here.

LL


> On Apr 22, 2020, at 7:54 AM, Anders Rundgren <anders.rundgren.net@gmail.com> wrote:
> 
> On 2020-04-22 16:38, Laurence Lundblade wrote:
>> Hi Anders,
> 
> Hi Laurence,
> Thank you for responding!
> 
>>> On Feb 27, 2020, at 9:51 AM, Anders Rundgren <anders.rundgren.net@gmail.com> wrote:
>>> 
>>> Hi List,
>>> In the https://cyberphone.github.io/openbankingwallet project the idea was to use attestations.  The most recent version of the Android app indeed supports this as well.
>>> 
>>> In an ideal world the root would be provided by Google.  However, since we don't live in an ideal world there are vendors out there who do not follow that "recipe”.
>> Are you referring to Android N Key Attestation that is implemented in the key store?
> 
> This is indeed one possible usage.
> https://developer.android.com/training/articles/security-key-attestation
> 
>>> 
>>> For W3C's PaymentRequest API a simpler solution is used which do not match attestations but is better than nothing.  This scheme builds on publishing a manifest associated with the app.  Here is my particular manifest:  https://mobilepki.org/w3cpay/method
>>> 
>>> But I still would like to use attestations and also not being tied to browsers.
>>> 
>>> What about making attestations optionally contain a URL to the root like https://huawei.com/teeroot ?
>> I don’t know what https://huawei.com/teeroot  is. I can’t get anything from this URL.
> 
> That's correct, I don't even know where to find Huawei's attestation root which is how I came to this idea :)
> 
> 
>> I’m guessing you are after an X.509 root certificate, one that is used for Android-style attestation. Is that right?
> 
> Right.  Is using an X.509 root certificate an unusual way of dealing with attestation verification?
> 
> Anders
> 
>> LL
>>> Since the number of vendors in finite and the Web-PKI is in a fairly good shape these days, this could serve as a workaround for those who don't have any number of cycles to spend on installing arbitrary tee root certificates.  That is, a verifier's "trust registry" would simply hold host names like "huawei.com", "sony.com", "samsung.com", etc.
>>> 
>>> If there is a better method, I'm all ears!
>>> 
>>> thanx,
>>> Anders
>>> 
>>> _______________________________________________
>>> RATS mailing list
>>> RATS@ietf.org
>>> https://www.ietf.org/mailman/listinfo/rats
> 
>