AD review: draft-ietf-ace-cmpv2-coap-transport-07

Please see below my AD review comments. I believe a revision of the document
is required before sending it to the IESG. The substantial comments are
mostly
about SHOULD vs MUST cases, but there is also a few large pieces of text,
mostly
in the Security Considerations section, that need to be reformulated for
clarity.
I've tried to propose text where I can.

I've also tried to fixup a few spelling and grammer issues.

Regards,

Paul





        A CMP client SHOULD send each CoAP requests marked as a Confirmable
message Section 2.1 of [RFC7252].

When would one not use a Confirmable message ? eg why is this a SHOULD and
not a MUST ?

(also, the sentence doesn't make, did you mean to add "as per Section 2.1
....." ? )


        If the CoAP request is successful then the server SHOULD return a
"2.05 Content" response code.

What else could be sent if the SHOULD is not followed? Eg why is this is a
SHOULD and not a MUST ?

        If the CoAP request is not successful then an appropriate CoAP
        Client Error 4.xx or a Server Error 5.xx response code MUST
        be returned.

Especially seeing there is a MUST here.


This gets stranger even in this sentence, where it becomes very unclear:

        If the server supports CMP Announcements messages, then it SHOULD
        send appropriate 2.xx success response code, otherwise a 4.xx
        or 5.xx error response code.

eg the 'otherwise' clause is not using a SHOULD or MUST, does it inherit the
one from the previous sentence? Also, why SHOULD and not MUST?

        it can omit the Observe option

Now "can" is very strange here for not being a SHOULD or MAY or MUST


        can try after some time to register again

Same here.


        Alternatively, an EE MAY poll for the potential changes

What is meant with "potential changes" ?
(also the grammar of this sentence does not work)

        to get information about the changes.

Also here, what "changes" ?


Section 4:

        The CMP protocol depends upon various mechanisms in the protocol
        itself for making the transactions secure therefore, security
        issues of CoAP due to using UDP without cryptographic protections
        for message confidentiality and integrity, do not carry over to
        the CMP layer. The Security considerations for CoAP are mentioned
        in the [RFC7252].

This is a very vague sentence that also does not read well. And I do not
understand the "carry over" parts. Perhaps something like:

        All payloads of the CMP protocol are cryptographically protected
        against malicious modifications. As such, UDP can be used without
        compromising the security of the CMP protocol. Security
Considerations
        for CoAP are defined in [RFC7252].

Similarly the second point:

        Although the CMP protocol does not depend upon the underlying
        transfer mechanism for protecting the messages but in cases when
        confidentiality protection is desired, CoAP over DTLS [RFC9147]
        MAY be used providing a hop-by-hop security. The use of DTLS can
        provide confidentiality protection of the CMP-level metadata,
        however it cannot obscure the fact that CMP is being used in
        the underlying layer.

Perhaps instead:

        The CMP protocol does not provide confidentiality of the CMP
payloads.
        If confidentiality is desired, CoAP over DTLS [RFC9147] can be used
        to provide confidentiality for the CMP payloads, although it cannot
        conceal that the CMP protocol is used within the DTLS layer.



        Once a DTLS [RFC9147] association is established it SHOULD be
        used for as long as possible to avoid the frequent overhead of
        setting up a DTLS [RFC9147] association for constrained devices.

I think the reference to "as long as possible" is a bit strange. How about:

        DTLS associations SHOULD be kept alive and re-used where possible
        to amortise on the additional overhead of DTLS on constrained
devices.

The next bullet point just needs some grammar fixes:

        An EE may miss some of the Announcement messages when using CoAP
        Observe option [RFC7641] since Observe option is a "best-effort"
        approach and server can lose state about subscribers for
        announcement messages. The EEs may use alternate method described
        in section 2.6 to get time critical changes like CRL updates.

How about:

        An EE might not witness all of the Announcement messages when using
the CoAP
        Observe option [RFC7641], since the Observe option is a
"best-effort"
        approach and the server might lose its state for subscribers to its
        announcement messages. The EEs may use an alternate method described
        in section 2.6 to obtain time critical changes such as CRL updates.

The next bullet I just do not understand:

        In order to to reduce the risks imposed by DoS attacks, the
        implementations SHOULD optimally use the available datagram size
        i.e. avoid small datagrams containing partial CMP PKIMessage data.

Please explain what is meant here and/or rephrase it.

Section 5:

        This document requires a new entry to the CoAP

s/requires/adds

        This document also requires

s/requires/adds/

        in the CMP protocol registry

s/in/to


        Description: The path to send a Get request

Should that be a "GET request" ?


        This document references the cmp, in the Well-Known URIs IANA
        registry. This document is expected to be published together
        with [I-D.ietf-lamps-cmp-updates]. Please add a reference of
        this document to the Well-Known URIs IANA registry for that entry

        This document also refers the path segment "p" in the Certificate
        Management Protocol (CMP) IANA registry. Please add a reference
        of this document to the Certificate Management Protocol (CMP)
        for that path segment.

Please seperate the addition instruction for IANA from the RFC Editor
instruction. Just state the additions as if the other documents were
already published, and then add a note using [Note RFC Editor: ...]
explaining this document should be published after the two referenced
ones.


[I-D.ietf-lamps-cmp-updates] and [I-D.ietf-lamps-lightweight-cmp-profile]
are listed as informative references, but these should be normative
references (as you point to sections in those documents for syntax)


NITS:

        Here is the list of CMP announcement messages

Do not use "here". Maybe just: The list of CMP ....... are:

        An EE MAY use CoAP Observe option

s/use/use the/

        to get any announcement messages

s/any/all

        If for some reason server cannot add

s/server/the server

        A client on receiving

s/on receiving/that receives

        allows the EE to receive

s/the EE/an EE

        Since the CMP payload is same over CoAP and HTTP transfer mechanisms

Since the CMP payload is the same wether using CoAP or HTTP transfer
mechanisms

        Some recommended mechanisms are as follows:

delete "as follows"

        Since the Proxy may have access to the CMP-Level

s/may have/has

        therefore proper role based access control should be in place.

s/therefore/, proper role based access controls should be deployed

        Proxy can be

s/Proxy/Proxies

        to protect them

s/to protect them/for protection

        The proxy however may itself be vulnerable to resource-exhaustion
attacks

s/The proxy itself can also be attacked by resource-exhaustion attacks
_______________________________________________
Ace mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/ace

Reply via email to