Re: Identity Checking in Application Protocols
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Identity Checking in Application Protocols



On Oct 28, 2009, at 10:20 AM, tom.petch wrote:

----- Original Message -----
From: "Peter Saint-Andre" <stpeter at stpeter.im>
Sent: Tuesday, October 27, 2009 10:28 PM

On 10/27/09 4:28 AM, Alexey Melnikov wrote:
Hi Peter,

Peter Saint-Andre wrote:
I had hoped to update draft-saintandre-tls-server-id-check before the submission cutoff today, but it's not going to happen because there's quite a bit of feedback to sift through (ideally I would have followed the list discussions more closely the first time around). However, I shall work to update it in the next few days, at which time I will also rename it to remove the strings "tls" and "server" since the scope of the spec has widened to include non-TLS interactions as well as client
identity checking. My apologies for the delay.

Without my AD hat: I don't think the document should cover client
identity checking. I found Kurt's arguments to be convincing.

I think that the distinction between application roles and security
roles causes some confusion here. This I-D talks about security roles, not application roles. Thus, for example, when two XMPP servers wish to
establish a TLS-encrypted connection, from the security point of view
the server that initiates the connection is a TLS client whereas the
server that receives the connection is a TLS server (despite the fact
that from an application point of view both of them are XMPP servers).

My understanding of Kurt's argument is that we can't say much that's
helpful about how a TLS server checks the identity of a TLS client
because the problem is application-specific and the TLS server doesn't really have a "reference identity" (an idea of what identity the client
will assert). At some level, the TLS server knows that it expects the
TLS client to assert a kind of identity (domain name, email address,
XMPP address, etc.) but not necessarily a particular instance of that
kind ("example.com", "foo at example.com", or whatever).

I need to think about this further. I'm sure that re-reading Kurt's
messages will help...

My take is that the only difference is one of number.

A client is 'configured' with a single reference identity, eg by the user
keying it into a window, which is then used in a comparison with what
is returned in an X.509 certificate.

A server may support more than one client and so may be configured
with more than one reference identity and use any or all of them in a
comparison with what is received in an X.509 certificate eg with SIP,
Netconf, syslog,
....

Of course, a server may not care to check, may not be configured with
anything, in which case the procedures in this I-D are irrelevant

My objection is not against an "application server" acting as a TLS client verifying the identity of the TLS server it connects to. My objection is against this I-D discussing in detail how an "application server" acting as a TLS server might verify the identity of the TLS client connecting to it.

The difference between the two (generally speaking) is that in the former, the verifying entity (the TLS client) has an assumption of trust in the reference identity as it provided by the user (via some dialog or configuration or whatever) as opposed to be programmatically determined by the verifying entity (such as simply using the TLS client's IP address as the reference identity, or using some IP address to reference identity mapping, etc.). The security considerations for these two scenarios is quite different, and I simply rather avoid discussing the latter in this document.

I note that are other use scenarios, such as when the reference identity is provided to the client via a referral mechanism. That is, an application clients to server A, A provides a referral to B, client connects to B and now wants to verify B's identity. I think this scenario likely should be discussed to some degree in the I-D as it is a relatively common application client scenario.

-- Kurt


Tom Petch

Peter

- --
Peter Saint-Andre
https://stpeter.im/

_______________________________________________
Apps-Discuss mailing list
Apps-Discuss at ietf.org
https://www.ietf.org/mailman/listinfo/apps-discuss


Note: Messages sent to this list are the opinions of the senders and do not imply endorsement by the IETF.