
From nobody Sun Oct  2 22:36:51 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8271612B140; Sun,  2 Oct 2016 22:36:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 6TQqjR0czcdM; Sun,  2 Oct 2016 22:36:46 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1390C12B13D; Sun,  2 Oct 2016 22:36:45 -0700 (PDT)
Received: from hebrews (24.21.96.37) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Sun, 2 Oct 2016 22:50:03 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>, 'The IESG' <iesg@ietf.org>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com>
In-Reply-To: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com>
Date: Sun, 2 Oct 2016 22:36:37 -0700
Message-ID: <076601d21d38$1e5162f0$5af428d0$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Content-Language: en-us
Thread-Index: AQM0sPyC3CV9N63JinowM6PtUp5t4J3KCnog
X-Originating-IP: [24.21.96.37]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/gccal7frEkbmX4PhVS8Hc8JhX98>
Cc: cose-chairs@ietf.org, goran.selander@ericsson.com, cose@ietf.org, draft-ietf-cose-msg@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Oct 2016 05:36:49 -0000

Stephen,

Answers and questions interspersed below along with some - yes I need to =
do that.  I should be able to get to those in the first half of this =
week.  Am building a github branch for responses if you want to look at =
things as we go along.

Jim


> -----Original Message-----
> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie]
> Sent: Wednesday, September 28, 2016 5:39 AM
> To: The IESG <iesg@ietf.org>
> Cc: draft-ietf-cose-msg@ietf.org; Goeran Selander
> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
> goran.selander@ericsson.com; cose@ietf.org
> Subject: Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with =
DISCUSS and
> COMMENT)
>=20
> Stephen Farrell has entered the following ballot position for
> draft-ietf-cose-msg-19: Discuss
>=20
> When responding, please keep the subject line intact and reply to all =
email
> addresses included in the To and CC lines. (Feel free to cut this =
introductory
> paragraph, however.)
>=20
>=20
> Please refer to =
https://www.ietf.org/iesg/statement/discuss-criteria.html
> for more information about IESG DISCUSS and COMMENT positions.
>=20
>=20
> The document, along with other ballot positions, can be found here:
> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>=20
>=20
>=20
> ----------------------------------------------------------------------
> DISCUSS:
> ----------------------------------------------------------------------
>=20
>=20
> I think this is a fine design and well documented, (though
> long) and I'm sure we'll clear up the points below quickly enough. =
Some of them
> may need some discussion but others are mostly checking.
>=20
> (1) general: I think the inclusion of CDDL is an error here and we'd =
be better off
> having someone (if interested) generate the CDDL schema stuff later on =
when/if
> CDDL is standardised/stabilised. Including it now creates the =
potential for
> breakage unnecessarily IMO. However, the WG did explicitly discuss =
iirc, so this
> is just a personal comment that I'm also in the rough on inclusion of =
CDDL in this
> spec.
> (As an example, for someone not familiar with CDDL, the inclusion of =
fragments
> interspersed in the text is distracting and potentially puzzling when =
one gets to
> the end of section 3.) However, I do think there are places where the =
CDDL is
> effectively normative despite what is said in the introduction, the =
ones I've
> spotted are below. (Happy to chat about 'em as I may be mistaken.) I =
also
> wondered if one could really implement this if all the CDDL was =
removed from
> the text, which is what I think would be required if CDDL were really =
to be
> informative. Anyway the places I think some more text may be needed =
are:


I build a version of the document with no CDDL, I have added some =
pointers to the use of "/" and "[+ FOO]" to the CDDL preview section at =
the top of the document.  I have also identified the structures =
Sig_structure and Enc_structure like I did the Mac_structure in the =
text.  (Also found a COSE_Encrypt that should have been a =
COSE_Encrypt0.)

>=20
> (1.1) table 2: As-is the value type column seems to me to make CDDL =
normative.
> I don't see the natural language version that you said would be =
normative.
>=20
> (1.2) 4.4, 2nd list point 1: the use of Sig_structure makes the CDDL =
normative.
> (Same with the use in 4.5 and Enc_structure in 5.3.)
>=20
> (1.3) 7.1, the key_ops value is only specified in CDDL, in Table 3. =
(It is well-
> defined below the table in text though, so this one's borderline.)

The description for key_ops points to Table 3, so I think it is fully =
supplied.

>=20
> (1.4) 11.2: it's not clear to me that a reader knows how to handle =
decoding of
> the two optional fields at the end (other and SuppPrivInfo) without =
looking at
> the CDDL. Can you explain? (That might be just my ignorance of CBOR, =
but
> wanted to check.)

I am not sure that I would know how to do it even with CDDL, however in =
this case that is a moot question as this structure is only encoded and =
never transmitted or decoded.

Will also note, that you have better eyes than me as I do not see two =
optional fields at the end.  I see one optional field at the end of two =
different arrays, so that would be a CBOR ignorance I think.

>=20
> (2) 3.1, alg: so you're disallowing a setup where the kid alone =
identifies the key
> and algorithm to the recipient?
> That is used in some IETF protocols (OSPF iirc) so rhat's a pity, and =
will in those
> (maybe less common) cases consume a few bytes that could otherwise be
> saved.  I think, but am not sure, that the WG already discussed this, =
but if not,
> maybe worth a thought? (Or even a 2nd thought:-) And appendix A.1 is =
really
> puzzling - as it provides instructions for how to not follow a MUST in =
the body of
> the document.

I have come around to the feeling that the algorithm needs to be part of =
the value that is being authenticated as part of all of the messages.  =
This being the case, the only what that it can be enforced is to make =
the algorithm be a part of the protected attributes.   In my mind the =
cost of the 2 bytes for this purpose seems to be sufficiently small that =
including it does not seem to be a large burden. =20

There were several people in the IoT world who felt as you that one =
could have an implicit algorithm and they did not want to spend the two =
bytes for the purpose of including it in the AEAD.  This being the case, =
I did provide the appendix to tell how to do this.  I expect that people =
are going to do this and not following the guidance that was provided =
about making sure that the algorithm is authenticated. =20

>=20
> (3) 7.1: key_op 8, "derive bits" - I don't think this usage is clear =
enough, can you
> say what's meant here?

Derive bits was added to the JOSE documents in response to the W3C =
WebCrypto work where they wanted to be able to control that something =
could derive bits but not derive a key.  These were initially not =
present in this document but was added by request so that it would match =
what the JWK document had.  The description in JWK is "derive bits not =
to be used as a key".  Does that read better?  If so I can change this.

>=20
> (4) Why not make deterministic ECDSA a MUST?  8.1.1 says:
> "Applications that specify ECDSA should evaluate the ability to get =
good random
> number generation and require deterministic signatures where poor =
random
> number generation exists."  I don't think that is sufficiently clear, =
nor realistic,
> and I don't recall this being discussed on the list (sorry if I'm =
forgetting) and bad
> random values are a killer flaw here that has happened in the wild.

It is not clear to me that many, if any, current packages support the =
concept of doing deterministic ECDSA.  If this case it seems to be odd =
that we would require it.   I can do some research to figure this out.

>=20
> (5) Table 6, is this 25519 or 448? Where does it say?  Sorry if I'm =
being dumb
> here, but I don't see where you say which curve is specified, the =
definition of
> 'crv' says defined for this alg which I assume means listed in Table =
6.

The value of 'crv' is defined in table 22.  The same algorithm is used =
to identify all of the curves.

>=20
> (6) section 10: why MUST the kty values be present always?
> That seems unnecessary in some contexts and I don't get a security =
reason why
> it's needed e.g. if there's an alg id somewhere - can you explain? I =
can see folks
> omitting this leading to interop problems for not useful reasons. =
(Same
> comment applies in other cases where kty is a MUST, e.g.
> 12.1.2, 12.2.1.)

This follows what JOSE did in in RFC 7517 (JWK).  I might, or might not, =
agree with you that specifying an algorithm would be sufficient.  =
Consider one of the ECDH-ES variants.  It is defined to work with keys =
of the key type 'EC2' as well as 'OKP'.  These two key types have =
different sets of required parameters but some of them overlap.  =
Specifically, 'x' is in both but 'y' is only in one of them.  In this =
case the additional parameter of 'crv' could also be used to distinguish =
them but a generic piece of code looking only at the algorithm would not =
have enough detail.

>=20
> (7) section 11: given that we know people will use human memorable =
secrets,
> why have you not defined codepoints for
> PBES2 (or the more commonly supported?) PBDKF2?  I'm fine if there's a =
reason,
> or even if it was discussed by the WG, but just wanted to check as I'd =
worry that
> folks will use the ones defined here with human memorable secrets no =
matter
> what the spec says so giving 'em something more tailored might be =
better.
> (OTOH, one could argue that making this apparent might be worse too I =
guess.)

This was part of the secondary algorithm draft which the WG decided not =
to do as part of the 'we are not going to do RSA at this time'.  I =
expect that I will write an individual draft to cover these.  It was =
also not clear to me that small devices were going to be using this type =
of secret to start with in any event.

>=20
> (8) 12.4: Why is no ephemeral-ephemeral (E-E) variant supported? Some
> protocols will allow for that and it seems wrong to disallow it when =
it could
> relatively easily be supported. For some applications where content is =
dealt with
> in store-and-forward mode, there may be situations (e.g.
> provisioning, "introduction") where E-E could be used.
> As-is, applications wanting that will have to hack the recipient =
DH-public into a
> home-grown structure (or use one of the COSE_Key labels from Table 19) =
and
> then treat that as ES-DH. That seems likely to lead to non-interop or =
security
> errors being made. I'd be fine if you even said how to re-use the =
structures
> currently defined for E-E btw and didn't introduce new structures.

See https://datatracker.ietf.org/doc/draft-selander-ace-cose-ecdhe/ for =
how this is being addressed.

>=20
> (9) 16.4: I'm not sure expert review is right here.  What if the =
expert is asked to
> add SM2/SM4 while there is still no widely available non-Chinese text =
to describe
> those?  I think the expert ought enforce a "specification required" =
rule at least
> and maybe more.  (And ought never allow an algorithm with no =
specification
> publicly available.)

This view was advanced by several people in the WG as well.  My worry =
about this position is that it might encourage point squatting.  I =
cannot respond for other experts, but I would ask for a usable =
description of the algorithm.  If I was not familiar I would also =
request either additional review from CFRG and/or conference papers on =
the algorithm.  If it was not a publicly available specification, I =
would then assign a "non-optimal" point.  My expectation is that there =
are going to be more small networks of IoT devices than there are for =
TLS systems.  This means that it is more likely that localized =
algorithms may be desired. =20

I am not against raising the level to specification required, but would =
worry about point squatting.

If this is not "expert review" what do you believe would be a better =
requirement?  I do not believe this should be dumped on either the IESG =
or CFRG.=20

>=20
> (10) 16.4 (and elsewhere maybe) I think this registry is missing a =
column - as is
> being done in the TLS WG, I think there should be a column saying if =
the IETF is
> happy enough with an algorithm and that getting a "Y" in that ought =
require
> standards action. (Or some similar scheme.) I don't think the =
standards-track
> range of codepoints is enough here, e.g. at some time we will want to
> deprecate things, and at other times we may want to define things for =
the future
> on the standards-track but not (yet) recommend their use.  The last =
bullet in
> 16.11 does help here, but I'd argue that we need to do more to protect =
the
> expert (and implementers) from the trickle of vanity/national =
algorithms/curves
> that are always being proposed.

I would not object to doing this.  While I don't know if the TLS =
experiment on this is going to work, I don't have any problems with =
participating in the same experiment here as well.

I am not sure what we should say for deprecation of algorithms here =
should be, they are going to live for a long time and new systems will =
probably ship with the same algorithms as long as they need to =
interoperate.  Consider the lighting use case that is being fought over =
in ACE right now.  You cannot put a new light bulb in that uses a =
different algorithm unless you are willing to start broadcasting two =
messages.  This is probably going to lead to very slow deprecation over =
time.


>=20
>=20
> ----------------------------------------------------------------------
> COMMENT:
> ----------------------------------------------------------------------
>=20
>=20
>=20
> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs =
re-phrasing.

Which is unclear, the problem or the action?

>=20
> - 1.5: I'd add a reference to RFC5116.

Reasonable and done.

>=20
> - 3.1, crit: The statement that security libraries or application code =
can handle
> this is odd - isn't that an API requirement? (I'm not objecting, but =
it's odd.)

I agree that this is an API requirement.

>=20
> - 3.1, "content type" is the space there intended?  If so, maybe add =
quotes or a
> comma or something to disambiguate the name and descriptive text? Same =
for
> other multi-word names here.

Given that this is the second person suggesting this (also in Gen-Art =
review). I am going to add a colon to deal with this.

>=20
> - 3.1, "all the keys may need to be checked" - really?  Or do you mean =
all the
> keys associated with this kid?

I thought that this said keys associated with the kid.  Did you not read =
it this way?  If not then I will look at re-phrasing.

>=20
> - 3.1, IV/Partial IV - I think it's an error to define this here. What =
if some
> algorithm can't use that kind of (0|partial)^IV but needs something =
else instead?
> Shouldn't all mechanism for handling IVs be defined by the =
algorithm/mode?
> (This isn't a discuss because I can't think of a good counter example =
and there'd
> be other ways around the problem too probably.)

I was originally going to make IV an algorithm specific parameter rather =
than a common parameter.  It was just so common that it seemed to be =
better to only define it once.  Any algorithm that needed different =
behavior could easily define an algorithm specific parameter for IV work =
instead.  So as you say an easy work around exists if needed.

>=20
> - 4.1: signingTime is often needed with signatures. Isn't that common =
enough to
> want to define a way to do it, as an option?

There was a signingTime parameter in the original document.  The WG =
decided that it was not going to be needed enough at this point in time =
to have it defined now.  Additionally, there were some arguments over =
the format of the time field as some systems support a real clock and =
some only support a relative clock to when they were last started up.

>=20
> - 4.1: If I sign with a private key corresponding to a 2047 or 2049 =
bit RSA public
> key modulus, then is it clear what to put where in the signature bstr? =
(Yes, that'd
> be dumb, but I wonder is what to do well enough defined, as I don't =
think you
> can rule it out in all cases.) Since you don't include RSA here I =
guess it's ok to skip
> this, but maybe you need to say that such issues need to be handled in =
the
> definition of signature algs.

I would say that this is not real, but I looked carefully at this when =
doing the EdDSA algorithms.  I will look at this and see if I cannot =
find some way to state this either generally or specifically.

>=20
> - 4.3: "cannot bleed" isn't clear enough maybe, give an example =
perhaps where
> the decoder can fail to disambiguate a boundary?

I'll look at this and see if I cannot come up with better language.  =
However, there are no decode issues here.

>=20
> 4.4, last para: I disagree that one must (even lowercase
> must) check the signing identity.  That's application behaviour and =
should be
> stated here in such concrete terms.
> At least s/must also/may also want to/

What if it is s/one must also/the application must also/

>=20
> (Note - the above were comments on -18, but also seem to work based on =
-19.
> Subsequent comments are on -19.)
>=20
> - 7.1: "starting at the same base IV" - are you missing "and =
incrementing" or
> something? Otherwise I think this seems unclear.

The "and incrementing" to me was implied in the first paragraph with the =
fact that this is intended to be used with the "partial IV" parameter.  =
I'll see if I can make this cleaner.

>=20
> - 8.2.1: is the phrasing of the 1st para right? would it be better to =
say that the
> value of a key for EdDSA MUST NOT be used for ECDH and vice-versa. (Or =
maybe
> points instead of
> keys?)

Yeah, reads messy - let me think about it.

>=20
> - 8.2.1: you need a reference for batch signing. (Or could it be =
omitted?)

I kept asking for one in the EdDSA document and never got one there, so =
I don't have one to push in here.

>=20
> - section 9: I think it'd be good to be clearer about the strength of =
truncated
> MAC values. (And I can't recall the right thing to say off the top of =
my head:-)

When I was doing research about this, I could not find any solid results =
on truncated MAC values that people seemed to agree on. Most people seem =
to look at this as just a birthday attack so I would need to do more =
searching to find something useful.

>=20
> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be =
better to refer to
> the draft as that should be published soon. (Same for RFC3447 btw.)

Will do.

>=20
>    [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
>=20
> - 12.4: Why "OKP"? And saying there's no "simple way" to do point =
validation
> seems fairly opaque, a reference there or explanatory text would be =
good. (Ah,
> it's in section 13, maybe shuffle the text or include a pointer.) =
Octet key pair
> doesn't seem like that good a name to me btw.

I copied "OKP" from draft-ietf-jose-cfrg-curves.  Since it has already =
gone through there I am reluctant to be different.

I will re-look at the order and make sure that there is something lying =
around for the acronym expansion.

>=20
> - 12.5: The 1st para seems wrong. (Or at least is unclear to
> me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway, does it =
mean
> double encryption or two parallel ciphertexts?
> (I assume the former.) What's the algebraic thing you're trying to =
explain?  It'd
> be good to provide that for such relatively complex operations I =
think. Is this
> what you mean?
>=20
> 		KW(KDF(DH-shared),CEK)

Yes that is the formula and yes it makes sense to document it in that =
manner.

>=20
> - Table 22: The EC2 or OKP value is fixed per curve and the =
cryptographic
> function being performed so seems unnecessary.
> Do you really need it so? Why? (I'm not buying that some future form =
of ECC
> might mean this is needed btw - and codepoints aren't expensive here, =
right? So
> other forms of ECC can burn codepoints when that's needed and in the
> meantime we'd save bytes and complexity.)

I am lost and don't understand what you are saying here.

* For EC2 key types the curve is fixed, but the cryptographic function =
is not fixed.
* For OKP key types, the curve/cryptographic function pair is fixed.

This is analogous to what is happing for the PKIX world.

Are you suggesting that something change?  If so what?  (Just so I can =
evaluate it.)

>=20
> - Section 15: Do we have any examples of such a profile?  I think it'd =
be great if
> we did and could add an informative reference here (even if that's to =
an early I-
> D).

Will add a reference to draft-selander-ace-object-security.  (Which is =
being discussed in core not ace).

>=20
> - section 19: I don't get how ECDSA is normative and the cfrg curves =
are not.
> Same for RFC6979. Maybe these all could do with checking? (No big deal =
IMO
> but maybe worth it.)

Yes, the cfrg curves should be normative and yes I will go back over the =
list.

>=20
> - Appendices A.1 (as already noted) and A.2 are a puzzle.
> Why say in the body of the document to do <foo> and then an appendix =
that
> says how to do <not-foo>?

Answer above.


Jim


>=20
> - Appendix C and the implementation status section: Many thanks - =
great to see
> that! (I didn't check 'em though:-)
>=20
> - Thanks also for speedily handling the extensive secdir review.
>=20
>    [2] =
https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html
>=20



From nobody Mon Oct  3 01:04:57 2016
Return-Path: <cabo@tzi.org>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C089812B14C; Mon,  3 Oct 2016 01:04:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level: 
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] 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 Mp0SGPoCpi_j; Mon,  3 Oct 2016 01:04:47 -0700 (PDT)
Received: from mailhost.informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2978912B143; Mon,  3 Oct 2016 01:04:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from submithost.informatik.uni-bremen.de (submithost.informatik.uni-bremen.de [134.102.201.11]) by mailhost.informatik.uni-bremen.de (8.14.5/8.14.5) with ESMTP id u9384ZaZ006149; Mon, 3 Oct 2016 10:04:36 +0200 (CEST)
Received: from nar-4.local (p5DC7E34C.dip0.t-ipconnect.de [93.199.227.76]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by submithost.informatik.uni-bremen.de (Postfix) with ESMTPSA id 3snZMR3pVTz2jh2; Mon,  3 Oct 2016 10:04:35 +0200 (CEST)
Message-ID: <57F21118.4070709@tzi.org>
Date: Mon, 03 Oct 2016 10:04:40 +0200
From: Carsten Bormann <cabo@tzi.org>
User-Agent: Postbox 4.0.8 (Macintosh/20151105)
MIME-Version: 1.0
To: Jim Schaad <ietf@augustcellars.com>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com>
In-Reply-To: <076601d21d38$1e5162f0$5af428d0$@augustcellars.com>
X-Enigmail-Version: 1.2.3
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/AoeayqoHpidutOA36DhhKQ_zREk>
Cc: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>, cose-chairs@ietf.org, 'The IESG' <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com, cose@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Oct 2016 08:04:50 -0000

Jim,

please do not remove the CDDL from the text.

We discussed this in the WG and the result was very clear.

(I do agree with Stephen's comments that the English text needs to be
completed where it does not fully mirror the CDDL yet.)

Grüße, Carsten


Jim Schaad wrote:
> I build a version of the document with no CDDL, I have added some pointers to the use of "/" and "[+ FOO]" to the CDDL preview section at the top of the document.  I have also identified the structures Sig_structure and Enc_structure like I did the Mac_structure in the text.  (Also found a COSE_Encrypt that should have been a COSE_Encrypt0.)


From nobody Mon Oct  3 03:21:03 2016
Return-Path: <stephen.farrell@cs.tcd.ie>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BCC8712B0DA; Mon,  3 Oct 2016 03:21:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.297
X-Spam-Level: 
X-Spam-Status: No, score=-7.297 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-2.996, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cs.tcd.ie
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 APNklnN09Eas; Mon,  3 Oct 2016 03:20:59 -0700 (PDT)
Received: from mercury.scss.tcd.ie (mercury.scss.tcd.ie [134.226.56.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0D56312B42B; Mon,  3 Oct 2016 03:16:24 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mercury.scss.tcd.ie (Postfix) with ESMTP id 8CF73BDF9; Mon,  3 Oct 2016 11:16:22 +0100 (IST)
Received: from mercury.scss.tcd.ie ([127.0.0.1]) by localhost (mercury.scss.tcd.ie [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HYd0pEDBaEbQ; Mon,  3 Oct 2016 11:16:22 +0100 (IST)
Received: from [134.226.36.93] (bilbo.dsg.cs.tcd.ie [134.226.36.93]) by mercury.scss.tcd.ie (Postfix) with ESMTPSA id E08D6BDCC; Mon,  3 Oct 2016 11:16:21 +0100 (IST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cs.tcd.ie; s=mail; t=1475489782; bh=mD2Ophk6721/arayPaEKfB1Lyw9426kfSHy9wk1AEhs=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=pk+vpP+dTfnjyhA47+Gda25fYFDlKnH0uH8rQ9MBoo31LVaGeTyiQA1LKj8qwZa9R ddOlenXFlDLqOMAZDQzqQrFsIbJ5o6gN9FdeKpzu/0ndEz1mm0QSwqsJpSjTECNq0F toAQvL76H1rnuhB3xsSchcAMwRM+Hq2rD+I821GA=
To: Jim Schaad <ietf@augustcellars.com>, 'The IESG' <iesg@ietf.org>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com>
From: Stephen Farrell <stephen.farrell@cs.tcd.ie>
Openpgp: id=D66EA7906F0B897FB2E97D582F3C8736805F8DA2; url=
Message-ID: <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie>
Date: Mon, 3 Oct 2016 11:16:22 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0
MIME-Version: 1.0
In-Reply-To: <076601d21d38$1e5162f0$5af428d0$@augustcellars.com>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms000603060906030205050800"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/U62-AHaPMeafDsua_R084QdpXis>
Cc: cose-chairs@ietf.org, cose@ietf.org, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Oct 2016 10:21:02 -0000

This is a cryptographically signed message in MIME format.

--------------ms000603060906030205050800
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Hi Jim,

On 03/10/16 06:36, Jim Schaad wrote:
> Stephen,
>=20
> Answers and questions interspersed below along with some - yes I need
> to do that.  I should be able to get to those in the first half of
> this week.  Am building a github branch for responses if you want to
> look at things as we go along.

Good stuff. Some answers below where they seem useful.

>=20
> Jim
>=20
>=20
>> -----Original Message----- From: Stephen Farrell
>> [mailto:stephen.farrell@cs.tcd.ie] Sent: Wednesday, September 28,
>> 2016 5:39 AM To: The IESG <iesg@ietf.org> Cc:
>> draft-ietf-cose-msg@ietf.org; Goeran Selander=20
>> <goran.selander@ericsson.com>; cose-chairs@ietf.org;=20
>> goran.selander@ericsson.com; cose@ietf.org Subject: Stephen
>> Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and=20
>> COMMENT)
>>=20
>> Stephen Farrell has entered the following ballot position for=20
>> draft-ietf-cose-msg-19: Discuss
>>=20
>> When responding, please keep the subject line intact and reply to
>> all email addresses included in the To and CC lines. (Feel free to
>> cut this introductory paragraph, however.)
>>=20
>>=20
>> Please refer to
>> https://www.ietf.org/iesg/statement/discuss-criteria.html for more
>> information about IESG DISCUSS and COMMENT positions.
>>=20
>>=20
>> The document, along with other ballot positions, can be found
>> here: https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>>=20
>>=20
>>=20
>> ----------------------------------------------------------------------=

>>
>>=20
DISCUSS:
>> ----------------------------------------------------------------------=

>>
>>
>>
>>=20
I think this is a fine design and well documented, (though
>> long) and I'm sure we'll clear up the points below quickly enough.
>> Some of them may need some discussion but others are mostly
>> checking.
>>=20
>> (1) general: I think the inclusion of CDDL is an error here and
>> we'd be better off having someone (if interested) generate the CDDL
>> schema stuff later on when/if CDDL is standardised/stabilised.
>> Including it now creates the potential for breakage unnecessarily
>> IMO. However, the WG did explicitly discuss iirc, so this is just a
>> personal comment that I'm also in the rough on inclusion of CDDL in
>> this spec. (As an example, for someone not familiar with CDDL, the
>> inclusion of fragments interspersed in the text is distracting and
>> potentially puzzling when one gets to the end of section 3.)
>> However, I do think there are places where the CDDL is effectively
>> normative despite what is said in the introduction, the ones I've=20
>> spotted are below. (Happy to chat about 'em as I may be mistaken.)
>> I also wondered if one could really implement this if all the CDDL
>> was removed from the text, which is what I think would be required
>> if CDDL were really to be informative. Anyway the places I think
>> some more text may be needed are:
>=20
>=20
> I build a version of the document with no CDDL, I have added some
> pointers to the use of "/" and "[+ FOO]" to the CDDL preview section
> at the top of the document.  I have also identified the structures
> Sig_structure and Enc_structure like I did the Mac_structure in the
> text.  (Also found a COSE_Encrypt that should have been a
> COSE_Encrypt0.)
>=20
>>=20
>> (1.1) table 2: As-is the value type column seems to me to make CDDL
>> normative. I don't see the natural language version that you said
>> would be normative.
>>=20
>> (1.2) 4.4, 2nd list point 1: the use of Sig_structure makes the
>> CDDL normative. (Same with the use in 4.5 and Enc_structure in
>> 5.3.)
>>=20
>> (1.3) 7.1, the key_ops value is only specified in CDDL, in Table 3.
>> (It is well- defined below the table in text though, so this one's
>> borderline.)
>=20
> The description for key_ops points to Table 3, so I think it is fully
> supplied.
>=20
>>=20
>> (1.4) 11.2: it's not clear to me that a reader knows how to handle
>> decoding of the two optional fields at the end (other and
>> SuppPrivInfo) without looking at the CDDL. Can you explain? (That
>> might be just my ignorance of CBOR, but wanted to check.)
>=20
> I am not sure that I would know how to do it even with CDDL, however
> in this case that is a moot question as this structure is only
> encoded and never transmitted or decoded.
>=20
> Will also note, that you have better eyes than me as I do not see two
> optional fields at the end.  I see one optional field at the end of
> two different arrays, so that would be a CBOR ignorance I think.

I'd say we should be able to kill this discuss point easily
with the changes you're making.

>=20
>>=20
>> (2) 3.1, alg: so you're disallowing a setup where the kid alone
>> identifies the key and algorithm to the recipient? That is used in
>> some IETF protocols (OSPF iirc) so rhat's a pity, and will in
>> those (maybe less common) cases consume a few bytes that could
>> otherwise be saved.  I think, but am not sure, that the WG already
>> discussed this, but if not, maybe worth a thought? (Or even a 2nd
>> thought:-) And appendix A.1 is really puzzling - as it provides
>> instructions for how to not follow a MUST in the body of the
>> document.
>=20
> I have come around to the feeling that the algorithm needs to be part
> of the value that is being authenticated as part of all of the
> messages.=20

Is that just a feeling of yours or are we confident it
represents WG consensus? (Honest question - I just don't
recall.)

> This being the case, the only what that it can be enforced
> is to make the algorithm be a part of the protected attributes.   In
> my mind the cost of the 2 bytes for this purpose seems to be
> sufficiently small that including it does not seem to be a large
> burden.
>=20
> There were several people in the IoT world who felt as you that one
> could have an implicit algorithm and they did not want to spend the
> two bytes for the purpose of including it in the AEAD.  This being
> the case, I did provide the appendix to tell how to do this.  I
> expect that people are going to do this and not following the
> guidance that was provided about making sure that the algorithm is
> authenticated.

Right, but isn't that then pretty much an RFC6919 "MUST, but
we know you (sometimes) won't"? I just don't see how that helps
with interop.

I do agree that it's conceivable that the lack of an alg in
a protocol could lead to vulnerabilities. However, there are
clearly cases where a protocol can be secure without an
explicit alg, and we know that folks will do that optimisation
sometimes, so I think the most that'd be right is a SHOULD,
but likely a MAY is even better. (If however, there's a clear
WG consensus to take the RFC6919 route, then I'll get out of
the way, but with an "I told you so" in my back pocket;-)

>=20
>>=20
>> (3) 7.1: key_op 8, "derive bits" - I don't think this usage is
>> clear enough, can you say what's meant here?
>=20
> Derive bits was added to the JOSE documents in response to the W3C
> WebCrypto work where they wanted to be able to control that something
> could derive bits but not derive a key.  These were initially not
> present in this document but was added by request so that it would
> match what the JWK document had.  The description in JWK is "derive
> bits not to be used as a key".  Does that read better?  If so I can
> change this.

That is clearer yes. Maybe add a pointer to the JWK doc as well?
I'm not convinced of the utility myself though but so long as
it's clearly described then that'll sort this discuss point.

>=20
>>=20
>> (4) Why not make deterministic ECDSA a MUST?  8.1.1 says:=20
>> "Applications that specify ECDSA should evaluate the ability to get
>> good random number generation and require deterministic signatures
>> where poor random number generation exists."  I don't think that is
>> sufficiently clear, nor realistic, and I don't recall this being
>> discussed on the list (sorry if I'm forgetting) and bad random
>> values are a killer flaw here that has happened in the wild.
>=20
> It is not clear to me that many, if any, current packages support the
> concept of doing deterministic ECDSA. =20

But they don't to COSE either so I'm not clear that's a good
argument unless there's evidence that crypto libraries likely
to be used for COSE won't include deterministic ECDSA. (That
last would be a surprise given that deterministic is clearly
superior.)

> If this case it seems to be
> odd that we would require it.   I can do some research to figure this
> out.

Cool. Be interested in what you find.

>=20
>>=20
>> (5) Table 6, is this 25519 or 448? Where does it say?  Sorry if I'm
>> being dumb here, but I don't see where you say which curve is
>> specified, the definition of 'crv' says defined for this alg which
>> I assume means listed in Table 6.
>=20
> The value of 'crv' is defined in table 22.  The same algorithm is
> used to identify all of the curves.

I'm still not getting that but didn't yet re-read the doc. I will
as we go so let's punt on this for the moment.

>=20
>>=20
>> (6) section 10: why MUST the kty values be present always? That
>> seems unnecessary in some contexts and I don't get a security
>> reason why it's needed e.g. if there's an alg id somewhere - can
>> you explain? I can see folks omitting this leading to interop
>> problems for not useful reasons. (Same comment applies in other
>> cases where kty is a MUST, e.g. 12.1.2, 12.2.1.)
>=20
> This follows what JOSE did in in RFC 7517 (JWK).  I might, or might
> not, agree with you that specifying an algorithm would be sufficient.
> Consider one of the ECDH-ES variants.  It is defined to work with
> keys of the key type 'EC2' as well as 'OKP'.  These two key types
> have different sets of required parameters but some of them overlap.
> Specifically, 'x' is in both but 'y' is only in one of them.  In this
> case the additional parameter of 'crv' could also be used to
> distinguish them but a generic piece of code looking only at the
> algorithm would not have enough detail.

Hmm. Still not convinced, but I'll look again as we go. This is
I guess similar to the issue with the alg as a MUST in that we
can be pretty sure some folks will ignore that MUST I think.

>=20
>>=20
>> (7) section 11: given that we know people will use human memorable
>> secrets, why have you not defined codepoints for PBES2 (or the more
>> commonly supported?) PBDKF2?  I'm fine if there's a reason, or even
>> if it was discussed by the WG, but just wanted to check as I'd
>> worry that folks will use the ones defined here with human
>> memorable secrets no matter what the spec says so giving 'em
>> something more tailored might be better. (OTOH, one could argue
>> that making this apparent might be worse too I guess.)
>=20
> This was part of the secondary algorithm draft which the WG decided
> not to do as part of the 'we are not going to do RSA at this time'.
> I expect that I will write an individual draft to cover these.  It
> was also not clear to me that small devices were going to be using
> this type of secret to start with in any event.

Fair enough. Consider this bit sorted.

>=20
>>=20
>> (8) 12.4: Why is no ephemeral-ephemeral (E-E) variant supported?
>> Some protocols will allow for that and it seems wrong to disallow
>> it when it could relatively easily be supported. For some
>> applications where content is dealt with in store-and-forward mode,
>> there may be situations (e.g. provisioning, "introduction") where
>> E-E could be used. As-is, applications wanting that will have to
>> hack the recipient DH-public into a home-grown structure (or use
>> one of the COSE_Key labels from Table 19) and then treat that as
>> ES-DH. That seems likely to lead to non-interop or security errors
>> being made. I'd be fine if you even said how to re-use the
>> structures currently defined for E-E btw and didn't introduce new
>> structures.
>=20
> See https://datatracker.ietf.org/doc/draft-selander-ace-cose-ecdhe/
> for how this is being addressed.

Hmm. No 25519? Odd that. But fair enough I suppose if it's being
handled somewhere.

>=20
>>=20
>> (9) 16.4: I'm not sure expert review is right here.  What if the
>> expert is asked to add SM2/SM4 while there is still no widely
>> available non-Chinese text to describe those?  I think the expert
>> ought enforce a "specification required" rule at least and maybe
>> more.  (And ought never allow an algorithm with no specification=20
>> publicly available.)
>=20
> This view was advanced by several people in the WG as well.  My worry
> about this position is that it might encourage point squatting.  I
> cannot respond for other experts, but I would ask for a usable
> description of the algorithm.  If I was not familiar I would also
> request either additional review from CFRG and/or conference papers
> on the algorithm.  If it was not a publicly available specification,
> I would then assign a "non-optimal" point.  My expectation is that
> there are going to be more small networks of IoT devices than there
> are for TLS systems.  This means that it is more likely that
> localized algorithms may be desired.

Yeah but desired-by-someone !=3D desirable-for-the-Internet :-)

I would worry about less well reviewed lightweight crypto in this
space - that'll be attractive for implementers/vendors but might
not be a good plan.

>=20
> I am not against raising the level to specification required, but
> would worry about point squatting.
>=20
> If this is not "expert review" what do you believe would be a better
> requirement?  I do not believe this should be dumped on either the
> IESG or CFRG.

I think expert review with specification required is maybe right
with the guidance tightened up along the lines you state above.
(But see below.)

>=20
>>=20
>> (10) 16.4 (and elsewhere maybe) I think this registry is missing a
>> column - as is being done in the TLS WG, I think there should be a
>> column saying if the IETF is happy enough with an algorithm and
>> that getting a "Y" in that ought require standards action. (Or some
>> similar scheme.) I don't think the standards-track range of
>> codepoints is enough here, e.g. at some time we will want to=20
>> deprecate things, and at other times we may want to define things
>> for the future on the standards-track but not (yet) recommend their
>> use.  The last bullet in 16.11 does help here, but I'd argue that
>> we need to do more to protect the expert (and implementers) from
>> the trickle of vanity/national algorithms/curves that are always
>> being proposed.
>=20
> I would not object to doing this.  While I don't know if the TLS
> experiment on this is going to work, I don't have any problems with
> participating in the same experiment here as well.

Great. If we do that then I think the expert's job can be easier
as it'll be much clearer what the IETF likes. (And that'd sort
my discuss point #9 too.)

>=20
> I am not sure what we should say for deprecation of algorithms here
> should be, they are going to live for a long time and new systems
> will probably ship with the same algorithms as long as they need to
> interoperate.  Consider the lighting use case that is being fought
> over in ACE right now.  You cannot put a new light bulb in that uses
> a different algorithm unless you are willing to start broadcasting
> two messages.  This is probably going to lead to very slow
> deprecation over time.

Well, it's always slow. But I think if we can clearly see from the
registry what the IETF currently likes, then implementers should
have an easier time. I'd have no objection if the extra column
wasn't just a binary y/n, but I think it's hard to come up with
good semantics for anything else. (Where "y" just means that the
IETF currently likes the registry entry.)

>=20
>=20
>>=20
>>=20
>> ----------------------------------------------------------------------=

>>
>>=20
COMMENT:
>> ----------------------------------------------------------------------=

>>

I'll go over these later if that's ok, gotta do another thing
right now;-) Please ping me if you need a response before you
do edits though.

Cheers,
S.


>>
>>
>>
>>=20
- 1.4: the 2nd last paragraph is unclear to me. Probably just needs
re-phrasing.
>=20
> Which is unclear, the problem or the action?
>=20
>>=20
>> - 1.5: I'd add a reference to RFC5116.
>=20
> Reasonable and done.
>=20
>>=20
>> - 3.1, crit: The statement that security libraries or application
>> code can handle this is odd - isn't that an API requirement? (I'm
>> not objecting, but it's odd.)
>=20
> I agree that this is an API requirement.
>=20
>>=20
>> - 3.1, "content type" is the space there intended?  If so, maybe
>> add quotes or a comma or something to disambiguate the name and
>> descriptive text? Same for other multi-word names here.
>=20
> Given that this is the second person suggesting this (also in Gen-Art
> review). I am going to add a colon to deal with this.
>=20
>>=20
>> - 3.1, "all the keys may need to be checked" - really?  Or do you
>> mean all the keys associated with this kid?
>=20
> I thought that this said keys associated with the kid.  Did you not
> read it this way?  If not then I will look at re-phrasing.
>=20
>>=20
>> - 3.1, IV/Partial IV - I think it's an error to define this here.
>> What if some algorithm can't use that kind of (0|partial)^IV but
>> needs something else instead? Shouldn't all mechanism for handling
>> IVs be defined by the algorithm/mode? (This isn't a discuss because
>> I can't think of a good counter example and there'd be other ways
>> around the problem too probably.)
>=20
> I was originally going to make IV an algorithm specific parameter
> rather than a common parameter.  It was just so common that it seemed
> to be better to only define it once.  Any algorithm that needed
> different behavior could easily define an algorithm specific
> parameter for IV work instead.  So as you say an easy work around
> exists if needed.
>=20
>>=20
>> - 4.1: signingTime is often needed with signatures. Isn't that
>> common enough to want to define a way to do it, as an option?
>=20
> There was a signingTime parameter in the original document.  The WG
> decided that it was not going to be needed enough at this point in
> time to have it defined now.  Additionally, there were some arguments
> over the format of the time field as some systems support a real
> clock and some only support a relative clock to when they were last
> started up.
>=20
>>=20
>> - 4.1: If I sign with a private key corresponding to a 2047 or 2049
>> bit RSA public key modulus, then is it clear what to put where in
>> the signature bstr? (Yes, that'd be dumb, but I wonder is what to
>> do well enough defined, as I don't think you can rule it out in all
>> cases.) Since you don't include RSA here I guess it's ok to skip=20
>> this, but maybe you need to say that such issues need to be handled
>> in the definition of signature algs.
>=20
> I would say that this is not real, but I looked carefully at this
> when doing the EdDSA algorithms.  I will look at this and see if I
> cannot find some way to state this either generally or specifically.
>=20
>>=20
>> - 4.3: "cannot bleed" isn't clear enough maybe, give an example
>> perhaps where the decoder can fail to disambiguate a boundary?
>=20
> I'll look at this and see if I cannot come up with better language.
> However, there are no decode issues here.
>=20
>>=20
>> 4.4, last para: I disagree that one must (even lowercase must)
>> check the signing identity.  That's application behaviour and
>> should be stated here in such concrete terms. At least s/must
>> also/may also want to/
>=20
> What if it is s/one must also/the application must also/
>=20
>>=20
>> (Note - the above were comments on -18, but also seem to work based
>> on -19. Subsequent comments are on -19.)
>>=20
>> - 7.1: "starting at the same base IV" - are you missing "and
>> incrementing" or something? Otherwise I think this seems unclear.
>=20
> The "and incrementing" to me was implied in the first paragraph with
> the fact that this is intended to be used with the "partial IV"
> parameter.  I'll see if I can make this cleaner.
>=20
>>=20
>> - 8.2.1: is the phrasing of the 1st para right? would it be better
>> to say that the value of a key for EdDSA MUST NOT be used for ECDH
>> and vice-versa. (Or maybe points instead of keys?)
>=20
> Yeah, reads messy - let me think about it.
>=20
>>=20
>> - 8.2.1: you need a reference for batch signing. (Or could it be
>> omitted?)
>=20
> I kept asking for one in the EdDSA document and never got one there,
> so I don't have one to push in here.
>=20
>>=20
>> - section 9: I think it'd be good to be clearer about the strength
>> of truncated MAC values. (And I can't recall the right thing to say
>> off the top of my head:-)
>=20
> When I was doing research about this, I could not find any solid
> results on truncated MAC values that people seemed to agree on. Most
> people seem to look at this as just a birthday attack so I would need
> to do more searching to find something useful.
>=20
>>=20
>> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be
>> better to refer to the draft as that should be published soon.
>> (Same for RFC3447 btw.)
>=20
> Will do.
>=20
>>=20
>> [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
>>=20
>> - 12.4: Why "OKP"? And saying there's no "simple way" to do point
>> validation seems fairly opaque, a reference there or explanatory
>> text would be good. (Ah, it's in section 13, maybe shuffle the text
>> or include a pointer.) Octet key pair doesn't seem like that good a
>> name to me btw.
>=20
> I copied "OKP" from draft-ietf-jose-cfrg-curves.  Since it has
> already gone through there I am reluctant to be different.
>=20
> I will re-look at the order and make sure that there is something
> lying around for the acronym expansion.
>=20
>>=20
>> - 12.5: The 1st para seems wrong. (Or at least is unclear to me.)
>> "Encrypted with <foo> and <bar>" seems ambiguous anyway, does it
>> mean double encryption or two parallel ciphertexts? (I assume the
>> former.) What's the algebraic thing you're trying to explain?
>> It'd be good to provide that for such relatively complex operations
>> I think. Is this what you mean?
>>=20
>> KW(KDF(DH-shared),CEK)
>=20
> Yes that is the formula and yes it makes sense to document it in that
> manner.
>=20
>>=20
>> - Table 22: The EC2 or OKP value is fixed per curve and the
>> cryptographic function being performed so seems unnecessary. Do you
>> really need it so? Why? (I'm not buying that some future form of
>> ECC might mean this is needed btw - and codepoints aren't expensive
>> here, right? So other forms of ECC can burn codepoints when that's
>> needed and in the meantime we'd save bytes and complexity.)
>=20
> I am lost and don't understand what you are saying here.
>=20
> * For EC2 key types the curve is fixed, but the cryptographic
> function is not fixed. * For OKP key types, the curve/cryptographic
> function pair is fixed.
>=20
> This is analogous to what is happing for the PKIX world.
>=20
> Are you suggesting that something change?  If so what?  (Just so I
> can evaluate it.)
>=20
>>=20
>> - Section 15: Do we have any examples of such a profile?  I think
>> it'd be great if we did and could add an informative reference here
>> (even if that's to an early I- D).
>=20
> Will add a reference to draft-selander-ace-object-security.  (Which
> is being discussed in core not ace).
>=20
>>=20
>> - section 19: I don't get how ECDSA is normative and the cfrg
>> curves are not. Same for RFC6979. Maybe these all could do with
>> checking? (No big deal IMO but maybe worth it.)
>=20
> Yes, the cfrg curves should be normative and yes I will go back over
> the list.
>=20
>>=20
>> - Appendices A.1 (as already noted) and A.2 are a puzzle. Why say
>> in the body of the document to do <foo> and then an appendix that=20
>> says how to do <not-foo>?
>=20
> Answer above.
>=20
>=20
> Jim
>=20
>=20
>>=20
>> - Appendix C and the implementation status section: Many thanks -
>> great to see that! (I didn't check 'em though:-)
>>=20
>> - Thanks also for speedily handling the extensive secdir review.
>>=20
>> [2]
>> https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html
>>=20
>=20
>=20
> _______________________________________________ COSE mailing list=20
> COSE@ietf.org https://www.ietf.org/mailman/listinfo/cose
>=20


--------------ms000603060906030205050800
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC
CvIwggUIMIID8KADAgECAhBPzaE7pzYviUJyhmHTFBdnMA0GCSqGSIb3DQEBCwUAMHUxCzAJ
BgNVBAYTAklMMRYwFAYDVQQKEw1TdGFydENvbSBMdGQuMSkwJwYDVQQLEyBTdGFydENvbSBD
ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEjMCEGA1UEAxMaU3RhcnRDb20gQ2xhc3MgMSBDbGll
bnQgQ0EwHhcNMTYwMjA5MDkyODE1WhcNMTcwMjA5MDkyODE1WjBOMSIwIAYDVQQDDBlzdGVw
aGVuLmZhcnJlbGxAY3MudGNkLmllMSgwJgYJKoZIhvcNAQkBFhlzdGVwaGVuLmZhcnJlbGxA
Y3MudGNkLmllMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtuC0rYze/2JinSra
C9F2RjGdQZjNALLcW9C3WKTwYII3wBslobmHuPEYE5JaGItmzuKnAW619R1rD/kfoNWC19N3
rBZ6UX9Cmb9D9exCwYIwVuSwjrCQWGxgCtNQTrwKzCCpI790GRiMTvxvO7UmzmBrCaBLiZW5
R0fBjK5Yn6hUhAzGBkNbkIEL28cLJqH0yVz7Kl92OlzrQqTPEts5m6cDnNdY/ADfeAX18c1r
dxZqcAxhLotrCqgsVA4ilbQDMMXGTLlB5TP35HeWZuGBU7xu003rLcFLdOkD8xvpJoYZy9Kt
3oABXPS5yqtMK+XCNdqmMn+4mOtLwQSMmPCSiQIDAQABo4IBuTCCAbUwCwYDVR0PBAQDAgSw
MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAJBgNVHRMEAjAAMB0GA1UdDgQWBBQJ
QhvwQ5Fl372Z6xqo6fdn8XejTTAfBgNVHSMEGDAWgBQkgWw5Yb5JD4+3G0YrySi1J0htaDBv
BggrBgEFBQcBAQRjMGEwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLnN0YXJ0c3NsLmNvbTA5
BggrBgEFBQcwAoYtaHR0cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvc2NhLmNsaWVudDEu
Y3J0MDgGA1UdHwQxMC8wLaAroCmGJ2h0dHA6Ly9jcmwuc3RhcnRzc2wuY29tL3NjYS1jbGll
bnQxLmNybDAkBgNVHREEHTAbgRlzdGVwaGVuLmZhcnJlbGxAY3MudGNkLmllMCMGA1UdEgQc
MBqGGGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tLzBGBgNVHSAEPzA9MDsGCysGAQQBgbU3AQIE
MCwwKgYIKwYBBQUHAgEWHmh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeTANBgkqhkiG
9w0BAQsFAAOCAQEArzrSv2C8PlBBmGuiGrzm2Wma46/KHtXmZYS0bsd43pM66Pc/MsqPE0HD
C1GzMFfwB6BfkJn8ijNSIhlgj898WzjvnpM/SO8KStjlB8719ig/xKISrOl5mX55XbFlQtX9
U6MrqRgbDIATxhD9IDr+ryvovDzChqgQj7mt2jYr4mdlRjsjod3H1VY6XglRmaaNGZfsCARM
aE/TU5SXIiqauwt5KxNGYAY67QkOBs7O1FkSXpTk7+1MmzJMF4nP8QQ5n8vhVNseF+/Wm7ai
9mtnrkLbaznMsy/ULo/C2yuLUWTbZZbf4EKNmVdme6tUDgYkFjAFOblfA7W1fSPiQGagYzCC
BeIwggPKoAMCAQICEGunin0K14jWUQr5WeTntOEwDQYJKoZIhvcNAQELBQAwfTELMAkGA1UE
BhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBEaWdpdGFs
IENlcnRpZmljYXRlIFNpZ25pbmcxKTAnBgNVBAMTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24g
QXV0aG9yaXR5MB4XDTE1MTIxNjAxMDAwNVoXDTMwMTIxNjAxMDAwNVowdTELMAkGA1UEBhMC
SUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmlj
YXRpb24gQXV0aG9yaXR5MSMwIQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQTCC
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL192vfDon2D9luC/dtbX64eG3XAtRmv
mCSsu1d52DXsCR58zJQbCtB2/A5uFqNxWacpXGGtTCRk9dEDBlmixEd8QiLkUfvHpJX/xKnm
VkS6Iye8wUbYzMsDzgnpazlPg19dnSqfhM+Cevdfa89VLnUztRr2cgmCfyO9Otrh7LJDPG+4
D8ZnAqDtVB8MKYJL6QgKyVhhaBc4y3bGWxKyXEtx7QIZZGxPwSkzK3WIN+VKNdkiwTubW5PI
dopmykwvIjLPqbJK7yPwFZYekKE015OsW6FV+s4DIM8UlVS8pkIsoGGJtMuWjLL4tq2hYQuu
N0jhrxK1ljz50hH23gA9cbMCAwEAAaOCAWQwggFgMA4GA1UdDwEB/wQEAwIBBjAdBgNVHSUE
FjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwEgYDVR0TAQH/BAgwBgEB/wIBADAyBgNVHR8EKzAp
MCegJaAjhiFodHRwOi8vY3JsLnN0YXJ0c3NsLmNvbS9zZnNjYS5jcmwwZgYIKwYBBQUHAQEE
WjBYMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5zdGFydHNzbC5jb20wMAYIKwYBBQUHMAKG
JGh0dHA6Ly9haWEuc3RhcnRzc2wuY29tL2NlcnRzL2NhLmNydDAdBgNVHQ4EFgQUJIFsOWG+
SQ+PtxtGK8kotSdIbWgwHwYDVR0jBBgwFoAUTgvvGqRAW6UXaYcwyjRoQ9BBrvIwPwYDVR0g
BDgwNjA0BgRVHSAAMCwwKgYIKwYBBQUHAgEWHmh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3Bv
bGljeTANBgkqhkiG9w0BAQsFAAOCAgEAi+P3h+wBi4StDwECW5zhIycjBL008HACblIf26HY
0JdOruKbrWDsXUsiI0j/7Crft9S5oxvPiDtVqspBOB/y5uzSns1lZwh7sG96bYBZpcGzGxpF
NjDmQbcM3yl3WFIRS4WhNrsOY14V7y2IrUGsvetsD+bjyOngCIVeC/GmsmtbuLOzJ606tEc9
uRbhjTu/b0x2Fo+/e7UkQvKzNeo7OMhijixaULyINBfCBJb+e29bLafgu6JqjOUJ9eXXj20p
6q/CW+uVrZiSW57+q5an2P2i7hP85jQJcy5j4HzA0rSiF3YPhKGAWUxKPMAVGgcYoXzWydOv
Z3UDsTDTagXpRDIKQLZo02wrlxY6iMFqvlzsemVf1odhQJmi7Eh5TbxI40kDGcBOBHhwnaOu
mZhLP+SWJQnjpLpSlUOj95uf1zo9oz9e0NgIJoz/tdfrBzez76xtDsK0KfUDHt1/q59BvDI7
RX6gVr0fQoCyMczNzCTcRXYHY0tq2J0oT+bsb6sH2b4WVWAiJKnSYaWDjdA70qHX4mq9MIjO
/ZskmSY8wtAk24orAc0vwXgYanqNsBX5Yv4sN4Z9VyrwMdLcusP7HJgRdAGKpkR2I9U4zEsN
JQJewM7S4Jalo1DyPrLpL2nTET8ZrSl5Utp1UeGp/2deoprGevfnxWB+vHNQiu85o6MxggPM
MIIDyAIBATCBiTB1MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEpMCcG
A1UECxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIzAhBgNVBAMTGlN0YXJ0
Q29tIENsYXNzIDEgQ2xpZW50IENBAhBPzaE7pzYviUJyhmHTFBdnMA0GCWCGSAFlAwQCAQUA
oIICEzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xNjEwMDMx
MDE2MjJaMC8GCSqGSIb3DQEJBDEiBCDv7XOyQm0CdWa4Nd6QeKeT8+DGa318wcO47lBTH4NK
8DBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCGSAFlAwQBKjALBglghkgBZQMEAQIwCgYIKoZIhvcN
AwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMC
AgEoMIGaBgkrBgEEAYI3EAQxgYwwgYkwdTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0
Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMw
IQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQQIQT82hO6c2L4lCcoZh0xQXZzCB
nAYLKoZIhvcNAQkQAgsxgYyggYkwdTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29t
IEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYD
VQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQQIQT82hO6c2L4lCcoZh0xQXZzANBgkq
hkiG9w0BAQEFAASCAQBEV23CJDGdNr6N6efXIdB1usyUMG0tsTHDXCanBkfXlvMHAziPyn2t
0grEx8Q24ICk3gaXvRgU/zEi0gWdDf/Axq80a1LWw4ASKobITuNek/GAkPrdIkOTDsOygBve
SzIE0wACM4hxGNggF3OxGXM3u9VcJFK5wx45UFNSGZXO140Tz/tY6eiLOZ9OMfiOVtZ0L9cL
Q3/l4aOU/qn520YdCO8Ja4Lux40XYP21coq316XLIWxk+eiIna1NgduqH52I9lZiikFnft6y
Wwm808tiVdcyUyO14TMnEiTOjAyHHjKu020osX1QxIPe+k+xC9Uzb0JddxsQ3Ec06+Gcu6ys
AAAAAAAA
--------------ms000603060906030205050800--


From nobody Mon Oct  3 09:55:57 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 88078129416; Mon,  3 Oct 2016 09:55:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 0lD1uYlEG9wF; Mon,  3 Oct 2016 09:55:54 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A9FBB12940E; Mon,  3 Oct 2016 09:55:53 -0700 (PDT)
Received: from hebrews (192.168.1.152) by mail2.augustcellars.com (192.168.1.201) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Mon, 3 Oct 2016 10:09:03 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: 'Carsten Bormann' <cabo@tzi.org>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com> <57F21118.4070709@tzi.org>
In-Reply-To: <57F21118.4070709@tzi.org>
Date: Mon, 3 Oct 2016 09:55:38 -0700
Message-ID: <001701d21d96$f9f1d0c0$edd57240$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQM0sPyC3CV9N63JinowM6PtUp5t4AEQq3b7Ae7MiwqdudAKIA==
Content-Language: en-us
X-Originating-IP: [192.168.1.152]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/Nq4vD8I2oHOu4ghyjPWtaalOhjA>
Cc: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>, cose-chairs@ietf.org, 'The IESG' <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com, cose@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Oct 2016 16:55:55 -0000

Carsten,

I built this version for review to make sure that all of the necessary =
text was present not as a step to removing the CDDL from the document.

Jim


> -----Original Message-----
> From: Carsten Bormann [mailto:cabo@tzi.org]
> Sent: Monday, October 03, 2016 1:05 AM
> To: Jim Schaad <ietf@augustcellars.com>
> Cc: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>; 'The IESG' =
<iesg@ietf.org>;
> cose-chairs@ietf.org; goran.selander@ericsson.com; cose@ietf.org; =
draft-ietf-
> cose-msg@ietf.org
> Subject: Re: [COSE] Stephen Farrell's Discuss on =
draft-ietf-cose-msg-19: (with
> DISCUSS and COMMENT)
>=20
> Jim,
>=20
> please do not remove the CDDL from the text.
>=20
> We discussed this in the WG and the result was very clear.
>=20
> (I do agree with Stephen's comments that the English text needs to be
> completed where it does not fully mirror the CDDL yet.)
>=20
> Gr=C3=BC=C3=9Fe, Carsten
>=20
>=20
> Jim Schaad wrote:
> > I build a version of the document with no CDDL, I have added some
> > pointers to the use of "/" and "[+ FOO]" to the CDDL preview section
> > at the top of the document.  I have also identified the structures
> > Sig_structure and Enc_structure like I did the Mac_structure in the
> > text.  (Also found a COSE_Encrypt that should have been a
> > COSE_Encrypt0.)


From nobody Wed Oct  5 14:42:10 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 225B21294A1 for <cose@ietfa.amsl.com>; Wed,  5 Oct 2016 14:42:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 TP4Aswi0Gist for <cose@ietfa.amsl.com>; Wed,  5 Oct 2016 14:42:08 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9D69B12949D for <cose@ietf.org>; Wed,  5 Oct 2016 14:42:07 -0700 (PDT)
Received: from hebrews (192.168.1.152) by mail2.augustcellars.com (192.168.1.201) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Wed, 5 Oct 2016 14:55:17 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: <cose@ietf.org>
Date: Wed, 5 Oct 2016 14:41:51 -0700
Message-ID: <027f01d21f51$4a2e0e30$de8a2a90$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdIfUOLzVVpr2yaZThGcHsNHmZLcWQ==
Content-Language: en-us
X-Originating-IP: [192.168.1.152]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/B0UxyhFyqgj02pU5tsBjv0tM2nk>
Subject: [COSE] Stephen Farrell's Comments
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 05 Oct 2016 21:42:09 -0000

One of the issues that Stephen raised was a question of why we did not make
deterministic ECDSA be mandatory rather than just strongly suggesting that
it be done.  My initial response was that I did not believe that this was
implemented in a sufficient number of libraries to go forward, but that I
would do a review of some of the libraries out there and report back.

Looking at the four libraries that I am currently using for COSE
implementations, imagine my surprise to find that all of them now support
doing deterministic ECDSA.  Based on this and the request from Stephen, I
suggest that we make deterministic ECDSA be a MUST. 

Are there any objections to this course of action?

Jim



From nobody Wed Oct  5 20:25:11 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A4C8B1293F5; Wed,  5 Oct 2016 20:25:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 MRdz-Zuwp_IX; Wed,  5 Oct 2016 20:25:08 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D5B2F127077; Wed,  5 Oct 2016 20:17:09 -0700 (PDT)
Received: from hebrews (24.21.96.37) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Wed, 5 Oct 2016 20:29:51 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>, 'The IESG' <iesg@ietf.org>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com> <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie>
In-Reply-To: <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie>
Date: Wed, 5 Oct 2016 20:16:25 -0700
Message-ID: <02e401d21f80$08265310$1872f930$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQM0sPyC3CV9N63JinowM6PtUp5t4AEQq3b7AkHo5xudurNqsA==
Content-Language: en-us
X-Originating-IP: [24.21.96.37]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/W1p786EDelrrlUqWDHw-uOBpBMg>
Cc: cose-chairs@ietf.org, cose@ietf.org, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 06 Oct 2016 03:25:11 -0000

Stephen,

Couple of items below asking for input.  However, I think that I have =
dealt with most of the issues and will be pulling them into the version =
on github.

Jim


Editors copy is at https://cose-wg.github.io/cose-spec/
A diff to -19 can be found at =
https://tools.ietf.org/rfcdiff?url1=3Dhttps://www.ietf.org/id/draft-ietf-=
cose-msg&url2=3Dhttps://cose-wg.github.io/cose-spec/draft-ietf-cose-msg.t=
xt



> -----Original Message-----
> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie]
> Sent: Monday, October 03, 2016 3:16 AM
> To: Jim Schaad <ietf@augustcellars.com>; 'The IESG' <iesg@ietf.org>
> Cc: cose-chairs@ietf.org; goran.selander@ericsson.com; cose@ietf.org; =
draft-
> ietf-cose-msg@ietf.org
> Subject: Re: [COSE] Stephen Farrell's Discuss on =
draft-ietf-cose-msg-19: (with
> DISCUSS and COMMENT)
>=20
>=20
> Hi Jim,
>=20
> On 03/10/16 06:36, Jim Schaad wrote:
> > Stephen,
> >
> > Answers and questions interspersed below along with some - yes I =
need
> > to do that.  I should be able to get to those in the first half of
> > this week.  Am building a github branch for responses if you want to
> > look at things as we go along.
>=20
> Good stuff. Some answers below where they seem useful.
>=20
> >
> > Jim
> >
> >
> >> -----Original Message----- From: Stephen Farrell
> >> [mailto:stephen.farrell@cs.tcd.ie] Sent: Wednesday, September 28,
> >> 2016 5:39 AM To: The IESG <iesg@ietf.org> Cc:
> >> draft-ietf-cose-msg@ietf.org; Goeran Selander
> >> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
> >> goran.selander@ericsson.com; cose@ietf.org Subject: Stephen
> >> Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and
> >> COMMENT)
> >>
> >> Stephen Farrell has entered the following ballot position for
> >> draft-ietf-cose-msg-19: Discuss
> >>
> >> When responding, please keep the subject line intact and reply to
> >> all email addresses included in the To and CC lines. (Feel free to
> >> cut this introductory paragraph, however.)
> >>
> >>
> >> Please refer to
> >> https://www.ietf.org/iesg/statement/discuss-criteria.html for more
> >> information about IESG DISCUSS and COMMENT positions.
> >>
> >>
> >> The document, along with other ballot positions, can be found
> >> here: https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
> >>
> >>
> >>
> >> =
----------------------------------------------------------------------
> >>
> >>
> DISCUSS:
> >> =
----------------------------------------------------------------------
> >>
> >>
> >>
> >>
> I think this is a fine design and well documented, (though
> >> long) and I'm sure we'll clear up the points below quickly enough.
> >> Some of them may need some discussion but others are mostly
> >> checking.
> >>
> >> (1) general: I think the inclusion of CDDL is an error here and
> >> we'd be better off having someone (if interested) generate the CDDL
> >> schema stuff later on when/if CDDL is standardised/stabilised.
> >> Including it now creates the potential for breakage unnecessarily
> >> IMO. However, the WG did explicitly discuss iirc, so this is just a
> >> personal comment that I'm also in the rough on inclusion of CDDL in
> >> this spec. (As an example, for someone not familiar with CDDL, the
> >> inclusion of fragments interspersed in the text is distracting and
> >> potentially puzzling when one gets to the end of section 3.)
> >> However, I do think there are places where the CDDL is effectively
> >> normative despite what is said in the introduction, the ones I've
> >> spotted are below. (Happy to chat about 'em as I may be mistaken.)
> >> I also wondered if one could really implement this if all the CDDL
> >> was removed from the text, which is what I think would be required
> >> if CDDL were really to be informative. Anyway the places I think
> >> some more text may be needed are:
> >
> >
> > I build a version of the document with no CDDL, I have added some
> > pointers to the use of "/" and "[+ FOO]" to the CDDL preview section
> > at the top of the document.  I have also identified the structures
> > Sig_structure and Enc_structure like I did the Mac_structure in the
> > text.  (Also found a COSE_Encrypt that should have been a
> > COSE_Encrypt0.)
> >
> >>
> >> (1.1) table 2: As-is the value type column seems to me to make CDDL
> >> normative. I don't see the natural language version that you said
> >> would be normative.
> >>
> >> (1.2) 4.4, 2nd list point 1: the use of Sig_structure makes the
> >> CDDL normative. (Same with the use in 4.5 and Enc_structure in
> >> 5.3.)
> >>
> >> (1.3) 7.1, the key_ops value is only specified in CDDL, in Table 3.
> >> (It is well- defined below the table in text though, so this one's
> >> borderline.)
> >
> > The description for key_ops points to Table 3, so I think it is =
fully
> > supplied.
> >
> >>
> >> (1.4) 11.2: it's not clear to me that a reader knows how to handle
> >> decoding of the two optional fields at the end (other and
> >> SuppPrivInfo) without looking at the CDDL. Can you explain? (That
> >> might be just my ignorance of CBOR, but wanted to check.)
> >
> > I am not sure that I would know how to do it even with CDDL, however
> > in this case that is a moot question as this structure is only
> > encoded and never transmitted or decoded.
> >
> > Will also note, that you have better eyes than me as I do not see =
two
> > optional fields at the end.  I see one optional field at the end of
> > two different arrays, so that would be a CBOR ignorance I think.
>=20
> I'd say we should be able to kill this discuss point easily
> with the changes you're making.
>=20
> >
> >>
> >> (2) 3.1, alg: so you're disallowing a setup where the kid alone
> >> identifies the key and algorithm to the recipient? That is used in
> >> some IETF protocols (OSPF iirc) so rhat's a pity, and will in
> >> those (maybe less common) cases consume a few bytes that could
> >> otherwise be saved.  I think, but am not sure, that the WG already
> >> discussed this, but if not, maybe worth a thought? (Or even a 2nd
> >> thought:-) And appendix A.1 is really puzzling - as it provides
> >> instructions for how to not follow a MUST in the body of the
> >> document.
> >
> > I have come around to the feeling that the algorithm needs to be =
part
> > of the value that is being authenticated as part of all of the
> > messages.
>=20
> Is that just a feeling of yours or are we confident it
> represents WG consensus? (Honest question - I just don't
> recall.)

This is a question you would need to ask the chairs rather than me =
because I am a very strong partisan on this issue.  The question was =
discussed multiple times and I think that it was a WG consensus, but it =
is possible that it represents a brow beating from a very strong =
partisan.

>=20
> > This being the case, the only what that it can be enforced
> > is to make the algorithm be a part of the protected attributes.   In
> > my mind the cost of the 2 bytes for this purpose seems to be
> > sufficiently small that including it does not seem to be a large
> > burden.
> >
> > There were several people in the IoT world who felt as you that one
> > could have an implicit algorithm and they did not want to spend the
> > two bytes for the purpose of including it in the AEAD.  This being
> > the case, I did provide the appendix to tell how to do this.  I
> > expect that people are going to do this and not following the
> > guidance that was provided about making sure that the algorithm is
> > authenticated.
>=20
> Right, but isn't that then pretty much an RFC6919 "MUST, but
> we know you (sometimes) won't"? I just don't see how that helps
> with interop.
>=20
> I do agree that it's conceivable that the lack of an alg in
> a protocol could lead to vulnerabilities. However, there are
> clearly cases where a protocol can be secure without an
> explicit alg, and we know that folks will do that optimisation
> sometimes, so I think the most that'd be right is a SHOULD,
> but likely a MAY is even better. (If however, there's a clear
> WG consensus to take the RFC6919 route, then I'll get out of
> the way, but with an "I told you so" in my back pocket;-)


Let's leave it here for now and revisit when we have more info and we =
are doing an update/advancement of the document.

>=20
> >
> >>
> >> (3) 7.1: key_op 8, "derive bits" - I don't think this usage is
> >> clear enough, can you say what's meant here?
> >
> > Derive bits was added to the JOSE documents in response to the W3C
> > WebCrypto work where they wanted to be able to control that =
something
> > could derive bits but not derive a key.  These were initially not
> > present in this document but was added by request so that it would
> > match what the JWK document had.  The description in JWK is "derive
> > bits not to be used as a key".  Does that read better?  If so I can
> > change this.
>=20
> That is clearer yes. Maybe add a pointer to the JWK doc as well?
> I'm not convinced of the utility myself though but so long as
> it's clearly described then that'll sort this discuss point.

Done

>=20
> >
> >>
> >> (4) Why not make deterministic ECDSA a MUST?  8.1.1 says:
> >> "Applications that specify ECDSA should evaluate the ability to get
> >> good random number generation and require deterministic signatures
> >> where poor random number generation exists."  I don't think that is
> >> sufficiently clear, nor realistic, and I don't recall this being
> >> discussed on the list (sorry if I'm forgetting) and bad random
> >> values are a killer flaw here that has happened in the wild.
> >
> > It is not clear to me that many, if any, current packages support =
the
> > concept of doing deterministic ECDSA.
>=20
> But they don't to COSE either so I'm not clear that's a good
> argument unless there's evidence that crypto libraries likely
> to be used for COSE won't include deterministic ECDSA. (That
> last would be a surprise given that deterministic is clearly
> superior.)
>=20
> > If this case it seems to be
> > odd that we would require it.   I can do some research to figure =
this
> > out.
>=20
> Cool. Be interested in what you find.

It seems to be much more widely implemented than I thought.  I have sent =
a note to the COSE mailing list to see if there are objections to making =
this change.

>=20
> >
> >>
> >> (5) Table 6, is this 25519 or 448? Where does it say?  Sorry if I'm
> >> being dumb here, but I don't see where you say which curve is
> >> specified, the definition of 'crv' says defined for this alg which
> >> I assume means listed in Table 6.
> >
> > The value of 'crv' is defined in table 22.  The same algorithm is
> > used to identify all of the curves.
>=20
> I'm still not getting that but didn't yet re-read the doc. I will
> as we go so let's punt on this for the moment.

ack

>=20
> >
> >>
> >> (6) section 10: why MUST the kty values be present always? That
> >> seems unnecessary in some contexts and I don't get a security
> >> reason why it's needed e.g. if there's an alg id somewhere - can
> >> you explain? I can see folks omitting this leading to interop
> >> problems for not useful reasons. (Same comment applies in other
> >> cases where kty is a MUST, e.g. 12.1.2, 12.2.1.)
> >
> > This follows what JOSE did in in RFC 7517 (JWK).  I might, or might
> > not, agree with you that specifying an algorithm would be =
sufficient.
> > Consider one of the ECDH-ES variants.  It is defined to work with
> > keys of the key type 'EC2' as well as 'OKP'.  These two key types
> > have different sets of required parameters but some of them overlap.
> > Specifically, 'x' is in both but 'y' is only in one of them.  In =
this
> > case the additional parameter of 'crv' could also be used to
> > distinguish them but a generic piece of code looking only at the
> > algorithm would not have enough detail.
>=20
> Hmm. Still not convinced, but I'll look again as we go. This is
> I guess similar to the issue with the alg as a MUST in that we
> can be pretty sure some folks will ignore that MUST I think.
>

Until we have more info - I think we just differ on this one.
=20
> >
> >>
> >> (7) section 11: given that we know people will use human memorable
> >> secrets, why have you not defined codepoints for PBES2 (or the more
> >> commonly supported?) PBDKF2?  I'm fine if there's a reason, or even
> >> if it was discussed by the WG, but just wanted to check as I'd
> >> worry that folks will use the ones defined here with human
> >> memorable secrets no matter what the spec says so giving 'em
> >> something more tailored might be better. (OTOH, one could argue
> >> that making this apparent might be worse too I guess.)
> >
> > This was part of the secondary algorithm draft which the WG decided
> > not to do as part of the 'we are not going to do RSA at this time'.
> > I expect that I will write an individual draft to cover these.  It
> > was also not clear to me that small devices were going to be using
> > this type of secret to start with in any event.
>=20
> Fair enough. Consider this bit sorted.

ack

>=20
> >
> >>
> >> (8) 12.4: Why is no ephemeral-ephemeral (E-E) variant supported?
> >> Some protocols will allow for that and it seems wrong to disallow
> >> it when it could relatively easily be supported. For some
> >> applications where content is dealt with in store-and-forward mode,
> >> there may be situations (e.g. provisioning, "introduction") where
> >> E-E could be used. As-is, applications wanting that will have to
> >> hack the recipient DH-public into a home-grown structure (or use
> >> one of the COSE_Key labels from Table 19) and then treat that as
> >> ES-DH. That seems likely to lead to non-interop or security errors
> >> being made. I'd be fine if you even said how to re-use the
> >> structures currently defined for E-E btw and didn't introduce new
> >> structures.
> >
> > See https://datatracker.ietf.org/doc/draft-selander-ace-cose-ecdhe/
> > for how this is being addressed.
>=20
> Hmm. No 25519? Odd that. But fair enough I suppose if it's being
> handled somewhere.

They are thinking about putting it in - so it will probably show up =
given some time.

>=20
> >
> >>
> >> (9) 16.4: I'm not sure expert review is right here.  What if the
> >> expert is asked to add SM2/SM4 while there is still no widely
> >> available non-Chinese text to describe those?  I think the expert
> >> ought enforce a "specification required" rule at least and maybe
> >> more.  (And ought never allow an algorithm with no specification
> >> publicly available.)
> >
> > This view was advanced by several people in the WG as well.  My =
worry
> > about this position is that it might encourage point squatting.  I
> > cannot respond for other experts, but I would ask for a usable
> > description of the algorithm.  If I was not familiar I would also
> > request either additional review from CFRG and/or conference papers
> > on the algorithm.  If it was not a publicly available specification,
> > I would then assign a "non-optimal" point.  My expectation is that
> > there are going to be more small networks of IoT devices than there
> > are for TLS systems.  This means that it is more likely that
> > localized algorithms may be desired.
>=20
> Yeah but desired-by-someone !=3D desirable-for-the-Internet :-)
>=20
> I would worry about less well reviewed lightweight crypto in this
> space - that'll be attractive for implementers/vendors but might
> not be a good plan.
>=20
> >
> > I am not against raising the level to specification required, but
> > would worry about point squatting.
> >
> > If this is not "expert review" what do you believe would be a better
> > requirement?  I do not believe this should be dumped on either the
> > IESG or CFRG.
>=20
> I think expert review with specification required is maybe right
> with the guidance tightened up along the lines you state above.
> (But see below.)
>=20
> >
> >>
> >> (10) 16.4 (and elsewhere maybe) I think this registry is missing a
> >> column - as is being done in the TLS WG, I think there should be a
> >> column saying if the IETF is happy enough with an algorithm and
> >> that getting a "Y" in that ought require standards action. (Or some
> >> similar scheme.) I don't think the standards-track range of
> >> codepoints is enough here, e.g. at some time we will want to
> >> deprecate things, and at other times we may want to define things
> >> for the future on the standards-track but not (yet) recommend their
> >> use.  The last bullet in 16.11 does help here, but I'd argue that
> >> we need to do more to protect the expert (and implementers) from
> >> the trickle of vanity/national algorithms/curves that are always
> >> being proposed.
> >
> > I would not object to doing this.  While I don't know if the TLS
> > experiment on this is going to work, I don't have any problems with
> > participating in the same experiment here as well.
>=20
> Great. If we do that then I think the expert's job can be easier
> as it'll be much clearer what the IETF likes. (And that'd sort
> my discuss point #9 too.)

Done

>=20
> >
> > I am not sure what we should say for deprecation of algorithms here
> > should be, they are going to live for a long time and new systems
> > will probably ship with the same algorithms as long as they need to
> > interoperate.  Consider the lighting use case that is being fought
> > over in ACE right now.  You cannot put a new light bulb in that uses
> > a different algorithm unless you are willing to start broadcasting
> > two messages.  This is probably going to lead to very slow
> > deprecation over time.
>=20
> Well, it's always slow. But I think if we can clearly see from the
> registry what the IETF currently likes, then implementers should
> have an easier time. I'd have no objection if the extra column
> wasn't just a binary y/n, but I think it's hard to come up with
> good semantics for anything else. (Where "y" just means that the
> IETF currently likes the registry entry.)
>=20
> >
> >
> >>
> >>
> >> =
----------------------------------------------------------------------
> >>
> >>
> COMMENT:
> >> =
----------------------------------------------------------------------
> >>
>=20
> I'll go over these later if that's ok, gotta do another thing
> right now;-) Please ping me if you need a response before you
> do edits though.
>=20
> Cheers,
> S.
>=20
>=20
> >>
> >>
> >>
> >>
> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs
> re-phrasing.
> >
> > Which is unclear, the problem or the action?
> >
> >>
> >> - 1.5: I'd add a reference to RFC5116.
> >
> > Reasonable and done.
> >
> >>
> >> - 3.1, crit: The statement that security libraries or application
> >> code can handle this is odd - isn't that an API requirement? (I'm
> >> not objecting, but it's odd.)
> >
> > I agree that this is an API requirement.
> >
> >>
> >> - 3.1, "content type" is the space there intended?  If so, maybe
> >> add quotes or a comma or something to disambiguate the name and
> >> descriptive text? Same for other multi-word names here.
> >
> > Given that this is the second person suggesting this (also in =
Gen-Art
> > review). I am going to add a colon to deal with this.

Done

> >
> >>
> >> - 3.1, "all the keys may need to be checked" - really?  Or do you
> >> mean all the keys associated with this kid?
> >
> > I thought that this said keys associated with the kid.  Did you not
> > read it this way?  If not then I will look at re-phrasing.
> >

Need input


> >>
> >> - 3.1, IV/Partial IV - I think it's an error to define this here.
> >> What if some algorithm can't use that kind of (0|partial)^IV but
> >> needs something else instead? Shouldn't all mechanism for handling
> >> IVs be defined by the algorithm/mode? (This isn't a discuss because
> >> I can't think of a good counter example and there'd be other ways
> >> around the problem too probably.)
> >
> > I was originally going to make IV an algorithm specific parameter
> > rather than a common parameter.  It was just so common that it =
seemed
> > to be better to only define it once.  Any algorithm that needed
> > different behavior could easily define an algorithm specific
> > parameter for IV work instead.  So as you say an easy work around
> > exists if needed.

No action taken.

> >
> >>
> >> - 4.1: signingTime is often needed with signatures. Isn't that
> >> common enough to want to define a way to do it, as an option?
> >
> > There was a signingTime parameter in the original document.  The WG
> > decided that it was not going to be needed enough at this point in
> > time to have it defined now.  Additionally, there were some =
arguments
> > over the format of the time field as some systems support a real
> > clock and some only support a relative clock to when they were last
> > started up.

No action taken

> >
> >>
> >> - 4.1: If I sign with a private key corresponding to a 2047 or 2049
> >> bit RSA public key modulus, then is it clear what to put where in
> >> the signature bstr? (Yes, that'd be dumb, but I wonder is what to
> >> do well enough defined, as I don't think you can rule it out in all
> >> cases.) Since you don't include RSA here I guess it's ok to skip
> >> this, but maybe you need to say that such issues need to be handled
> >> in the definition of signature algs.
> >
> > I would say that this is not real, but I looked carefully at this
> > when doing the EdDSA algorithms.  I will look at this and see if I
> > cannot find some way to state this either generally or specifically.

Added the following sentence:
            Algorithms MUST specify padding if the signature value is =
not a multiple of 8 bits.

> >
> >>
> >> - 4.3: "cannot bleed" isn't clear enough maybe, give an example
> >> perhaps where the decoder can fail to disambiguate a boundary?
> >
> > I'll look at this and see if I cannot come up with better language.
> > However, there are no decode issues here.

I have modified this text.

> >
> >>
> >> 4.4, last para: I disagree that one must (even lowercase must)
> >> check the signing identity.  That's application behaviour and
> >> should be stated here in such concrete terms. At least s/must
> >> also/may also want to/
> >
> > What if it is s/one must also/the application must also/

Looking for comment

> >
> >>
> >> (Note - the above were comments on -18, but also seem to work based
> >> on -19. Subsequent comments are on -19.)
> >>
> >> - 7.1: "starting at the same base IV" - are you missing "and
> >> incrementing" or something? Otherwise I think this seems unclear.
> >
> > The "and incrementing" to me was implied in the first paragraph with
> > the fact that this is intended to be used with the "partial IV"
> > parameter.  I'll see if I can make this cleaner.

I have re-written this text.

> >
> >>
> >> - 8.2.1: is the phrasing of the 1st para right? would it be better
> >> to say that the value of a key for EdDSA MUST NOT be used for ECDH
> >> and vice-versa. (Or maybe points instead of keys?)
> >
> > Yeah, reads messy - let me think about it.

I have done a re-write on this.

> >
> >>
> >> - 8.2.1: you need a reference for batch signing. (Or could it be
> >> omitted?)
> >
> > I kept asking for one in the EdDSA document and never got one there,
> > so I don't have one to push in here.

No action - but I think it needs to be stated

> >
> >>
> >> - section 9: I think it'd be good to be clearer about the strength
> >> of truncated MAC values. (And I can't recall the right thing to say
> >> off the top of my head:-)
> >
> > When I was doing research about this, I could not find any solid
> > results on truncated MAC values that people seemed to agree on. Most
> > people seem to look at this as just a birthday attack so I would =
need
> > to do more searching to find something useful.

I did some more research and all I could find was:
- Birthday attack for collisions
- brute search for forgery on a message 2^(r-1)-1 attempts
- Changing the algorithm to use a shorter MAC code which can lead to a =
drastically smaller search space, but of course is prevented by MAC-ing =
the algorithm identifier.

I am not sure that including any of these, except maybe the last one, =
adds anything to the list of considerations.

> >
> >>
> >> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be
> >> better to refer to the draft as that should be published soon.
> >> (Same for RFC3447 btw.)
> >
> > Will do.

Done

> >
> >>
> >> [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
> >>
> >> - 12.4: Why "OKP"? And saying there's no "simple way" to do point
> >> validation seems fairly opaque, a reference there or explanatory
> >> text would be good. (Ah, it's in section 13, maybe shuffle the text
> >> or include a pointer.) Octet key pair doesn't seem like that good a
> >> name to me btw.
> >
> > I copied "OKP" from draft-ietf-jose-cfrg-curves.  Since it has
> > already gone through there I am reluctant to be different.
> >
> > I will re-look at the order and make sure that there is something
> > lying around for the acronym expansion.

Done

> >
> >>
> >> - 12.5: The 1st para seems wrong. (Or at least is unclear to me.)
> >> "Encrypted with <foo> and <bar>" seems ambiguous anyway, does it
> >> mean double encryption or two parallel ciphertexts? (I assume the
> >> former.) What's the algebraic thing you're trying to explain?
> >> It'd be good to provide that for such relatively complex operations
> >> I think. Is this what you mean?
> >>
> >> KW(KDF(DH-shared),CEK)
> >
> > Yes that is the formula and yes it makes sense to document it in =
that
> > manner.

Done

> >
> >>
> >> - Table 22: The EC2 or OKP value is fixed per curve and the
> >> cryptographic function being performed so seems unnecessary. Do you
> >> really need it so? Why? (I'm not buying that some future form of
> >> ECC might mean this is needed btw - and codepoints aren't expensive
> >> here, right? So other forms of ECC can burn codepoints when that's
> >> needed and in the meantime we'd save bytes and complexity.)
> >
> > I am lost and don't understand what you are saying here.
> >
> > * For EC2 key types the curve is fixed, but the cryptographic
> > function is not fixed. * For OKP key types, the curve/cryptographic
> > function pair is fixed.
> >
> > This is analogous to what is happing for the PKIX world.
> >
> > Are you suggesting that something change?  If so what?  (Just so I
> > can evaluate it.)

Request for information

> >
> >>
> >> - Section 15: Do we have any examples of such a profile?  I think
> >> it'd be great if we did and could add an informative reference here
> >> (even if that's to an early I- D).
> >
> > Will add a reference to draft-selander-ace-object-security.  (Which
> > is being discussed in core not ace).

done

> >
> >>
> >> - section 19: I don't get how ECDSA is normative and the cfrg
> >> curves are not. Same for RFC6979. Maybe these all could do with
> >> checking? (No big deal IMO but maybe worth it.)
> >
> > Yes, the cfrg curves should be normative and yes I will go back over
> > the list.

Shifted around a couple of items
> >
> >>
> >> - Appendices A.1 (as already noted) and A.2 are a puzzle. Why say
> >> in the body of the document to do <foo> and then an appendix that
> >> says how to do <not-foo>?
> >
> > Answer above.
> >
> >
> > Jim
> >
> >
> >>
> >> - Appendix C and the implementation status section: Many thanks -
> >> great to see that! (I didn't check 'em though:-)
> >>
> >> - Thanks also for speedily handling the extensive secdir review.
> >>
> >> [2]
> >> https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html
> >>
> >
> >
> > _______________________________________________ COSE mailing list
> > COSE@ietf.org https://www.ietf.org/mailman/listinfo/cose
> >



From nobody Wed Oct  5 20:30:47 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 28B8F127ABE; Wed,  5 Oct 2016 20:30:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 UrfHBfzQOp-I; Wed,  5 Oct 2016 20:30:38 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 503B912944C; Wed,  5 Oct 2016 20:30:38 -0700 (PDT)
Received: from hebrews (24.21.96.37) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Wed, 5 Oct 2016 20:43:54 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: 'Alexey Melnikov' <aamelnikov@fastmail.fm>, 'The IESG' <iesg@ietf.org>
References: <147510124114.16603.14442590762723238530.idtracker@ietfa.amsl.com>
In-Reply-To: <147510124114.16603.14442590762723238530.idtracker@ietfa.amsl.com>
Date: Wed, 5 Oct 2016 20:30:26 -0700
Message-ID: <02eb01d21f81$ff0c63d0$fd252b70$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQFdmcsPCLxivvE/OjaL7TR+h4lxnKGD0Dvw
Content-Language: en-us
X-Originating-IP: [24.21.96.37]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/FqKT7CgbAAl61oyU8BsY4usc_6s>
Cc: cose-chairs@ietf.org, goran.selander@ericsson.com, cose@ietf.org, draft-ietf-cose-msg@ietf.org
Subject: Re: [COSE] Alexey Melnikov's No Objection on draft-ietf-cose-msg-19: (with COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 06 Oct 2016 03:30:40 -0000

Alexey,

I think that I have responded to all of these comments in the draft on =
github.

Jim


> -----Original Message-----
> From: Alexey Melnikov [mailto:aamelnikov@fastmail.fm]
> Sent: Wednesday, September 28, 2016 3:21 PM
> To: The IESG <iesg@ietf.org>
> Cc: draft-ietf-cose-msg@ietf.org; Goeran Selander
> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
> goran.selander@ericsson.com; cose@ietf.org
> Subject: Alexey Melnikov's No Objection on draft-ietf-cose-msg-19: =
(with
> COMMENT)
>=20
> Alexey Melnikov has entered the following ballot position for
> draft-ietf-cose-msg-19: No Objection
>=20
> When responding, please keep the subject line intact and reply to all =
email
> addresses included in the To and CC lines. (Feel free to cut this =
introductory
> paragraph, however.)
>=20
>=20
> Please refer to =
https://www.ietf.org/iesg/statement/discuss-criteria.html
> for more information about IESG DISCUSS and COMMENT positions.
>=20
>=20
> The document, along with other ballot positions, can be found here:
> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>=20
>=20
>=20
> ----------------------------------------------------------------------
> COMMENT:
> ----------------------------------------------------------------------
>=20
> Stephen, I've seen several documents recently that "reference CDDL
> informatively" and I don't believe that. So the whole situation with =
CDDL makes
> me rather unhappy.
>=20
> Comments on the document:
>=20
> This is a well written document, despite its length. Thank you for =
that.
>=20
> Some specific comments:
>=20
> I am pretty sure that the CDDL reference is normative.
>=20
> On page 13: media type syntax reference is outdated, you should =
reference RFC
> 6838, Section 4.2 has relevant ABNF.
>=20
> In Media type registrations:
>=20
> Applications that use this media type: To be identified
>=20
> This answer is not useful, please specify types of applications that =
will be using
> these media types. Something along the lines of what you specified in =
the
> Introduction.
>=20



From nobody Thu Oct  6 04:05:35 2016
Return-Path: <stephen.farrell@cs.tcd.ie>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D62A21295E5; Thu,  6 Oct 2016 04:05:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.297
X-Spam-Level: 
X-Spam-Status: No, score=-7.297 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-2.996, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cs.tcd.ie
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 aabMBOKbc3q1; Thu,  6 Oct 2016 04:05:31 -0700 (PDT)
Received: from mercury.scss.tcd.ie (mercury.scss.tcd.ie [134.226.56.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6161D1295E6; Thu,  6 Oct 2016 04:05:31 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mercury.scss.tcd.ie (Postfix) with ESMTP id 4B52BBE7C; Thu,  6 Oct 2016 12:05:28 +0100 (IST)
Received: from mercury.scss.tcd.ie ([127.0.0.1]) by localhost (mercury.scss.tcd.ie [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dp3k2cfyr4wy; Thu,  6 Oct 2016 12:05:28 +0100 (IST)
Received: from [134.226.36.93] (bilbo.dsg.cs.tcd.ie [134.226.36.93]) by mercury.scss.tcd.ie (Postfix) with ESMTPSA id 118EDBE73; Thu,  6 Oct 2016 12:05:10 +0100 (IST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cs.tcd.ie; s=mail; t=1475751910; bh=0BQPadE0bVVMtqwxJnCtqawug32Is++HwO7J8e35ROo=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=wUoO9PJcYzYS8DtB64WR1kNLSPZ9aQmGkgV4nLYrWyllPaaXfAK1yoNZoNPlXO5kK 4UjzNgh3+HtAmnIuc/VH4OKAhGkaC4YF+xyyjl+Fqu/NQUF9Gw/qmVwSknPmKZuQgO wAVLpRJWT/U5th4kHUZkuZQIBSf2LogTbr2aE7hE=
To: Jim Schaad <ietf@augustcellars.com>, 'The IESG' <iesg@ietf.org>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com> <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie> <02e401d21f80$08265310$1872f930$@augustcellars.com>
From: Stephen Farrell <stephen.farrell@cs.tcd.ie>
Openpgp: id=D66EA7906F0B897FB2E97D582F3C8736805F8DA2; url=
Message-ID: <e6e3a3b9-a4d7-a04c-f8b3-e26a77ac775a@cs.tcd.ie>
Date: Thu, 6 Oct 2016 12:05:10 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0
MIME-Version: 1.0
In-Reply-To: <02e401d21f80$08265310$1872f930$@augustcellars.com>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms000906060104090408010002"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/WBBte2VArGWFWENqwI2CsFcR-ZA>
Cc: cose-chairs@ietf.org, cose@ietf.org, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 06 Oct 2016 11:05:34 -0000

This is a cryptographically signed message in MIME format.

--------------ms000906060104090408010002
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Hi Jim,

On 06/10/16 04:16, Jim Schaad wrote:
> Stephen,
>=20
> Couple of items below asking for input.  However, I think that I have
> dealt with most of the issues and will be pulling them into the
> version on github.

I'll trim to just those input'y bits...


>>>> (2) 3.1, alg: so you're disallowing a setup where the kid
>>>> alone identifies the key and algorithm to the recipient? That
>>>> is used in some IETF protocols (OSPF iirc) so rhat's a pity,
>>>> and will in those (maybe less common) cases consume a few bytes
>>>> that could otherwise be saved.  I think, but am not sure, that
>>>> the WG already discussed this, but if not, maybe worth a
>>>> thought? (Or even a 2nd thought:-) And appendix A.1 is really
>>>> puzzling - as it provides instructions for how to not follow a
>>>> MUST in the body of the document.
>>>=20
>>> I have come around to the feeling that the algorithm needs to be
>>> part of the value that is being authenticated as part of all of
>>> the messages.
>>=20
>> Is that just a feeling of yours or are we confident it represents
>> WG consensus? (Honest question - I just don't recall.)
>=20
> This is a question you would need to ask the chairs rather than me
> because I am a very strong partisan on this issue.  The question was
> discussed multiple times and I think that it was a WG consensus, but
> it is possible that it represents a brow beating from a very strong
> partisan.

Fair enough - cose WG chairs, what do you think?


>>>> (4) Why not make deterministic ECDSA a MUST?  8.1.1 says:=20
>>>> "Applications that specify ECDSA should evaluate the ability to
>>>> get good random number generation and require deterministic
>>>> signatures where poor random number generation exists."  I
>>>> don't think that is sufficiently clear, nor realistic, and I
>>>> don't recall this being discussed on the list (sorry if I'm
>>>> forgetting) and bad random values are a killer flaw here that
>>>> has happened in the wild.
>>>=20
>>> It is not clear to me that many, if any, current packages support
>>> the concept of doing deterministic ECDSA.
>>=20
>> But they don't to COSE either so I'm not clear that's a good=20
>> argument unless there's evidence that crypto libraries likely to be
>> used for COSE won't include deterministic ECDSA. (That last would
>> be a surprise given that deterministic is clearly superior.)
>>=20
>>> If this case it seems to be odd that we would require it.   I can
>>> do some research to figure this out.
>>=20
>> Cool. Be interested in what you find.
>=20
> It seems to be much more widely implemented than I thought.  I have
> sent a note to the COSE mailing list to see if there are objections
> to making this change.

Saw that and thanks. Be interesting to see if anyone objects
to this good change.


>>>> --------------------------------------------------------------------=
--
>>>>
>>>>
>>
>>>>=20
COMMENT:
>>>> --------------------------------------------------------------------=
--
>>>>
>>
>>

>>>> - 3.1, "all the keys may need to be checked" - really?  Or do
>>>> you mean all the keys associated with this kid?
>>>=20
>>> I thought that this said keys associated with the kid.  Did you
>>> not read it this way?  If not then I will look at re-phrasing.
>>>=20
>=20
> Need input

If you said "all the keys associated with this kid may need
to be checked" then I think it'd be clear


>>>> 4.4, last para: I disagree that one must (even lowercase must)=20
>>>> check the signing identity.  That's application behaviour and=20
>>>> should be stated here in such concrete terms. At least s/must=20
>>>> also/may also want to/
>>>=20
>>> What if it is s/one must also/the application must also/
>=20
> Looking for comment

I still think "must" isn't right and "may" is correct


>>>> - Table 22: The EC2 or OKP value is fixed per curve and the=20
>>>> cryptographic function being performed so seems unnecessary. Do
>>>> you really need it so? Why? (I'm not buying that some future
>>>> form of ECC might mean this is needed btw - and codepoints
>>>> aren't expensive here, right? So other forms of ECC can burn
>>>> codepoints when that's needed and in the meantime we'd save
>>>> bytes and complexity.)
>>>=20
>>> I am lost and don't understand what you are saying here.
>>>=20
>>> * For EC2 key types the curve is fixed, but the cryptographic=20
>>> function is not fixed. * For OKP key types, the
>>> curve/cryptographic function pair is fixed.
>>>=20
>>> This is analogous to what is happing for the PKIX world.
>>>=20
>>> Are you suggesting that something change?  If so what?  (Just so
>>> I can evaluate it.)
>=20
> Request for information

I'm suggesting that the key type is not needed once you
know what curve you're dealing with and hence the "MUST
check" is just adding cruft.

Cheers,
S.



--------------ms000906060104090408010002
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC
CvIwggUIMIID8KADAgECAhBPzaE7pzYviUJyhmHTFBdnMA0GCSqGSIb3DQEBCwUAMHUxCzAJ
BgNVBAYTAklMMRYwFAYDVQQKEw1TdGFydENvbSBMdGQuMSkwJwYDVQQLEyBTdGFydENvbSBD
ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEjMCEGA1UEAxMaU3RhcnRDb20gQ2xhc3MgMSBDbGll
bnQgQ0EwHhcNMTYwMjA5MDkyODE1WhcNMTcwMjA5MDkyODE1WjBOMSIwIAYDVQQDDBlzdGVw
aGVuLmZhcnJlbGxAY3MudGNkLmllMSgwJgYJKoZIhvcNAQkBFhlzdGVwaGVuLmZhcnJlbGxA
Y3MudGNkLmllMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtuC0rYze/2JinSra
C9F2RjGdQZjNALLcW9C3WKTwYII3wBslobmHuPEYE5JaGItmzuKnAW619R1rD/kfoNWC19N3
rBZ6UX9Cmb9D9exCwYIwVuSwjrCQWGxgCtNQTrwKzCCpI790GRiMTvxvO7UmzmBrCaBLiZW5
R0fBjK5Yn6hUhAzGBkNbkIEL28cLJqH0yVz7Kl92OlzrQqTPEts5m6cDnNdY/ADfeAX18c1r
dxZqcAxhLotrCqgsVA4ilbQDMMXGTLlB5TP35HeWZuGBU7xu003rLcFLdOkD8xvpJoYZy9Kt
3oABXPS5yqtMK+XCNdqmMn+4mOtLwQSMmPCSiQIDAQABo4IBuTCCAbUwCwYDVR0PBAQDAgSw
MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAJBgNVHRMEAjAAMB0GA1UdDgQWBBQJ
QhvwQ5Fl372Z6xqo6fdn8XejTTAfBgNVHSMEGDAWgBQkgWw5Yb5JD4+3G0YrySi1J0htaDBv
BggrBgEFBQcBAQRjMGEwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLnN0YXJ0c3NsLmNvbTA5
BggrBgEFBQcwAoYtaHR0cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvc2NhLmNsaWVudDEu
Y3J0MDgGA1UdHwQxMC8wLaAroCmGJ2h0dHA6Ly9jcmwuc3RhcnRzc2wuY29tL3NjYS1jbGll
bnQxLmNybDAkBgNVHREEHTAbgRlzdGVwaGVuLmZhcnJlbGxAY3MudGNkLmllMCMGA1UdEgQc
MBqGGGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tLzBGBgNVHSAEPzA9MDsGCysGAQQBgbU3AQIE
MCwwKgYIKwYBBQUHAgEWHmh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeTANBgkqhkiG
9w0BAQsFAAOCAQEArzrSv2C8PlBBmGuiGrzm2Wma46/KHtXmZYS0bsd43pM66Pc/MsqPE0HD
C1GzMFfwB6BfkJn8ijNSIhlgj898WzjvnpM/SO8KStjlB8719ig/xKISrOl5mX55XbFlQtX9
U6MrqRgbDIATxhD9IDr+ryvovDzChqgQj7mt2jYr4mdlRjsjod3H1VY6XglRmaaNGZfsCARM
aE/TU5SXIiqauwt5KxNGYAY67QkOBs7O1FkSXpTk7+1MmzJMF4nP8QQ5n8vhVNseF+/Wm7ai
9mtnrkLbaznMsy/ULo/C2yuLUWTbZZbf4EKNmVdme6tUDgYkFjAFOblfA7W1fSPiQGagYzCC
BeIwggPKoAMCAQICEGunin0K14jWUQr5WeTntOEwDQYJKoZIhvcNAQELBQAwfTELMAkGA1UE
BhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBEaWdpdGFs
IENlcnRpZmljYXRlIFNpZ25pbmcxKTAnBgNVBAMTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24g
QXV0aG9yaXR5MB4XDTE1MTIxNjAxMDAwNVoXDTMwMTIxNjAxMDAwNVowdTELMAkGA1UEBhMC
SUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmlj
YXRpb24gQXV0aG9yaXR5MSMwIQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQTCC
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL192vfDon2D9luC/dtbX64eG3XAtRmv
mCSsu1d52DXsCR58zJQbCtB2/A5uFqNxWacpXGGtTCRk9dEDBlmixEd8QiLkUfvHpJX/xKnm
VkS6Iye8wUbYzMsDzgnpazlPg19dnSqfhM+Cevdfa89VLnUztRr2cgmCfyO9Otrh7LJDPG+4
D8ZnAqDtVB8MKYJL6QgKyVhhaBc4y3bGWxKyXEtx7QIZZGxPwSkzK3WIN+VKNdkiwTubW5PI
dopmykwvIjLPqbJK7yPwFZYekKE015OsW6FV+s4DIM8UlVS8pkIsoGGJtMuWjLL4tq2hYQuu
N0jhrxK1ljz50hH23gA9cbMCAwEAAaOCAWQwggFgMA4GA1UdDwEB/wQEAwIBBjAdBgNVHSUE
FjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwEgYDVR0TAQH/BAgwBgEB/wIBADAyBgNVHR8EKzAp
MCegJaAjhiFodHRwOi8vY3JsLnN0YXJ0c3NsLmNvbS9zZnNjYS5jcmwwZgYIKwYBBQUHAQEE
WjBYMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5zdGFydHNzbC5jb20wMAYIKwYBBQUHMAKG
JGh0dHA6Ly9haWEuc3RhcnRzc2wuY29tL2NlcnRzL2NhLmNydDAdBgNVHQ4EFgQUJIFsOWG+
SQ+PtxtGK8kotSdIbWgwHwYDVR0jBBgwFoAUTgvvGqRAW6UXaYcwyjRoQ9BBrvIwPwYDVR0g
BDgwNjA0BgRVHSAAMCwwKgYIKwYBBQUHAgEWHmh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3Bv
bGljeTANBgkqhkiG9w0BAQsFAAOCAgEAi+P3h+wBi4StDwECW5zhIycjBL008HACblIf26HY
0JdOruKbrWDsXUsiI0j/7Crft9S5oxvPiDtVqspBOB/y5uzSns1lZwh7sG96bYBZpcGzGxpF
NjDmQbcM3yl3WFIRS4WhNrsOY14V7y2IrUGsvetsD+bjyOngCIVeC/GmsmtbuLOzJ606tEc9
uRbhjTu/b0x2Fo+/e7UkQvKzNeo7OMhijixaULyINBfCBJb+e29bLafgu6JqjOUJ9eXXj20p
6q/CW+uVrZiSW57+q5an2P2i7hP85jQJcy5j4HzA0rSiF3YPhKGAWUxKPMAVGgcYoXzWydOv
Z3UDsTDTagXpRDIKQLZo02wrlxY6iMFqvlzsemVf1odhQJmi7Eh5TbxI40kDGcBOBHhwnaOu
mZhLP+SWJQnjpLpSlUOj95uf1zo9oz9e0NgIJoz/tdfrBzez76xtDsK0KfUDHt1/q59BvDI7
RX6gVr0fQoCyMczNzCTcRXYHY0tq2J0oT+bsb6sH2b4WVWAiJKnSYaWDjdA70qHX4mq9MIjO
/ZskmSY8wtAk24orAc0vwXgYanqNsBX5Yv4sN4Z9VyrwMdLcusP7HJgRdAGKpkR2I9U4zEsN
JQJewM7S4Jalo1DyPrLpL2nTET8ZrSl5Utp1UeGp/2deoprGevfnxWB+vHNQiu85o6MxggPM
MIIDyAIBATCBiTB1MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEpMCcG
A1UECxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIzAhBgNVBAMTGlN0YXJ0
Q29tIENsYXNzIDEgQ2xpZW50IENBAhBPzaE7pzYviUJyhmHTFBdnMA0GCWCGSAFlAwQCAQUA
oIICEzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xNjEwMDYx
MTA1MTBaMC8GCSqGSIb3DQEJBDEiBCCYj+wGvOc3xy4nu18NkTwHpKORcJC7bp0YhysK+EMF
HjBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCGSAFlAwQBKjALBglghkgBZQMEAQIwCgYIKoZIhvcN
AwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMC
AgEoMIGaBgkrBgEEAYI3EAQxgYwwgYkwdTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0
Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMw
IQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQQIQT82hO6c2L4lCcoZh0xQXZzCB
nAYLKoZIhvcNAQkQAgsxgYyggYkwdTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29t
IEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYD
VQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQQIQT82hO6c2L4lCcoZh0xQXZzANBgkq
hkiG9w0BAQEFAASCAQANIeF5mmJ2JNvE0//p1vgQgpW5etEg3zcwp/Hk85T+TVjBsAqbDZnX
62pJb2vC3Wi7gPYp1Ce5RIm9ehUftubpkfeM7rmNDZ9euguW2qTgG90dY0dwzpyxsdVW3FlA
KuAlb/LibWi1/OmKl8MYCDoUCXydS3JHsuwVxGKeNVi+uCzec8OvTlJ1vjSX4YFwQDe8W0oM
AHzEYvYgXyWM91/CLJGHiqGljr9HoBehmyIxqLZFCVSZlduO1Kxz3NRnKH0/kaTWOmV/JtWV
2gpVrzQPLpMjjyAS9lVV62bxnY+Y1XajXDaBlcHBzJZ7qrvmXyLv3UQva+eIKE+x1j5Fc6cT
AAAAAAAA
--------------ms000906060104090408010002--


From nobody Thu Oct  6 19:04:46 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 79F9E1294E0; Thu,  6 Oct 2016 19:04:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 Xbzj1dkHIXo9; Thu,  6 Oct 2016 19:04:38 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 661AE129553; Thu,  6 Oct 2016 19:04:38 -0700 (PDT)
Received: from hebrews (192.168.1.152) by mail2.augustcellars.com (192.168.1.201) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 6 Oct 2016 19:17:33 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>, 'The IESG' <iesg@ietf.org>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com> <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie> <02e401d21f80$08265310$1872f930$@augustcellars.com> <e6e3a3b9-a4d7-a04c-f8b3-e26a77ac775a@cs.tcd.ie>
In-Reply-To: <e6e3a3b9-a4d7-a04c-f8b3-e26a77ac775a@cs.tcd.ie>
Date: Thu, 6 Oct 2016 19:04:07 -0700
Message-ID: <043201d2203f$188e8eb0$49abac10$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQM0sPyC3CV9N63JinowM6PtUp5t4AEQq3b7AkHo5xsCKTpUgQIcwnvenZpT1gA=
Content-Language: en-us
X-Originating-IP: [192.168.1.152]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/wkB2vx-AvWnXncNsapyjLn8TG1I>
Cc: cose-chairs@ietf.org, goran.selander@ericsson.com, draft-ietf-cose-msg@ietf.org, cose@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 07 Oct 2016 02:04:40 -0000

> -----Original Message-----
> From: COSE [mailto:cose-bounces@ietf.org] On Behalf Of Stephen Farrell
> Sent: Thursday, October 06, 2016 4:05 AM
> To: Jim Schaad <ietf@augustcellars.com>; 'The IESG' <iesg@ietf.org>
> Cc: cose-chairs@ietf.org; cose@ietf.org; draft-ietf-cose-msg@ietf.org;
> goran.selander@ericsson.com
> Subject: Re: [COSE] Stephen Farrell's Discuss on =
draft-ietf-cose-msg-19: (with
> DISCUSS and COMMENT)
>=20
>=20
> Hi Jim,
>=20
> On 06/10/16 04:16, Jim Schaad wrote:
> > Stephen,
> >
> > Couple of items below asking for input.  However, I think that I =
have
> > dealt with most of the issues and will be pulling them into the
> > version on github.
>=20
> I'll trim to just those input'y bits...
>=20
>=20
> COMMENT:
> >>>> =
-------------------------------------------------------------------
> >>>> ---
> >>>>
> >>
> >>
>=20
> >>>> - 3.1, "all the keys may need to be checked" - really?  Or do you
> >>>> mean all the keys associated with this kid?
> >>>
> >>> I thought that this said keys associated with the kid.  Did you =
not
> >>> read it this way?  If not then I will look at re-phrasing.
> >>>
> >
> > Need input
>=20
> If you said "all the keys associated with this kid may need to be =
checked" then I
> think it'd be clear

That seems fine - I'll get this done.

>=20
>=20
> >>>> 4.4, last para: I disagree that one must (even lowercase must)
> >>>> check the signing identity.  That's application behaviour and
> >>>> should be stated here in such concrete terms. At least s/must
> >>>> also/may also want to/
> >>>
> >>> What if it is s/one must also/the application must also/
> >
> > Looking for comment
>=20
> I still think "must" isn't right and "may" is correct

I think you are wrong, but it is not worth arguing about.  I'll get this =
in.

>=20
>=20
> >>>> - Table 22: The EC2 or OKP value is fixed per curve and the
> >>>> cryptographic function being performed so seems unnecessary. Do =
you
> >>>> really need it so? Why? (I'm not buying that some future form of
> >>>> ECC might mean this is needed btw - and codepoints aren't =
expensive
> >>>> here, right? So other forms of ECC can burn codepoints when =
that's
> >>>> needed and in the meantime we'd save bytes and complexity.)
> >>>
> >>> I am lost and don't understand what you are saying here.
> >>>
> >>> * For EC2 key types the curve is fixed, but the cryptographic
> >>> function is not fixed. * For OKP key types, the =
curve/cryptographic
> >>> function pair is fixed.
> >>>
> >>> This is analogous to what is happing for the PKIX world.
> >>>
> >>> Are you suggesting that something change?  If so what?  (Just so I
> >>> can evaluate it.)
> >
> > Request for information
>=20
> I'm suggesting that the key type is not needed once you know what =
curve you're
> dealing with and hence the "MUST check" is just adding cruft.

Right - so this is what an EC2 key looks like:

{
    1:2,
    -1:1,=20
    -2:h'65eda5...de439c08551d',=20
    -3:h'1e52ed...cd0084d19c'
  }

A shared secret key looks like:

{
   1:4,=20
    -1:h'849b57...ea6c427188'
  },

And a hypothetical RSA key would look like

{
    1:3,
    -1:h'83425...25239fa',
   -2:3
}

Since label for curve is '-1', one would need to infer that it was a =
curve by being an integer and then based on the curve know what the rest =
of the parameters are.  The key type ('1') lets you know what the =
negative labels are.  So you cannot infer that the curve field is a =
curve field based on the text value as the same label is used multiple =
ways for different key types.

Jim


>=20
> Cheers,
> S.
>=20



From nobody Mon Oct 10 20:24:36 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: cose@ietf.org
Delivered-To: cose@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id D68D9129440; Mon, 10 Oct 2016 20:24:33 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.34.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <147615627387.31502.6630928920547397097.idtracker@ietfa.amsl.com>
Date: Mon, 10 Oct 2016 20:24:33 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/kxFwauz32ZE11BYbT5tbI4rgOB4>
Cc: cose@ietf.org
Subject: [COSE] I-D Action: draft-ietf-cose-msg-20.txt
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 11 Oct 2016 03:24:35 -0000

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 of the IETF.

        Title           : CBOR Object Signing and Encryption (COSE)
        Author          : Jim Schaad
	Filename        : draft-ietf-cose-msg-20.txt
	Pages           : 119
	Date            : 2016-10-10

Abstract:
   Concise Binary Object Representation (CBOR) is data format designed
   for small code size and small message size.  There is a need for the
   ability to have basic security services defined for this data format.
   This document defines the CBOR Object Signing and Encryption (COSE)
   specification.  This specification describes how to create and
   process signature, message authentication codes and encryption using
   CBOR for serialization.  This specification additionally specifies
   how to represent cryptographic keys using CBOR.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-cose-msg/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-cose-msg-20

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-cose-msg-20


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/


From nobody Mon Oct 10 20:26:14 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0E91F12945B for <cose@ietfa.amsl.com>; Mon, 10 Oct 2016 20:26:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 7aI7LUtOAJKE for <cose@ietfa.amsl.com>; Mon, 10 Oct 2016 20:26:10 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 134B712944E for <cose@ietf.org>; Mon, 10 Oct 2016 20:26:10 -0700 (PDT)
Received: from hebrews (24.21.96.37) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Mon, 10 Oct 2016 20:39:23 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: <cose@ietf.org>
References: <147615627387.31502.6630928920547397097.idtracker@ietfa.amsl.com>
In-Reply-To: <147615627387.31502.6630928920547397097.idtracker@ietfa.amsl.com>
Date: Mon, 10 Oct 2016 20:26:00 -0700
Message-ID: <091401d2236f$318b9920$94a2cb60$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQIutndJi5asO1zgR2rXMt5lVzvX9Z/pcUew
Content-Language: en-us
X-Originating-IP: [24.21.96.37]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/aRHVYzm35HfTH9p4A56WNJtemI8>
Subject: [COSE] FW:  I-D Action: draft-ietf-cose-msg-20.txt
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 11 Oct 2016 03:26:13 -0000

This draft should address all IESG comments.  It does not address the IANA
issues, that version should be up by the start of next week.

> -----Original Message-----
> From: COSE [mailto:cose-bounces@ietf.org] On Behalf Of internet-
> drafts@ietf.org
> Sent: Monday, October 10, 2016 8:25 PM
> To: i-d-announce@ietf.org
> Cc: cose@ietf.org
> Subject: [COSE] I-D Action: draft-ietf-cose-msg-20.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 of the
IETF.
> 
>         Title           : CBOR Object Signing and Encryption (COSE)
>         Author          : Jim Schaad
> 	Filename        : draft-ietf-cose-msg-20.txt
> 	Pages           : 119
> 	Date            : 2016-10-10
> 
> Abstract:
>    Concise Binary Object Representation (CBOR) is data format designed
>    for small code size and small message size.  There is a need for the
>    ability to have basic security services defined for this data format.
>    This document defines the CBOR Object Signing and Encryption (COSE)
>    specification.  This specification describes how to create and
>    process signature, message authentication codes and encryption using
>    CBOR for serialization.  This specification additionally specifies
>    how to represent cryptographic keys using CBOR.
> 
> 
> The IETF datatracker status page for this draft is:
> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
> 
> There's also a htmlized version available at:
> https://tools.ietf.org/html/draft-ietf-cose-msg-20
> 
> A diff from the previous version is available at:
> https://www.ietf.org/rfcdiff?url2=draft-ietf-cose-msg-20
> 
> 
> 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
> COSE@ietf.org
> https://www.ietf.org/mailman/listinfo/cose


From nobody Mon Oct 10 20:27:51 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D56DA12944E; Mon, 10 Oct 2016 20:27:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.897
X-Spam-Level: 
X-Spam-Status: No, score=-4.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-2.996, SPF_PASS=-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 DlhAhKpmms_X; Mon, 10 Oct 2016 20:27:46 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C9317129440; Mon, 10 Oct 2016 20:27:45 -0700 (PDT)
Received: from hebrews (24.21.96.37) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Mon, 10 Oct 2016 20:41:00 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>, 'The IESG' <iesg@ietf.org>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com> <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie>
In-Reply-To: <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie>
Date: Mon, 10 Oct 2016 20:27:37 -0700
Message-ID: <091901d2236f$6be6de40$43b49ac0$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQM0sPyC3CV9N63JinowM6PtUp5t4AEQq3b7AkHo5xudwufnoA==
Content-Language: en-us
X-Originating-IP: [24.21.96.37]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/IySn6segwvUwLAKgddhZGfeZanc>
Cc: cose-chairs@ietf.org, cose@ietf.org, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 11 Oct 2016 03:27:50 -0000

I have just published a draft -20 of the document.

I believe that this document addresses all of the issues that have been =
raised by the IESG.

This document does not address the blocking IANA issues.  I should have =
these addressed and a new version published by the start of next week.

Jim

> -----Original Message-----
> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie]
> Sent: Monday, October 03, 2016 3:16 AM
> To: Jim Schaad <ietf@augustcellars.com>; 'The IESG' <iesg@ietf.org>
> Cc: cose-chairs@ietf.org; goran.selander@ericsson.com; cose@ietf.org; =
draft-
> ietf-cose-msg@ietf.org
> Subject: Re: [COSE] Stephen Farrell's Discuss on =
draft-ietf-cose-msg-19: (with
> DISCUSS and COMMENT)
>=20
>=20
> Hi Jim,
>=20
> On 03/10/16 06:36, Jim Schaad wrote:
> > Stephen,
> >
> > Answers and questions interspersed below along with some - yes I =
need
> > to do that.  I should be able to get to those in the first half of
> > this week.  Am building a github branch for responses if you want to
> > look at things as we go along.
>=20
> Good stuff. Some answers below where they seem useful.
>=20
> >
> > Jim
> >
> >
> >> -----Original Message----- From: Stephen Farrell
> >> [mailto:stephen.farrell@cs.tcd.ie] Sent: Wednesday, September 28,
> >> 2016 5:39 AM To: The IESG <iesg@ietf.org> Cc:
> >> draft-ietf-cose-msg@ietf.org; Goeran Selander
> >> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
> >> goran.selander@ericsson.com; cose@ietf.org Subject: Stephen
> >> Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and
> >> COMMENT)
> >>
> >> Stephen Farrell has entered the following ballot position for
> >> draft-ietf-cose-msg-19: Discuss
> >>
> >> When responding, please keep the subject line intact and reply to
> >> all email addresses included in the To and CC lines. (Feel free to
> >> cut this introductory paragraph, however.)
> >>
> >>
> >> Please refer to
> >> https://www.ietf.org/iesg/statement/discuss-criteria.html for more
> >> information about IESG DISCUSS and COMMENT positions.
> >>
> >>
> >> The document, along with other ballot positions, can be found
> >> here: https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
> >>
> >>
> >>
> >> =
----------------------------------------------------------------------
> >>
> >>
> DISCUSS:
> >> =
----------------------------------------------------------------------
> >>
> >>
> >>
> >>
> I think this is a fine design and well documented, (though
> >> long) and I'm sure we'll clear up the points below quickly enough.
> >> Some of them may need some discussion but others are mostly
> >> checking.
> >>
> >> (1) general: I think the inclusion of CDDL is an error here and
> >> we'd be better off having someone (if interested) generate the CDDL
> >> schema stuff later on when/if CDDL is standardised/stabilised.
> >> Including it now creates the potential for breakage unnecessarily
> >> IMO. However, the WG did explicitly discuss iirc, so this is just a
> >> personal comment that I'm also in the rough on inclusion of CDDL in
> >> this spec. (As an example, for someone not familiar with CDDL, the
> >> inclusion of fragments interspersed in the text is distracting and
> >> potentially puzzling when one gets to the end of section 3.)
> >> However, I do think there are places where the CDDL is effectively
> >> normative despite what is said in the introduction, the ones I've
> >> spotted are below. (Happy to chat about 'em as I may be mistaken.)
> >> I also wondered if one could really implement this if all the CDDL
> >> was removed from the text, which is what I think would be required
> >> if CDDL were really to be informative. Anyway the places I think
> >> some more text may be needed are:
> >
> >
> > I build a version of the document with no CDDL, I have added some
> > pointers to the use of "/" and "[+ FOO]" to the CDDL preview section
> > at the top of the document.  I have also identified the structures
> > Sig_structure and Enc_structure like I did the Mac_structure in the
> > text.  (Also found a COSE_Encrypt that should have been a
> > COSE_Encrypt0.)
> >
> >>
> >> (1.1) table 2: As-is the value type column seems to me to make CDDL
> >> normative. I don't see the natural language version that you said
> >> would be normative.
> >>
> >> (1.2) 4.4, 2nd list point 1: the use of Sig_structure makes the
> >> CDDL normative. (Same with the use in 4.5 and Enc_structure in
> >> 5.3.)
> >>
> >> (1.3) 7.1, the key_ops value is only specified in CDDL, in Table 3.
> >> (It is well- defined below the table in text though, so this one's
> >> borderline.)
> >
> > The description for key_ops points to Table 3, so I think it is =
fully
> > supplied.
> >
> >>
> >> (1.4) 11.2: it's not clear to me that a reader knows how to handle
> >> decoding of the two optional fields at the end (other and
> >> SuppPrivInfo) without looking at the CDDL. Can you explain? (That
> >> might be just my ignorance of CBOR, but wanted to check.)
> >
> > I am not sure that I would know how to do it even with CDDL, however
> > in this case that is a moot question as this structure is only
> > encoded and never transmitted or decoded.
> >
> > Will also note, that you have better eyes than me as I do not see =
two
> > optional fields at the end.  I see one optional field at the end of
> > two different arrays, so that would be a CBOR ignorance I think.
>=20
> I'd say we should be able to kill this discuss point easily
> with the changes you're making.
>=20
> >
> >>
> >> (2) 3.1, alg: so you're disallowing a setup where the kid alone
> >> identifies the key and algorithm to the recipient? That is used in
> >> some IETF protocols (OSPF iirc) so rhat's a pity, and will in
> >> those (maybe less common) cases consume a few bytes that could
> >> otherwise be saved.  I think, but am not sure, that the WG already
> >> discussed this, but if not, maybe worth a thought? (Or even a 2nd
> >> thought:-) And appendix A.1 is really puzzling - as it provides
> >> instructions for how to not follow a MUST in the body of the
> >> document.
> >
> > I have come around to the feeling that the algorithm needs to be =
part
> > of the value that is being authenticated as part of all of the
> > messages.
>=20
> Is that just a feeling of yours or are we confident it
> represents WG consensus? (Honest question - I just don't
> recall.)
>=20
> > This being the case, the only what that it can be enforced
> > is to make the algorithm be a part of the protected attributes.   In
> > my mind the cost of the 2 bytes for this purpose seems to be
> > sufficiently small that including it does not seem to be a large
> > burden.
> >
> > There were several people in the IoT world who felt as you that one
> > could have an implicit algorithm and they did not want to spend the
> > two bytes for the purpose of including it in the AEAD.  This being
> > the case, I did provide the appendix to tell how to do this.  I
> > expect that people are going to do this and not following the
> > guidance that was provided about making sure that the algorithm is
> > authenticated.
>=20
> Right, but isn't that then pretty much an RFC6919 "MUST, but
> we know you (sometimes) won't"? I just don't see how that helps
> with interop.
>=20
> I do agree that it's conceivable that the lack of an alg in
> a protocol could lead to vulnerabilities. However, there are
> clearly cases where a protocol can be secure without an
> explicit alg, and we know that folks will do that optimisation
> sometimes, so I think the most that'd be right is a SHOULD,
> but likely a MAY is even better. (If however, there's a clear
> WG consensus to take the RFC6919 route, then I'll get out of
> the way, but with an "I told you so" in my back pocket;-)
>=20
> >
> >>
> >> (3) 7.1: key_op 8, "derive bits" - I don't think this usage is
> >> clear enough, can you say what's meant here?
> >
> > Derive bits was added to the JOSE documents in response to the W3C
> > WebCrypto work where they wanted to be able to control that =
something
> > could derive bits but not derive a key.  These were initially not
> > present in this document but was added by request so that it would
> > match what the JWK document had.  The description in JWK is "derive
> > bits not to be used as a key".  Does that read better?  If so I can
> > change this.
>=20
> That is clearer yes. Maybe add a pointer to the JWK doc as well?
> I'm not convinced of the utility myself though but so long as
> it's clearly described then that'll sort this discuss point.
>=20
> >
> >>
> >> (4) Why not make deterministic ECDSA a MUST?  8.1.1 says:
> >> "Applications that specify ECDSA should evaluate the ability to get
> >> good random number generation and require deterministic signatures
> >> where poor random number generation exists."  I don't think that is
> >> sufficiently clear, nor realistic, and I don't recall this being
> >> discussed on the list (sorry if I'm forgetting) and bad random
> >> values are a killer flaw here that has happened in the wild.
> >
> > It is not clear to me that many, if any, current packages support =
the
> > concept of doing deterministic ECDSA.
>=20
> But they don't to COSE either so I'm not clear that's a good
> argument unless there's evidence that crypto libraries likely
> to be used for COSE won't include deterministic ECDSA. (That
> last would be a surprise given that deterministic is clearly
> superior.)
>=20
> > If this case it seems to be
> > odd that we would require it.   I can do some research to figure =
this
> > out.
>=20
> Cool. Be interested in what you find.
>=20
> >
> >>
> >> (5) Table 6, is this 25519 or 448? Where does it say?  Sorry if I'm
> >> being dumb here, but I don't see where you say which curve is
> >> specified, the definition of 'crv' says defined for this alg which
> >> I assume means listed in Table 6.
> >
> > The value of 'crv' is defined in table 22.  The same algorithm is
> > used to identify all of the curves.
>=20
> I'm still not getting that but didn't yet re-read the doc. I will
> as we go so let's punt on this for the moment.
>=20
> >
> >>
> >> (6) section 10: why MUST the kty values be present always? That
> >> seems unnecessary in some contexts and I don't get a security
> >> reason why it's needed e.g. if there's an alg id somewhere - can
> >> you explain? I can see folks omitting this leading to interop
> >> problems for not useful reasons. (Same comment applies in other
> >> cases where kty is a MUST, e.g. 12.1.2, 12.2.1.)
> >
> > This follows what JOSE did in in RFC 7517 (JWK).  I might, or might
> > not, agree with you that specifying an algorithm would be =
sufficient.
> > Consider one of the ECDH-ES variants.  It is defined to work with
> > keys of the key type 'EC2' as well as 'OKP'.  These two key types
> > have different sets of required parameters but some of them overlap.
> > Specifically, 'x' is in both but 'y' is only in one of them.  In =
this
> > case the additional parameter of 'crv' could also be used to
> > distinguish them but a generic piece of code looking only at the
> > algorithm would not have enough detail.
>=20
> Hmm. Still not convinced, but I'll look again as we go. This is
> I guess similar to the issue with the alg as a MUST in that we
> can be pretty sure some folks will ignore that MUST I think.
>=20
> >
> >>
> >> (7) section 11: given that we know people will use human memorable
> >> secrets, why have you not defined codepoints for PBES2 (or the more
> >> commonly supported?) PBDKF2?  I'm fine if there's a reason, or even
> >> if it was discussed by the WG, but just wanted to check as I'd
> >> worry that folks will use the ones defined here with human
> >> memorable secrets no matter what the spec says so giving 'em
> >> something more tailored might be better. (OTOH, one could argue
> >> that making this apparent might be worse too I guess.)
> >
> > This was part of the secondary algorithm draft which the WG decided
> > not to do as part of the 'we are not going to do RSA at this time'.
> > I expect that I will write an individual draft to cover these.  It
> > was also not clear to me that small devices were going to be using
> > this type of secret to start with in any event.
>=20
> Fair enough. Consider this bit sorted.
>=20
> >
> >>
> >> (8) 12.4: Why is no ephemeral-ephemeral (E-E) variant supported?
> >> Some protocols will allow for that and it seems wrong to disallow
> >> it when it could relatively easily be supported. For some
> >> applications where content is dealt with in store-and-forward mode,
> >> there may be situations (e.g. provisioning, "introduction") where
> >> E-E could be used. As-is, applications wanting that will have to
> >> hack the recipient DH-public into a home-grown structure (or use
> >> one of the COSE_Key labels from Table 19) and then treat that as
> >> ES-DH. That seems likely to lead to non-interop or security errors
> >> being made. I'd be fine if you even said how to re-use the
> >> structures currently defined for E-E btw and didn't introduce new
> >> structures.
> >
> > See https://datatracker.ietf.org/doc/draft-selander-ace-cose-ecdhe/
> > for how this is being addressed.
>=20
> Hmm. No 25519? Odd that. But fair enough I suppose if it's being
> handled somewhere.
>=20
> >
> >>
> >> (9) 16.4: I'm not sure expert review is right here.  What if the
> >> expert is asked to add SM2/SM4 while there is still no widely
> >> available non-Chinese text to describe those?  I think the expert
> >> ought enforce a "specification required" rule at least and maybe
> >> more.  (And ought never allow an algorithm with no specification
> >> publicly available.)
> >
> > This view was advanced by several people in the WG as well.  My =
worry
> > about this position is that it might encourage point squatting.  I
> > cannot respond for other experts, but I would ask for a usable
> > description of the algorithm.  If I was not familiar I would also
> > request either additional review from CFRG and/or conference papers
> > on the algorithm.  If it was not a publicly available specification,
> > I would then assign a "non-optimal" point.  My expectation is that
> > there are going to be more small networks of IoT devices than there
> > are for TLS systems.  This means that it is more likely that
> > localized algorithms may be desired.
>=20
> Yeah but desired-by-someone !=3D desirable-for-the-Internet :-)
>=20
> I would worry about less well reviewed lightweight crypto in this
> space - that'll be attractive for implementers/vendors but might
> not be a good plan.
>=20
> >
> > I am not against raising the level to specification required, but
> > would worry about point squatting.
> >
> > If this is not "expert review" what do you believe would be a better
> > requirement?  I do not believe this should be dumped on either the
> > IESG or CFRG.
>=20
> I think expert review with specification required is maybe right
> with the guidance tightened up along the lines you state above.
> (But see below.)
>=20
> >
> >>
> >> (10) 16.4 (and elsewhere maybe) I think this registry is missing a
> >> column - as is being done in the TLS WG, I think there should be a
> >> column saying if the IETF is happy enough with an algorithm and
> >> that getting a "Y" in that ought require standards action. (Or some
> >> similar scheme.) I don't think the standards-track range of
> >> codepoints is enough here, e.g. at some time we will want to
> >> deprecate things, and at other times we may want to define things
> >> for the future on the standards-track but not (yet) recommend their
> >> use.  The last bullet in 16.11 does help here, but I'd argue that
> >> we need to do more to protect the expert (and implementers) from
> >> the trickle of vanity/national algorithms/curves that are always
> >> being proposed.
> >
> > I would not object to doing this.  While I don't know if the TLS
> > experiment on this is going to work, I don't have any problems with
> > participating in the same experiment here as well.
>=20
> Great. If we do that then I think the expert's job can be easier
> as it'll be much clearer what the IETF likes. (And that'd sort
> my discuss point #9 too.)
>=20
> >
> > I am not sure what we should say for deprecation of algorithms here
> > should be, they are going to live for a long time and new systems
> > will probably ship with the same algorithms as long as they need to
> > interoperate.  Consider the lighting use case that is being fought
> > over in ACE right now.  You cannot put a new light bulb in that uses
> > a different algorithm unless you are willing to start broadcasting
> > two messages.  This is probably going to lead to very slow
> > deprecation over time.
>=20
> Well, it's always slow. But I think if we can clearly see from the
> registry what the IETF currently likes, then implementers should
> have an easier time. I'd have no objection if the extra column
> wasn't just a binary y/n, but I think it's hard to come up with
> good semantics for anything else. (Where "y" just means that the
> IETF currently likes the registry entry.)
>=20
> >
> >
> >>
> >>
> >> =
----------------------------------------------------------------------
> >>
> >>
> COMMENT:
> >> =
----------------------------------------------------------------------
> >>
>=20
> I'll go over these later if that's ok, gotta do another thing
> right now;-) Please ping me if you need a response before you
> do edits though.
>=20
> Cheers,
> S.
>=20
>=20
> >>
> >>
> >>
> >>
> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs
> re-phrasing.
> >
> > Which is unclear, the problem or the action?
> >
> >>
> >> - 1.5: I'd add a reference to RFC5116.
> >
> > Reasonable and done.
> >
> >>
> >> - 3.1, crit: The statement that security libraries or application
> >> code can handle this is odd - isn't that an API requirement? (I'm
> >> not objecting, but it's odd.)
> >
> > I agree that this is an API requirement.
> >
> >>
> >> - 3.1, "content type" is the space there intended?  If so, maybe
> >> add quotes or a comma or something to disambiguate the name and
> >> descriptive text? Same for other multi-word names here.
> >
> > Given that this is the second person suggesting this (also in =
Gen-Art
> > review). I am going to add a colon to deal with this.
> >
> >>
> >> - 3.1, "all the keys may need to be checked" - really?  Or do you
> >> mean all the keys associated with this kid?
> >
> > I thought that this said keys associated with the kid.  Did you not
> > read it this way?  If not then I will look at re-phrasing.
> >
> >>
> >> - 3.1, IV/Partial IV - I think it's an error to define this here.
> >> What if some algorithm can't use that kind of (0|partial)^IV but
> >> needs something else instead? Shouldn't all mechanism for handling
> >> IVs be defined by the algorithm/mode? (This isn't a discuss because
> >> I can't think of a good counter example and there'd be other ways
> >> around the problem too probably.)
> >
> > I was originally going to make IV an algorithm specific parameter
> > rather than a common parameter.  It was just so common that it =
seemed
> > to be better to only define it once.  Any algorithm that needed
> > different behavior could easily define an algorithm specific
> > parameter for IV work instead.  So as you say an easy work around
> > exists if needed.
> >
> >>
> >> - 4.1: signingTime is often needed with signatures. Isn't that
> >> common enough to want to define a way to do it, as an option?
> >
> > There was a signingTime parameter in the original document.  The WG
> > decided that it was not going to be needed enough at this point in
> > time to have it defined now.  Additionally, there were some =
arguments
> > over the format of the time field as some systems support a real
> > clock and some only support a relative clock to when they were last
> > started up.
> >
> >>
> >> - 4.1: If I sign with a private key corresponding to a 2047 or 2049
> >> bit RSA public key modulus, then is it clear what to put where in
> >> the signature bstr? (Yes, that'd be dumb, but I wonder is what to
> >> do well enough defined, as I don't think you can rule it out in all
> >> cases.) Since you don't include RSA here I guess it's ok to skip
> >> this, but maybe you need to say that such issues need to be handled
> >> in the definition of signature algs.
> >
> > I would say that this is not real, but I looked carefully at this
> > when doing the EdDSA algorithms.  I will look at this and see if I
> > cannot find some way to state this either generally or specifically.
> >
> >>
> >> - 4.3: "cannot bleed" isn't clear enough maybe, give an example
> >> perhaps where the decoder can fail to disambiguate a boundary?
> >
> > I'll look at this and see if I cannot come up with better language.
> > However, there are no decode issues here.
> >
> >>
> >> 4.4, last para: I disagree that one must (even lowercase must)
> >> check the signing identity.  That's application behaviour and
> >> should be stated here in such concrete terms. At least s/must
> >> also/may also want to/
> >
> > What if it is s/one must also/the application must also/
> >
> >>
> >> (Note - the above were comments on -18, but also seem to work based
> >> on -19. Subsequent comments are on -19.)
> >>
> >> - 7.1: "starting at the same base IV" - are you missing "and
> >> incrementing" or something? Otherwise I think this seems unclear.
> >
> > The "and incrementing" to me was implied in the first paragraph with
> > the fact that this is intended to be used with the "partial IV"
> > parameter.  I'll see if I can make this cleaner.
> >
> >>
> >> - 8.2.1: is the phrasing of the 1st para right? would it be better
> >> to say that the value of a key for EdDSA MUST NOT be used for ECDH
> >> and vice-versa. (Or maybe points instead of keys?)
> >
> > Yeah, reads messy - let me think about it.
> >
> >>
> >> - 8.2.1: you need a reference for batch signing. (Or could it be
> >> omitted?)
> >
> > I kept asking for one in the EdDSA document and never got one there,
> > so I don't have one to push in here.
> >
> >>
> >> - section 9: I think it'd be good to be clearer about the strength
> >> of truncated MAC values. (And I can't recall the right thing to say
> >> off the top of my head:-)
> >
> > When I was doing research about this, I could not find any solid
> > results on truncated MAC values that people seemed to agree on. Most
> > people seem to look at this as just a birthday attack so I would =
need
> > to do more searching to find something useful.
> >
> >>
> >> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be
> >> better to refer to the draft as that should be published soon.
> >> (Same for RFC3447 btw.)
> >
> > Will do.
> >
> >>
> >> [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
> >>
> >> - 12.4: Why "OKP"? And saying there's no "simple way" to do point
> >> validation seems fairly opaque, a reference there or explanatory
> >> text would be good. (Ah, it's in section 13, maybe shuffle the text
> >> or include a pointer.) Octet key pair doesn't seem like that good a
> >> name to me btw.
> >
> > I copied "OKP" from draft-ietf-jose-cfrg-curves.  Since it has
> > already gone through there I am reluctant to be different.
> >
> > I will re-look at the order and make sure that there is something
> > lying around for the acronym expansion.
> >
> >>
> >> - 12.5: The 1st para seems wrong. (Or at least is unclear to me.)
> >> "Encrypted with <foo> and <bar>" seems ambiguous anyway, does it
> >> mean double encryption or two parallel ciphertexts? (I assume the
> >> former.) What's the algebraic thing you're trying to explain?
> >> It'd be good to provide that for such relatively complex operations
> >> I think. Is this what you mean?
> >>
> >> KW(KDF(DH-shared),CEK)
> >
> > Yes that is the formula and yes it makes sense to document it in =
that
> > manner.
> >
> >>
> >> - Table 22: The EC2 or OKP value is fixed per curve and the
> >> cryptographic function being performed so seems unnecessary. Do you
> >> really need it so? Why? (I'm not buying that some future form of
> >> ECC might mean this is needed btw - and codepoints aren't expensive
> >> here, right? So other forms of ECC can burn codepoints when that's
> >> needed and in the meantime we'd save bytes and complexity.)
> >
> > I am lost and don't understand what you are saying here.
> >
> > * For EC2 key types the curve is fixed, but the cryptographic
> > function is not fixed. * For OKP key types, the curve/cryptographic
> > function pair is fixed.
> >
> > This is analogous to what is happing for the PKIX world.
> >
> > Are you suggesting that something change?  If so what?  (Just so I
> > can evaluate it.)
> >
> >>
> >> - Section 15: Do we have any examples of such a profile?  I think
> >> it'd be great if we did and could add an informative reference here
> >> (even if that's to an early I- D).
> >
> > Will add a reference to draft-selander-ace-object-security.  (Which
> > is being discussed in core not ace).
> >
> >>
> >> - section 19: I don't get how ECDSA is normative and the cfrg
> >> curves are not. Same for RFC6979. Maybe these all could do with
> >> checking? (No big deal IMO but maybe worth it.)
> >
> > Yes, the cfrg curves should be normative and yes I will go back over
> > the list.
> >
> >>
> >> - Appendices A.1 (as already noted) and A.2 are a puzzle. Why say
> >> in the body of the document to do <foo> and then an appendix that
> >> says how to do <not-foo>?
> >
> > Answer above.
> >
> >
> > Jim
> >
> >
> >>
> >> - Appendix C and the implementation status section: Many thanks -
> >> great to see that! (I didn't check 'em though:-)
> >>
> >> - Thanks also for speedily handling the extensive secdir review.
> >>
> >> [2]
> >> https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html
> >>
> >
> >
> > _______________________________________________ COSE mailing list
> > COSE@ietf.org https://www.ietf.org/mailman/listinfo/cose
> >



From nobody Tue Oct 11 04:26:58 2016
Return-Path: <kathleen.moriarty.ietf@gmail.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 53C411294F1; Tue, 11 Oct 2016 04:26:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level: 
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 764SPLAvVeMZ; Tue, 11 Oct 2016 04:26:49 -0700 (PDT)
Received: from mail-qk0-x22f.google.com (mail-qk0-x22f.google.com [IPv6:2607:f8b0:400d:c09::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CDBBA129759; Tue, 11 Oct 2016 04:26:48 -0700 (PDT)
Received: by mail-qk0-x22f.google.com with SMTP id o68so27666427qkf.3; Tue, 11 Oct 2016 04:26:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=Oo2FIafJ2UilIkEPuyPvc/VHlc65huSP9y2JBrvZMc8=; b=jRMp/hEl963myX1Ydz0yqMox5k6Xwr+Ah89Wf8syv23pRac4DnP6LED1ZyiCfxhE5Y Fj4pFU7rsvyOFwVC0Aloi1jy3yiFCPZodaGpMv/rQN0gs+DeDplfMTnqvWrgp8VyXU7/ 5ljZ5j1I+Xjq7cYzhhhQubLvNuhEav+spS5mNQ9RJZubVlF9URFZXL5/2muCt5nTenta +PMlHJLzVpEfUKaK1TbTW9rNpxPFTL3pCdtIlFWPlpZCeI7AJGm1Bg0k/xqDBxN63/70 ymdwXthpR051q7t5YAY4CCF+2bIxiQbQ9Wacy+PHmZtvf4J5FYWf58X1egXvM5pboUKc +nvA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=Oo2FIafJ2UilIkEPuyPvc/VHlc65huSP9y2JBrvZMc8=; b=Ui6ITKRCjfj1UXcl/v4YAy/ZT4yUo6Coc/Z3CYUG9b78hNimTGuZ56uNbRUumpurAy /ExvuKYTLrueYR67FHm/0Al2I+EmrSXcj+s+plVi0g8WpdeKVWgOODzLguXOg3K98/R1 cVm+GsPspnp4lpAsOGhzdGIQbD38sL7RnuVkTR/dy6YWI8KAqOoJMt1OSilgJaka+KXm HXhj075rphue2Zi58ddGSzq5D9uxDxpLyqv7Eavxx7Zgq81U/NpXJT2rNiVtwFlrcmY0 yPuH8gZm18p6vuo7JlQ1rDX8CxnWc5WyddL8Z/PSq8S+YmNo7vAOhz+oBbEinGEjhUGW G4jA==
X-Gm-Message-State: AA6/9RlnDW1XwKFzBxTaYYak0tbRDyMn1VtbvNPFJ92eyL3NhmvExd8YQrJTQTvEuLRrWw==
X-Received: by 10.55.21.69 with SMTP id f66mr2484600qkh.131.1476185207751; Tue, 11 Oct 2016 04:26:47 -0700 (PDT)
Received: from [192.168.1.4] (209-6-124-204.c3-0.arl-ubr1.sbo-arl.ma.cable.rcn.com. [209.6.124.204]) by smtp.gmail.com with ESMTPSA id s23sm972250qka.10.2016.10.11.04.26.46 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 11 Oct 2016 04:26:46 -0700 (PDT)
Content-Type: text/plain; charset=us-ascii
Mime-Version: 1.0 (1.0)
From: kathleen.moriarty.ietf@gmail.com
X-Mailer: iPhone Mail (13G36)
In-Reply-To: <091901d2236f$6be6de40$43b49ac0$@augustcellars.com>
Date: Tue, 11 Oct 2016 07:26:45 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <99805C4D-65E7-4D34-A034-3BC1F24E060D@gmail.com>
References: <147506634324.16628.6590617577304586745.idtracker@ietfa.amsl.com> <076601d21d38$1e5162f0$5af428d0$@augustcellars.com> <21d32017-8dc8-5971-ef5c-b2083cdb6848@cs.tcd.ie> <091901d2236f$6be6de40$43b49ac0$@augustcellars.com>
To: Jim Schaad <ietf@augustcellars.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/4gBE8rrHyuSl50Sga4nQPKVnZ5w>
Cc: Stephen Farrell <stephen.farrell@cs.tcd.ie>, cose-chairs@ietf.org, The IESG <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com, cose@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 11 Oct 2016 11:26:52 -0000

Thank you, Jim.  I'll double check before you post the next version.

Kathleen=20

Please excuse typos, sent from handheld device=20

> On Oct 10, 2016, at 11:27 PM, Jim Schaad <ietf@augustcellars.com> wrote:
>=20
> I have just published a draft -20 of the document.
>=20
> I believe that this document addresses all of the issues that have been ra=
ised by the IESG.
>=20
> This document does not address the blocking IANA issues.  I should have th=
ese addressed and a new version published by the start of next week.
>=20
> Jim
>=20
>> -----Original Message-----
>> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie]
>> Sent: Monday, October 03, 2016 3:16 AM
>> To: Jim Schaad <ietf@augustcellars.com>; 'The IESG' <iesg@ietf.org>
>> Cc: cose-chairs@ietf.org; goran.selander@ericsson.com; cose@ietf.org; dra=
ft-
>> ietf-cose-msg@ietf.org
>> Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-19: (=
with
>> DISCUSS and COMMENT)
>>=20
>>=20
>> Hi Jim,
>>=20
>>> On 03/10/16 06:36, Jim Schaad wrote:
>>> Stephen,
>>>=20
>>> Answers and questions interspersed below along with some - yes I need
>>> to do that.  I should be able to get to those in the first half of
>>> this week.  Am building a github branch for responses if you want to
>>> look at things as we go along.
>>=20
>> Good stuff. Some answers below where they seem useful.
>>=20
>>>=20
>>> Jim
>>>=20
>>>=20
>>>> -----Original Message----- From: Stephen Farrell
>>>> [mailto:stephen.farrell@cs.tcd.ie] Sent: Wednesday, September 28,
>>>> 2016 5:39 AM To: The IESG <iesg@ietf.org> Cc:
>>>> draft-ietf-cose-msg@ietf.org; Goeran Selander
>>>> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
>>>> goran.selander@ericsson.com; cose@ietf.org Subject: Stephen
>>>> Farrell's Discuss on draft-ietf-cose-msg-19: (with DISCUSS and
>>>> COMMENT)
>>>>=20
>>>> Stephen Farrell has entered the following ballot position for
>>>> draft-ietf-cose-msg-19: Discuss
>>>>=20
>>>> When responding, please keep the subject line intact and reply to
>>>> all email addresses included in the To and CC lines. (Feel free to
>>>> cut this introductory paragraph, however.)
>>>>=20
>>>>=20
>>>> Please refer to
>>>> https://www.ietf.org/iesg/statement/discuss-criteria.html for more
>>>> information about IESG DISCUSS and COMMENT positions.
>>>>=20
>>>>=20
>>>> The document, along with other ballot positions, can be found
>>>> here: https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>>>>=20
>>>>=20
>>>>=20
>>>> ----------------------------------------------------------------------
>> DISCUSS:
>>>> ----------------------------------------------------------------------
>> I think this is a fine design and well documented, (though
>>>> long) and I'm sure we'll clear up the points below quickly enough.
>>>> Some of them may need some discussion but others are mostly
>>>> checking.
>>>>=20
>>>> (1) general: I think the inclusion of CDDL is an error here and
>>>> we'd be better off having someone (if interested) generate the CDDL
>>>> schema stuff later on when/if CDDL is standardised/stabilised.
>>>> Including it now creates the potential for breakage unnecessarily
>>>> IMO. However, the WG did explicitly discuss iirc, so this is just a
>>>> personal comment that I'm also in the rough on inclusion of CDDL in
>>>> this spec. (As an example, for someone not familiar with CDDL, the
>>>> inclusion of fragments interspersed in the text is distracting and
>>>> potentially puzzling when one gets to the end of section 3.)
>>>> However, I do think there are places where the CDDL is effectively
>>>> normative despite what is said in the introduction, the ones I've
>>>> spotted are below. (Happy to chat about 'em as I may be mistaken.)
>>>> I also wondered if one could really implement this if all the CDDL
>>>> was removed from the text, which is what I think would be required
>>>> if CDDL were really to be informative. Anyway the places I think
>>>> some more text may be needed are:
>>>=20
>>>=20
>>> I build a version of the document with no CDDL, I have added some
>>> pointers to the use of "/" and "[+ FOO]" to the CDDL preview section
>>> at the top of the document.  I have also identified the structures
>>> Sig_structure and Enc_structure like I did the Mac_structure in the
>>> text.  (Also found a COSE_Encrypt that should have been a
>>> COSE_Encrypt0.)
>>>=20
>>>>=20
>>>> (1.1) table 2: As-is the value type column seems to me to make CDDL
>>>> normative. I don't see the natural language version that you said
>>>> would be normative.
>>>>=20
>>>> (1.2) 4.4, 2nd list point 1: the use of Sig_structure makes the
>>>> CDDL normative. (Same with the use in 4.5 and Enc_structure in
>>>> 5.3.)
>>>>=20
>>>> (1.3) 7.1, the key_ops value is only specified in CDDL, in Table 3.
>>>> (It is well- defined below the table in text though, so this one's
>>>> borderline.)
>>>=20
>>> The description for key_ops points to Table 3, so I think it is fully
>>> supplied.
>>>=20
>>>>=20
>>>> (1.4) 11.2: it's not clear to me that a reader knows how to handle
>>>> decoding of the two optional fields at the end (other and
>>>> SuppPrivInfo) without looking at the CDDL. Can you explain? (That
>>>> might be just my ignorance of CBOR, but wanted to check.)
>>>=20
>>> I am not sure that I would know how to do it even with CDDL, however
>>> in this case that is a moot question as this structure is only
>>> encoded and never transmitted or decoded.
>>>=20
>>> Will also note, that you have better eyes than me as I do not see two
>>> optional fields at the end.  I see one optional field at the end of
>>> two different arrays, so that would be a CBOR ignorance I think.
>>=20
>> I'd say we should be able to kill this discuss point easily
>> with the changes you're making.
>>=20
>>>=20
>>>>=20
>>>> (2) 3.1, alg: so you're disallowing a setup where the kid alone
>>>> identifies the key and algorithm to the recipient? That is used in
>>>> some IETF protocols (OSPF iirc) so rhat's a pity, and will in
>>>> those (maybe less common) cases consume a few bytes that could
>>>> otherwise be saved.  I think, but am not sure, that the WG already
>>>> discussed this, but if not, maybe worth a thought? (Or even a 2nd
>>>> thought:-) And appendix A.1 is really puzzling - as it provides
>>>> instructions for how to not follow a MUST in the body of the
>>>> document.
>>>=20
>>> I have come around to the feeling that the algorithm needs to be part
>>> of the value that is being authenticated as part of all of the
>>> messages.
>>=20
>> Is that just a feeling of yours or are we confident it
>> represents WG consensus? (Honest question - I just don't
>> recall.)
>>=20
>>> This being the case, the only what that it can be enforced
>>> is to make the algorithm be a part of the protected attributes.   In
>>> my mind the cost of the 2 bytes for this purpose seems to be
>>> sufficiently small that including it does not seem to be a large
>>> burden.
>>>=20
>>> There were several people in the IoT world who felt as you that one
>>> could have an implicit algorithm and they did not want to spend the
>>> two bytes for the purpose of including it in the AEAD.  This being
>>> the case, I did provide the appendix to tell how to do this.  I
>>> expect that people are going to do this and not following the
>>> guidance that was provided about making sure that the algorithm is
>>> authenticated.
>>=20
>> Right, but isn't that then pretty much an RFC6919 "MUST, but
>> we know you (sometimes) won't"? I just don't see how that helps
>> with interop.
>>=20
>> I do agree that it's conceivable that the lack of an alg in
>> a protocol could lead to vulnerabilities. However, there are
>> clearly cases where a protocol can be secure without an
>> explicit alg, and we know that folks will do that optimisation
>> sometimes, so I think the most that'd be right is a SHOULD,
>> but likely a MAY is even better. (If however, there's a clear
>> WG consensus to take the RFC6919 route, then I'll get out of
>> the way, but with an "I told you so" in my back pocket;-)
>>=20
>>>=20
>>>>=20
>>>> (3) 7.1: key_op 8, "derive bits" - I don't think this usage is
>>>> clear enough, can you say what's meant here?
>>>=20
>>> Derive bits was added to the JOSE documents in response to the W3C
>>> WebCrypto work where they wanted to be able to control that something
>>> could derive bits but not derive a key.  These were initially not
>>> present in this document but was added by request so that it would
>>> match what the JWK document had.  The description in JWK is "derive
>>> bits not to be used as a key".  Does that read better?  If so I can
>>> change this.
>>=20
>> That is clearer yes. Maybe add a pointer to the JWK doc as well?
>> I'm not convinced of the utility myself though but so long as
>> it's clearly described then that'll sort this discuss point.
>>=20
>>>=20
>>>>=20
>>>> (4) Why not make deterministic ECDSA a MUST?  8.1.1 says:
>>>> "Applications that specify ECDSA should evaluate the ability to get
>>>> good random number generation and require deterministic signatures
>>>> where poor random number generation exists."  I don't think that is
>>>> sufficiently clear, nor realistic, and I don't recall this being
>>>> discussed on the list (sorry if I'm forgetting) and bad random
>>>> values are a killer flaw here that has happened in the wild.
>>>=20
>>> It is not clear to me that many, if any, current packages support the
>>> concept of doing deterministic ECDSA.
>>=20
>> But they don't to COSE either so I'm not clear that's a good
>> argument unless there's evidence that crypto libraries likely
>> to be used for COSE won't include deterministic ECDSA. (That
>> last would be a surprise given that deterministic is clearly
>> superior.)
>>=20
>>> If this case it seems to be
>>> odd that we would require it.   I can do some research to figure this
>>> out.
>>=20
>> Cool. Be interested in what you find.
>>=20
>>>=20
>>>>=20
>>>> (5) Table 6, is this 25519 or 448? Where does it say?  Sorry if I'm
>>>> being dumb here, but I don't see where you say which curve is
>>>> specified, the definition of 'crv' says defined for this alg which
>>>> I assume means listed in Table 6.
>>>=20
>>> The value of 'crv' is defined in table 22.  The same algorithm is
>>> used to identify all of the curves.
>>=20
>> I'm still not getting that but didn't yet re-read the doc. I will
>> as we go so let's punt on this for the moment.
>>=20
>>>=20
>>>>=20
>>>> (6) section 10: why MUST the kty values be present always? That
>>>> seems unnecessary in some contexts and I don't get a security
>>>> reason why it's needed e.g. if there's an alg id somewhere - can
>>>> you explain? I can see folks omitting this leading to interop
>>>> problems for not useful reasons. (Same comment applies in other
>>>> cases where kty is a MUST, e.g. 12.1.2, 12.2.1.)
>>>=20
>>> This follows what JOSE did in in RFC 7517 (JWK).  I might, or might
>>> not, agree with you that specifying an algorithm would be sufficient.
>>> Consider one of the ECDH-ES variants.  It is defined to work with
>>> keys of the key type 'EC2' as well as 'OKP'.  These two key types
>>> have different sets of required parameters but some of them overlap.
>>> Specifically, 'x' is in both but 'y' is only in one of them.  In this
>>> case the additional parameter of 'crv' could also be used to
>>> distinguish them but a generic piece of code looking only at the
>>> algorithm would not have enough detail.
>>=20
>> Hmm. Still not convinced, but I'll look again as we go. This is
>> I guess similar to the issue with the alg as a MUST in that we
>> can be pretty sure some folks will ignore that MUST I think.
>>=20
>>>=20
>>>>=20
>>>> (7) section 11: given that we know people will use human memorable
>>>> secrets, why have you not defined codepoints for PBES2 (or the more
>>>> commonly supported?) PBDKF2?  I'm fine if there's a reason, or even
>>>> if it was discussed by the WG, but just wanted to check as I'd
>>>> worry that folks will use the ones defined here with human
>>>> memorable secrets no matter what the spec says so giving 'em
>>>> something more tailored might be better. (OTOH, one could argue
>>>> that making this apparent might be worse too I guess.)
>>>=20
>>> This was part of the secondary algorithm draft which the WG decided
>>> not to do as part of the 'we are not going to do RSA at this time'.
>>> I expect that I will write an individual draft to cover these.  It
>>> was also not clear to me that small devices were going to be using
>>> this type of secret to start with in any event.
>>=20
>> Fair enough. Consider this bit sorted.
>>=20
>>>=20
>>>>=20
>>>> (8) 12.4: Why is no ephemeral-ephemeral (E-E) variant supported?
>>>> Some protocols will allow for that and it seems wrong to disallow
>>>> it when it could relatively easily be supported. For some
>>>> applications where content is dealt with in store-and-forward mode,
>>>> there may be situations (e.g. provisioning, "introduction") where
>>>> E-E could be used. As-is, applications wanting that will have to
>>>> hack the recipient DH-public into a home-grown structure (or use
>>>> one of the COSE_Key labels from Table 19) and then treat that as
>>>> ES-DH. That seems likely to lead to non-interop or security errors
>>>> being made. I'd be fine if you even said how to re-use the
>>>> structures currently defined for E-E btw and didn't introduce new
>>>> structures.
>>>=20
>>> See https://datatracker.ietf.org/doc/draft-selander-ace-cose-ecdhe/
>>> for how this is being addressed.
>>=20
>> Hmm. No 25519? Odd that. But fair enough I suppose if it's being
>> handled somewhere.
>>=20
>>>=20
>>>>=20
>>>> (9) 16.4: I'm not sure expert review is right here.  What if the
>>>> expert is asked to add SM2/SM4 while there is still no widely
>>>> available non-Chinese text to describe those?  I think the expert
>>>> ought enforce a "specification required" rule at least and maybe
>>>> more.  (And ought never allow an algorithm with no specification
>>>> publicly available.)
>>>=20
>>> This view was advanced by several people in the WG as well.  My worry
>>> about this position is that it might encourage point squatting.  I
>>> cannot respond for other experts, but I would ask for a usable
>>> description of the algorithm.  If I was not familiar I would also
>>> request either additional review from CFRG and/or conference papers
>>> on the algorithm.  If it was not a publicly available specification,
>>> I would then assign a "non-optimal" point.  My expectation is that
>>> there are going to be more small networks of IoT devices than there
>>> are for TLS systems.  This means that it is more likely that
>>> localized algorithms may be desired.
>>=20
>> Yeah but desired-by-someone !=3D desirable-for-the-Internet :-)
>>=20
>> I would worry about less well reviewed lightweight crypto in this
>> space - that'll be attractive for implementers/vendors but might
>> not be a good plan.
>>=20
>>>=20
>>> I am not against raising the level to specification required, but
>>> would worry about point squatting.
>>>=20
>>> If this is not "expert review" what do you believe would be a better
>>> requirement?  I do not believe this should be dumped on either the
>>> IESG or CFRG.
>>=20
>> I think expert review with specification required is maybe right
>> with the guidance tightened up along the lines you state above.
>> (But see below.)
>>=20
>>>=20
>>>>=20
>>>> (10) 16.4 (and elsewhere maybe) I think this registry is missing a
>>>> column - as is being done in the TLS WG, I think there should be a
>>>> column saying if the IETF is happy enough with an algorithm and
>>>> that getting a "Y" in that ought require standards action. (Or some
>>>> similar scheme.) I don't think the standards-track range of
>>>> codepoints is enough here, e.g. at some time we will want to
>>>> deprecate things, and at other times we may want to define things
>>>> for the future on the standards-track but not (yet) recommend their
>>>> use.  The last bullet in 16.11 does help here, but I'd argue that
>>>> we need to do more to protect the expert (and implementers) from
>>>> the trickle of vanity/national algorithms/curves that are always
>>>> being proposed.
>>>=20
>>> I would not object to doing this.  While I don't know if the TLS
>>> experiment on this is going to work, I don't have any problems with
>>> participating in the same experiment here as well.
>>=20
>> Great. If we do that then I think the expert's job can be easier
>> as it'll be much clearer what the IETF likes. (And that'd sort
>> my discuss point #9 too.)
>>=20
>>>=20
>>> I am not sure what we should say for deprecation of algorithms here
>>> should be, they are going to live for a long time and new systems
>>> will probably ship with the same algorithms as long as they need to
>>> interoperate.  Consider the lighting use case that is being fought
>>> over in ACE right now.  You cannot put a new light bulb in that uses
>>> a different algorithm unless you are willing to start broadcasting
>>> two messages.  This is probably going to lead to very slow
>>> deprecation over time.
>>=20
>> Well, it's always slow. But I think if we can clearly see from the
>> registry what the IETF currently likes, then implementers should
>> have an easier time. I'd have no objection if the extra column
>> wasn't just a binary y/n, but I think it's hard to come up with
>> good semantics for anything else. (Where "y" just means that the
>> IETF currently likes the registry entry.)
>>=20
>>>=20
>>>=20
>>>>=20
>>>>=20
>>>> ----------------------------------------------------------------------
>> COMMENT:
>>>> ----------------------------------------------------------------------
>>=20
>> I'll go over these later if that's ok, gotta do another thing
>> right now;-) Please ping me if you need a response before you
>> do edits though.
>>=20
>> Cheers,
>> S.
>>=20
>>=20
>> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs
>> re-phrasing.
>>>=20
>>> Which is unclear, the problem or the action?
>>>=20
>>>>=20
>>>> - 1.5: I'd add a reference to RFC5116.
>>>=20
>>> Reasonable and done.
>>>=20
>>>>=20
>>>> - 3.1, crit: The statement that security libraries or application
>>>> code can handle this is odd - isn't that an API requirement? (I'm
>>>> not objecting, but it's odd.)
>>>=20
>>> I agree that this is an API requirement.
>>>=20
>>>>=20
>>>> - 3.1, "content type" is the space there intended?  If so, maybe
>>>> add quotes or a comma or something to disambiguate the name and
>>>> descriptive text? Same for other multi-word names here.
>>>=20
>>> Given that this is the second person suggesting this (also in Gen-Art
>>> review). I am going to add a colon to deal with this.
>>>=20
>>>>=20
>>>> - 3.1, "all the keys may need to be checked" - really?  Or do you
>>>> mean all the keys associated with this kid?
>>>=20
>>> I thought that this said keys associated with the kid.  Did you not
>>> read it this way?  If not then I will look at re-phrasing.
>>>=20
>>>>=20
>>>> - 3.1, IV/Partial IV - I think it's an error to define this here.
>>>> What if some algorithm can't use that kind of (0|partial)^IV but
>>>> needs something else instead? Shouldn't all mechanism for handling
>>>> IVs be defined by the algorithm/mode? (This isn't a discuss because
>>>> I can't think of a good counter example and there'd be other ways
>>>> around the problem too probably.)
>>>=20
>>> I was originally going to make IV an algorithm specific parameter
>>> rather than a common parameter.  It was just so common that it seemed
>>> to be better to only define it once.  Any algorithm that needed
>>> different behavior could easily define an algorithm specific
>>> parameter for IV work instead.  So as you say an easy work around
>>> exists if needed.
>>>=20
>>>>=20
>>>> - 4.1: signingTime is often needed with signatures. Isn't that
>>>> common enough to want to define a way to do it, as an option?
>>>=20
>>> There was a signingTime parameter in the original document.  The WG
>>> decided that it was not going to be needed enough at this point in
>>> time to have it defined now.  Additionally, there were some arguments
>>> over the format of the time field as some systems support a real
>>> clock and some only support a relative clock to when they were last
>>> started up.
>>>=20
>>>>=20
>>>> - 4.1: If I sign with a private key corresponding to a 2047 or 2049
>>>> bit RSA public key modulus, then is it clear what to put where in
>>>> the signature bstr? (Yes, that'd be dumb, but I wonder is what to
>>>> do well enough defined, as I don't think you can rule it out in all
>>>> cases.) Since you don't include RSA here I guess it's ok to skip
>>>> this, but maybe you need to say that such issues need to be handled
>>>> in the definition of signature algs.
>>>=20
>>> I would say that this is not real, but I looked carefully at this
>>> when doing the EdDSA algorithms.  I will look at this and see if I
>>> cannot find some way to state this either generally or specifically.
>>>=20
>>>>=20
>>>> - 4.3: "cannot bleed" isn't clear enough maybe, give an example
>>>> perhaps where the decoder can fail to disambiguate a boundary?
>>>=20
>>> I'll look at this and see if I cannot come up with better language.
>>> However, there are no decode issues here.
>>>=20
>>>>=20
>>>> 4.4, last para: I disagree that one must (even lowercase must)
>>>> check the signing identity.  That's application behaviour and
>>>> should be stated here in such concrete terms. At least s/must
>>>> also/may also want to/
>>>=20
>>> What if it is s/one must also/the application must also/
>>>=20
>>>>=20
>>>> (Note - the above were comments on -18, but also seem to work based
>>>> on -19. Subsequent comments are on -19.)
>>>>=20
>>>> - 7.1: "starting at the same base IV" - are you missing "and
>>>> incrementing" or something? Otherwise I think this seems unclear.
>>>=20
>>> The "and incrementing" to me was implied in the first paragraph with
>>> the fact that this is intended to be used with the "partial IV"
>>> parameter.  I'll see if I can make this cleaner.
>>>=20
>>>>=20
>>>> - 8.2.1: is the phrasing of the 1st para right? would it be better
>>>> to say that the value of a key for EdDSA MUST NOT be used for ECDH
>>>> and vice-versa. (Or maybe points instead of keys?)
>>>=20
>>> Yeah, reads messy - let me think about it.
>>>=20
>>>>=20
>>>> - 8.2.1: you need a reference for batch signing. (Or could it be
>>>> omitted?)
>>>=20
>>> I kept asking for one in the EdDSA document and never got one there,
>>> so I don't have one to push in here.
>>>=20
>>>>=20
>>>> - section 9: I think it'd be good to be clearer about the strength
>>>> of truncated MAC values. (And I can't recall the right thing to say
>>>> off the top of my head:-)
>>>=20
>>> When I was doing research about this, I could not find any solid
>>> results on truncated MAC values that people seemed to agree on. Most
>>> people seem to look at this as just a birthday attack so I would need
>>> to do more searching to find something useful.
>>>=20
>>>>=20
>>>> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be
>>>> better to refer to the draft as that should be published soon.
>>>> (Same for RFC3447 btw.)
>>>=20
>>> Will do.
>>>=20
>>>>=20
>>>> [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
>>>>=20
>>>> - 12.4: Why "OKP"? And saying there's no "simple way" to do point
>>>> validation seems fairly opaque, a reference there or explanatory
>>>> text would be good. (Ah, it's in section 13, maybe shuffle the text
>>>> or include a pointer.) Octet key pair doesn't seem like that good a
>>>> name to me btw.
>>>=20
>>> I copied "OKP" from draft-ietf-jose-cfrg-curves.  Since it has
>>> already gone through there I am reluctant to be different.
>>>=20
>>> I will re-look at the order and make sure that there is something
>>> lying around for the acronym expansion.
>>>=20
>>>>=20
>>>> - 12.5: The 1st para seems wrong. (Or at least is unclear to me.)
>>>> "Encrypted with <foo> and <bar>" seems ambiguous anyway, does it
>>>> mean double encryption or two parallel ciphertexts? (I assume the
>>>> former.) What's the algebraic thing you're trying to explain?
>>>> It'd be good to provide that for such relatively complex operations
>>>> I think. Is this what you mean?
>>>>=20
>>>> KW(KDF(DH-shared),CEK)
>>>=20
>>> Yes that is the formula and yes it makes sense to document it in that
>>> manner.
>>>=20
>>>>=20
>>>> - Table 22: The EC2 or OKP value is fixed per curve and the
>>>> cryptographic function being performed so seems unnecessary. Do you
>>>> really need it so? Why? (I'm not buying that some future form of
>>>> ECC might mean this is needed btw - and codepoints aren't expensive
>>>> here, right? So other forms of ECC can burn codepoints when that's
>>>> needed and in the meantime we'd save bytes and complexity.)
>>>=20
>>> I am lost and don't understand what you are saying here.
>>>=20
>>> * For EC2 key types the curve is fixed, but the cryptographic
>>> function is not fixed. * For OKP key types, the curve/cryptographic
>>> function pair is fixed.
>>>=20
>>> This is analogous to what is happing for the PKIX world.
>>>=20
>>> Are you suggesting that something change?  If so what?  (Just so I
>>> can evaluate it.)
>>>=20
>>>>=20
>>>> - Section 15: Do we have any examples of such a profile?  I think
>>>> it'd be great if we did and could add an informative reference here
>>>> (even if that's to an early I- D).
>>>=20
>>> Will add a reference to draft-selander-ace-object-security.  (Which
>>> is being discussed in core not ace).
>>>=20
>>>>=20
>>>> - section 19: I don't get how ECDSA is normative and the cfrg
>>>> curves are not. Same for RFC6979. Maybe these all could do with
>>>> checking? (No big deal IMO but maybe worth it.)
>>>=20
>>> Yes, the cfrg curves should be normative and yes I will go back over
>>> the list.
>>>=20
>>>>=20
>>>> - Appendices A.1 (as already noted) and A.2 are a puzzle. Why say
>>>> in the body of the document to do <foo> and then an appendix that
>>>> says how to do <not-foo>?
>>>=20
>>> Answer above.
>>>=20
>>>=20
>>> Jim
>>>=20
>>>=20
>>>>=20
>>>> - Appendix C and the implementation status section: Many thanks -
>>>> great to see that! (I didn't check 'em though:-)
>>>>=20
>>>> - Thanks also for speedily handling the extensive secdir review.
>>>>=20
>>>> [2]
>>>> https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html
>>>=20
>>>=20
>>> _______________________________________________ COSE mailing list
>>> COSE@ietf.org https://www.ietf.org/mailman/listinfo/cose
>=20
>=20
> _______________________________________________
> COSE mailing list
> COSE@ietf.org
> https://www.ietf.org/mailman/listinfo/cose


From nobody Fri Oct 14 20:50:40 2016
Return-Path: <cabo@tzi.org>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 37C69129409; Fri, 14 Oct 2016 20:50:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level: 
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] 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 p9uJoQYC8Kov; Fri, 14 Oct 2016 20:50:32 -0700 (PDT)
Received: from mailhost.informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 767741293E1; Fri, 14 Oct 2016 20:50:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from submithost.informatik.uni-bremen.de (submithost.informatik.uni-bremen.de [134.102.201.11]) by mailhost.informatik.uni-bremen.de (8.14.5/8.14.5) with ESMTP id u9F3oSV1024801; Sat, 15 Oct 2016 05:50:28 +0200 (CEST)
Received: from nar-4.local (p5DC7E34C.dip0.t-ipconnect.de [93.199.227.76]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by submithost.informatik.uni-bremen.de (Postfix) with ESMTPSA id 3swr8h0lH6z7xhk; Sat, 15 Oct 2016 05:50:28 +0200 (CEST)
Message-ID: <5801A7D0.8050100@tzi.org>
Date: Sat, 15 Oct 2016 05:51:44 +0200
From: Carsten Bormann <cabo@tzi.org>
User-Agent: Postbox 4.0.8 (Macintosh/20151105)
MIME-Version: 1.0
To: ace@ietf.org, core@ietf.org, cose@ietf.org, dtls-iot@ietf.org, t2trg@irtf.org
X-Enigmail-Version: 1.2.3
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/5YTe5g04nrAI8IQahjzx0DsTMiY>
Subject: [COSE] Constrained Node/Network Cluster @ IETF97: DRAFT AGENDA
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 15 Oct 2016 03:50:35 -0000

Here is my usual eclectic condensed agenda based on the DRAFT AGENDA
for IETF97.  Remember that there is still quite some potential for
changes.

IoT is starting a bit late at IETF97; only two meetings of cluster WGs
on Mon/Tue (but then of course we start big with the Sunday
icnrg/t2trg joint meeting).  CORE on HOMENET and IPWAVE (Wed) and CORE
on ICNRG (Fri) are a bit painful but probably the unavoidable level of
conflict.  Moves due to other conflict avoidance may make this worse,
though.

All times are KST (UTC+0900) -- there is no DST in Korea, and DST will
have ended in Europe and North America by then.
(The browser timezone function still is not yet reinstated on
https://datatracker.ietf.org/meeting/agenda-utc, for those who want to
listen from remote.)

Grüße, Carsten


SUNDAY, November 13, 2016

1300-1600       IRTF*** icnrg+t2trg joint meeting

MONDAY, November 14, 2016

1330-1530  Afternoon Session I
Studio 3	ART	ice	Interactive Connectivity Establishment WG
Park BR 1	IRTF	cfrg	Crypto Forum
Grand BR II	OPS	v6ops	IPv6 Operations WG

1550-1750  Afternoon Session II
Grand BR III	INT ***	lpwan	IPv6 over Low Power Wide-Area Networks WG
Studio 3	RTG	bier	Bit Indexed Explicit Replication WG

TUESDAY, November 15, 2016

0930-1200  Morning Session I
Grand BR II	INT	6man	IPv6 Maintenance WG
Park BR 1	RTG	detnet	Deterministic Networking WG
Grand BR I	TSV	quic	QUIC WG

1330-1530  Afternoon Session I
Park BR 1	ART	httpbis	Hypertext Transfer Protocol WG
Grand BR I	RTG	rtgarea	Routing Area Open Meeting
Studio 4	SEC	tokbind	Token Binding WG
Grand BR III	TSV	tsvwg	Transport Area Working Group WG

1550-1820  Afternoon Session II
Grand BR II	INT ***	6lo	IPv6 over Networks of Resource-constrained Nodes WG
Park BR 1	SEC	tls	Transport Layer Security WG

WEDNESDAY, November 16, 2016

0930-1100  Morning Session I
Grand BR III	OPS	anima	Autonomic Networking Integrated Model and Approach WG
Grand BR II	TSV	taps	Transport Services WG

1110-1210  Morning Session II
Park BR 2	RTG ***	roll	Routing Over Low power and Lossy networks WG
Grand BR I	TSV	tsvwg	Transport Area Working Group WG

1330-1500  Afternoon Session I
Studio 2	ART ***	core	Constrained RESTful Environments WG
Grand BR I	INT	homenet	Home Networking WG
Grand BR III	INT	ipwave	IP Wireless Access in Vehicular Environments WG
Studio 4	SEC	acme	Automated Certificate Management Environment WG
Grand BR II	TSV	tsvarea	Transport Area Open Meeting

1520-1620  Afternoon Session II
Park BR 2	INT	intarea	Internet Area Working Group WG
Park BR 1	IRTF***	t2trg	Thing-to-Thing
Studio 3	SEC	curdle	CURves, Deprecating and a Little more Encryption WG

THURSDAY, November 17, 2016

0930-1100  Morning Session I
Park BR 1	INT ***	6tisch	IPv6 over the TSCH mode of IEEE 802.15.4e WG
Studio 4	INT	dnssd	Extensions for Scalable DNS Service Discovery  WG
Grand BR II	IRTF	maprg	Measurement and Analysis for Protocols
Grand BR I	SEC	saag	Security Area Open Meeting

1110-1210  Morning Session II
Park BR 1	ART	httpbis	Hypertext Transfer Protocol WG
Grand BR III	INT ***	lwig	Light-Weight Implementation Guidance WG
Grand BR I	SEC	saag	Security Area Open Meeting

1330-1500  Afternoon Session I
Studio 3	SEC	oauth	Web Authorization Protocol WG

1520-1750  Afternoon Session II
Studio 4	SEC ***	ace	Authentication and Authorization for Constrained
Environments WG
Studio 2	TSV	rmcat	RTP Media Congestion Avoidance Techniques WG

FRIDAY, November 18, 2016

0930-1130  Morning Session I
Studio 4	ART ***	core	Constrained RESTful Environments WG
Grand BR II	IRTF	icnrg	Information-Centric Networking
Park BR 1	OPS	anima	Autonomic Networking Integrated Model and Approach WG
Park BR 2	TSV	tcpinc	TCP Increased Security WG

1150-1320  Afternoon Session I
Studio 2	ART	webpush	Web-Based Push Notifications WG
Park BR 1	RTG	babel	Babel routing protocol WG
Studio 4	SEC	oauth	Web Authorization Protocol WG


From nobody Sun Oct 16 13:56:58 2016
Return-Path: <stephen.farrell@cs.tcd.ie>
X-Original-To: cose@ietf.org
Delivered-To: cose@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 631D1129439; Sun, 16 Oct 2016 13:56:57 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: "Stephen Farrell" <stephen.farrell@cs.tcd.ie>
To: "The IESG" <iesg@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.34.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com>
Date: Sun, 16 Oct 2016 13:56:57 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/bIXQDEZLxXT47JRtC-XmSpDgZrw>
Cc: cose-chairs@ietf.org, goran.selander@ericsson.com, cose@ietf.org, draft-ietf-cose-msg@ietf.org
Subject: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 16 Oct 2016 20:56:57 -0000

Stephen Farrell has entered the following ballot position for
draft-ietf-cose-msg-20: Discuss

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)


Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.


The document, along with other ballot positions, can be found here:
https://datatracker.ietf.org/doc/draft-ietf-cose-msg/



----------------------------------------------------------------------
DISCUSS:
----------------------------------------------------------------------


Thanks for the updates in -20. I think we've only the following points
left. Note that 2 of those are questions to the WG chairs and not to
Jim.

   (1.1) table 2: As-is the value type column seems to me to
   make CDDL normative. I don't see the natural language version
   that you said would be normative.  

Can you help me see that the changes there are such that
CDDL is ok as informative? I'm not sure but as I read it
there is still no natural language statement that a 
"counter signature" is one (or more) COSE_Signature
values.

   (2) 3.1, alg: so you're disallowing a setup where the kid
   alone identifies the key and algorithm to the recipient?
   That is used in some IETF protocols (OSPF iirc) so rhat's a
   pity, and will in those (maybe less common) cases consume a
   few bytes that could otherwise be saved.  I think, but am not
   sure, that the WG already discussed this, but if not, maybe
   worth a thought? (Or even a 2nd thought:-) And appendix A.1
   is really puzzling - as it provides instructions for how to
   not follow a MUST in the body of the document.

I think we left the mail thread on this with you saying "Best
to ask the chairs if they agree that this is WG consensus," as
you're an admitteddly strong partisan on this topic. 

So, COSE chairs - what's your take? (If you say this is ok with
the WG, I'll clear.)

   (6) section 10: why MUST the kty values be present always?
   That seems unnecessary in some contexts and I don't get a
   security reason why it's needed e.g. if there's an alg id
   somewhere - can you explain? I can see folks omitting this
   leading to interop problems for not useful reasons. (Same
   comment applies in other cases where kty is a MUST, e.g.
   12.1.2, 12.2.1.)

I think this is the similar to discuss point (2) above.

So again, COSE chairs, can you confirm that this design
does reflect WG consensus and isn't just a thorough and
good editor getting his way? (If you say this is ok with
the WG, I'll clear.)


----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------


OLD COMMENTS BELOW, I DIDN'T CHECK THEM. Happy to chat
more about 'em if that's useful.

- 1.4: the 2nd last paragraph is unclear to me. Probably just
needs re-phrasing.

- 1.5: I'd add a reference to RFC5116.

- 3.1, crit: The statement that security libraries or
application code can handle this is odd - isn't that an API
requirement? (I'm not objecting, but it's odd.)

- 3.1, "content type" is the space there intended?  If so,
maybe add quotes or a comma or something to disambiguate the
name and descriptive text? Same for other multi-word names
here.

- 3.1, "all the keys may need to be checked" - really?  Or do
you mean all the keys associated with this kid?

- 3.1, IV/Partial IV - I think it's an error to define this
here. What if some algorithm can't use that kind of
(0|partial)^IV but needs something else instead?  Shouldn't
all mechanism for handling IVs be defined by the
algorithm/mode? (This isn't a discuss because I can't think
of a good counter example and there'd be other ways around
the problem too probably.)

- 4.1: signingTime is often needed with signatures. Isn't that
common enough to want to define a way to do it, as an option?

- 4.1: If I sign with a private key corresponding to a 2047
or 2049 bit RSA public key modulus, then is it clear what to
put where in the signature bstr? (Yes, that'd be dumb, but I
wonder is what to do well enough defined, as I don't think
you can rule it out in all cases.) Since you don't include
RSA here I guess it's ok to skip this, but maybe you need to
say that such issues need to be handled in the definition of
signature algs. 

- 4.3: "cannot bleed" isn't clear enough maybe, give an
example perhaps where the decoder can fail to disambiguate a
boundary? 

4.4, last para: I disagree that one must (even lowercase
must) check the signing identity.  That's application
behaviour and should be stated here in such concrete terms.
At least s/must also/may also want to/

(Note - the above were comments on -18, but also seem to work
based on -19. Subsequent comments are on -19.)

- 7.1: "starting at the same base IV" - are you missing
"and incrementing" or something? Otherwise I think this
seems unclear.

- 8.2.1: is the phrasing of the 1st para right? would it be
better to say that the value of a key for EdDSA MUST NOT be
used for ECDH and vice-versa. (Or maybe points instead of
keys?)

- 8.2.1: you need a reference for batch signing. (Or could it
be omitted?)

- section 9: I think it'd be good to be clearer about the
strength of truncated MAC values. (And I can't recall the
right thing to say off the top of my head:-)

- 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd
be better to refer to the draft as that should be published
soon. (Same for RFC3447 btw.)

   [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/

- 12.4: Why "OKP"? And saying there's no "simple way" to do
point validation seems fairly opaque, a reference there or
explanatory text would be good. (Ah, it's in section 13,
maybe shuffle the text or include a pointer.) Octet key pair
doesn't seem like that good a name to me btw.

- 12.5: The 1st para seems wrong. (Or at least is unclear to
me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway,
does it mean double encryption or two parallel ciphertexts?
(I assume the former.) What's the algebraic thing you're
trying to explain?  It'd be good to provide that for such
relatively complex operations I think. Is this what you mean?

		KW(KDF(DH-shared),CEK)

- Table 22: The EC2 or OKP value is fixed per curve and the
cryptographic function being performed so seems unnecessary.
Do you really need it so? Why? (I'm not buying that some
future form of ECC might mean this is needed btw - and
codepoints aren't expensive here, right? So other forms of
ECC can burn codepoints when that's needed and in the
meantime we'd save bytes and complexity.)

- Section 15: Do we have any examples of such a profile?  I
think it'd be great if we did and could add an informative
reference here (even if that's to an early I-D).

- section 19: I don't get how ECDSA is normative and the cfrg
curves are not. Same for RFC6979. Maybe these all could do
with checking? (No big deal IMO but maybe worth it.)

- Appendices A.1 (as already noted) and A.2 are a puzzle.
Why say in the body of the document to do <foo> and then an
appendix that says how to do <not-foo>?

- Appendix C and the implementation status section: Many
thanks - great to see that! (I didn't check 'em though:-)

- Thanks also for speedily handling the extensive secdir
review.

   [2] https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html



From nobody Sun Oct 16 14:51:08 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 780E61294C1; Sun, 16 Oct 2016 14:51:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.332
X-Spam-Level: 
X-Spam-Status: No, score=-2.332 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.431, SPF_PASS=-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 W3mgQVxZ3rGn; Sun, 16 Oct 2016 14:51:00 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 180971294E0; Sun, 16 Oct 2016 14:50:59 -0700 (PDT)
Received: from hebrews (50.45.239.150) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Sun, 16 Oct 2016 15:07:07 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: 'Stephen Farrell' <stephen.farrell@cs.tcd.ie>, 'The IESG' <iesg@ietf.org>
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com>
In-Reply-To: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com>
Date: Sun, 16 Oct 2016 14:50:48 -0700
Message-ID: <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Content-Language: en-us
Thread-Index: AQHNbS3DXaOw24A1fPGcVnzLF6ZbJ6C1E6Qw
X-Originating-IP: [50.45.239.150]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/Rdc6WyXrWQORnmyc5vyS0lmJMfQ>
Cc: cose-chairs@ietf.org, goran.selander@ericsson.com, cose@ietf.org, draft-ietf-cose-msg@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 16 Oct 2016 21:51:02 -0000

I think we dealt with all of the comments.  I cannot help you with =
getting chair response.

See below for my one issue.

Jim


> -----Original Message-----
> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie]
> Sent: Sunday, October 16, 2016 1:57 PM
> To: The IESG <iesg@ietf.org>
> Cc: draft-ietf-cose-msg@ietf.org; Goeran Selander
> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
> goran.selander@ericsson.com; cose@ietf.org
> Subject: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with =
DISCUSS and
> COMMENT)
>=20
> Stephen Farrell has entered the following ballot position for
> draft-ietf-cose-msg-20: Discuss
>=20
> When responding, please keep the subject line intact and reply to all =
email
> addresses included in the To and CC lines. (Feel free to cut this =
introductory
> paragraph, however.)
>=20
>=20
> Please refer to =
https://www.ietf.org/iesg/statement/discuss-criteria.html
> for more information about IESG DISCUSS and COMMENT positions.
>=20
>=20
> The document, along with other ballot positions, can be found here:
> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>=20
>=20
>=20
> ----------------------------------------------------------------------
> DISCUSS:
> ----------------------------------------------------------------------
>=20
>=20
> Thanks for the updates in -20. I think we've only the following points =
left. Note
> that 2 of those are questions to the WG chairs and not to Jim.
>=20
>    (1.1) table 2: As-is the value type column seems to me to
>    make CDDL normative. I don't see the natural language version
>    that you said would be normative.
>=20
> Can you help me see that the changes there are such that CDDL is ok as
> informative? I'm not sure but as I read it there is still no natural =
language
> statement that a "counter signature" is one (or more) COSE_Signature =
values.

In section 1.3 the following text was added:

Two syntaxes from CDDL appear in this document as shorthand. These are:

    FOO / BAR - indicates that either FOO or BAR can appear here
    [+ FOO] - indicates that the type FOO appears one or more times in =
an array

The value from the table is:

COSE_Signature / [+ COSE_Signature ]

Section 4.1 contains the text:

The CBOR object that carries the signature and information about the =
signature is called the COSE_Signature structure.

>From that I think that all of the needed normative text is present.

>=20
>    (2) 3.1, alg: so you're disallowing a setup where the kid
>    alone identifies the key and algorithm to the recipient?
>    That is used in some IETF protocols (OSPF iirc) so rhat's a
>    pity, and will in those (maybe less common) cases consume a
>    few bytes that could otherwise be saved.  I think, but am not
>    sure, that the WG already discussed this, but if not, maybe
>    worth a thought? (Or even a 2nd thought:-) And appendix A.1
>    is really puzzling - as it provides instructions for how to
>    not follow a MUST in the body of the document.
>=20
> I think we left the mail thread on this with you saying "Best to ask =
the chairs if
> they agree that this is WG consensus," as you're an admitteddly strong =
partisan
> on this topic.
>=20
> So, COSE chairs - what's your take? (If you say this is ok with the =
WG, I'll clear.)
>=20
>    (6) section 10: why MUST the kty values be present always?
>    That seems unnecessary in some contexts and I don't get a
>    security reason why it's needed e.g. if there's an alg id
>    somewhere - can you explain? I can see folks omitting this
>    leading to interop problems for not useful reasons. (Same
>    comment applies in other cases where kty is a MUST, e.g.
>    12.1.2, 12.2.1.)
>=20
> I think this is the similar to discuss point (2) above.
>=20
> So again, COSE chairs, can you confirm that this design does reflect =
WG
> consensus and isn't just a thorough and good editor getting his way? =
(If you say
> this is ok with the WG, I'll clear.)
>=20
>=20
> ----------------------------------------------------------------------
> COMMENT:
> ----------------------------------------------------------------------
>=20
>=20
> OLD COMMENTS BELOW, I DIDN'T CHECK THEM. Happy to chat more about 'em
> if that's useful.
>=20
> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs =
re-phrasing.
>=20
> - 1.5: I'd add a reference to RFC5116.
>=20
> - 3.1, crit: The statement that security libraries or application code =
can handle
> this is odd - isn't that an API requirement? (I'm not objecting, but =
it's odd.)
>=20
> - 3.1, "content type" is the space there intended?  If so, maybe add =
quotes or a
> comma or something to disambiguate the name and descriptive text? Same =
for
> other multi-word names here.
>=20
> - 3.1, "all the keys may need to be checked" - really?  Or do you mean =
all the
> keys associated with this kid?
>=20
> - 3.1, IV/Partial IV - I think it's an error to define this here. What =
if some
> algorithm can't use that kind of (0|partial)^IV but needs something =
else instead?
> Shouldn't all mechanism for handling IVs be defined by the =
algorithm/mode?
> (This isn't a discuss because I can't think of a good counter example =
and there'd
> be other ways around the problem too probably.)
>=20
> - 4.1: signingTime is often needed with signatures. Isn't that common =
enough to
> want to define a way to do it, as an option?
>=20
> - 4.1: If I sign with a private key corresponding to a 2047 or 2049 =
bit RSA public
> key modulus, then is it clear what to put where in the signature bstr? =
(Yes, that'd
> be dumb, but I wonder is what to do well enough defined, as I don't =
think you
> can rule it out in all cases.) Since you don't include RSA here I =
guess it's ok to skip
> this, but maybe you need to say that such issues need to be handled in =
the
> definition of signature algs.
>=20
> - 4.3: "cannot bleed" isn't clear enough maybe, give an example =
perhaps where
> the decoder can fail to disambiguate a boundary?
>=20
> 4.4, last para: I disagree that one must (even lowercase
> must) check the signing identity.  That's application behaviour and =
should be
> stated here in such concrete terms.
> At least s/must also/may also want to/
>=20
> (Note - the above were comments on -18, but also seem to work based on =
-19.
> Subsequent comments are on -19.)
>=20
> - 7.1: "starting at the same base IV" - are you missing "and =
incrementing" or
> something? Otherwise I think this seems unclear.
>=20
> - 8.2.1: is the phrasing of the 1st para right? would it be better to =
say that the
> value of a key for EdDSA MUST NOT be used for ECDH and vice-versa. (Or =
maybe
> points instead of
> keys?)
>=20
> - 8.2.1: you need a reference for batch signing. (Or could it be =
omitted?)
>=20
> - section 9: I think it'd be good to be clearer about the strength of =
truncated
> MAC values. (And I can't recall the right thing to say off the top of =
my head:-)
>=20
> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be =
better to refer to
> the draft as that should be published soon. (Same for RFC3447 btw.)
>=20
>    [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
>=20
> - 12.4: Why "OKP"? And saying there's no "simple way" to do point =
validation
> seems fairly opaque, a reference there or explanatory text would be =
good. (Ah,
> it's in section 13, maybe shuffle the text or include a pointer.) =
Octet key pair
> doesn't seem like that good a name to me btw.
>=20
> - 12.5: The 1st para seems wrong. (Or at least is unclear to
> me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway, does it =
mean
> double encryption or two parallel ciphertexts?
> (I assume the former.) What's the algebraic thing you're trying to =
explain?  It'd
> be good to provide that for such relatively complex operations I =
think. Is this
> what you mean?
>=20
> 		KW(KDF(DH-shared),CEK)
>=20
> - Table 22: The EC2 or OKP value is fixed per curve and the =
cryptographic
> function being performed so seems unnecessary.
> Do you really need it so? Why? (I'm not buying that some future form =
of ECC
> might mean this is needed btw - and codepoints aren't expensive here, =
right? So
> other forms of ECC can burn codepoints when that's needed and in the
> meantime we'd save bytes and complexity.)
>=20
> - Section 15: Do we have any examples of such a profile?  I think it'd =
be great if
> we did and could add an informative reference here (even if that's to =
an early I-
> D).
>=20
> - section 19: I don't get how ECDSA is normative and the cfrg curves =
are not.
> Same for RFC6979. Maybe these all could do with checking? (No big deal =
IMO
> but maybe worth it.)
>=20
> - Appendices A.1 (as already noted) and A.2 are a puzzle.
> Why say in the body of the document to do <foo> and then an appendix =
that
> says how to do <not-foo>?
>=20
> - Appendix C and the implementation status section: Many thanks - =
great to see
> that! (I didn't check 'em though:-)
>=20
> - Thanks also for speedily handling the extensive secdir review.
>=20
>    [2] =
https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html



From nobody Sun Oct 16 15:41:51 2016
Return-Path: <stephen.farrell@cs.tcd.ie>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 78748129510; Sun, 16 Oct 2016 15:41:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.732
X-Spam-Level: 
X-Spam-Status: No, score=-4.732 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.431, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cs.tcd.ie
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 R31Va2sRdnMA; Sun, 16 Oct 2016 15:41:45 -0700 (PDT)
Received: from mercury.scss.tcd.ie (mercury.scss.tcd.ie [134.226.56.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 540C2129481; Sun, 16 Oct 2016 15:41:45 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mercury.scss.tcd.ie (Postfix) with ESMTP id 163C7BE3E; Sun, 16 Oct 2016 23:41:42 +0100 (IST)
X-Virus-Scanned: Debian amavisd-new at scss.tcd.ie
Received: from mercury.scss.tcd.ie ([127.0.0.1]) by localhost (mercury.scss.tcd.ie [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PDoOAj11RaOj; Sun, 16 Oct 2016 23:41:40 +0100 (IST)
Received: from [10.87.48.210] (95-45-153-252-dynamic.agg2.phb.bdt-fng.eircom.net [95.45.153.252]) by mercury.scss.tcd.ie (Postfix) with ESMTPSA id 7D036BE39; Sun, 16 Oct 2016 23:41:39 +0100 (IST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cs.tcd.ie; s=mail; t=1476657700; bh=sflH0Q0bROfnr0frq3+zrrXM2VmyteeY0+fSZrzXqg4=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=AECAB/GzCM3nQFkHJoO+owkOVSkZq6TEQSw6V+wvoCJE98HhezHigG8iqe/arsx2z WGULKEMEQt8q5rdSams7OqIHOWJek86B1hm68jbtuvLvRk4mZUsBi3l7DKSbQiJIdC TdSrE8+tsDj34Md/4nTQZrXyXYJZ3Z3OEbS86BYk=
To: Jim Schaad <ietf@augustcellars.com>, 'The IESG' <iesg@ietf.org>
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com> <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com>
From: Stephen Farrell <stephen.farrell@cs.tcd.ie>
Openpgp: id=D66EA7906F0B897FB2E97D582F3C8736805F8DA2; url=
Message-ID: <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie>
Date: Sun, 16 Oct 2016 23:41:39 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0
MIME-Version: 1.0
In-Reply-To: <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms090700070206040301000204"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/6Vbad7tD1nAmukDunnky_Epm380>
Cc: cose-chairs@ietf.org, cose@ietf.org, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 16 Oct 2016 22:41:49 -0000

This is a cryptographically signed message in MIME format.

--------------ms090700070206040301000204
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Hiya,

Dear cose-chairs - there is stuff in this discuss for you to deal
with. (Just putting that there in case you're not delving down
into the body of the mails:-)

On 16/10/16 22:50, Jim Schaad wrote:
> I think we dealt with all of the comments.  I cannot help you with gett=
ing chair response.
>=20
> See below for my one issue.
>=20
> Jim
>=20
>=20
>> -----Original Message-----
>> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie]
>> Sent: Sunday, October 16, 2016 1:57 PM
>> To: The IESG <iesg@ietf.org>
>> Cc: draft-ietf-cose-msg@ietf.org; Goeran Selander
>> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
>> goran.selander@ericsson.com; cose@ietf.org
>> Subject: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DI=
SCUSS and
>> COMMENT)
>>
>> Stephen Farrell has entered the following ballot position for
>> draft-ietf-cose-msg-20: Discuss
>>
>> When responding, please keep the subject line intact and reply to all =
email
>> addresses included in the To and CC lines. (Feel free to cut this intr=
oductory
>> paragraph, however.)
>>
>>
>> Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.h=
tml
>> for more information about IESG DISCUSS and COMMENT positions.
>>
>>
>> The document, along with other ballot positions, can be found here:
>> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>>
>>
>>
>> ----------------------------------------------------------------------=

>> DISCUSS:
>> ----------------------------------------------------------------------=

>>
>>
>> Thanks for the updates in -20. I think we've only the following points=
 left. Note
>> that 2 of those are questions to the WG chairs and not to Jim.
>>
>>    (1.1) table 2: As-is the value type column seems to me to
>>    make CDDL normative. I don't see the natural language version
>>    that you said would be normative.
>>
>> Can you help me see that the changes there are such that CDDL is ok as=

>> informative? I'm not sure but as I read it there is still no natural l=
anguage
>> statement that a "counter signature" is one (or more) COSE_Signature v=
alues.
>=20
> In section 1.3 the following text was added:
>=20
> Two syntaxes from CDDL appear in this document as shorthand. These are:=

>=20
>     FOO / BAR - indicates that either FOO or BAR can appear here
>     [+ FOO] - indicates that the type FOO appears one or more times in =
an array
>=20
> The value from the table is:
>=20
> COSE_Signature / [+ COSE_Signature ]
>=20
> Section 4.1 contains the text:
>=20
> The CBOR object that carries the signature and information about the si=
gnature is called the COSE_Signature structure.
>=20
>>From that I think that all of the needed normative text is present.

Yeah, I get that. But then I think you've embedded some
CDDL notation at least as normative. (I mean the constructs
you describe with FOO/BAR above.)

While I do start to feel pedantry-panic that I'm saying
it, if really treating CDDL as informative, I think you
ought say in text that one or more COSE_Signature fields
need to be in a counter signature.

But I'm gonna clear that anyway as the whole CDDL is not
normative thing is really pretence IMO and there's no point
in me joining in with that further.

That means that clearing this discuss is now solely down
to the chairs saying they're happy that Jim's positions
do reflect wG consensus.

Cheers,
S.




>=20
>>
>>    (2) 3.1, alg: so you're disallowing a setup where the kid
>>    alone identifies the key and algorithm to the recipient?
>>    That is used in some IETF protocols (OSPF iirc) so rhat's a
>>    pity, and will in those (maybe less common) cases consume a
>>    few bytes that could otherwise be saved.  I think, but am not
>>    sure, that the WG already discussed this, but if not, maybe
>>    worth a thought? (Or even a 2nd thought:-) And appendix A.1
>>    is really puzzling - as it provides instructions for how to
>>    not follow a MUST in the body of the document.
>>
>> I think we left the mail thread on this with you saying "Best to ask t=
he chairs if
>> they agree that this is WG consensus," as you're an admitteddly strong=
 partisan
>> on this topic.
>>
>> So, COSE chairs - what's your take? (If you say this is ok with the WG=
, I'll clear.)
>>
>>    (6) section 10: why MUST the kty values be present always?
>>    That seems unnecessary in some contexts and I don't get a
>>    security reason why it's needed e.g. if there's an alg id
>>    somewhere - can you explain? I can see folks omitting this
>>    leading to interop problems for not useful reasons. (Same
>>    comment applies in other cases where kty is a MUST, e.g.
>>    12.1.2, 12.2.1.)
>>
>> I think this is the similar to discuss point (2) above.
>>
>> So again, COSE chairs, can you confirm that this design does reflect W=
G
>> consensus and isn't just a thorough and good editor getting his way? (=
If you say
>> this is ok with the WG, I'll clear.)
>>
>>
>> ----------------------------------------------------------------------=

>> COMMENT:
>> ----------------------------------------------------------------------=

>>
>>
>> OLD COMMENTS BELOW, I DIDN'T CHECK THEM. Happy to chat more about 'em
>> if that's useful.
>>
>> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs re=
-phrasing.
>>
>> - 1.5: I'd add a reference to RFC5116.
>>
>> - 3.1, crit: The statement that security libraries or application code=
 can handle
>> this is odd - isn't that an API requirement? (I'm not objecting, but i=
t's odd.)
>>
>> - 3.1, "content type" is the space there intended?  If so, maybe add q=
uotes or a
>> comma or something to disambiguate the name and descriptive text? Same=
 for
>> other multi-word names here.
>>
>> - 3.1, "all the keys may need to be checked" - really?  Or do you mean=
 all the
>> keys associated with this kid?
>>
>> - 3.1, IV/Partial IV - I think it's an error to define this here. What=
 if some
>> algorithm can't use that kind of (0|partial)^IV but needs something el=
se instead?
>> Shouldn't all mechanism for handling IVs be defined by the algorithm/m=
ode?
>> (This isn't a discuss because I can't think of a good counter example =
and there'd
>> be other ways around the problem too probably.)
>>
>> - 4.1: signingTime is often needed with signatures. Isn't that common =
enough to
>> want to define a way to do it, as an option?
>>
>> - 4.1: If I sign with a private key corresponding to a 2047 or 2049 bi=
t RSA public
>> key modulus, then is it clear what to put where in the signature bstr?=
 (Yes, that'd
>> be dumb, but I wonder is what to do well enough defined, as I don't th=
ink you
>> can rule it out in all cases.) Since you don't include RSA here I gues=
s it's ok to skip
>> this, but maybe you need to say that such issues need to be handled in=
 the
>> definition of signature algs.
>>
>> - 4.3: "cannot bleed" isn't clear enough maybe, give an example perhap=
s where
>> the decoder can fail to disambiguate a boundary?
>>
>> 4.4, last para: I disagree that one must (even lowercase
>> must) check the signing identity.  That's application behaviour and sh=
ould be
>> stated here in such concrete terms.
>> At least s/must also/may also want to/
>>
>> (Note - the above were comments on -18, but also seem to work based on=
 -19.
>> Subsequent comments are on -19.)
>>
>> - 7.1: "starting at the same base IV" - are you missing "and increment=
ing" or
>> something? Otherwise I think this seems unclear.
>>
>> - 8.2.1: is the phrasing of the 1st para right? would it be better to =
say that the
>> value of a key for EdDSA MUST NOT be used for ECDH and vice-versa. (Or=
 maybe
>> points instead of
>> keys?)
>>
>> - 8.2.1: you need a reference for batch signing. (Or could it be omitt=
ed?)
>>
>> - section 9: I think it'd be good to be clearer about the strength of =
truncated
>> MAC values. (And I can't recall the right thing to say off the top of =
my head:-)
>>
>> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be bette=
r to refer to
>> the draft as that should be published soon. (Same for RFC3447 btw.)
>>
>>    [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
>>
>> - 12.4: Why "OKP"? And saying there's no "simple way" to do point vali=
dation
>> seems fairly opaque, a reference there or explanatory text would be go=
od. (Ah,
>> it's in section 13, maybe shuffle the text or include a pointer.) Octe=
t key pair
>> doesn't seem like that good a name to me btw.
>>
>> - 12.5: The 1st para seems wrong. (Or at least is unclear to
>> me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway, does it =
mean
>> double encryption or two parallel ciphertexts?
>> (I assume the former.) What's the algebraic thing you're trying to exp=
lain?  It'd
>> be good to provide that for such relatively complex operations I think=
=2E Is this
>> what you mean?
>>
>> 		KW(KDF(DH-shared),CEK)
>>
>> - Table 22: The EC2 or OKP value is fixed per curve and the cryptograp=
hic
>> function being performed so seems unnecessary.
>> Do you really need it so? Why? (I'm not buying that some future form o=
f ECC
>> might mean this is needed btw - and codepoints aren't expensive here, =
right? So
>> other forms of ECC can burn codepoints when that's needed and in the
>> meantime we'd save bytes and complexity.)
>>
>> - Section 15: Do we have any examples of such a profile?  I think it'd=
 be great if
>> we did and could add an informative reference here (even if that's to =
an early I-
>> D).
>>
>> - section 19: I don't get how ECDSA is normative and the cfrg curves a=
re not.
>> Same for RFC6979. Maybe these all could do with checking? (No big deal=
 IMO
>> but maybe worth it.)
>>
>> - Appendices A.1 (as already noted) and A.2 are a puzzle.
>> Why say in the body of the document to do <foo> and then an appendix t=
hat
>> says how to do <not-foo>?
>>
>> - Appendix C and the implementation status section: Many thanks - grea=
t to see
>> that! (I didn't check 'em though:-)
>>
>> - Thanks also for speedily handling the extensive secdir review.
>>
>>    [2] https://www.ietf.org/mail-archive/web/secdir/current/msg06801.h=
tml
>=20
>=20


--------------ms090700070206040301000204
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC
CvIwggUIMIID8KADAgECAhBPzaE7pzYviUJyhmHTFBdnMA0GCSqGSIb3DQEBCwUAMHUxCzAJ
BgNVBAYTAklMMRYwFAYDVQQKEw1TdGFydENvbSBMdGQuMSkwJwYDVQQLEyBTdGFydENvbSBD
ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEjMCEGA1UEAxMaU3RhcnRDb20gQ2xhc3MgMSBDbGll
bnQgQ0EwHhcNMTYwMjA5MDkyODE1WhcNMTcwMjA5MDkyODE1WjBOMSIwIAYDVQQDDBlzdGVw
aGVuLmZhcnJlbGxAY3MudGNkLmllMSgwJgYJKoZIhvcNAQkBFhlzdGVwaGVuLmZhcnJlbGxA
Y3MudGNkLmllMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtuC0rYze/2JinSra
C9F2RjGdQZjNALLcW9C3WKTwYII3wBslobmHuPEYE5JaGItmzuKnAW619R1rD/kfoNWC19N3
rBZ6UX9Cmb9D9exCwYIwVuSwjrCQWGxgCtNQTrwKzCCpI790GRiMTvxvO7UmzmBrCaBLiZW5
R0fBjK5Yn6hUhAzGBkNbkIEL28cLJqH0yVz7Kl92OlzrQqTPEts5m6cDnNdY/ADfeAX18c1r
dxZqcAxhLotrCqgsVA4ilbQDMMXGTLlB5TP35HeWZuGBU7xu003rLcFLdOkD8xvpJoYZy9Kt
3oABXPS5yqtMK+XCNdqmMn+4mOtLwQSMmPCSiQIDAQABo4IBuTCCAbUwCwYDVR0PBAQDAgSw
MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAJBgNVHRMEAjAAMB0GA1UdDgQWBBQJ
QhvwQ5Fl372Z6xqo6fdn8XejTTAfBgNVHSMEGDAWgBQkgWw5Yb5JD4+3G0YrySi1J0htaDBv
BggrBgEFBQcBAQRjMGEwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLnN0YXJ0c3NsLmNvbTA5
BggrBgEFBQcwAoYtaHR0cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvc2NhLmNsaWVudDEu
Y3J0MDgGA1UdHwQxMC8wLaAroCmGJ2h0dHA6Ly9jcmwuc3RhcnRzc2wuY29tL3NjYS1jbGll
bnQxLmNybDAkBgNVHREEHTAbgRlzdGVwaGVuLmZhcnJlbGxAY3MudGNkLmllMCMGA1UdEgQc
MBqGGGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tLzBGBgNVHSAEPzA9MDsGCysGAQQBgbU3AQIE
MCwwKgYIKwYBBQUHAgEWHmh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeTANBgkqhkiG
9w0BAQsFAAOCAQEArzrSv2C8PlBBmGuiGrzm2Wma46/KHtXmZYS0bsd43pM66Pc/MsqPE0HD
C1GzMFfwB6BfkJn8ijNSIhlgj898WzjvnpM/SO8KStjlB8719ig/xKISrOl5mX55XbFlQtX9
U6MrqRgbDIATxhD9IDr+ryvovDzChqgQj7mt2jYr4mdlRjsjod3H1VY6XglRmaaNGZfsCARM
aE/TU5SXIiqauwt5KxNGYAY67QkOBs7O1FkSXpTk7+1MmzJMF4nP8QQ5n8vhVNseF+/Wm7ai
9mtnrkLbaznMsy/ULo/C2yuLUWTbZZbf4EKNmVdme6tUDgYkFjAFOblfA7W1fSPiQGagYzCC
BeIwggPKoAMCAQICEGunin0K14jWUQr5WeTntOEwDQYJKoZIhvcNAQELBQAwfTELMAkGA1UE
BhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBEaWdpdGFs
IENlcnRpZmljYXRlIFNpZ25pbmcxKTAnBgNVBAMTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24g
QXV0aG9yaXR5MB4XDTE1MTIxNjAxMDAwNVoXDTMwMTIxNjAxMDAwNVowdTELMAkGA1UEBhMC
SUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmlj
YXRpb24gQXV0aG9yaXR5MSMwIQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQTCC
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL192vfDon2D9luC/dtbX64eG3XAtRmv
mCSsu1d52DXsCR58zJQbCtB2/A5uFqNxWacpXGGtTCRk9dEDBlmixEd8QiLkUfvHpJX/xKnm
VkS6Iye8wUbYzMsDzgnpazlPg19dnSqfhM+Cevdfa89VLnUztRr2cgmCfyO9Otrh7LJDPG+4
D8ZnAqDtVB8MKYJL6QgKyVhhaBc4y3bGWxKyXEtx7QIZZGxPwSkzK3WIN+VKNdkiwTubW5PI
dopmykwvIjLPqbJK7yPwFZYekKE015OsW6FV+s4DIM8UlVS8pkIsoGGJtMuWjLL4tq2hYQuu
N0jhrxK1ljz50hH23gA9cbMCAwEAAaOCAWQwggFgMA4GA1UdDwEB/wQEAwIBBjAdBgNVHSUE
FjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwEgYDVR0TAQH/BAgwBgEB/wIBADAyBgNVHR8EKzAp
MCegJaAjhiFodHRwOi8vY3JsLnN0YXJ0c3NsLmNvbS9zZnNjYS5jcmwwZgYIKwYBBQUHAQEE
WjBYMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5zdGFydHNzbC5jb20wMAYIKwYBBQUHMAKG
JGh0dHA6Ly9haWEuc3RhcnRzc2wuY29tL2NlcnRzL2NhLmNydDAdBgNVHQ4EFgQUJIFsOWG+
SQ+PtxtGK8kotSdIbWgwHwYDVR0jBBgwFoAUTgvvGqRAW6UXaYcwyjRoQ9BBrvIwPwYDVR0g
BDgwNjA0BgRVHSAAMCwwKgYIKwYBBQUHAgEWHmh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3Bv
bGljeTANBgkqhkiG9w0BAQsFAAOCAgEAi+P3h+wBi4StDwECW5zhIycjBL008HACblIf26HY
0JdOruKbrWDsXUsiI0j/7Crft9S5oxvPiDtVqspBOB/y5uzSns1lZwh7sG96bYBZpcGzGxpF
NjDmQbcM3yl3WFIRS4WhNrsOY14V7y2IrUGsvetsD+bjyOngCIVeC/GmsmtbuLOzJ606tEc9
uRbhjTu/b0x2Fo+/e7UkQvKzNeo7OMhijixaULyINBfCBJb+e29bLafgu6JqjOUJ9eXXj20p
6q/CW+uVrZiSW57+q5an2P2i7hP85jQJcy5j4HzA0rSiF3YPhKGAWUxKPMAVGgcYoXzWydOv
Z3UDsTDTagXpRDIKQLZo02wrlxY6iMFqvlzsemVf1odhQJmi7Eh5TbxI40kDGcBOBHhwnaOu
mZhLP+SWJQnjpLpSlUOj95uf1zo9oz9e0NgIJoz/tdfrBzez76xtDsK0KfUDHt1/q59BvDI7
RX6gVr0fQoCyMczNzCTcRXYHY0tq2J0oT+bsb6sH2b4WVWAiJKnSYaWDjdA70qHX4mq9MIjO
/ZskmSY8wtAk24orAc0vwXgYanqNsBX5Yv4sN4Z9VyrwMdLcusP7HJgRdAGKpkR2I9U4zEsN
JQJewM7S4Jalo1DyPrLpL2nTET8ZrSl5Utp1UeGp/2deoprGevfnxWB+vHNQiu85o6MxggPM
MIIDyAIBATCBiTB1MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEpMCcG
A1UECxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIzAhBgNVBAMTGlN0YXJ0
Q29tIENsYXNzIDEgQ2xpZW50IENBAhBPzaE7pzYviUJyhmHTFBdnMA0GCWCGSAFlAwQCAQUA
oIICEzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xNjEwMTYy
MjQxMzlaMC8GCSqGSIb3DQEJBDEiBCAgiNhABfijOXV2lt70wKGUlFCToKLT4ObYMso91Ctj
vDBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCGSAFlAwQBKjALBglghkgBZQMEAQIwCgYIKoZIhvcN
AwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMC
AgEoMIGaBgkrBgEEAYI3EAQxgYwwgYkwdTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0
Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMw
IQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQQIQT82hO6c2L4lCcoZh0xQXZzCB
nAYLKoZIhvcNAQkQAgsxgYyggYkwdTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29t
IEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYD
VQQDExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQQIQT82hO6c2L4lCcoZh0xQXZzANBgkq
hkiG9w0BAQEFAASCAQADDWuy9J7SCrG7eDl8ObpAo0lcc/UGjVsw/c8D9m0wBf4/+DS0kuAg
XCp5y47BDICizEsF0aNsBuDt/eIfe2vTSepx01o2Yr2YgDQSW253STP/NzUNxoQxnKpevtbZ
qGya8e6pi7WwdIRCS2kj89eCc5Uli6j93025OMHc7FZ46yXZe09ofgW5ZjVjNYgrehVPa+G9
0sLKyFNyeRX0WXdoeCEEGleSTMiAJNAVgpFvbJKOXzNteyv2O900XojuiBDfNyl5suvkXO7a
91iKrHpILaO9GLDhXlsipMlZsOkbjQW4CJUy3gop2wLtMbDfQrmNQFrcplx02hQawIEZeYWd
AAAAAAAA
--------------ms090700070206040301000204--


From nobody Sun Oct 16 15:42:49 2016
Return-Path: <stephen.farrell@cs.tcd.ie>
X-Original-To: cose@ietf.org
Delivered-To: cose@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id D1268129481; Sun, 16 Oct 2016 15:42:45 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: "Stephen Farrell" <stephen.farrell@cs.tcd.ie>
To: "The IESG" <iesg@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.34.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <147665776585.25862.148606130111503753.idtracker@ietfa.amsl.com>
Date: Sun, 16 Oct 2016 15:42:45 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/fKc6HOu3gGFtYfLAp7FsJASCZCE>
Cc: cose-chairs@ietf.org, goran.selander@ericsson.com, cose@ietf.org, draft-ietf-cose-msg@ietf.org
Subject: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 16 Oct 2016 22:42:46 -0000

Stephen Farrell has entered the following ballot position for
draft-ietf-cose-msg-20: Discuss

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)


Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.


The document, along with other ballot positions, can be found here:
https://datatracker.ietf.org/doc/draft-ietf-cose-msg/



----------------------------------------------------------------------
DISCUSS:
----------------------------------------------------------------------


Thanks for the updates in -20. I think we've only the following points
left. Note that all of those are questions to the WG chairs and not to
Jim.

   (2) 3.1, alg: so you're disallowing a setup where the kid
   alone identifies the key and algorithm to the recipient?
   That is used in some IETF protocols (OSPF iirc) so rhat's a
   pity, and will in those (maybe less common) cases consume a
   few bytes that could otherwise be saved.  I think, but am not
   sure, that the WG already discussed this, but if not, maybe
   worth a thought? (Or even a 2nd thought:-) And appendix A.1
   is really puzzling - as it provides instructions for how to
   not follow a MUST in the body of the document.

I think we left the mail thread on this with you saying "Best
to ask the chairs if they agree that this is WG consensus," as
you're an admitteddly strong partisan on this topic. 

So, COSE chairs - what's your take? (If you say this is ok with
the WG, I'll clear.)

   (6) section 10: why MUST the kty values be present always?
   That seems unnecessary in some contexts and I don't get a
   security reason why it's needed e.g. if there's an alg id
   somewhere - can you explain? I can see folks omitting this
   leading to interop problems for not useful reasons. (Same
   comment applies in other cases where kty is a MUST, e.g.
   12.1.2, 12.2.1.)

I think this is the similar to discuss point (2) above.

So again, COSE chairs, can you confirm that this design
does reflect WG consensus and isn't just a thorough and
good editor getting his way? (If you say this is ok with
the WG, I'll clear.)





From nobody Sun Oct 16 15:58:29 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: cose@ietf.org
Delivered-To: cose@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 08F18129473; Sun, 16 Oct 2016 15:58:28 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.34.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <147665870802.25897.423579786414842884.idtracker@ietfa.amsl.com>
Date: Sun, 16 Oct 2016 15:58:28 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/Qqmg9EM-INqXty3SdtG_Bjz4YtQ>
Cc: cose@ietf.org
Subject: [COSE] I-D Action: draft-ietf-cose-msg-21.txt
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 16 Oct 2016 22:58:28 -0000

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 of the IETF.

        Title           : CBOR Object Signing and Encryption (COSE)
        Author          : Jim Schaad
	Filename        : draft-ietf-cose-msg-21.txt
	Pages           : 121
	Date            : 2016-10-16

Abstract:
   Concise Binary Object Representation (CBOR) is data format designed
   for small code size and small message size.  There is a need for the
   ability to have basic security services defined for this data format.
   This document defines the CBOR Object Signing and Encryption (COSE)
   specification.  This specification describes how to create and
   process signature, message authentication codes and encryption using
   CBOR for serialization.  This specification additionally specifies
   how to represent cryptographic keys using CBOR.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-cose-msg/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-cose-msg-21

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-cose-msg-21


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/


From nobody Sun Oct 16 20:32:02 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: cose@ietf.org
Delivered-To: cose@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 25F9D129576; Sun, 16 Oct 2016 20:32:01 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.34.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <147667512114.25878.2641646693383494747.idtracker@ietfa.amsl.com>
Date: Sun, 16 Oct 2016 20:32:01 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/pNsvrcu9uel27BpTJYIME0Ece94>
Cc: cose@ietf.org
Subject: [COSE] I-D Action: draft-ietf-cose-msg-22.txt
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 17 Oct 2016 03:32:01 -0000

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 of the IETF.

        Title           : CBOR Object Signing and Encryption (COSE)
        Author          : Jim Schaad
	Filename        : draft-ietf-cose-msg-22.txt
	Pages           : 121
	Date            : 2016-10-16

Abstract:
   Concise Binary Object Representation (CBOR) is data format designed
   for small code size and small message size.  There is a need for the
   ability to have basic security services defined for this data format.
   This document defines the CBOR Object Signing and Encryption (COSE)
   specification.  This specification describes how to create and
   process signature, message authentication codes and encryption using
   CBOR for serialization.  This specification additionally specifies
   how to represent cryptographic keys using CBOR.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-cose-msg/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-cose-msg-22

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-cose-msg-22


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/


From nobody Sun Oct 16 20:37:40 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E3354129569 for <cose@ietfa.amsl.com>; Sun, 16 Oct 2016 20:37:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.332
X-Spam-Level: 
X-Spam-Status: No, score=-2.332 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.431, SPF_PASS=-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 unTZ49rOTywx for <cose@ietfa.amsl.com>; Sun, 16 Oct 2016 20:37:37 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3EC38129568 for <cose@ietf.org>; Sun, 16 Oct 2016 20:37:37 -0700 (PDT)
Received: from hebrews (24.21.96.37) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Sun, 16 Oct 2016 20:53:49 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: <cose@ietf.org>
References: <147667512114.25878.2641646693383494747.idtracker@ietfa.amsl.com>
In-Reply-To: <147667512114.25878.2641646693383494747.idtracker@ietfa.amsl.com>
Date: Sun, 16 Oct 2016 20:37:29 -0700
Message-ID: <02e501d22827$cabd60d0$60382270$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Content-Language: en-us
Thread-Index: AQHspmconfbgosbTxIH2NocIvYimgaB3AlVg
X-Originating-IP: [24.21.96.37]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/VT8VNBuqUwunQTiHV_W6Rlh69jU>
Subject: [COSE] FW:  I-D Action: draft-ietf-cose-msg-22.txt
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 17 Oct 2016 03:37:40 -0000

This update represents fixing the problems that IANA had raised during their
review.  This version was needed because I accidently lost some updates when
-21 was published dealing with deterministic ECDSA.

With this publication, I believe that all issues raised have been addressed
and the IESG should be able to progress to the RFC editor queue.

Jim


> -----Original Message-----
> From: COSE [mailto:cose-bounces@ietf.org] On Behalf Of internet-
> drafts@ietf.org
> Sent: Sunday, October 16, 2016 8:32 PM
> To: i-d-announce@ietf.org
> Cc: cose@ietf.org
> Subject: [COSE] I-D Action: draft-ietf-cose-msg-22.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 of the
IETF.
> 
>         Title           : CBOR Object Signing and Encryption (COSE)
>         Author          : Jim Schaad
> 	Filename        : draft-ietf-cose-msg-22.txt
> 	Pages           : 121
> 	Date            : 2016-10-16
> 
> Abstract:
>    Concise Binary Object Representation (CBOR) is data format designed
>    for small code size and small message size.  There is a need for the
>    ability to have basic security services defined for this data format.
>    This document defines the CBOR Object Signing and Encryption (COSE)
>    specification.  This specification describes how to create and
>    process signature, message authentication codes and encryption using
>    CBOR for serialization.  This specification additionally specifies
>    how to represent cryptographic keys using CBOR.
> 
> 
> The IETF datatracker status page for this draft is:
> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
> 
> There's also a htmlized version available at:
> https://tools.ietf.org/html/draft-ietf-cose-msg-22
> 
> A diff from the previous version is available at:
> https://www.ietf.org/rfcdiff?url2=draft-ietf-cose-msg-22
> 
> 
> 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
> COSE@ietf.org
> https://www.ietf.org/mailman/listinfo/cose


From nobody Mon Oct 17 08:38:33 2016
Return-Path: <aamelnikov@fastmail.fm>
X-Original-To: cose@ietf.org
Delivered-To: cose@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 2956D129455; Mon, 17 Oct 2016 08:38:32 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: "Alexey Melnikov" <aamelnikov@fastmail.fm>
To: "The IESG" <iesg@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.34.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <147671871216.4522.13176318555275171854.idtracker@ietfa.amsl.com>
Date: Mon, 17 Oct 2016 08:38:32 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/EWRcTzQ5qUvWSdOmTOJHhjkL3zg>
Cc: cose-chairs@ietf.org, goran.selander@ericsson.com, cose@ietf.org, draft-ietf-cose-msg@ietf.org
Subject: [COSE] Alexey Melnikov's No Objection on draft-ietf-cose-msg-22: (with COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 17 Oct 2016 15:38:32 -0000

Alexey Melnikov has entered the following ballot position for
draft-ietf-cose-msg-22: No Objection

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)


Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.


The document, along with other ballot positions, can be found here:
https://datatracker.ietf.org/doc/draft-ietf-cose-msg/



----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

Thank you for addressing my earlier comments. I have one small issue that
resulted in a recent change:

This is a well written document, despite its length. Thank you for that.

Some specific comments:

content type:  This parameter is used to indicate the content type of
      the data in the payload or cipher text fields.  Integers are from
      the "CoAP Content-Formats" IANA registry table [COAP.Formats].
      Text values following the syntax of Content-Type defined in
      Section 4.2 of [RFC6838] omitting the prefix string "Content-
      Type:".

This is not quite right, as Section 4.2 of [RFC6838] doesn't define
Content-Type header field. It defines:

     type-name = restricted-name
     subtype-name = restricted-name

     restricted-name = restricted-name-first *126restricted-name-chars
     restricted-name-first  = ALPHA / DIGIT
     restricted-name-chars  = ALPHA / DIGIT / "!" / "#" /
                              "$" / "&" / "-" / "^" / "_"
     restricted-name-chars =/ "." ; Characters before first dot always
                                  ; specify a facet name
     restricted-name-chars =/ "+" ; Characters after last plus always
                                  ; specify a structured syntax suffix

So you should say something like this instead:

      Text values following the syntax "<type-name>/<subtype-name>",
      where <type-name> and <subtype-name> are defined in
      Section 4.2 of [RFC6838].



From nobody Tue Oct 18 11:20:19 2016
Return-Path: <internet-drafts@ietf.org>
X-Original-To: cose@ietf.org
Delivered-To: cose@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 97972129423; Tue, 18 Oct 2016 11:20:14 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: internet-drafts@ietf.org
To: <i-d-announce@ietf.org>
X-Test-IDTracker: no
X-IETF-IDTracker: 6.35.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <147681481461.30714.1341264893502253060.idtracker@ietfa.amsl.com>
Date: Tue, 18 Oct 2016 11:20:14 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/66D_tKdZP5CX79ucxDY4E5sayBc>
Cc: cose@ietf.org
Subject: [COSE] I-D Action: draft-ietf-cose-msg-23.txt
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Oct 2016 18:20:14 -0000

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 of the IETF.

        Title           : CBOR Object Signing and Encryption (COSE)
        Author          : Jim Schaad
	Filename        : draft-ietf-cose-msg-23.txt
	Pages           : 121
	Date            : 2016-10-18

Abstract:
   Concise Binary Object Representation (CBOR) is data format designed
   for small code size and small message size.  There is a need for the
   ability to have basic security services defined for this data format.
   This document defines the CBOR Object Signing and Encryption (COSE)
   specification.  This specification describes how to create and
   process signature, message authentication codes and encryption using
   CBOR for serialization.  This specification additionally specifies
   how to represent cryptographic keys using CBOR.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-cose-msg/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-cose-msg-23

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-cose-msg-23


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/


From nobody Tue Oct 18 11:51:48 2016
Return-Path: <ietf@augustcellars.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6E7711296CE for <cose@ietfa.amsl.com>; Tue, 18 Oct 2016 11:51:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.332
X-Spam-Level: 
X-Spam-Status: No, score=-2.332 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.431, SPF_PASS=-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 MpTvqSD4L_oe for <cose@ietfa.amsl.com>; Tue, 18 Oct 2016 11:51:45 -0700 (PDT)
Received: from mail2.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 998691296FD for <cose@ietf.org>; Tue, 18 Oct 2016 11:51:44 -0700 (PDT)
Received: from hebrews (50.45.239.150) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Tue, 18 Oct 2016 12:07:55 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: <cose@ietf.org>
References: <147681481461.30714.1341264893502253060.idtracker@ietfa.amsl.com>
In-Reply-To: <147681481461.30714.1341264893502253060.idtracker@ietfa.amsl.com>
Date: Tue, 18 Oct 2016 11:51:36 -0700
Message-ID: <053301d22970$a8df2d00$fa9d8700$@augustcellars.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Content-Language: en-us
Thread-Index: AQFjCKVqe8KlU+PpWZzoc8kaRqjfcqGMz94A
X-Originating-IP: [50.45.239.150]
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/6UMtbnW_QhXAmHzJgNG5GHWqbTM>
Subject: [COSE] FW:  I-D Action: draft-ietf-cose-msg-23.txt
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Oct 2016 18:51:47 -0000

This version has a wording change suggested by Alexey about how content type
fields are constructed.  Nothing major.

Jim


> -----Original Message-----
> From: COSE [mailto:cose-bounces@ietf.org] On Behalf Of internet-
> drafts@ietf.org
> Sent: Tuesday, October 18, 2016 11:20 AM
> To: i-d-announce@ietf.org
> Cc: cose@ietf.org
> Subject: [COSE] I-D Action: draft-ietf-cose-msg-23.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 of the
IETF.
> 
>         Title           : CBOR Object Signing and Encryption (COSE)
>         Author          : Jim Schaad
> 	Filename        : draft-ietf-cose-msg-23.txt
> 	Pages           : 121
> 	Date            : 2016-10-18
> 
> Abstract:
>    Concise Binary Object Representation (CBOR) is data format designed
>    for small code size and small message size.  There is a need for the
>    ability to have basic security services defined for this data format.
>    This document defines the CBOR Object Signing and Encryption (COSE)
>    specification.  This specification describes how to create and
>    process signature, message authentication codes and encryption using
>    CBOR for serialization.  This specification additionally specifies
>    how to represent cryptographic keys using CBOR.
> 
> 
> The IETF datatracker status page for this draft is:
> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
> 
> There's also a htmlized version available at:
> https://tools.ietf.org/html/draft-ietf-cose-msg-23
> 
> A diff from the previous version is available at:
> https://www.ietf.org/rfcdiff?url2=draft-ietf-cose-msg-23
> 
> 
> 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
> COSE@ietf.org
> https://www.ietf.org/mailman/listinfo/cose


From nobody Wed Oct 19 09:02:34 2016
Return-Path: <jricher@mit.edu>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3972A129687; Wed, 19 Oct 2016 09:02:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.631
X-Spam-Level: 
X-Spam-Status: No, score=-4.631 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.431, SPF_PASS=-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 ioa2ehTugQZr; Wed, 19 Oct 2016 09:02:24 -0700 (PDT)
Received: from dmz-mailsec-scanner-6.mit.edu (dmz-mailsec-scanner-6.mit.edu [18.7.68.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 19E3C129590; Wed, 19 Oct 2016 09:02:23 -0700 (PDT)
X-AuditID: 12074423-efbff70000004bee-52-5807990d5e33
Received: from mailhub-auth-1.mit.edu ( [18.9.21.35]) (using TLS with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by  (Symantec Messaging Gateway) with SMTP id 18.C8.19438.D0997085; Wed, 19 Oct 2016 12:02:21 -0400 (EDT)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) by mailhub-auth-1.mit.edu (8.13.8/8.9.2) with ESMTP id u9JG2Kex018715; Wed, 19 Oct 2016 12:02:20 -0400
Received: from [10.251.13.126] ([204.63.45.72]) (authenticated bits=0) (User authenticated as jricher@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.8/8.12.4) with ESMTP id u9JFxo9e024599 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 19 Oct 2016 12:02:15 -0400
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
Content-Type: multipart/signed; boundary="Apple-Mail=_C1CA8B33-B76C-41DF-9F87-3EA703443D66"; protocol="application/pgp-signature"; micalg=pgp-sha256
X-Pgp-Agent: GPGMail
From: Justin Richer <jricher@MIT.EDU>
In-Reply-To: <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie>
Date: Wed, 19 Oct 2016 08:59:43 -0700
Message-Id: <822A08BC-5710-48E6-BCC7-AC86A554EFEC@mit.edu>
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com> <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com> <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie>
To: Stephen Farrell <stephen.farrell@cs.tcd.ie>
X-Mailer: Apple Mail (2.3124)
X-Brightmail-Tracker: H4sIAAAAAAAAA2VSfUgTYRjnvd1ut7WTa072trJoJmU2NQhZ+ZUQJvqPUKSFkKe73HCbejdN /UcJClK21HR+YPMTTY3yI6molJaElVqQpkwIE7FSDEGmJkLdeX5B//2e5/fxPC/vg4sUa2I1 brRYacZCmTSYDFVIffy0RI0kKeTW1xDd775+oHP0VYp1tpkpoPuxcF+iq94oE+k6q1ax81hs d10VFrvuGcdiW1r+IAmia7JwPW0y5tJMcGSKzOBeKZVkDa8ieZ7ph2gRcL5BioEUh+QZ+GBk BRQDGa4g7yDQNj2ECUU3gOX1LSKheITASodTzFu8yWS49nME8Jggg2DPk0WEF4nICgCH1opE Qq4Slgwvbxow0h/Wt7s350nJCOh5uo7xGOX6n2zDmGDuBbB5YgUTUs/B2cFGRBjdA6DdtbaZ pCSD4eveUYkwwRfOvm9CSwFZu2eT2r2b8ISITIVfBj5u4UDY2riwhQPgQEkb+n//BLy7UiYW 8BH4bLFuq38WNtdMbukjoNvegAg4Es44msQNYF8H8NWbC7Rmymhi6TQtm0ZZLDSjDQ0yG61B tD6nB/CfKrng9xz8sse7AIkDjZzouilJUoipXDbf7AIHcETjQ8jtXMsrNVOfb6BYw3Umx0Sz LnCMmzXT1fkZqFFLpoXWKAl9Bacj9FR+Ac1kbssO4qhGRfyN8SQqyHTKSmfQdBbNbLOHcFwD CXE1Z9zP0Ol03g2jybpLI7jUBSAu58KDeQ3BZlFm1pgu8B/AUbWKmKviCJInDDmWHS9/sMNR 2th5oOKe5U2U83Y5d8477nkuGOGCRy0oH2yldil1EbiMpY6/nTyle8U43b09V8Oi5ju+9Ucv bNiDsk3hzjLZZHRYjmq07mVD7r2LL+L8r8gnWqdymSZz4sDcY6841+xy1feU40pdoeF2yTuH s3egKSHePhZCUpewOVth+/TY4YzAsbb6giVJUuho/ohrrMwm8xjVMViAd7ZqUJ+8pEFZA3X6 pIhhqX+sPeg2iwMAAA==
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/3uHXnU5k0Y_Pkqmpa-bTjInZjJM>
Cc: Jim Schaad <ietf@augustcellars.com>, cose-chairs@ietf.org, The IESG <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com, cose@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 19 Oct 2016 16:02:28 -0000

--Apple-Mail=_C1CA8B33-B76C-41DF-9F87-3EA703443D66
Content-Type: multipart/alternative;
	boundary="Apple-Mail=_3D933C28-DC52-4B7D-99D8-D16058EA16FD"


--Apple-Mail=_3D933C28-DC52-4B7D-99D8-D16058EA16FD
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Hi Stephen,

The consensus of the working group after Yokohama was to make the CDDL =
non-normative and still use it as a description/example format.

https://www.ietf.org/mail-archive/web/cose/current/msg00802.html =
<https://www.ietf.org/mail-archive/web/cose/current/msg00802.html>

I believe the current draft reflects that state. Yes, CDDL syntax is =
peppered throughout the document as illustration, but it=E2=80=99s the =
English text that=E2=80=99s normative.

One point that was discussed was that if the draft did not use CDDL, =
then another description language would likely need to be made up to =
make human-readable examples in the text. The group felt that it was =
better to use an existing (even if unfinished/unofficial) description =
format but remove the normative dependency.

 =E2=80=94 Justin, as chair.

> On Oct 16, 2016, at 3:41 PM, Stephen Farrell =
<stephen.farrell@cs.tcd.ie> wrote:
>=20
>=20
> Hiya,
>=20
> Dear cose-chairs - there is stuff in this discuss for you to deal
> with. (Just putting that there in case you're not delving down
> into the body of the mails:-)
>=20
> On 16/10/16 22:50, Jim Schaad wrote:
>> I think we dealt with all of the comments.  I cannot help you with =
getting chair response.
>>=20
>> See below for my one issue.
>>=20
>> Jim
>>=20
>>=20
>>> -----Original Message-----
>>> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie]
>>> Sent: Sunday, October 16, 2016 1:57 PM
>>> To: The IESG <iesg@ietf.org>
>>> Cc: draft-ietf-cose-msg@ietf.org; Goeran Selander
>>> <goran.selander@ericsson.com>; cose-chairs@ietf.org;
>>> goran.selander@ericsson.com; cose@ietf.org
>>> Subject: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with =
DISCUSS and
>>> COMMENT)
>>>=20
>>> Stephen Farrell has entered the following ballot position for
>>> draft-ietf-cose-msg-20: Discuss
>>>=20
>>> When responding, please keep the subject line intact and reply to =
all email
>>> addresses included in the To and CC lines. (Feel free to cut this =
introductory
>>> paragraph, however.)
>>>=20
>>>=20
>>> Please refer to =
https://www.ietf.org/iesg/statement/discuss-criteria.html
>>> for more information about IESG DISCUSS and COMMENT positions.
>>>=20
>>>=20
>>> The document, along with other ballot positions, can be found here:
>>> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>>>=20
>>>=20
>>>=20
>>> =
----------------------------------------------------------------------
>>> DISCUSS:
>>> =
----------------------------------------------------------------------
>>>=20
>>>=20
>>> Thanks for the updates in -20. I think we've only the following =
points left. Note
>>> that 2 of those are questions to the WG chairs and not to Jim.
>>>=20
>>>   (1.1) table 2: As-is the value type column seems to me to
>>>   make CDDL normative. I don't see the natural language version
>>>   that you said would be normative.
>>>=20
>>> Can you help me see that the changes there are such that CDDL is ok =
as
>>> informative? I'm not sure but as I read it there is still no natural =
language
>>> statement that a "counter signature" is one (or more) COSE_Signature =
values.
>>=20
>> In section 1.3 the following text was added:
>>=20
>> Two syntaxes from CDDL appear in this document as shorthand. These =
are:
>>=20
>>    FOO / BAR - indicates that either FOO or BAR can appear here
>>    [+ FOO] - indicates that the type FOO appears one or more times in =
an array
>>=20
>> The value from the table is:
>>=20
>> COSE_Signature / [+ COSE_Signature ]
>>=20
>> Section 4.1 contains the text:
>>=20
>> The CBOR object that carries the signature and information about the =
signature is called the COSE_Signature structure.
>>=20
>>> =46rom that I think that all of the needed normative text is =
present.
>=20
> Yeah, I get that. But then I think you've embedded some
> CDDL notation at least as normative. (I mean the constructs
> you describe with FOO/BAR above.)
>=20
> While I do start to feel pedantry-panic that I'm saying
> it, if really treating CDDL as informative, I think you
> ought say in text that one or more COSE_Signature fields
> need to be in a counter signature.
>=20
> But I'm gonna clear that anyway as the whole CDDL is not
> normative thing is really pretence IMO and there's no point
> in me joining in with that further.
>=20
> That means that clearing this discuss is now solely down
> to the chairs saying they're happy that Jim's positions
> do reflect wG consensus.
>=20
> Cheers,
> S.
>=20
>=20
>=20
>=20
>>=20
>>>=20
>>>   (2) 3.1, alg: so you're disallowing a setup where the kid
>>>   alone identifies the key and algorithm to the recipient?
>>>   That is used in some IETF protocols (OSPF iirc) so rhat's a
>>>   pity, and will in those (maybe less common) cases consume a
>>>   few bytes that could otherwise be saved.  I think, but am not
>>>   sure, that the WG already discussed this, but if not, maybe
>>>   worth a thought? (Or even a 2nd thought:-) And appendix A.1
>>>   is really puzzling - as it provides instructions for how to
>>>   not follow a MUST in the body of the document.
>>>=20
>>> I think we left the mail thread on this with you saying "Best to ask =
the chairs if
>>> they agree that this is WG consensus," as you're an admitteddly =
strong partisan
>>> on this topic.
>>>=20
>>> So, COSE chairs - what's your take? (If you say this is ok with the =
WG, I'll clear.)
>>>=20
>>>   (6) section 10: why MUST the kty values be present always?
>>>   That seems unnecessary in some contexts and I don't get a
>>>   security reason why it's needed e.g. if there's an alg id
>>>   somewhere - can you explain? I can see folks omitting this
>>>   leading to interop problems for not useful reasons. (Same
>>>   comment applies in other cases where kty is a MUST, e.g.
>>>   12.1.2, 12.2.1.)
>>>=20
>>> I think this is the similar to discuss point (2) above.
>>>=20
>>> So again, COSE chairs, can you confirm that this design does reflect =
WG
>>> consensus and isn't just a thorough and good editor getting his way? =
(If you say
>>> this is ok with the WG, I'll clear.)
>>>=20
>>>=20
>>> =
----------------------------------------------------------------------
>>> COMMENT:
>>> =
----------------------------------------------------------------------
>>>=20
>>>=20
>>> OLD COMMENTS BELOW, I DIDN'T CHECK THEM. Happy to chat more about =
'em
>>> if that's useful.
>>>=20
>>> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs =
re-phrasing.
>>>=20
>>> - 1.5: I'd add a reference to RFC5116.
>>>=20
>>> - 3.1, crit: The statement that security libraries or application =
code can handle
>>> this is odd - isn't that an API requirement? (I'm not objecting, but =
it's odd.)
>>>=20
>>> - 3.1, "content type" is the space there intended?  If so, maybe add =
quotes or a
>>> comma or something to disambiguate the name and descriptive text? =
Same for
>>> other multi-word names here.
>>>=20
>>> - 3.1, "all the keys may need to be checked" - really?  Or do you =
mean all the
>>> keys associated with this kid?
>>>=20
>>> - 3.1, IV/Partial IV - I think it's an error to define this here. =
What if some
>>> algorithm can't use that kind of (0|partial)^IV but needs something =
else instead?
>>> Shouldn't all mechanism for handling IVs be defined by the =
algorithm/mode?
>>> (This isn't a discuss because I can't think of a good counter =
example and there'd
>>> be other ways around the problem too probably.)
>>>=20
>>> - 4.1: signingTime is often needed with signatures. Isn't that =
common enough to
>>> want to define a way to do it, as an option?
>>>=20
>>> - 4.1: If I sign with a private key corresponding to a 2047 or 2049 =
bit RSA public
>>> key modulus, then is it clear what to put where in the signature =
bstr? (Yes, that'd
>>> be dumb, but I wonder is what to do well enough defined, as I don't =
think you
>>> can rule it out in all cases.) Since you don't include RSA here I =
guess it's ok to skip
>>> this, but maybe you need to say that such issues need to be handled =
in the
>>> definition of signature algs.
>>>=20
>>> - 4.3: "cannot bleed" isn't clear enough maybe, give an example =
perhaps where
>>> the decoder can fail to disambiguate a boundary?
>>>=20
>>> 4.4, last para: I disagree that one must (even lowercase
>>> must) check the signing identity.  That's application behaviour and =
should be
>>> stated here in such concrete terms.
>>> At least s/must also/may also want to/
>>>=20
>>> (Note - the above were comments on -18, but also seem to work based =
on -19.
>>> Subsequent comments are on -19.)
>>>=20
>>> - 7.1: "starting at the same base IV" - are you missing "and =
incrementing" or
>>> something? Otherwise I think this seems unclear.
>>>=20
>>> - 8.2.1: is the phrasing of the 1st para right? would it be better =
to say that the
>>> value of a key for EdDSA MUST NOT be used for ECDH and vice-versa. =
(Or maybe
>>> points instead of
>>> keys?)
>>>=20
>>> - 8.2.1: you need a reference for batch signing. (Or could it be =
omitted?)
>>>=20
>>> - section 9: I think it'd be good to be clearer about the strength =
of truncated
>>> MAC values. (And I can't recall the right thing to say off the top =
of my head:-)
>>>=20
>>> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be =
better to refer to
>>> the draft as that should be published soon. (Same for RFC3447 btw.)
>>>=20
>>>   [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
>>>=20
>>> - 12.4: Why "OKP"? And saying there's no "simple way" to do point =
validation
>>> seems fairly opaque, a reference there or explanatory text would be =
good. (Ah,
>>> it's in section 13, maybe shuffle the text or include a pointer.) =
Octet key pair
>>> doesn't seem like that good a name to me btw.
>>>=20
>>> - 12.5: The 1st para seems wrong. (Or at least is unclear to
>>> me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway, does =
it mean
>>> double encryption or two parallel ciphertexts?
>>> (I assume the former.) What's the algebraic thing you're trying to =
explain?  It'd
>>> be good to provide that for such relatively complex operations I =
think. Is this
>>> what you mean?
>>>=20
>>> 		KW(KDF(DH-shared),CEK)
>>>=20
>>> - Table 22: The EC2 or OKP value is fixed per curve and the =
cryptographic
>>> function being performed so seems unnecessary.
>>> Do you really need it so? Why? (I'm not buying that some future form =
of ECC
>>> might mean this is needed btw - and codepoints aren't expensive =
here, right? So
>>> other forms of ECC can burn codepoints when that's needed and in the
>>> meantime we'd save bytes and complexity.)
>>>=20
>>> - Section 15: Do we have any examples of such a profile?  I think =
it'd be great if
>>> we did and could add an informative reference here (even if that's =
to an early I-
>>> D).
>>>=20
>>> - section 19: I don't get how ECDSA is normative and the cfrg curves =
are not.
>>> Same for RFC6979. Maybe these all could do with checking? (No big =
deal IMO
>>> but maybe worth it.)
>>>=20
>>> - Appendices A.1 (as already noted) and A.2 are a puzzle.
>>> Why say in the body of the document to do <foo> and then an appendix =
that
>>> says how to do <not-foo>?
>>>=20
>>> - Appendix C and the implementation status section: Many thanks - =
great to see
>>> that! (I didn't check 'em though:-)
>>>=20
>>> - Thanks also for speedily handling the extensive secdir review.
>>>=20
>>>   [2] =
https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html


--Apple-Mail=_3D933C28-DC52-4B7D-99D8-D16058EA16FD
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">Hi Stephen,<div class=3D""><br class=3D""></div><div =
class=3D"">The consensus of the working group after Yokohama was to make =
the CDDL non-normative and still use it as a description/example =
format.&nbsp;</div><div class=3D""><br class=3D""></div><div class=3D""><a=
 href=3D"https://www.ietf.org/mail-archive/web/cose/current/msg00802.html"=
 =
class=3D"">https://www.ietf.org/mail-archive/web/cose/current/msg00802.htm=
l</a></div><div class=3D""><br class=3D""></div><div class=3D"">I =
believe the current draft reflects that state. Yes, CDDL syntax is =
peppered throughout the document as illustration, but it=E2=80=99s the =
English text that=E2=80=99s normative.</div><div class=3D""><br =
class=3D""></div><div class=3D"">One point that was discussed was that =
if the draft did not use CDDL, then another description language would =
likely need to be made up to make human-readable examples in the text. =
The group felt that it was better to use an existing (even if =
unfinished/unofficial) description format but remove the normative =
dependency.</div><div class=3D""><br class=3D""></div><div =
class=3D"">&nbsp;=E2=80=94 Justin, as chair.</div><div class=3D""><br =
class=3D""><div><blockquote type=3D"cite" class=3D""><div class=3D"">On =
Oct 16, 2016, at 3:41 PM, Stephen Farrell &lt;<a =
href=3D"mailto:stephen.farrell@cs.tcd.ie" =
class=3D"">stephen.farrell@cs.tcd.ie</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">Hiya,</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">Dear cose-chairs - there is stuff in this =
discuss for you to deal</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">with. (Just putting that there in case =
you're not delving down</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">into the body of the mails:-)</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">On 16/10/16 22:50, Jim Schaad =
wrote:</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><blockquote=
 type=3D"cite" style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D"">I think =
we dealt with all of the comments. &nbsp;I cannot help you with getting =
chair response.<br class=3D""><br class=3D"">See below for my one =
issue.<br class=3D""><br class=3D"">Jim<br class=3D""><br class=3D""><br =
class=3D""><blockquote type=3D"cite" class=3D"">-----Original =
Message-----<br class=3D"">From: Stephen Farrell [<a =
href=3D"mailto:stephen.farrell@cs.tcd.ie" =
class=3D"">mailto:stephen.farrell@cs.tcd.ie</a>]<br class=3D"">Sent: =
Sunday, October 16, 2016 1:57 PM<br class=3D"">To: The IESG &lt;<a =
href=3D"mailto:iesg@ietf.org" class=3D"">iesg@ietf.org</a>&gt;<br =
class=3D"">Cc: <a href=3D"mailto:draft-ietf-cose-msg@ietf.org" =
class=3D"">draft-ietf-cose-msg@ietf.org</a>; Goeran Selander<br =
class=3D"">&lt;<a href=3D"mailto:goran.selander@ericsson.com" =
class=3D"">goran.selander@ericsson.com</a>&gt;; <a =
href=3D"mailto:cose-chairs@ietf.org" =
class=3D"">cose-chairs@ietf.org</a>;<br class=3D""><a =
href=3D"mailto:goran.selander@ericsson.com" =
class=3D"">goran.selander@ericsson.com</a>; <a =
href=3D"mailto:cose@ietf.org" class=3D"">cose@ietf.org</a><br =
class=3D"">Subject: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: =
(with DISCUSS and<br class=3D"">COMMENT)<br class=3D""><br =
class=3D"">Stephen Farrell has entered the following ballot position =
for<br class=3D"">draft-ietf-cose-msg-20: Discuss<br class=3D""><br =
class=3D"">When responding, please keep the subject line intact and =
reply to all email<br class=3D"">addresses included in the To and CC =
lines. (Feel free to cut this introductory<br class=3D"">paragraph, =
however.)<br class=3D""><br class=3D""><br class=3D"">Please refer to <a =
href=3D"https://www.ietf.org/iesg/statement/discuss-criteria.html" =
class=3D"">https://www.ietf.org/iesg/statement/discuss-criteria.html</a><b=
r class=3D"">for more information about IESG DISCUSS and COMMENT =
positions.<br class=3D""><br class=3D""><br class=3D"">The document, =
along with other ballot positions, can be found here:<br class=3D""><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-cose-msg/" =
class=3D"">https://datatracker.ietf.org/doc/draft-ietf-cose-msg/</a><br =
class=3D""><br class=3D""><br class=3D""><br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D"">DISCUSS:<br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D""><br class=3D""><br class=3D"">Thanks for the =
updates in -20. I think we've only the following points left. Note<br =
class=3D"">that 2 of those are questions to the WG chairs and not to =
Jim.<br class=3D""><br class=3D"">&nbsp;&nbsp;(1.1) table 2: As-is the =
value type column seems to me to<br class=3D"">&nbsp;&nbsp;make CDDL =
normative. I don't see the natural language version<br =
class=3D"">&nbsp;&nbsp;that you said would be normative.<br class=3D""><br=
 class=3D"">Can you help me see that the changes there are such that =
CDDL is ok as<br class=3D"">informative? I'm not sure but as I read it =
there is still no natural language<br class=3D"">statement that a =
"counter signature" is one (or more) COSE_Signature values.<br =
class=3D""></blockquote><br class=3D"">In section 1.3 the following text =
was added:<br class=3D""><br class=3D"">Two syntaxes from CDDL appear in =
this document as shorthand. These are:<br class=3D""><br =
class=3D"">&nbsp;&nbsp;&nbsp;FOO / BAR - indicates that either FOO or =
BAR can appear here<br class=3D"">&nbsp;&nbsp;&nbsp;[+ FOO] - indicates =
that the type FOO appears one or more times in an array<br class=3D""><br =
class=3D"">The value from the table is:<br class=3D""><br =
class=3D"">COSE_Signature / [+ COSE_Signature ]<br class=3D""><br =
class=3D"">Section 4.1 contains the text:<br class=3D""><br class=3D"">The=
 CBOR object that carries the signature and information about the =
signature is called the COSE_Signature structure.<br class=3D""><br =
class=3D""><blockquote type=3D"cite" class=3D"">=46rom that I think that =
all of the needed normative text is present.<br =
class=3D""></blockquote></blockquote><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">Yeah, I get that. But then I think you've =
embedded some</span><br style=3D"font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; orphans: auto; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: =
auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span=
 style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">CDDL notation at least as normative. (I mean the =
constructs</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">you describe with FOO/BAR above.)</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">While I do start to feel pedantry-panic =
that I'm saying</span><br style=3D"font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; orphans: auto; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: =
auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span=
 style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">it, if really treating CDDL as informative, I =
think you</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">ought say in text that one or more =
COSE_Signature fields</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">need to be in a counter =
signature.</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">But I'm gonna clear =
that anyway as the whole CDDL is not</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">normative thing is really pretence IMO =
and there's no point</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">in me joining in with that =
further.</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">That means that =
clearing this discuss is now solely down</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">to the chairs saying they're happy that =
Jim's positions</span><br style=3D"font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; orphans: auto; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: =
auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span=
 style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">do reflect wG consensus.</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">Cheers,</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">S.</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><blockquote=
 type=3D"cite" style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
class=3D""><blockquote type=3D"cite" class=3D""><br =
class=3D"">&nbsp;&nbsp;(2) 3.1, alg: so you're disallowing a setup where =
the kid<br class=3D"">&nbsp;&nbsp;alone identifies the key and algorithm =
to the recipient?<br class=3D"">&nbsp;&nbsp;That is used in some IETF =
protocols (OSPF iirc) so rhat's a<br class=3D"">&nbsp;&nbsp;pity, and =
will in those (maybe less common) cases consume a<br =
class=3D"">&nbsp;&nbsp;few bytes that could otherwise be saved. &nbsp;I =
think, but am not<br class=3D"">&nbsp;&nbsp;sure, that the WG already =
discussed this, but if not, maybe<br class=3D"">&nbsp;&nbsp;worth a =
thought? (Or even a 2nd thought:-) And appendix A.1<br =
class=3D"">&nbsp;&nbsp;is really puzzling - as it provides instructions =
for how to<br class=3D"">&nbsp;&nbsp;not follow a MUST in the body of =
the document.<br class=3D""><br class=3D"">I think we left the mail =
thread on this with you saying "Best to ask the chairs if<br =
class=3D"">they agree that this is WG consensus," as you're an =
admitteddly strong partisan<br class=3D"">on this topic.<br class=3D""><br=
 class=3D"">So, COSE chairs - what's your take? (If you say this is ok =
with the WG, I'll clear.)<br class=3D""><br class=3D"">&nbsp;&nbsp;(6) =
section 10: why MUST the kty values be present always?<br =
class=3D"">&nbsp;&nbsp;That seems unnecessary in some contexts and I =
don't get a<br class=3D"">&nbsp;&nbsp;security reason why it's needed =
e.g. if there's an alg id<br class=3D"">&nbsp;&nbsp;somewhere - can you =
explain? I can see folks omitting this<br class=3D"">&nbsp;&nbsp;leading =
to interop problems for not useful reasons. (Same<br =
class=3D"">&nbsp;&nbsp;comment applies in other cases where kty is a =
MUST, e.g.<br class=3D"">&nbsp;&nbsp;12.1.2, 12.2.1.)<br class=3D""><br =
class=3D"">I think this is the similar to discuss point (2) above.<br =
class=3D""><br class=3D"">So again, COSE chairs, can you confirm that =
this design does reflect WG<br class=3D"">consensus and isn't just a =
thorough and good editor getting his way? (If you say<br class=3D"">this =
is ok with the WG, I'll clear.)<br class=3D""><br class=3D""><br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D"">COMMENT:<br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D""><br class=3D""><br class=3D"">OLD COMMENTS BELOW, =
I DIDN'T CHECK THEM. Happy to chat more about 'em<br class=3D"">if =
that's useful.<br class=3D""><br class=3D"">- 1.4: the 2nd last =
paragraph is unclear to me. Probably just needs re-phrasing.<br =
class=3D""><br class=3D"">- 1.5: I'd add a reference to RFC5116.<br =
class=3D""><br class=3D"">- 3.1, crit: The statement that security =
libraries or application code can handle<br class=3D"">this is odd - =
isn't that an API requirement? (I'm not objecting, but it's odd.)<br =
class=3D""><br class=3D"">- 3.1, "content type" is the space there =
intended? &nbsp;If so, maybe add quotes or a<br class=3D"">comma or =
something to disambiguate the name and descriptive text? Same for<br =
class=3D"">other multi-word names here.<br class=3D""><br class=3D"">- =
3.1, "all the keys may need to be checked" - really? &nbsp;Or do you =
mean all the<br class=3D"">keys associated with this kid?<br =
class=3D""><br class=3D"">- 3.1, IV/Partial IV - I think it's an error =
to define this here. What if some<br class=3D"">algorithm can't use that =
kind of (0|partial)^IV but needs something else instead?<br =
class=3D"">Shouldn't all mechanism for handling IVs be defined by the =
algorithm/mode?<br class=3D"">(This isn't a discuss because I can't =
think of a good counter example and there'd<br class=3D"">be other ways =
around the problem too probably.)<br class=3D""><br class=3D"">- 4.1: =
signingTime is often needed with signatures. Isn't that common enough =
to<br class=3D"">want to define a way to do it, as an option?<br =
class=3D""><br class=3D"">- 4.1: If I sign with a private key =
corresponding to a 2047 or 2049 bit RSA public<br class=3D"">key =
modulus, then is it clear what to put where in the signature bstr? (Yes, =
that'd<br class=3D"">be dumb, but I wonder is what to do well enough =
defined, as I don't think you<br class=3D"">can rule it out in all =
cases.) Since you don't include RSA here I guess it's ok to skip<br =
class=3D"">this, but maybe you need to say that such issues need to be =
handled in the<br class=3D"">definition of signature algs.<br =
class=3D""><br class=3D"">- 4.3: "cannot bleed" isn't clear enough =
maybe, give an example perhaps where<br class=3D"">the decoder can fail =
to disambiguate a boundary?<br class=3D""><br class=3D"">4.4, last para: =
I disagree that one must (even lowercase<br class=3D"">must) check the =
signing identity. &nbsp;That's application behaviour and should be<br =
class=3D"">stated here in such concrete terms.<br class=3D"">At least =
s/must also/may also want to/<br class=3D""><br class=3D"">(Note - the =
above were comments on -18, but also seem to work based on -19.<br =
class=3D"">Subsequent comments are on -19.)<br class=3D""><br class=3D"">-=
 7.1: "starting at the same base IV" - are you missing "and =
incrementing" or<br class=3D"">something? Otherwise I think this seems =
unclear.<br class=3D""><br class=3D"">- 8.2.1: is the phrasing of the =
1st para right? would it be better to say that the<br class=3D"">value =
of a key for EdDSA MUST NOT be used for ECDH and vice-versa. (Or =
maybe<br class=3D"">points instead of<br class=3D"">keys?)<br =
class=3D""><br class=3D"">- 8.2.1: you need a reference for batch =
signing. (Or could it be omitted?)<br class=3D""><br class=3D"">- =
section 9: I think it'd be good to be clearer about the strength of =
truncated<br class=3D"">MAC values. (And I can't recall the right thing =
to say off the top of my head:-)<br class=3D""><br class=3D"">- 11: =
RFC2898 is about to be obsoleted by [1]. I suspect it'd be better to =
refer to<br class=3D"">the draft as that should be published soon. (Same =
for RFC3447 btw.)<br class=3D""><br class=3D"">&nbsp;&nbsp;[1] <a =
href=3D"https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/" =
class=3D"">https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/</=
a><br class=3D""><br class=3D"">- 12.4: Why "OKP"? And saying there's no =
"simple way" to do point validation<br class=3D"">seems fairly opaque, a =
reference there or explanatory text would be good. (Ah,<br class=3D"">it's=
 in section 13, maybe shuffle the text or include a pointer.) Octet key =
pair<br class=3D"">doesn't seem like that good a name to me btw.<br =
class=3D""><br class=3D"">- 12.5: The 1st para seems wrong. (Or at least =
is unclear to<br class=3D"">me.) "Encrypted with &lt;foo&gt; and =
&lt;bar&gt;" seems ambiguous anyway, does it mean<br class=3D"">double =
encryption or two parallel ciphertexts?<br class=3D"">(I assume the =
former.) What's the algebraic thing you're trying to explain? =
&nbsp;It'd<br class=3D"">be good to provide that for such relatively =
complex operations I think. Is this<br class=3D"">what you mean?<br =
class=3D""><br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>KW(KDF(DH-shared),CEK)<br =
class=3D""><br class=3D"">- Table 22: The EC2 or OKP value is fixed per =
curve and the cryptographic<br class=3D"">function being performed so =
seems unnecessary.<br class=3D"">Do you really need it so? Why? (I'm not =
buying that some future form of ECC<br class=3D"">might mean this is =
needed btw - and codepoints aren't expensive here, right? So<br =
class=3D"">other forms of ECC can burn codepoints when that's needed and =
in the<br class=3D"">meantime we'd save bytes and complexity.)<br =
class=3D""><br class=3D"">- Section 15: Do we have any examples of such =
a profile? &nbsp;I think it'd be great if<br class=3D"">we did and could =
add an informative reference here (even if that's to an early I-<br =
class=3D"">D).<br class=3D""><br class=3D"">- section 19: I don't get =
how ECDSA is normative and the cfrg curves are not.<br class=3D"">Same =
for RFC6979. Maybe these all could do with checking? (No big deal IMO<br =
class=3D"">but maybe worth it.)<br class=3D""><br class=3D"">- =
Appendices A.1 (as already noted) and A.2 are a puzzle.<br class=3D"">Why =
say in the body of the document to do &lt;foo&gt; and then an appendix =
that<br class=3D"">says how to do &lt;not-foo&gt;?<br class=3D""><br =
class=3D"">- Appendix C and the implementation status section: Many =
thanks - great to see<br class=3D"">that! (I didn't check 'em =
though:-)<br class=3D""><br class=3D"">- Thanks also for speedily =
handling the extensive secdir review.<br class=3D""><br =
class=3D"">&nbsp;&nbsp;[2] <a =
href=3D"https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html=
" =
class=3D"">https://www.ietf.org/mail-archive/web/secdir/current/msg06801.h=
tml</a></blockquote></blockquote></div></blockquote></div><br =
class=3D""></div></body></html>=

--Apple-Mail=_3D933C28-DC52-4B7D-99D8-D16058EA16FD--

--Apple-Mail=_C1CA8B33-B76C-41DF-9F87-3EA703443D66
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----

iQEcBAEBCAAGBQJYB5hvAAoJEDPAngkbd+w9AcQH+wQaclVXnLHXefWsdXcM1hW0
TVkJB7GF2FpVJzNA8hsM1ncASN/xS7YOTvZjVHBEBPo0rvwQ9e3M7XQDZGH0tJyV
7hu+/Yfl3z/lvKkkp6e0yxZD4cxT7RYSAnU3C0coQthQBEpKR3dLktSbCDBx6Uyy
ZPSv/FwhzDd75qnbEMpCzkBedE0YJXxsDO7IkkoGmc2vSnKsKePdML2sNt9ja9/x
frVdIUUMQ1OX2Z/H9+amU2zcQ26n4x19rkUuk/3lY5s3lngOay9lK9Dddn2wm9j4
QvXtBCPuYhU3LKbsnISdvn0fln41r4eJgx6niBfLlsDstikUI5SNYDav9O5JIso=
=Gcy8
-----END PGP SIGNATURE-----

--Apple-Mail=_C1CA8B33-B76C-41DF-9F87-3EA703443D66--


From nobody Sat Oct 22 01:45:37 2016
Return-Path: <cabo@tzi.org>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 22C58129440; Sat, 22 Oct 2016 01:45:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.5
X-Spam-Level: 
X-Spam-Status: No, score=-1.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, MANY_SPAN_IN_TEXT=2.699, RCVD_IN_DNSWL_MED=-2.3] autolearn=no 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 IkVMbQZK5nb9; Sat, 22 Oct 2016 01:45:30 -0700 (PDT)
Received: from mailhost.informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C06D41293D6; Sat, 22 Oct 2016 01:45:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from submithost.informatik.uni-bremen.de (submithost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::b]) by mailhost.informatik.uni-bremen.de (8.14.5/8.14.5) with ESMTP id u9M8jOf9021213; Sat, 22 Oct 2016 10:45:24 +0200 (CEST)
Received: from client-0074.vpn.uni-bremen.de.mail (client-0074.vpn.uni-bremen.de [134.102.107.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by submithost.informatik.uni-bremen.de (Postfix) with ESMTPSA id 3t1GMX3vQYz7xR8; Sat, 22 Oct 2016 10:45:11 +0200 (CEST)
Date: Sat, 22 Oct 2016 10:42:20 +0200
From: Carsten Bormann <cabo@tzi.org>
To: cose@ietf.org, dtls-iot@ietf.org, t2trg@irtf.org, ace@ietf.org, core@ietf.org
Message-ID: <etPan.580b270a.67e45b50.ff73@tzi.org>
In-Reply-To: <etPan.58022be3.7efa638e.ca9@AirmailxGenerated.am>
References: <etPan.58022be3.7efa638e.ca9@AirmailxGenerated.am>
X-Mailer: Airmail (390)
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="580b270a_37ba36b9_ff73"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/rs3w-Mz9-Sq0oHIfd2CReWQ-ZqY>
Subject: [COSE] Constrained Node/Network Cluster @ IETF97: FINAL AGENDA
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 22 Oct 2016 08:45:33 -0000

--580b270a_37ba36b9_ff73
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Here is my usual eclectic condensed agenda based on the =22=46INAL=22 AGE=
NDA
for IET=4697. =C2=A0(=22=46INAL=22 historically has not always been =22fi=
nal=22...)

Not many changes; TOKBIND, OAUTH, CURDLE moved around, and the big
clashing cluster on =46riday morning has become bigger with another TLS
session. =C2=A0(I previously wrote: IoT is starting a bit late at IET=469=
7;
only two meetings of cluster WGs on Mon/Tue (but then of course we
start big with the Sunday icnrg/t2trg joint meeting). =C2=A0CORE on HOMEN=
ET
and IPWAVE (Wed) and CORE on ICNRG (=46ri) are a bit painful but
probably the unavoidable level of conflict.)

All times are KST (UTC+0900) -- there is no DST in Korea, and DST will
have ended in Europe and North America by then.
(The browser timezone function still is not yet reinstated on
https://datatracker.ietf.org/meeting/agenda-utc, for those who want to
listen from remote.)

Gr=C3=BC=C3=9Fe, Carsten


SUNDAY, November 13, 2016

1300-1600 =C2=A0 =C2=A0 =C2=A0 IRT=46*** icnrg+t2trg joint meeting

MONDAY, November 14, 2016

0930-1200 =C2=A0Morning Session I
Grand BR 2	ART	dispatch	Dispatch WG - 09:30-11:00
Studio 3	SEC	oauth	Web Authorization Protocol WG

1330-1530 =C2=A0Afternoon Session I
Studio 3	ART	ice	Interactive Connectivity Establishment WG
Park BR 1	IRT=46	cfrg	Crypto =46orum
Grand BR 2	OPS	v6ops	IPv6 Operations WG

1550-1750 =C2=A0Afternoon Session II
Grand BR 2	INT ***	lpwan	IPv6 over Low Power Wide-Area Networks WG
Studio 3	RTG	bier	Bit Indexed Explicit Replication WG
Studio 4	SEC	tokbind	Token Binding WG

TUESDAY, November 15, 2016

0930-1200 =C2=A0Morning Session I
Grand BR 2	INT	6man	IPv6 Maintenance WG
Park BR 1	RTG	detnet	Deterministic Networking WG
Grand BR 1	TSV	quic	QUIC WG

1330-1530 =C2=A0Afternoon Session I
Park BR 2	ART	httpbis	Hypertext Transfer Protocol WG
Grand BR 2	RTG	rtgarea	Routing Area Open Meeting
Park BR 1	TSV	tsvwg	Transport Area Working Group WG

1550-1820 =C2=A0Afternoon Session II
Grand BR 2	INT ***	6lo	IPv6 over Networks of Resource-constrained Nodes W=
G
Park BR 1	SEC	tls	Transport Layer Security WG

WEDNESDAY, November 16, 2016

0930-1100 =C2=A0Morning Session I
Grand BR 3	OPS	anima	Autonomic Networking Integrated Model and Approach W=
G
Grand BR 2	TSV	taps	Transport Services WG

1110-1210 =C2=A0Morning Session II
Park BR 2	RTG ***	roll	Routing Over Low power and Lossy networks WG
Grand BR 1	TSV	tsvwg	Transport Area Working Group WG

1330-1500 =C2=A0Afternoon Session I
Studio 2	ART ***	core	Constrained RESTful Environments WG
Grand BR 1	INT	homenet	Home Networking WG
Grand BR 3	INT	ipwave	IP Wireless Access in Vehicular Environments WG
Studio 4	SEC	acme	Automated Certificate Management Environment WG
Grand BR 2	TSV	tsvarea	Transport Area Open Meeting

1520-1620 =C2=A0Afternoon Session II
Park BR 2	INT	intarea	Internet Area Working Group WG
Park BR 1	IRT=46***	t2trg	Thing-to-Thing
Studio 3	SEC	oauth	Web Authorization Protocol WG

THURSDAY, November 17, 2016

0930-1100 =C2=A0Morning Session I
Park BR 1	INT ***	6tisch	IPv6 over the TSCH mode of IEEE 802.15.4e WG
Studio 4	INT	dnssd	Extensions for Scalable DNS Service Discovery =C2=A0WG=

Grand BR 2	IRT=46	maprg	Measurement and Analysis for Protocols
Grand BR 1	SEC	saag	Security Area Open Meeting

1110-1210 =C2=A0Morning Session II
Park BR 1	ART	httpbis	Hypertext Transfer Protocol WG
Grand BR 3	INT ***	lwig	Light-Weight Implementation Guidance WG
Grand BR 1	SEC	saag	Security Area Open Meeting

1520-1750 =C2=A0Afternoon Session II
Studio 4	SEC ***	ace	Authentication and Authorization for Constrained Env=
ironments WG
Studio 3	TSV	rmcat	RTP Media Congestion Avoidance Techniques WG

=46RIDAY, November 18, 2016

0930-1130 =C2=A0Morning Session I
Studio 2	ART ***	core	Constrained RESTful Environments WG
Grand BR 3	IRT=46	icnrg	Information-Centric Networking
Park BR 2	OPS	anima	Autonomic Networking Integrated Model and Approach WG=

Grand BR 2	SEC	tls	Transport Layer Security WG
Studio 4	TSV	tcpinc	TCP Increased Security WG

1150-1320 =C2=A0Afternoon Session I
Studio 2	ART	webpush	Web-Based Push Notifications WG
Studio 4	ART	webpush	Web-Based Push Notifications WG
Park BR 2	RTG	babel	Babel routing protocol WG
Park BR 1	RTG	babel	Babel routing protocol WG
Studio 3	SEC	curdle	CURves, Deprecating and a Little more Encryption WG


--580b270a_37ba36b9_ff73
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

<html><head><style>body=7Bfont-family:Helvetica,Arial;font-size:13px=7D</=
style></head><body style=3D=22word-wrap: break-word; -webkit-nbsp-mode: s=
pace; -webkit-line-break: after-white-space;=22><div>Here is my usual ecl=
ectic condensed agenda based on the =22=46INAL=22 AGENDA</div><div>for IE=
T=4697. &nbsp;(=22=46INAL=22 historically has not always been =22final=22=
...)</div><div><br></div><div>Not many changes; TOKBIND, OAUTH, CURDLE mo=
ved around, and the big</div><div>clashing cluster on =46riday morning ha=
s become bigger with another TLS</div><div>session. &nbsp;(I previously w=
rote: IoT is starting a bit late at IET=4697;</div><div>only two meetings=
 of cluster WGs on Mon/Tue (but then of course we</div><div>start big wit=
h the Sunday icnrg/t2trg joint meeting). &nbsp;CORE on HOMENET</div><div>=
and IPWAVE (Wed) and CORE on ICNRG (=46ri) are a bit painful but</div><di=
v>probably the unavoidable level of conflict.)</div><div><br></div><div>A=
ll times are KST (UTC+0900) -- there is no DST in Korea, and DST will</di=
v><div>have ended in Europe and North America by then.</div><div>(The bro=
wser timezone function still is not yet reinstated on</div><div>https://d=
atatracker.ietf.org/meeting/agenda-utc, for those who want to</div><div>l=
isten from remote.)</div><div><br></div><div>Gr=C3=BC=C3=9Fe, Carsten</di=
v><div><br></div><div><br></div><div>SUNDAY, November 13, 2016</div><div>=
<br></div><div>1300-1600 &nbsp; &nbsp; &nbsp; IRT=46*** icnrg+t2trg joint=
 meeting</div><div><br></div><div>MONDAY, November 14, 2016</div><div><br=
></div><div>0930-1200 &nbsp;Morning Session I</div><div>Grand BR 2<span c=
lass=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>ART<spa=
n class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>disp=
atch<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</s=
pan>Dispatch WG - 09:30-11:00</div><div>Studio 3<span class=3D=22Apple-ta=
b-span=22 style=3D=22white-space:pre=22>	</span>SEC<span class=3D=22Apple=
-tab-span=22 style=3D=22white-space:pre=22>	</span>oauth<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Web Authorization=
 Protocol WG</div><div><br></div><div>1330-1530 &nbsp;Afternoon Session I=
</div><div>Studio 3<span class=3D=22Apple-tab-span=22 style=3D=22white-sp=
ace:pre=22>	</span>ART<span class=3D=22Apple-tab-span=22 style=3D=22white=
-space:pre=22>	</span>ice<span class=3D=22Apple-tab-span=22 style=3D=22wh=
ite-space:pre=22>	</span>Interactive Connectivity Establishment WG</div><=
div>Park BR 1<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pr=
e=22>	</span>IRT=46<span class=3D=22Apple-tab-span=22 style=3D=22white-sp=
ace:pre=22>	</span>cfrg<span class=3D=22Apple-tab-span=22 style=3D=22whit=
e-space:pre=22>	</span>Crypto =46orum</div><div>Grand BR 2<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>OPS<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>v6ops<span cla=
ss=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>IPv6 Oper=
ations WG</div><div><br></div><div>1550-1750 &nbsp;Afternoon Session II</=
div><div>Grand BR 2<span class=3D=22Apple-tab-span=22 style=3D=22white-sp=
ace:pre=22>	</span>INT ***<span class=3D=22Apple-tab-span=22 style=3D=22w=
hite-space:pre=22>	</span>lpwan<span class=3D=22Apple-tab-span=22 style=3D=
=22white-space:pre=22>	</span>IPv6 over Low Power Wide-Area Networks WG</=
div><div>Studio 3<span class=3D=22Apple-tab-span=22 style=3D=22white-spac=
e:pre=22>	</span>RTG<span class=3D=22Apple-tab-span=22 style=3D=22white-s=
pace:pre=22>	</span>bier<span class=3D=22Apple-tab-span=22 style=3D=22whi=
te-space:pre=22>	</span>Bit Indexed Explicit Replication WG</div><div>Stu=
dio 4<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</=
span>SEC<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>=
	</span>tokbind<span class=3D=22Apple-tab-span=22 style=3D=22white-space:=
pre=22>	</span>Token Binding WG</div><div><br></div><div>TUESDAY, Novembe=
r 15, 2016</div><div><br></div><div>0930-1200 &nbsp;Morning Session I</di=
v><div>Grand BR 2<span class=3D=22Apple-tab-span=22 style=3D=22white-spac=
e:pre=22>	</span>INT<span class=3D=22Apple-tab-span=22 style=3D=22white-s=
pace:pre=22>	</span>6man<span class=3D=22Apple-tab-span=22 style=3D=22whi=
te-space:pre=22>	</span>IPv6 Maintenance WG</div><div>Park BR 1<span clas=
s=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>RTG<span c=
lass=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>detnet<=
span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>D=
eterministic Networking WG</div><div>Grand BR 1<span class=3D=22Apple-tab=
-span=22 style=3D=22white-space:pre=22>	</span>TSV<span class=3D=22Apple-=
tab-span=22 style=3D=22white-space:pre=22>	</span>quic<span class=3D=22Ap=
ple-tab-span=22 style=3D=22white-space:pre=22>	</span>QUIC WG</div><div><=
br></div><div>1330-1530 &nbsp;Afternoon Session I</div><div>Park BR 2<spa=
n class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>ART<=
span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>h=
ttpbis<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	<=
/span>Hypertext Transfer Protocol WG</div><div>Grand BR 2<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>RTG<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>rtgarea<span c=
lass=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Routing=
 Area Open Meeting</div><div>Park BR 1<span class=3D=22Apple-tab-span=22 =
style=3D=22white-space:pre=22>	</span>TSV<span class=3D=22Apple-tab-span=22=
 style=3D=22white-space:pre=22>	</span>tsvwg<span class=3D=22Apple-tab-sp=
an=22 style=3D=22white-space:pre=22>	</span>Transport Area Working Group =
WG</div><div><br></div><div>1550-1820 &nbsp;Afternoon Session II</div><di=
v>Grand BR 2<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=
=22>	</span>INT ***<span class=3D=22Apple-tab-span=22 style=3D=22white-sp=
ace:pre=22>	</span>6lo<span class=3D=22Apple-tab-span=22 style=3D=22white=
-space:pre=22>	</span>IPv6 over Networks of Resource-constrained Nodes WG=
</div><div>Park BR 1<span class=3D=22Apple-tab-span=22 style=3D=22white-s=
pace:pre=22>	</span>SEC<span class=3D=22Apple-tab-span=22 style=3D=22whit=
e-space:pre=22>	</span>tls<span class=3D=22Apple-tab-span=22 style=3D=22w=
hite-space:pre=22>	</span>Transport Layer Security WG</div><div><br></div=
><div>WEDNESDAY, November 16, 2016</div><div><br></div><div>0930-1100 &nb=
sp;Morning Session I</div><div>Grand BR 3<span class=3D=22Apple-tab-span=22=
 style=3D=22white-space:pre=22>	</span>OPS<span class=3D=22Apple-tab-span=
=22 style=3D=22white-space:pre=22>	</span>anima<span class=3D=22Apple-tab=
-span=22 style=3D=22white-space:pre=22>	</span>Autonomic Networking Integ=
rated Model and Approach WG</div><div>Grand BR 2<span class=3D=22Apple-ta=
b-span=22 style=3D=22white-space:pre=22>	</span>TSV<span class=3D=22Apple=
-tab-span=22 style=3D=22white-space:pre=22>	</span>taps<span class=3D=22A=
pple-tab-span=22 style=3D=22white-space:pre=22>	</span>Transport Services=
 WG</div><div><br></div><div>1110-1210 &nbsp;Morning Session II</div><div=
>Park BR 2<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22=
>	</span>RTG ***<span class=3D=22Apple-tab-span=22 style=3D=22white-space=
:pre=22>	</span>roll<span class=3D=22Apple-tab-span=22 style=3D=22white-s=
pace:pre=22>	</span>Routing Over Low power and Lossy networks WG</div><di=
v>Grand BR 1<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=
=22>	</span>TSV<span class=3D=22Apple-tab-span=22 style=3D=22white-space:=
pre=22>	</span>tsvwg<span class=3D=22Apple-tab-span=22 style=3D=22white-s=
pace:pre=22>	</span>Transport Area Working Group WG</div><div><br></div><=
div>1330-1500 &nbsp;Afternoon Session I</div><div>Studio 2<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>ART ***<span clas=
s=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>core<span =
class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Constr=
ained RESTful Environments WG</div><div>Grand BR 1<span class=3D=22Apple-=
tab-span=22 style=3D=22white-space:pre=22>	</span>INT<span class=3D=22App=
le-tab-span=22 style=3D=22white-space:pre=22>	</span>homenet<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Home Networkin=
g WG</div><div>Grand BR 3<span class=3D=22Apple-tab-span=22 style=3D=22wh=
ite-space:pre=22>	</span>INT<span class=3D=22Apple-tab-span=22 style=3D=22=
white-space:pre=22>	</span>ipwave<span class=3D=22Apple-tab-span=22 style=
=3D=22white-space:pre=22>	</span>IP Wireless Access in Vehicular Environm=
ents WG</div><div>Studio 4<span class=3D=22Apple-tab-span=22 style=3D=22w=
hite-space:pre=22>	</span>SEC<span class=3D=22Apple-tab-span=22 style=3D=22=
white-space:pre=22>	</span>acme<span class=3D=22Apple-tab-span=22 style=3D=
=22white-space:pre=22>	</span>Automated Certificate Management Environmen=
t WG</div><div>Grand BR 2<span class=3D=22Apple-tab-span=22 style=3D=22wh=
ite-space:pre=22>	</span>TSV<span class=3D=22Apple-tab-span=22 style=3D=22=
white-space:pre=22>	</span>tsvarea<span class=3D=22Apple-tab-span=22 styl=
e=3D=22white-space:pre=22>	</span>Transport Area Open Meeting</div><div><=
br></div><div>1520-1620 &nbsp;Afternoon Session II</div><div>Park BR 2<sp=
an class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>INT=
<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>=
intarea<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	=
</span>Internet Area Working Group WG</div><div>Park BR 1<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>IRT=46***<span cl=
ass=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>t2trg<sp=
an class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Thi=
ng-to-Thing</div><div>Studio 3<span class=3D=22Apple-tab-span=22 style=3D=
=22white-space:pre=22>	</span>SEC<span class=3D=22Apple-tab-span=22 style=
=3D=22white-space:pre=22>	</span>oauth<span class=3D=22Apple-tab-span=22 =
style=3D=22white-space:pre=22>	</span>Web Authorization Protocol WG</div>=
<div><br></div><div>THURSDAY, November 17, 2016</div><div><br></div><div>=
0930-1100 &nbsp;Morning Session I</div><div>Park BR 1<span class=3D=22App=
le-tab-span=22 style=3D=22white-space:pre=22>	</span>INT ***<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>6tisch<span cl=
ass=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>IPv6 ove=
r the TSCH mode of IEEE 802.15.4e WG</div><div>Studio 4<span class=3D=22A=
pple-tab-span=22 style=3D=22white-space:pre=22>	</span>INT<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>dnssd<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Extensions for=
 Scalable DNS Service Discovery &nbsp;WG</div><div>Grand BR 2<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>IRT=46<span cl=
ass=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>maprg<sp=
an class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Mea=
surement and Analysis for Protocols</div><div>Grand BR 1<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>SEC<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>saag<span clas=
s=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Security A=
rea Open Meeting</div><div><br></div><div>1110-1210 &nbsp;Morning Session=
 II</div><div>Park BR 1<span class=3D=22Apple-tab-span=22 style=3D=22whit=
e-space:pre=22>	</span>ART<span class=3D=22Apple-tab-span=22 style=3D=22w=
hite-space:pre=22>	</span>httpbis<span class=3D=22Apple-tab-span=22 style=
=3D=22white-space:pre=22>	</span>Hypertext Transfer Protocol WG</div><div=
>Grand BR 3<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22=
>	</span>INT ***<span class=3D=22Apple-tab-span=22 style=3D=22white-space=
:pre=22>	</span>lwig<span class=3D=22Apple-tab-span=22 style=3D=22white-s=
pace:pre=22>	</span>Light-Weight Implementation Guidance WG</div><div>Gra=
nd BR 1<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	=
</span>SEC<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22=
>	</span>saag<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pr=
e=22>	</span>Security Area Open Meeting</div><div><br></div><div>1520-175=
0 &nbsp;Afternoon Session II</div><div>Studio 4<span class=3D=22Apple-tab=
-span=22 style=3D=22white-space:pre=22>	</span>SEC ***<span class=3D=22Ap=
ple-tab-span=22 style=3D=22white-space:pre=22>	</span>ace<span class=3D=22=
Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Authentication an=
d Authorization for Constrained Environments WG</div><div>Studio 3<span c=
lass=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>TSV<spa=
n class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>rmca=
t<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span=
>RTP Media Congestion Avoidance Techniques WG</div><div><br></div><div>=46=
RIDAY, November 18, 2016</div><div><br></div><div>0930-1130 &nbsp;Morning=
 Session I</div><div>Studio 2<span class=3D=22Apple-tab-span=22 style=3D=22=
white-space:pre=22>	</span>ART ***<span class=3D=22Apple-tab-span=22 styl=
e=3D=22white-space:pre=22>	</span>core<span class=3D=22Apple-tab-span=22 =
style=3D=22white-space:pre=22>	</span>Constrained RESTful Environments WG=
</div><div>Grand BR 3<span class=3D=22Apple-tab-span=22 style=3D=22white-=
space:pre=22>	</span>IRT=46<span class=3D=22Apple-tab-span=22 style=3D=22=
white-space:pre=22>	</span>icnrg<span class=3D=22Apple-tab-span=22 style=3D=
=22white-space:pre=22>	</span>Information-Centric Networking</div><div>Pa=
rk BR 2<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	=
</span>OPS<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22=
>	</span>anima<span class=3D=22Apple-tab-span=22 style=3D=22white-space:p=
re=22>	</span>Autonomic Networking Integrated Model and Approach WG</div>=
<div>Grand BR 2<span class=3D=22Apple-tab-span=22 style=3D=22white-space:=
pre=22>	</span>SEC<span class=3D=22Apple-tab-span=22 style=3D=22white-spa=
ce:pre=22>	</span>tls<span class=3D=22Apple-tab-span=22 style=3D=22white-=
space:pre=22>	</span>Transport Layer Security WG</div><div>Studio 4<span =
class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>TSV<sp=
an class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>tcp=
inc<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</sp=
an>TCP Increased Security WG</div><div><br></div><div>1150-1320 &nbsp;Aft=
ernoon Session I</div><div>Studio 2<span class=3D=22Apple-tab-span=22 sty=
le=3D=22white-space:pre=22>	</span>ART<span class=3D=22Apple-tab-span=22 =
style=3D=22white-space:pre=22>	</span>webpush<span class=3D=22Apple-tab-s=
pan=22 style=3D=22white-space:pre=22>	</span>Web-Based Push Notifications=
 WG</div><div>Studio 4<span class=3D=22Apple-tab-span=22 style=3D=22white=
-space:pre=22>	</span>ART<span class=3D=22Apple-tab-span=22 style=3D=22wh=
ite-space:pre=22>	</span>webpush<span class=3D=22Apple-tab-span=22 style=3D=
=22white-space:pre=22>	</span>Web-Based Push Notifications WG</div><div>P=
ark BR 2<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>=
	</span>RTG<span class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22=
>	</span>babel<span class=3D=22Apple-tab-span=22 style=3D=22white-space:p=
re=22>	</span>Babel routing protocol WG</div><div>Park BR 1<span class=3D=
=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>RTG<span class=
=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>babel<span =
class=3D=22Apple-tab-span=22 style=3D=22white-space:pre=22>	</span>Babel =
routing protocol WG</div><div>Studio 3<span class=3D=22Apple-tab-span=22 =
style=3D=22white-space:pre=22>	</span>SEC<span class=3D=22Apple-tab-span=22=
 style=3D=22white-space:pre=22>	</span>curdle<span class=3D=22Apple-tab-s=
pan=22 style=3D=22white-space:pre=22>	</span>CURves, Deprecating and a Li=
ttle more Encryption WG</div><div><br></div></body></html>
--580b270a_37ba36b9_ff73--


From nobody Wed Oct 26 08:06:41 2016
Return-Path: <jricher@mit.edu>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1416112954E; Wed, 26 Oct 2016 08:06:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.631
X-Spam-Level: 
X-Spam-Status: No, score=-4.631 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.431, SPF_PASS=-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 X5L02skQ3WOC; Wed, 26 Oct 2016 08:06:35 -0700 (PDT)
Received: from dmz-mailsec-scanner-6.mit.edu (dmz-mailsec-scanner-6.mit.edu [18.7.68.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EAFD0129564; Wed, 26 Oct 2016 08:06:34 -0700 (PDT)
X-AuditID: 12074423-80fff70000007a10-9b-5810c679a951
Received: from mailhub-auth-3.mit.edu ( [18.9.21.43]) (using TLS with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by  (Symantec Messaging Gateway) with SMTP id 80.9C.31248.976C0185; Wed, 26 Oct 2016 11:06:33 -0400 (EDT)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) by mailhub-auth-3.mit.edu (8.13.8/8.9.2) with ESMTP id u9QF6VpQ004734; Wed, 26 Oct 2016 11:06:32 -0400
Received: from [192.168.1.22] (c-73-222-228-244.hsd1.ca.comcast.net [73.222.228.244]) (authenticated bits=0) (User authenticated as jricher@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.8/8.12.4) with ESMTP id u9QF6R4H002510 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 26 Oct 2016 11:06:29 -0400
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
Content-Type: multipart/signed; boundary="Apple-Mail=_F752B7B5-06DF-445D-8ABC-0FC5786F172A"; protocol="application/pgp-signature"; micalg=pgp-sha256
X-Pgp-Agent: GPGMail
From: Justin Richer <jricher@mit.edu>
In-Reply-To: <822A08BC-5710-48E6-BCC7-AC86A554EFEC@mit.edu>
Date: Wed, 26 Oct 2016 08:06:26 -0700
Message-Id: <476D703F-727E-49D9-89C1-F6FD1092D55E@mit.edu>
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com> <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com> <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie> <822A08BC-5710-48E6-BCC7-AC86A554EFEC@mit.edu>
To: Stephen Farrell <stephen.farrell@cs.tcd.ie>
X-Mailer: Apple Mail (2.3124)
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpgk+LIzCtJLcpLzFFi42IR4hTV1q08JhBhMOmTgMW7rfsYLaZtncpq 0fvoNqPF89eT2S1m/JnIbLF6+nc2i+l7r7E7sHtsnDOdzWNt91U2j19fgcSSJT+ZAliiuGxS UnMyy1KL9O0SuDIWL53KXrB8InPFqYecDYynrzN1MXJySAiYSNy9cJK1i5GLQ0igjUni5P1V LCAJIYGNjBJLv8pAJC4xSWzrecQGkhAWiJH48eIsI4jNK6AnsWn9WyaQImaBKYwSra9eskOM FZHoPvOZFcRmE1CVmL6mBWwdp4C1xPst88BqWIDiLz9eYINo3swosfj6NzaIqVYSjcu72SBW P2SUuD5tC9hNIgL6Ens3n4PaICvx5OQilgmMArOQXDIL2SUgCWaBJImWtcsZIWxtiWULXzND 2JoS+7uXs2CKa0h0fpvICmHLS2x/OwcqbimxeOYNqHpbiVt9C5ggbDuJR9MWsS5g5F7FKJuS W6Wbm5iZU5yarFucnJiXl1qka6aXm1mil5pSuokRFLnsLso7GF/2eR9iFOBgVOLhNdgkECHE mlhWXJl7iFGSg0lJlNfgKFCILyk/pTIjsTgjvqg0J7X4EKMK0K5HG1ZfYJRiycvPS1US4TUE qeNNSaysSi3KhymT5mBREuf97/Y1XEggPbEkNTs1tSC1CCYrw8GhJMF7GKRRsCg1PbUiLTOn BCHNxMF5iFGCgwdo+CGw4cUFibnFmekQ+VOMilLivOIgCQGQREZpHlwvKOF63nvy5RWjONBb wrwWIFU8wGQN1/0KaDAT0ODp6WCDSxIRUlINjIWFyeUrLBm7E+e7rzlZoSJ5VsTAojhZ7ozm D/4PzKysG01/tXVZOJtEz/oV+/bi1CkP3ikWfZnQ95s/I5Q1SvrawYc6Ez9miJmZ1Ra+lMq7 13z74ur7C3smyCWoLo85UTYxSJctakPyHg7+4KCuGvM1CVKBz84oWOgsX2orN89hpdd6R8Mr SizFGYmGWsxFxYkAQjC1iJMDAAA=
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/QIT4Flzb-lUJaXwT02FV_nCXHcU>
Cc: Jim Schaad <ietf@augustcellars.com>, cose-chairs@ietf.org, The IESG <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com, cose@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Oct 2016 15:06:40 -0000

--Apple-Mail=_F752B7B5-06DF-445D-8ABC-0FC5786F172A
Content-Type: multipart/alternative;
	boundary="Apple-Mail=_5DC1FDB7-4956-4CD4-A759-ABBA98D238E7"


--Apple-Mail=_5DC1FDB7-4956-4CD4-A759-ABBA98D238E7
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Hi Stephen,

Sorry for the delay on answering #2 and #6 below. After researching the =
list archives and issue tracker, neither Kepeng nor I can find =
discussion on either issue. If there is such discussion in the archives, =
we would appreciate the working group members pointing us all to it.

But as such, these both seem to be items that were added to the spec by =
the editor without controversy or contention from the working group. =
Therefore, it does appear to reflect consensus as there were no =
objections raised. We both think that the items are OK as is, but we=E2=80=
=99d like to give the working group a couple days to respond otherwise =
if that=E2=80=99s not the case for anyone.

Thank you,

 =E2=80=94 Justin & Kepeng, as COSE chairs


> On Oct 19, 2016, at 8:59 AM, Justin Richer <jricher@MIT.EDU> wrote:
>=20
> Hi Stephen,
>=20
> The consensus of the working group after Yokohama was to make the CDDL =
non-normative and still use it as a description/example format.
>=20
> https://www.ietf.org/mail-archive/web/cose/current/msg00802.html =
<https://www.ietf.org/mail-archive/web/cose/current/msg00802.html>
>=20
> I believe the current draft reflects that state. Yes, CDDL syntax is =
peppered throughout the document as illustration, but it=E2=80=99s the =
English text that=E2=80=99s normative.
>=20
> One point that was discussed was that if the draft did not use CDDL, =
then another description language would likely need to be made up to =
make human-readable examples in the text. The group felt that it was =
better to use an existing (even if unfinished/unofficial) description =
format but remove the normative dependency.
>=20
>  =E2=80=94 Justin, as chair.
>=20
>> On Oct 16, 2016, at 3:41 PM, Stephen Farrell =
<stephen.farrell@cs.tcd.ie <mailto:stephen.farrell@cs.tcd.ie>> wrote:
>>=20
>>=20
>> Hiya,
>>=20
>> Dear cose-chairs - there is stuff in this discuss for you to deal
>> with. (Just putting that there in case you're not delving down
>> into the body of the mails:-)
>>=20
>> On 16/10/16 22:50, Jim Schaad wrote:
>>> I think we dealt with all of the comments.  I cannot help you with =
getting chair response.
>>>=20
>>> See below for my one issue.
>>>=20
>>> Jim
>>>=20
>>>=20
>>>> -----Original Message-----
>>>> From: Stephen Farrell [mailto:stephen.farrell@cs.tcd.ie =
<mailto:stephen.farrell@cs.tcd.ie>]
>>>> Sent: Sunday, October 16, 2016 1:57 PM
>>>> To: The IESG <iesg@ietf.org <mailto:iesg@ietf.org>>
>>>> Cc: draft-ietf-cose-msg@ietf.org =
<mailto:draft-ietf-cose-msg@ietf.org>; Goeran Selander
>>>> <goran.selander@ericsson.com <mailto:goran.selander@ericsson.com>>; =
cose-chairs@ietf.org <mailto:cose-chairs@ietf.org>;
>>>> goran.selander@ericsson.com <mailto:goran.selander@ericsson.com>; =
cose@ietf.org <mailto:cose@ietf.org>
>>>> Subject: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with =
DISCUSS and
>>>> COMMENT)
>>>>=20
>>>> Stephen Farrell has entered the following ballot position for
>>>> draft-ietf-cose-msg-20: Discuss
>>>>=20
>>>> When responding, please keep the subject line intact and reply to =
all email
>>>> addresses included in the To and CC lines. (Feel free to cut this =
introductory
>>>> paragraph, however.)
>>>>=20
>>>>=20
>>>> Please refer to =
https://www.ietf.org/iesg/statement/discuss-criteria.html =
<https://www.ietf.org/iesg/statement/discuss-criteria.html>
>>>> for more information about IESG DISCUSS and COMMENT positions.
>>>>=20
>>>>=20
>>>> The document, along with other ballot positions, can be found here:
>>>> https://datatracker.ietf.org/doc/draft-ietf-cose-msg/ =
<https://datatracker.ietf.org/doc/draft-ietf-cose-msg/>
>>>>=20
>>>>=20
>>>>=20
>>>> =
----------------------------------------------------------------------
>>>> DISCUSS:
>>>> =
----------------------------------------------------------------------
>>>>=20
>>>>=20
>>>> Thanks for the updates in -20. I think we've only the following =
points left. Note
>>>> that 2 of those are questions to the WG chairs and not to Jim.
>>>>=20
>>>>   (1.1) table 2: As-is the value type column seems to me to
>>>>   make CDDL normative. I don't see the natural language version
>>>>   that you said would be normative.
>>>>=20
>>>> Can you help me see that the changes there are such that CDDL is ok =
as
>>>> informative? I'm not sure but as I read it there is still no =
natural language
>>>> statement that a "counter signature" is one (or more) =
COSE_Signature values.
>>>=20
>>> In section 1.3 the following text was added:
>>>=20
>>> Two syntaxes from CDDL appear in this document as shorthand. These =
are:
>>>=20
>>>    FOO / BAR - indicates that either FOO or BAR can appear here
>>>    [+ FOO] - indicates that the type FOO appears one or more times =
in an array
>>>=20
>>> The value from the table is:
>>>=20
>>> COSE_Signature / [+ COSE_Signature ]
>>>=20
>>> Section 4.1 contains the text:
>>>=20
>>> The CBOR object that carries the signature and information about the =
signature is called the COSE_Signature structure.
>>>=20
>>>> =46rom that I think that all of the needed normative text is =
present.
>>=20
>> Yeah, I get that. But then I think you've embedded some
>> CDDL notation at least as normative. (I mean the constructs
>> you describe with FOO/BAR above.)
>>=20
>> While I do start to feel pedantry-panic that I'm saying
>> it, if really treating CDDL as informative, I think you
>> ought say in text that one or more COSE_Signature fields
>> need to be in a counter signature.
>>=20
>> But I'm gonna clear that anyway as the whole CDDL is not
>> normative thing is really pretence IMO and there's no point
>> in me joining in with that further.
>>=20
>> That means that clearing this discuss is now solely down
>> to the chairs saying they're happy that Jim's positions
>> do reflect wG consensus.
>>=20
>> Cheers,
>> S.
>>=20
>>=20
>>=20
>>=20
>>>=20
>>>>=20
>>>>   (2) 3.1, alg: so you're disallowing a setup where the kid
>>>>   alone identifies the key and algorithm to the recipient?
>>>>   That is used in some IETF protocols (OSPF iirc) so rhat's a
>>>>   pity, and will in those (maybe less common) cases consume a
>>>>   few bytes that could otherwise be saved.  I think, but am not
>>>>   sure, that the WG already discussed this, but if not, maybe
>>>>   worth a thought? (Or even a 2nd thought:-) And appendix A.1
>>>>   is really puzzling - as it provides instructions for how to
>>>>   not follow a MUST in the body of the document.
>>>>=20
>>>> I think we left the mail thread on this with you saying "Best to =
ask the chairs if
>>>> they agree that this is WG consensus," as you're an admitteddly =
strong partisan
>>>> on this topic.
>>>>=20
>>>> So, COSE chairs - what's your take? (If you say this is ok with the =
WG, I'll clear.)
>>>>=20
>>>>   (6) section 10: why MUST the kty values be present always?
>>>>   That seems unnecessary in some contexts and I don't get a
>>>>   security reason why it's needed e.g. if there's an alg id
>>>>   somewhere - can you explain? I can see folks omitting this
>>>>   leading to interop problems for not useful reasons. (Same
>>>>   comment applies in other cases where kty is a MUST, e.g.
>>>>   12.1.2, 12.2.1.)
>>>>=20
>>>> I think this is the similar to discuss point (2) above.
>>>>=20
>>>> So again, COSE chairs, can you confirm that this design does =
reflect WG
>>>> consensus and isn't just a thorough and good editor getting his =
way? (If you say
>>>> this is ok with the WG, I'll clear.)
>>>>=20
>>>>=20
>>>> =
----------------------------------------------------------------------
>>>> COMMENT:
>>>> =
----------------------------------------------------------------------
>>>>=20
>>>>=20
>>>> OLD COMMENTS BELOW, I DIDN'T CHECK THEM. Happy to chat more about =
'em
>>>> if that's useful.
>>>>=20
>>>> - 1.4: the 2nd last paragraph is unclear to me. Probably just needs =
re-phrasing.
>>>>=20
>>>> - 1.5: I'd add a reference to RFC5116.
>>>>=20
>>>> - 3.1, crit: The statement that security libraries or application =
code can handle
>>>> this is odd - isn't that an API requirement? (I'm not objecting, =
but it's odd.)
>>>>=20
>>>> - 3.1, "content type" is the space there intended?  If so, maybe =
add quotes or a
>>>> comma or something to disambiguate the name and descriptive text? =
Same for
>>>> other multi-word names here.
>>>>=20
>>>> - 3.1, "all the keys may need to be checked" - really?  Or do you =
mean all the
>>>> keys associated with this kid?
>>>>=20
>>>> - 3.1, IV/Partial IV - I think it's an error to define this here. =
What if some
>>>> algorithm can't use that kind of (0|partial)^IV but needs something =
else instead?
>>>> Shouldn't all mechanism for handling IVs be defined by the =
algorithm/mode?
>>>> (This isn't a discuss because I can't think of a good counter =
example and there'd
>>>> be other ways around the problem too probably.)
>>>>=20
>>>> - 4.1: signingTime is often needed with signatures. Isn't that =
common enough to
>>>> want to define a way to do it, as an option?
>>>>=20
>>>> - 4.1: If I sign with a private key corresponding to a 2047 or 2049 =
bit RSA public
>>>> key modulus, then is it clear what to put where in the signature =
bstr? (Yes, that'd
>>>> be dumb, but I wonder is what to do well enough defined, as I don't =
think you
>>>> can rule it out in all cases.) Since you don't include RSA here I =
guess it's ok to skip
>>>> this, but maybe you need to say that such issues need to be handled =
in the
>>>> definition of signature algs.
>>>>=20
>>>> - 4.3: "cannot bleed" isn't clear enough maybe, give an example =
perhaps where
>>>> the decoder can fail to disambiguate a boundary?
>>>>=20
>>>> 4.4, last para: I disagree that one must (even lowercase
>>>> must) check the signing identity.  That's application behaviour and =
should be
>>>> stated here in such concrete terms.
>>>> At least s/must also/may also want to/
>>>>=20
>>>> (Note - the above were comments on -18, but also seem to work based =
on -19.
>>>> Subsequent comments are on -19.)
>>>>=20
>>>> - 7.1: "starting at the same base IV" - are you missing "and =
incrementing" or
>>>> something? Otherwise I think this seems unclear.
>>>>=20
>>>> - 8.2.1: is the phrasing of the 1st para right? would it be better =
to say that the
>>>> value of a key for EdDSA MUST NOT be used for ECDH and vice-versa. =
(Or maybe
>>>> points instead of
>>>> keys?)
>>>>=20
>>>> - 8.2.1: you need a reference for batch signing. (Or could it be =
omitted?)
>>>>=20
>>>> - section 9: I think it'd be good to be clearer about the strength =
of truncated
>>>> MAC values. (And I can't recall the right thing to say off the top =
of my head:-)
>>>>=20
>>>> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd be =
better to refer to
>>>> the draft as that should be published soon. (Same for RFC3447 btw.)
>>>>=20
>>>>   [1] https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/ =
<https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/>
>>>>=20
>>>> - 12.4: Why "OKP"? And saying there's no "simple way" to do point =
validation
>>>> seems fairly opaque, a reference there or explanatory text would be =
good. (Ah,
>>>> it's in section 13, maybe shuffle the text or include a pointer.) =
Octet key pair
>>>> doesn't seem like that good a name to me btw.
>>>>=20
>>>> - 12.5: The 1st para seems wrong. (Or at least is unclear to
>>>> me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway, does =
it mean
>>>> double encryption or two parallel ciphertexts?
>>>> (I assume the former.) What's the algebraic thing you're trying to =
explain?  It'd
>>>> be good to provide that for such relatively complex operations I =
think. Is this
>>>> what you mean?
>>>>=20
>>>> 		KW(KDF(DH-shared),CEK)
>>>>=20
>>>> - Table 22: The EC2 or OKP value is fixed per curve and the =
cryptographic
>>>> function being performed so seems unnecessary.
>>>> Do you really need it so? Why? (I'm not buying that some future =
form of ECC
>>>> might mean this is needed btw - and codepoints aren't expensive =
here, right? So
>>>> other forms of ECC can burn codepoints when that's needed and in =
the
>>>> meantime we'd save bytes and complexity.)
>>>>=20
>>>> - Section 15: Do we have any examples of such a profile?  I think =
it'd be great if
>>>> we did and could add an informative reference here (even if that's =
to an early I-
>>>> D).
>>>>=20
>>>> - section 19: I don't get how ECDSA is normative and the cfrg =
curves are not.
>>>> Same for RFC6979. Maybe these all could do with checking? (No big =
deal IMO
>>>> but maybe worth it.)
>>>>=20
>>>> - Appendices A.1 (as already noted) and A.2 are a puzzle.
>>>> Why say in the body of the document to do <foo> and then an =
appendix that
>>>> says how to do <not-foo>?
>>>>=20
>>>> - Appendix C and the implementation status section: Many thanks - =
great to see
>>>> that! (I didn't check 'em though:-)
>>>>=20
>>>> - Thanks also for speedily handling the extensive secdir review.
>>>>=20
>>>>   [2] =
https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html =
<https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html>


--Apple-Mail=_5DC1FDB7-4956-4CD4-A759-ABBA98D238E7
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">Hi Stephen,<div class=3D""><br class=3D""></div><div =
class=3D"">Sorry for the delay on answering #2 and #6 below. After =
researching the list archives and issue tracker, neither Kepeng nor I =
can find discussion on either issue. If there is such discussion in the =
archives, we would appreciate the working group members pointing us all =
to it.&nbsp;</div><div class=3D""><br class=3D""></div><div class=3D"">But=
 as such, these both seem to be items that were added to the spec by the =
editor without controversy or contention from the working group. =
Therefore, it does appear to reflect consensus as there were no =
objections raised. We both think that the items are OK as is, but we=E2=80=
=99d like to give the working group a couple days to respond otherwise =
if that=E2=80=99s not the case for anyone.&nbsp;</div><div class=3D""><br =
class=3D""></div><div class=3D"">Thank you,</div><div class=3D""><br =
class=3D""></div><div class=3D"">&nbsp;=E2=80=94 Justin &amp; Kepeng, as =
COSE chairs</div><div class=3D""><br class=3D""></div><div class=3D""><br =
class=3D""><div><blockquote type=3D"cite" class=3D""><div class=3D"">On =
Oct 19, 2016, at 8:59 AM, Justin Richer &lt;<a =
href=3D"mailto:jricher@mit.edu" class=3D"">jricher@MIT.EDU</a>&gt; =
wrote:</div><br class=3D"Apple-interchange-newline"><div class=3D""><meta =
http-equiv=3D"Content-Type" content=3D"text/html charset=3Dutf-8" =
class=3D""><div style=3D"word-wrap: break-word; -webkit-nbsp-mode: =
space; -webkit-line-break: after-white-space;" class=3D"">Hi =
Stephen,<div class=3D""><br class=3D""></div><div class=3D"">The =
consensus of the working group after Yokohama was to make the CDDL =
non-normative and still use it as a description/example =
format.&nbsp;</div><div class=3D""><br class=3D""></div><div class=3D""><a=
 href=3D"https://www.ietf.org/mail-archive/web/cose/current/msg00802.html"=
 =
class=3D"">https://www.ietf.org/mail-archive/web/cose/current/msg00802.htm=
l</a></div><div class=3D""><br class=3D""></div><div class=3D"">I =
believe the current draft reflects that state. Yes, CDDL syntax is =
peppered throughout the document as illustration, but it=E2=80=99s the =
English text that=E2=80=99s normative.</div><div class=3D""><br =
class=3D""></div><div class=3D"">One point that was discussed was that =
if the draft did not use CDDL, then another description language would =
likely need to be made up to make human-readable examples in the text. =
The group felt that it was better to use an existing (even if =
unfinished/unofficial) description format but remove the normative =
dependency.</div><div class=3D""><br class=3D""></div><div =
class=3D"">&nbsp;=E2=80=94 Justin, as chair.</div><div class=3D""><br =
class=3D""><div class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D"">On Oct 16, 2016, at 3:41 PM, Stephen Farrell &lt;<a =
href=3D"mailto:stephen.farrell@cs.tcd.ie" =
class=3D"">stephen.farrell@cs.tcd.ie</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">Hiya,</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">Dear cose-chairs - there is stuff in this =
discuss for you to deal</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">with. (Just putting that there in case =
you're not delving down</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">into the body of the mails:-)</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">On 16/10/16 22:50, Jim Schaad =
wrote:</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><blockquote=
 type=3D"cite" style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D"">I think =
we dealt with all of the comments. &nbsp;I cannot help you with getting =
chair response.<br class=3D""><br class=3D"">See below for my one =
issue.<br class=3D""><br class=3D"">Jim<br class=3D""><br class=3D""><br =
class=3D""><blockquote type=3D"cite" class=3D"">-----Original =
Message-----<br class=3D"">From: Stephen Farrell [<a =
href=3D"mailto:stephen.farrell@cs.tcd.ie" =
class=3D"">mailto:stephen.farrell@cs.tcd.ie</a>]<br class=3D"">Sent: =
Sunday, October 16, 2016 1:57 PM<br class=3D"">To: The IESG &lt;<a =
href=3D"mailto:iesg@ietf.org" class=3D"">iesg@ietf.org</a>&gt;<br =
class=3D"">Cc: <a href=3D"mailto:draft-ietf-cose-msg@ietf.org" =
class=3D"">draft-ietf-cose-msg@ietf.org</a>; Goeran Selander<br =
class=3D"">&lt;<a href=3D"mailto:goran.selander@ericsson.com" =
class=3D"">goran.selander@ericsson.com</a>&gt;; <a =
href=3D"mailto:cose-chairs@ietf.org" =
class=3D"">cose-chairs@ietf.org</a>;<br class=3D""><a =
href=3D"mailto:goran.selander@ericsson.com" =
class=3D"">goran.selander@ericsson.com</a>; <a =
href=3D"mailto:cose@ietf.org" class=3D"">cose@ietf.org</a><br =
class=3D"">Subject: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: =
(with DISCUSS and<br class=3D"">COMMENT)<br class=3D""><br =
class=3D"">Stephen Farrell has entered the following ballot position =
for<br class=3D"">draft-ietf-cose-msg-20: Discuss<br class=3D""><br =
class=3D"">When responding, please keep the subject line intact and =
reply to all email<br class=3D"">addresses included in the To and CC =
lines. (Feel free to cut this introductory<br class=3D"">paragraph, =
however.)<br class=3D""><br class=3D""><br class=3D"">Please refer to <a =
href=3D"https://www.ietf.org/iesg/statement/discuss-criteria.html" =
class=3D"">https://www.ietf.org/iesg/statement/discuss-criteria.html</a><b=
r class=3D"">for more information about IESG DISCUSS and COMMENT =
positions.<br class=3D""><br class=3D""><br class=3D"">The document, =
along with other ballot positions, can be found here:<br class=3D""><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-cose-msg/" =
class=3D"">https://datatracker.ietf.org/doc/draft-ietf-cose-msg/</a><br =
class=3D""><br class=3D""><br class=3D""><br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D"">DISCUSS:<br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D""><br class=3D""><br class=3D"">Thanks for the =
updates in -20. I think we've only the following points left. Note<br =
class=3D"">that 2 of those are questions to the WG chairs and not to =
Jim.<br class=3D""><br class=3D"">&nbsp;&nbsp;(1.1) table 2: As-is the =
value type column seems to me to<br class=3D"">&nbsp;&nbsp;make CDDL =
normative. I don't see the natural language version<br =
class=3D"">&nbsp;&nbsp;that you said would be normative.<br class=3D""><br=
 class=3D"">Can you help me see that the changes there are such that =
CDDL is ok as<br class=3D"">informative? I'm not sure but as I read it =
there is still no natural language<br class=3D"">statement that a =
"counter signature" is one (or more) COSE_Signature values.<br =
class=3D""></blockquote><br class=3D"">In section 1.3 the following text =
was added:<br class=3D""><br class=3D"">Two syntaxes from CDDL appear in =
this document as shorthand. These are:<br class=3D""><br =
class=3D"">&nbsp;&nbsp;&nbsp;FOO / BAR - indicates that either FOO or =
BAR can appear here<br class=3D"">&nbsp;&nbsp;&nbsp;[+ FOO] - indicates =
that the type FOO appears one or more times in an array<br class=3D""><br =
class=3D"">The value from the table is:<br class=3D""><br =
class=3D"">COSE_Signature / [+ COSE_Signature ]<br class=3D""><br =
class=3D"">Section 4.1 contains the text:<br class=3D""><br class=3D"">The=
 CBOR object that carries the signature and information about the =
signature is called the COSE_Signature structure.<br class=3D""><br =
class=3D""><blockquote type=3D"cite" class=3D"">=46rom that I think that =
all of the needed normative text is present.<br =
class=3D""></blockquote></blockquote><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">Yeah, I get that. But then I think you've =
embedded some</span><br style=3D"font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; orphans: auto; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: =
auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span=
 style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">CDDL notation at least as normative. (I mean the =
constructs</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">you describe with FOO/BAR above.)</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">While I do start to feel pedantry-panic =
that I'm saying</span><br style=3D"font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; orphans: auto; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: =
auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span=
 style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">it, if really treating CDDL as informative, I =
think you</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">ought say in text that one or more =
COSE_Signature fields</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">need to be in a counter =
signature.</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">But I'm gonna clear =
that anyway as the whole CDDL is not</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">normative thing is really pretence IMO =
and there's no point</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">in me joining in with that =
further.</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">That means that =
clearing this discuss is now solely down</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">to the chairs saying they're happy that =
Jim's positions</span><br style=3D"font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; orphans: auto; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: =
auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span=
 style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">do reflect wG consensus.</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">Cheers,</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: =
inline !important;" class=3D"">S.</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><blockquote=
 type=3D"cite" style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; orphans: auto; text-align: start; text-indent: =
0px; text-transform: none; white-space: normal; widows: auto; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><br =
class=3D""><blockquote type=3D"cite" class=3D""><br =
class=3D"">&nbsp;&nbsp;(2) 3.1, alg: so you're disallowing a setup where =
the kid<br class=3D"">&nbsp;&nbsp;alone identifies the key and algorithm =
to the recipient?<br class=3D"">&nbsp;&nbsp;That is used in some IETF =
protocols (OSPF iirc) so rhat's a<br class=3D"">&nbsp;&nbsp;pity, and =
will in those (maybe less common) cases consume a<br =
class=3D"">&nbsp;&nbsp;few bytes that could otherwise be saved. &nbsp;I =
think, but am not<br class=3D"">&nbsp;&nbsp;sure, that the WG already =
discussed this, but if not, maybe<br class=3D"">&nbsp;&nbsp;worth a =
thought? (Or even a 2nd thought:-) And appendix A.1<br =
class=3D"">&nbsp;&nbsp;is really puzzling - as it provides instructions =
for how to<br class=3D"">&nbsp;&nbsp;not follow a MUST in the body of =
the document.<br class=3D""><br class=3D"">I think we left the mail =
thread on this with you saying "Best to ask the chairs if<br =
class=3D"">they agree that this is WG consensus," as you're an =
admitteddly strong partisan<br class=3D"">on this topic.<br class=3D""><br=
 class=3D"">So, COSE chairs - what's your take? (If you say this is ok =
with the WG, I'll clear.)<br class=3D""><br class=3D"">&nbsp;&nbsp;(6) =
section 10: why MUST the kty values be present always?<br =
class=3D"">&nbsp;&nbsp;That seems unnecessary in some contexts and I =
don't get a<br class=3D"">&nbsp;&nbsp;security reason why it's needed =
e.g. if there's an alg id<br class=3D"">&nbsp;&nbsp;somewhere - can you =
explain? I can see folks omitting this<br class=3D"">&nbsp;&nbsp;leading =
to interop problems for not useful reasons. (Same<br =
class=3D"">&nbsp;&nbsp;comment applies in other cases where kty is a =
MUST, e.g.<br class=3D"">&nbsp;&nbsp;12.1.2, 12.2.1.)<br class=3D""><br =
class=3D"">I think this is the similar to discuss point (2) above.<br =
class=3D""><br class=3D"">So again, COSE chairs, can you confirm that =
this design does reflect WG<br class=3D"">consensus and isn't just a =
thorough and good editor getting his way? (If you say<br class=3D"">this =
is ok with the WG, I'll clear.)<br class=3D""><br class=3D""><br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D"">COMMENT:<br =
class=3D"">---------------------------------------------------------------=
-------<br class=3D""><br class=3D""><br class=3D"">OLD COMMENTS BELOW, =
I DIDN'T CHECK THEM. Happy to chat more about 'em<br class=3D"">if =
that's useful.<br class=3D""><br class=3D"">- 1.4: the 2nd last =
paragraph is unclear to me. Probably just needs re-phrasing.<br =
class=3D""><br class=3D"">- 1.5: I'd add a reference to RFC5116.<br =
class=3D""><br class=3D"">- 3.1, crit: The statement that security =
libraries or application code can handle<br class=3D"">this is odd - =
isn't that an API requirement? (I'm not objecting, but it's odd.)<br =
class=3D""><br class=3D"">- 3.1, "content type" is the space there =
intended? &nbsp;If so, maybe add quotes or a<br class=3D"">comma or =
something to disambiguate the name and descriptive text? Same for<br =
class=3D"">other multi-word names here.<br class=3D""><br class=3D"">- =
3.1, "all the keys may need to be checked" - really? &nbsp;Or do you =
mean all the<br class=3D"">keys associated with this kid?<br =
class=3D""><br class=3D"">- 3.1, IV/Partial IV - I think it's an error =
to define this here. What if some<br class=3D"">algorithm can't use that =
kind of (0|partial)^IV but needs something else instead?<br =
class=3D"">Shouldn't all mechanism for handling IVs be defined by the =
algorithm/mode?<br class=3D"">(This isn't a discuss because I can't =
think of a good counter example and there'd<br class=3D"">be other ways =
around the problem too probably.)<br class=3D""><br class=3D"">- 4.1: =
signingTime is often needed with signatures. Isn't that common enough =
to<br class=3D"">want to define a way to do it, as an option?<br =
class=3D""><br class=3D"">- 4.1: If I sign with a private key =
corresponding to a 2047 or 2049 bit RSA public<br class=3D"">key =
modulus, then is it clear what to put where in the signature bstr? (Yes, =
that'd<br class=3D"">be dumb, but I wonder is what to do well enough =
defined, as I don't think you<br class=3D"">can rule it out in all =
cases.) Since you don't include RSA here I guess it's ok to skip<br =
class=3D"">this, but maybe you need to say that such issues need to be =
handled in the<br class=3D"">definition of signature algs.<br =
class=3D""><br class=3D"">- 4.3: "cannot bleed" isn't clear enough =
maybe, give an example perhaps where<br class=3D"">the decoder can fail =
to disambiguate a boundary?<br class=3D""><br class=3D"">4.4, last para: =
I disagree that one must (even lowercase<br class=3D"">must) check the =
signing identity. &nbsp;That's application behaviour and should be<br =
class=3D"">stated here in such concrete terms.<br class=3D"">At least =
s/must also/may also want to/<br class=3D""><br class=3D"">(Note - the =
above were comments on -18, but also seem to work based on -19.<br =
class=3D"">Subsequent comments are on -19.)<br class=3D""><br class=3D"">-=
 7.1: "starting at the same base IV" - are you missing "and =
incrementing" or<br class=3D"">something? Otherwise I think this seems =
unclear.<br class=3D""><br class=3D"">- 8.2.1: is the phrasing of the =
1st para right? would it be better to say that the<br class=3D"">value =
of a key for EdDSA MUST NOT be used for ECDH and vice-versa. (Or =
maybe<br class=3D"">points instead of<br class=3D"">keys?)<br =
class=3D""><br class=3D"">- 8.2.1: you need a reference for batch =
signing. (Or could it be omitted?)<br class=3D""><br class=3D"">- =
section 9: I think it'd be good to be clearer about the strength of =
truncated<br class=3D"">MAC values. (And I can't recall the right thing =
to say off the top of my head:-)<br class=3D""><br class=3D"">- 11: =
RFC2898 is about to be obsoleted by [1]. I suspect it'd be better to =
refer to<br class=3D"">the draft as that should be published soon. (Same =
for RFC3447 btw.)<br class=3D""><br class=3D"">&nbsp;&nbsp;[1] <a =
href=3D"https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/" =
class=3D"">https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/</=
a><br class=3D""><br class=3D"">- 12.4: Why "OKP"? And saying there's no =
"simple way" to do point validation<br class=3D"">seems fairly opaque, a =
reference there or explanatory text would be good. (Ah,<br class=3D"">it's=
 in section 13, maybe shuffle the text or include a pointer.) Octet key =
pair<br class=3D"">doesn't seem like that good a name to me btw.<br =
class=3D""><br class=3D"">- 12.5: The 1st para seems wrong. (Or at least =
is unclear to<br class=3D"">me.) "Encrypted with &lt;foo&gt; and =
&lt;bar&gt;" seems ambiguous anyway, does it mean<br class=3D"">double =
encryption or two parallel ciphertexts?<br class=3D"">(I assume the =
former.) What's the algebraic thing you're trying to explain? =
&nbsp;It'd<br class=3D"">be good to provide that for such relatively =
complex operations I think. Is this<br class=3D"">what you mean?<br =
class=3D""><br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>KW(KDF(DH-shared),CEK)<br =
class=3D""><br class=3D"">- Table 22: The EC2 or OKP value is fixed per =
curve and the cryptographic<br class=3D"">function being performed so =
seems unnecessary.<br class=3D"">Do you really need it so? Why? (I'm not =
buying that some future form of ECC<br class=3D"">might mean this is =
needed btw - and codepoints aren't expensive here, right? So<br =
class=3D"">other forms of ECC can burn codepoints when that's needed and =
in the<br class=3D"">meantime we'd save bytes and complexity.)<br =
class=3D""><br class=3D"">- Section 15: Do we have any examples of such =
a profile? &nbsp;I think it'd be great if<br class=3D"">we did and could =
add an informative reference here (even if that's to an early I-<br =
class=3D"">D).<br class=3D""><br class=3D"">- section 19: I don't get =
how ECDSA is normative and the cfrg curves are not.<br class=3D"">Same =
for RFC6979. Maybe these all could do with checking? (No big deal IMO<br =
class=3D"">but maybe worth it.)<br class=3D""><br class=3D"">- =
Appendices A.1 (as already noted) and A.2 are a puzzle.<br class=3D"">Why =
say in the body of the document to do &lt;foo&gt; and then an appendix =
that<br class=3D"">says how to do &lt;not-foo&gt;?<br class=3D""><br =
class=3D"">- Appendix C and the implementation status section: Many =
thanks - great to see<br class=3D"">that! (I didn't check 'em =
though:-)<br class=3D""><br class=3D"">- Thanks also for speedily =
handling the extensive secdir review.<br class=3D""><br =
class=3D"">&nbsp;&nbsp;[2] <a =
href=3D"https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html=
" =
class=3D"">https://www.ietf.org/mail-archive/web/secdir/current/msg06801.h=
tml</a></blockquote></blockquote></div></blockquote></div><br =
class=3D""></div></div></div></blockquote></div><br =
class=3D""></div></body></html>=

--Apple-Mail=_5DC1FDB7-4956-4CD4-A759-ABBA98D238E7--

--Apple-Mail=_F752B7B5-06DF-445D-8ABC-0FC5786F172A
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----

iQEcBAEBCAAGBQJYEMZyAAoJEDPAngkbd+w9keYH/jCfJk4ugXrSSEr5/Kacmn+h
Svc1c0/wX1n7v4Dh2QUY7hH1oyQLA51VBJPh5WKrUilm2RpxAmG/1g8rwz/NQhO3
OUmlB5cFYPNeh1zkqGwODgOhkFiQYhKfbevbI1rQ7RK8k0WckEBVP0Bj69lsIVB9
zvcf8Bq4kiDjuXSCQpMxRGI5vP7QTiiscAJoFVUOvMTIGbBowmfezvdbh9CgQEDs
Y6wpqO+CXY4Ym2/adeyxe2Hh+upxWh2dZXsPZPNKWkt7Wom9kOoyA7fv+dV+t7TL
Ckwk/97hNP82Glvpgq1TJljmVGRYXmeC0FhIBGOZJ75vb0G6N40nNe3tiBToezc=
=kacv
-----END PGP SIGNATURE-----

--Apple-Mail=_F752B7B5-06DF-445D-8ABC-0FC5786F172A--


From nobody Wed Oct 26 08:12:53 2016
Return-Path: <stephen.farrell@cs.tcd.ie>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 28A07129581; Wed, 26 Oct 2016 08:12:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.732
X-Spam-Level: 
X-Spam-Status: No, score=-4.732 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.431, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cs.tcd.ie
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 KIkkuXS1KTs4; Wed, 26 Oct 2016 08:12:43 -0700 (PDT)
Received: from mercury.scss.tcd.ie (mercury.scss.tcd.ie [134.226.56.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 822791295A0; Wed, 26 Oct 2016 08:12:43 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mercury.scss.tcd.ie (Postfix) with ESMTP id 23CAEBE2E; Wed, 26 Oct 2016 16:12:41 +0100 (IST)
X-Virus-Scanned: Debian amavisd-new at scss.tcd.ie
Received: from mercury.scss.tcd.ie ([127.0.0.1]) by localhost (mercury.scss.tcd.ie [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 653IYdixXj0B; Wed, 26 Oct 2016 16:12:37 +0100 (IST)
Received: from [172.20.5.168] (unknown [46.218.58.213]) by mercury.scss.tcd.ie (Postfix) with ESMTPSA id CC39CBE32; Wed, 26 Oct 2016 16:12:36 +0100 (IST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cs.tcd.ie; s=mail; t=1477494757; bh=IyAwCYme1rexooUC2tVokFdpIYmG1zosFtx66pjjwjU=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=dzOS3NIyCJxC3Jtb/gORSzKSh5X9fgq8wKwzEQuMq1Sb63AGX+HSKl7Gh5LX8KNWD sopK+hn4DujQaFD4bFUt8ydP5Hi/xrzTXKWVmJjVQq0oWh8bBa9JOc61B0urwb7RMz a8BFiOt1kcG2qB1vpVLXEBdnr8dGIwo6NKzXz+lU=
To: Justin Richer <jricher@mit.edu>
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com> <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com> <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie> <822A08BC-5710-48E6-BCC7-AC86A554EFEC@mit.edu> <476D703F-727E-49D9-89C1-F6FD1092D55E@mit.edu>
From: Stephen Farrell <stephen.farrell@cs.tcd.ie>
Openpgp: id=D66EA7906F0B897FB2E97D582F3C8736805F8DA2; url=
Message-ID: <94353594-ef7c-d909-605a-391ef2502c68@cs.tcd.ie>
Date: Wed, 26 Oct 2016 16:12:36 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0
MIME-Version: 1.0
In-Reply-To: <476D703F-727E-49D9-89C1-F6FD1092D55E@mit.edu>
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="TVFXtQVeiowoUTsREEL02q9nPa2opDiWL"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/_03GULhVJuwSDHs1G4eYWfAXyjs>
Cc: Jim Schaad <ietf@augustcellars.com>, cose-chairs@ietf.org, The IESG <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org, goran.selander@ericsson.com, cose@ietf.org
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Oct 2016 15:12:48 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--TVFXtQVeiowoUTsREEL02q9nPa2opDiWL
Content-Type: multipart/mixed; boundary="NRQOnkHTEMJ4ePOhntCkljPRTmeTS7p3h";
 protected-headers="v1"
From: Stephen Farrell <stephen.farrell@cs.tcd.ie>
To: Justin Richer <jricher@mit.edu>
Cc: Jim Schaad <ietf@augustcellars.com>, cose-chairs@ietf.org,
 The IESG <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org,
 goran.selander@ericsson.com, cose@ietf.org
Message-ID: <94353594-ef7c-d909-605a-391ef2502c68@cs.tcd.ie>
Subject: Re: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with
 DISCUSS and COMMENT)
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com>
 <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com>
 <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie>
 <822A08BC-5710-48E6-BCC7-AC86A554EFEC@mit.edu>
 <476D703F-727E-49D9-89C1-F6FD1092D55E@mit.edu>
In-Reply-To: <476D703F-727E-49D9-89C1-F6FD1092D55E@mit.edu>

--NRQOnkHTEMJ4ePOhntCkljPRTmeTS7p3h
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Hiya,

On 26/10/16 16:06, Justin Richer wrote:
> Hi Stephen,
>=20
> Sorry for the delay on answering #2 and #6 below. After researching
> the list archives and issue tracker, neither Kepeng nor I can find
> discussion on either issue. If there is such discussion in the
> archives, we would appreciate the working group members pointing us
> all to it.
>=20
> But as such, these both seem to be items that were added to the spec
> by the editor without controversy or contention from the working
> group. Therefore, it does appear to reflect consensus as there were
> no objections raised. We both think that the items are OK as is, but
> we=E2=80=99d like to give the working group a couple days to respond
> otherwise if that=E2=80=99s not the case for anyone.

Thanks for checking. If the WG don't say they'd like a change
within a couple of days, I'll clear the discuss. (Please do
ping me though, I may forget;-)

Cheers,
S.


>=20
> Thank you,
>=20
> =E2=80=94 Justin & Kepeng, as COSE chairs
>=20
>=20
>> On Oct 19, 2016, at 8:59 AM, Justin Richer <jricher@MIT.EDU>
>> wrote:
>>=20
>> Hi Stephen,
>>=20
>> The consensus of the working group after Yokohama was to make the
>> CDDL non-normative and still use it as a description/example
>> format.
>>=20
>> https://www.ietf.org/mail-archive/web/cose/current/msg00802.html
>> <https://www.ietf.org/mail-archive/web/cose/current/msg00802.html>
>>=20
>> I believe the current draft reflects that state. Yes, CDDL syntax
>> is peppered throughout the document as illustration, but it=E2=80=99s =
the
>> English text that=E2=80=99s normative.
>>=20
>> One point that was discussed was that if the draft did not use
>> CDDL, then another description language would likely need to be
>> made up to make human-readable examples in the text. The group felt
>> that it was better to use an existing (even if
>> unfinished/unofficial) description format but remove the normative
>> dependency.
>>=20
>> =E2=80=94 Justin, as chair.
>>=20
>>> On Oct 16, 2016, at 3:41 PM, Stephen Farrell
>>> <stephen.farrell@cs.tcd.ie <mailto:stephen.farrell@cs.tcd.ie>>
>>> wrote:
>>>=20
>>>=20
>>> Hiya,
>>>=20
>>> Dear cose-chairs - there is stuff in this discuss for you to
>>> deal with. (Just putting that there in case you're not delving
>>> down into the body of the mails:-)
>>>=20
>>> On 16/10/16 22:50, Jim Schaad wrote:
>>>> I think we dealt with all of the comments.  I cannot help you
>>>> with getting chair response.
>>>>=20
>>>> See below for my one issue.
>>>>=20
>>>> Jim
>>>>=20
>>>>=20
>>>>> -----Original Message----- From: Stephen Farrell
>>>>> [mailto:stephen.farrell@cs.tcd.ie
>>>>> <mailto:stephen.farrell@cs.tcd.ie>] Sent: Sunday, October 16,
>>>>> 2016 1:57 PM To: The IESG <iesg@ietf.org
>>>>> <mailto:iesg@ietf.org>> Cc: draft-ietf-cose-msg@ietf.org
>>>>> <mailto:draft-ietf-cose-msg@ietf.org>; Goeran Selander=20
>>>>> <goran.selander@ericsson.com
>>>>> <mailto:goran.selander@ericsson.com>>; cose-chairs@ietf.org
>>>>> <mailto:cose-chairs@ietf.org>; goran.selander@ericsson.com
>>>>> <mailto:goran.selander@ericsson.com>; cose@ietf.org
>>>>> <mailto:cose@ietf.org> Subject: Stephen Farrell's Discuss on
>>>>> draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
>>>>>=20
>>>>> Stephen Farrell has entered the following ballot position
>>>>> for draft-ietf-cose-msg-20: Discuss
>>>>>=20
>>>>> When responding, please keep the subject line intact and
>>>>> reply to all email addresses included in the To and CC lines.
>>>>> (Feel free to cut this introductory paragraph, however.)
>>>>>=20
>>>>>=20
>>>>> Please refer to
>>>>> https://www.ietf.org/iesg/statement/discuss-criteria.html
>>>>> <https://www.ietf.org/iesg/statement/discuss-criteria.html>=20
>>>>> for more information about IESG DISCUSS and COMMENT
>>>>> positions.
>>>>>=20
>>>>>=20
>>>>> The document, along with other ballot positions, can be found
>>>>> here: https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
>>>>> <https://datatracker.ietf.org/doc/draft-ietf-cose-msg/>
>>>>>=20
>>>>>=20
>>>>>=20
>>>>> -------------------------------------------------------------------=
---
>>>>>
>>>>>=20
DISCUSS:
>>>>> -------------------------------------------------------------------=
---
>>>>>
>>>>>
>>>>>
>>>>>=20
Thanks for the updates in -20. I think we've only the following points
left. Note
>>>>> that 2 of those are questions to the WG chairs and not to
>>>>> Jim.
>>>>>=20
>>>>> (1.1) table 2: As-is the value type column seems to me to=20
>>>>> make CDDL normative. I don't see the natural language
>>>>> version that you said would be normative.
>>>>>=20
>>>>> Can you help me see that the changes there are such that CDDL
>>>>> is ok as informative? I'm not sure but as I read it there is
>>>>> still no natural language statement that a "counter
>>>>> signature" is one (or more) COSE_Signature values.
>>>>=20
>>>> In section 1.3 the following text was added:
>>>>=20
>>>> Two syntaxes from CDDL appear in this document as shorthand.
>>>> These are:
>>>>=20
>>>> FOO / BAR - indicates that either FOO or BAR can appear here [+
>>>> FOO] - indicates that the type FOO appears one or more times in
>>>> an array
>>>>=20
>>>> The value from the table is:
>>>>=20
>>>> COSE_Signature / [+ COSE_Signature ]
>>>>=20
>>>> Section 4.1 contains the text:
>>>>=20
>>>> The CBOR object that carries the signature and information
>>>> about the signature is called the COSE_Signature structure.
>>>>=20
>>>>> From that I think that all of the needed normative text is
>>>>> present.
>>>=20
>>> Yeah, I get that. But then I think you've embedded some CDDL
>>> notation at least as normative. (I mean the constructs you
>>> describe with FOO/BAR above.)
>>>=20
>>> While I do start to feel pedantry-panic that I'm saying it, if
>>> really treating CDDL as informative, I think you ought say in
>>> text that one or more COSE_Signature fields need to be in a
>>> counter signature.
>>>=20
>>> But I'm gonna clear that anyway as the whole CDDL is not=20
>>> normative thing is really pretence IMO and there's no point in me
>>> joining in with that further.
>>>=20
>>> That means that clearing this discuss is now solely down to the
>>> chairs saying they're happy that Jim's positions do reflect wG
>>> consensus.
>>>=20
>>> Cheers, S.
>>>=20
>>>=20
>>>=20
>>>=20
>>>>=20
>>>>>=20
>>>>> (2) 3.1, alg: so you're disallowing a setup where the kid=20
>>>>> alone identifies the key and algorithm to the recipient? That
>>>>> is used in some IETF protocols (OSPF iirc) so rhat's a pity,
>>>>> and will in those (maybe less common) cases consume a few
>>>>> bytes that could otherwise be saved.  I think, but am not=20
>>>>> sure, that the WG already discussed this, but if not, maybe=20
>>>>> worth a thought? (Or even a 2nd thought:-) And appendix A.1=20
>>>>> is really puzzling - as it provides instructions for how to=20
>>>>> not follow a MUST in the body of the document.
>>>>>=20
>>>>> I think we left the mail thread on this with you saying "Best
>>>>> to ask the chairs if they agree that this is WG consensus,"
>>>>> as you're an admitteddly strong partisan on this topic.
>>>>>=20
>>>>> So, COSE chairs - what's your take? (If you say this is ok
>>>>> with the WG, I'll clear.)
>>>>>=20
>>>>> (6) section 10: why MUST the kty values be present always?=20
>>>>> That seems unnecessary in some contexts and I don't get a=20
>>>>> security reason why it's needed e.g. if there's an alg id=20
>>>>> somewhere - can you explain? I can see folks omitting this=20
>>>>> leading to interop problems for not useful reasons. (Same=20
>>>>> comment applies in other cases where kty is a MUST, e.g.=20
>>>>> 12.1.2, 12.2.1.)
>>>>>=20
>>>>> I think this is the similar to discuss point (2) above.
>>>>>=20
>>>>> So again, COSE chairs, can you confirm that this design does
>>>>> reflect WG consensus and isn't just a thorough and good
>>>>> editor getting his way? (If you say this is ok with the WG,
>>>>> I'll clear.)
>>>>>=20
>>>>>=20
>>>>> -------------------------------------------------------------------=
---
>>>>>
>>>>>=20
COMMENT:
>>>>> -------------------------------------------------------------------=
---
>>>>>
>>>>>
>>>>>
>>>>>=20
OLD COMMENTS BELOW, I DIDN'T CHECK THEM. Happy to chat more about 'em
>>>>> if that's useful.
>>>>>=20
>>>>> - 1.4: the 2nd last paragraph is unclear to me. Probably just
>>>>> needs re-phrasing.
>>>>>=20
>>>>> - 1.5: I'd add a reference to RFC5116.
>>>>>=20
>>>>> - 3.1, crit: The statement that security libraries or
>>>>> application code can handle this is odd - isn't that an API
>>>>> requirement? (I'm not objecting, but it's odd.)
>>>>>=20
>>>>> - 3.1, "content type" is the space there intended?  If so,
>>>>> maybe add quotes or a comma or something to disambiguate the
>>>>> name and descriptive text? Same for other multi-word names
>>>>> here.
>>>>>=20
>>>>> - 3.1, "all the keys may need to be checked" - really?  Or do
>>>>> you mean all the keys associated with this kid?
>>>>>=20
>>>>> - 3.1, IV/Partial IV - I think it's an error to define this
>>>>> here. What if some algorithm can't use that kind of
>>>>> (0|partial)^IV but needs something else instead? Shouldn't
>>>>> all mechanism for handling IVs be defined by the
>>>>> algorithm/mode? (This isn't a discuss because I can't think
>>>>> of a good counter example and there'd be other ways around
>>>>> the problem too probably.)
>>>>>=20
>>>>> - 4.1: signingTime is often needed with signatures. Isn't
>>>>> that common enough to want to define a way to do it, as an
>>>>> option?
>>>>>=20
>>>>> - 4.1: If I sign with a private key corresponding to a 2047
>>>>> or 2049 bit RSA public key modulus, then is it clear what to
>>>>> put where in the signature bstr? (Yes, that'd be dumb, but I
>>>>> wonder is what to do well enough defined, as I don't think
>>>>> you can rule it out in all cases.) Since you don't include
>>>>> RSA here I guess it's ok to skip this, but maybe you need to
>>>>> say that such issues need to be handled in the definition of
>>>>> signature algs.
>>>>>=20
>>>>> - 4.3: "cannot bleed" isn't clear enough maybe, give an
>>>>> example perhaps where the decoder can fail to disambiguate a
>>>>> boundary?
>>>>>=20
>>>>> 4.4, last para: I disagree that one must (even lowercase=20
>>>>> must) check the signing identity.  That's application
>>>>> behaviour and should be stated here in such concrete terms.=20
>>>>> At least s/must also/may also want to/
>>>>>=20
>>>>> (Note - the above were comments on -18, but also seem to work
>>>>> based on -19. Subsequent comments are on -19.)
>>>>>=20
>>>>> - 7.1: "starting at the same base IV" - are you missing "and
>>>>> incrementing" or something? Otherwise I think this seems
>>>>> unclear.
>>>>>=20
>>>>> - 8.2.1: is the phrasing of the 1st para right? would it be
>>>>> better to say that the value of a key for EdDSA MUST NOT be
>>>>> used for ECDH and vice-versa. (Or maybe points instead of=20
>>>>> keys?)
>>>>>=20
>>>>> - 8.2.1: you need a reference for batch signing. (Or could it
>>>>> be omitted?)
>>>>>=20
>>>>> - section 9: I think it'd be good to be clearer about the
>>>>> strength of truncated MAC values. (And I can't recall the
>>>>> right thing to say off the top of my head:-)
>>>>>=20
>>>>> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd
>>>>> be better to refer to the draft as that should be published
>>>>> soon. (Same for RFC3447 btw.)
>>>>>=20
>>>>> [1]
>>>>> https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
>>>>> <https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/>
>>>>>
>>>>>
>>>>>=20
- 12.4: Why "OKP"? And saying there's no "simple way" to do point validat=
ion
>>>>> seems fairly opaque, a reference there or explanatory text
>>>>> would be good. (Ah, it's in section 13, maybe shuffle the
>>>>> text or include a pointer.) Octet key pair doesn't seem like
>>>>> that good a name to me btw.
>>>>>=20
>>>>> - 12.5: The 1st para seems wrong. (Or at least is unclear to=20
>>>>> me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway,
>>>>> does it mean double encryption or two parallel ciphertexts?=20
>>>>> (I assume the former.) What's the algebraic thing you're
>>>>> trying to explain?  It'd be good to provide that for such
>>>>> relatively complex operations I think. Is this what you
>>>>> mean?
>>>>>=20
>>>>> KW(KDF(DH-shared),CEK)
>>>>>=20
>>>>> - Table 22: The EC2 or OKP value is fixed per curve and the
>>>>> cryptographic function being performed so seems unnecessary.=20
>>>>> Do you really need it so? Why? (I'm not buying that some
>>>>> future form of ECC might mean this is needed btw - and
>>>>> codepoints aren't expensive here, right? So other forms of
>>>>> ECC can burn codepoints when that's needed and in the=20
>>>>> meantime we'd save bytes and complexity.)
>>>>>=20
>>>>> - Section 15: Do we have any examples of such a profile?  I
>>>>> think it'd be great if we did and could add an informative
>>>>> reference here (even if that's to an early I- D).
>>>>>=20
>>>>> - section 19: I don't get how ECDSA is normative and the cfrg
>>>>> curves are not. Same for RFC6979. Maybe these all could do
>>>>> with checking? (No big deal IMO but maybe worth it.)
>>>>>=20
>>>>> - Appendices A.1 (as already noted) and A.2 are a puzzle. Why
>>>>> say in the body of the document to do <foo> and then an
>>>>> appendix that says how to do <not-foo>?
>>>>>=20
>>>>> - Appendix C and the implementation status section: Many
>>>>> thanks - great to see that! (I didn't check 'em though:-)
>>>>>=20
>>>>> - Thanks also for speedily handling the extensive secdir
>>>>> review.
>>>>>=20
>>>>> [2]
>>>>> https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html
>>>>> <https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html=
>
>


--NRQOnkHTEMJ4ePOhntCkljPRTmeTS7p3h--

--TVFXtQVeiowoUTsREEL02q9nPa2opDiWL
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBCAAGBQJYEMfkAAoJEC88hzaAX42iNcQH/2pP1pwjGDJkMQxlW0Ws6KBZ
1Jvm4gU8n+oGXKwnIv5BY7Ii1EN28E2JOZJVgELmpIywxYcmNXpJ88O2NSrHvrXp
KUfyY85lpsWBuBFs/NtJH1o+cpLaYVOXjzTY9gesq4WfTIYJjkXF3tZagisBcLX6
ZvH0M9SmK14s4WsQhgcCIeTJPJTqiZeeefPU5TQWe4iHwh/aaHbr0F7k5Q9srHvu
YQXFTDVl0+iHjj8tAF6UXlQypCd7l0RDZmITGWYR9xFah7yGMSLp1kX5yHqqDsuR
J7Vvu7me1a9zLEWg52K0J3KP2jqVDU3gcDnP0FvILGbX9QalXkWJp2S6adCrDhw=
=ZCXj
-----END PGP SIGNATURE-----

--TVFXtQVeiowoUTsREEL02q9nPa2opDiWL--


From nobody Wed Oct 26 13:12:22 2016
Return-Path: <kathleen.moriarty.ietf@gmail.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8B87A12999D; Wed, 26 Oct 2016 13:12:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level: 
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 M4xTyfE73ryN; Wed, 26 Oct 2016 13:12:18 -0700 (PDT)
Received: from mail-ua0-x234.google.com (mail-ua0-x234.google.com [IPv6:2607:f8b0:400c:c08::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F2C11129987; Wed, 26 Oct 2016 13:12:17 -0700 (PDT)
Received: by mail-ua0-x234.google.com with SMTP id 6so4203261uau.1; Wed, 26 Oct 2016 13:12:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;  h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=xlRIdA8/eHHXUx3x8+TQx1IN4IQ2hLnR4Tw0BIMWG9k=; b=BKcFmP24mjTQWIg5NaTxcFNDahfqSkWpXOPx/eV/JpRsBVe0B93xYkiBDbuVnewGRp 6Dm9mRme93ZChbpqTPfwMTjrB2jsO7qo9Wp8pG28/G7VZaCn9VsMp4r0ext/cJWRkpCU j6g03cDK14besILHBIN2sqcxYEjkVQ107Pd6LKfPGtsmqxcGhr+UHAOuX9+dlfBKSuTe 8Oirp2IUIKZN7Fp4ejr5e0ymHuwdB+5TSDF3DTxcHVIE5+lXlmOkhzYIeZSlHxmYHb8h DdwDlVpmlrmCOXYVMnb9uIb5uqriQZYNrnCDoSZSFp0uhRJ3fQdlnIN9w+oGxkVxu5gf AteQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=xlRIdA8/eHHXUx3x8+TQx1IN4IQ2hLnR4Tw0BIMWG9k=; b=f7RS5eMsCO1M8V7wtq7geYN6lKuIHi+KmH855HhyVGu7auPizYk0RpNPsrOtWZXGHd hL5iTGANSyMHhuBX88BKX6KQlX3bcKTl/W7mF9zdbH2Kg+52VmK6vAFxAg2TRfsaDpNU ZT+FF7CipEwj2bhbLJ6xdPgIr1mYCsPbytQWw+aFPGbo24Pe5tSPBKHpJef/2VT0uAsp VXcibPDfTq9Rlbjaqs3omSVvBuOTTxQkgFhJgy4um0TbVENr6Bi5RgoEESjZ02R4fZVZ m7sPiNHjgCVOzKUZcIjcRCyd1zoAWYcKaLbEYuK9d9GoIvC1Ge8MmmJAnPrKKXq4Zt4e KiOw==
X-Gm-Message-State: ABUngvfKn41uHzN2If2UeMttJhahXbdDN2bQ5jO71objf4Xi8+ao07OJ3fuNGBKsi3mvrx+EXwQG+9JyN8Htlg==
X-Received: by 10.176.4.196 with SMTP id 62mr2848311uaw.3.1477512736698; Wed, 26 Oct 2016 13:12:16 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.176.82.143 with HTTP; Wed, 26 Oct 2016 13:12:16 -0700 (PDT)
In-Reply-To: <94353594-ef7c-d909-605a-391ef2502c68@cs.tcd.ie>
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com> <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com> <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie> <822A08BC-5710-48E6-BCC7-AC86A554EFEC@mit.edu> <476D703F-727E-49D9-89C1-F6FD1092D55E@mit.edu> <94353594-ef7c-d909-605a-391ef2502c68@cs.tcd.ie>
From: Kathleen Moriarty <kathleen.moriarty.ietf@gmail.com>
Date: Wed, 26 Oct 2016 16:12:16 -0400
Message-ID: <CAHbuEH5GX5iWwjnHAtcKQnPhgxZrpY4EgBg0-6TeZckNJABtXw@mail.gmail.com>
To: Stephen Farrell <stephen.farrell@cs.tcd.ie>
Content-Type: multipart/alternative; boundary=94eb2c1255f0d27735053fca3d10
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/AovGqIkY5ZM7ypIDyMMeb5cn_9o>
Cc: Justin Richer <jricher@mit.edu>, Jim Schaad <ietf@augustcellars.com>, cose-chairs@ietf.org, The IESG <iesg@ietf.org>, draft-ietf-cose-msg@ietf.org, =?UTF-8?Q?G=C3=B6ran_Selander?= <goran.selander@ericsson.com>, "cose@ietf.org" <cose@ietf.org>
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Oct 2016 20:12:21 -0000

--94eb2c1255f0d27735053fca3d10
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Wed, Oct 26, 2016 at 11:12 AM, Stephen Farrell <stephen.farrell@cs.tcd.i=
e
> wrote:

>
> Hiya,
>
> On 26/10/16 16:06, Justin Richer wrote:
> > Hi Stephen,
> >
> > Sorry for the delay on answering #2 and #6 below. After researching
> > the list archives and issue tracker, neither Kepeng nor I can find
> > discussion on either issue. If there is such discussion in the
> > archives, we would appreciate the working group members pointing us
> > all to it.
> >
> > But as such, these both seem to be items that were added to the spec
> > by the editor without controversy or contention from the working
> > group. Therefore, it does appear to reflect consensus as there were
> > no objections raised. We both think that the items are OK as is, but
> > we=E2=80=99d like to give the working group a couple days to respond
> > otherwise if that=E2=80=99s not the case for anyone.
>
> Thanks for checking. If the WG don't say they'd like a change
> within a couple of days, I'll clear the discuss. (Please do
> ping me though, I may forget;-)
>
>
Don't worry, I won't.  COSE closes once this moves forward :-)

Thank you,
Kathleen


> Cheers,
> S.
>
>
> >
> > Thank you,
> >
> > =E2=80=94 Justin & Kepeng, as COSE chairs
> >
> >
> >> On Oct 19, 2016, at 8:59 AM, Justin Richer <jricher@MIT.EDU>
> >> wrote:
> >>
> >> Hi Stephen,
> >>
> >> The consensus of the working group after Yokohama was to make the
> >> CDDL non-normative and still use it as a description/example
> >> format.
> >>
> >> https://www.ietf.org/mail-archive/web/cose/current/msg00802.html
> >> <https://www.ietf.org/mail-archive/web/cose/current/msg00802.html>
> >>
> >> I believe the current draft reflects that state. Yes, CDDL syntax
> >> is peppered throughout the document as illustration, but it=E2=80=99s =
the
> >> English text that=E2=80=99s normative.
> >>
> >> One point that was discussed was that if the draft did not use
> >> CDDL, then another description language would likely need to be
> >> made up to make human-readable examples in the text. The group felt
> >> that it was better to use an existing (even if
> >> unfinished/unofficial) description format but remove the normative
> >> dependency.
> >>
> >> =E2=80=94 Justin, as chair.
> >>
> >>> On Oct 16, 2016, at 3:41 PM, Stephen Farrell
> >>> <stephen.farrell@cs.tcd.ie <mailto:stephen.farrell@cs.tcd.ie>>
> >>> wrote:
> >>>
> >>>
> >>> Hiya,
> >>>
> >>> Dear cose-chairs - there is stuff in this discuss for you to
> >>> deal with. (Just putting that there in case you're not delving
> >>> down into the body of the mails:-)
> >>>
> >>> On 16/10/16 22:50, Jim Schaad wrote:
> >>>> I think we dealt with all of the comments.  I cannot help you
> >>>> with getting chair response.
> >>>>
> >>>> See below for my one issue.
> >>>>
> >>>> Jim
> >>>>
> >>>>
> >>>>> -----Original Message----- From: Stephen Farrell
> >>>>> [mailto:stephen.farrell@cs.tcd.ie
> >>>>> <mailto:stephen.farrell@cs.tcd.ie>] Sent: Sunday, October 16,
> >>>>> 2016 1:57 PM To: The IESG <iesg@ietf.org
> >>>>> <mailto:iesg@ietf.org>> Cc: draft-ietf-cose-msg@ietf.org
> >>>>> <mailto:draft-ietf-cose-msg@ietf.org>; Goeran Selander
> >>>>> <goran.selander@ericsson.com
> >>>>> <mailto:goran.selander@ericsson.com>>; cose-chairs@ietf.org
> >>>>> <mailto:cose-chairs@ietf.org>; goran.selander@ericsson.com
> >>>>> <mailto:goran.selander@ericsson.com>; cose@ietf.org
> >>>>> <mailto:cose@ietf.org> Subject: Stephen Farrell's Discuss on
> >>>>> draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
> >>>>>
> >>>>> Stephen Farrell has entered the following ballot position
> >>>>> for draft-ietf-cose-msg-20: Discuss
> >>>>>
> >>>>> When responding, please keep the subject line intact and
> >>>>> reply to all email addresses included in the To and CC lines.
> >>>>> (Feel free to cut this introductory paragraph, however.)
> >>>>>
> >>>>>
> >>>>> Please refer to
> >>>>> https://www.ietf.org/iesg/statement/discuss-criteria.html
> >>>>> <https://www.ietf.org/iesg/statement/discuss-criteria.html>
> >>>>> for more information about IESG DISCUSS and COMMENT
> >>>>> positions.
> >>>>>
> >>>>>
> >>>>> The document, along with other ballot positions, can be found
> >>>>> here: https://datatracker.ietf.org/doc/draft-ietf-cose-msg/
> >>>>> <https://datatracker.ietf.org/doc/draft-ietf-cose-msg/>
> >>>>>
> >>>>>
> >>>>>
> >>>>> ------------------------------------------------------------
> ----------
> >>>>>
> >>>>>
> DISCUSS:
> >>>>> ------------------------------------------------------------
> ----------
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> Thanks for the updates in -20. I think we've only the following points
> left. Note
> >>>>> that 2 of those are questions to the WG chairs and not to
> >>>>> Jim.
> >>>>>
> >>>>> (1.1) table 2: As-is the value type column seems to me to
> >>>>> make CDDL normative. I don't see the natural language
> >>>>> version that you said would be normative.
> >>>>>
> >>>>> Can you help me see that the changes there are such that CDDL
> >>>>> is ok as informative? I'm not sure but as I read it there is
> >>>>> still no natural language statement that a "counter
> >>>>> signature" is one (or more) COSE_Signature values.
> >>>>
> >>>> In section 1.3 the following text was added:
> >>>>
> >>>> Two syntaxes from CDDL appear in this document as shorthand.
> >>>> These are:
> >>>>
> >>>> FOO / BAR - indicates that either FOO or BAR can appear here [+
> >>>> FOO] - indicates that the type FOO appears one or more times in
> >>>> an array
> >>>>
> >>>> The value from the table is:
> >>>>
> >>>> COSE_Signature / [+ COSE_Signature ]
> >>>>
> >>>> Section 4.1 contains the text:
> >>>>
> >>>> The CBOR object that carries the signature and information
> >>>> about the signature is called the COSE_Signature structure.
> >>>>
> >>>>> From that I think that all of the needed normative text is
> >>>>> present.
> >>>
> >>> Yeah, I get that. But then I think you've embedded some CDDL
> >>> notation at least as normative. (I mean the constructs you
> >>> describe with FOO/BAR above.)
> >>>
> >>> While I do start to feel pedantry-panic that I'm saying it, if
> >>> really treating CDDL as informative, I think you ought say in
> >>> text that one or more COSE_Signature fields need to be in a
> >>> counter signature.
> >>>
> >>> But I'm gonna clear that anyway as the whole CDDL is not
> >>> normative thing is really pretence IMO and there's no point in me
> >>> joining in with that further.
> >>>
> >>> That means that clearing this discuss is now solely down to the
> >>> chairs saying they're happy that Jim's positions do reflect wG
> >>> consensus.
> >>>
> >>> Cheers, S.
> >>>
> >>>
> >>>
> >>>
> >>>>
> >>>>>
> >>>>> (2) 3.1, alg: so you're disallowing a setup where the kid
> >>>>> alone identifies the key and algorithm to the recipient? That
> >>>>> is used in some IETF protocols (OSPF iirc) so rhat's a pity,
> >>>>> and will in those (maybe less common) cases consume a few
> >>>>> bytes that could otherwise be saved.  I think, but am not
> >>>>> sure, that the WG already discussed this, but if not, maybe
> >>>>> worth a thought? (Or even a 2nd thought:-) And appendix A.1
> >>>>> is really puzzling - as it provides instructions for how to
> >>>>> not follow a MUST in the body of the document.
> >>>>>
> >>>>> I think we left the mail thread on this with you saying "Best
> >>>>> to ask the chairs if they agree that this is WG consensus,"
> >>>>> as you're an admitteddly strong partisan on this topic.
> >>>>>
> >>>>> So, COSE chairs - what's your take? (If you say this is ok
> >>>>> with the WG, I'll clear.)
> >>>>>
> >>>>> (6) section 10: why MUST the kty values be present always?
> >>>>> That seems unnecessary in some contexts and I don't get a
> >>>>> security reason why it's needed e.g. if there's an alg id
> >>>>> somewhere - can you explain? I can see folks omitting this
> >>>>> leading to interop problems for not useful reasons. (Same
> >>>>> comment applies in other cases where kty is a MUST, e.g.
> >>>>> 12.1.2, 12.2.1.)
> >>>>>
> >>>>> I think this is the similar to discuss point (2) above.
> >>>>>
> >>>>> So again, COSE chairs, can you confirm that this design does
> >>>>> reflect WG consensus and isn't just a thorough and good
> >>>>> editor getting his way? (If you say this is ok with the WG,
> >>>>> I'll clear.)
> >>>>>
> >>>>>
> >>>>> ------------------------------------------------------------
> ----------
> >>>>>
> >>>>>
> COMMENT:
> >>>>> ------------------------------------------------------------
> ----------
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> OLD COMMENTS BELOW, I DIDN'T CHECK THEM. Happy to chat more about 'em
> >>>>> if that's useful.
> >>>>>
> >>>>> - 1.4: the 2nd last paragraph is unclear to me. Probably just
> >>>>> needs re-phrasing.
> >>>>>
> >>>>> - 1.5: I'd add a reference to RFC5116.
> >>>>>
> >>>>> - 3.1, crit: The statement that security libraries or
> >>>>> application code can handle this is odd - isn't that an API
> >>>>> requirement? (I'm not objecting, but it's odd.)
> >>>>>
> >>>>> - 3.1, "content type" is the space there intended?  If so,
> >>>>> maybe add quotes or a comma or something to disambiguate the
> >>>>> name and descriptive text? Same for other multi-word names
> >>>>> here.
> >>>>>
> >>>>> - 3.1, "all the keys may need to be checked" - really?  Or do
> >>>>> you mean all the keys associated with this kid?
> >>>>>
> >>>>> - 3.1, IV/Partial IV - I think it's an error to define this
> >>>>> here. What if some algorithm can't use that kind of
> >>>>> (0|partial)^IV but needs something else instead? Shouldn't
> >>>>> all mechanism for handling IVs be defined by the
> >>>>> algorithm/mode? (This isn't a discuss because I can't think
> >>>>> of a good counter example and there'd be other ways around
> >>>>> the problem too probably.)
> >>>>>
> >>>>> - 4.1: signingTime is often needed with signatures. Isn't
> >>>>> that common enough to want to define a way to do it, as an
> >>>>> option?
> >>>>>
> >>>>> - 4.1: If I sign with a private key corresponding to a 2047
> >>>>> or 2049 bit RSA public key modulus, then is it clear what to
> >>>>> put where in the signature bstr? (Yes, that'd be dumb, but I
> >>>>> wonder is what to do well enough defined, as I don't think
> >>>>> you can rule it out in all cases.) Since you don't include
> >>>>> RSA here I guess it's ok to skip this, but maybe you need to
> >>>>> say that such issues need to be handled in the definition of
> >>>>> signature algs.
> >>>>>
> >>>>> - 4.3: "cannot bleed" isn't clear enough maybe, give an
> >>>>> example perhaps where the decoder can fail to disambiguate a
> >>>>> boundary?
> >>>>>
> >>>>> 4.4, last para: I disagree that one must (even lowercase
> >>>>> must) check the signing identity.  That's application
> >>>>> behaviour and should be stated here in such concrete terms.
> >>>>> At least s/must also/may also want to/
> >>>>>
> >>>>> (Note - the above were comments on -18, but also seem to work
> >>>>> based on -19. Subsequent comments are on -19.)
> >>>>>
> >>>>> - 7.1: "starting at the same base IV" - are you missing "and
> >>>>> incrementing" or something? Otherwise I think this seems
> >>>>> unclear.
> >>>>>
> >>>>> - 8.2.1: is the phrasing of the 1st para right? would it be
> >>>>> better to say that the value of a key for EdDSA MUST NOT be
> >>>>> used for ECDH and vice-versa. (Or maybe points instead of
> >>>>> keys?)
> >>>>>
> >>>>> - 8.2.1: you need a reference for batch signing. (Or could it
> >>>>> be omitted?)
> >>>>>
> >>>>> - section 9: I think it'd be good to be clearer about the
> >>>>> strength of truncated MAC values. (And I can't recall the
> >>>>> right thing to say off the top of my head:-)
> >>>>>
> >>>>> - 11: RFC2898 is about to be obsoleted by [1]. I suspect it'd
> >>>>> be better to refer to the draft as that should be published
> >>>>> soon. (Same for RFC3447 btw.)
> >>>>>
> >>>>> [1]
> >>>>> https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/
> >>>>> <https://datatracker.ietf.org/doc/draft-moriarty-pkcs5-v2dot1/>
> >>>>>
> >>>>>
> >>>>>
> - 12.4: Why "OKP"? And saying there's no "simple way" to do point
> validation
> >>>>> seems fairly opaque, a reference there or explanatory text
> >>>>> would be good. (Ah, it's in section 13, maybe shuffle the
> >>>>> text or include a pointer.) Octet key pair doesn't seem like
> >>>>> that good a name to me btw.
> >>>>>
> >>>>> - 12.5: The 1st para seems wrong. (Or at least is unclear to
> >>>>> me.) "Encrypted with <foo> and <bar>" seems ambiguous anyway,
> >>>>> does it mean double encryption or two parallel ciphertexts?
> >>>>> (I assume the former.) What's the algebraic thing you're
> >>>>> trying to explain?  It'd be good to provide that for such
> >>>>> relatively complex operations I think. Is this what you
> >>>>> mean?
> >>>>>
> >>>>> KW(KDF(DH-shared),CEK)
> >>>>>
> >>>>> - Table 22: The EC2 or OKP value is fixed per curve and the
> >>>>> cryptographic function being performed so seems unnecessary.
> >>>>> Do you really need it so? Why? (I'm not buying that some
> >>>>> future form of ECC might mean this is needed btw - and
> >>>>> codepoints aren't expensive here, right? So other forms of
> >>>>> ECC can burn codepoints when that's needed and in the
> >>>>> meantime we'd save bytes and complexity.)
> >>>>>
> >>>>> - Section 15: Do we have any examples of such a profile?  I
> >>>>> think it'd be great if we did and could add an informative
> >>>>> reference here (even if that's to an early I- D).
> >>>>>
> >>>>> - section 19: I don't get how ECDSA is normative and the cfrg
> >>>>> curves are not. Same for RFC6979. Maybe these all could do
> >>>>> with checking? (No big deal IMO but maybe worth it.)
> >>>>>
> >>>>> - Appendices A.1 (as already noted) and A.2 are a puzzle. Why
> >>>>> say in the body of the document to do <foo> and then an
> >>>>> appendix that says how to do <not-foo>?
> >>>>>
> >>>>> - Appendix C and the implementation status section: Many
> >>>>> thanks - great to see that! (I didn't check 'em though:-)
> >>>>>
> >>>>> - Thanks also for speedily handling the extensive secdir
> >>>>> review.
> >>>>>
> >>>>> [2]
> >>>>> https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html
> >>>>> <https://www.ietf.org/mail-archive/web/secdir/current/msg06801.html=
>
> >
>
>


--=20

Best regards,
Kathleen

--94eb2c1255f0d27735053fca3d10
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Wed, Oct 26, 2016 at 11:12 AM, Stephen Farrell <span dir=3D"ltr">&lt=
;<a href=3D"mailto:stephen.farrell@cs.tcd.ie" target=3D"_blank">stephen.far=
rell@cs.tcd.ie</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hiya,<br>
<span class=3D""><br>
On 26/10/16 16:06, Justin Richer wrote:<br>
&gt; Hi Stephen,<br>
&gt;<br>
&gt; Sorry for the delay on answering #2 and #6 below. After researching<br=
>
&gt; the list archives and issue tracker, neither Kepeng nor I can find<br>
&gt; discussion on either issue. If there is such discussion in the<br>
&gt; archives, we would appreciate the working group members pointing us<br=
>
&gt; all to it.<br>
&gt;<br>
&gt; But as such, these both seem to be items that were added to the spec<b=
r>
&gt; by the editor without controversy or contention from the working<br>
&gt; group. Therefore, it does appear to reflect consensus as there were<br=
>
&gt; no objections raised. We both think that the items are OK as is, but<b=
r>
&gt; we=E2=80=99d like to give the working group a couple days to respond<b=
r>
&gt; otherwise if that=E2=80=99s not the case for anyone.<br>
<br>
</span>Thanks for checking. If the WG don&#39;t say they&#39;d like a chang=
e<br>
within a couple of days, I&#39;ll clear the discuss. (Please do<br>
ping me though, I may forget;-)<br>
<br></blockquote><div><br></div><div>Don&#39;t worry, I won&#39;t.=C2=A0 CO=
SE closes once this moves forward :-)</div><div><br></div><div>Thank you,</=
div><div>Kathleen</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Cheers,<br>
S.<br>
<span class=3D""><br>
<br>
&gt;<br>
&gt; Thank you,<br>
&gt;<br>
&gt; =E2=80=94 Justin &amp; Kepeng, as COSE chairs<br>
&gt;<br>
&gt;<br>
&gt;&gt; On Oct 19, 2016, at 8:59 AM, Justin Richer &lt;<a href=3D"mailto:j=
richer@MIT.EDU">jricher@MIT.EDU</a>&gt;<br>
&gt;&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hi Stephen,<br>
&gt;&gt;<br>
&gt;&gt; The consensus of the working group after Yokohama was to make the<=
br>
&gt;&gt; CDDL non-normative and still use it as a description/example<br>
&gt;&gt; format.<br>
&gt;&gt;<br>
&gt;&gt; <a href=3D"https://www.ietf.org/mail-archive/web/cose/current/msg0=
0802.html" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/mail-<=
wbr>archive/web/cose/current/<wbr>msg00802.html</a><br>
&gt;&gt; &lt;<a href=3D"https://www.ietf.org/mail-archive/web/cose/current/=
msg00802.html" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/ma=
il-<wbr>archive/web/cose/current/<wbr>msg00802.html</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; I believe the current draft reflects that state. Yes, CDDL syntax<=
br>
&gt;&gt; is peppered throughout the document as illustration, but it=E2=80=
=99s the<br>
&gt;&gt; English text that=E2=80=99s normative.<br>
&gt;&gt;<br>
&gt;&gt; One point that was discussed was that if the draft did not use<br>
&gt;&gt; CDDL, then another description language would likely need to be<br=
>
&gt;&gt; made up to make human-readable examples in the text. The group fel=
t<br>
&gt;&gt; that it was better to use an existing (even if<br>
&gt;&gt; unfinished/unofficial) description format but remove the normative=
<br>
&gt;&gt; dependency.<br>
&gt;&gt;<br>
&gt;&gt; =E2=80=94 Justin, as chair.<br>
&gt;&gt;<br>
&gt;&gt;&gt; On Oct 16, 2016, at 3:41 PM, Stephen Farrell<br>
</span>&gt;&gt;&gt; &lt;<a href=3D"mailto:stephen.farrell@cs.tcd.ie">stephe=
n.farrell@cs.tcd.ie</a> &lt;mailto:<a href=3D"mailto:stephen.farrell@cs.tcd=
.ie">stephen.farrell@cs.<wbr>tcd.ie</a>&gt;&gt;<br>
<span class=3D"">&gt;&gt;&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hiya,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Dear cose-chairs - there is stuff in this discuss for you to<b=
r>
&gt;&gt;&gt; deal with. (Just putting that there in case you&#39;re not del=
ving<br>
&gt;&gt;&gt; down into the body of the mails:-)<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On 16/10/16 22:50, Jim Schaad wrote:<br>
&gt;&gt;&gt;&gt; I think we dealt with all of the comments.=C2=A0 I cannot =
help you<br>
&gt;&gt;&gt;&gt; with getting chair response.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; See below for my one issue.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Jim<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; -----Original Message----- From: Stephen Farrell<br>
&gt;&gt;&gt;&gt;&gt; [mailto:<a href=3D"mailto:stephen.farrell@cs.tcd.ie">s=
tephen.farrell@cs.<wbr>tcd.ie</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;mailto:<a href=3D"mailto:stephen.farrell@cs.tcd.ie=
">stephen.farrell@cs.<wbr>tcd.ie</a>&gt;] Sent: Sunday, October 16,<br>
&gt;&gt;&gt;&gt;&gt; 2016 1:57 PM To: The IESG &lt;<a href=3D"mailto:iesg@i=
etf.org">iesg@ietf.org</a><br>
</span>&gt;&gt;&gt;&gt;&gt; &lt;mailto:<a href=3D"mailto:iesg@ietf.org">ies=
g@ietf.org</a>&gt;&gt; Cc: <a href=3D"mailto:draft-ietf-cose-msg@ietf.org">=
draft-ietf-cose-msg@ietf.org</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;mailto:<a href=3D"mailto:draft-ietf-cose-msg@ietf.=
org">draft-ietf-cose-msg@<wbr>ietf.org</a>&gt;; Goeran Selander<br>
&gt;&gt;&gt;&gt;&gt; &lt;<a href=3D"mailto:goran.selander@ericsson.com">gor=
an.selander@ericsson.com</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;mailto:<a href=3D"mailto:goran.selander@ericsson.c=
om">goran.selander@<wbr>ericsson.com</a>&gt;&gt;; <a href=3D"mailto:cose-ch=
airs@ietf.org">cose-chairs@ietf.org</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;mailto:<a href=3D"mailto:cose-chairs@ietf.org">cos=
e-chairs@ietf.org</a>&gt;; <a href=3D"mailto:goran.selander@ericsson.com">g=
oran.selander@ericsson.com</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;mailto:<a href=3D"mailto:goran.selander@ericsson.c=
om">goran.selander@<wbr>ericsson.com</a>&gt;; <a href=3D"mailto:cose@ietf.o=
rg">cose@ietf.org</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;mailto:<a href=3D"mailto:cose@ietf.org">cose@ietf.=
org</a>&gt; Subject: Stephen Farrell&#39;s Discuss on<br>
<div><div class=3D"h5">&gt;&gt;&gt;&gt;&gt; draft-ietf-cose-msg-20: (with D=
ISCUSS and COMMENT)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Stephen Farrell has entered the following ballot posit=
ion<br>
&gt;&gt;&gt;&gt;&gt; for draft-ietf-cose-msg-20: Discuss<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; When responding, please keep the subject line intact a=
nd<br>
&gt;&gt;&gt;&gt;&gt; reply to all email addresses included in the To and CC=
 lines.<br>
&gt;&gt;&gt;&gt;&gt; (Feel free to cut this introductory paragraph, however=
.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Please refer to<br>
&gt;&gt;&gt;&gt;&gt; <a href=3D"https://www.ietf.org/iesg/statement/discuss=
-criteria.html" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/i=
esg/<wbr>statement/discuss-criteria.<wbr>html</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;<a href=3D"https://www.ietf.org/iesg/statement/dis=
cuss-criteria.html" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.o=
rg/iesg/<wbr>statement/discuss-criteria.<wbr>html</a>&gt;<br>
&gt;&gt;&gt;&gt;&gt; for more information about IESG DISCUSS and COMMENT<br=
>
&gt;&gt;&gt;&gt;&gt; positions.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; The document, along with other ballot positions, can b=
e found<br>
&gt;&gt;&gt;&gt;&gt; here: <a href=3D"https://datatracker.ietf.org/doc/draf=
t-ietf-cose-msg/" rel=3D"noreferrer" target=3D"_blank">https://datatracker.=
ietf.org/<wbr>doc/draft-ietf-cose-msg/</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;<a href=3D"https://datatracker.ietf.org/doc/draft-=
ietf-cose-msg/" rel=3D"noreferrer" target=3D"_blank">https://datatracker.ie=
tf.org/<wbr>doc/draft-ietf-cose-msg/</a>&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; ------------------------------<wbr>-------------------=
-----------<wbr>----------<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
DISCUSS:<br>
&gt;&gt;&gt;&gt;&gt; ------------------------------<wbr>-------------------=
-----------<wbr>----------<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
Thanks for the updates in -20. I think we&#39;ve only the following points<=
br>
left. Note<br>
&gt;&gt;&gt;&gt;&gt; that 2 of those are questions to the WG chairs and not=
 to<br>
&gt;&gt;&gt;&gt;&gt; Jim.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; (1.1) table 2: As-is the value type column seems to me=
 to<br>
&gt;&gt;&gt;&gt;&gt; make CDDL normative. I don&#39;t see the natural langu=
age<br>
&gt;&gt;&gt;&gt;&gt; version that you said would be normative.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Can you help me see that the changes there are such th=
at CDDL<br>
&gt;&gt;&gt;&gt;&gt; is ok as informative? I&#39;m not sure but as I read i=
t there is<br>
&gt;&gt;&gt;&gt;&gt; still no natural language statement that a &quot;count=
er<br>
&gt;&gt;&gt;&gt;&gt; signature&quot; is one (or more) COSE_Signature values=
.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; In section 1.3 the following text was added:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Two syntaxes from CDDL appear in this document as shorthan=
d.<br>
&gt;&gt;&gt;&gt; These are:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; FOO / BAR - indicates that either FOO or BAR can appear he=
re [+<br>
&gt;&gt;&gt;&gt; FOO] - indicates that the type FOO appears one or more tim=
es in<br>
&gt;&gt;&gt;&gt; an array<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; The value from the table is:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; COSE_Signature / [+ COSE_Signature ]<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Section 4.1 contains the text:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; The CBOR object that carries the signature and information=
<br>
&gt;&gt;&gt;&gt; about the signature is called the COSE_Signature structure=
.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; From that I think that all of the needed normative tex=
t is<br>
&gt;&gt;&gt;&gt;&gt; present.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Yeah, I get that. But then I think you&#39;ve embedded some CD=
DL<br>
&gt;&gt;&gt; notation at least as normative. (I mean the constructs you<br>
&gt;&gt;&gt; describe with FOO/BAR above.)<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; While I do start to feel pedantry-panic that I&#39;m saying it=
, if<br>
&gt;&gt;&gt; really treating CDDL as informative, I think you ought say in<=
br>
&gt;&gt;&gt; text that one or more COSE_Signature fields need to be in a<br=
>
&gt;&gt;&gt; counter signature.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; But I&#39;m gonna clear that anyway as the whole CDDL is not<b=
r>
&gt;&gt;&gt; normative thing is really pretence IMO and there&#39;s no poin=
t in me<br>
&gt;&gt;&gt; joining in with that further.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; That means that clearing this discuss is now solely down to th=
e<br>
&gt;&gt;&gt; chairs saying they&#39;re happy that Jim&#39;s positions do re=
flect wG<br>
&gt;&gt;&gt; consensus.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Cheers, S.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; (2) 3.1, alg: so you&#39;re disallowing a setup where =
the kid<br>
&gt;&gt;&gt;&gt;&gt; alone identifies the key and algorithm to the recipien=
t? That<br>
&gt;&gt;&gt;&gt;&gt; is used in some IETF protocols (OSPF iirc) so rhat&#39=
;s a pity,<br>
&gt;&gt;&gt;&gt;&gt; and will in those (maybe less common) cases consume a =
few<br>
&gt;&gt;&gt;&gt;&gt; bytes that could otherwise be saved.=C2=A0 I think, bu=
t am not<br>
&gt;&gt;&gt;&gt;&gt; sure, that the WG already discussed this, but if not, =
maybe<br>
&gt;&gt;&gt;&gt;&gt; worth a thought? (Or even a 2nd thought:-) And appendi=
x A.1<br>
&gt;&gt;&gt;&gt;&gt; is really puzzling - as it provides instructions for h=
ow to<br>
&gt;&gt;&gt;&gt;&gt; not follow a MUST in the body of the document.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; I think we left the mail thread on this with you sayin=
g &quot;Best<br>
&gt;&gt;&gt;&gt;&gt; to ask the chairs if they agree that this is WG consen=
sus,&quot;<br>
&gt;&gt;&gt;&gt;&gt; as you&#39;re an admitteddly strong partisan on this t=
opic.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; So, COSE chairs - what&#39;s your take? (If you say th=
is is ok<br>
&gt;&gt;&gt;&gt;&gt; with the WG, I&#39;ll clear.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; (6) section 10: why MUST the kty values be present alw=
ays?<br>
&gt;&gt;&gt;&gt;&gt; That seems unnecessary in some contexts and I don&#39;=
t get a<br>
&gt;&gt;&gt;&gt;&gt; security reason why it&#39;s needed e.g. if there&#39;=
s an alg id<br>
&gt;&gt;&gt;&gt;&gt; somewhere - can you explain? I can see folks omitting =
this<br>
&gt;&gt;&gt;&gt;&gt; leading to interop problems for not useful reasons. (S=
ame<br>
&gt;&gt;&gt;&gt;&gt; comment applies in other cases where kty is a MUST, e.=
g.<br>
&gt;&gt;&gt;&gt;&gt; 12.1.2, 12.2.1.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; I think this is the similar to discuss point (2) above=
.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; So again, COSE chairs, can you confirm that this desig=
n does<br>
&gt;&gt;&gt;&gt;&gt; reflect WG consensus and isn&#39;t just a thorough and=
 good<br>
&gt;&gt;&gt;&gt;&gt; editor getting his way? (If you say this is ok with th=
e WG,<br>
&gt;&gt;&gt;&gt;&gt; I&#39;ll clear.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; ------------------------------<wbr>-------------------=
-----------<wbr>----------<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
COMMENT:<br>
&gt;&gt;&gt;&gt;&gt; ------------------------------<wbr>-------------------=
-----------<wbr>----------<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
OLD COMMENTS BELOW, I DIDN&#39;T CHECK THEM. Happy to chat more about &#39;=
em<br>
&gt;&gt;&gt;&gt;&gt; if that&#39;s useful.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 1.4: the 2nd last paragraph is unclear to me. Probab=
ly just<br>
&gt;&gt;&gt;&gt;&gt; needs re-phrasing.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 1.5: I&#39;d add a reference to RFC5116.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 3.1, crit: The statement that security libraries or<=
br>
&gt;&gt;&gt;&gt;&gt; application code can handle this is odd - isn&#39;t th=
at an API<br>
&gt;&gt;&gt;&gt;&gt; requirement? (I&#39;m not objecting, but it&#39;s odd.=
)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 3.1, &quot;content type&quot; is the space there int=
ended?=C2=A0 If so,<br>
&gt;&gt;&gt;&gt;&gt; maybe add quotes or a comma or something to disambigua=
te the<br>
&gt;&gt;&gt;&gt;&gt; name and descriptive text? Same for other multi-word n=
ames<br>
&gt;&gt;&gt;&gt;&gt; here.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 3.1, &quot;all the keys may need to be checked&quot;=
 - really?=C2=A0 Or do<br>
&gt;&gt;&gt;&gt;&gt; you mean all the keys associated with this kid?<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 3.1, IV/Partial IV - I think it&#39;s an error to de=
fine this<br>
&gt;&gt;&gt;&gt;&gt; here. What if some algorithm can&#39;t use that kind o=
f<br>
&gt;&gt;&gt;&gt;&gt; (0|partial)^IV but needs something else instead? Shoul=
dn&#39;t<br>
&gt;&gt;&gt;&gt;&gt; all mechanism for handling IVs be defined by the<br>
&gt;&gt;&gt;&gt;&gt; algorithm/mode? (This isn&#39;t a discuss because I ca=
n&#39;t think<br>
&gt;&gt;&gt;&gt;&gt; of a good counter example and there&#39;d be other way=
s around<br>
&gt;&gt;&gt;&gt;&gt; the problem too probably.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 4.1: signingTime is often needed with signatures. Is=
n&#39;t<br>
&gt;&gt;&gt;&gt;&gt; that common enough to want to define a way to do it, a=
s an<br>
&gt;&gt;&gt;&gt;&gt; option?<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 4.1: If I sign with a private key corresponding to a=
 2047<br>
&gt;&gt;&gt;&gt;&gt; or 2049 bit RSA public key modulus, then is it clear w=
hat to<br>
&gt;&gt;&gt;&gt;&gt; put where in the signature bstr? (Yes, that&#39;d be d=
umb, but I<br>
&gt;&gt;&gt;&gt;&gt; wonder is what to do well enough defined, as I don&#39=
;t think<br>
&gt;&gt;&gt;&gt;&gt; you can rule it out in all cases.) Since you don&#39;t=
 include<br>
&gt;&gt;&gt;&gt;&gt; RSA here I guess it&#39;s ok to skip this, but maybe y=
ou need to<br>
&gt;&gt;&gt;&gt;&gt; say that such issues need to be handled in the definit=
ion of<br>
&gt;&gt;&gt;&gt;&gt; signature algs.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 4.3: &quot;cannot bleed&quot; isn&#39;t clear enough=
 maybe, give an<br>
&gt;&gt;&gt;&gt;&gt; example perhaps where the decoder can fail to disambig=
uate a<br>
&gt;&gt;&gt;&gt;&gt; boundary?<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; 4.4, last para: I disagree that one must (even lowerca=
se<br>
&gt;&gt;&gt;&gt;&gt; must) check the signing identity.=C2=A0 That&#39;s app=
lication<br>
&gt;&gt;&gt;&gt;&gt; behaviour and should be stated here in such concrete t=
erms.<br>
&gt;&gt;&gt;&gt;&gt; At least s/must also/may also want to/<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; (Note - the above were comments on -18, but also seem =
to work<br>
&gt;&gt;&gt;&gt;&gt; based on -19. Subsequent comments are on -19.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 7.1: &quot;starting at the same base IV&quot; - are =
you missing &quot;and<br>
&gt;&gt;&gt;&gt;&gt; incrementing&quot; or something? Otherwise I think thi=
s seems<br>
&gt;&gt;&gt;&gt;&gt; unclear.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 8.2.1: is the phrasing of the 1st para right? would =
it be<br>
&gt;&gt;&gt;&gt;&gt; better to say that the value of a key for EdDSA MUST N=
OT be<br>
&gt;&gt;&gt;&gt;&gt; used for ECDH and vice-versa. (Or maybe points instead=
 of<br>
&gt;&gt;&gt;&gt;&gt; keys?)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 8.2.1: you need a reference for batch signing. (Or c=
ould it<br>
&gt;&gt;&gt;&gt;&gt; be omitted?)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - section 9: I think it&#39;d be good to be clearer ab=
out the<br>
&gt;&gt;&gt;&gt;&gt; strength of truncated MAC values. (And I can&#39;t rec=
all the<br>
&gt;&gt;&gt;&gt;&gt; right thing to say off the top of my head:-)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 11: RFC2898 is about to be obsoleted by [1]. I suspe=
ct it&#39;d<br>
&gt;&gt;&gt;&gt;&gt; be better to refer to the draft as that should be publ=
ished<br>
&gt;&gt;&gt;&gt;&gt; soon. (Same for RFC3447 btw.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; [1]<br>
&gt;&gt;&gt;&gt;&gt; <a href=3D"https://datatracker.ietf.org/doc/draft-mori=
arty-pkcs5-v2dot1/" rel=3D"noreferrer" target=3D"_blank">https://datatracke=
r.ietf.org/<wbr>doc/draft-moriarty-pkcs5-<wbr>v2dot1/</a><br>
&gt;&gt;&gt;&gt;&gt; &lt;<a href=3D"https://datatracker.ietf.org/doc/draft-=
moriarty-pkcs5-v2dot1/" rel=3D"noreferrer" target=3D"_blank">https://datatr=
acker.ietf.org/<wbr>doc/draft-moriarty-pkcs5-<wbr>v2dot1/</a>&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
- 12.4: Why &quot;OKP&quot;? And saying there&#39;s no &quot;simple way&quo=
t; to do point validation<br>
&gt;&gt;&gt;&gt;&gt; seems fairly opaque, a reference there or explanatory =
text<br>
&gt;&gt;&gt;&gt;&gt; would be good. (Ah, it&#39;s in section 13, maybe shuf=
fle the<br>
&gt;&gt;&gt;&gt;&gt; text or include a pointer.) Octet key pair doesn&#39;t=
 seem like<br>
&gt;&gt;&gt;&gt;&gt; that good a name to me btw.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - 12.5: The 1st para seems wrong. (Or at least is uncl=
ear to<br>
&gt;&gt;&gt;&gt;&gt; me.) &quot;Encrypted with &lt;foo&gt; and &lt;bar&gt;&=
quot; seems ambiguous anyway,<br>
&gt;&gt;&gt;&gt;&gt; does it mean double encryption or two parallel ciphert=
exts?<br>
&gt;&gt;&gt;&gt;&gt; (I assume the former.) What&#39;s the algebraic thing =
you&#39;re<br>
&gt;&gt;&gt;&gt;&gt; trying to explain?=C2=A0 It&#39;d be good to provide t=
hat for such<br>
&gt;&gt;&gt;&gt;&gt; relatively complex operations I think. Is this what yo=
u<br>
&gt;&gt;&gt;&gt;&gt; mean?<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; KW(KDF(DH-shared),CEK)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - Table 22: The EC2 or OKP value is fixed per curve an=
d the<br>
&gt;&gt;&gt;&gt;&gt; cryptographic function being performed so seems unnece=
ssary.<br>
&gt;&gt;&gt;&gt;&gt; Do you really need it so? Why? (I&#39;m not buying tha=
t some<br>
&gt;&gt;&gt;&gt;&gt; future form of ECC might mean this is needed btw - and=
<br>
&gt;&gt;&gt;&gt;&gt; codepoints aren&#39;t expensive here, right? So other =
forms of<br>
&gt;&gt;&gt;&gt;&gt; ECC can burn codepoints when that&#39;s needed and in =
the<br>
&gt;&gt;&gt;&gt;&gt; meantime we&#39;d save bytes and complexity.)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - Section 15: Do we have any examples of such a profil=
e?=C2=A0 I<br>
&gt;&gt;&gt;&gt;&gt; think it&#39;d be great if we did and could add an inf=
ormative<br>
&gt;&gt;&gt;&gt;&gt; reference here (even if that&#39;s to an early I- D).<=
br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - section 19: I don&#39;t get how ECDSA is normative a=
nd the cfrg<br>
&gt;&gt;&gt;&gt;&gt; curves are not. Same for RFC6979. Maybe these all coul=
d do<br>
&gt;&gt;&gt;&gt;&gt; with checking? (No big deal IMO but maybe worth it.)<b=
r>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - Appendices A.1 (as already noted) and A.2 are a puzz=
le. Why<br>
&gt;&gt;&gt;&gt;&gt; say in the body of the document to do &lt;foo&gt; and =
then an<br>
&gt;&gt;&gt;&gt;&gt; appendix that says how to do &lt;not-foo&gt;?<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - Appendix C and the implementation status section: Ma=
ny<br>
&gt;&gt;&gt;&gt;&gt; thanks - great to see that! (I didn&#39;t check &#39;e=
m though:-)<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; - Thanks also for speedily handling the extensive secd=
ir<br>
&gt;&gt;&gt;&gt;&gt; review.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; [2]<br>
&gt;&gt;&gt;&gt;&gt; <a href=3D"https://www.ietf.org/mail-archive/web/secdi=
r/current/msg06801.html" rel=3D"noreferrer" target=3D"_blank">https://www.i=
etf.org/mail-<wbr>archive/web/secdir/current/<wbr>msg06801.html</a><br>
</div></div>&gt;&gt;&gt;&gt;&gt; &lt;<a href=3D"https://www.ietf.org/mail-a=
rchive/web/secdir/current/msg06801.html" rel=3D"noreferrer" target=3D"_blan=
k">https://www.ietf.org/mail-<wbr>archive/web/secdir/current/<wbr>msg06801.=
html</a>&gt;<br>
&gt;<br>
<br>
</blockquote></div><br><br clear=3D"all"><div><br></div>-- <br><div class=
=3D"gmail_signature" data-smartmail=3D"gmail_signature"><div dir=3D"ltr"><b=
r><div>Best regards,</div><div>Kathleen</div></div></div>
</div></div>

--94eb2c1255f0d27735053fca3d10--


From nobody Wed Oct 26 21:37:23 2016
Return-Path: <goran.selander@ericsson.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D73EF129A03; Wed, 26 Oct 2016 21:37:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.221
X-Spam-Level: 
X-Spam-Status: No, score=-4.221 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-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 qCgJJMBf0Yac; Wed, 26 Oct 2016 21:37:14 -0700 (PDT)
Received: from sesbmg23.ericsson.net (sesbmg23.ericsson.net [193.180.251.37]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 37ACF129A18; Wed, 26 Oct 2016 21:37:13 -0700 (PDT)
X-AuditID: c1b4fb25-953ff70000001e3e-52-581184763523
Received: from ESESSHC017.ericsson.se (Unknown_Domain [153.88.183.69]) by  (Symantec Mail Security) with SMTP id E6.13.07742.67481185; Thu, 27 Oct 2016 06:37:11 +0200 (CEST)
Received: from ESESSMB303.ericsson.se ([169.254.3.133]) by ESESSHC017.ericsson.se ([153.88.183.69]) with mapi id 14.03.0319.002; Thu, 27 Oct 2016 06:37:10 +0200
From: =?utf-8?B?R8O2cmFuIFNlbGFuZGVy?= <goran.selander@ericsson.com>
To: Stephen Farrell <stephen.farrell@cs.tcd.ie>, Justin Richer <jricher@mit.edu>
Thread-Topic: Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
Thread-Index: AQHSJ/5+PpYzxQEGkUCV86lFjxObP6Cv0hiAgArxbwCAAAG5AIABAk0A
Date: Thu, 27 Oct 2016 04:37:09 +0000
Message-ID: <D436AB37.6B4EB%goran.selander@ericsson.com>
References: <147665141739.25813.4419576200342341528.idtracker@ietfa.amsl.com> <029401d227f7$5cdb7fa0$16927ee0$@augustcellars.com> <e9ca5f76-e0a1-2824-4ddc-b74c416c2f0f@cs.tcd.ie> <822A08BC-5710-48E6-BCC7-AC86A554EFEC@mit.edu> <476D703F-727E-49D9-89C1-F6FD1092D55E@mit.edu> <94353594-ef7c-d909-605a-391ef2502c68@cs.tcd.ie>
In-Reply-To: <94353594-ef7c-d909-605a-391ef2502c68@cs.tcd.ie>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/14.6.9.160926
x-originating-ip: [153.88.183.150]
Content-Type: text/plain; charset="utf-8"
Content-ID: <8DB47EAE24335841BC221344BC1DDC1F@ericsson.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrEIsWRmVeSWpSXmKPExsUyM2K7q255i2CEwb3lyhbvtu5jtJi2dSqr Re+j24wWM/5MZLZYPf07m8WGay9ZLabvvcbuwO6xcc50No+13VfZPJYs+cnk0XTmKHMASxSX TUpqTmZZapG+XQJXRtO+xUwFu5YzVtzr38HawDhlMWMXIyeHhICJRNvcb+xdjFwcQgLrGSVa p/1mg3CWMEr0Na1hBqliE3CReNDwiAnEFhEIktg2bToLSBGzwDVGict/5gIVcXAIC8RJvPqb BWKKCMRLrLpiB2G6SayfpAfSySKgKvH19z6wKbwCFhJL3v6CWnWaSWLlsk1sIAlOAVuJxt5t YDajgJjE91NrwBqYBcQlbj2ZzwRxtIDEkj3nmSFsUYmXj/+xguwSFdCTWHM/DCKsJLFi+yVG kDCzgKbE+l36EFOsJV61voCaqCgxpfshO8Q5ghInZz5hmcAoPgvJslkI3bOQdM9C0j0LSfcC RtZVjKLFqcVJuelGxnqpRZnJxcX5eXp5qSWbGIExe3DLb9UdjJffOB5iFOBgVOLhfbBNIEKI NbGsuDL3EKMEB7OSCO/KRsEIId6UxMqq1KL8+KLSnNTiQ4zSHCxK4rxmK++HCwmkJ5akZqem FqQWwWSZODilGhi5dVelCmlNTFA7sb8vpr21jY0vhGNmmVm9aemdH5/UV7syL++98VzuBvu5 j5N3pu84OrvKO4J//bIFNxp3T50hkR2+VWSdeUnE5mBzYfEfS9y/n+lIXZn4NOC7ZMx5f675 R+zE7vBK8bVPMNqQqV/jfpFz+zbmNVqaxT5v/6c/cHlf8yr5zWElluKMREMt5qLiRAC9rpH3 1QIAAA==
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/ec0nUYJ96-Ak1OuupVFLoPmh3sQ>
Cc: Jim Schaad <ietf@augustcellars.com>, "cose-chairs@ietf.org" <cose-chairs@ietf.org>, "cose@ietf.org" <cose@ietf.org>, The IESG <iesg@ietf.org>, "draft-ietf-cose-msg@ietf.org" <draft-ietf-cose-msg@ietf.org>
Subject: Re: [COSE] Stephen Farrell's Discuss on draft-ietf-cose-msg-20: (with DISCUSS and COMMENT)
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>, <mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>, <mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 27 Oct 2016 04:37:17 -0000

U3RlcGhlbiwgSnVzdGluLA0KDQpBYm91dCBpdGVtICgyKSAtIG1hbmRhdG9yeSBhbGcgaGVhZGVy
IC0gdGhpcyB3YXMgZGlzY3Vzc2VkIG9uIGRpZmZlcmVudA0Kb2NjYXNpb25zLiBTZXZlcmFsIHZv
aWNlcyB3ZXJlIGhlYXJkIGluIHN1cHBvcnQgb2YgYSBzZXR0aW5nIHdoZXJlIGEga2lkDQppZGVu
dGlmaWVzIGtleSBhbmQgYWxnb3JpdGhtLiBPbmUgdGhyZWFkIHN0YXJ0cyBoZXJlOg0KDQpodHRw
czovL3d3dy5pZXRmLm9yZy9tYWlsLWFyY2hpdmUvd2ViL2Nvc2UvY3VycmVudC9tc2cwMDU0NC5o
dG1sDQoNCkFwcGVuZGl4IEEgd2FzIHRoZSBwcm9wb3NlZCBzb2x1dGlvbiB0byByZXNvbHZlIHRo
ZSBjb25mbGljdCBvZiBtYW5kYXRvcnkNCmFsZyBoZWFkZXIsIGJ1dCB0aGUgY2FzZSB3aXRoIG9u
bHkga2lkIGlzIGRpc2NvdXJhZ2VkLCBib3RoIGluIGFwcGVuZGl4IEENCmFuZCBpbiB0aGUgc2Vj
dGlvbiBvbiBDT1NFX0VuY3J5cHQwDQpodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvZHJhZnQt
aWV0Zi1jb3NlLW1zZy0yMyNzZWN0aW9uLTUuMg0KDQpkcmFmdC1pZXRmLWNvcmUtb2JqZWN0LXNl
Y3VyaXR5LCB3aGljaCBpcyB0aGUgZmlyc3QgYW5kIGN1cnJlbnRseSBvbmx5DQphZG9wdGVkIGFw
cGxpY2F0aW9uIG9mIENPU0UsIHVzZXMgdGhlIENPU0VfRW5jcnlwdDAgc3RydWN0dXJlLCBkb2Vz
IG5vdA0KaGF2ZSB0aGUgYWxnIGhlYWRlciBhbmQgaGFzIGEga2lkIGhlYWRlciAo4oCcY29udGV4
dCBpZGVudGlmaWVy4oCdLA0KcmVjb21tZW5kZWQgdG8gYmUgNjQgYml0IHBzZXVkby1yYW5kb20p
Lg0KDQoNClNpbmNlIHlvdSBhc2s6IE9mIGNvdXJzZSB3ZSB3b3VsZCBwcmVmZXIgdG8gYXBwbHkg
YW4gZW5kb3JzZWQgdmVyc2lvbiBvZg0KQ09TRSBpbnN0ZWFkIG9mIG1ha2luZyBhbiBleGNlcHRp
b24gZnJvbSBhbiBleGNlcHRpb24uIEFwcGVuZGl4IEEgaW4gYQ0Kc2Vuc2Ugb3BlbnMgYSBkb29y
LiBXaGVuIHdoYXQgaXMgbWFuZGF0b3J5IGluIHRoZSBib2R5IGlzbuKAmXQgcmVhbGx5DQptYW5k
YXRvcnksIGl0IGlzIGEgc21hbGxlciBzdGVwIHRvIGRldmlhdGUgZnJvbSB0aGUgcmVjb21tZW5k
YXRpb25zLg0KDQpJIHRoaW5rIHRoZSBjb250ZW50aW91cyBwb2ludCB3YXMgdGhlIHBvdGVudGlh
bCBub24tdW5pcXVlbmVzcyBvZiBraWQuIElmDQpJIG1heSB3aXNoOiBJZiB3ZSBtYWludGFpbiBt
YW5kYXRvcnkgYWxnIGhlYWRlciwgdGhlbiBtYXliZSBzb21lIHRleHQNCmFib3V0IHdoZW4ga2lk
IGhlYWRlciBvbmx5IGNvdWxkIGJlIGFjY2VwdGFibGUsIGZvciBleGFtcGxlIHN1ZmZpY2llbnRs
eQ0KbGFyZ2UgcmFuZG9tIGtpZHMsIGlmIHdlIGFncmVlIG9uIHRoYXQ/DQoNCkfDtnJhbg0KDQoN
Ck9uIDIwMTYtMTAtMjYgMTc6MTIsICJTdGVwaGVuIEZhcnJlbGwiIDxzdGVwaGVuLmZhcnJlbGxA
Y3MudGNkLmllPiB3cm90ZToNCg0KPg0KPkhpeWEsDQo+DQo+T24gMjYvMTAvMTYgMTY6MDYsIEp1
c3RpbiBSaWNoZXIgd3JvdGU6DQo+PiBIaSBTdGVwaGVuLA0KPj4gDQo+PiBTb3JyeSBmb3IgdGhl
IGRlbGF5IG9uIGFuc3dlcmluZyAjMiBhbmQgIzYgYmVsb3cuIEFmdGVyIHJlc2VhcmNoaW5nDQo+
PiB0aGUgbGlzdCBhcmNoaXZlcyBhbmQgaXNzdWUgdHJhY2tlciwgbmVpdGhlciBLZXBlbmcgbm9y
IEkgY2FuIGZpbmQNCj4+IGRpc2N1c3Npb24gb24gZWl0aGVyIGlzc3VlLiBJZiB0aGVyZSBpcyBz
dWNoIGRpc2N1c3Npb24gaW4gdGhlDQo+PiBhcmNoaXZlcywgd2Ugd291bGQgYXBwcmVjaWF0ZSB0
aGUgd29ya2luZyBncm91cCBtZW1iZXJzIHBvaW50aW5nIHVzDQo+PiBhbGwgdG8gaXQuDQo+PiAN
Cj4+IEJ1dCBhcyBzdWNoLCB0aGVzZSBib3RoIHNlZW0gdG8gYmUgaXRlbXMgdGhhdCB3ZXJlIGFk
ZGVkIHRvIHRoZSBzcGVjDQo+PiBieSB0aGUgZWRpdG9yIHdpdGhvdXQgY29udHJvdmVyc3kgb3Ig
Y29udGVudGlvbiBmcm9tIHRoZSB3b3JraW5nDQo+PiBncm91cC4gVGhlcmVmb3JlLCBpdCBkb2Vz
IGFwcGVhciB0byByZWZsZWN0IGNvbnNlbnN1cyBhcyB0aGVyZSB3ZXJlDQo+PiBubyBvYmplY3Rp
b25zIHJhaXNlZC4gV2UgYm90aCB0aGluayB0aGF0IHRoZSBpdGVtcyBhcmUgT0sgYXMgaXMsIGJ1
dA0KPj4gd2XigJlkIGxpa2UgdG8gZ2l2ZSB0aGUgd29ya2luZyBncm91cCBhIGNvdXBsZSBkYXlz
IHRvIHJlc3BvbmQNCj4+IG90aGVyd2lzZSBpZiB0aGF04oCZcyBub3QgdGhlIGNhc2UgZm9yIGFu
eW9uZS4NCj4NCj5UaGFua3MgZm9yIGNoZWNraW5nLiBJZiB0aGUgV0cgZG9uJ3Qgc2F5IHRoZXkn
ZCBsaWtlIGEgY2hhbmdlDQo+d2l0aGluIGEgY291cGxlIG9mIGRheXMsIEknbGwgY2xlYXIgdGhl
IGRpc2N1c3MuIChQbGVhc2UgZG8NCj5waW5nIG1lIHRob3VnaCwgSSBtYXkgZm9yZ2V0Oy0pDQo+
DQo+Q2hlZXJzLA0KPlMuDQo+DQo+DQo+PiANCj4+IFRoYW5rIHlvdSwNCj4+IA0KPj4g4oCUIEp1
c3RpbiAmIEtlcGVuZywgYXMgQ09TRSBjaGFpcnMNCj4+IA0KPj4gDQo+Pj4gT24gT2N0IDE5LCAy
MDE2LCBhdCA4OjU5IEFNLCBKdXN0aW4gUmljaGVyIDxqcmljaGVyQE1JVC5FRFU+DQo+Pj4gd3Jv
dGU6DQo+Pj4gDQo+Pj4gSGkgU3RlcGhlbiwNCj4+PiANCj4+PiBUaGUgY29uc2Vuc3VzIG9mIHRo
ZSB3b3JraW5nIGdyb3VwIGFmdGVyIFlva29oYW1hIHdhcyB0byBtYWtlIHRoZQ0KPj4+IENEREwg
bm9uLW5vcm1hdGl2ZSBhbmQgc3RpbGwgdXNlIGl0IGFzIGEgZGVzY3JpcHRpb24vZXhhbXBsZQ0K
Pj4+IGZvcm1hdC4NCj4+PiANCj4+PiBodHRwczovL3d3dy5pZXRmLm9yZy9tYWlsLWFyY2hpdmUv
d2ViL2Nvc2UvY3VycmVudC9tc2cwMDgwMi5odG1sDQo+Pj4gPGh0dHBzOi8vd3d3LmlldGYub3Jn
L21haWwtYXJjaGl2ZS93ZWIvY29zZS9jdXJyZW50L21zZzAwODAyLmh0bWw+DQo+Pj4gDQo+Pj4g
SSBiZWxpZXZlIHRoZSBjdXJyZW50IGRyYWZ0IHJlZmxlY3RzIHRoYXQgc3RhdGUuIFllcywgQ0RE
TCBzeW50YXgNCj4+PiBpcyBwZXBwZXJlZCB0aHJvdWdob3V0IHRoZSBkb2N1bWVudCBhcyBpbGx1
c3RyYXRpb24sIGJ1dCBpdOKAmXMgdGhlDQo+Pj4gRW5nbGlzaCB0ZXh0IHRoYXTigJlzIG5vcm1h
dGl2ZS4NCj4+PiANCj4+PiBPbmUgcG9pbnQgdGhhdCB3YXMgZGlzY3Vzc2VkIHdhcyB0aGF0IGlm
IHRoZSBkcmFmdCBkaWQgbm90IHVzZQ0KPj4+IENEREwsIHRoZW4gYW5vdGhlciBkZXNjcmlwdGlv
biBsYW5ndWFnZSB3b3VsZCBsaWtlbHkgbmVlZCB0byBiZQ0KPj4+IG1hZGUgdXAgdG8gbWFrZSBo
dW1hbi1yZWFkYWJsZSBleGFtcGxlcyBpbiB0aGUgdGV4dC4gVGhlIGdyb3VwIGZlbHQNCj4+PiB0
aGF0IGl0IHdhcyBiZXR0ZXIgdG8gdXNlIGFuIGV4aXN0aW5nIChldmVuIGlmDQo+Pj4gdW5maW5p
c2hlZC91bm9mZmljaWFsKSBkZXNjcmlwdGlvbiBmb3JtYXQgYnV0IHJlbW92ZSB0aGUgbm9ybWF0
aXZlDQo+Pj4gZGVwZW5kZW5jeS4NCj4+PiANCj4+PiDigJQgSnVzdGluLCBhcyBjaGFpci4NCj4+
PiANCj4+Pj4gT24gT2N0IDE2LCAyMDE2LCBhdCAzOjQxIFBNLCBTdGVwaGVuIEZhcnJlbGwNCj4+
Pj4gPHN0ZXBoZW4uZmFycmVsbEBjcy50Y2QuaWUgPG1haWx0bzpzdGVwaGVuLmZhcnJlbGxAY3Mu
dGNkLmllPj4NCj4+Pj4gd3JvdGU6DQo+Pj4+IA0KPj4+PiANCj4+Pj4gSGl5YSwNCj4+Pj4gDQo+
Pj4+IERlYXIgY29zZS1jaGFpcnMgLSB0aGVyZSBpcyBzdHVmZiBpbiB0aGlzIGRpc2N1c3MgZm9y
IHlvdSB0bw0KPj4+PiBkZWFsIHdpdGguIChKdXN0IHB1dHRpbmcgdGhhdCB0aGVyZSBpbiBjYXNl
IHlvdSdyZSBub3QgZGVsdmluZw0KPj4+PiBkb3duIGludG8gdGhlIGJvZHkgb2YgdGhlIG1haWxz
Oi0pDQo+Pj4+IA0KPj4+PiBPbiAxNi8xMC8xNiAyMjo1MCwgSmltIFNjaGFhZCB3cm90ZToNCj4+
Pj4+IEkgdGhpbmsgd2UgZGVhbHQgd2l0aCBhbGwgb2YgdGhlIGNvbW1lbnRzLiAgSSBjYW5ub3Qg
aGVscCB5b3UNCj4+Pj4+IHdpdGggZ2V0dGluZyBjaGFpciByZXNwb25zZS4NCj4+Pj4+IA0KPj4+
Pj4gU2VlIGJlbG93IGZvciBteSBvbmUgaXNzdWUuDQo+Pj4+PiANCj4+Pj4+IEppbQ0KPj4+Pj4g
DQo+Pj4+PiANCj4+Pj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLSBGcm9tOiBTdGVwaGVu
IEZhcnJlbGwNCj4+Pj4+PiBbbWFpbHRvOnN0ZXBoZW4uZmFycmVsbEBjcy50Y2QuaWUNCj4+Pj4+
PiA8bWFpbHRvOnN0ZXBoZW4uZmFycmVsbEBjcy50Y2QuaWU+XSBTZW50OiBTdW5kYXksIE9jdG9i
ZXIgMTYsDQo+Pj4+Pj4gMjAxNiAxOjU3IFBNIFRvOiBUaGUgSUVTRyA8aWVzZ0BpZXRmLm9yZw0K
Pj4+Pj4+IDxtYWlsdG86aWVzZ0BpZXRmLm9yZz4+IENjOiBkcmFmdC1pZXRmLWNvc2UtbXNnQGll
dGYub3JnDQo+Pj4+Pj4gPG1haWx0bzpkcmFmdC1pZXRmLWNvc2UtbXNnQGlldGYub3JnPjsgR29l
cmFuIFNlbGFuZGVyDQo+Pj4+Pj4gPGdvcmFuLnNlbGFuZGVyQGVyaWNzc29uLmNvbQ0KPj4+Pj4+
IDxtYWlsdG86Z29yYW4uc2VsYW5kZXJAZXJpY3Nzb24uY29tPj47IGNvc2UtY2hhaXJzQGlldGYu
b3JnDQo+Pj4+Pj4gPG1haWx0bzpjb3NlLWNoYWlyc0BpZXRmLm9yZz47IGdvcmFuLnNlbGFuZGVy
QGVyaWNzc29uLmNvbQ0KPj4+Pj4+IDxtYWlsdG86Z29yYW4uc2VsYW5kZXJAZXJpY3Nzb24uY29t
PjsgY29zZUBpZXRmLm9yZw0KPj4+Pj4+IDxtYWlsdG86Y29zZUBpZXRmLm9yZz4gU3ViamVjdDog
U3RlcGhlbiBGYXJyZWxsJ3MgRGlzY3VzcyBvbg0KPj4+Pj4+IGRyYWZ0LWlldGYtY29zZS1tc2ct
MjA6ICh3aXRoIERJU0NVU1MgYW5kIENPTU1FTlQpDQo+Pj4+Pj4gDQo+Pj4+Pj4gU3RlcGhlbiBG
YXJyZWxsIGhhcyBlbnRlcmVkIHRoZSBmb2xsb3dpbmcgYmFsbG90IHBvc2l0aW9uDQo+Pj4+Pj4g
Zm9yIGRyYWZ0LWlldGYtY29zZS1tc2ctMjA6IERpc2N1c3MNCj4+Pj4+PiANCj4+Pj4+PiBXaGVu
IHJlc3BvbmRpbmcsIHBsZWFzZSBrZWVwIHRoZSBzdWJqZWN0IGxpbmUgaW50YWN0IGFuZA0KPj4+
Pj4+IHJlcGx5IHRvIGFsbCBlbWFpbCBhZGRyZXNzZXMgaW5jbHVkZWQgaW4gdGhlIFRvIGFuZCBD
QyBsaW5lcy4NCj4+Pj4+PiAoRmVlbCBmcmVlIHRvIGN1dCB0aGlzIGludHJvZHVjdG9yeSBwYXJh
Z3JhcGgsIGhvd2V2ZXIuKQ0KPj4+Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+IFBsZWFzZSByZWZlciB0
bw0KPj4+Pj4+IGh0dHBzOi8vd3d3LmlldGYub3JnL2llc2cvc3RhdGVtZW50L2Rpc2N1c3MtY3Jp
dGVyaWEuaHRtbA0KPj4+Pj4+IDxodHRwczovL3d3dy5pZXRmLm9yZy9pZXNnL3N0YXRlbWVudC9k
aXNjdXNzLWNyaXRlcmlhLmh0bWw+DQo+Pj4+Pj4gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQg
SUVTRyBESVNDVVNTIGFuZCBDT01NRU5UDQo+Pj4+Pj4gcG9zaXRpb25zLg0KPj4+Pj4+IA0KPj4+
Pj4+IA0KPj4+Pj4+IFRoZSBkb2N1bWVudCwgYWxvbmcgd2l0aCBvdGhlciBiYWxsb3QgcG9zaXRp
b25zLCBjYW4gYmUgZm91bmQNCj4+Pj4+PiBoZXJlOiBodHRwczovL2RhdGF0cmFja2VyLmlldGYu
b3JnL2RvYy9kcmFmdC1pZXRmLWNvc2UtbXNnLw0KPj4+Pj4+IDxodHRwczovL2RhdGF0cmFja2Vy
LmlldGYub3JnL2RvYy9kcmFmdC1pZXRmLWNvc2UtbXNnLz4NCj4+Pj4+PiANCj4+Pj4+PiANCj4+
Pj4+PiANCj4+Pj4+PiANCj4+Pj4+Pi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPj4+Pj4+LQ0KPj4+Pj4+DQo+Pj4+
Pj4gDQo+RElTQ1VTUzoNCj4+Pj4+PiANCj4+Pj4+Pi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPj4+Pj4+LQ0KPj4+
Pj4+DQo+Pj4+Pj4NCj4+Pj4+Pg0KPj4+Pj4+IA0KPlRoYW5rcyBmb3IgdGhlIHVwZGF0ZXMgaW4g
LTIwLiBJIHRoaW5rIHdlJ3ZlIG9ubHkgdGhlIGZvbGxvd2luZyBwb2ludHMNCj5sZWZ0LiBOb3Rl
DQo+Pj4+Pj4gdGhhdCAyIG9mIHRob3NlIGFyZSBxdWVzdGlvbnMgdG8gdGhlIFdHIGNoYWlycyBh
bmQgbm90IHRvDQo+Pj4+Pj4gSmltLg0KPj4+Pj4+IA0KPj4+Pj4+ICgxLjEpIHRhYmxlIDI6IEFz
LWlzIHRoZSB2YWx1ZSB0eXBlIGNvbHVtbiBzZWVtcyB0byBtZSB0bw0KPj4+Pj4+IG1ha2UgQ0RE
TCBub3JtYXRpdmUuIEkgZG9uJ3Qgc2VlIHRoZSBuYXR1cmFsIGxhbmd1YWdlDQo+Pj4+Pj4gdmVy
c2lvbiB0aGF0IHlvdSBzYWlkIHdvdWxkIGJlIG5vcm1hdGl2ZS4NCj4+Pj4+PiANCj4+Pj4+PiBD
YW4geW91IGhlbHAgbWUgc2VlIHRoYXQgdGhlIGNoYW5nZXMgdGhlcmUgYXJlIHN1Y2ggdGhhdCBD
RERMDQo+Pj4+Pj4gaXMgb2sgYXMgaW5mb3JtYXRpdmU/IEknbSBub3Qgc3VyZSBidXQgYXMgSSBy
ZWFkIGl0IHRoZXJlIGlzDQo+Pj4+Pj4gc3RpbGwgbm8gbmF0dXJhbCBsYW5ndWFnZSBzdGF0ZW1l
bnQgdGhhdCBhICJjb3VudGVyDQo+Pj4+Pj4gc2lnbmF0dXJlIiBpcyBvbmUgKG9yIG1vcmUpIENP
U0VfU2lnbmF0dXJlIHZhbHVlcy4NCj4+Pj4+IA0KPj4+Pj4gSW4gc2VjdGlvbiAxLjMgdGhlIGZv
bGxvd2luZyB0ZXh0IHdhcyBhZGRlZDoNCj4+Pj4+IA0KPj4+Pj4gVHdvIHN5bnRheGVzIGZyb20g
Q0RETCBhcHBlYXIgaW4gdGhpcyBkb2N1bWVudCBhcyBzaG9ydGhhbmQuDQo+Pj4+PiBUaGVzZSBh
cmU6DQo+Pj4+PiANCj4+Pj4+IEZPTyAvIEJBUiAtIGluZGljYXRlcyB0aGF0IGVpdGhlciBGT08g
b3IgQkFSIGNhbiBhcHBlYXIgaGVyZSBbKw0KPj4+Pj4gRk9PXSAtIGluZGljYXRlcyB0aGF0IHRo
ZSB0eXBlIEZPTyBhcHBlYXJzIG9uZSBvciBtb3JlIHRpbWVzIGluDQo+Pj4+PiBhbiBhcnJheQ0K
Pj4+Pj4gDQo+Pj4+PiBUaGUgdmFsdWUgZnJvbSB0aGUgdGFibGUgaXM6DQo+Pj4+PiANCj4+Pj4+
IENPU0VfU2lnbmF0dXJlIC8gWysgQ09TRV9TaWduYXR1cmUgXQ0KPj4+Pj4gDQo+Pj4+PiBTZWN0
aW9uIDQuMSBjb250YWlucyB0aGUgdGV4dDoNCj4+Pj4+IA0KPj4+Pj4gVGhlIENCT1Igb2JqZWN0
IHRoYXQgY2FycmllcyB0aGUgc2lnbmF0dXJlIGFuZCBpbmZvcm1hdGlvbg0KPj4+Pj4gYWJvdXQg
dGhlIHNpZ25hdHVyZSBpcyBjYWxsZWQgdGhlIENPU0VfU2lnbmF0dXJlIHN0cnVjdHVyZS4NCj4+
Pj4+IA0KPj4+Pj4+IEZyb20gdGhhdCBJIHRoaW5rIHRoYXQgYWxsIG9mIHRoZSBuZWVkZWQgbm9y
bWF0aXZlIHRleHQgaXMNCj4+Pj4+PiBwcmVzZW50Lg0KPj4+PiANCj4+Pj4gWWVhaCwgSSBnZXQg
dGhhdC4gQnV0IHRoZW4gSSB0aGluayB5b3UndmUgZW1iZWRkZWQgc29tZSBDRERMDQo+Pj4+IG5v
dGF0aW9uIGF0IGxlYXN0IGFzIG5vcm1hdGl2ZS4gKEkgbWVhbiB0aGUgY29uc3RydWN0cyB5b3UN
Cj4+Pj4gZGVzY3JpYmUgd2l0aCBGT08vQkFSIGFib3ZlLikNCj4+Pj4gDQo+Pj4+IFdoaWxlIEkg
ZG8gc3RhcnQgdG8gZmVlbCBwZWRhbnRyeS1wYW5pYyB0aGF0IEknbSBzYXlpbmcgaXQsIGlmDQo+
Pj4+IHJlYWxseSB0cmVhdGluZyBDRERMIGFzIGluZm9ybWF0aXZlLCBJIHRoaW5rIHlvdSBvdWdo
dCBzYXkgaW4NCj4+Pj4gdGV4dCB0aGF0IG9uZSBvciBtb3JlIENPU0VfU2lnbmF0dXJlIGZpZWxk
cyBuZWVkIHRvIGJlIGluIGENCj4+Pj4gY291bnRlciBzaWduYXR1cmUuDQo+Pj4+IA0KPj4+PiBC
dXQgSSdtIGdvbm5hIGNsZWFyIHRoYXQgYW55d2F5IGFzIHRoZSB3aG9sZSBDRERMIGlzIG5vdA0K
Pj4+PiBub3JtYXRpdmUgdGhpbmcgaXMgcmVhbGx5IHByZXRlbmNlIElNTyBhbmQgdGhlcmUncyBu
byBwb2ludCBpbiBtZQ0KPj4+PiBqb2luaW5nIGluIHdpdGggdGhhdCBmdXJ0aGVyLg0KPj4+PiAN
Cj4+Pj4gVGhhdCBtZWFucyB0aGF0IGNsZWFyaW5nIHRoaXMgZGlzY3VzcyBpcyBub3cgc29sZWx5
IGRvd24gdG8gdGhlDQo+Pj4+IGNoYWlycyBzYXlpbmcgdGhleSdyZSBoYXBweSB0aGF0IEppbSdz
IHBvc2l0aW9ucyBkbyByZWZsZWN0IHdHDQo+Pj4+IGNvbnNlbnN1cy4NCj4+Pj4gDQo+Pj4+IENo
ZWVycywgUy4NCj4+Pj4gDQo+Pj4+IA0KPj4+PiANCj4+Pj4gDQo+Pj4+PiANCj4+Pj4+PiANCj4+
Pj4+PiAoMikgMy4xLCBhbGc6IHNvIHlvdSdyZSBkaXNhbGxvd2luZyBhIHNldHVwIHdoZXJlIHRo
ZSBraWQNCj4+Pj4+PiBhbG9uZSBpZGVudGlmaWVzIHRoZSBrZXkgYW5kIGFsZ29yaXRobSB0byB0
aGUgcmVjaXBpZW50PyBUaGF0DQo+Pj4+Pj4gaXMgdXNlZCBpbiBzb21lIElFVEYgcHJvdG9jb2xz
IChPU1BGIGlpcmMpIHNvIHJoYXQncyBhIHBpdHksDQo+Pj4+Pj4gYW5kIHdpbGwgaW4gdGhvc2Ug
KG1heWJlIGxlc3MgY29tbW9uKSBjYXNlcyBjb25zdW1lIGEgZmV3DQo+Pj4+Pj4gYnl0ZXMgdGhh
dCBjb3VsZCBvdGhlcndpc2UgYmUgc2F2ZWQuICBJIHRoaW5rLCBidXQgYW0gbm90DQo+Pj4+Pj4g
c3VyZSwgdGhhdCB0aGUgV0cgYWxyZWFkeSBkaXNjdXNzZWQgdGhpcywgYnV0IGlmIG5vdCwgbWF5
YmUNCj4+Pj4+PiB3b3J0aCBhIHRob3VnaHQ/IChPciBldmVuIGEgMm5kIHRob3VnaHQ6LSkgQW5k
IGFwcGVuZGl4IEEuMQ0KPj4+Pj4+IGlzIHJlYWxseSBwdXp6bGluZyAtIGFzIGl0IHByb3ZpZGVz
IGluc3RydWN0aW9ucyBmb3IgaG93IHRvDQo+Pj4+Pj4gbm90IGZvbGxvdyBhIE1VU1QgaW4gdGhl
IGJvZHkgb2YgdGhlIGRvY3VtZW50Lg0KPj4+Pj4+IA0KPj4+Pj4+IEkgdGhpbmsgd2UgbGVmdCB0
aGUgbWFpbCB0aHJlYWQgb24gdGhpcyB3aXRoIHlvdSBzYXlpbmcgIkJlc3QNCj4+Pj4+PiB0byBh
c2sgdGhlIGNoYWlycyBpZiB0aGV5IGFncmVlIHRoYXQgdGhpcyBpcyBXRyBjb25zZW5zdXMsIg0K
Pj4+Pj4+IGFzIHlvdSdyZSBhbiBhZG1pdHRlZGRseSBzdHJvbmcgcGFydGlzYW4gb24gdGhpcyB0
b3BpYy4NCj4+Pj4+PiANCj4+Pj4+PiBTbywgQ09TRSBjaGFpcnMgLSB3aGF0J3MgeW91ciB0YWtl
PyAoSWYgeW91IHNheSB0aGlzIGlzIG9rDQo+Pj4+Pj4gd2l0aCB0aGUgV0csIEknbGwgY2xlYXIu
KQ0KPj4+Pj4+IA0KPj4+Pj4+ICg2KSBzZWN0aW9uIDEwOiB3aHkgTVVTVCB0aGUga3R5IHZhbHVl
cyBiZSBwcmVzZW50IGFsd2F5cz8NCj4+Pj4+PiBUaGF0IHNlZW1zIHVubmVjZXNzYXJ5IGluIHNv
bWUgY29udGV4dHMgYW5kIEkgZG9uJ3QgZ2V0IGENCj4+Pj4+PiBzZWN1cml0eSByZWFzb24gd2h5
IGl0J3MgbmVlZGVkIGUuZy4gaWYgdGhlcmUncyBhbiBhbGcgaWQNCj4+Pj4+PiBzb21ld2hlcmUg
LSBjYW4geW91IGV4cGxhaW4/IEkgY2FuIHNlZSBmb2xrcyBvbWl0dGluZyB0aGlzDQo+Pj4+Pj4g
bGVhZGluZyB0byBpbnRlcm9wIHByb2JsZW1zIGZvciBub3QgdXNlZnVsIHJlYXNvbnMuIChTYW1l
DQo+Pj4+Pj4gY29tbWVudCBhcHBsaWVzIGluIG90aGVyIGNhc2VzIHdoZXJlIGt0eSBpcyBhIE1V
U1QsIGUuZy4NCj4+Pj4+PiAxMi4xLjIsIDEyLjIuMS4pDQo+Pj4+Pj4gDQo+Pj4+Pj4gSSB0aGlu
ayB0aGlzIGlzIHRoZSBzaW1pbGFyIHRvIGRpc2N1c3MgcG9pbnQgKDIpIGFib3ZlLg0KPj4+Pj4+
IA0KPj4+Pj4+IFNvIGFnYWluLCBDT1NFIGNoYWlycywgY2FuIHlvdSBjb25maXJtIHRoYXQgdGhp
cyBkZXNpZ24gZG9lcw0KPj4+Pj4+IHJlZmxlY3QgV0cgY29uc2Vuc3VzIGFuZCBpc24ndCBqdXN0
IGEgdGhvcm91Z2ggYW5kIGdvb2QNCj4+Pj4+PiBlZGl0b3IgZ2V0dGluZyBoaXMgd2F5PyAoSWYg
eW91IHNheSB0aGlzIGlzIG9rIHdpdGggdGhlIFdHLA0KPj4+Pj4+IEknbGwgY2xlYXIuKQ0KPj4+
Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+Pj4+Pj4tDQo+Pj4+
Pj4NCj4+Pj4+PiANCj5DT01NRU5UOg0KPj4+Pj4+IA0KPj4+Pj4+LS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+Pj4+
Pj4tDQo+Pj4+Pj4NCj4+Pj4+Pg0KPj4+Pj4+DQo+Pj4+Pj4gDQo+T0xEIENPTU1FTlRTIEJFTE9X
LCBJIERJRE4nVCBDSEVDSyBUSEVNLiBIYXBweSB0byBjaGF0IG1vcmUgYWJvdXQgJ2VtDQo+Pj4+
Pj4gaWYgdGhhdCdzIHVzZWZ1bC4NCj4+Pj4+PiANCj4+Pj4+PiAtIDEuNDogdGhlIDJuZCBsYXN0
IHBhcmFncmFwaCBpcyB1bmNsZWFyIHRvIG1lLiBQcm9iYWJseSBqdXN0DQo+Pj4+Pj4gbmVlZHMg
cmUtcGhyYXNpbmcuDQo+Pj4+Pj4gDQo+Pj4+Pj4gLSAxLjU6IEknZCBhZGQgYSByZWZlcmVuY2Ug
dG8gUkZDNTExNi4NCj4+Pj4+PiANCj4+Pj4+PiAtIDMuMSwgY3JpdDogVGhlIHN0YXRlbWVudCB0
aGF0IHNlY3VyaXR5IGxpYnJhcmllcyBvcg0KPj4+Pj4+IGFwcGxpY2F0aW9uIGNvZGUgY2FuIGhh
bmRsZSB0aGlzIGlzIG9kZCAtIGlzbid0IHRoYXQgYW4gQVBJDQo+Pj4+Pj4gcmVxdWlyZW1lbnQ/
IChJJ20gbm90IG9iamVjdGluZywgYnV0IGl0J3Mgb2RkLikNCj4+Pj4+PiANCj4+Pj4+PiAtIDMu
MSwgImNvbnRlbnQgdHlwZSIgaXMgdGhlIHNwYWNlIHRoZXJlIGludGVuZGVkPyAgSWYgc28sDQo+
Pj4+Pj4gbWF5YmUgYWRkIHF1b3RlcyBvciBhIGNvbW1hIG9yIHNvbWV0aGluZyB0byBkaXNhbWJp
Z3VhdGUgdGhlDQo+Pj4+Pj4gbmFtZSBhbmQgZGVzY3JpcHRpdmUgdGV4dD8gU2FtZSBmb3Igb3Ro
ZXIgbXVsdGktd29yZCBuYW1lcw0KPj4+Pj4+IGhlcmUuDQo+Pj4+Pj4gDQo+Pj4+Pj4gLSAzLjEs
ICJhbGwgdGhlIGtleXMgbWF5IG5lZWQgdG8gYmUgY2hlY2tlZCIgLSByZWFsbHk/ICBPciBkbw0K
Pj4+Pj4+IHlvdSBtZWFuIGFsbCB0aGUga2V5cyBhc3NvY2lhdGVkIHdpdGggdGhpcyBraWQ/DQo+
Pj4+Pj4gDQo+Pj4+Pj4gLSAzLjEsIElWL1BhcnRpYWwgSVYgLSBJIHRoaW5rIGl0J3MgYW4gZXJy
b3IgdG8gZGVmaW5lIHRoaXMNCj4+Pj4+PiBoZXJlLiBXaGF0IGlmIHNvbWUgYWxnb3JpdGhtIGNh
bid0IHVzZSB0aGF0IGtpbmQgb2YNCj4+Pj4+PiAoMHxwYXJ0aWFsKV5JViBidXQgbmVlZHMgc29t
ZXRoaW5nIGVsc2UgaW5zdGVhZD8gU2hvdWxkbid0DQo+Pj4+Pj4gYWxsIG1lY2hhbmlzbSBmb3Ig
aGFuZGxpbmcgSVZzIGJlIGRlZmluZWQgYnkgdGhlDQo+Pj4+Pj4gYWxnb3JpdGhtL21vZGU/IChU
aGlzIGlzbid0IGEgZGlzY3VzcyBiZWNhdXNlIEkgY2FuJ3QgdGhpbmsNCj4+Pj4+PiBvZiBhIGdv
b2QgY291bnRlciBleGFtcGxlIGFuZCB0aGVyZSdkIGJlIG90aGVyIHdheXMgYXJvdW5kDQo+Pj4+
Pj4gdGhlIHByb2JsZW0gdG9vIHByb2JhYmx5LikNCj4+Pj4+PiANCj4+Pj4+PiAtIDQuMTogc2ln
bmluZ1RpbWUgaXMgb2Z0ZW4gbmVlZGVkIHdpdGggc2lnbmF0dXJlcy4gSXNuJ3QNCj4+Pj4+PiB0
aGF0IGNvbW1vbiBlbm91Z2ggdG8gd2FudCB0byBkZWZpbmUgYSB3YXkgdG8gZG8gaXQsIGFzIGFu
DQo+Pj4+Pj4gb3B0aW9uPw0KPj4+Pj4+IA0KPj4+Pj4+IC0gNC4xOiBJZiBJIHNpZ24gd2l0aCBh
IHByaXZhdGUga2V5IGNvcnJlc3BvbmRpbmcgdG8gYSAyMDQ3DQo+Pj4+Pj4gb3IgMjA0OSBiaXQg
UlNBIHB1YmxpYyBrZXkgbW9kdWx1cywgdGhlbiBpcyBpdCBjbGVhciB3aGF0IHRvDQo+Pj4+Pj4g
cHV0IHdoZXJlIGluIHRoZSBzaWduYXR1cmUgYnN0cj8gKFllcywgdGhhdCdkIGJlIGR1bWIsIGJ1
dCBJDQo+Pj4+Pj4gd29uZGVyIGlzIHdoYXQgdG8gZG8gd2VsbCBlbm91Z2ggZGVmaW5lZCwgYXMg
SSBkb24ndCB0aGluaw0KPj4+Pj4+IHlvdSBjYW4gcnVsZSBpdCBvdXQgaW4gYWxsIGNhc2VzLikg
U2luY2UgeW91IGRvbid0IGluY2x1ZGUNCj4+Pj4+PiBSU0EgaGVyZSBJIGd1ZXNzIGl0J3Mgb2sg
dG8gc2tpcCB0aGlzLCBidXQgbWF5YmUgeW91IG5lZWQgdG8NCj4+Pj4+PiBzYXkgdGhhdCBzdWNo
IGlzc3VlcyBuZWVkIHRvIGJlIGhhbmRsZWQgaW4gdGhlIGRlZmluaXRpb24gb2YNCj4+Pj4+PiBz
aWduYXR1cmUgYWxncy4NCj4+Pj4+PiANCj4+Pj4+PiAtIDQuMzogImNhbm5vdCBibGVlZCIgaXNu
J3QgY2xlYXIgZW5vdWdoIG1heWJlLCBnaXZlIGFuDQo+Pj4+Pj4gZXhhbXBsZSBwZXJoYXBzIHdo
ZXJlIHRoZSBkZWNvZGVyIGNhbiBmYWlsIHRvIGRpc2FtYmlndWF0ZSBhDQo+Pj4+Pj4gYm91bmRh
cnk/DQo+Pj4+Pj4gDQo+Pj4+Pj4gNC40LCBsYXN0IHBhcmE6IEkgZGlzYWdyZWUgdGhhdCBvbmUg
bXVzdCAoZXZlbiBsb3dlcmNhc2UNCj4+Pj4+PiBtdXN0KSBjaGVjayB0aGUgc2lnbmluZyBpZGVu
dGl0eS4gIFRoYXQncyBhcHBsaWNhdGlvbg0KPj4+Pj4+IGJlaGF2aW91ciBhbmQgc2hvdWxkIGJl
IHN0YXRlZCBoZXJlIGluIHN1Y2ggY29uY3JldGUgdGVybXMuDQo+Pj4+Pj4gQXQgbGVhc3Qgcy9t
dXN0IGFsc28vbWF5IGFsc28gd2FudCB0by8NCj4+Pj4+PiANCj4+Pj4+PiAoTm90ZSAtIHRoZSBh
Ym92ZSB3ZXJlIGNvbW1lbnRzIG9uIC0xOCwgYnV0IGFsc28gc2VlbSB0byB3b3JrDQo+Pj4+Pj4g
YmFzZWQgb24gLTE5LiBTdWJzZXF1ZW50IGNvbW1lbnRzIGFyZSBvbiAtMTkuKQ0KPj4+Pj4+IA0K
Pj4+Pj4+IC0gNy4xOiAic3RhcnRpbmcgYXQgdGhlIHNhbWUgYmFzZSBJViIgLSBhcmUgeW91IG1p
c3NpbmcgImFuZA0KPj4+Pj4+IGluY3JlbWVudGluZyIgb3Igc29tZXRoaW5nPyBPdGhlcndpc2Ug
SSB0aGluayB0aGlzIHNlZW1zDQo+Pj4+Pj4gdW5jbGVhci4NCj4+Pj4+PiANCj4+Pj4+PiAtIDgu
Mi4xOiBpcyB0aGUgcGhyYXNpbmcgb2YgdGhlIDFzdCBwYXJhIHJpZ2h0PyB3b3VsZCBpdCBiZQ0K
Pj4+Pj4+IGJldHRlciB0byBzYXkgdGhhdCB0aGUgdmFsdWUgb2YgYSBrZXkgZm9yIEVkRFNBIE1V
U1QgTk9UIGJlDQo+Pj4+Pj4gdXNlZCBmb3IgRUNESCBhbmQgdmljZS12ZXJzYS4gKE9yIG1heWJl
IHBvaW50cyBpbnN0ZWFkIG9mDQo+Pj4+Pj4ga2V5cz8pDQo+Pj4+Pj4gDQo+Pj4+Pj4gLSA4LjIu
MTogeW91IG5lZWQgYSByZWZlcmVuY2UgZm9yIGJhdGNoIHNpZ25pbmcuIChPciBjb3VsZCBpdA0K
Pj4+Pj4+IGJlIG9taXR0ZWQ/KQ0KPj4+Pj4+IA0KPj4+Pj4+IC0gc2VjdGlvbiA5OiBJIHRoaW5r
IGl0J2QgYmUgZ29vZCB0byBiZSBjbGVhcmVyIGFib3V0IHRoZQ0KPj4+Pj4+IHN0cmVuZ3RoIG9m
IHRydW5jYXRlZCBNQUMgdmFsdWVzLiAoQW5kIEkgY2FuJ3QgcmVjYWxsIHRoZQ0KPj4+Pj4+IHJp
Z2h0IHRoaW5nIHRvIHNheSBvZmYgdGhlIHRvcCBvZiBteSBoZWFkOi0pDQo+Pj4+Pj4gDQo+Pj4+
Pj4gLSAxMTogUkZDMjg5OCBpcyBhYm91dCB0byBiZSBvYnNvbGV0ZWQgYnkgWzFdLiBJIHN1c3Bl
Y3QgaXQnZA0KPj4+Pj4+IGJlIGJldHRlciB0byByZWZlciB0byB0aGUgZHJhZnQgYXMgdGhhdCBz
aG91bGQgYmUgcHVibGlzaGVkDQo+Pj4+Pj4gc29vbi4gKFNhbWUgZm9yIFJGQzM0NDcgYnR3LikN
Cj4+Pj4+PiANCj4+Pj4+PiBbMV0NCj4+Pj4+PiBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3Jn
L2RvYy9kcmFmdC1tb3JpYXJ0eS1wa2NzNS12MmRvdDEvDQo+Pj4+Pj4gPGh0dHBzOi8vZGF0YXRy
YWNrZXIuaWV0Zi5vcmcvZG9jL2RyYWZ0LW1vcmlhcnR5LXBrY3M1LXYyZG90MS8+DQo+Pj4+Pj4N
Cj4+Pj4+Pg0KPj4+Pj4+IA0KPi0gMTIuNDogV2h5ICJPS1AiPyBBbmQgc2F5aW5nIHRoZXJlJ3Mg
bm8gInNpbXBsZSB3YXkiIHRvIGRvIHBvaW50DQo+dmFsaWRhdGlvbg0KPj4+Pj4+IHNlZW1zIGZh
aXJseSBvcGFxdWUsIGEgcmVmZXJlbmNlIHRoZXJlIG9yIGV4cGxhbmF0b3J5IHRleHQNCj4+Pj4+
PiB3b3VsZCBiZSBnb29kLiAoQWgsIGl0J3MgaW4gc2VjdGlvbiAxMywgbWF5YmUgc2h1ZmZsZSB0
aGUNCj4+Pj4+PiB0ZXh0IG9yIGluY2x1ZGUgYSBwb2ludGVyLikgT2N0ZXQga2V5IHBhaXIgZG9l
c24ndCBzZWVtIGxpa2UNCj4+Pj4+PiB0aGF0IGdvb2QgYSBuYW1lIHRvIG1lIGJ0dy4NCj4+Pj4+
PiANCj4+Pj4+PiAtIDEyLjU6IFRoZSAxc3QgcGFyYSBzZWVtcyB3cm9uZy4gKE9yIGF0IGxlYXN0
IGlzIHVuY2xlYXIgdG8NCj4+Pj4+PiBtZS4pICJFbmNyeXB0ZWQgd2l0aCA8Zm9vPiBhbmQgPGJh
cj4iIHNlZW1zIGFtYmlndW91cyBhbnl3YXksDQo+Pj4+Pj4gZG9lcyBpdCBtZWFuIGRvdWJsZSBl
bmNyeXB0aW9uIG9yIHR3byBwYXJhbGxlbCBjaXBoZXJ0ZXh0cz8NCj4+Pj4+PiAoSSBhc3N1bWUg
dGhlIGZvcm1lci4pIFdoYXQncyB0aGUgYWxnZWJyYWljIHRoaW5nIHlvdSdyZQ0KPj4+Pj4+IHRy
eWluZyB0byBleHBsYWluPyAgSXQnZCBiZSBnb29kIHRvIHByb3ZpZGUgdGhhdCBmb3Igc3VjaA0K
Pj4+Pj4+IHJlbGF0aXZlbHkgY29tcGxleCBvcGVyYXRpb25zIEkgdGhpbmsuIElzIHRoaXMgd2hh
dCB5b3UNCj4+Pj4+PiBtZWFuPw0KPj4+Pj4+IA0KPj4+Pj4+IEtXKEtERihESC1zaGFyZWQpLENF
SykNCj4+Pj4+PiANCj4+Pj4+PiAtIFRhYmxlIDIyOiBUaGUgRUMyIG9yIE9LUCB2YWx1ZSBpcyBm
aXhlZCBwZXIgY3VydmUgYW5kIHRoZQ0KPj4+Pj4+IGNyeXB0b2dyYXBoaWMgZnVuY3Rpb24gYmVp
bmcgcGVyZm9ybWVkIHNvIHNlZW1zIHVubmVjZXNzYXJ5Lg0KPj4+Pj4+IERvIHlvdSByZWFsbHkg
bmVlZCBpdCBzbz8gV2h5PyAoSSdtIG5vdCBidXlpbmcgdGhhdCBzb21lDQo+Pj4+Pj4gZnV0dXJl
IGZvcm0gb2YgRUNDIG1pZ2h0IG1lYW4gdGhpcyBpcyBuZWVkZWQgYnR3IC0gYW5kDQo+Pj4+Pj4g
Y29kZXBvaW50cyBhcmVuJ3QgZXhwZW5zaXZlIGhlcmUsIHJpZ2h0PyBTbyBvdGhlciBmb3JtcyBv
Zg0KPj4+Pj4+IEVDQyBjYW4gYnVybiBjb2RlcG9pbnRzIHdoZW4gdGhhdCdzIG5lZWRlZCBhbmQg
aW4gdGhlDQo+Pj4+Pj4gbWVhbnRpbWUgd2UnZCBzYXZlIGJ5dGVzIGFuZCBjb21wbGV4aXR5LikN
Cj4+Pj4+PiANCj4+Pj4+PiAtIFNlY3Rpb24gMTU6IERvIHdlIGhhdmUgYW55IGV4YW1wbGVzIG9m
IHN1Y2ggYSBwcm9maWxlPyAgSQ0KPj4+Pj4+IHRoaW5rIGl0J2QgYmUgZ3JlYXQgaWYgd2UgZGlk
IGFuZCBjb3VsZCBhZGQgYW4gaW5mb3JtYXRpdmUNCj4+Pj4+PiByZWZlcmVuY2UgaGVyZSAoZXZl
biBpZiB0aGF0J3MgdG8gYW4gZWFybHkgSS0gRCkuDQo+Pj4+Pj4gDQo+Pj4+Pj4gLSBzZWN0aW9u
IDE5OiBJIGRvbid0IGdldCBob3cgRUNEU0EgaXMgbm9ybWF0aXZlIGFuZCB0aGUgY2ZyZw0KPj4+
Pj4+IGN1cnZlcyBhcmUgbm90LiBTYW1lIGZvciBSRkM2OTc5LiBNYXliZSB0aGVzZSBhbGwgY291
bGQgZG8NCj4+Pj4+PiB3aXRoIGNoZWNraW5nPyAoTm8gYmlnIGRlYWwgSU1PIGJ1dCBtYXliZSB3
b3J0aCBpdC4pDQo+Pj4+Pj4gDQo+Pj4+Pj4gLSBBcHBlbmRpY2VzIEEuMSAoYXMgYWxyZWFkeSBu
b3RlZCkgYW5kIEEuMiBhcmUgYSBwdXp6bGUuIFdoeQ0KPj4+Pj4+IHNheSBpbiB0aGUgYm9keSBv
ZiB0aGUgZG9jdW1lbnQgdG8gZG8gPGZvbz4gYW5kIHRoZW4gYW4NCj4+Pj4+PiBhcHBlbmRpeCB0
aGF0IHNheXMgaG93IHRvIGRvIDxub3QtZm9vPj8NCj4+Pj4+PiANCj4+Pj4+PiAtIEFwcGVuZGl4
IEMgYW5kIHRoZSBpbXBsZW1lbnRhdGlvbiBzdGF0dXMgc2VjdGlvbjogTWFueQ0KPj4+Pj4+IHRo
YW5rcyAtIGdyZWF0IHRvIHNlZSB0aGF0ISAoSSBkaWRuJ3QgY2hlY2sgJ2VtIHRob3VnaDotKQ0K
Pj4+Pj4+IA0KPj4+Pj4+IC0gVGhhbmtzIGFsc28gZm9yIHNwZWVkaWx5IGhhbmRsaW5nIHRoZSBl
eHRlbnNpdmUgc2VjZGlyDQo+Pj4+Pj4gcmV2aWV3Lg0KPj4+Pj4+IA0KPj4+Pj4+IFsyXQ0KPj4+
Pj4+IGh0dHBzOi8vd3d3LmlldGYub3JnL21haWwtYXJjaGl2ZS93ZWIvc2VjZGlyL2N1cnJlbnQv
bXNnMDY4MDEuaHRtbA0KPj4+Pj4+IDxodHRwczovL3d3dy5pZXRmLm9yZy9tYWlsLWFyY2hpdmUv
d2ViL3NlY2Rpci9jdXJyZW50L21zZzA2ODAxLmh0bWw+DQo+Pg0KPg0KDQo=

