Re: [Rats] looking for better terms -- request for bike shed discussion

Thomas Hardjono <ietf-rats@hardjono.net> Thu, 09 January 2020 20:35 UTC

Return-Path: <ietf-rats@hardjono.net>
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 A650712011B for <rats@ietfa.amsl.com>; Thu, 9 Jan 2020 12:35:15 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.12
X-Spam-Level:
X-Spam-Status: No, score=-1.12 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_NEUTRAL=0.779] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (768-bit key) header.d=hardjono.net
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 KaXH927ubzt1 for <rats@ietfa.amsl.com>; Thu, 9 Jan 2020 12:35:13 -0800 (PST)
Received: from gateway30.websitewelcome.com (gateway30.websitewelcome.com [50.116.125.1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9B0BD120047 for <rats@ietf.org>; Thu, 9 Jan 2020 12:35:13 -0800 (PST)
Received: from cm10.websitewelcome.com (cm10.websitewelcome.com [100.42.49.4]) by gateway30.websitewelcome.com (Postfix) with ESMTP id 55AD71A54365 for <rats@ietf.org>; Thu, 9 Jan 2020 14:24:24 -0600 (CST)
Received: from box5207.bluehost.com ([162.241.224.194]) by cmsmtp with SMTP id peLwijaR7HunhpeLwit4EY; Thu, 09 Jan 2020 14:24:24 -0600
X-Authority-Reason: nr=8
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=hardjono.net; s=default; h=Content-transfer-encoding:Content-type: Mime-version:In-Reply-To:References:Message-ID:CC:To:From:Subject:Date:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=Moy0WBzUi6V+o6p72YdVIf5piz3QgLD+kuiRQ6WDSzA=; b=XGhfqGEZAs6YqtnNl/mAq9U4w+ iGagHnh5EKbFU3PdqOO5kmYmPjqWjx05S9X61WI1jenQ9aCbBRnJn3H6w952GPQn0bGx87aci7VmC 2eb4qsysD10xAorOSKGY1LTm/;
Received: from c-73-167-220-69.hsd1.ma.comcast.net ([73.167.220.69]:56764 helo=[10.0.0.194]) by box5207.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92) (envelope-from <ietf-rats@hardjono.net>) id 1ipeLv-00223O-QN; Thu, 09 Jan 2020 13:24:23 -0700
User-Agent: Microsoft-MacOutlook/10.10.11.191208
Date: Thu, 09 Jan 2020 15:24:21 -0500
From: Thomas Hardjono <ietf-rats@hardjono.net>
To: Dave Thaler <dthaler=40microsoft.com@dmarc.ietf.org>, "Smith, Ned" <ned.smith@intel.com>, Michael Richardson <mcr@sandelman.ca>, Laurence Lundblade <lgl@island-resort.com>
CC: "rats@ietf.org" <rats@ietf.org>, "Schönwälder, Jürgen" <J.Schoenwaelder@jacobs-university.de>
Message-ID: <E7F0D05C-F4AF-40FC-AE2A-C76ADB1D7EAD@hardjono.net>
Thread-Topic: [Rats] looking for better terms -- request for bike shed discussion
References: <26979.1578413051@localhost> <6291CF16-BBDC-4A12-A0C0-FDFBAB494A31@island-resort.com> <20200107165432.zmpm6yilgr6fogrh@anna.jacobs.jacobs-university.de> <C7744481-277D-477A-8B0A-F7DC9F4CC273@intel.com> <0FB69139-54DE-4F1B-906F-12B83D1EDEED@island-resort.com> <31998.1578512094@localhost> <BL0PR2101MB10278A4C6B18B806320B82EEA3390@BL0PR2101MB1027.namprd21.prod.outlook.com> <DAD704E4-CB1A-47A4-A951-763363689716@intel.com> <BL0PR2101MB1027EA0EFF9CC536603D18CFA3390@BL0PR2101MB1027.namprd21.prod.outlook.com>
In-Reply-To: <BL0PR2101MB1027EA0EFF9CC536603D18CFA3390@BL0PR2101MB1027.namprd21.prod.outlook.com>
Mime-version: 1.0
Content-type: text/plain; charset="UTF-8"
Content-transfer-encoding: quoted-printable
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - box5207.bluehost.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - hardjono.net
X-BWhitelist: no
X-Source-IP: 73.167.220.69
X-Source-L: No
X-Exim-ID: 1ipeLv-00223O-QN
X-Source:
X-Source-Args:
X-Source-Dir:
X-Source-Sender: c-73-167-220-69.hsd1.ma.comcast.net ([10.0.0.194]) [73.167.220.69]:56764
X-Source-Auth: ietf-rats@hardjono.net
X-Email-Count: 2
X-Source-Cap: aGFyZGpvbm87aGFyZGpvbm87Ym94NTIwNy5ibHVlaG9zdC5jb20=
X-Local-Domain: yes
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/c5ftUpY4YMxgxWi6-FkAhYM0Eb4>
Subject: Re: [Rats] looking for better terms -- request for bike shed discussion
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, 09 Jan 2020 20:35:16 -0000

I'm also good with Ned's description.  

Calling it out as the "Attesting Environment" and "Attester" clearly is useful to avoid future confusion (which is bound to happen when we start talking about turtles all the way down).

-- thomas --


-----Original Message-----
From: RATS <rats-bounces@ietf.org> on behalf of Dave Thaler <dthaler=40microsoft.com@dmarc.ietf.org>
Date: Wednesday, January 8, 2020 at 8:36 PM
To: "Smith, Ned" <ned.smith@intel.com>, Michael Richardson <mcr@sandelman.ca>, Laurence Lundblade <lgl@island-resort.com>
Cc: "rats@ietf.org" <rats@ietf.org>, "Schönwälder, Jürgen" <J.Schoenwaelder@jacobs-university.de>
Subject: Re: [Rats] looking for better terms -- request for bike shed discussion

I think I agree with everything Ned said below. :)

