Subject: Re: [COSE] Review draft-ietf-cose-webauthn-algorithms-02.txt

From: Mike Jones <[email-masked]>
Date: Sat, 2 Nov 2019 03:03:22 +0000

-03 has been published, which addresses Jim's review comments on -02 in the manner described in the reply below.  Thanks again for your reviews, Jim.

                                                       -- Mike

From: Mike Jones
Sent: Tuesday, October 29, 2019 4:20 PM
To: Jim Schaad <[email-masked]>; [email-masked]
Subject: RE: [COSE] Review draft-ietf-cose-webauthn-algorithms-02.txt

Replies are inline, prefixed by "Mike>".

-----Original Message-----
From: COSE <[email-masked]<mailto:[email-masked]>> On Behalf Of Jim Schaad
Sent: Tuesday, October 29, 2019 12:39 PM
To: [email-masked]<mailto:[email-masked]>
Subject: [COSE] Review draft-ietf-cose-webauthn-algorithms-02.txt

1.  The document needs to have a short title added to it.

Mike> I've added this "abbrev" value in the current editor's draft "COSE & JOSE Registrations for WebAuthn Algs", which fits in the available space.

2. Abstract - The text "FIDO Alliance FIDO2 Client to Authenticator Protocol" needs to get cleaned up.  It is not clear to me if FIDO2 is supposed to be an abbreviation of the previous FIDO Alliance or not.  Flip the sentence to use from or insert specification earlier.

Mike> I've deleted "FIDO2" (which was being used as an adjective applying the spec name).

3.  Section 1 - I am not sure why you are using the term "related" rather than "the" in this section.  This seems to be different than the abstract in that feature.  Relate makes me think that it is something that is different but similar in this case.

Mike> I've deleted "related".

4.  While I guess it is reasonable to have the description of why things are not recommended in the security considerations, I myself would not really think of them as such.  However not having a pointer from section 2 to that information seems harsh as we are saying the are not recommended without have a pointer to the discussion.

Mike> I've added the pointers.

5.  I have problems with the following text: "Implementation of this algorithm is RECOMMENDED because of its widespread use in decentralized systems and those that chose it over the NIST curves."  Firstly, this is an incorrect use of the RFC 2119 language, this is not a protocol statement.

Mike> I've lowercased "recommended".

Secondly, this is not what the recommended column in table 2 means and thus is trying to overload that column with something that is not real.  Third, the fact that people chose this over the NIST curves is not necessarily a reason for the IETF to recommended its implementation.

