Re: [Gen-art] draft-ietf-lamps-5480-ku-clarifications-01

Russ Housley <housley@vigilsec.com> Thu, 05 March 2020 20:29 UTC

Return-Path: <housley@vigilsec.com>
X-Original-To: gen-art@ietfa.amsl.com
Delivered-To: gen-art@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A56BD3A0B4C for <gen-art@ietfa.amsl.com>; Thu, 5 Mar 2020 12:29:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=unavailable 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 m3TTyUFQJB0y for <gen-art@ietfa.amsl.com>; Thu, 5 Mar 2020 12:29:52 -0800 (PST)
Received: from mail.smeinc.net (mail.smeinc.net [209.135.209.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 956AC3A0B4E for <gen-art@ietf.org>; Thu, 5 Mar 2020 12:29:52 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by mail.smeinc.net (Postfix) with ESMTP id 0B9F5300B4B for <gen-art@ietf.org>; Thu, 5 Mar 2020 15:29:50 -0500 (EST)
X-Virus-Scanned: amavisd-new at mail.smeinc.net
Received: from mail.smeinc.net ([127.0.0.1]) by localhost (mail.smeinc.net [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id KkarZAdGvmYS for <gen-art@ietf.org>; Thu, 5 Mar 2020 15:29:46 -0500 (EST)
Received: from [192.168.1.159] (pool-72-66-113-56.washdc.fios.verizon.net [72.66.113.56]) by mail.smeinc.net (Postfix) with ESMTPSA id 3B967300AEF; Thu, 5 Mar 2020 15:29:46 -0500 (EST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\))
From: Russ Housley <housley@vigilsec.com>
In-Reply-To: <20200305183532.GU98042@kduck.mit.edu>
Date: Thu, 05 Mar 2020 15:29:47 -0500
Cc: Sean Turner <sean@sn3rd.com>, "Dale R. Worley" <worley@ariadne.com>, draft-ietf-lamps-5480-ku-clarifications.all@ietf.org, last-call@ietf.org, IETF Gen-ART <gen-art@ietf.org>, LAMPS WG <spasm@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <85D6F268-E675-4573-A7BD-275975DF441E@vigilsec.com>
References: <878skjcso5.fsf@hobgoblin.ariadne.com> <54001CEE-1D17-46CB-9314-D9AF45452D63@cooperw.in> <6426AD1D-5D15-4BAC-814C-0F7626AA804A@sn3rd.com> <20200305183532.GU98042@kduck.mit.edu>
To: Ben Kaduk <kaduk@MIT.EDU>
X-Mailer: Apple Mail (2.3445.104.11)
Archived-At: <https://mailarchive.ietf.org/arch/msg/gen-art/iMak4snztBAms_1rR82XEHTdv_U>
Subject: Re: [Gen-art] draft-ietf-lamps-5480-ku-clarifications-01
X-BeenThere: gen-art@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "GEN-ART: General Area Review Team" <gen-art.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/gen-art>, <mailto:gen-art-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/gen-art/>
List-Post: <mailto:gen-art@ietf.org>
List-Help: <mailto:gen-art-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/gen-art>, <mailto:gen-art-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 05 Mar 2020 20:29:56 -0000


> On Mar 5, 2020, at 1:35 PM, Benjamin Kaduk <kaduk@MIT.EDU> wrote:
> 
> On Wed, Mar 04, 2020 at 12:23:43PM -0500, Sean Turner wrote:
>> 
>> 
>>> On Mar 3, 2020, at 16:09, Alissa Cooper <alissa@cooperw.in> wrote:
>>> 
>>> Dale, thanks for your reviews. Sean, thanks for your responses. I entered a No Objection ballot. If Dale’s questions can be clarified for non-expert readers, I think that would be good.
>>> 
>>> Alissa
>>> 
>>> 
>>>> On Mar 1, 2020, at 11:00 PM, Dale R. Worley <worley@ariadne.com> wrote:
>>>> 
>>>> Looking at draft-ietf-lamps-5480-ku-clarifications-01, these points
>>>> occur to me:
>>>> 
>>>> 1.  Introduction
>>>> 
>>>> This document corrects this omission, by updating Section 3 of
>>>> [RFC5480] to make it clear that neither keyEncipherment nor the
>>>> dataEncipherment key usage bits are set for key agreement algorithms.
>>>> 
>>>> I think it would be more accurate to say something like "neither ... are
>>>> set in certificates that specify key agreement algorithms" -- usage bits
>>>> are logically a component of a certificate rather than a feature of an
>>>> algorithm.
>>>> 
>>>> But it's unclear to me whether id-ecPublicKey is only used in key
>>>> agreement certificates.  RFC 5480 states that if the cert uses id-ecDH
>>>> or id-ecMQV and provides keyUsage, then keyAgreement must be set.  So
>>>> it's clear that certs with id-ecDH or id-ecMQV are key agreement certs.
>>>> But RFC 5480 says that if the cert lists id-ecPublicKey, then
>>>> keyAgreement is optional.  That suggests to me that some certs can use
>>>> id-ecPublicKey without being key agreement certs.  In turn, section 1 of
>>>> this I-D suggests the I-D is not intended to apply to those certs, but
>>>> section 3 seems to apply to them anyway.
>>>> 
>>>> To try to distill it to one sentence:  Can id-ecPublicKey appear in
>>>> certs that are not for key agreement, and if so, are keyEncipherment and
>>>> dataEncipherment allowed in the keyUsage of those certs?
>>>> 
>>>> 3.  Updates to Section 3
>>>> 
>>>> If the keyUsage extension is present in a certificate that indicates
>>>> in SubjectPublicKeyInfo, then following values MUST NOT be present:
>>>> ---^
>>>> 
>>>> Is "id-ecPublicKey" missing here?
>> 
>> Yes - The OPSDIR review noted my took quick to submit.  It’s fixed in this version:
>> 
>> https://datatracker.ietf.org/doc/draft-ietf-lamps-5480-ku-clarifications/
>> 
>>>> If the keyUsage extension is present in a certificate that indicates
>>>> id-ecDH or id-ecMQV in SubjectPublicKeyInfo, then the following
>>>> values also MUST NOT be present:
>>>> 
>>>> Is it a fact that all certificates with these three algorithms are
>>>> certificates for key agreement?  If so, it would be nice to state that
>>>> either in section 3 or section 1, to show how section 3 is connected
>>>> with "for key agreement algorithms" in section 1.  Otherwise, the
>>>> connection between the two requires information that is stated
>>>> elsewhere.
>> 
>> To address this, I ended up making the following tweaks in s1:
>> 
>> This document corrects this omission, by updating Section 3 of
>> [RFC5480] to make it clear that neither keyEncipherment nor the
>> dataEncipherment key usage bits are set for key agreement algorithms
>> defined therein.  The additions are to be made to the end of
>> Section 3.
>> 
>> So, there’s a link from 5480 s3 where the three algorithms are defined to this document’s s3.
> 
> I don't think that link fully closes the question of whether id-ecPublicKey
> is defined to be a"key agreement algorithm" or not.

That identifier is used for key agreement and signature.  The key usage extension can restrict it to one or the other if desired.  The point of this update is that it is not ever a key encipherment or data encipherment algorithm.

Russ