Re: [Rats] draft-ietf-rats-architecture-04

Henk Birkholz <henk.birkholz@sit.fraunhofer.de> Tue, 16 June 2020 12:26 UTC

Return-Path: <henk.birkholz@sit.fraunhofer.de>
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 515593A0DA6 for <rats@ietfa.amsl.com>; Tue, 16 Jun 2020 05:26:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-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 1w64xZ19I-7e for <rats@ietfa.amsl.com>; Tue, 16 Jun 2020 05:26:10 -0700 (PDT)
Received: from mail-edgeS23.fraunhofer.de (mail-edges23.fraunhofer.de [153.97.7.23]) (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 7CB133A0D39 for <rats@ietf.org>; Tue, 16 Jun 2020 05:26:07 -0700 (PDT)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A2GFAACCuehe/xoHYZldCRoBAQEBAQEBAQEBAwEBAQESAQEBAQICAQEBAUCBSgKBeYEegTMKhBqRBoEBmROBYgYLAQEBAQEBAQEBBgEBGAsKAgQBAQKBToJ0AoIXASQ4EwIQAQEGAQEBAQEGBAIChkQMQgEMAYMFfgEBAQEBAQEBAQEBAQEBAQEBAQEWAkNRBDEBAQEBAwEBIQ8BBTYCCQwECQIRAQMBAQECAhESAwICJx8BAgYIBgEMAQUCAQGDIgGCewULmUmbBHaBMoVRg1CBOgaBDioBiyuBDw8PgUw/JmsnD4IlBTA+glwBAYEYEgEICgEHRhOCVYJgBIxbghpMgmCGXZpCWigHgViBBYEGBAuSPoVABQodgnA1iGWEbQYnjUSRHZ4zAgQCCQIVgWqBCXBNJE+CaVAXAg2OKQEXgQIBAoJJhRSFRHICNQIGAQcBAQMJfIgthHMHCoEkAXkXAQE
X-IPAS-Result: A2GFAACCuehe/xoHYZldCRoBAQEBAQEBAQEBAwEBAQESAQEBAQICAQEBAUCBSgKBeYEegTMKhBqRBoEBmROBYgYLAQEBAQEBAQEBBgEBGAsKAgQBAQKBToJ0AoIXASQ4EwIQAQEGAQEBAQEGBAIChkQMQgEMAYMFfgEBAQEBAQEBAQEBAQEBAQEBAQEWAkNRBDEBAQEBAwEBIQ8BBTYCCQwECQIRAQMBAQECAhESAwICJx8BAgYIBgEMAQUCAQGDIgGCewULmUmbBHaBMoVRg1CBOgaBDioBiyuBDw8PgUw/JmsnD4IlBTA+glwBAYEYEgEICgEHRhOCVYJgBIxbghpMgmCGXZpCWigHgViBBYEGBAuSPoVABQodgnA1iGWEbQYnjUSRHZ4zAgQCCQIVgWqBCXBNJE+CaVAXAg2OKQEXgQIBAoJJhRSFRHICNQIGAQcBAQMJfIgthHMHCoEkAXkXAQE
X-IronPort-AV: E=Sophos;i="5.73,518,1583190000"; d="scan'208";a="18447151"
Received: from mail-mtas26.fraunhofer.de ([153.97.7.26]) by mail-edgeS23.fraunhofer.de with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 16 Jun 2020 14:26:05 +0200
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0CdAAD+uehe/1lIDI1dCRoBAQEBAQEBAQEBAwEBAQESAQEBAQICAQEBAUCBSgKBeS9vA1QwLAqEGpEGgQGZE4FoCwEDAQEBAQEGAQEYCwoCBAEBgVCCdAKCFQIkOBMCEAEBBQEBAQIBBgRthVsMQgEMAYUiAQEBAQMBASEPAQU2AgkMBAkCEQEDAQEBAgIREgMCAicfAQIGCAYBDAEFAgEBgyIBgwALmUybBHaBMoVRg1mBOgaBDioBiyuBDw8PgUw/JmsnD4IlBTA+glwBAYEYEgEICgEHRhOCVYJgBIxbghpMgmCGXZpCWigHgViBBYEGBAuSPoVABQodgnA1iGWEbQYnjUSRHZ4zAgQCCQIVgWoiZnBNJE+CaVAXAg2OKQEXgQIBAoJJhRSFREExAjUCBgEHAQEDCXyILYRzBwoXgQ0BeRcBAQ
X-IronPort-AV: E=Sophos;i="5.73,518,1583190000"; d="scan'208";a="115573914"
Received: from mailext.sit.fraunhofer.de ([141.12.72.89]) by mail-mtaS26.fraunhofer.de with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 16 Jun 2020 14:26:02 +0200
Received: from mail.sit.fraunhofer.de (mail.sit.fraunhofer.de [141.12.84.171]) by mailext.sit.fraunhofer.de (8.15.2/8.15.2/Debian-10) with ESMTPS id 05GCQ1sj018143 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA256 bits=128 verify=NOT); Tue, 16 Jun 2020 14:26:01 +0200
Received: from [192.168.16.50] (79.234.115.101) by mail.sit.fraunhofer.de (141.12.84.171) with Microsoft SMTP Server (TLS) id 14.3.487.0; Tue, 16 Jun 2020 14:25:56 +0200
To: Hannes Tschofenig <Hannes.Tschofenig@arm.com>, Laurence Lundblade <lgl@island-resort.com>
CC: "rats@ietf.org" <rats@ietf.org>
References: <AM0PR08MB37168B75C592DA7892179957FA820@AM0PR08MB3716.eurprd08.prod.outlook.com> <ED486BA3-D772-4F60-A3C7-ABC95072F0A1@island-resort.com> <AM0PR08MB3716CE71E3C556DE964C5AE9FA9D0@AM0PR08MB3716.eurprd08.prod.outlook.com> <db412817-41dd-a6ea-4e6e-152379a425b8@sit.fraunhofer.de> <AM0PR08MB3716B54770A6987B1640F581FA9D0@AM0PR08MB3716.eurprd08.prod.outlook.com>
From: Henk Birkholz <henk.birkholz@sit.fraunhofer.de>
Message-ID: <fdbebc02-74aa-9c94-0cad-8dfae32a86b3@sit.fraunhofer.de>
Date: Tue, 16 Jun 2020 14:25:55 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0
MIME-Version: 1.0
In-Reply-To: <AM0PR08MB3716B54770A6987B1640F581FA9D0@AM0PR08MB3716.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
X-Originating-IP: [79.234.115.101]
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/YkNVsP8VdAk0OYGycLFkBulx-V8>
Subject: Re: [Rats] draft-ietf-rats-architecture-04
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: Tue, 16 Jun 2020 12:26:13 -0000

