Re: [certid] DC should be MUST NOT

Bruno Harbulot <Bruno.Harbulot@manchester.ac.uk> Sat, 12 June 2010 11:01 UTC

Return-Path: <Bruno.Harbulot@manchester.ac.uk>
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 C22203A6914 for <certid@core3.amsl.com>; Sat, 12 Jun 2010 04:01:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.399
X-Spam-Level:
X-Spam-Status: No, score=-0.399 tagged_above=-999 required=5 tests=[BAYES_50=0.001, J_CHICKENPOX_12=0.6, RCVD_IN_DNSWL_LOW=-1]
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 npghdUczMqUU for <certid@core3.amsl.com>; Sat, 12 Jun 2010 04:01:42 -0700 (PDT)
Received: from serenity.mcc.ac.uk (serenity.mcc.ac.uk [130.88.200.93]) by core3.amsl.com (Postfix) with ESMTP id 2361F3A67DB for <certid@ietf.org>; Sat, 12 Jun 2010 04:01:41 -0700 (PDT)
Received: from kelvin.its.manchester.ac.uk ([130.88.25.195]) by serenity.mcc.ac.uk with esmtps (TLSv1:AES256-SHA:256) (Exim 4.69 (FreeBSD)) (envelope-from <Bruno.Harbulot@manchester.ac.uk>) id 1ONOT8-0007oE-3R for certid@ietf.org; Sat, 12 Jun 2010 12:01:42 +0100
Received: from 94-192-243-24.zone6.bethere.co.uk ([94.192.243.24]:51867 helo=mymachine) by kelvin.its.manchester.ac.uk with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <Bruno.Harbulot@manchester.ac.uk>) id 1ONOT7-0007WC-Rt for certid@ietf.org; Sat, 12 Jun 2010 12:01:42 +0100
Message-ID: <4C136915.8070402@manchester.ac.uk>
Date: Sat, 12 Jun 2010 12:01:41 +0100
From: Bruno Harbulot <Bruno.Harbulot@manchester.ac.uk>
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Lightning/1.0b1 Thunderbird/3.0.4
MIME-Version: 1.0
To: certid@ietf.org
References: <p062408bdc838812e2e91@[10.20.30.158]>
In-Reply-To: <p062408bdc838812e2e91@[10.20.30.158]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
X-Authenticated-Sender: Bruno Harbulot from 94-192-243-24.zone6.bethere.co.uk (mymachine) [94.192.243.24]:51867
X-Authenticated-From: Bruno.Harbulot@manchester.ac.uk
Subject: Re: [certid] DC should be MUST NOT
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: Sat, 12 Jun 2010 11:01:43 -0000

On 12/06/2010 01:12, Paul Hoffman wrote:
>>    6.  The certificate SHOULD NOT represent the server's fully-qualified
>>        DNS domain name by means of a DC-ID, i.e., a series of Domain
>>        Component (DC) attributes in the certificate subject, with one
>>        RDN per domain label and one DC in each RDN.  Although (for
>>        example)<dc=www,dc=example,dc=com>  could be used to represent
>>        the DNS domain name "www.example.com", given the fact that the
>>        DNS-ID can be used instead, the DC-ID is NOT RECOMMENDED.
>
> This should be a MUST NOT. And the reason for the prohibition is not "DNS-ID can be used instead", but rather "this is insecure because you can interpret the series of RDNs incorrectly".
>

On this topic in 2.2.5 and 2.2.6, as Peter Sylvester and I said earlier 
in [1] and [2], I don't think using the word 'represent' is right here.

Currently, certificates that have been emitted with the aim that tools 
will verify them according to RFC 2818 and that have a subject 
alternative name, what's in the subject distinguished name (including 
CN) is more or less decorative (with respect to the validation of the 
identity of the server).

In this case, CN=host.name is still quite convenient to have, for humans 
to be able to sort their certificates. Maybe it's just me, but I keep my 
backups of my server certificates in tools such as OSX keychains, 
security stores in the browser or PKCS#12 files. The tools associated 
with them tend not to display anything about the subject alternative 
name in their listings (in terms of user interface) and I guess that's 
not going to change any time soon. (I guess larger systems could also 
use some sort of LDAP browser for example, in a similar way.)
CN=host.name there is convenient, and it doesn't really get in the way 
of checking the identity of the remote server by an actual client when 
there's a subject alt. name (so long as the rules specify to ignore CN 
when there is an alt. name).

For this reason, I'm not sure why you'd want to forbid CN=host.name 
(whatever its RDN position is) in such a certificate.

The problem with the way I understand 'represent' in this context, is 
that you don't really know whether the CA put the CN in the subject DN 
as an indication (after all, it's a "common name") or with the intent it 
would be used by clients for verification.


Which one of these would be OK?

1. Subject DN    :  C=UK,CN=the host name is host.name,E=example@example.com
    SubjectAltName:  DNS:host.name

    Here, the certificate doesn't "represent" the host name in the CN 
(it's another string instead)


2. Subject DN    :  C=UK,CN=host.name,E=example@example.com
    SubjectAltName:  DNS:host.name

    Here, the certificate "represents" the host name. Does it really, or 
is it just an indication as above?



The structure of the subject DNs tend to follow some nomenclature 
internal to the CA. I'm not sure this specification should interfere 
with that when the subject DN is made somehow irrelevant by the presence 
of a subject alternative name.


Best wishes,

Bruno.


[1] http://www.ietf.org/mail-archive/web/certid/current/msg00091.html
[2] http://www.ietf.org/mail-archive/web/certid/current/msg00052.html