Mike> Recall that the JOSE algorithms come with Implementation Requirements (see https://tools.ietf.org/html/rfc7518#section-7.1.1), whose values are one of Required, Recommended, Optional, Deprecated, or Prohibited.  It's in that sense that the word "Recommended" is being used - more than Optional but less than Required.  The COSE registry value that seems to most closely correspond with this is "Recommended: True".  (As I see it, it's unfortunate that COSE compressed these five values down to two, but I realize that that's water under the bridge, unless we want to reconsider this choice in the BIS COSE registry instructions.)

6.  I still want to see in the text the reasoning behind not just using the current ECDSA algorithm in COSE.

Mike> I provided the reasoning in my response to your previous review.  Having a curve-specific algorithm identifier lets implementations do what you asked about - ensuring that the curve associated with a key cannot be changed and the modified key still be used.

7.  Add text on checking point is on the curve to section 5.4

Mike> I assume you're talking about adding text like that in https://tools.ietf.org/html/draft-ietf-oauth-jwt-bcp-07#section-3.4.  I'll admit that I'm not enough of an expert on secp256k1 usage to know whether an on-curve check is what is called for or a different validation procedure.  A definitive reference would be highly appreciated.  In particular, I don't know whether the Galois y² = x³ + 7 finite field form used with secp256k1 is amenable to a check that the (x, y) pair are on the curve or whether a different check is needed.

Thanks again for your detailed reviews, Jim.  I'll plan to publish a new draft incorporating these issue resolutions before Monday's submission cutoff.

                                                                -- Mike

-----Original Message-----

From: COSE <[email-masked]<mailto:[email-masked]>> On Behalf Of [email-masked]<mailto:[email-masked]>

Sent: Thursday, October 24, 2019 2:35 PM

To: [email-masked]<mailto:[email-masked]>

Cc: [email-masked]<mailto:[email-masked]>

Subject: [COSE] I-D Action: draft-ietf-cose-webauthn-algorithms-02.txt

A New Internet-Draft is available from the on-line Internet-Drafts directories.

This draft is a work item of the CBOR Object Signing and Encryption WG of the IETF.

        Title           : COSE and JOSE Registrations for WebAuthn

Algorithms

        Author          : Michael B. Jones

                Filename        : draft-ietf-cose-webauthn-algorithms-02.txt

                Pages           : 13

                Date            : 2019-10-24

Abstract:

   The W3C Web Authentication (WebAuthn) specification and the FIDO

   Alliance FIDO2 Client to Authenticator Protocol (CTAP) specification

   use CBOR Object Signing and Encryption (COSE) algorithm identifiers.

   This specification registers the following algorithms in the IANA

   "COSE Algorithms" registry, which are used by WebAuthn and CTAP

   implementations: RSASSA-PKCS1-v1_5 using SHA-256, SHA-384, SHA-512,

   and SHA-1, and ECDSA using the secp256k1 curve and SHA-256.  It

   registers the secp256k1 elliptic curve in the IANA "COSE Elliptic

   Curves" registry.  Also, for use with JSON Object Signing and

   Encryption (JOSE), it registers the algorithm ECDSA using the

   secp256k1 curve and SHA-256 in the IANA "JSON Web Signature and

   Encryption Algorithms" registry and the secp256k1 elliptic curve in

   the IANA "JSON Web Key Elliptic Curve" registry.

The IETF datatracker status page for this draft is:

https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-ietf-cose-webauthn-algorithms%2F&amp;data=02%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=P5WknFu56wOZwH1i%2BRJMvqjHYjF9VD32CSrkWBg5bA8%3D&amp;reserved=0

There are also htmlized versions available at:

https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftools.ietf.org%2Fhtml%2Fdraft-ietf-cose-webauthn-algorithms-02&amp;data=02%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=ZutAl6JaemEvVdC5KZFeTthXl75YYP1ebBgrNWcSi1A%3D&amp;reserved=0

https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Fdraft-ietf-cose-webauthn-algorithms-02&amp;data=02%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=R%2FKt7qEM0q3v4%2FFvm0WSLoHPkQP8vHK5I4qXyFQXBIk%3D&amp;reserved=0

A diff from the previous version is available at:

https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Frfcdiff%3Furl2%3Ddraft-ietf-cose-webauthn-algorithms-02&amp;data=02%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=Zt9aIA57AKdF2PlPPtlm2E%2F6OjAvizDxU%2BoRrkpTwKI%3D&amp;reserved=0

Please note that it may take a couple of minutes from the time of submission until the htmlized version and diff are available at tools.ietf.org.

Internet-Drafts are also available by anonymous FTP at:

ftp://ftp.ietf.org/internet-drafts/

_______________________________________________

COSE mailing list

[email-masked]<mailto:[email-masked]>

https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Fmailman%2Flistinfo%2Fcose&amp;data=02%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=k6n9t50ylb2R8YbKl6x479T253Zw0iLSMbIex5nYmV0%3D&amp;reserved=0

_______________________________________________

COSE mailing list

[email-masked]<mailto:[email-masked]>

https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Fmailman%2Flistinfo%2Fcose&amp;data=02%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=k6n9t50ylb2R8YbKl6x479T253Zw0iLSMbIex5nYmV0%3D&amp;reserved=0

---

From: Jim Schaad <[email-masked]>
Date: Fri, 1 Nov 2019 20:14:16 -0700

From: Mike Jones <[email-masked]> 
Sent: Tuesday, October 29, 2019 4:20 PM
To: Jim Schaad <[email-masked]>; [email-masked]
Subject: RE: [COSE] Review draft-ietf-cose-webauthn-algorithms-02.txt

Replies are inline, prefixed by “Mike>”.

-----Original Message-----
From: COSE <[email-masked] <mailto:[email-masked]> > On Behalf
Of Jim Schaad
Sent: Tuesday, October 29, 2019 12:39 PM
To: [email-masked] <mailto:[email-masked]> 
Subject: [COSE] Review draft-ietf-cose-webauthn-algorithms-02.txt

5.  I have problems with the following text: "Implementation of this
algorithm is RECOMMENDED because of its widespread use in decentralized
systems and those that chose it over the NIST curves."  Firstly, this is an
incorrect use of the RFC 2119 language, this is not a protocol statement.

Mike> I’ve lowercased “recommended”.

Secondly, this is not what the recommended column in table 2 means and thus
is trying to overload that column with something that is not real.  Third,
the fact that people chose this over the NIST curves is not necessarily a
reason for the IETF to recommended its implementation.

Mike> Recall that the JOSE algorithms come with Implementation Requirements
(see https://tools.ietf.org/html/rfc7518#section-7.1.1), whose values are
one of Required, Recommended, Optional, Deprecated, or Prohibited.  It’s in
that sense that the word “Recommended” is being used – more than Optional
but less than Required.  The COSE registry value that seems to most closely
correspond with this is “Recommended: True”.  (As I see it, it’s unfortunate
that COSE compressed these five values down to two, but I realize that
that’s water under the bridge, unless we want to reconsider this choice in
the BIS COSE registry instructions.)

[JLS] What COSE does is aligned with what the TLS working group does with
this.  We do not specify implementation requirements which is what JOSE did.

6.  I still want to see in the text the reasoning behind not just using the
current ECDSA algorithm in COSE.  

Mike> I provided the reasoning in my response to your previous review.
Having a curve-specific algorithm identifier lets implementations do what
you asked about – ensuring that the curve associated with a key cannot be
changed and the modified key still be used.

[JLS] I want to see this in the text itself.  Given that this is not the
same way that one would expect it to be done in COSE from history that needs
to be placed in the document.  I would completely disagree with your second
statement. 

Mike> I assume you’re talking about adding text like that in
https://tools.ietf.org/html/draft-ietf-oauth-jwt-bcp-07#section-3.4.  I’ll
admit that I’m not enough of an expert on secp256k1 usage to know whether an
on-curve check is what is called for or a different validation procedure.  A
definitive reference would be highly appreciated.  In particular, I don’t
know whether the Galois y² = x³ + 7 finite field form used with secp256k1 is
amenable to a check that the (x, y) pair are on the curve or whether a
different check is needed.

[JLS] section 3.2.2 of  SEC 1.

Thanks again for your detailed reviews, Jim.  I’ll plan to publish a new
draft incorporating these issue resolutions before Monday’s submission
cutoff.

                                                                -- Mike 

-----Original Message-----

From: COSE < <mailto:[email-masked]> [email-masked]> On Behalf
Of  <mailto:[email-masked]> [email-masked]

To:  <mailto:[email-masked]> [email-masked]

Cc:  <mailto:[email-masked]> [email-masked]

 

A New Internet-Draft is available from the on-line Internet-Drafts
directories.

This draft is a work item of the CBOR Object Signing and Encryption WG of
the IETF.

Algorithms

                Pages           : 13

                Date            : 2019-10-24

Abstract:

 

<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatrack
er.ietf.org%2Fdoc%2Fdraft-ietf-cose-webauthn-algorithms%2F&amp;data=02%7C01%
7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988b
f86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=P5WknFu56wO
ZwH1i%2BRJMvqjHYjF9VD32CSrkWBg5bA8%3D&amp;reserved=0>
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracke
r.ietf.org%2Fdoc%2Fdraft-ietf-cose-webauthn-algorithms%2F&amp;data=02%7C01%7
CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf
86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=P5WknFu56wOZ
wH1i%2BRJMvqjHYjF9VD32CSrkWBg5bA8%3D&amp;reserved=0

<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftools.iet
f.org%2Fhtml%2Fdraft-ietf-cose-webauthn-algorithms-02&amp;data=02%7C01%7CMic
hael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f1
41af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=ZutAl6JaemEvVdC5
KZFeTthXl75YYP1ebBgrNWcSi1A%3D&amp;reserved=0>
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftools.ietf
.org%2Fhtml%2Fdraft-ietf-cose-webauthn-algorithms-02&amp;data=02%7C01%7CMich
ael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f14
1af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=ZutAl6JaemEvVdC5K
ZFeTthXl75YYP1ebBgrNWcSi1A%3D&amp;reserved=0

<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatrack
er.ietf.org%2Fdoc%2Fhtml%2Fdraft-ietf-cose-webauthn-algorithms-02&amp;data=0
2%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C
72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=R%2F
Kt7qEM0q3v4%2FFvm0WSLoHPkQP8vHK5I4qXyFQXBIk%3D&amp;reserved=0>
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracke
r.ietf.org%2Fdoc%2Fhtml%2Fdraft-ietf-cose-webauthn-algorithms-02&amp;data=02
%7C01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C7
2f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=R%2FK
t7qEM0q3v4%2FFvm0WSLoHPkQP8vHK5I4qXyFQXBIk%3D&amp;reserved=0

<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.
org%2Frfcdiff%3Furl2%3Ddraft-ietf-cose-webauthn-algorithms-02&amp;data=02%7C
01%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f9
88bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=Zt9aIA57
AKdF2PlPPtlm2E%2F6OjAvizDxU%2BoRrkpTwKI%3D&amp;reserved=0>
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.o
rg%2Frfcdiff%3Furl2%3Ddraft-ietf-cose-webauthn-algorithms-02&amp;data=02%7C0
1%7CMichael.Jones%40microsoft.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f98
8bf86f141af91ab2d7cd011db47%7C1%7C0%7C637079747916555344&amp;sdata=Zt9aIA57A
KdF2PlPPtlm2E%2F6OjAvizDxU%2BoRrkpTwKI%3D&amp;reserved=0

Please note that it may take a couple of minutes from the time of submission
until the htmlized version and diff are available at tools.ietf.org.

 <ftp://ftp.ietf.org/internet-drafts/> ftp://ftp.ietf.org/internet-drafts/

COSE mailing list

 <mailto:[email-masked]> [email-masked]

<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.
org%2Fmailman%2Flistinfo%2Fcose&amp;data=02%7C01%7CMichael.Jones%40microsoft
.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7
C1%7C0%7C637079747916555344&amp;sdata=k6n9t50ylb2R8YbKl6x479T253Zw0iLSMbIex5
nYmV0%3D&amp;reserved=0>
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.o
rg%2Fmailman%2Flistinfo%2Fcose&amp;data=02%7C01%7CMichael.Jones%40microsoft.
com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C
1%7C0%7C637079747916555344&amp;sdata=k6n9t50ylb2R8YbKl6x479T253Zw0iLSMbIex5n
YmV0%3D&amp;reserved=0

COSE mailing list

 <mailto:[email-masked]> [email-masked]

<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.
org%2Fmailman%2Flistinfo%2Fcose&amp;data=02%7C01%7CMichael.Jones%40microsoft
.com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7
C1%7C0%7C637079747916555344&amp;sdata=k6n9t50ylb2R8YbKl6x479T253Zw0iLSMbIex5
nYmV0%3D&amp;reserved=0>
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.o
rg%2Fmailman%2Flistinfo%2Fcose&amp;data=02%7C01%7CMichael.Jones%40microsoft.
com%7Ce279955f279c4ac5a9a908d75ca7c308%7C72f988bf86f141af91ab2d7cd011db47%7C
1%7C0%7C637079747916555344&amp;sdata=k6n9t50ylb2R8YbKl6x479T253Zw0iLSMbIex5n
YmV0%3D&amp;reserved=0