Re: [TLS] [Technical Errata Reported] RFC4492 (2389)

Sean Turner <turners@ieca.com> Wed, 23 February 2011 17:34 UTC

Return-Path: <turners@ieca.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 AF38D3A6915 for <tls@core3.amsl.com>; Wed, 23 Feb 2011 09:34:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.447
X-Spam-Level:
X-Spam-Status: No, score=-102.447 tagged_above=-999 required=5 tests=[AWL=0.151, BAYES_00=-2.599, UNPARSEABLE_RELAY=0.001, USER_IN_WHITELIST=-100]
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 E5xzmiyoqUhW for <tls@core3.amsl.com>; Wed, 23 Feb 2011 09:34:28 -0800 (PST)
Received: from nm11.bullet.mail.ac4.yahoo.com (nm11.bullet.mail.ac4.yahoo.com [98.139.52.208]) by core3.amsl.com (Postfix) with SMTP id 723733A68DC for <tls@ietf.org>; Wed, 23 Feb 2011 09:34:28 -0800 (PST)
Received: from [98.139.52.194] by nm11.bullet.mail.ac4.yahoo.com with NNFMP; 23 Feb 2011 17:35:11 -0000
Received: from [98.139.52.173] by tm7.bullet.mail.ac4.yahoo.com with NNFMP; 23 Feb 2011 17:35:11 -0000
Received: from [127.0.0.1] by omp1056.mail.ac4.yahoo.com with NNFMP; 23 Feb 2011 17:35:11 -0000
X-Yahoo-Newman-Id: 726877.5430.bm@omp1056.mail.ac4.yahoo.com
Received: (qmail 58053 invoked from network); 23 Feb 2011 17:35:11 -0000
Received: from thunderfish.local (turners@71.191.3.225 with plain) by smtp114.biz.mail.re2.yahoo.com with SMTP; 23 Feb 2011 09:35:11 -0800 PST
X-Yahoo-SMTP: ZrP3VLSswBDL75pF8ymZHDSu9B.vcMfDPgLJ
X-YMail-OSG: bQXRUwMVM1lYOPiBcf3Dt8lHXrsJTteEFhz8HhFNJ1mNJmh .tQWZqAFIXU_B.jteyUavrxmI0m4i8QWkJF3aPrYKVo1ygFQWRp4PjUUJqR9 75PJ2X211fBmthQCPgOTgwDlJG3J0wx6eDHArt5vzYOjpkXzL5r1j4dhCBA3 dTbSU2lfYJqS6Afrg.N7EOnrtI1TiJwIbPQOBMXUf29HUcpiyQMyLfDgYIvG h7e9X4rHyYnopkIfuoPnzO1X2ZGKeiFHP1gDDLthJmM5z8PmrOcdxApuq5tZ NJ8IyzgyShEe8MTaJCU8jkaJvTXWrijk15I2KsBla6GcgyBpZqWNxD0Y0eI6 9sDDr9r1o_1POCjjdChKzR0MjGAc8_r3FhPLI.911hHmWq6Rv0CDHr3JJMnc HYQt32GiB.x4IYWAJXomrzoM9vqid78g-
X-Yahoo-Newman-Property: ymail-3
Message-ID: <4D65454E.2010208@ieca.com>
Date: Wed, 23 Feb 2011 12:35:10 -0500
From: Sean Turner <turners@ieca.com>
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13) Gecko/20101207 Lightning/1.0b2 Thunderbird/3.1.7
MIME-Version: 1.0
To: Bodo Moeller <bmoeller@acm.org>
References: <20100723083243.410E2E0638@rfc-editor.org> <540319A8-AD8A-49F9-B022-9308A65E5E40@acm.org>
In-Reply-To: <540319A8-AD8A-49F9-B022-9308A65E5E40@acm.org>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 8bit
X-Mailman-Approved-At: Wed, 23 Feb 2011 21:59:53 -0800
Cc: tim.polk@nist.gov, bodo@openssl.org, chris@corriente.net, nelson@bolyard.com, vipul.gupta@sun.com, tls@ietf.org
Subject: Re: [TLS] [Technical Errata Reported] RFC4492 (2389)
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: Wed, 23 Feb 2011 17:34:29 -0000

