Re: [core] Iotdir telechat review of draft-ietf-core-echo-request-tag-12

Eliot Lear <lear@cisco.com> Fri, 05 February 2021 18:53 UTC

Return-Path: <lear@cisco.com>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4009C3A0E7F; Fri, 5 Feb 2021 10:53:28 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.601
X-Spam-Level:
X-Spam-Status: No, score=-9.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 f49C1XriaB2b; Fri, 5 Feb 2021 10:53:26 -0800 (PST)
Received: from aer-iport-1.cisco.com (aer-iport-1.cisco.com [173.38.203.51]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F14EF3A0E7E; Fri, 5 Feb 2021 10:53:25 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=4365; q=dns/txt; s=iport; t=1612551206; x=1613760806; h=from:message-id:mime-version:subject:date:in-reply-to:cc: to:references; bh=WK9d7kYt+slPN+Hz6il8t6momXCjm8xCpEUM7oBnxRs=; b=Vmg0dVjfLv6cwCr0gjxAhmRGX+E5Kox/tynNDOsK25MM8XX3xDBubjV1 uO+1+yQLkjSHD+hJ3LslIyK4rhApAmBemvVIsd38KztMP8motprx/lau2 TVe59sCUL1tWIhj19TMJR0dt0dX9355LxXCDMdqVbhMBI/3/YbQKiPGa+ w=;
X-Files: signature.asc : 488
X-IPAS-Result: A0D6AAAykx1glxbLJq1iHAEBAQEBAQcBARIBAQQEAQGCD4F8gXsBJxIxhEGJBIhYA5xDBAcBAQEKAwEBLwQBAYRLAoIBJjgTAgMBAQEDAgMBAQEBBQEBAQIBBgQUAQEBAQEBAQGGQ4VzAQEBAQIBI1YFCwsYKgICVwYTgyYBgmYgr1t2gTKFWYUCEIE4gVOEFVCHC0GCAIERJxyCVj5rGQGDEAsGgzE0giwEgkBEKjs4LywKDE0mAQ0CCg0GAUKcT5sugRSDBIMpgTqXIAMfkzWPbbFQIEaDcgIEBgUCFoFtIYFZMxoIGxVlAYI+PhIZDY4tDAIJgQIBDI0ZQAMwNwIGAQkBAQMJiU+CSQEB
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="5.81,155,1610409600"; d="asc'?scan'208";a="33246150"
Received: from aer-iport-nat.cisco.com (HELO aer-core-3.cisco.com) ([173.38.203.22]) by aer-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 05 Feb 2021 18:53:21 +0000
Received: from [10.61.205.119] ([10.61.205.119]) by aer-core-3.cisco.com (8.15.2/8.15.2) with ESMTPS id 115IrKEg032508 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 5 Feb 2021 18:53:21 GMT
From: Eliot Lear <lear@cisco.com>
Message-Id: <BC37F7D5-0F9C-448D-A9E0-97AF2F8301D6@cisco.com>
Content-Type: multipart/signed; boundary="Apple-Mail=_BC0DFABE-46C2-42B4-94E0-3D353F80ECBE"; protocol="application/pgp-signature"; micalg="pgp-sha256"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.60.0.2.21\))
Date: Fri, 05 Feb 2021 19:53:17 +0100
In-Reply-To: <YB2F8Cs2DH6ux2KN@hephaistos.amsuess.com>
Cc: iot-directorate@ietf.org, core@ietf.org, draft-ietf-core-echo-request-tag.all@ietf.org, last-call@ietf.org
To: "\"Christian M. Amsüss\"" <christian@amsuess.com>
References: <161254498927.30549.15609771383242038227@ietfa.amsl.com> <YB2F8Cs2DH6ux2KN@hephaistos.amsuess.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Outbound-SMTP-Client: 10.61.205.119, [10.61.205.119]
X-Outbound-Node: aer-core-3.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/57LGrrACLwAYQ5OUXbn5irKByIM>
Subject: Re: [core] Iotdir telechat review of draft-ietf-core-echo-request-tag-12
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 05 Feb 2021 18:53:29 -0000

Christian,

Thanks.  This answers my questions well.

Regards,

Eliot

> On 5 Feb 2021, at 18:52, Christian M. Amsüss <christian@amsuess.com> wrote:
> 
> Hello Eliot,
> 
> On Fri, Feb 05, 2021 at 09:09:49AM -0800, Eliot Lear via Datatracker wrote:
>> I do not understand why the Echo option requires opaque data, and why this
>> should not be standardized, as it seems that the behavior you are seeking is
>> standardized.   As you give two example methods in the draft, why not reserve a
>> few extra bits to specify which method is in use?  This would also allow you to
>> drop the necessary callback routines in libraries.
> 
> I don't see which callback routines would be involved here. In current
> implementations, the value is passed around as an opaque buffer to the
> component that is taking responsibility of the Echo option. If multiple
> components inside the server produce Echo values and need to tell them
> apart, the server is of course free to use the few bits as it needs
> them (a pattern that's also used with similar opaque values like the
> tokens). But maybe I did not quite get the point about the callbacks,
> could you elaborate?
> 
> The behavior we are seeking and standardizing is the client's; servers
> can use the option as a tool for a variety of applications (those in
> section 2.4 and more) which can all work using the same generic client
> behavior.
> 
> None of the envisioned applications have any data in there that'd be
> relevant to the client, and worse, if the client were to understand it,
> it could try to construct values, and all of a sudden the security
> considerations for applications of this, like server state recovery,
> would grow *way* more complex: From a simple rule ("Only send an Echo
> value if you ever received it from that peer before") that the server
> can rely on the client to obey, it'd grow into requiring the client to
> understand when it may or may not tamper with the value.
> 
> If a particular application needs the client to understand a value of an
> Echo-like value, it should take "the few bits" out of the option number.
> (For example, I'd be happy to review a draft on sending a realtime
> timestamp in requests -- but that would cover quite a different set of
> use cases, and need vastly different security considerations).
> 
> 
>> The last sentence in 2.2: is this meant to be limited to OSCORE or all uses of
>> DTLS?  I found the inner/outer text confusing, and that a diagram might
>> actually help.
> 
> That sentence is merely illustrating the corner case exception, I'm
> confident we can enhance readability here a bit by not referring to
> DTLS. (It is general to DTLS in that in DTLS all proxies always see the
> CoAP options; it says something about OSCORE is that (DTLS or not),
> proxies see the outer options only).
> 
> On the general inner/outer diagram ... hm, we could add something
> for sure, but I'd be worried that it'd distract by putting focus on a
> topic that really belongs to OSCORE. I'll leave an issue open in the
> authors' tracker to revisit this when more reviews have come in.
> 
> Thank you for your input
> Christian
> 
> --
> To use raw power is to make yourself infinitely vulnerable to greater powers.
> -- Bene Gesserit axiom