Dave

-----Original Message-----
From: Smith, Ned <ned.smith@intel.com> 
Sent: Wednesday, January 8, 2020 5:34 PM
To: Dave Thaler <dthaler@microsoft.com>; Michael Richardson <mcr@sandelman.ca>; Laurence Lundblade <lgl@island-resort.com>
Cc: "Schönwälder, Jürgen" <J.Schoenwaelder@jacobs-university.de>; rats@ietf.org
Subject: Re: [Rats] looking for better terms -- request for bike shed discussion

Equating the "attester" with an "attesting environment" may be fallacious. For example, the TA might be the thing that signs the conveyance protocol frames and delivers the cert chain to the Verifier. However, it (the TA) isn't an "attesting environment" it only ever is a "target environment". 

The Verifier MUST(?) detect the DICE layering convention and walk the graph back to the original (root) "attesting environment". Even with DICE layering, there is still only a single "device" (endpoint) that the RATS Role will call "Attester" and it consists of multiple "attesting environments" and multiple "target environments" where some of these are both an "attesting" and a "target" environment during its lifetime. 

It may be incorrect to say that the TA is the RATS "Attester" because the Attester is supposed to be a pledge that can prove it is a trustworthy endpoint to the Verifer. The endpoint isn't just the TA, it is the chain of things that anchors it to the first "attesting environment". 

The root/anchor "attesting" environment relies on its mfg to establish trust using a mfg issued certificate that vouches for the process that manufactured it and likely issues an identity credential (IDevID). The IDevID allows the Verifier to disambiguate which of possibly multiple instances of Attesters it is talking to currently. 

It seems reasonable that an EAT submod structure can be used to represent DICE layering (so could an X.509 certificate chain). However, a submod could also describe other relationships / decompositions of a multi-component endpoint. For example, if the OP-TEE consisted of multiple chips then there could be multiple vendors, part numbers etc.. and therefore multiple submods where all of them (likely) are "target environments".  

DICE layering comprehends hierarchies too. If one of the OPTEE sub components had DICE capabilities it could become an "attesting environment" to one of the OPTEE chips (branches). But this more complex thing is still dependent on its path to the anchor/root "attesting environment" so it can't (in isolation) claim to be the "attester". 

