Re: [pkix] [Technical Errata Reported] RFC5280 (6414)

Russ Housley <housley@vigilsec.com> Thu, 28 January 2021 16:18 UTC

Return-Path: <housley@vigilsec.com>
X-Original-To: pkix@ietfa.amsl.com
Delivered-To: pkix@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C92413A1610 for <pkix@ietfa.amsl.com>; Thu, 28 Jan 2021 08:18:43 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.896
X-Spam-Level:
X-Spam-Status: No, score=-1.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_NONE=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 Tx6-RMpEnfN9 for <pkix@ietfa.amsl.com>; Thu, 28 Jan 2021 08:18:41 -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 DFA7A3A160E for <pkix@ietf.org>; Thu, 28 Jan 2021 08:18:40 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by mail.smeinc.net (Postfix) with ESMTP id 7B56A300BDD for <pkix@ietf.org>; Thu, 28 Jan 2021 11:18:38 -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 nOInEnn8QLJH for <pkix@ietf.org>; Thu, 28 Jan 2021 11:18:30 -0500 (EST)
Received: from a860b60074bd.fios-router.home (pool-141-156-161-153.washdc.fios.verizon.net [141.156.161.153]) by mail.smeinc.net (Postfix) with ESMTPSA id E1F39300B08; Thu, 28 Jan 2021 11:18:29 -0500 (EST)
From: Russ Housley <housley@vigilsec.com>
Message-Id: <A077CE9B-35E3-4FF2-BA3A-213122D59843@vigilsec.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_267B4160-C856-4BC3-A2DD-9DA64C28FCD9"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.17\))
Date: Thu, 28 Jan 2021 11:18:31 -0500
In-Reply-To: <MW3PR17MB41222702CF6B9D8440B468D3AABA9@MW3PR17MB4122.namprd17.prod.outlook.com>
Cc: "Roman D. Danyliw" <rdd@cert.org>, Ben Kaduk <kaduk@mit.edu>, Stephen Kent <kent@bbn.com>, IETF PKIX <pkix@ietf.org>, Stefan Santesson <stefan@aaa-sec.com>, David Cooper <david.cooper@nist.gov>, "wpolk@nist.gov" <wpolk@nist.gov>, Stephen Farrell <stephen.farrell@cs.tcd.ie>
To: Rob Stradling <rob@sectigo.com>
References: <20210128154420.4B40EF40715@rfc-editor.org> <B9FCFEBF-78B0-4C82-9902-67D4E832C0C7@vigilsec.com> <MW3PR17MB41222702CF6B9D8440B468D3AABA9@MW3PR17MB4122.namprd17.prod.outlook.com>
X-Mailer: Apple Mail (2.3445.104.17)
Archived-At: <https://mailarchive.ietf.org/arch/msg/pkix/kxKspmt717cvRpRMeUq6a1IEQPY>
Subject: Re: [pkix] [Technical Errata Reported] RFC5280 (6414)
X-BeenThere: pkix@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: PKIX Working Group <pkix.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/pkix>, <mailto:pkix-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/pkix/>
List-Post: <mailto:pkix@ietf.org>
List-Help: <mailto:pkix-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pkix>, <mailto:pkix-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 28 Jan 2021 16:18:44 -0000

Rob:

In my example, neither the keyEncipherment nor the keyAgreement bit is set.

Russ

