David, I found the following in X.509: "If unknown elements appear within the extension, and the extension is not marked critical, those unknown elements shall be ignored according to the rules of extensibility documented in 12.2.2 in ITU T Rec. X.519 | ISO/IEC 9594-5". I would say that this implies through corollary that if there are elements that can not be processed in a critical extension, the certificate must be rejected. That said, you have to be logical about this stuff. For example, for EKU, if your EKU is present, even if you do not recognize others, you should use the certificate. The standard has specific language regarding unrecognized name forms in the SAN extension. I would say that the guidance is incomplete. If a name form is not recognized and that name form is constrained via prior certificates in the certification path, you must reject the certificate. You must be able to process all the name forms asserted in the name constraints extension. In general, I think the rule in X.509 may be generic and specific fields have rules except that SAN rule may be incomplete. -----Original Message----- From: x500standard-bounce@xxxxxxxxxxxxx [mailto:x500standard-bounce@xxxxxxxxxxxxx] On Behalf Of David Chadwick Sent: Monday, June 23, 2008 4:34 AM To: x500standard@xxxxxxxxxxxxx Subject: [x500standard] Lack of clarity in X.509 Dear All A colleague has been testing how various browsers behave when faced with SSL certificates with various extensions marked critical or not-critical. He has found that the browsers behave in different ways. He says that one of the problems is that the standard is not specific enough on how the browsers should behave in all circumstances. Here is one scenario to consider. An extension is marked critical and the RP software understands the extension but only implements part of it (say it has an OID for describing elements of it, or it is a set of choices). Does the text in X.509 say how the RP should handle this? I think not. Should the unknown parts of the extension be ignored or should the entire certificate be rejected? e.g. the extension is Subject Alt Names and some of the names are understood and some are not. As a side issue, an RP can decide to accept any certificate, regardless of what the CA says in the certificate (and some browsers allow the user to do this). In this case the CA wont accept any liability and the RP is acting outside the standard. But is this stated clearly enough in the standard? regards David -- ***************************************************************** David W. Chadwick, BSc PhD Professor of Information Systems Security The Computing Laboratory, University of Kent, Canterbury, CT2 7NF Skype Name: davidwchadwick Tel: +44 1227 82 3221 Fax +44 1227 762 811 Mobile: +44 77 96 44 7184 Email: D.W.Chadwick@xxxxxxxxxx Home Page: http://www.cs.kent.ac.uk/people/staff/dwc8/index.html Research Web site: http://www.cs.kent.ac.uk/research/groups/iss/index.html Entrust key validation string: MLJ9-DU5T-HV8J PGP Key ID is 0xBC238DE5 ***************************************************************** ----- www.x500standard.com: The central source for information on the X.500 Directory Standard. ----- www.x500standard.com: The central source for information on the X.500 Directory Standard.