[core] Review of draft-ietf-core-oscore-groupcomm-07

Jim Schaad <ietf@augustcellars.com> Tue, 17 March 2020 20:39 UTC

Return-Path: <ietf@augustcellars.com>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5DFD53A0D85; Tue, 17 Mar 2020 13:39:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, 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 iwdaZun1LGHq; Tue, 17 Mar 2020 13:39:53 -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 7EDE23A0D81; Tue, 17 Mar 2020 13:39:52 -0700 (PDT)
Received: from Jude (73.180.8.170) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Tue, 17 Mar 2020 13:39:41 -0700
From: Jim Schaad <ietf@augustcellars.com>
To: draft-ietf-core-oscore-groupcomm@ietf.org
CC: 'CoRE WG' <core@ietf.org>
Date: Tue, 17 Mar 2020 13:39:40 -0700
Message-ID: <01c901d5fc9c$302115b0$90634110$@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: AdX7DftnVvPEGcneQ0Kb4YY1wBM++w==
X-Originating-IP: [73.180.8.170]
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/gxApoEOdIjo5-bOtL6vw1QAaZVU>
Subject: [core] Review of draft-ietf-core-oscore-groupcomm-07
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 17 Mar 2020 20:39:59 -0000

* Introduction - para 4 - I think you need to expand some text in this
section to explain why it is that doing a pairwise response is still going
to be considered to be group communication.   This assumes some intimate
details of how multicast works in CoRE that might not be generally known.

* Section 1.1. - Silent Server:  Consider adding the following to the
definition "Given that for CoAP group communications, messages are normally
sent without requesting a confirmation the idea of a server silently acting
on a message is not unreasonable."

* Section 2.2 - next to last paragraph s/instead retrieve/retrieve/ 

* Section 2.2 - last para - this does not make any sense because a server
could do a non-reflection response and you would be unable to deal with it.
I have not see any text to outlaw this behavior.

* Section 2.3 - para #3 - s/from which/with which/

* Section 2.4 - para #3 - The implications of the paragraph are horrendous
in terms of performance of the system.  It basically says that you need to
do some excess processing in order to deal with this issue following a key
roll-over.  If the first message received cannot be validated by the
signature then there is an issue of the question was the message corrupted
or was the id assigned to a new entity and thus a new public key is required
to be pulled down.  

* Section 3 - Have you actually done the testing to see if you can do the
mapping of EdDSA as suggested here?

* Section 3 - are all of these pairwise keys to be tossed away when new keys
are issued for the group?

* Section 3 - clarity is needed on how PIV is going to work for this.  I
would assume that it amounts to a separate context but this is not
completely clear from the text.

* Section 4.3 -  s/and one structure/and  second structure/ or different
structure

* Section 7. - Para 2 - I have a problem with the second sentence.  I think
that you need to make it clear who is supposed to be doing this
retransmission.  It should not be the CoAP system, but it is instead the
application.  That means that a new request could be sent rather than a
retransmission occurring.

* Section 7.1 - Does not reflect the case where pairwise is used.   Ditto
for other sections. - found it in section 8, but that does not seem to be
referenced from section 9 which is "message processing".

* Section 7.4.1 - Must send the group identifier on the first observe
following a rekey operation to all clients.  ---- I am not sure that the
group may not be required at all times - We need to discuss why you think
this would not be true.   Think of the case of two different observe
relations from the client to the same server sent using the same pair of
ports on both devices but with different groups.

* Section 9 - I thought I understood how this is going to work and after
reading this I find that I am wrong.  I am almost positive that I dislike
the compression for sending a request.  

* Section 9.1.1 - I believe that this is just wrong - I would have thought
that this is keep the tag and omit the countersignature.  As written you
have messed up the AEAD and thus one level of security on this.

* Section 10 para 1 - s/as further discussed/as discussed/

* Section 10.1 - should deal with the bilateral version and say that it does
not follow these rules.

* Section 10.4  s/ block-wire/block-wise/

* Section 10.7 has interesting block-wise implications that need to be
explored.