From: Cigdem Sengul <cigdem.sen...@gmail.com> 
Sent: Sunday, March 8, 2020 3:30 PM
To: Jim Schaad <i...@augustcellars.com>
Cc: draft-ietf-ace-mqtt-tls-prof...@ietf.org; Ace Wg <ace@ietf.org>
Subject: Re: Comments on the MQTT draft

 

Hello Jim,

 

Comments inline.

 

On Sun, Mar 8, 2020 at 7:04 PM Jim Schaad <i...@augustcellars.com 
<mailto:i...@augustcellars.com> > wrote:

1.  I want to verify that the following is the desired statement:  There is
a strong preference that TLS not use PSK for authentication.  This follows
from the recommendation to use TLS:Anon-MQTT:ace for the authentication
option.  I have no problems with this statement, I just want to be sure that
the group as a whole is ok with this position.   I found that I implemented
the SHOULD NOT option for PSK to start with, but that is because I was
trying to be completist not because I think the position is wrong.

 

To tell the truth, I've put the RECOMMENDED as I believed it was expected that 
I provide a recommendation. 

Otherwise, any of the methods are OK (with some exceptions for anon:anon, and 
over authenticating/authorising with the last mode).  

 

[JLS]  I approve of having a recommended method, that is one which everybody 
will implemented, I just want to ensure people think this is the right one.

 


2.  While implementing I found that there did not appear to be a mandatory
to implement validation algorithm, one needs to be specified.

 

Do you mean mandatory-to-implement certificate validation policy?

 

[JLS]  What cryptographic algorithm is used to implement the hash/signature for 
the two authentication methods – it can be the same for both.


3.  After reading the log of bugs which have been showing up on the MQTT
code base that I have been using, I think there needs to be text put into
the document to deal with the clean session requirement that this profile is
enforcing.  I am seeing a lot of people who are relying on the fact they are
not reconnecting with clean session to get QoS information back from the
server in the event of unexpected disconnects.

 

Yes, I can see this can be problematic but this was to avoid the broker keeping 
state for clients that are no more authorised to receive those messages. The 
session state can include actual messages if QoS>=1, so maybe high overhead. 

Session State in the Server consists of:

*         The existence of a Session, even if the rest of the Session State is 
empty.

*         The Clients subscriptions, including any Subscription Identifiers.

*         QoS 1 and QoS 2 messages which have been sent to the Client, but have 
not been completely acknowledged.

*         QoS 1 and QoS 2 messages pending transmission to the Client and 
OPTIONALLY QoS 0 messages pending transmission to the Client.

 

The Session Expiry is also set by the client:

When a client connects with a long Session Expiry Interval, it is requesting 
that the Server maintain its MQTT session state after it disconnects for an 
extended period. Clients should only connect with a long Session Expiry 
Interval if they intend to reconnect to the Server at some later point in time. 
When a client has determined that it has no further use for the Session it 
should disconnect with a Session Expiry Interval set to 0.  

 

[JLS] All of that makes a great deal of sense to me.   What if a session 
expires when a token expires independent of the client’s request for a long 
session expiry interval.  After all, if the token is the identity then if the 
token expires you can no longer prove you are the same person and thus can have 
the same session back.   You probably need some weasel text about allowing for 
an expired session to get a new token if it is kept open perhaps, but I have 
not looked exactly when a connection would be forced closed due to token 
expiration yet.

 

 


4.  I keep going back and forth on a recommendation that we channel bind in
the challenge response case.  I don't have the knowledge to be able to do a
formal proof, but I think that all of necessary conditions are going to be
met without it.  However, having the binding included would most likely make
the proofs that much easier.  

 


Jim



_______________________________________________
Ace mailing list
Ace@ietf.org
https://www.ietf.org/mailman/listinfo/ace

Reply via email to