Re: [TLS] New Cached info draft

Stefan Santesson <stefan@aaa-sec.com> Fri, 26 March 2010 14:49 UTC

Return-Path: <stefan@aaa-sec.com>
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 1C8B43A691B for <tls@core3.amsl.com>; Fri, 26 Mar 2010 07:49:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.608
X-Spam-Level:
X-Spam-Status: No, score=-1.608 tagged_above=-999 required=5 tests=[AWL=0.511, BAYES_00=-2.599, DNS_FROM_OPENWHOIS=1.13, HELO_EQ_SE=0.35, RCVD_IN_DNSWL_LOW=-1]
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 WLw6pJ-bcb5H for <tls@core3.amsl.com>; Fri, 26 Mar 2010 07:49:12 -0700 (PDT)
Received: from s87.loopia.se (s87.loopia.se [194.9.95.115]) by core3.amsl.com (Postfix) with ESMTP id 64C0B3A680F for <tls@ietf.org>; Fri, 26 Mar 2010 07:49:12 -0700 (PDT)
Received: from s128.loopia.se (s34.loopia.se [194.9.94.70]) by s87.loopia.se (Postfix) with ESMTP id 06FFB2E289E for <tls@ietf.org>; Fri, 26 Mar 2010 15:36:18 +0100 (CET)
Received: (qmail 91497 invoked from network); 26 Mar 2010 14:36:11 -0000
Received: from dhcp-wireless-open-abg-25-91.meeting.ietf.org (HELO [130.129.25.91]) (stefan@fiddler.nu@[130.129.25.91]) (envelope-sender <stefan@aaa-sec.com>) by s128.loopia.se (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP for <stefan@aaa-sec.com>; 26 Mar 2010 14:36:11 -0000
User-Agent: Microsoft-Entourage/12.24.0.100205
Date: Fri, 26 Mar 2010 07:36:07 -0700
From: Stefan Santesson <stefan@aaa-sec.com>
To: Stefan Santesson <stefan@aaa-sec.com>, Adam Langley <agl@imperialviolet.org>
Message-ID: <C7D21467.99E0%stefan@aaa-sec.com>
Thread-Topic: [TLS] New Cached info draft
Thread-Index: AcrMfGefDFMM3Cl/n0+2EixxXg399QAdUPiA
In-Reply-To: <C7D14FAA.9999%stefan@aaa-sec.com>
Mime-version: 1.0
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] New Cached info draft
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: Fri, 26 Mar 2010 14:49:14 -0000

I have submitted a 05 version of cached info draft that fixes the recorded
errors and problems.

http://tools.ietf.org/rfcdiff?url2=draft-ietf-tls-cached-info-05.txt

/Stefan

On 10-03-25 5:36 PM, "Stefan Santesson" <stefan@aaa-sec.com> wrote:

> Thanks for the review Adam,
> 
> Comments in line;
> 
> 
> On 10-03-25 4:21 PM, "Adam Langley" <agl@imperialviolet.org> wrote:
> 
>> On Thu, Mar 25, 2010 at 10:55 AM, Stefan Santesson <stefan@aaa-sec.com>
>> wrote:
>>> Major changes:
>>> - The 64 bit FNV-1 non-cryptographic hash is used to provide a digest over
>>> cached data. All use of hash algorithms has been removed, so also all
>>> elements of hash algorithm agility. The FNV-1 digest algorithm used in this
>>> specification is defined in Annex A.
>>> 
>>> - It is now possible to query a server with an empty cached info extension
>>> to find out if, and to what extent the server supports caching before the
>>> client starts to cache data for that server.
>>> 
>>> - The data substitution syntax has been explicitly defined for both defined
>>> object types
>> 
>> I knocked up patches for NSS (client and server) and for OpenSSL
>> (server only) for this. (Available on request if anyone cares although
>> the quality is currently "quick-hack").
>> 
>> One issue that I ran into: the representation of the FNV64 hash on the
>> wire is unspecified. I assumed big-endian but it should be in the
>> spec.
>> 
> 
> Agree, It is big-endian and text is added.
> 
>> I think there's a typo in the first line of section 5.1 (it mentioned
>> trusted_cas when I think it should be certificate_chain)
>> 
> 
> Fixed.
> 
>> There are two section 5s.
>> 
> 
> Fixed.
> 
>> Also, does a "digest calculated over the certificate_list element of a
>> server side Certificate message" contain the three length bytes? I
>> assumed not. To be clear, a certificate_list is prefixed with three
>> length bytes and contains a series of certificate, each of which has
>> its own three length bytes. It seems clear the the length bytes of the
>> certificates should be included, but I omitted the initial three.
>> 
> 
> Good question. This makes me realize that I have made an error in version 04
> since I have removed the inner 3 byte length for the substitution syntax.
> 
> 
> The correct syntax should be:
> 
> DigestInfo ASN.1Cert<1..2^24-1>;
> 
> struct {
>     opaque digest_value<0..8>;
> } DigestInfo;
> 
> struct {
>     ASN.1Cert certificate_list<0..2^24-1>;
> } Certificate;
> 
> 
> The spec intended to specify that the whole certificate_list vector was
> hashed, including the length bytes, but it makes absolutely sense to exclude
> hashing the length bytes of the certificate_list vector.
> 
> I can clarify this if the list approves.
> 
> /Stefan
> 
>  
> 
> 
>> 
>> Cheers
>> 
>> AGL
> 
> 
> _______________________________________________
> TLS mailing list
> TLS@ietf.org
> https://www.ietf.org/mailman/listinfo/tls