Re: [TLS] Client certificate authentication and draft-ietf-tls-oob-pubkey

Paul Wouters <paul@nohats.ca> Tue, 10 April 2012 16:09 UTC

Return-Path: <paul@nohats.ca>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CCE3011E80E8 for <tls@ietfa.amsl.com>; Tue, 10 Apr 2012 09:09:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.535
X-Spam-Level:
X-Spam-Status: No, score=-0.535 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FH_HOST_EQ_D_D_D_D=0.765, FH_HOST_EQ_D_D_D_DB=0.888, HOST_MISMATCH_COM=0.311, RDNS_DYNAMIC=0.1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZjwAw-eyny5x for <tls@ietfa.amsl.com>; Tue, 10 Apr 2012 09:09:30 -0700 (PDT)
Received: from letoams.cypherpunks.ca (206-248-139-105.dsl.teksavvy.com [206.248.139.105]) by ietfa.amsl.com (Postfix) with ESMTP id 5E3A511E80BE for <tls@ietf.org>; Tue, 10 Apr 2012 09:09:30 -0700 (PDT)
Received: by letoams.cypherpunks.ca (Postfix, from userid 500) id 8C6BE80116; Tue, 10 Apr 2012 12:09:29 -0400 (EDT)
Received: from localhost (localhost [127.0.0.1]) by letoams.cypherpunks.ca (Postfix) with ESMTP id 81D4C8001C; Tue, 10 Apr 2012 12:09:29 -0400 (EDT)
Date: Tue, 10 Apr 2012 12:09:29 -0400
From: Paul Wouters <paul@nohats.ca>
To: Paul Hoffman <paul.hoffman@vpnc.org>
In-Reply-To: <BB11250E-D827-490A-9C9D-C83028844EF6@vpnc.org>
Message-ID: <alpine.LFD.2.02.1204101202270.11272@bofh.nohats.ca>
References: <173124B6-9480-443E-9FA6-98BBB1A01F5F@vpnc.org> <alpine.LFD.2.02.1204051126330.4059@bofh.nohats.ca> <F53123FA-2A9C-434D-92CF-0B938B072984@vpnc.org> <alpine.LFD.2.02.1204100955050.5054@bofh.nohats.ca> <BB11250E-D827-490A-9C9D-C83028844EF6@vpnc.org>
User-Agent: Alpine 2.02 (LFD 1266 2009-07-14)
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset="US-ASCII"; format="flowed"
Cc: tls@ietf.org
Subject: Re: [TLS] Client certificate authentication and draft-ietf-tls-oob-pubkey
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tls>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 Apr 2012 16:09:30 -0000

On Tue, 10 Apr 2012, Paul Hoffman wrote:

>> When the TLS client contacts the server, it has some idea of who it is
>> contacting for the out of band authentication of the received raw public
>> key. The server has no such idea when it is contact out of the wild, and
>> if it just receives a SPKI without any identifier, then it cannot really
>> know what to do.
>
> Sure it can. The same way that the client would have an internal list of DNS-to-SPKI associations, the server could have an internal list of ID-to-SPKI associations.

True. It wouldn't be the best system, but you are right.

>> This is why I suggested the TLS extension equivalent for SNI for the
>> client.
>
> Where is this suggested?

Oops. I checked draft-wouters-tls-oob-pubkey-00 and it was already
removed there after discussion with EKR in Quebec City.


> True, but the current draft needs to say how it implements the RFC 6091 semantics. Leaving it silent will lead to misunderstanding.
>
>> But as there is no way currently for the TLS client to convey its own
>> cert_type is different than then cert_type it requested of the server, I
>> guess we should stick with using the same cert_type symantics as in 6091.
>
> Why, yes, you should. :-)
>
>> That would mean that without a new TLS extension, that TLS servers sending
>> a certificate_request in response to receiveing a cert_type="RawPublicKey"
>> is likely to end in a failed TLS connection, because the server cannot
>> authenticate the client based on the received certificate of type RawPublicKey.
>
> As above, I don't see why that is the case. A server can get client names and SPKIs out of band just as a client can.

Yes, it can, but not "as a client can", because the client knows which
identity it is going to contact, while the server does not know which
identity it is contacted by.

> Please add clarifying text regardless, and then we can discuss if we agree with it.

Will do.

Paul