If the TEE was an SGX instead of an OPTEE, then the anchor "attesting environment" is SGX uCode rather than HW --> Trusted FW. The SGX "attesting" and "target" environments are orthogonal to the non-SGX "attesting" and "target" environments, but nevertheless part of an IA "device". It is possible therefore to have multiple "Attesters" in the same SGX-capable "device".

-Ned

On 1/8/20, 4:02 PM, "Dave Thaler" <dthaler@microsoft.com> wrote:

    I don't think I have any problems with Laurence's terminology but just to test it...
    
    We have devices running Trusted Apps on OP-TEE over trusted firmware on an ARM TrustZone processor.
    The full evidence is a DICE cert chain that has a set of claims for each cert in the chain, where each layer is an attesting environment for the subsequent layer (attested environment):
    	Hardware -> Trusted Firmware -> OP-TEE -> TA
    Thus there are four claim sets in a chain.
    
    Using Laurence's terminology, I believe the suggestion is that attesting environment is an "attester" and an attested environment is a "target".   Thus the example above has 3 attesters (Hardware, TFW, and OP-TEE), and 4 targets (HW where target == attester, TFW, OP-TEE, and TA).
    
    Are you ok with saying that every claimset in a chain is from a separate "attester"?   I believe this is different from our current definition of Attester (which is the thing that sends the whole chain to a verifier), so want to confirm.
    
    Dave
    
    -----Original Message-----
    From: RATS <rats-bounces@ietf.org> On Behalf Of Michael Richardson
    Sent: Wednesday, January 8, 2020 11:35 AM
    To: Laurence Lundblade <lgl@island-resort.com>
    Cc: =?utf-8?B?IlNjaMO2bnfDpGxkZXIsIErDvHJnZW4i?= <J.Schoenwaelder@jacobs-university.de>; Smith, Ned <ned.smith@intel.com>; rats@ietf.org
    Subject: Re: [Rats] looking for better terms -- request for bike shed discussion
    
    
    Thank you for this very nice text. I rather like it.
    
    Laurence Lundblade <lgl@island-resort.com> wrote:
        > Here’s some rough text:
    
        > Conceptually, the “attester” produces a set of “claims” about a “target”.
        > The claims are known as “attestation evidence” and are sent to the
        > “verifier”. The verifier additionally takes in “endorsements”, processes
        > the attestation evidence and produces the “attestation result” for the
        > final consumer, the “relying party”.
    
    
        > This description left conceptual for easy understanding and discussion.
        > Actual implementations are usually more complex in at least one or more
        > of these ways:
    
    
    
        > * The attester is also the target
    
    
        > * One attester produces claims about several targets (submodules)
    
    
        > * The verifier and the relying party are the same
        > * Claims may be simple or complex, many or few
        > * Some claims are measurements and some are not
        > * Some claims in in the attestation evidence may be simply passed
        > through the verifier, others may be heavily processed.
        > * Daisy chaining -- the evidence from one attester goes through a
        > verifier producing results which are taken as claims that are input
        > to another attester that outputs a different set of evidence that
        > goes on through a different verifier.
        > * Daisy chaining may happen on the device producing the attestations
        > or in the infrastructure evaluating the device or both.
    
    
        > (Next I’d write a plethoras of simple examples for attester, target,
        > claims… assuming only the simplest implementation that maps to the
        > conceptual description )
    
    
    
    
    
    
        > I am starting to prefer the basic conceptual / abstract description over one
        > that is inherently mappable to every possible.
    
        > LL
    
    _______________________________________________
    RATS mailing list
    RATS@ietf.org
    https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Fmailman%2Flistinfo%2Frats&amp;data=02%7C01%7Cdthaler%40microsoft.com%7C3ca5bb5fc5d84a6f6f6208d794a4120a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637141304715148942&amp;sdata=2LW6xIN2AAm7bkYQIlpqGQRTwT76Bp0GYqxQbIbN3UM%3D&amp;reserved=0
    

_______________________________________________
RATS mailing list
RATS@ietf.org
https://www.ietf.org/mailman/listinfo/rats