Re: [Lake] proposed scoping text

Christopher Wood <caw@heapingbits.net> Mon, 27 April 2020 15:32 UTC

Return-Path: <caw@heapingbits.net>
X-Original-To: lake@ietfa.amsl.com
Delivered-To: lake@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2A3223A0CAF for <lake@ietfa.amsl.com>; Mon, 27 Apr 2020 08:32:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, 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] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=heapingbits.net header.b=E9rGhEPZ; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=UDYt7ohR
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 HOULvL2By6xp for <lake@ietfa.amsl.com>; Mon, 27 Apr 2020 08:32:53 -0700 (PDT)
Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A59E93A0CA4 for <lake@ietf.org>; Mon, 27 Apr 2020 08:32:53 -0700 (PDT)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id D038A5C002F; Mon, 27 Apr 2020 11:32:52 -0400 (EDT)
Received: from imap4 ([10.202.2.54]) by compute1.internal (MEProxy); Mon, 27 Apr 2020 11:32:52 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heapingbits.net; h=mime-version:message-id:in-reply-to:references:date:from:to :subject:content-type:content-transfer-encoding; s=fm1; bh=yioj+ BKMg5QCT1qf7iJRrg2PqCck9HQ726Wzq5tKe8Y=; b=E9rGhEPZyP/GOl63WV0Rm fRZrlR+XZ6vHEXWrXm/DpPP07Bz40Edhp7NjQXz8cgJpVx2WUzcrVBZ6cNG3IYWD KCBZqH5aib2WhUG1XSsE2VaeX2Xcly2owdM5mENHbujtmxYTRTK/xor/q0Sgi7xj tgHHEATXxwWnE+NHIPrVxD+QoNxuRi87D3T1sx5/e+9sEeh5XNZsn/MRnujQuXQe Mer5U/se7s+QtKzmE3F8peaOaXNXNSixb/oLMO0yd1UcihW/LRjfHfo284m9C2ot vO4BqLTKq6GmPOcId+bCCYEzP839CqXvjSI+3mE8MTVQLKaY5VQ1HByH7B8FZ4VE A==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=yioj+BKMg5QCT1qf7iJRrg2PqCck9HQ726Wzq5tKe 8Y=; b=UDYt7ohRzpDZsB4ijrAFgPBCs487WNMX7K0k2VYq11HniI95RjLHvSZvq nrQhL654wLMSd28SIj3v9wqQbfT0sodV3LYGTwfbDWeUrtPnX10/ZaoniIlADxz8 islRkL3zz6iFlF4N90AehSXBcuQBAFDQz0XT8pSpNEWKUaSMLKx4U5UAX5Uzi/8D 7ugiuCvATgxGL5Liu6+NCuAbQv1c6AQMJ8WGqpqzAd39H/6drambZ/JtU4eC075l O6ZiYux3ZROYBimo65ffR1LrUTI493sdw8UwIJ0Li3C85wQsxlmXhssJPfy31f6t Q7dEOj2JIKbhKvZQfBaM1IbJS0+Rg==
X-ME-Sender: <xms:JPumXgSPt4h-4Ry3UUC7sFtFQ8rAna38vwMbyphA6LM6XLVhUB7cLg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedrheelgdeklecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefofgggkfgjfhffhffvufgtgfesthhqredtreerjeenucfhrhhomhepfdevhhhr ihhsthhophhhvghrucghohhougdfuceotggrfieshhgvrghpihhnghgsihhtshdrnhgvth eqnecuffhomhgrihhnpehfihhrvggvhigvrdgtohhmpdhtrghilhhstggrlhgvrdgtohhm necuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheptggrfi eshhgvrghpihhnghgsihhtshdrnhgvth
X-ME-Proxy: <xmx:JPumXvaDHoasBOSqwJzeyKHHp9Imsjq4VTfp2k1t7MVLS6j5iLiD3Q> <xmx:JPumXh4ZF-eY7LuQTAJhNUyVwkb7whJw3Y_NS4doOrnwuU7ga8h_FQ> <xmx:JPumXqdMIBditD0vLaiKVkYYpLKGx0e1CPbAs5frKmdJoWdafEJGGw> <xmx:JPumXj1z_bYxdzWhphvMz7FdUPRprgXbnc5wOxiU5-Ugznv4tEzVWA>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 4CF153C00A1; Mon, 27 Apr 2020 11:32:52 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.3.0-dev0-351-g9981f4f-fmstable-20200421v1
Mime-Version: 1.0
Message-Id: <f6cd0bac-c66a-4bc3-91d2-da68d3833643@www.fastmail.com>
In-Reply-To: <89186C99-B479-4FFF-8C28-987EB00F8CC4@ericsson.com>
References: <3780afd5-7012-d808-9584-07e04913cd19@cs.tcd.ie> <239BEC0D-240F-4830-A7A4-0172B62BD6AC@ericsson.com> <B620C5B0-8DE0-489F-B0B0-2548F3C83B49@ericsson.com> <F3B1DD90-2ACB-41FA-9A41-4ADE2D929A7A@inria.fr> <c1037af3-c48f-40fd-8fb3-5c7d4f549798@www.fastmail.com> <B0DD7218-A4C2-460A-9060-59EFEA1113F7@ericsson.com> <19199e5b-5372-4651-b90b-8a688fba9b19@www.fastmail.com> <89186C99-B479-4FFF-8C28-987EB00F8CC4@ericsson.com>
Date: Mon, 27 Apr 2020 08:32:31 -0700
From: "Christopher Wood" <caw@heapingbits.net>
To: =?UTF-8?Q?G=C3=B6ran_Selander?= <goran.selander@ericsson.com>, "lake@ietf.org" <lake@ietf.org>
Content-Type: text/plain;charset=utf-8
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/lake/np4u7q3PjL2zludyLIXfWlKxfhQ>
Subject: Re: [Lake] proposed scoping text
X-BeenThere: lake@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Lightweight Authenticated Key Exchange <lake.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lake>, <mailto:lake-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lake/>
List-Post: <mailto:lake@ietf.org>
List-Help: <mailto:lake-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lake>, <mailto:lake-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 27 Apr 2020 15:32:56 -0000

