Re: [TLS] Wrapping up cached info

"Brian Smith" <brian@briansmith.org> Thu, 27 May 2010 16:10 UTC

Return-Path: <brian@briansmith.org>
X-Original-To: tls@core3.amsl.com
Delivered-To: tls@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id E4EA93A6B3C for <tls@core3.amsl.com>; Thu, 27 May 2010 09:10:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.451
X-Spam-Level:
X-Spam-Status: No, score=0.451 tagged_above=-999 required=5 tests=[AWL=-0.150, BAYES_50=0.001, J_CHICKENPOX_66=0.6]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rRCCEMWcsv17 for <tls@core3.amsl.com>; Thu, 27 May 2010 09:10:40 -0700 (PDT)
Received: from mxout-08.mxes.net (mxout-08.mxes.net [216.86.168.183]) by core3.amsl.com (Postfix) with ESMTP id EFAAA3A6B3A for <tls@ietf.org>; Thu, 27 May 2010 09:10:39 -0700 (PDT)
Received: from T60 (unknown [70.245.69.20]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by smtp.mxes.net (Postfix) with ESMTPSA id F0C4F509B4; Thu, 27 May 2010 12:10:23 -0400 (EDT)
From: Brian Smith <brian@briansmith.org>
To: 'Nicolas Williams' <Nicolas.Williams@oracle.com>
References: <003201cafac0$9a75d9c0$cf618d40$@briansmith.org> <201005251346.o4PDkvJT024708@fs4113.wdf.sap.corp> <000301cafdb2$9f59f800$de0de800$@briansmith.org> <20100527154717.GQ9605@oracle.com>
In-Reply-To: <20100527154717.GQ9605@oracle.com>
Date: Thu, 27 May 2010 11:10:21 -0500
Message-ID: <000501cafdb7$1ee6b8c0$5cb42a40$@briansmith.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQHPr9DNi55j7moazUDWaBpt75m2CQMEn5zqAjgegDwBv6QvOAI2OQtA
Content-Language: en-us
Cc: tls@ietf.org
Subject: Re: [TLS] Wrapping up cached info
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.9
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/listinfo/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: Thu, 27 May 2010 16:10:44 -0000

Nicolas Williams wrote:
> On Thu, May 27, 2010 at 10:38:09AM -0500, Brian Smith wrote:
> > Martin Rex wrote:
> > > I think that should be described in the Security Considerations that
> > > a client or client&server that perform renegotiation for the purpose
> > > of client identity protection may want to tag their cached values
> > > so that when that value was established on an encrypted handshake,
> > > it is not going to be proposed by the client on a successor
> > > plaintext handshake.
> 
> Yes.
> 
> > How would the server indicate this to the client?
> 
> There's no need for the server to indicate anything to the client here.
> 
> If a client wouldn't attempt user authentication w/o re-negotiation then
> it shouldn't send a hash of its user cert / cert chain in the initial
> handshake.  If a server considers user cert TAs to be confidential
> (highly unlikely, but let's suppose) then the server shouldn't list
> their hashes in initial handshakes.  It's that simple.

AFAICT, that wouldn't stop a compliant (to the current draft) client from
sending the hashes. Even if the server previously indicated that it didn't
support the extension and/or didn't support caching certain information
items, a complaint (to the current draft) client is still allowed to send
those hashes:

     A cached_information extension provided in the server hello has the
     following semantics:

     o An empty cached_information extension indicates that the server
       supports information caching but provides no information about
       what information types it supports.

     o A non-empty cached information extension indicates that the
       server supports only those CachedInformationType types that are
       identified by each present CachedObject.

     o A CachedObject with an empty digest_value indicates that the
       server supports caching of the specified object type
       (CachedInformationType), but does not specify any digest values
       it will accept.

Regards,
Brian