Re: [TLS] New Cached info draft

Marsh Ray <marsh@extendedsubset.com> Fri, 26 March 2010 18:38 UTC

Return-Path: <marsh@extendedsubset.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 BC40B3A6B01 for <tls@core3.amsl.com>; Fri, 26 Mar 2010 11:38:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.169
X-Spam-Level:
X-Spam-Status: No, score=-0.169 tagged_above=-999 required=5 tests=[AWL=1.300, BAYES_00=-2.599, DNS_FROM_OPENWHOIS=1.13]
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 nL+WG5Ff-UuI for <tls@core3.amsl.com>; Fri, 26 Mar 2010 11:38:09 -0700 (PDT)
Received: from mho-02-ewr.mailhop.org (mho-02-ewr.mailhop.org [204.13.248.72]) by core3.amsl.com (Postfix) with ESMTP id 798123A6A2F for <tls@ietf.org>; Fri, 26 Mar 2010 11:38:09 -0700 (PDT)
Received: from xs01.extendedsubset.com ([69.164.193.58]) by mho-02-ewr.mailhop.org with esmtpa (Exim 4.68) (envelope-from <marsh@extendedsubset.com>) id 1NvEQS-000BUM-Gv; Fri, 26 Mar 2010 18:38:32 +0000
Received: from [127.0.0.1] (localhost [127.0.0.1]) by xs01.extendedsubset.com (Postfix) with ESMTP id 413956048; Fri, 26 Mar 2010 18:38:30 +0000 (UTC)
X-Mail-Handler: MailHop Outbound by DynDNS
X-Originating-IP: 69.164.193.58
X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/mailhop/outbound_abuse.html for abuse reporting information)
X-MHO-User: U2FsdGVkX1/9CYasMz87jlgHijYz9yw6a3mKNJsXaWw=
Message-ID: <4BACFF25.3040109@extendedsubset.com>
Date: Fri, 26 Mar 2010 13:38:29 -0500
From: Marsh Ray <marsh@extendedsubset.com>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.8) Gecko/20100216 Thunderbird/3.0.2
MIME-Version: 1.0
To: Stefan Santesson <stefan@aaa-sec.com>
References: <C7D21467.99E0%stefan@aaa-sec.com>
In-Reply-To: <C7D21467.99E0%stefan@aaa-sec.com>
X-Enigmail-Version: 1.0.1
OpenPGP: id=1E36DBF2
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
Cc: Adam Langley <agl@imperialviolet.org>, "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 18:38:10 -0000

On 3/26/2010 9:36 AM, Stefan Santesson wrote:
> 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

Cool.

As a check, I implemented the FNV-1 64 algorithm directly from the
pseudocode in the draft, and without reference to any other docs.

Then I tried a few test vectors from
http://isthe.com/chongo/src/fnv/test_fnv.c

The results look good:

For input data:
0 bytes
Digest is: CB F2 9C E4 84 22 23 25

For input data:
0000  61                                                a
1 bytes
Digest is: AF 63 BD 4C 86 01 B7 BE

For input data:
0000  FF 00 00 01                                       ....
4 bytes
Digest is: D6 B2 B1 7B F4 B7 12 61

For input data:
0000  68 74 74 70 3A 2F 2F 65 6E 2E 77 69 6B 69 70 65   http://en.wikipe
0010  64 69 61 2E 6F 72 67 2F 77 69 6B 69 2F 46 6F 77   dia.org/wiki/Fow
0020  6C 65 72 5F 4E 6F 6C 6C 5F 56 6F 5F 68 61 73 68   ler_Noll_Vo_hash
48 bytes
Digest is: 26 CA F8 8B CB EF 2D 19


Minor suggestions:

It might help to mention that this is FNV-1 and not the FNV-1a variant.

The pseudocode relies on indentation for correct interpretation.
Whitespace seems to sometimes get whacked around a bit in these docs. A
pair of curlys might prevent a (trivial) ambiguity.

Including a few of these test vectors might in the document could be
useful, especially because there's not a solid normative ref for FNV-1.
Feel free to use my text. I printed the digest as individual bytes to
emphasize that they are a network sequence rather than a host integer.

- Marsh