> On Jan 28, 2021, at 11:17 AM, Rob Stradling <rob@sectigo.com> wrote:
> 
> Hi Russ.
> 
> I'm afraid I don't understand your objection.  Your use case of setting only the digitalSignature bit is permitted both by the Original Text and by my Proposed Text.  (With my Proposed Text, you would choose the "or" option of the "and/or" instead of the "and" option).
> 
> The reason for the erratum is that neither digitalSignature+keyEncipherment nor digitalSignature+keyAgreement seem to be permitted by the Original Text.
> 
> From: Russ Housley <housley@vigilsec.com <mailto:housley@vigilsec.com>>
> Sent: 28 January 2021 16:07
> To: Rob Stradling <rob@sectigo.com <mailto:rob@sectigo.com>>
> Cc: Roman D. Danyliw <rdd@cert.org <mailto:rdd@cert.org>>; Ben Kaduk <kaduk@mit.edu <mailto:kaduk@mit.edu>>; Stephen Kent <kent@bbn.com <mailto:kent@bbn.com>>; IETF PKIX <pkix@ietf.org <mailto:pkix@ietf.org>>; Stefan Santesson <stefan@aaa-sec.com <mailto:stefan@aaa-sec.com>>; David Cooper <david.cooper@nist.gov <mailto:david.cooper@nist.gov>>; wpolk@nist.gov <mailto:wpolk@nist.gov><wpolk@nist.gov <mailto:wpolk@nist.gov>>; Stephen Farrell <stephen.farrell@cs.tcd.ie <mailto:stephen.farrell@cs.tcd.ie>>
> Subject: Re: [Technical Errata Reported] RFC5280 (6414)
>  
> CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
> 
> 
> Rob:
> 
> The proposed rewording of the comment is not correct.  Consider an ECDSA key that will be used with TLS 1.3.  In that case, only the digitalSignature key usage would be set.
> 
> I think the original OR is correct.
> 
> Russ
> 
> 
> > On Jan 28, 2021, at 10:44 AM, RFC Errata System <rfc-editor@rfc-editor.org <mailto:rfc-editor@rfc-editor.org>> wrote:
> >
> > The following errata report has been submitted for RFC5280,
> > "Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile".
> >
> > --------------------------------------
> > You may review the report below and at:
> > https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.rfc-editor.org%2Ferrata%2Feid6414&amp;data=04%7C01%7Crob%40sectigo.com%7Cdce250f148ea4d995db108d8c3a6ce56%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637474468512413977%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=8hy5qssHrRM%2BEOM2NX8rEJSJqGV%2FWhu7top4hdmsXgU%3D&amp;reserved=0 <https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.rfc-editor.org%2Ferrata%2Feid6414&amp;data=04%7C01%7Crob%40sectigo.com%7Cdce250f148ea4d995db108d8c3a6ce56%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637474468512413977%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=8hy5qssHrRM%2BEOM2NX8rEJSJqGV%2FWhu7top4hdmsXgU%3D&amp;reserved=0>
> >
> > --------------------------------------
> > Type: Technical
> > Reported by: Rob Stradling <rob@sectigo.com <mailto:rob@sectigo.com>>
> >
> > Section: 4.2.1.12
> >
> > Original Text
> > -------------
> >   id-kp-serverAuth             OBJECT IDENTIFIER ::= { id-kp 1 }
> >   -- TLS WWW server authentication
> >   -- Key usage bits that may be consistent: digitalSignature,
> >   -- keyEncipherment or keyAgreement
> >
> > Corrected Text
> > --------------
> >   id-kp-serverAuth             OBJECT IDENTIFIER ::= { id-kp 1 }
> >   -- TLS WWW server authentication
> >   -- Key usage bits that may be consistent: digitalSignature
> >   -- and/or (keyEncipherment or keyAgreement)
> >
> > Notes
> > -----
> > In https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fzmap%2Fzlint%2Fissues%2F553&amp;data=04%7C01%7Crob%40sectigo.com%7Cdce250f148ea4d995db108d8c3a6ce56%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637474468512413977%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=Kf06%2FZ9o9VIMBcNRiCOk2L%2FUNA7dlgCP6ywIYJZH37I%3D&amp;reserved=0 <https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fzmap%2Fzlint%2Fissues%2F553&amp;data=04%7C01%7Crob%40sectigo.com%7Cdce250f148ea4d995db108d8c3a6ce56%7C0e9c48946caa465d96604b6968b49fb7%7C0%7C0%7C637474468512413977%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=Kf06%2FZ9o9VIMBcNRiCOk2L%2FUNA7dlgCP6ywIYJZH37I%3D&amp;reserved=0> there's been some disagreement and confusion about how to correctly interpret the "or" in the Original Text.  "You can only set one of these three bits" is one interpretation, and it's hard to argue that this interpretation is inconsistent with the Original Text.
> >
> > However, digitalSignature+keyEncipherment makes sense for an RSA leaf certificate, and digitalSignature+keyAgreement makes sense for an ECC leaf certificate.  Both are widely used, to enable ephemeral and non-ephemeral TLS ciphersuites in conjunction with a single server certificate.
> >
> > Given that RFC5480 section 3 explicitly permits digitalSignature+keyAgreement in an ECC leaf certificate, I think it's likely that my proposed Corrected Text conveys the RFC5280 authors' intended meaning.
> >
> > Instructions:
> > -------------
> > This erratum is currently posted as "Reported". If necessary, please
> > use "Reply All" to discuss whether it should be verified or
> > rejected. When a decision is reached, the verifying party
> > can log in to change the status and edit the report, if necessary.
> >
> > --------------------------------------
> > RFC5280 (draft-ietf-pkix-rfc3280bis-11)
> > --------------------------------------
> > Title               : Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
> > Publication Date    : May 2008
> > Author(s)           : D. Cooper, S. Santesson, S. Farrell, S. Boeyen, R. Housley, W. Polk
> > Category            : PROPOSED STANDARD
> > Source              : Public-Key Infrastructure (X.509)
> > Area                : Security
> > Stream              : IETF
> > Verifying Party     : IESG