Re: [Rats] Android attestations: Re: draft-richardson-rats-usecases-00 comments

Michael Richardson <mcr+ietf@sandelman.ca> Fri, 05 July 2019 18:53 UTC

Return-Path: <mcr+ietf@sandelman.ca>
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 D35F912010C for <rats@ietfa.amsl.com>; Fri, 5 Jul 2019 11:53:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-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 CMuWcxhtqsef for <rats@ietfa.amsl.com>; Fri, 5 Jul 2019 11:53:03 -0700 (PDT)
Received: from tuna.sandelman.ca (tuna.sandelman.ca [209.87.249.19]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 960F7120105 for <rats@ietf.org>; Fri, 5 Jul 2019 11:53:03 -0700 (PDT)
Received: from sandelman.ca (unknown [IPv6:2607:f0b0:f:2:56b2:3ff:fe0b:d84]) by tuna.sandelman.ca (Postfix) with ESMTP id DE6EC38196; Fri, 5 Jul 2019 14:51:05 -0400 (EDT)
Received: from localhost (localhost [IPv6:::1]) by sandelman.ca (Postfix) with ESMTP id 75541B26; Fri, 5 Jul 2019 14:53:02 -0400 (EDT)
From: Michael Richardson <mcr+ietf@sandelman.ca>
To: Anders Rundgren <anders.rundgren.net@gmail.com>, "rats@ietf.org" <rats@ietf.org>
In-Reply-To: <50dc4fad-2a57-0daa-6c13-87557ebb050b@gmail.com>
References: <MW2PR00MB03963ABEB87211AD28A16240A6490@MW2PR00MB0396.namprd00.prod.outlook.com> <12503.1552447661@localhost> <219648D6-188A-429D-A13F-ED6155DE9016@island-resort.com> <14288.1553710783@dooku.sandelman.ca> <4EB6FF13-2DAF-4BDC-AC90-C46720D61AF0@arm.com> <bf003513-209a-7d5f-a9a5-58ade6c23545@gmail.com> <21417.1560911502@dooku.sandelman.ca> <fbc05f84-232b-7ca6-47c1-9b23d73e47ca@gmail.com> <CAFyqnhUkVaYMtjpB9wa4h6hEwd=h3hXHkCr9w8bd8LSXEo0ckA@mail.gmail.com> <50dc4fad-2a57-0daa-6c13-87557ebb050b@gmail.com>
X-Mailer: MH-E 8.6; nmh 1.7+dev; GNU Emacs 24.5.1
X-Face: $\n1pF)h^`}$H>Hk{L"x@)JS7<%Az}5RyS@k9X%29-lHB$Ti.V>2bi.~ehC0; <'$9xN5Ub# z!G,p`nR&p7Fz@^UXIn156S8.~^@MJ*mMsD7=QFeq%AL4m<nPbLgmtKK-5dC@#:k
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha256"; protocol="application/pgp-signature"
Date: Fri, 05 Jul 2019 14:53:02 -0400
Message-ID: <3766.1562352782@localhost>
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/OFwXR_RhPAbqF1xNx7kRm7gzeSE>
Subject: Re: [Rats] Android attestations: Re: draft-richardson-rats-usecases-00 comments
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: Fri, 05 Jul 2019 18:53:07 -0000

Anders Rundgren <anders.rundgren.net@gmail.com> wrote:
    > I don't have much data on StrongBox so maybe I was out of line there,
    > but the idea I had was that keys would not be stored in secure silicon,
    > but rather encrypted in the TEE or RE environment.  In that case
    > StrongBox would be a crypto processor with embedded keys which also
    > would be used for provisioning/attestation:
    > https://github.com/ietf-teep/architecture/issues/52#issuecomment-486929941

So I think you are saying that you want software running outside of
TEE/RE environment to be able to ask for a key to decrypt an private
(assymetric) key (also stored outside of the TEE).  This software would do
something with the key, and then destroy the key.

Is this a use case where the software needs to make some kind of claim
to the TEE (which is the relying party now), in order to get this access?

I can easily see a situation where there are three trusted modules that
the software interacts with:

1) an attestation service that measures and attests to the integrity of the
   software running... produces a claim (A)

2) the StrongBox that releases the private key-key based upon claim (A) to
   produce some signature X.

3) a trusted module that counter-signs signature X, to say that the
   end-user authorized the transaction via hardware FOO.

--
Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works
 -= IPv6 IoT consulting =-