[Standards-JIG] Re: proto-JEP: Proposed Stream Feature Improvements

Dave Cridland dave at cridland.net
Tue Aug 22 11:18:33 CDT 2006


On Tue Aug 22 16:44:26 2006, Peter Saint-Andre wrote:
> I don't know if we ever had consensus on this. IIRC, the stream 
> restarts
> are there to conform with some requirements (or our understanding of
> some requirements) from the TLS and SASL RFCs. I'm all for a clean
> design but I will look at RFCs 4346 (TLS 1.1) and 4422 (SASL) -- 
> which
> obsolete RFCs 2246 and 2222 respectively -- to make sure that we 
> would
> be in compliance if we removed the stream restarts.

There's no such requirements in RFC2246 and RFC2222 as far as I know, 
either.

However, there are security requirements in as much as you need to be 
able to get, for example, a new list of supported SASL mechanisms 
after the introduction of a TLS security layer, to avoid an MITM 
downgrade attack.

RFC3920 doesn't have a mechanism to obtain a new set of stream 
features outside of starting a new stream, so I suspect the stream 
restart was the simplest option, and it has the additional benefit of 
forcing clients to do the right thing.

What you could do is provide not only the addition 
<i-do-not-need-a-stream-restart/> feature (catchy, eh?), but require 
that clients explicitly use such a feature by adding a 
<okay-just-send-me-the-stream-features-afterward-then/> element, 
which'd resend the stream features after a layer insertion is 
complete. There's a problem here, though, which is that the client's 
stream start can be pipelined with the end of the TLS negotiation, so 
in that case at least, you gain nothing.

For SASL, you can negotiate a security layer too, and therefore a 
client will need to discard previous features and refetch them.

Perhaps the answer there is to send stream features anew immediately 
after a security layer is established by SASL - if one is.

For compression, no stream restart is needed - you just have to 
ensure that both sides know when the compression layer kicks in.

Dave.
-- 
Dave Cridland - mailto:dave at cridland.net - xmpp:dwd at jabber.org
  - acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
  - http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade



More information about the Standards-JIG mailing list