Re: [TLS] Ignoring unrecognized extensions

Michael D'Errico <mike-list@pobox.com> Tue, 22 June 2010 18:23 UTC

Return-Path: <mike-list@pobox.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 4CF643A683F for <tls@core3.amsl.com>; Tue, 22 Jun 2010 11:23:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.784
X-Spam-Level:
X-Spam-Status: No, score=-1.784 tagged_above=-999 required=5 tests=[AWL=0.815, BAYES_00=-2.599]
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 vmmkdJSSbJe5 for <tls@core3.amsl.com>; Tue, 22 Jun 2010 11:23:48 -0700 (PDT)
Received: from sasl.smtp.pobox.com (a-pb-sasl-quonix.pobox.com [208.72.237.25]) by core3.amsl.com (Postfix) with ESMTP id C37833A67D1 for <tls@ietf.org>; Tue, 22 Jun 2010 11:23:48 -0700 (PDT)
Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id 0B7DABED9D; Tue, 22 Jun 2010 14:23:56 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=message-id :date:from:mime-version:to:cc:subject:references:in-reply-to :content-type:content-transfer-encoding; s=sasl; bh=6+YAEunQNpW0 X9k2zkPMvHC6CvY=; b=NYnwyFQIxrLOxFbwUlqWYcdUDWUb9A/LeU+iRWOalYMf w5xnIEQA6QrxUThMn5TmzjDgmgaTPBhPeSjR2v2RPIBvLSNA+P+0vfkUxjhzrV0+ S4y5Jb4Vhl5j1IRtApjLdPN/q/ARlPHLlld6FUsUj4G9f6vuefusGWoYQxd30Rg=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=message-id:date :from:mime-version:to:cc:subject:references:in-reply-to :content-type:content-transfer-encoding; q=dns; s=sasl; b=rcOYTm ZL63kCKySPdlD8wjCyyAPpasE+Bf+0EwNEgahS28IM0eyYEoC3vCkVMFRoRanPWw dHsnw35qH3LISjV/uVr4Xm/87NlPGYK7E1VvTSH/bw7jm60qljT9k35DcV7PSDmC 9fSBZCJ+1UAGfGXdotTz1rdus7rsM5U1gLkZE=
Received: from a-pb-sasl-quonix. (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id ECB76BED9B; Tue, 22 Jun 2010 14:23:54 -0400 (EDT)
Received: from administrators-macbook-pro.local (unknown [24.234.114.35]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTPSA id 12F54BED97; Tue, 22 Jun 2010 14:23:52 -0400 (EDT)
Message-ID: <4C20FFB8.7010802@pobox.com>
Date: Tue, 22 Jun 2010 11:23:52 -0700
From: Michael D'Errico <mike-list@pobox.com>
User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812)
MIME-Version: 1.0
To: Matt McCutchen <matt@mattmccutchen.net>
References: <1277227659.1945.60.camel@mattlaptop2.local>
In-Reply-To: <1277227659.1945.60.camel@mattlaptop2.local>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Pobox-Relay-ID: 50D7DA18-7E2B-11DF-97FE-9056EE7EF46B-38729857!a-pb-sasl-quonix.pobox.com
Cc: tls@ietf.org
Subject: Re: [TLS] Ignoring unrecognized extensions
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: Tue, 22 Jun 2010 18:23:50 -0000

Matt McCutchen wrote:
> 
> I think it is the intent of RFC 5246 that a TLS server, in addition to
> tolerating an "extensions" field in the ClientHello that is nonempty as
> a whole, MUST ignore individual extensions that it does not recognize.
> However, I cannot find this stated anywhere in RFC 5246.  Am I missing
> something?  Would this be worthy of an erratum?

That is indeed how extensions are supposed to work.  If a server does
not recognize a particular extension it ignores it.  The server hello
will not contain a response, so the client then has the option to abort
or to continue the handshake without the use of the behavior defined by
that extension.

I don't know if there's still time to sneak this into RFC 4366++.

Mike