Re: [saag] [Cfrg] Further MD5 breaks: Creating a rogue CAcertificate

Stephen Kent <kent@bbn.com> Tue, 06 January 2009 02:56 UTC

Return-Path: <saag-bounces@ietf.org>
X-Original-To: saag-archive@ietf.org
Delivered-To: ietfarch-saag-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 501F33A6953; Mon, 5 Jan 2009 18:56:36 -0800 (PST)
X-Original-To: saag@core3.amsl.com
Delivered-To: saag@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 8BF6E28C0CE; Mon, 5 Jan 2009 18:56:34 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.567
X-Spam-Level:
X-Spam-Status: No, score=-2.567 tagged_above=-999 required=5 tests=[AWL=0.032, 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 kdfyzHWEtUwo; Mon, 5 Jan 2009 18:56:33 -0800 (PST)
Received: from mx11.bbn.com (mx11.bbn.com [128.33.0.80]) by core3.amsl.com (Postfix) with ESMTP id 9CD753A6835; Mon, 5 Jan 2009 18:56:33 -0800 (PST)
Received: from dommiel.bbn.com ([192.1.122.15] helo=[10.16.95.209]) by mx11.bbn.com with esmtp (Exim 4.60) (envelope-from <kent@bbn.com>) id 1LK26z-0000cO-DW; Mon, 05 Jan 2009 21:56:09 -0500
Mime-Version: 1.0
Message-Id: <p06240804c5887593febc@[10.16.95.209]>
In-Reply-To: <496214E9.6010902@mitre.org>
References: <495BA5E9.8040305@pobox.com> <E1LILYj-00066V-WE@wintermute01.cs.auckland.ac.nz> <1b587cab0901010706j6e8cd2f8pf23345660a4825a5@mail.gmail.com><p06240824c58 2ab4501d1@[10.20.30.158]> <495D0100.6000200@links.org> <FAD1CF17F2A45B43ADE04E140BA83D489365F1@scygexch1.cygnacom.com> <495D1C0A.2080105@links.org> <496214E9.6010902@mitre.org>
Date: Mon, 05 Jan 2009 21:53:15 -0500
To: "Timothy J. Miller" <tmiller@mitre.org>
From: Stephen Kent <kent@bbn.com>
Cc: "cfrg@irtf.org" <cfrg@irtf.org>, "ietf-smime@imc.org" <ietf-smime@imc.org>, "saag@ietf.org" <saag@ietf.org>, "ietf-pkix@imc.org" <ietf-pkix@imc.org>, Santosh Chokhani <SChokhani@cygnacom.com>, "mike-list@pobox.com" <mike-list@pobox.com>
Subject: Re: [saag] [Cfrg] Further MD5 breaks: Creating a rogue CAcertificate
X-BeenThere: saag@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Security Area Advisory Group <saag.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/saag>, <mailto:saag-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/saag>
List-Post: <mailto:saag@ietf.org>
List-Help: <mailto:saag-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/saag>, <mailto:saag-request@ietf.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: saag-bounces@ietf.org
Errors-To: saag-bounces@ietf.org

At 8:10 AM -0600 1/5/09, Timothy J. Miller wrote:
>Ben Laurie wrote:
>
>>I am not suggesting that we should fix X.509, I am pointing out, in my
>>own roundabout way, that X.509 certs are supposed to have a canonical
>>form. But it seems they do not.
>
>That was last month's major discussion on PKIX.  The upshot: there's 
>no canonical form other than what's in memory.
>
>-- Tim

Tim,

Your response is an oversimplification, in several respects.

Ben's comment was a bit ill-formed. It's not that certs in general do 
or do not have a canonical form, but whether a given cert has a 
canonical representation. If the cert has no extensions, then it 
does. If it has extensions, then since the top level extension syntax 
is a SEQUENCE, there the order of extensions in that sequence (when 
the cert was signed) is definitive. (if that syntax had called for a 
SET, then  DER encoding would impose an order at this level, so use 
of the SEQUENCE construct here make life a bit easier.)

The context in which there is some disagreement is whether an 
extension needs to be DER encoded below the next level, where it is 
defined as an OCTET string. If one stops at the OCTET string level, 
the  life is easy and an RP can always encode to DER upon receipt 
(since the base cert format IS known by all RPs and they are 
technically capable of encoding it in DER).

If one interprets X.509 to require DER for the lower levels of the 
structure of a cert extension, then a problem can arise. It was noted 
that a non-critical extension (which therefore ought not be rejected 
out of hand by an RP) might have a syntax unknown to an RP. Thus the 
RP needs to assume that what it received is DER encoded when 
computing the signature, as it has no way to recompute the DER.

Steve
_______________________________________________
saag mailing list
saag@ietf.org
https://www.ietf.org/mailman/listinfo/saag