On 7/23/10 5:28 AM, Bodo Moeller wrote:
> On Jul 23, 2010, at 10:32 AM, RFC Errata System wrote:
>
>>
>> The following errata report has been submitted for RFC4492,
>> "Elliptic Curve Cryptography (ECC) Cipher Suites for Transport Layer
>> Security (TLS)".
>>
>> --------------------------------------
>> You may review the report below and at:
>> http://www.rfc-editor.org/errata_search.php?rfc=4492&eid=2389
>>
>> --------------------------------------
>> Type: Technical
>> Reported by: Juho Vähä-Herttua <juhovh@iki.fi>
>>
>> Section: 5.4
>>
>> Original Text
>> -------------
>> point: This is the byte string representation of an elliptic curve
>> point following the conversion routine in Section 4.3.6 of ANSI
>> X9.62 [7]. This byte string may represent an elliptic curve point
>> in uncompressed or compressed format; it MUST conform to what the
>> client has requested through a Supported Point Formats Extension
>> if this extension was used.
>>
>> enum { ec_basis_trinomial, ec_basis_pentanomial } ECBasisType;
>>
>> ec_basis_trinomial: Indicates representation of a characteristic-2
>> field using a trinomial basis.
>>
>> ec_basis_pentanomial: Indicates representation of a
>> characteristic-2 field using a pentanomial basis.
>>
>> Corrected Text
>> --------------
>> point: This is the byte string representation of an elliptic curve
>> point following the conversion routine in Section 4.3.6 of ANSI
>> X9.62 [7]. This byte string may represent an elliptic curve point
>> in uncompressed or compressed format; it MUST conform to what the
>> client has requested through a Supported Point Formats Extension
>> if this extension was used.
>>
>> enum {
>> ec_basis_trinomial(1), ec_basis_pentanomial(2),
>> (255)
>> } ECBasisType;
>>
>> ec_basis_trinomial: Indicates representation of a characteristic-2
>> field using a trinomial basis.
>>
>> ec_basis_pentanomial: Indicates representation of a
>> characteristic-2 field using a pentanomial basis.
>>
>> Notes
>> -----
>> The ECBasisType enumeration is submitted as part of the ECParameters
>> structure and therefore needs numerical values. It is common to assign
>> numerical values starting from 1 to enums and maximum value of 255
>> should be enough, since currently there are only two known basis types
>> and it is unlikely to change in the near future.
>
> Thanks, Juho. Yes, the RFC text is wrong in not assigning enum values
> here, and the values that you suggest (1 and 2, with extra value 255 to
> clearly state the intended width) are the ones that the specification
> would have used.
>
> Using enum values 0 and 1 would have been equally possible, but this RFC
> tends to avoid value 0, except when specifying point compression in
> ECPointFormat, where 0 denotes the special "no compression" default. For
> ECBasisType, there's no similar special default.
>
> The implementations I'm aware of so far only provide named curves, i.e.
> ECBasisType is never actually encoded on the wire. If anyone knows an
> existing implementation supporting explicit characteristic-2 curves, I'd
> be glad to hear how it handles this issue -- I'd expect it would be
> using the enum values 1 and 2 as suggested here, but in case 0 and 1 are
> in actual use somewhere, we'd have to think about maintaining
> compatibility.
>
> Bodo

Bodo,

Finally getting around to this.  The question is whether the enum values 
are converted to external representation.  If they are not then it's 
okay that they're not there as 4.5 of TLS says:

   For enumerateds that are never converted to external representation,
   the numerical information may be omitted.

Are they converted?

There are two other places where enums aren't given values:

   enum { ec_basis_trinomial, ec_basis_pentanomial } ECBasisType;

and

   enum { implicit, explicit } PublicValueEncoding;

Should these also be changed?

spt

>
>
>>
>> Instructions:
>> -------------
>> This errata is currently posted as "Reported". If necessary, please
>> use "Reply All" to discuss whether it should be verified or
>> rejected. When a decision is reached, the verifying party (IESG)
>> can log in to change the status and edit the report, if necessary.
>>
>> --------------------------------------
>> RFC4492 (draft-ietf-tls-ecc-12)
>> --------------------------------------
>> Title : Elliptic Curve Cryptography (ECC) Cipher Suites for Transport
>> Layer Security (TLS)
>> Publication Date : May 2006
>> Author(s) : S. Blake-Wilson, N. Bolyard, V. Gupta, C. Hawk, B. Moeller
>> Category : INFORMATIONAL
>> Source : Transport Layer Security
>> Area : Security
>> Stream : IETF
>> Verifying Party : IESG
>
>