Re: [TLS] TLS 1.2 hash agility

Mike <mike-list@pobox.com> Fri, 14 September 2007 22:50 UTC

Return-path: <tls-bounces@lists.ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1IWJzi-0006hx-C1; Fri, 14 Sep 2007 18:50:38 -0400
Received: from [10.90.34.44] (helo=chiedprmail1.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1IWJzh-0006hp-4p for tls@ietf.org; Fri, 14 Sep 2007 18:50:37 -0400
Received: from sceptre.pobox.com ([207.106.133.20]) by chiedprmail1.ietf.org with esmtp (Exim 4.43) id 1IWJzg-0000LC-Ou for tls@ietf.org; Fri, 14 Sep 2007 18:50:36 -0400
Received: from sceptre (localhost.localdomain [127.0.0.1]) by sceptre.pobox.com (Postfix) with ESMTP id EFDA12EF for <tls@ietf.org>; Fri, 14 Sep 2007 18:50:57 -0400 (EDT)
Received: from [192.168.1.8] (wsip-24-234-114-35.lv.lv.cox.net [24.234.114.35]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by sceptre.sasl.smtp.pobox.com (Postfix) with ESMTP id BF6C77EE1D for <tls@ietf.org>; Fri, 14 Sep 2007 18:50:57 -0400 (EDT)
Message-ID: <46EB102E.2070900@pobox.com>
Date: Fri, 14 Sep 2007 15:50:22 -0700
From: Mike <mike-list@pobox.com>
User-Agent: Thunderbird 2.0.0.6 (Windows/20070728)
MIME-Version: 1.0
To: tls@ietf.org
Subject: Re: [TLS] TLS 1.2 hash agility
References: <46ABB82D.8090709@pobox.com> <46ACCCCB.8000201@pobox.com> <B356D8F434D20B40A8CEDAEC305A1F24046B2496@esebe105.NOE.Nokia.com> <20070914215611.0342933C21@delta.rtfm.com>
In-Reply-To: <20070914215611.0342933C21@delta.rtfm.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 69a74e02bbee44ab4f8eafdbcedd94a1
Cc:
X-BeenThere: tls@lists.ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.lists.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@lists.ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/tls>
List-Post: <mailto:tls@lists.ietf.org>
List-Help: <mailto:tls-request@lists.ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@lists.ietf.org?subject=subscribe>
Errors-To: tls-bounces@lists.ietf.org

>>> I think the solution we need is to specifically list each supported
>>> signature algorithm, e.g.
>>>
>>>      enum {
>>>        rsa_with_md5(0),    rsa_with_sha1(1),
>>>        rsa_with_sha256(2), rsa_with_sha384(3),
>>>        rsa_with_sha512(4), dsa_with_sha1(5),
>>>        (65535)
>>>      };
>>
>> And then we could change Signature structure to
>>
>>    struct {
>>       SignatureAlgorithm signature_algorithm;
>>       opaque signature_value<0..2^16-1>;
>>    } Signature;  
>>
>> Eric, what's your opinion?
> 
> OK, I started trying to wire this into TLS and it's messy.
> There are three contexts we have to think about:
> 
> - Certs (from either side)
> - CertificateVerify
> - ServerKeyExchange
> 
> The difficulty is that the latter two already have signals indicating
> what acceptable signature algorithms are, in the ClientCertificateType,
> and the ciphersuite respectively. So, we either need to significantly
> reconstruct those or have duplication of information, with the 
> result that you have to potentially deal with mismatched information,
> e.g., only offering RSA in the SKE, but offering RSA and DSA in the
> new value.

I think this information is disjoint.  For example, you can have a DSA
key in a certificate that is signed by RSA/SHA-1.

Mike

_______________________________________________
TLS mailing list
TLS@lists.ietf.org
https://www1.ietf.org/mailman/listinfo/tls