On Wed, Oct 15, 2014 at 08:21:07PM +0000, Orit Levin (LCA) wrote:
> Victor, some of your text is not directly related to the opportunistic
> recommendations. So, if you feel that it will be useful to include these
> parts or modifications into the BCP, please, submit them in a format
> suggesting how exactly incorporate them into the -05 version.
I am inclined to leave the "how" the authors if they agree with
the comment. The comments that are not specific to opportunistic
TLS are repeated below.
> > * Section 2.1, 3rd bullet below first paragraph:
> >
> > Quote:
> >
> > Authentication: this means that an end-point of the TLS
> > communication is authenticated as the intended entity to
> > communicate with. TLS allows to authenticate one or both end-
> > points in the communication. Some TLS usage scenarios do not
> > require authentication, and are further discussed in Section 2.2.
> >
> > Not sure whether my comment on the above is in scope for the BCP,
> > but the subtler aspects of mutual authentication in TLS are not
> > widely understood, and perhaps ought to be more widely disseminated.
> >
> > One might think that mutual authentication in TLS is essentially
> > agnostic about who authenticates whom and that active attack
> > prevention can be attained via authentication of either the server
> > or the client. This naive view is not correct.
> >
> > When a server provides a public service open to all (accepting
> > email for a domain, a free search service, ...) authentication
> > of the server by the client is required and sufficient to provide
> > the channel security necessary to assure the client that its
> > access to the public service is not subject to active attacks.
> > Any authentication of the client by the server in this context
> > is no substitute for authentication of the server by the client.
> > In fact clients of public services may prefer to remain anonymous.
> >
> > Thus, while in some cases (local policy, DANE, ...) a sending
> > MTA may elect to authenticate the next-hop MX host, the authentication
> > of sending MTAs by MX hosts plays no role in protecting the
> > transmission channel and has rather limited potential utility.
> >
> > On the other hand, when a server supports the establishment of
> > a bi-directional messaging channel (say XMPP) or provides access
> > to confidential data available exclusively to a client or set of
> > clients, then authentication of the client is needed to assure
> > the server that it is initiating new messages or making data
> > available to the right client. In such cases it is not enough
> > for the client to authenticate the server, the server needs to
> > also authenticate the client (whether through TLS client certs,
> > or some application-layer mechanism ideally channel-bound to the
> > TLS connection).
> >
> > Is discussion of this topic in scope?
> >
> > * Section 2.1, 3rd paragraph below initial bullet points:
> >
> > As before, this seems unclear:
> >
> > This document assumes that data integrity protection is
> > always one of the goals of a deployment. In cases when
> > integrity is not required, it does not make sense to employ
> > TLS in the first place.
> >
> > Is this talking about integrity in the AEAD sense (protection
> > against modification by a party other than one with whom the
> > handshake took place), or in the sense of handshake authentication
> > to ensure that the key exchange took place with the right party?
> >
> > * Section 4.1.1, MUST offer to negotiate TLS 1.2:
> >
> > I appreciate the need to move forward to 1.2 and some day to 1.3.
> >
> > I am concerned about the manifold issues with TLS 1.2 interoperability.
> > Users will continue to disable 1.2 in various cases for some
> > time. Can there be any wiggle-room here to disable TLS 1.2 for
> > selected peers where 1.2 is determined to run into problems?
> >
> > * Section 4.2 "Strict TLS":
> >
> > Quote:
> >
> > In many application protocols, clients can be configured to
> > use TLS even if the server has not advertised that TLS is
> > mandatory or even supported (e.g., this is often the
> > case in messaging protocols such as IMAP and XMPP).
> > Application clients SHOULD use TLS by default, and disable
> > this default only through explicit configuration by the user.
> >
> > Some user-agent applications contact a small fixed set of peers
> > (often just one submission, IMAP or XMPP server). For these,
> > defaulting to TLS and requiring user action to use cleartext
> > is reasonable.
> >
> > Other applications (MTAs, XMPP infrastructure servers, ...)
> > potentially contact similar servers in any domain on the
> > Internet. They cannot default to TLS on, until TLS adoption
> > by peers is universal. They MUST operate opportunistically,
> > and determine peer by peer which peers support TLS and which
> > do not. The above advice is based on familiarity with just
> > the first class of applications.
> >
> > Is the "SHOULD" meant to provide sufficient wiggle-room to
> > allow SMTP and XMPP relays to be out of scope? Or should the
> > advice be a bit more specific?
The quoted paragraph seems to overlap with the opportunistic space.
The requirment to use TLS "by default" needs a somewhat narrower
scope, something like:
User-agent configurations for statically configured connections
to services that support both TLS and cleartext SHOULD use TLS
"by default".
> > * Section 4.4 Resumption:
> >
> > Quote:
> >
> > If TLS session resumption is used, care ought to be taken
> > to do so safely. In particular, when using session tickets
> > [RFC5077], the resumption information MUST be authenticated
> > and encrypted to prevent modification or eavesdropping by
> > an attacker. Further recommendations apply to session
> > tickets:
> >
> > Not sure what "authenticated" is intended to mean here. RFC
> > 5077 recommends an encrypt + MAC ticket encoding. Why does this
> > BCP need to comment on ticket encoding security? This is rarely
> > an application issue, I would expect ticket encoding/decoding
> > support to be provided by TLS toolkits, not application code.
> >
> > The chief interaction between applications and session tickets
> > is key management, when the same session needs to work with a
> > cluster of hosts. So I thin the BCP should restrict its attention
> > to the key management issues, which are not IIRC addressed in
> > 5077.
> >
> > For example, Postfix has code to provide OpenSSL with the relevant
> > session ticket encryption/decryption keys (which Postfix rotates
> > by default hourly), but the underlying encoding details are
> > handled by the OpenSSL library.
> >
> > * Section 4.6 SNI.
> >
> > On the server side, there is simply no requirement to support
> > SNI when the server is not doing any "virtual hosting". So server
> > side SNI support is optional.
> >
> > * Section 5.1 (<128 bit text):
> >
> > See comment upstream.
> >
> > * Section 5.5 (DH cipher suites) ranking:
> >
> > Quote:
> >
> > * Elliptic Curve DHE with negotiated parameters
> > * TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, with 2048-bit Diffie-Hellman
> > parameters
> > * TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, with 1024-bit parameters.
> >
> > It should be made more clear that the choice between the last
> > two is entirely based on server support for either or both. No
> > information is (as noted) available from the client. Thus servers
> > than can send DH 2048-bit parameters SHOULD do so, unless it is
> > known that this will cause interoperability issues with a
> > non-negligible fraction of clients.
> >
> > * Section 7.1:
> >
> > Further rules for establishing reference identities may appear
> > in application-protocol-specific documents that refine 6125.
> >
> > This implies that authentication cannot take place when no secure
> > reference identity is known, but does not say it outright.
> > Applications where this is an issue must either employ unauthenticated
> > TLS or must employ some identifier other than the peer hostname
> > (e.g. the MX or SRV input domain used to locate the target host)
> > or any explicitly configured identifier that is part of the
> > mandatory TLS configuration for the destination. The right choice
> > to be specified in relevant application-specific standards.
I think the above clarification is needed especially for mandatory TLS.
> > * Section 7.5 (Revocation):
> >
> > See upstream comment re "forward looking" statements.
Not strictly about opportunistic. Really about whether discussion of
future revocation alternatives is in scope for a BCP. And if so, which
ones (for example, BCP alternatives to revocation when using DANE?).
--
Viktor.
_______________________________________________
Uta mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/uta