Hi Göran,

Please see inline below!

On Mon, Apr 27, 2020, at 8:18 AM, Göran Selander wrote:
> Hi Chris,
> 
> Thanks for quick response, comments inline.
> 
> On 2020-04-27, 15:10, "Christopher Wood" <caw@heapingbits.net> wrote:
> 
>     On Mon, Apr 27, 2020, at 2:23 AM, Göran Selander wrote:
>     > Hi Christopher,
>     > 
>     > As you remember, the scope of this work have been discussed (outside 
>     > ACE) since Jan 2019. Support for PKI and certificates has been included 
>     > throughout the different steps, the virtual Secdispatch interim March 
>     > 2019, the LAKE BoF July 2019, etc., each occasion followed by a 
>     > consensus call with large support. Removing all kind of PKI support 
>     > from the scope would be a drastic last minute change.
> 
>     I'm aware, but I think it's the right thing to do in the near term. 
> 
>     > The use of certificates is important for efficient trust management in 
>     > deployments with large numbers devices, and is one of the driving 
>     > forces for moving away from PSK-based IoT deployments. The number of 
>     > IoT devices is projected to surpass the number of web servers world 
>     > wide by orders of magnitude. A common building automation deployment 
>     > can have thousands of devices from several manufactures. If this is not 
>     > the setting where we want to use a PKI, then what is? 
> 
>     I can't comment on whether or not this makes sense. I don't work in 
> the space. All I'm suggesting is to focus on small cases first. 
> 
>     I'll note also that it's *possible* to have your cake and eat it 
> too, as demonstrated by Tailscale 
> [https://protect2.fireeye.com/v1/url?k=0bc73d2d-574ee76a-0bc77db6-0cc47ad93c18-4e312ba1cd3cf468&q=1&e=20eb74ed-8a0d-4c42-a29c-06c545b31b25&u=https%3A%2F%2Ftailscale.com%2Fblog%2Fhow-tailscale-works%2F]le-works%2F]. We could design an AKE that works with only public keys, or even PSKs for that matter, and move everything else to the application layer. To me, this demonstrates the certificates need not be baked into the protocol to solve the use case you (may?) have in mind.
> 
> [GS] I glanced at the reference and it looks interesting but I'm not 
> sure how it fits with the IoT device deployment setup. Could you please 
> elaborate?

Again, I don't work in this space. I simply claim -- with a great deal of hand waving -- that it may be possible!

> 
>     > If we want the IETF to provide a relevant contribution to 
> securing 
>     > constrained IoT we cannot exclude device certificates. Instead we 
>     > should design the AKE so that these deployments can use 
> certificates in 
>     > a simple and efficient way. Referencing certificates instead of 
>     > transporting them over constrained links is a key component here.
>     > > I think including certificates complicates the story and will 
> make 
>     > > progress on an efficient AKE
>     > 
>     > I am not convinced by the "complication" argument because it is 
> hard to 
>     > measure at this stage. I think the scope should to be defined by 
> what 
>     > we need to solve and what we believe we can solve efficiently, as 
> was 
>     > motivated in the proposal.
>     > 
>     > > I thought Ben's suggestion to focus only on PSK and RPK modes 
> to start 
>     > > was fine, though this recent proposal seems to also support 
> certificates, '
>     > > albeit only by "reference." 
>     > 
>     > Please read the first line in the proposal again. The proposed 
> scope is 
>     > RPK + certificate by reference, not PSK + RPK + certificate by 
>     > reference. 
> 
>     This is *your* proposal, not Ben's. I'm referring to (and prefer) 
> Ben's suggestion, for the reasons stated in my email. 
> 
> [GS] I probably should not continue this argument, but just to clarify: 
> I'm talking about the "also" in your text above. And about the "e.g." 
> in Ben's proposal, see also the "Furthermore  ... " in my previous 
> response, below.
> 
>     > So, this is in fact good news for those who are concerned 
>     > about complications, since removing the PSK based authentication 
>     > protocol is a significant simplification of design, specification, 
>     > analysis, implementation and testing. 
> 
>     Are you suggesting that the holistic design and implementation of 
> an AKE that uses certificates is less complicated than use of PSKs?
> 
> [GS] I was thinking about the part which we need to specify in LAKE, 
> not the use of existing protocols for outside the AKE. We could compare 
> the case of passing a reference to a device certificate to that of 
> passing a reference to a device public key. What does the receiver have 
> to do in the different cases? Both certificate and public key needs to 
> be "validated" by the receiver. If the public key is pre-provisioned 
> and never revoked that is of course a simpler case, but also has 
> management and security implications. For the certificate reference it 
> could be a simple validation request similar to or simultaneously with 
> the certificate retrieval. Although the security considerations of the 
> AKE need to prescribe validation, the validation step can be outside 
> the AKE (assuming case 1 in my previous email). I don't know how to 
> measure the difference but I was thinking that part to be not so 
> complicated in comparison to a separate PSK based protocol. For the 
> case of passing revocation information in the AKE (case 2 in my 
> previous email) that is of course an additional effort, but there may 
> be some low hanging fruit in that context.

Surely if we're considering the cost of implementing the AKE, we ought to consider all its dependencies too, right? That is, if we support certificates, we should probably consider the cost in doing so, and that cost is a measure of the AKE and whatever else is needed to "validate" them. 
 
>     > But, again, I think we should 
>     > refrain from the "complication" argument and instead focus on 
> what we 
>     > need to solve (and to get started!). 
>     > 
>     > In contrast to removing certificates from the AKE, removing PSK 
> seems 
>     > not to notably impact the desirable scenarios where this can be 
>     > applied, since RPK by reference can perform as good as PSK. 
>     > Furthermore, I interpreted Ben's mentioning of PSK and RPK as 
> just an 
>     > example, based on the discussion we had at the latest LAKE 
> virtual 
>     > interim about the cases where a candidate protocol can perform 
>     > optimally. Not that this subset necessarily was the subset we 
> should 
>     > restrict to. 
>     > 
>     > > it assumes some type of PKI in which these certificates exist 
> and through 
>     > > which endpoints handle tasks such as revocation and 
> transparency. 
>     > > That may impose requirements on the AKE. TLS had to carve out 
>     > > extension support for CT and OCSP. Is that something we want to 
> take 
>     > > on when starting down the path towards an efficient AKE?
>     > 
>     > The efficiency of the AKE need not be restricted by allowing 
> validation 
>     > of certificates. This discussion really belongs to the design 
> phase but 
>     > starting it anyway, there are two cases:
> 
>     I think the important bit here is that the AKE (TLS) had to be 
> extended to support these emerging technologies after-the-fact. This 
> suggests the AKE should minimally be extensible if things such as 
> revocation are not in scope for an initial certificate-focused design.
> 
> [GS] Good suggestion. I think allowing some simple mechanism for 
> verifying validity should be in the initial scope, but having it as an 
> extension would be the backup plan.

That might work. I'd like to hear from others about what they think here.

Best,
Chris