Re: [certid] open issue: wildcards in component fragments

Peter Saint-Andre <stpeter@stpeter.im> Wed, 13 October 2010 01:32 UTC

Return-Path: <stpeter@stpeter.im>
X-Original-To: certid@core3.amsl.com
Delivered-To: certid@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D4EA93A689A for <certid@core3.amsl.com>; Tue, 12 Oct 2010 18:32:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.542
X-Spam-Level:
X-Spam-Status: No, score=-102.542 tagged_above=-999 required=5 tests=[AWL=0.057, BAYES_00=-2.599, 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 ePebRRr+QQZK for <certid@core3.amsl.com>; Tue, 12 Oct 2010 18:32:27 -0700 (PDT)
Received: from stpeter.im (stpeter.im [207.210.219.233]) by core3.amsl.com (Postfix) with ESMTP id 9A3BB3A686A for <certid@ietf.org>; Tue, 12 Oct 2010 18:32:27 -0700 (PDT)
Received: from squire.local (dsl-140-58.dynamic-dsl.frii.net [216.17.140.58]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 5716540077; Tue, 12 Oct 2010 19:40:27 -0600 (MDT)
Message-ID: <4CB50C74.8020507@stpeter.im>
Date: Tue, 12 Oct 2010 19:33:40 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.9) Gecko/20100915 Thunderbird/3.1.4
MIME-Version: 1.0
To: Matt McCutchen <matt@mattmccutchen.net>
References: <201010122334.o9CNYLVL008766@fs4113.wdf.sap.corp> <1286927514.1979.13.camel@mattlaptop2.local> <4CB4FEAE.3090700@stpeter.im> <1286932209.1979.22.camel@mattlaptop2.local>
In-Reply-To: <1286932209.1979.22.camel@mattlaptop2.local>
X-Enigmail-Version: 1.1.1
OpenPGP: url=http://www.saint-andre.com/me/stpeter.asc
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Cc: certid@ietf.org
Subject: Re: [certid] open issue: wildcards in component fragments
X-BeenThere: certid@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Representation and verification of identity in certificates <certid.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/certid>, <mailto:certid-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/certid>
List-Post: <mailto:certid@ietf.org>
List-Help: <mailto:certid-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/certid>, <mailto:certid-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 13 Oct 2010 01:32:33 -0000

On 10/12/10 7:10 PM, Matt McCutchen wrote:
> On Tue, 2010-10-12 at 18:34 -0600, Peter Saint-Andre wrote:
>> On 10/12/10 5:51 PM, Matt McCutchen wrote:
>>> On Wed, 2010-10-13 at 01:34 +0200, Martin Rex wrote:
>>>> I consider the conservative approach of MSIE/SChannel and Firefox to
>>>> allow a tail wildcard on the leftmost DNS label, in addition to a
>>>> full wildcard, sensitive risk management combined with minimal complexity.
>>>
>>> As I said before, I don't think this "risk management" argument is real.
>>> CAs are responsible for not giving an entity a certificate that matches
>>> names the entity does not own.  Why should we believe they are any more
>>> likely to mess up via wildcards than, e.g., by setting the basic
>>> constraint "CA: true"?
>>
>> Matt, what conclusion do you draw from your statement? IMHO it might
>> lead to the conclusion that it doesn't matter what we put in the
>> left-most label -- or even the conclusion that we don't need to restrict
>> the location of the wildcard (e.g., foo.*.example.com or even
>> *.*.example.com is fine) -- as long as the CA issues a certificate that
>> matches a name the entity owns.
> 
> That's right from the perspective of "risk management".  All I wanted to
> do was put that argument aside. 

I see, and I agree.

> There are other arguments to consider,
> e.g., "simpler" algorithms are easier to implement and more likely to be
> implemented correctly, 

That seems to be the operative consideration. Martin claimed that it is
a "conservative approach ... to allow a tail wildcard on the leftmost
DNS label" but RFC 2818 doesn't say anything about a "tail wildcard"
(e.g., foo*):

   Names may contain the wildcard
   character * which is considered to match any single domain name
   component or component fragment. E.g., *.a.com matches foo.a.com but
   not bar.foo.a.com. f*.com matches foo.com but not bar.com.

Yes, the example here shows a tail wildcard, but as far as I can see the
rule of allowing the wildcard character in a component fragment does not
restrict '*' to the tail -- it could just as well be a "front wildcard"
(e.g., *oo) or a "middle wildcard" (e.g., f*o). All of these increase
the complexity of the matching algorithm, for very little if any gain
that I can see.

> and compatibility with specifications that might
> want to update to reference tls-server-id-check.

Well, that's not a legitimate argument because it begs the question. :)

Peter

-- 
Peter Saint-Andre
https://stpeter.im/