Hi Hannes,

we will most certainly take your comments into account and I will add an 
issue on "environments" definitions. Thanks!

In an ideal case, every message type (evidence, endorsement, attestation 
result, policies, and complementary documents) will be encoded the same. 
I'd assume that only "new" or very well-scoped or well-controlled 
domains will be able to do that, today. There is the "bow-tie" diagram 
in the architecture that illustrates potential mixes of "message 
formats", which are referred to encodings in the text. One target of the 
architecture is to explicitly not prescribe an encoding here.

Having said that, some things are easier, if the encoding is identical 
(aside from the typical suspects, such as cost, interoperability, or 
foot-print). One of these things is the composition of composite 
evidence that can also include attestation results and potentially even 
endorsements. In cases that build on composite evidence, attestation 
results might traverse other entities than relying parties. It is most 
certainly possible to augment the exemplary model "passport" as well as 
"background-check" to that extent.

Every "model" and the corresponding flow of conceptual messages (and 
their encodings) is never prescriptive but intended to be expositional.

Viele Grüße,

Henk


On 16.06.20 12:23, Hannes Tschofenig wrote:
> Hi Henk,
> 
> Reading through Section 8.1 I wonder whether the definition from the terminology should be replaced by how you define it in Section 8.1. FWIW you might want to add the term "Target Environment" to the terminology section as well since you use it in various places in the document.
> 
> Is there actually a difference in the message format between evidence and attestation result? For example, could an EAT token be used for encoding evidence and the attestation result? Evidence can travel from the attester to the verifier and to the relying party but the attestation result can only be omitted by the verifier. Maybe I missed it but I couldn't find a case where a message exchange is just between an attester and a relying party. Is this not possible?
> 
> Ciao
> Hannes
> 
> -----Original Message-----
> From: Henk Birkholz <henk.birkholz@sit.fraunhofer.de>
> Sent: Tuesday, June 16, 2020 11:14 AM
> To: Hannes Tschofenig <Hannes.Tschofenig@arm.com>; Laurence Lundblade <lgl@island-resort.com>
> Cc: rats@ietf.org
> Subject: Re: [Rats] draft-ietf-rats-architecture-04
> 
> Hi Hannes,
> hi Laurence,
> 
> I think "evidence" vs. "information" is a very good example that shows why the text stabilized in the shape it is in now.
> 
> I am pretty sure that - and please speak up, if I am missing some vital point here - evidence is not simply information. At the very least there has to be a method to prevent (e.g. secure channel) or even detect (e.g. a signature) tampering with evidence. It also must originate from an attester, etc. So there are a lot of characteristics that are tied to evidence that make it at least a subclass of information.
> 
> This is only a small arbitrary example to illustrate how that minimal set of definitions came to be.
> 
> I totally agree that the definition of Evidence early on is not in alignment with the text (which I also think is better) anymore, but an issue about Evidence text is already in the tracker thanks to Kathleen and we will work on a more crisp description after the current open PR are settled.
> 
> Viele Grüße,
> 
> Henk
> 
> 
> On 16.06.20 10:51, Hannes Tschofenig wrote:
>> Hi Laurence,
>>
>> as you explain below it might help to replace some of the terms with
>> others. I think the description does not make it easy to explain the
>> concepts to those who should actually be using them. I did the review
>> because I tried to explain the concept in a lecture to students.
>>
>> For example, the term “information” (or claims) sounds a lot simpler
>> to understand less sophisticated than “evidence”. Particularly, when
>> the term “evidence” is then described as “A set of information about
>> an Attester that is to be appraised by a Verifier”. (The definition
>> later provided in the text is actually better but does not match the
>> definition earlier in the document. Inconsistency likely caused by
>> duplicating text throughout the document.) I earlier description is
>> IMHO actually wrong. For example, why does the verifier needs to be
>> present in all scenarios? In fact the models in Section 5 suggest
>> otherwise. Why cannot a device send the claims to a relying party? The
>> case where you need a verifier to interpret the claims may be a corner
>> case in some environments. Why is the information about an attester?
>> It better describe the characteristics of the device, as it is said in Section 8.1.
>>
>> If you look at the whole exercise from a 10,000 foot view then we are
>> essentially using design patterns from the identity management space
>> and apply it here with slightly different information. That’s in a
>> nutshell where the models in Section 5 came from.
>>
>> Ciao
>>
>> Hannes
>>
>> *From:* Laurence Lundblade <lgl@island-resort.com>
>> *Sent:* Tuesday, June 16, 2020 3:37 AM
>> *To:* Hannes Tschofenig <Hannes.Tschofenig@arm.com>
>> *Cc:* rats@ietf.org
>> *Subject:* Re: [Rats] draft-ietf-rats-architecture-04
>>
>> Hi Hannes,
>>
>> I think readability of the document could be improved and maybe some
>> simplification would be OK, but I generally think most of the core
>> entities and messages make sense.
>>
>>
>>
>>      On Jun 9, 2020, at 12:13 AM, Hannes Tschofenig
>>      <Hannes.Tschofenig@arm.com <mailto:Hannes.Tschofenig@arm.com>> wrote:
>>
>>      Hi all
>>
>>      I have re-read the architecture document and IMHO it is still far
>>      too complex. It makes the reader believe that attestation is some
>>      rocket-science concept, which it just isn’t. After such a long time
>>      the document is unnecessarily hard to read and understand.
>>
>>      Here is the story as I see it.
>>
>>      In the basic form a device puts a bunch of claims together and then
>>      signs them. The device is the attester.
>>
>>      Then, this information is sent to another party, the relying party,
>>      which uses this information for some kind of decision making.
>>
>> Evidence is just the name for “this information”.
>>
>>
>>
>>      Of course, there is some prior setup that has to happen
>>      (provisioning of keys during manufacturing) and some assumptions
>>      have to be made as well (attestation code on the device has to be
>>      well protected, code isolation being used, etc.).
>>
>> Endorsements are the mechanism by which this happens.
>>
>>
>>
>>      Then, there is the a complex case where the relying party cannot use
>>      the received information directly. This is most likely related to
>>      any form of software measurements. If you send a hash of a
>>      bootloader to some relying party you cannot really expect it to be
>>      used for anything. The reason the relying party cannot use that
>>      information directly is because it does not know what software the
>>      device is really supposed to be running. Hence, there is a need to
>>      consult another party (let’s call it the verifier). The assumption
>>      is that this party knows what the expected fingerprint is and hence
>>      what software is running on the device.
>>
>> Which is why the terms Verifier and Results are used.
>>
>>      That’s all. There is not much more complexity to this topic.
>>
>> I personally would be happy without the Owners and the Appraisal
>> Policies in the architecture as they seem obviously implied, but not
>> enough to ask they be removed.
>>
>>      So, where do all these terms come from? Appraisal policies,
>>      evidence, endorser, ...
>>
>>      I would delete them and see whether the idea still gets across.
>>
>> I think more clear writing would help.
>>
>> (We could put text in https://www.scribens.com and look at the Flesch
>> and Gunning Fog indexes for readability under statistics)
>>
>> LL
>>
>>
>>
>>      Ciao
>>
>>      Hannes
>>
>>      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.
>>      _______________________________________________
>>      RATS mailing list
>>      RATS@ietf.org <mailto:RATS@ietf.org>
>>      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.
>>
>> _______________________________________________
>> RATS mailing list
>> RATS@ietf.org
>> 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.
>