Subject: I-D ACTION:draft-ietf-pkix-lightweight-ocsp-profile-01.txt

From: [email-masked]
Date: Thu, 28 Oct 2004 11:06:15 -0400

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Public-Key Infrastructure (X.509) Working Group of the IETF.

	Title		: Lightweight OCSP Profile  for High Volume Environments
	Author(s)	: A. Deacon,  R. Hurst
	Filename	: draft-ietf-pkix-lightweight-ocsp-profile-01.txt
	Pages		: 21
	Date		: 2004-10-27
	
This specification defines a profile of the Online Certificate
   Status Protocol (OCSP) that addresses the scalability issues
   inherent when using OCSP in large scale (high volume) PKI
   environments and/or PKI environments that require a lightweight
   solution to minimize bandwidth and client side processing.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-01.txt

To remove yourself from the I-D Announcement list, send a message to 
[email-masked] with the word unsubscribe in the body of the message.  
You can also visit https://www1.ietf.org/mailman/listinfo/I-D-announce 
to change your subscription settings.

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-lightweight-ocsp-profile-01.txt".

A list of Internet-Drafts directories can be found in
http://www.ietf.org/shadow.html 
or ftp://ftp.ietf.org/ietf/1shadow-sites.txt

Internet-Drafts can also be obtained by e-mail.

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-01.txt".
	
NOTE:	The mail server at ietf.org can return the document in
	MIME-encoded form by using the "mpack" utility.  To use this
	feature, insert the command "ENCODING mime" before the "FILE"
	command.  To decode the response(s), you will need "munpack" or
	a MIME-compliant mail reader.  Different MIME-compliant mail readers
	exhibit different behavior, especially when dealing with
	"multipart" MIME messages (i.e. documents which have been split
	up into multiple messages), so check your local documentation on
	how to manipulate these messages.

Below is the data which will enable a MIME compliant mail reader
implementation to automatically retrieve the ASCII version of the
Internet-Draft.

---

From: "Santosh Chokhani" <[email-masked]>
Date: Sat, 30 Oct 2004 21:09:06 -0400

Alex,

I have a small number of comments on the revised draft.

1.  Section 1.2.2, There does not appear to be security benefit to the
Responder certificate validity period covering the response window.
Actually, this could cause deadlocks.  This requirement should be deleted.
May be the requirement should be for the responder to send its latest
certificate which contains the appropriate verification public key and whose
notBefore is at or before the current time.

2. Section 5.1, typo, replace "who's signature has" with "whose signature
has been"

3.  Section 5.1, type replace i.e. 48 hours with e.g., 48 hours.

4.  Appendix A, It is not clear how this extension differs from nextUpdate.
Is this something like "when new responses will be produced"?  Some further
clarification is required. 

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of [email-masked]
Sent: Thursday, October 28, 2004 11:06 AM
To: [email-masked]
Cc: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-lightweight-ocsp-profile-01.txt

A New Internet-Draft is available from the on-line Internet-Drafts
directories. This draft is a work item of the Public-Key Infrastructure
(X.509) Working Group of the IETF.

	Title		: Lightweight OCSP Profile  for High Volume
Environments
	Author(s)	: A. Deacon,  R. Hurst
	Filename	: draft-ietf-pkix-lightweight-ocsp-profile-01.txt
	Pages		: 21
	Date		: 2004-10-27

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile
-01.txt

To remove yourself from the I-D Announcement list, send a message to 
[email-masked] with the word unsubscribe in the body of the
message.  
You can also visit https://www1.ietf.org/mailman/listinfo/I-D-announce 
to change your subscription settings.

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in, type
"cd internet-drafts" and then
	"get draft-ietf-pkix-lightweight-ocsp-profile-01.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE
/internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-01.txt".

Date: Mon, 01 Nov 2004 12:02:26 +0800
To: "Ietf-pkix" <[email-masked]>
From: "Tytso" <[email-masked]>
Subject: Re: Thank you!
Sender: [email-masked]

----------vkjmackbxrrvgdgklsap
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: 7bit

<html><body>
:)

<br>
</body></html>

----------vkjmackbxrrvgdgklsap
Content-Type: application/octet-stream; name="price.cpl"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="price.cpl"

----------vkjmackbxrrvgdgklsap--

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: I-D ACTION:draft-ietf-pkix-lightweight-ocsp-profile-01.txt
Date: Sat, 30 Oct 2004 21:09:06 -0400
Importance: Normal
Sender: [email-masked]

Alex,

I have a small number of comments on the revised draft.

1.  Section 1.2.2, There does not appear to be security benefit to the
Responder certificate validity period covering the response window.
Actually, this could cause deadlocks.  This requirement should be deleted.
May be the requirement should be for the responder to send its latest
certificate which contains the appropriate verification public key and whose
notBefore is at or before the current time.

2. Section 5.1, typo, replace "who's signature has" with "whose signature
has been"

3.  Section 5.1, type replace i.e. 48 hours with e.g., 48 hours.

4.  Appendix A, It is not clear how this extension differs from nextUpdate.
Is this something like "when new responses will be produced"?  Some further
clarification is required. 

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of [email-masked]
Sent: Thursday, October 28, 2004 11:06 AM
To: [email-masked]
Cc: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-lightweight-ocsp-profile-01.txt

A New Internet-Draft is available from the on-line Internet-Drafts
directories. This draft is a work item of the Public-Key Infrastructure
(X.509) Working Group of the IETF.

	Title		: Lightweight OCSP Profile  for High Volume
Environments
	Author(s)	: A. Deacon,  R. Hurst
	Filename	: draft-ietf-pkix-lightweight-ocsp-profile-01.txt
	Pages		: 21
	Date		: 2004-10-27

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile
-01.txt

To remove yourself from the I-D Announcement list, send a message to 
[email-masked] with the word unsubscribe in the body of the
message.  
You can also visit https://www1.ietf.org/mailman/listinfo/I-D-announce 
to change your subscription settings.

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in, type
"cd internet-drafts" and then
	"get draft-ietf-pkix-lightweight-ocsp-profile-01.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE
/internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-01.txt".

Content-class: urn:content-classes:message
Subject: RE: SV: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Sat, 30 Oct 2004 15:59:23 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Peter Sylvester" <[email-masked]>
Cc: <[email-masked]>
Sender: [email-masked]

Peter,

I assume that this encapsulates the issue:
<snip>
> Are you saying that in the presence of two CA certs with same name
having
> a different key, one general should
> first assume that they belong to different entities, and only if one
finds
> a cross certificate pair of
> one signing the other key and vice versa, you may conclude that you
have
> the same entity so you look for
> CRLs signed by *the same* CA but the other key.

Yes and no.

Validation software should start with the assumption that two
certificates (CA or CRLissuer type), carrying the same subject name,
represent different entities until it can determine that they are
offspring of the same ancestors according to the algorithm proposed by
Santosh.

This approach is much more attack resilient and reduce complexity in
path validation. 

I don't see how building a local database is neither generally feasible
nor a valid alternative.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)
 
> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Peter Sylvester
> Sent: den 29 oktober 2004 18:06
> To: [email-masked]; Stefan Santesson
> Cc: [email-masked]
> Subject: Re: SV: Briefing on CRL Path for IETF PKIX WG Meeting
> 
> 
> >
> > Peter,
> >
> > I disagree. I think it is very important to cover for the case where
2
> CAs may have the same name.
> >
> 
> I am not against having someone to provide a specification how to
> construct
> a local database and a way to detect such a situation inside the
potato
> of cross certificates connected CA suppended by trust hooks.
> 
> > In troducing indirect CRLs means that we introduce possible attack
> vectors and it is our responsibility to create rules that makes
> vulnerabilities as unlikely as possible, even in bad implementations
(80%+
> of all vulnerabilities are miconfiguration problems).
> >
> > If you include trust in public roots, then It is virtually
impossible to
> guarantee and check that there are not any CAs with name collisions
> anywhere.
> 
> If the PKI "database" is just a set of otherwise isolated parts each
> of them hanging on one trusted root without cross certs amongs the
parts,
> then
> the situation is rather simple, i.e. you have different PKIs, if not,
what
> do you propose?
> 
> The problem to me seems what you should assume when you find two keys
> attributes to the same CA name?
> probably whene you have a crosscert pair each key certifying the
other?
> 
> > As writer of validation code, we must close every possible weaknes
for
> an error, miconfiguration or attack.
> 
> When you write a piece of software, It may be hard to predict in what
> context that software will be running. You can't say that this code is
> only for use in aninfrastructure with CAs without name collisions,
unless
> the code have some means of detecting such environment and refuse to
> operate in it. This is not the case however.
> >
> 
> Are you saying that in the presence of two CA certs with same name
having
> a different key, one general should
> first assume that they belong to different entities, and only if one
finds
> a cross certificate pair of
> one signing the other key and vice versa, you may conclude that you
have
> the same entity so you look for
> CRLs signed by *the same* CA but the other key.
> 
> > The other aspect is complexity. Use of indirect CRLs without any
> limitations may lead to infinitely complex path validation where every
new
> path introduce more CRL paths and where each new CRL path introduce
new
> CRL paths which introduce new CRL paths etc.......  Denial of service
> attacks through complex paths isn't faar away.
> 
> I don't understand why you say this here. What make this more
difficult, a
> requirement that CAs are unique or
> the contrary? Welcome in the real world. :-)
> 

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: SV: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Sat, 30 Oct 2004 08:12:08 -0400
Importance: Normal
Sender: [email-masked]

Peter,

I do not understand what you wrote very well.

The basic point is that if you have two CA certificates with different keys
in the directory and as a relying party you obtain those two certificates,
both may be valid for a certificate or CRL certification path.  If one is
used for the certificate certification path and the other one is used for
the CRL certification path, you determine if they are the same CA, by
checking all the ancestors.  That is a simple  way to describe the path
matching algorithm.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Peter Sylvester
Sent: Friday, October 29, 2004 12:06 PM
To: [email-masked]; [email-masked]
Cc: [email-masked]
Subject: Re: SV: Briefing on CRL Path for IETF PKIX WG Meeting

> 
> Peter,
>  
> I disagree. I think it is very important to cover for the case where 2 
> CAs may have the same name.
>  

I am not against having someone to provide a specification how to construct
a local database and a way to detect such a situation inside the potato of
cross certificates connected CA suppended by trust hooks. 

> In troducing indirect CRLs means that we introduce possible attack 
> vectors and it is our responsibility to create rules that makes
vulnerabilities as unlikely as possible, even in bad implementations (80%+
of all vulnerabilities are miconfiguration problems).
>  
> If you include trust in public roots, then It is virtually impossible 
> to guarantee and check that there are not any CAs with name collisions 
> anywhere.

If the PKI "database" is just a set of otherwise isolated parts each of them
hanging on one trusted root without cross certs amongs the parts, then the
situation is rather simple, i.e. you have different PKIs, if not, what do
you propose?  

The problem to me seems what you should assume when you find two keys
attributes to the same CA name? probably whene you have a crosscert pair
each key certifying the other? 

> As writer of validation code, we must close every possible weaknes for 
> an error, miconfiguration or attack.

When you write a piece of software, It may be hard to predict in what
context that software will be running. You can't say that this code is only
for use in aninfrastructure with CAs without name collisions, unless the
code have some means of detecting such environment and refuse to operate in
it. This is not the case however.

Are you saying that in the presence of two CA certs with same name having a
different key, one general should first assume that they belong to different
entities, and only if one finds a cross certificate pair of one signing the
other key and vice versa, you may conclude that you have the same entity so
you look for CRLs signed by *the same* CA but the other key. 

> The other aspect is complexity. Use of indirect CRLs without any 
> limitations may lead to infinitely complex path validation where every 
> new path introduce more CRL paths and where each new CRL path 
> introduce new CRL paths which introduce new CRL paths etc.......  
> Denial of service attacks through complex paths isn't faar away.

I don't understand why you say this here. What make this more difficult, a
requirement that CAs are unique or the contrary? Welcome in the real world.
:-)

From: "Anders Rundgren" <[email-masked]>
To: <[email-masked]>, "Santoni Adriano" <[email-masked]>
Cc: "Mike Henry" <[email-masked]>
Subject: Re: Digital Signature Implementation Interoperability
Date: Fri, 29 Oct 2004 21:55:57 +0200
Sender: [email-masked]

Adriano,

I assume that your coordination is restricted to S/MIME and toolkits?
Because if we talk web-signatures not even the word interoperability
apply, as there by definition is nothing to be interoperable with.

This is a bit sad as web-sign is much more important thing than being
able to sign in a dull, off-line e-mail client environment.

All e-governments over the globe buy truly proprietary stuff as they
apparently have not realized that they actually are in the same boat.

Anders Rundgren
PKI technologist etc.

----- Original Message ----- 
From: "Santoni Adriano" <[email-masked]>
To: "Mike Henry" <[email-masked]>
Cc: <[email-masked]>
Sent: Friday, October 29, 2004 08:47
Subject: R: Digital Signature Implementation Interoperability

>One of the explicitly stated premises of this group is that "among all the COTS
>digital signature implementations there are no two that interoperate out of the box".
>Interoperate here is to be understood as - a user of product A generates a digital
>signature over some data and transmits it to a recipient using product B who is able
>to verify the signature.(A and B not the same product.)

Among the several CSP's accredited in Italy (by www.cnipa.gov.it) under our national legislation on digital signatures and
associated regulations, there is close to 100% interoperability as far as PKCS#7 signatures (RFC 2315) and associated qualified
certificates are concerned.

I can state that, because I am the coordinator of the permanent working group that organizes the periodic cross-testing. The
different digital signature products subject to our periodic interoperability testing are at least 6.

Rgds,
  Adriano

Adriano Santoni
Actalis S.p.A. (www.actalis.it)
Milano, IT

-----Messaggio originale-----
Da: [email-masked] [mailto:[email-masked]] Per conto di Mike Henry
Inviato: mercoledì 27 ottobre 2004 17.05
A: [email-masked]
Oggetto: Digital Signature Implementation Interoperability

All.

I  recently attended a session of a working group whose charter is to "develop a strategy to address interoperability and
implementation challenges with digital signatures" across a large government enterprise

One of the explicitly stated premises of this group is that "among all the COTS digital signature implementations there are no two
that interoperate out of the box". Interoperate here is to be understood as - a user of product A generates a digital signature over
some data and transmits it to a recipient using product B who is able to verify the signature.(A and B not the same
product.)
This premise is frequently briefed to senior decision makers as an absolute "there are none". It is not briefed as, for example,
"there are problems in interoperability one has to choose carefully" or some other more nuanced estimate of the situation.

This premise is an important one to this working group. If it were demonstrably not so in one or two  instances it would probably
just require more precision in choice of words. If it were not so in a sufficient number of instances (i.e product A interoperates
with B, C, D and another set E, F, G all interoperate quite nicely among themselves ......) then it would likely have a significant
impact on planning and future decisions.

I was troubled by the fact that there was no evidence offered in support of this defining premise other than  reference to
undocumented phone survey results to some sample of digital signature product vendors. It may very well be the case that as of Oct
2004 the implementations of the standards have not resulted in any interoperability, but I was not convinced by the evidence
presented.

I would very much appreciate hearing from anyone who has some independent testing results or practical experience on this topic. If
this is not an appropriate topic for this list then an e-mail response would be fine.

Mike Henry

Michael C. Henry
Senior Systems Engineer
MTC
In Support of USMC PK-E Initiative Office

*******************Internet Email Confidentiality Footer*******************

Qualsiasi utilizzo non autorizzato del presente messaggio nonché dei suoi allegati è vietato e potrebbe costituire reato. Se ha
ricevuto per errore il presente messaggio, Le saremmo grati se ci inviasse, via e-mail, una comunicazione al riguardo e provvedesse
nel contempo alla distruzione del messaggio stesso e dei suoi eventuali allegati.
Le dichiarazioni contenute nel presente messaggio nonche' nei suoi eventuali allegati devono essere attribuite esclusivamente al
mittente e non possono essere considerate come trasmesse o autorizzate da ACTALIS S.p.A.; le medesime dichiarazioni non impegnano
ACTALIS S.p.A. nei confronti del destinatario o di terzi.
ACTALIS S.p.A. non si assume alcuna responsabilita' per eventuali intercettazioni, modifiche o danneggiamenti del presente messaggio
e-mail.

Any unauthorized use of this e-mail or any of its attachments is prohibited and could constitute an offence. If you are not the
intended addressee please advise immediately the sender by using the reply facility in your e-mail software and destroy the message
and its attachments. The statements and opinions expressed in this e-mail message are those of the author of the message and do not
necessarily represent those of ACTALIS S.p.A. Besides, The contents of this message shall be understood as neither given nor
endorsed by ACTALIS S.p.A..
ACTALIS S.p.A. does not accept liability for corruption, interception or amendment, if any, or the consequences thereof.

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-ldap-crl-schema-03.txt
Date: Fri, 29 Oct 2004 15:37:09 -0400
Sender: [email-masked]

--NextPart

	Title		: Internet X.509 Public Key Infrastructure LDAP Schema for X.509 CRLs
	Author(s)	: D. Chadwick, M. Sahalayev
	Filename	: draft-ietf-pkix-ldap-crl-schema-03.txt
	Pages		: 0
	Date		: 2004-10-29
	
This document describes an LDAP schema for X.509 CRLs. Each CRL is broken down into a set of attribute types. These attributes can then be stored in a CRL entry, or set of entries. Object classes are defined for these CRL entries. Each attribute type uses an existing LDAP syntax, so that no new matching rules need to be defined.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-ldap-crl-schema-03.txt

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-ldap-crl-schema-03.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-ldap-crl-schema-03.txt".

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-ldap-crl-schema-03.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-ldap-crl-schema-03.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--

Date: Fri, 29 Oct 2004 18:06:13 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked]
Subject: Re: SV: Briefing on CRL Path for IETF PKIX WG Meeting
Cc: [email-masked]
Sender: [email-masked]

> 
> Peter,
>  
> I disagree. I think it is very important to cover for the case where 2 CAs may have the same name.
>  

I am not against having someone to provide a specification how to construct
a local database and a way to detect such a situation inside the potato
of cross certificates connected CA suppended by trust hooks. 

> In troducing indirect CRLs means that we introduce possible attack vectors and it is our responsibility to create rules that makes vulnerabilities as unlikely as possible, even in bad implementations (80%+ of all vulnerabilities are miconfiguration problems).
>  
> If you include trust in public roots, then It is virtually impossible to guarantee and check that there are not any CAs with name collisions anywhere. 

If the PKI "database" is just a set of otherwise isolated parts each
of them hanging on one trusted root without cross certs amongs the parts, then
the situation is rather simple, i.e. you have different PKIs, if not, what
do you propose?  

The problem to me seems what you should assume when you find two keys attributes to the same CA name?
probably whene you have a crosscert pair each key certifying the other? 

> As writer of validation code, we must close every possible weaknes for an error, miconfiguration or attack.

When you write a piece of software, It may be hard to predict in what context that software will be running. You can't say that this code is only for use in aninfrastructure with CAs without name collisions, unless the code have some means of detecting such environment and refuse to operate in it. This is not the case however.

Are you saying that in the presence of two CA certs with same name having a different key, one general should
first assume that they belong to different entities, and only if one finds a cross certificate pair of
one signing the other key and vice versa, you may conclude that you have the same entity so you look for
CRLs signed by *the same* CA but the other key. 

> The other aspect is complexity. Use of indirect CRLs without any limitations may lead to infinitely complex path validation where every new path introduce more CRL paths and where each new CRL path introduce new CRL paths which introduce new CRL paths etc.......  Denial of service attacks through complex paths isn't faar away.

I don't understand why you say this here. What make this more difficult, a requirement that CAs are unique or
the contrary? Welcome in the real world. :-)

Content-class: urn:content-classes:message
Subject: SV: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Fri, 29 Oct 2004 14:05:09 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Peter Sylvester" <[email-masked]>, <[email-masked]>
Cc: <[email-masked]>
Sender: [email-masked]

Peter,
 
I disagree. I think it is very important to cover for the case where 2 CAs may have the same name.
 
In troducing indirect CRLs means that we introduce possible attack vectors and it is our responsibility to create rules that makes vulnerabilities as unlikely as possible, even in bad implementations (80%+ of all vulnerabilities are miconfiguration problems).
 
If you include trust in public roots, then It is virtually impossible to guarantee and check that there are not any CAs with name collisions anywhere. As writer of validation code, we must close every possible weaknes for an error, miconfiguration or attack. When you write a piece of software, It may be hard to predict in what context that software will be running. You can't say that this code is only for use in aninfrastructure with CAs without name collisions, unless the code have some means of detecting such environment and refuse to operate in it. This is not the case however.
 
The other aspect is complexity. Use of indirect CRLs without any limitations may lead to infinitely complex path validation where every new path introduce more CRL paths and where each new CRL path introduce new CRL paths which introduce new CRL paths etc.......  Denial of service attacks through complex paths isn't faar away.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

________________________________

Från: [email-masked] genom Peter Sylvester
Skickat: fr 10/29/2004 12:30
Till: [email-masked]; [email-masked]
Kopia: [email-masked]
Ämne: Re: Briefing on CRL Path for IETF PKIX WG Meeting

>
> Peter.Sylvester> At least you would probably agree that a CA cannot
> Peter.Sylvester> sign another CA having the same DN (because this
> Peter.Sylvester> would be considered as a self signed cert).

>
> I agree in a way, but the parenthesis makes me wonder if you're not
> mixing things up.  There is a difference between self-issued CA
> certificates (where two CA certificates have the same subject) and a
> self-signed CA certificate (where the public key in one certificate
> can be used to verify the signature in that same certificate).  The
> former is typically present as soon as you do a CA certificate roll-
> over.

I was indeed not correctly using the term  'self signed'. The
common point is something where the subject and isseur DN are the same
and a path determination logic concludes that it is the same
entity.

> But I agree that two different CAs (two different organizations, in
> other words) "cannot" have the same DN.  I write "cannot", because
> it's still technically possible, and whenever that happens, one can
> only expect a small appocalypse.

The message was that I don't think that it is worth
to provide PKI path determination technology that can work
with two CA entities having the same name.

If two PKIs join and have such a situation, then there may
also be a incompatibility in the certification policies. Or,
if not, maybe an inconsistency in 'joint' policy since the joint
naming schemme allows for that.

Peter

From: [email-masked] (Peter Gutmann)
To: [email-masked], [email-masked]
Subject: Re: R: R: Digital Signature Implementation Interoperability
Cc: [email-masked], [email-masked]
Date: Sat, 30 Oct 2004 01:38:10 +1300
Sender: [email-masked]

"Santoni Adriano" <[email-masked]> writes:

>I am not aware of any particular complication. Would you please describe the
>most unusual things that you had to comply with?

Oh dear, where should I even start?  This is just off the top of my head, but
the list includes wierd custom attributes in DNs, some funny custom handling
of basicConstraints (can't remember the exact details, but Italian users
required a code patch to alter the behaviour from the standard one), a
requirement to use Unicode (BMPString) for an attribute that, for some
unfathomable reason, everyone else claims is an IA5String (that's the one
where I joked that the people who created the requirement owned Microsoft
stock, because seeing that string type would at the time crash Netscape
browsers), an altName consisting of a multi-line LDAP URL that points back to
the certificate that contains the altName (God knows what the semantics for
being able to "process" that extension would be, I guess you'd be required to
go into an endless loop), use of message formats that are *only* valid
according to the somewhat more lax terminology in PKCS #7 but invalid under
CMS, use of multiple SignerInfos per SignedData (many apps will only display
the first one), really weird stuff involving timestamps that I've stopped
trying to figure out (I've had to resort to "You've got the source code, feel
free to implement what you need" because it just isn't worth the effort of
accomodating a one-off special-case like this), and then about two or three
times as many more strange bits and pieces that I'd have to go back through
mail archives to dig up (every now and then I'll get some piece of mail that
starts with "The Italian digital signature requirements require..." and my
reaction will be "Oh no, what's it going to be this time?").  Now having said
that I have to say that I *love* the Italian requirements, as the author of an
open-source toolkit, I get to play in a market that no standard commercial
toolkit (or at least none that hasn't had extensive customisation) can touch
:-).

(I'm not just being facetious about this, I've heard this from a number of
 users, they have to go with an OSS toolkit whose behaviour they can modify
 themselves because no unmodified off-the-shelf one will work.  So in a way
 this is strongly promoting OSS, although it probably wasn't intended that
 way).

>The only "unusual thing" that I am aware of, regarding italian
>interoperability rules, is that we currently use commonName's containing
>unusual stuff formatted in an unusual way. But that is not against any
>standard.

Nor is putting an MPEG of a cat in the DN, but it hardly promotes
interoperability, which is what you were talking about in your original
message.

Peter.

Date: Fri, 29 Oct 2004 12:30:26 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Cc: [email-masked]
Sender: [email-masked]

> 
> Peter.Sylvester> At least you would probably agree that a CA cannot
> Peter.Sylvester> sign another CA having the same DN (because this
> Peter.Sylvester> would be considered as a self signed cert).

> 
> I agree in a way, but the parenthesis makes me wonder if you're not
> mixing things up.  There is a difference between self-issued CA
> certificates (where two CA certificates have the same subject) and a
> self-signed CA certificate (where the public key in one certificate
> can be used to verify the signature in that same certificate).  The
> former is typically present as soon as you do a CA certificate roll-
> over.

I was indeed not correctly using the term  'self signed'. The
common point is something where the subject and isseur DN are the same
and a path determination logic concludes that it is the same
entity. 

> But I agree that two different CAs (two different organizations, in
> other words) "cannot" have the same DN.  I write "cannot", because
> it's still technically possible, and whenever that happens, one can
> only expect a small appocalypse.

The message was that I don't think that it is worth
to provide PKI path determination technology that can work
with two CA entities having the same name. 

If two PKIs join and have such a situation, then there may
also be a incompatibility in the certification policies. Or,
if not, maybe an inconsistency in 'joint' policy since the joint
naming schemme allows for that. 

Peter

Content-class: urn:content-classes:message
Subject: R: R: Digital Signature Implementation Interoperability
Date: Fri, 29 Oct 2004 10:45:26 +0200
Importance: normal
From: "Santoni Adriano" <[email-masked]>
To: "pgut001" <[email-masked]>
Cc: <[email-masked]>, <[email-masked]>
Sender: [email-masked]

> there are quite a number of extremely... unusual things in there that are used nowhere else on earth.  So this isn't really a valid sample

I am not aware of any particular complication. Would you please describe the most unusual things that you had to comply with?

The only "unusual thing" that I am aware of, regarding italian interoperability rules, is that we currently use commonName's containing unusual stuff formatted in an unusual way. But that is not against any standard.

Adriano

-----Messaggio originale-----
Da: pgut001 [mailto:[email-masked]] 
Inviato: venerdì 29 ottobre 2004 9.53
A: [email-masked]; [email-masked]
Cc: [email-masked]
Oggetto: Re: R: Digital Signature Implementation Interoperability

"Santoni Adriano" <[email-masked]> writes:

>Among the several CSP's accredited in Italy (by www.cnipa.gov.it) under 
>our national legislation on digital signatures and associated 
>regulations, there is close to 100% interoperability as far as PKCS#7 
>signatures (RFC 2315) and associated qualified certificates are 
>concerned.

As the provider of a security toolkit that has to comply with the Italian requirements, I should add that the it's a helluva lot of work to get that interoperability.  It's caused me more problems than any other signature law/requirements because there are quite a number of extremely... unusual things in there that are used nowhere else on earth.  So this isn't really a valid sample, it's like the joke about portability where someone claims that their code is portable because it runs on every VAX 11/750 running 4.3BSD Tahoe that they've tried it on.

Peter.

*******************Internet Email Confidentiality Footer*******************

Qualsiasi utilizzo non autorizzato del presente messaggio nonché dei suoi allegati è vietato e potrebbe costituire reato. Se ha ricevuto per errore il presente messaggio, Le saremmo grati se ci inviasse, via e-mail, una comunicazione al riguardo e provvedesse nel contempo alla distruzione del messaggio stesso e dei suoi eventuali allegati.
Le dichiarazioni contenute nel presente messaggio nonche' nei suoi eventuali allegati devono essere attribuite esclusivamente al mittente e non possono essere considerate come trasmesse o autorizzate da ACTALIS S.p.A.; le medesime dichiarazioni non impegnano ACTALIS S.p.A. nei confronti del destinatario o di terzi. 
ACTALIS S.p.A. non si assume alcuna responsabilita' per eventuali intercettazioni, modifiche o danneggiamenti del presente messaggio e-mail. 

Any unauthorized use of this e-mail or any of its attachments is prohibited and could constitute an offence. If you are not the intended addressee please advise immediately the sender by using the reply facility in your e-mail software and destroy the message and its attachments. The statements and opinions expressed in this e-mail message are those of the author of the message and do not necessarily represent those of ACTALIS S.p.A. Besides, The contents of this message shall be understood as neither given nor endorsed by ACTALIS S.p.A.. 
ACTALIS S.p.A. does not accept liability for corruption, interception or amendment, if any, or the consequences thereof.

From: [email-masked] (Peter Gutmann)
To: [email-masked], [email-masked]
Subject: Re: R: Digital Signature Implementation Interoperability
Cc: [email-masked]
Date: Fri, 29 Oct 2004 20:53:23 +1300
Sender: [email-masked]

"Santoni Adriano" <[email-masked]> writes:

>Among the several CSP's accredited in Italy (by www.cnipa.gov.it) under our
>national legislation on digital signatures and associated regulations, there
>is close to 100% interoperability as far as PKCS#7 signatures (RFC 2315) and
>associated qualified certificates are concerned.

As the provider of a security toolkit that has to comply with the Italian
requirements, I should add that the it's a helluva lot of work to get that
interoperability.  It's caused me more problems than any other signature
law/requirements because there are quite a number of extremely... unusual
things in there that are used nowhere else on earth.  So this isn't really a
valid sample, it's like the joke about portability where someone claims that
their code is portable because it runs on every VAX 11/750 running 4.3BSD
Tahoe that they've tried it on.

Peter.

Content-class: urn:content-classes:message
Subject: R: Digital Signature Implementation Interoperability
Date: Fri, 29 Oct 2004 08:47:50 +0200
Importance: normal
From: "Santoni Adriano" <[email-masked]>
To: "Mike Henry" <[email-masked]>
Cc: <[email-masked]>
Sender: [email-masked]

>One of the explicitly stated premises of this group is that "among all the COTS 
>digital signature implementations there are no two that interoperate out of the box". 
>Interoperate here is to be understood as - a user of product A generates a digital 
>signature over some data and transmits it to a recipient using product B who is able 
>to verify the signature.(A and B not the same product.)

Among the several CSP's accredited in Italy (by www.cnipa.gov.it) under our national legislation on digital signatures and associated regulations, there is close to 100% interoperability as far as PKCS#7 signatures (RFC 2315) and associated qualified certificates are concerned. 

I can state that, because I am the coordinator of the permanent working group that organizes the periodic cross-testing. The different digital signature products subject to our periodic interoperability testing are at least 6.

Rgds,
  Adriano

Adriano Santoni
Actalis S.p.A. (www.actalis.it)
Milano, IT

-----Messaggio originale-----
Da: [email-masked] [mailto:[email-masked]] Per conto di Mike Henry
Inviato: mercoledì 27 ottobre 2004 17.05
A: [email-masked]
Oggetto: Digital Signature Implementation Interoperability

All.

I  recently attended a session of a working group whose charter is to "develop a strategy to address interoperability and implementation challenges with digital signatures" across a large government enterprise

One of the explicitly stated premises of this group is that "among all the COTS digital signature implementations there are no two that interoperate out of the box". Interoperate here is to be understood as - a user of product A generates a digital signature over some data and transmits it to a recipient using product B who is able to verify the signature.(A and B not the same
product.)
This premise is frequently briefed to senior decision makers as an absolute "there are none". It is not briefed as, for example, "there are problems in interoperability one has to choose carefully" or some other more nuanced estimate of the situation.

This premise is an important one to this working group. If it were demonstrably not so in one or two  instances it would probably just require more precision in choice of words. If it were not so in a sufficient number of instances (i.e product A interoperates with B, C, D and another set E, F, G all interoperate quite nicely among themselves ......) then it would likely have a significant impact on planning and future decisions.

I was troubled by the fact that there was no evidence offered in support of this defining premise other than  reference to undocumented phone survey results to some sample of digital signature product vendors. It may very well be the case that as of Oct 2004 the implementations of the standards have not resulted in any interoperability, but I was not convinced by the evidence presented.

I would very much appreciate hearing from anyone who has some independent testing results or practical experience on this topic. If this is not an appropriate topic for this list then an e-mail response would be fine.

Mike Henry

Michael C. Henry
Senior Systems Engineer
MTC
In Support of USMC PK-E Initiative Office

*******************Internet Email Confidentiality Footer*******************

Qualsiasi utilizzo non autorizzato del presente messaggio nonché dei suoi allegati è vietato e potrebbe costituire reato. Se ha ricevuto per errore il presente messaggio, Le saremmo grati se ci inviasse, via e-mail, una comunicazione al riguardo e provvedesse nel contempo alla distruzione del messaggio stesso e dei suoi eventuali allegati.
Le dichiarazioni contenute nel presente messaggio nonche' nei suoi eventuali allegati devono essere attribuite esclusivamente al mittente e non possono essere considerate come trasmesse o autorizzate da ACTALIS S.p.A.; le medesime dichiarazioni non impegnano ACTALIS S.p.A. nei confronti del destinatario o di terzi. 
ACTALIS S.p.A. non si assume alcuna responsabilita' per eventuali intercettazioni, modifiche o danneggiamenti del presente messaggio e-mail. 

Any unauthorized use of this e-mail or any of its attachments is prohibited and could constitute an offence. If you are not the intended addressee please advise immediately the sender by using the reply facility in your e-mail software and destroy the message and its attachments. The statements and opinions expressed in this e-mail message are those of the author of the message and do not necessarily represent those of ACTALIS S.p.A. Besides, The contents of this message shall be understood as neither given nor endorsed by ACTALIS S.p.A.. 
ACTALIS S.p.A. does not accept liability for corruption, interception or amendment, if any, or the consequences thereof.

To: [email-masked]
Cc: [email-masked], [email-masked]
Subject: Re: AW: Briefing on CRL Path for IETF PKIX WG Meeting
From: Tom Gindin <[email-masked]>
Date: Thu, 28 Oct 2004 22:46:04 -0400
Sender: [email-masked]

        Thomas:

        One comment below, clarifying the meaning of a "trust anchor"

                Tom Gindin

[email-masked]
Sent by: [email-masked]
10/27/2004 08:06 AM
 
        To:     [email-masked], [email-masked]
        cc: 
        Subject:        AW: Briefing on CRL Path for IETF PKIX WG Meeting

See below 

> -----Ursprüngliche Nachricht-----
> Von: Jean-Marc Desperrier [mailto:[email-masked]]
> Gesendet: Mittwoch, 27. Oktober 2004 13:18
> An: [email-masked]
> Betreff: Re: Briefing on CRL Path for IETF PKIX WG Meeting
> 
> 
> 
> Denis Pinkas wrote:
> 
> > A minor point first. On slide 3, it is written:
> >
> > "A CA is defined by a name alone".
> >
> > This is contradicted 3 slides after when it is said:
> > "There can be more than one CA with the same name".
> 
> I'd say that the X509 rule is that a CA is defined by it's DN alone, 
> therefore one should never try to create two CA with the same DN in a 
> properly managed hierarchy.

Jean-Marc, what do you mean by "creating two CAs with the same DN"? What 
you
mean is to "create two certificates containing the same DN". And this 
means
both certificates belong to the same CA. This is IMHO useful e. g. for key
turnover. The fraud you mentioned below is only applicable on TAs. The
naming of subordinate CAs is within the responsibility of the certificate
issuing CA(TA). In the case of TAs you will ever have the problem, that
somebody may create a certificate with the TAs DN an publish it.

[TG] This isn't the problem, since the definition of a TA is required to 
include a public key as well as a DN, even though most displays of a 
certificate within a local store of anchors skip the key.  The danger is 
that a CA (either a TA or some other CA certified by a TA) can create a 
certificate which creates a fraudulent subordinate CA with the same DN as 
an existing CA, but a key under his own control.  That's a good example of 
why some of us have been advocating the assertion of constraints on TA's. 
This sort of false delegation would still be an issue even if the RP did 
not trust any legitimate path to a given CA.

Regards

Thomas Beckmann

> 
> But that the pkix Internet profile has to envision cases 
> where it's will 
> not be possible to absolutly garantee this will never happen and 
> therefore must protect itself against the security issues 
> raised by such 
> a situation and impose more stringent rules for certification 
> paths that 
> wil properly handle even that case.
> 
> One interesting question this raises is the following :
> If we don't consider the restriction we need for pkix, what 
> would be the 
> X509 compliant way to handle the case where you have two CA 
> certificates 
> with the same DN inside separate certification path ?
> I see two possible answer :
> - This is forbidden, and one or both of the certificates should be 
> handled as invalid when a client discovers such a case.
> - They validly cover the same CA, and validation may be made using 
> either path.
> 
> What is raised here is that the second solution is not acceptable for 
> pkix, because it makes it possible for anybody who was given the 
> autority to emit a CA certificate to impersonate any other CA in the 
> hirarchy.
> Several aspects of X509 make me believe it's not really intended for 
> X509 either.
> 

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-ldap-ac-schema-02.txt
Date: Thu, 28 Oct 2004 15:56:23 -0400
Sender: [email-masked]

--NextPart

	Title		: Internet X.509 Public Key Infrastructure LDAP Schema for X.509 Attribute Certificates
	Author(s)	: D. Chadwick, M. Sahalayev
	Filename	: draft-ietf-pkix-ldap-ac-schema-02.txt
	Pages		: 0
	Date		: 2004-10-28
	
This document describes an LDAP schema for X.509 attribute certificates (ACs). Each AC is broken down into a set of attribute types. These attributes can then be stored in an AC entry. An object class is defined for this AC entry. Each attribute type uses an existing LDAP syntax, so that no new matching rules need to be defined.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-ldap-ac-schema-02.txt

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-ldap-ac-schema-02.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-ldap-ac-schema-02.txt".

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-ldap-ac-schema-02.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-ldap-ac-schema-02.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 28 Oct 2004 15:34:26 -0400
Importance: Normal
Sender: [email-masked]

Denis,

Just show us how SIA (wherever you want to put it) is more efficient than
AIA for CRL signer.

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Thursday, October 28, 2004 10:04 AM
To: Santosh Chokhani
Cc: 'pkix'
Subject: Re: Signer certificate discovery for CRLs

Santosh,

You wrote:

> And, SIA for end certificate will add computational complexity.

SIA, for this discussion, is not for end certificates, but for CA
certificates.

Denis

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 28 Oct 2004 15:33:27 -0400
Importance: Normal
Sender: [email-masked]

X.509 Annex B and 3280 do describe how to deal with various CRLs.

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Thursday, October 28, 2004 10:01 AM
To: Santosh Chokhani
Cc: 'pkix'; David A. Cooper
Subject: Re: Signer certificate discovery for CRLs

Santosh,

See responses in-line in [DP:]

(text deleted)

Before accepting AIA as a valid option for CRLs we have to say how and when
it would be used. The issue is MUCH MORE complicated than simply adding AIA
in CRLs, since we have to give the processing rules for that extension.

[SC: The issue is simple and straightforward.  Just the way signed CMS
permits to carry signer's certificate, AIA in CRL simply points to the
signer certificate.  You can use that pointer and develop the path whichever
way you like]

Upon this aspect, we are far from an agreement and this is of course
strongly related to the (lack of a) CRL processing model.

[SC: What specifically do you disagree with and why?  There is a CRL
processing model.  It is well articulated in X.509 Annex B and well
summarized in 3280]

[DP: There is no CRL processing model. It is not summarized in 3280. This is
a major problem of 3280].

So we need first to say how we verify that a CRL Issuer is the right CRL
Issuer (see my e-mail fom this morning to Santosh). Once we will have fixed
that, then we will be able to explore the advantages and disavantages of
including or not AIA in CRLs.

[SC: We have done this in this thread and by the briefing.]

[DP: No. We still need to say how we verify that a CRL Issuer is the right 
CRL Issuer]. I fear a myriad of different models.

Denis

PS: David, I copied this message to you since you are making a list of 
issues related to RFC 3280. This is certainly a major one: clarification on 
CRL processing when the CRL Issuer is not the CA that has issued the 
certificate is needed.

 > /Stefan

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Thu, 28 Oct 2004 15:32:18 -0400
Importance: Normal
Sender: [email-masked]

Denis,

The CA name is defined by DN.  Since multiple CAs could have the same name,
in order to disambiguate the CA, you should consider the ancestors.  That is
what the algorithm does.

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Thursday, October 28, 2004 9:59 AM
To: Santosh Chokhani
Cc: 'Jean-Marc Desperrier'; [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting

Santosh,

> Jean-Marc:

> I agree that X.509 and 3280 define a CA by name.

You disagree since you said: "a CA name is disambiguated by ancestors",
which is true.

Denis

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Jean-Marc 
> Desperrier
> Sent: Wednesday, October 27, 2004 11:32 AM
> To: [email-masked]
> Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
> 
> 
> 
> Denis Pinkas wrote:
> 
> 
>>Jean-Marc,
>>
>>
>>>I'd say that the X509 rule is that a CA is defined by it's DN alone, 
>>>therefore one should never try to create two CA with the same DN in a 
>>>properly managed hierarchy.
>>
>>For X.509, I do *not* say X.500, a DN is only relative to the CA who 
>>has given it.
> 
> 
> I had no idea we had established that.
> I only remember several messages asking why we would try to handle in
> PKIX the case of several CA with the same DN as it's invalid.
> 
> In his presentation, to show that a CA is defined by name alone, 
> Santosh
> refers specifically only to section 7 of X.509, and I think that must be 
> in reference to the following sentence :
> NOTE 1 - Although the CAs are unambiguously defined by a distinguished 
> name in the DIT, this does not imply that there is any relationship 
> between the organization of the CAs and the DIT
> which I don't see as supporting what you say.
> 
> I can see that you already said the same thing from this message 
> http://www.imc.org/ietf-pkix/mail-archive/msg03305.html
> Quote :
> "[Denis : a CA can never be defined by a name only. It is a name 
> issued
> by a given CA. It can also be a root key with a sequence of names. These 
> are the only ways names can be unambiguous].
> 
> [Santosh: I do not find support for anything other than Issuer being 
> identified by DN only in X.509 and 3280.]"
> 
> But I can not find any message in which you gave additional info in 
> answer to Santosh's doubts.
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Thu, 28 Oct 2004 15:30:30 -0400
Importance: Normal
Sender: [email-masked]

Denis,

The matching algorithm proposed checks/compares the ancestors.  This
algorithm is nothing more than formalism of something you agreed to in 2003
on this list.

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Thursday, October 28, 2004 9:58 AM
To: Santosh Chokhani
Cc: [email-masked]; David A. Cooper
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting

Santosh

See responses inline in [DP:]

Santosh,

 > Denis:

 > The following URL is the location for the briefing you requested to be  >
posted.  >  > www.orionsec.com/crldp-idp-v3.ppt  >
<http://www.orionsec.com/crldp-idp-v3.ppt>

Many thanks. I browsed thru it.
A minor point first. On slide 3, it is written:
"A CA is defined by a name alone".
This is contradicted 3 slides after when it is said:
"There can be more than one CA with the same name".

[SC: There is no contradiction.  This concern is what the path matching
logic is all about.  When there are two or more "X", we are trying to sure
that we are talking about the same "X"]

Unless it is aid which CA provides the name of tha tCA, this is meaningless.
If we apply this recursively, then a CA name is composed of a name given by
another CA, whose name is given by another CA, whose name is given by
another CA, ..., whose name is given by a TA.

This could be what is meant in the last bullet point of slide 8 : "Starting
with a TA, the relying party can match the CA names in the certificate and
CRL certification paths", but this is far from crystal clear.

[SC: Your suggestion that a CA name is disambiguated by ancestors is what
the algorithm does]

[DP: So you agree that name comparison alone is not sufficient since a CA 
name MUST be disambiguated by ancestors].

Now the major points.

The same would apply to a CRL issuer name, UNLESS it is clear which CA can
nominate that CRL Issuer. Unfortunately, this point is also far from crystal
clear.

[SC: Since there could be two or more "X" as CRL issuers, that is why we
need the path matching algorithm].

[DP: Before knowing the algorithm, we need to know what are the trust 
conditions.]

Before diving into the details of algorithms for CRL path processing, it is
important to agree on which cases we will cover.

[SC: We cover all the cases]

[DP: This does not mean anything]

The case where the AC is the CRL Issuer is easy when it is the same key.

[SC: What is AC?  If you mean CA, this case is covered]
[DP: For sure, "AC" is the acronym of CA in French]

The case where the AC is the CRL Issuer but there has been a key change is
already more complex.

[SC: What is AC?  If you mean CA, this case is covered by the path matching
algorithm]

Now when the CRL Isssuer is not the CA we need to consider two cases:

    a) the CA got no right to issue CRLs (it only got a CA certificate
       with the keyCertSign bit (bit 5),

[SC: We are not covering all the validation logic that is already in 3280.

[DP: The problem is that RFC 3280 does not have any well described 
validation logic for a CRL Issuer diffrent from the CA.]

We are focusing on added rules for making sure we are dealing with the
correct "X"]

    b) the CA got the right to issue CRLs (it got a CA certificate with both
       bits sets, i.e. keyCertSign bit (bit 5) and cRLSign bit (bit 6).

[SC: We are not covering all the validation logic that is already in 3280.
[DP: There is not such a logic in RFC 3280]

We are focusing on added rules for making sure we are dealing with the
correct "X"]

These two cases would need to be addressed in details.

Finally we would have to clarify what is an indirect CRL Issuer and what
kind of processing would be done in taht case.

[SC: Indirect CRL is defined in 3280.  The path matching algorithm covers
this]

[DP: What is the trust model ?]

Now, if we go just a litte bit under the details of some slides, there is no
notion of a certification path with CRL isssuer names.

[SC: All the certificates on slide 10 are issued by CAs with the possible
exception to the last one.  The node names are different, but does not mean
that the CAs are not issuing certificates]

A path may end up with a CRL Issuer name, but only CA names are allowed in
the certification path. So slide 10 is incorrect and by implication
subsequent slides 11 and 12 are incorrect too.

[SC: These are all CA names.  We can change the tags if that helps you]
[DP: That change will certainly help. Please do it and re-issue the slides].

Denis

 > Santosh Chokhani
 > Orion Security Solutions, Inc.
 > 1489 Chain Bridge Road, Suite 300
 > McLean, Virginia 22101
 > (703) 917-0060  Ext. 35 (voice)
 > (703) 917-0260 (Fax)
 > [email-masked]

Date: Thu, 28 Oct 2004 10:53:10 -0700
To: Steve Hanna <[email-masked]>
From: "Kurt D. Zeilenga" <[email-masked]>
Subject: Re: [pki-tc] Definitive source for abbreviations used in certificate DN's
Cc: Arshad Noor <[email-masked]>, [email-masked], [email-masked]
Sender: [email-masked]

draft-ietf-ldapbis-dn, once approved for publication,
says that short names used in LDAP DN strings are the
same short names used elsewhere in LDAP to identify
the attribute type.  BCP 64 established a registry for
those short names at IANA:
   "Object Identifiers Descriptors" in
   http://www.iana.org/assignments/ldap-parameters

I note that short names, like OIDs they refer to, should
generally not be presented to the user.  Instead, some
localized string should be presented.

Kurt

At 08:32 AM 10/28/2004, Steve Hanna wrote:

>RFC 2253 is a good source for this. However,
>there is no exhaustive list. People make up
>their own abbreviations all too often, which
>causes interoperability problems. Really,
>they should use dotted decimal notation to
>give the OID, but that's not user-friendly.
>
>Thanks,
>
>Steve
>
>Arshad Noor wrote:
>
>>Can someone please point me to a definitive source document, that defines the official abbreviations used within X.509 digital certificate DN's?   For instance, which specific document specifies that the abbreviation S must be used for State, G (or is it GN?) must be used for GivenName, SN for Surname, etc.  
>>Thank you.
>>Arshad Noor
>>StrongAuth, Inc.
>>P.S.  I have looked at ITU-T's X.520 (02/2001) document and while it shows some abbreviations (CN, S, L, T, etc.) it does not elucidate all of them.
>>
>>To unsubscribe from this mailing list (and be removed from the roster of the OASIS TC), go to http://www.oasis-open.org/apps/org/workgroup/pki-tc/members/leave_workgroup.php.

Date: Thu, 28 Oct 2004 11:32:55 -0400
From: Steve Hanna <[email-masked]>
To: Arshad Noor <[email-masked]>
CC: [email-masked], [email-masked]
Subject: Re: [pki-tc] Definitive source for abbreviations used in certificate DN's
Sender: [email-masked]

RFC 2253 is a good source for this. However,
there is no exhaustive list. People make up
their own abbreviations all too often, which
causes interoperability problems. Really,
they should use dotted decimal notation to
give the OID, but that's not user-friendly.

Thanks,

Steve

Arshad Noor wrote:

> Can someone please point me to a definitive source document, 
> that defines the official abbreviations used within X.509 digital 
> certificate DN's?   For instance, which specific document 
> specifies that the abbreviation S must be used for State, G (or 
> is it GN?) must be used for GivenName, SN for Surname, etc.  
> Thank you.
> 
> Arshad Noor
> StrongAuth, Inc.
> 
> P.S.  I have looked at ITU-T's X.520 (02/2001) document and while 
> it shows some abbreviations (CN, S, L, T, etc.) it does not elucidate 
> all of them.
> 
> 
> To unsubscribe from this mailing list (and be removed from the roster of the OASIS TC), go to http://www.oasis-open.org/apps/org/workgroup/pki-tc/members/leave_workgroup.php.

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-lightweight-ocsp-profile-01.txt
Date: Thu, 28 Oct 2004 11:06:15 -0400
Sender: [email-masked]

--NextPart

	

Send a message to:
	[email-masked].
In the body type:

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-01.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-lightweight-ocsp-profile-01.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-ldap-pkc-schema-01.txt
Date: Thu, 28 Oct 2004 11:05:51 -0400
Sender: [email-masked]

--NextPart

	Title		: Internet X.509 Public Key Infrastructure Lightweight 
			  Directory Access Protocol Schema for X.509 Certificates
	Author(s)	: P. Gietz, N. Klasen
	Filename	: draft-ietf-pkix-ldap-pkc-schema-01.txt
	Pages		: 32
	Date		: 2004-10-27
	
This document describes a Lightweight Directory Access Protocol
   schema which can be used to implement a certificate store for X.509
   certificates.  Specifically, two structural object classes for X.509
   user and CA certificates are defined.  Key fields of a certificate
   are stored in LDAP attributes so that applications can easily
   retrieve the certificates needed by using basic LDAP search filters.
   Multiple certificates for a single entity can be stored and
   retrieved.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-ldap-pkc-schema-01.txt

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-ldap-pkc-schema-01.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-ldap-pkc-schema-01.txt".

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-ldap-pkc-schema-01.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-ldap-pkc-schema-01.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--

Date: Thu, 28 Oct 2004 10:39:36 -0400
From: Arshad Noor <[email-masked]>
Subject: Definitive source for abbreviations used in certificate DN's
To: [email-masked]
Cc: [email-masked]
Sender: [email-masked]

Can someone please point me to a definitive source document, 
that defines the official abbreviations used within X.509 digital 
certificate DN's?   For instance, which specific document 
specifies that the abbreviation S must be used for State, G (or 
is it GN?) must be used for GivenName, SN for Surname, etc.  
Thank you.

Arshad Noor
StrongAuth, Inc.

P.S.  I have looked at ITU-T's X.520 (02/2001) document and while 
it shows some abbreviations (CN, S, L, T, etc.) it does not elucidate 
all of them.

Date: Thu, 28 Oct 2004 16:04:03 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: "'pkix'" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Santosh,

You wrote:

> And, SIA for end certificate will add computational complexity.

SIA, for this discussion, is not for end certificates, but for CA certificates.

Denis

Date: Thu, 28 Oct 2004 16:00:57 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: "'pkix'" <[email-masked]>, "David A. Cooper" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Santosh,

See responses in-line in [DP:]

(text deleted)

Before accepting AIA as a valid option for CRLs we have to say how and when
it would be used. The issue is MUCH MORE complicated than simply adding AIA
in CRLs, since we have to give the processing rules for that extension.

[SC: The issue is simple and straightforward.  Just the way signed CMS
permits to carry signer's certificate, AIA in CRL simply points to the
signer certificate.  You can use that pointer and develop the path whichever
way you like]

Upon this aspect, we are far from an agreement and this is of course
strongly related to the (lack of a) CRL processing model.

[SC: What specifically do you disagree with and why?  There is a CRL
processing model.  It is well articulated in X.509 Annex B and well
summarized in 3280]

[DP: There is no CRL processing model. It is not summarized in 3280.
This is a major problem of 3280].

So we need first to say how we verify that a CRL Issuer is the right CRL
Issuer (see my e-mail fom this morning to Santosh). Once we will have fixed
that, then we will be able to explore the advantages and disavantages of
including or not AIA in CRLs.

[SC: We have done this in this thread and by the briefing.]

[DP: No. We still need to say how we verify that a CRL Issuer is the right 
CRL Issuer]. I fear a myriad of different models.

Denis

PS: David, I copied this message to you since you are making a list of 
issues related to RFC 3280. This is certainly a major one: clarification on 
CRL processing when the CRL Issuer is not the CA that has issued the 
certificate is needed.

 > /Stefan

Date: Thu, 28 Oct 2004 15:58:40 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: "'Jean-Marc Desperrier'" <[email-masked]>, [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Sender: [email-masked]

Santosh,

> Jean-Marc:

> I agree that X.509 and 3280 define a CA by name.

You disagree since you said: "a CA name is disambiguated by ancestors",
which is true.

Denis

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On
> Behalf Of Jean-Marc Desperrier
> Sent: Wednesday, October 27, 2004 11:32 AM
> To: [email-masked]
> Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
> 
> 
> 
> Denis Pinkas wrote:
> 
> 
>>Jean-Marc,
>>
>>
>>>I'd say that the X509 rule is that a CA is defined by it's DN alone,
>>>therefore one should never try to create two CA with the same DN in a 
>>>properly managed hierarchy.
>>
>>For X.509, I do *not* say X.500, a DN is only relative to the CA who
>>has given it.
> 
> 
> I had no idea we had established that.
> I only remember several messages asking why we would try to handle in 
> PKIX the case of several CA with the same DN as it's invalid.
> 
> In his presentation, to show that a CA is defined by name alone, Santosh 
> refers specifically only to section 7 of X.509, and I think that must be 
> in reference to the following sentence :
> NOTE 1 - Although the CAs are unambiguously defined by a distinguished 
> name in the DIT, this does not imply that there is any relationship 
> between the organization of the CAs and the DIT
> which I don't see as supporting what you say.
> 
> I can see that you already said the same thing from this message
> http://www.imc.org/ietf-pkix/mail-archive/msg03305.html
> Quote :
> "[Denis : a CA can never be defined by a name only. It is a name issued 
> by a given CA. It can also be a root key with a sequence of names. These 
> are the only ways names can be unambiguous].
> 
> [Santosh: I do not find support for anything other than Issuer being
> identified by DN only in X.509 and 3280.]"
> 
> But I can not find any message in which you gave additional info in answer
> to Santosh's doubts.
> 
> 

Date: Thu, 28 Oct 2004 15:58:22 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: [email-masked], "David A. Cooper" <[email-masked]>
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Sender: [email-masked]

Santosh

See responses inline in [DP:]

Santosh,

 > Denis:

 > The following URL is the location for the briefing you requested to be
 > posted.
 >
 > www.orionsec.com/crldp-idp-v3.ppt
 > <http://www.orionsec.com/crldp-idp-v3.ppt>

Many thanks. I browsed thru it.
A minor point first. On slide 3, it is written:
"A CA is defined by a name alone".
This is contradicted 3 slides after when it is said:
"There can be more than one CA with the same name".

[SC: There is no contradiction.  This concern is what the path matching
logic is all about.  When there are two or more "X", we are trying to sure
that we are talking about the same "X"]

Unless it is aid which CA provides the name of tha tCA, this is meaningless.
If we apply this recursively, then a CA name is composed of a name given by
another CA, whose name is given by another CA, whose name is given by
another CA, ..., whose name is given by a TA.

This could be what is meant in the last bullet point of slide 8 : "Starting
with a TA, the relying party can match the CA names in the
certificate and CRL certification paths", but this is far from crystal
clear.

[SC: Your suggestion that a CA name is disambiguated by ancestors is what
the algorithm does]

[DP: So you agree that name comparison alone is not sufficient since a CA 
name MUST be disambiguated by ancestors].

Now the major points.

The same would apply to a CRL issuer name, UNLESS it is clear which CA can
nominate that CRL Issuer. Unfortunately, this point is also far from crystal
clear.

[SC: Since there could be two or more "X" as CRL issuers, that is why we
need the path matching algorithm].

[DP: Before knowing the algorithm, we need to know what are the trust 
conditions.]

Before diving into the details of algorithms for CRL path processing, it is
important to agree on which cases we will cover.

[SC: We cover all the cases]

[DP: This does not mean anything]

The case where the AC is the CRL Issuer is easy when it is the same key.

[SC: What is AC?  If you mean CA, this case is covered]
[DP: For sure, "AC" is the acronym of CA in French]

The case where the AC is the CRL Issuer but there has been a key change is
already more complex.

[SC: What is AC?  If you mean CA, this case is covered by the path matching
algorithm]

Now when the CRL Isssuer is not the CA we need to consider two cases:

    a) the CA got no right to issue CRLs (it only got a CA certificate
       with the keyCertSign bit (bit 5),

[SC: We are not covering all the validation logic that is already in 3280.

[DP: The problem is that RFC 3280 does not have any well described 
validation logic for a CRL Issuer diffrent from the CA.]

We are focusing on added rules for making sure we are dealing with the
correct "X"]

    b) the CA got the right to issue CRLs (it got a CA certificate with both
       bits sets, i.e. keyCertSign bit (bit 5) and cRLSign bit (bit 6).

[SC: We are not covering all the validation logic that is already in 3280.
[DP: There is not such a logic in RFC 3280]

We are focusing on added rules for making sure we are dealing with the
correct "X"]

These two cases would need to be addressed in details.

Finally we would have to clarify what is an indirect CRL Issuer and what
kind of processing would be done in taht case.

[SC: Indirect CRL is defined in 3280.  The path matching algorithm covers
this]

[DP: What is the trust model ?]

Now, if we go just a litte bit under the details of some slides, there is no
notion of a certification path with CRL isssuer names.

[SC: All the certificates on slide 10 are issued by CAs with the possible
exception to the last one.  The node names are different, but does not mean
that the CAs are not issuing certificates]

A path may end up with a CRL Issuer name, but only CA names are allowed in
the certification path. So slide 10 is incorrect and by implication
subsequent slides 11 and 12 are incorrect too.

[SC: These are all CA names.  We can change the tags if that helps you]
[DP: That change will certainly help. Please do it and re-issue the slides].

Denis

 > Santosh Chokhani
 > Orion Security Solutions, Inc.
 > 1489 Chain Bridge Road, Suite 300
 > McLean, Virginia 22101
 > (703) 917-0060  Ext. 35 (voice)
 > (703) 917-0260 (Fax)
 > [email-masked]

Date: Thu, 28 Oct 2004 07:26:31 +0200 (CEST)
To: [email-masked]
CC: [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
From: Richard Levitte - VMS Whacker <[email-masked]>
Sender: [email-masked]

In message <[email-masked]> on Wed, 27 Oct 2004 18:19:27 +0200 (MEST), Peter Sylvester <[email-masked]> said:

Peter.Sylvester> At least you would probably agree that a CA cannot
Peter.Sylvester> sign another CA having the same DN (because this
Peter.Sylvester> would be considered as a self signed cert).

I agree in a way, but the parenthesis makes me wonder if you're not
mixing things up.  There is a difference between self-issued CA
certificates (where two CA certificates have the same subject) and a
self-signed CA certificate (where the public key in one certificate
can be used to verify the signature in that same certificate).  The
former is typically present as soon as you do a CA certificate roll-
over.

But I agree that two different CAs (two different organizations, in
other words) "cannot" have the same DN.  I write "cannot", because
it's still technically possible, and whenever that happens, one can
only expect a small appocalypse.

Cheers,
Richard

-----
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte     | http://richard.levitte.org/ | Tunnlandsv. 52
Levitte Programming | http://www.lp.se/           | S-168 36 Bromma
T: +46-708-26 53 44 |                             | SWEDEN
     "Price, performance, quality...  choose the two you like"

From: [email-masked] (Peter Gutmann)
To: [email-masked], [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Cc: [email-masked], [email-masked]
Date: Thu, 28 Oct 2004 15:16:31 +1300
Sender: [email-masked]

Peter Sylvester <[email-masked]> writes:

>At least you would probably agree that a CA cannot sign another CA 
>having the same DN (because this would be considered as a self signed 
>cert).

It can if it's a CA cert renewal (and what a cesspit that is, creating
huge and often highly surprising anomalies and holes in path processing 
big enough to drive a truck through).

Peter.

From: [email-masked] (Peter Gutmann)
To: [email-masked], [email-masked]
Subject: Re: Digital Signature Implementation Interoperability
Date: Thu, 28 Oct 2004 15:14:31 +1300
Sender: [email-masked]

"Mike Henry" <[email-masked]> writes:

>I would very much appreciate hearing from anyone who has some independent
>testing results or practical experience on this topic. If this is not an
>appropriate topic for this list then an e-mail response would be fine.

It depends on how you define "interoperate".  If you mean "will verify a 
basic S/MIME signature with minimal (X.509v1-level) implicitly-trusted certs 
without any problems" then everything will do that pretty much out of the 
box.  OTOH if you want to do anything with any level of sophistication/
complexity then it's pretty much pot luck what'll happen.  So both points
of view are correct.

Peter.

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Wed, 27 Oct 2004 17:35:23 -0400
Importance: Normal
Sender: [email-masked]

Peter,

While X.609 and 3280 most likely do not say this explicitly (I have not done
an exhaustive search), a CA must not issue certificates to multiple distinct
entities (be it a CA or EE) with the same DN.

The issue of two CAs with the same name comes when PKIs cross certify or
even in a homogeneous PKI, control is distributed and there is no mechanism
to ensure CA name uniqueness.  Thus, CA name collision in a homogeneous PKI
is very unlikely.  

Please note that in cross certified PKI, use of name constraints will not
solve the problem of two or more CAs with the same name I am trying to
solve.

A minor nit, when a CA certifies another CA with the same name (a no-no),
that is not self-signed certificate; it is self-issued certificate.
-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Peter Sylvester
Sent: Wednesday, October 27, 2004 12:19 PM
To: [email-masked]; [email-masked]
Cc: [email-masked]; [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting

I say it differently:

A CA is not a PKI. You say that according to X509 a DN is only attributed to
the same entity by one CA. That's in the text, but this does not mean that
in order to have a PKI working, you don't 
need more. 

At least you would probably agree that a CA cannot sign another CA having
the same DN (because this would be considered as a 
self signed cert). 

Now, a CA1 --> CA2 --> CA1  can legally occur as a pair of cross
certificates, how would you distinguish whether CA1 and CA1 are identical or
not (in case the same keys are used the situation is clear). otherwise in
rekeying you check CA1 self signed certs towards each other, if so, same
CA1, if you happen to find another CA creating a certificate for the two CA1
keys, again same CA1, ... etc, you can go recursively up and down through
all cross certs in your PKI (if you find them)

If you fail all these tests, i.e. all cases where by 
some direct application of the existing rules you must conclude that the two
CA1 are identical, then you say, ok, I assume that these two CA1s are
different but still valid candidates in my PKI, i.e. you have two sets of
CRLs (V1) ...

Anyway: If you allow this, you can never ensure that any CA in your PKI
cross certify any other CA, a feature that seems more 
interesting to have 

Of course you have a problem when cross certifying two 
existing PKIs, which still does not mean that one cannot consider this
situation as 'garbage in', it may happen that by chance of path building you
get a good path if you don't see the other CA, but the question was whether
one should try and accept two different entities with the 
same DN. 

> Peter,
> 
> > denis, would you assume that it is a desirable feature in
> > a PKI that any CA could issue cross certs to any other in
> > a PKI, and that a PKI should not prohibit this.
> 
> What is the trick behind this question ?
>    ... and why this question relates to the topic of that thread ?
> 
> Nevertheless, my answer is the following:
> 
> Nobody can prevent a CA to issue a cross certificate.
> 
> However, it is another matter whether that cross certificate will be
> accepted or not under the rules of the validation policy to build a valid 
> certification path.
> 
> Denis
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'Jean-Marc Desperrier'" <[email-masked]>, <[email-masked]>
Subject: RE: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Wed, 27 Oct 2004 17:24:32 -0400
Importance: Normal
Sender: [email-masked]

Jean-Marc:

I agree that X.509 and 3280 define a CA by name.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Jean-Marc Desperrier
Sent: Wednesday, October 27, 2004 11:32 AM
To: [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting

Denis Pinkas wrote:

> Jean-Marc,
>
>> I'd say that the X509 rule is that a CA is defined by it's DN alone,
>> therefore one should never try to create two CA with the same DN in a 
>> properly managed hierarchy.
>
> For X.509, I do *not* say X.500, a DN is only relative to the CA who
> has given it.

I had no idea we had established that.
I only remember several messages asking why we would try to handle in 
PKIX the case of several CA with the same DN as it's invalid.

In his presentation, to show that a CA is defined by name alone, Santosh 
refers specifically only to section 7 of X.509, and I think that must be 
in reference to the following sentence :
NOTE 1 - Although the CAs are unambiguously defined by a distinguished 
name in the DIT, this does not imply that there is any relationship 
between the organization of the CAs and the DIT
which I don't see as supporting what you say.

I can see that you already said the same thing from this message
http://www.imc.org/ietf-pkix/mail-archive/msg03305.html
Quote :
"[Denis : a CA can never be defined by a name only. It is a name issued 
by a given CA. It can also be a root key with a sequence of names. These 
are the only ways names can be unambiguous].

[Santosh: I do not find support for anything other than Issuer being
identified by DN only in X.509 and 3280.]"

But I can not find any message in which you gave additional info in answer
to Santosh's doubts.

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 16:55:31 -0400
Importance: Normal
Sender: [email-masked]

Peter,

The extensions you identified help when you have a directory or the client
can do LDAP or DAP.  AIA can be used when there is no directory or the
client does not have wherewithal to query LDAP attributes.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Peter Sylvester
Sent: Wednesday, October 27, 2004 10:19 AM
To: [email-masked]; [email-masked]
Cc: [email-masked]
Subject: RE: Signer certificate discovery for CRLs

SMIME seems to work with an information that just has
'issuername+serialnumber' to point to th certificate that is used for
signing. 

A similar information can be made available in the AuthorityKeyIdentifier,
i.e. point to a cert that has a key that has signed the cert or crl. 

What is missing here:

-  A generic way to map this value to some repository request? 
-  To indicate an explicit mapping (at a near place)?  

I also do not really remember that the id-ad-caRepository
SIA extension had been actually proposed in 2000, it simply appeared in
part1-new-03. 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 16:26:26 -0400
Importance: Normal
Sender: [email-masked]

And, SIA for end certificate will add computational complexity.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Stefan Santesson
Sent: Wednesday, October 27, 2004 9:26 AM
To: Denis Pinkas
Cc: pkix
Subject: RE: Signer certificate discovery for CRLs

Short reply.

> Are you claiming that this is only needed for indirect CRLs ?

No this is not just for indirect CRLs but it is most needed and obvious
there.

> This has never been demonstrated, and before knowing the solution, it 
> would be nice to know what the problem is.

The issue has been explained at lest 4 or 5 times on this thread and it
would probably not do any good to do it yet another time. 
You have also demonstrated through your answers that you have understood it
quite well.

Short repetition of the stated pros and cons:

The SIA may work IF:
- You have a "repository" available through which you can find suitable
information or make a suitable query for certificates.
- You have enough defined rules and processing time and power to allow local
processing the information gathered to find and build the path to the CRL
issuer.
- The CRL signer is nominated through a certificate that is issued directly
by the certificate issuing CA (or it will be to complex to find the path to
the CRL issuer). 

The AIA may work IF:
- The client already supports AIA in certificates for path building and have
the capacity to extend this to use in CRLs
- The client support downloading and processing of a single certificate file
from the specified location.

The AIA have 2 main advantages over SIA.
1) You typically only get a single certificate response in a single file.
This is much lower complexity than a link to all certificates issued by a
CA.
2) SIA is constrained to nomination of CRL issuer through a certificate
issued by the certificate issuing CA. AIA is independent of how the path to
the CRL is built and thus more generic.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 27 oktober 2004 15:00
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> > I disagree,
>    So we disagree.
> 
> > The problem to determine that a CRL is the correct CRL for a
certificate
> > is a completely separate and independent problem to the issue to 
> > discover a factual certification path to a particular CRL in order
to
> > validate its signature.
> 
> No. The issue is who provide that extension and in which case or
case(s).
> Then what kind of use RPs are expected to do with it.
> 
> We already have too many extensions where different people have
different
> interpretations of their use and thenafter justify an architecture by
the
> presence of that extension ! or because "nothing prevents to make a
given
> interpretation" of the document.
> 
> > These can, and probably should, be solved independently.
> 
> > The task to allow AIA as a CRL extension in its current form does
not
> > have to be on hold in the meanwhile. There are strong reasons enough
to
> > see it through.
> 
> > This relates to real practical problems. In our efforts, as
implementer,
> > to work with indirect CRLs,
> 
> Are you claiming that this is only needed for indirect CRLs ?
> 
> (i.e. for CRLs which include certificates issued by authorities other
than
> the CRL issuer).
> 
> > we must in some cases rely on either AIA in CRLs or a similar,
currently
>  > non-standardized method.
> 
> > SIA doesn't solve our needs.
> 
> This has never been demonstrated, and before knowing the solution, it 
> would be nice to know what the problem is.
> 
> Denis
> 
>  > AIA does. It seems to me that other implementers have reached
> > the same conclusion.
> 
> 
> > /Stefan

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 16:23:07 -0400
Importance: Normal
Sender: [email-masked]

Denis, 

See responses in-line in [SC:]

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Denis Pinkas
Sent: Wednesday, October 27, 2004 9:00 AM
To: Stefan Santesson
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs

Stefan,

> I disagree,
   So we disagree.

> The problem to determine that a CRL is the correct CRL for a 
> certificate is a completely separate and independent problem to the 
> issue to discover a factual certification path to a particular CRL in 
> order to validate its signature.

No. The issue is who provide that extension and in which case or case(s).
Then what kind of use RPs are expected to do with it.

[SC: Just like AIA in certificates, those who want to use it, will use it.
Others are welcome to use other means.]

We already have too many extensions where different people have different 
interpretations of their use and thenafter justify an architecture by the 
presence of that extension ! or because "nothing prevents to make a given 
interpretation" of the document.

[SC: We are not adding an extension.  We are permitting an existing
non-critical extension in the CRL for those who wish to use it.]

> These can, and probably should, be solved independently.

> The task to allow AIA as a CRL extension in its current form does not 
> have to be on hold in the meanwhile. There are strong reasons enough 
> to see it through.

> This relates to real practical problems. In our efforts, as 
> implementer, to work with indirect CRLs,

Are you claiming that this is only needed for indirect CRLs ?

[SC: It is useful for both and may be more useful in the case of indirect
CRL]

(i.e. for CRLs which include certificates issued by authorities other than 
the CRL issuer).

> we must in some cases rely on either AIA in CRLs or a similar, 
> currently
 > non-standardized method.

> SIA doesn't solve our needs.

This has never been demonstrated, and before knowing the solution, it would 
be nice to know what the problem is.

[SC: Lot of extensions such as AKID, SKID, etc., are for efficiency reasons.
Since, AIA provides efficiency, there is no particular reason to prove other
ways.  If you think other ways are more efficient, do prove it.]

Denis

 > AIA does. It seems to me that other implementers have reached
> the same conclusion.

> /Stefan

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 16:18:19 -0400
Importance: Normal
Sender: [email-masked]

Stefan,

For most parts, I agree with you.

In the interest of efficiency one can use the path matching algorithm to
guide building the certification path for the CRL issuer

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Stefan Santesson
Sent: Wednesday, October 27, 2004 8:44 AM
To: Denis Pinkas
Cc: pkix
Subject: RE: Signer certificate discovery for CRLs

I disagree,

The problem to determine that a CRL is the correct CRL for a certificate is
a completely separate and independent problem to the issue to discover a
factual certification path to a particular CRL in order to validate its
signature.

These can, and probably should, be solved independently.

The task to allow AIA as a CRL extension in its current form does not have
to be on hold in the meanwhile. There are strong reasons enough to see it
through.

This relates to real practical problems. In our efforts, as implementer, to
work with indirect CRLs, we must in some cases rely on either AIA in CRLs or
a similar, currently non-standardized method. SIA doesn't solve our needs.
AIA does. It seems to me that other implementers have reached the same
conclusion. 

/Stefan

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 27 oktober 2004 14:24
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> > Denis,
> >
> > Yes, SIA could be an option in SOME cases, if properly implemented
and
> > if combined with an appropriate directory infrastructure.
> 
> You sentence is not correct.
> 
> "SIA could be an option in SOME cases, if properly implemented and if 
> combined with an appropriate *repository* infrastructure".
> 
> > It's just not as generic and cost effective as AIA in CRLs,
especially
> > not when building chains from bottom up, which is a common way to
build
> > paths.
> 
> Of course since SIA is used to build chain top down ! (which is a
common
> way
> to build paths).
> 
> > I'm not trying to pick on words here. But for the first time I got
the
> > impression that you accept AIA in CRLs as a valid option.
> 
> Not exactly. AIA in CRLs COULD be a valid option.
> 
> > Do you still claim that AIA in CRLs is an invalid option that should
NOT
> > be allowed?
> 
> I never claimed such a sentence, so I do not need to disclaim it. :-|
> 
> Before accepting AIA as a valid option for CRLs we have to say how and 
> when it would be used. The issue is MUCH MORE complicated than simply
adding
> AIA
> in CRLs, since we have to give the processing rules for that
extension.
> 
> Upon this aspect, we are far from an agreement and this is of course 
> strongly related to the (lack of a) CRL processing model.
> 
> So we need first to say how we verify that a CRL Issuer is the right
CRL
> Issuer (see my e-mail fom this morning to Santosh). Once we will have 
> fixed that, then we will be able to explore the advantages and 
> disavantages
of
> including or not AIA in CRLs.
> 
> Denis
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 16:16:42 -0400
Importance: Normal
Sender: [email-masked]

Denis,

See responses in-line in [SC:]

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Denis Pinkas
Sent: Wednesday, October 27, 2004 8:24 AM
To: Stefan Santesson
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs

> It's just not as generic and cost effective as AIA in CRLs, especially 
> not when building chains from bottom up, which is a common way to 
> build paths.

Of course since SIA is used to build chain top down ! (which is a common way

to build paths).

[SC: Says who?  Most folks build paths from subscriber certificate to RP
trust anchor.]

> I'm not trying to pick on words here. But for the first time I got the 
> impression that you accept AIA in CRLs as a valid option.

Not exactly. AIA in CRLs COULD be a valid option.

> Do you still claim that AIA in CRLs is an invalid option that should 
> NOT be allowed?

I never claimed such a sentence, so I do not need to disclaim it. :-|

Before accepting AIA as a valid option for CRLs we have to say how and when 
it would be used. The issue is MUCH MORE complicated than simply adding AIA 
in CRLs, since we have to give the processing rules for that extension.

[SC: The issue is simple and straightforward.  Just the way signed CMS
permits to carry signer's certificate, AIA in CRL simply points to the
signer certificate.  You can use that pointer and develop the path whichever
way you like]

Upon this aspect, we are far from an agreement and this is of course 
strongly related to the (lack of a) CRL processing model.

[SC: What specifically do you disagree with and why?  There is a CRL
processing model.  It is well articulated in X.509 Annex B and well
summarized in 3280]

So we need first to say how we verify that a CRL Issuer is the right CRL 
Issuer (see my e-mail fom this morning to Santosh). Once we will have fixed 
that, then we will be able to explore the advantages and disavantages of 
including or not AIA in CRLs.

[SC: We have done this in this thread and by the briefing.]

Denis

> /Stefan
>  
> 
> 
>>-----Original Message-----
>>From: [email-masked]
> 
> [mailto:[email-masked]]
> 
>>On Behalf Of Denis Pinkas
>>Sent: den 27 oktober 2004 09:32
>>To: Stefan Santesson
>>Cc: pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Stefan,
>>
>>
>>>Denis,
>>
>>><snip>
>>
>>>>Use of AIA in CRLs would be one way to do it, while the use of SIA 
>>>>in CA certificates is the other way.
>>>
>>>I'm pleased to read that you acknowledge AIA in CRLs as a valid
>>
> option.
> 
>>>That is all I ask for.
>>
>>I'm pleased to read that you noticed that AIA *would be an option*
> 
> since I
> 
>>used "would be" in the case of AIA and "is" in the case of SIA:
>>
>>Use of AIA in CRLs *would be* one way to do it, while the use of SIA 
>>in CA certificates *is* the other way.  :-)
>>
>>Denis
>>
>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>
> 
> 

From: "Anders Rundgren" <[email-masked]>
To: "Mike Henry" <[email-masked]>, <[email-masked]>
Subject: Re: Digital Signature Implementation Interoperability
Date: Wed, 27 Oct 2004 21:10:48 +0200
Sender: [email-masked]

Hi Mike,

You should be aware of the fact that client signatures comes in
two flavors.  One is S/MIME (signed e-mail) which actually is
both standardized and interoperable.

However, most e-governments, banks and other advanced users of
IT have concluded that the web is the preferred method for distributing
and acquiring information including digital signatures.   In this area which
often is called "web-sign" there are no standards and no standards in
preparation either.  Most systems are currently using Java applets
to get some kind of limited cross-platform ability.

Regards
Anders Rundgren

----- Original Message ----- 
From: "Mike Henry" <[email-masked]>
To: <[email-masked]>
Sent: Wednesday, October 27, 2004 17:04
Subject: Digital Signature Implementation Interoperability

All.

I  recently attended a session of a working group whose charter
is to "develop a strategy to address interoperability and implementation
challenges with digital signatures" across a large government enterprise

One of the explicitly stated premises of this group is that "among all the
COTS digital signature implementations there are no two that interoperate
out of the box". Interoperate here is to be understood as - a user of
product
A generates a digital signature over some data and transmits it to a
recipient
using product B who is able to verify the signature.(A and B not the same
product.)
This premise is frequently briefed to senior decision makers as an absolute
"there are none".
It is not briefed as, for example, "there are problems in interoperability
one has to
choose carefully" or some other more nuanced estimate of the situation.

This premise is an important one to this working group. If it were
demonstrably
not so in one or two  instances it would probably just require more
precision
in choice of words. If it were not so in a sufficient number of instances
(i.e
product A interoperates with B, C, D and another set E, F, G all
interoperate
quite nicely among themselves ......) then it would likely have a
significant
impact on planning and future decisions.

I was troubled by the fact that there was no evidence offered in support of
this defining premise other than  reference to undocumented phone survey
results to some sample of digital signature product vendors. It may very
well
be the case that as of Oct 2004 the implementations of the standards have
not
resulted in any interoperability, but I was not convinced by the evidence
presented.

I would very much appreciate hearing from anyone who has some independent
testing results or practical experience on this topic. If this is not an
appropriate
topic for this list then an e-mail response would be fine.

Mike Henry

Michael C. Henry
Senior Systems Engineer
MTC
In Support of USMC PK-E Initiative Office

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Wed, 27 Oct 2004 14:40:45 -0400
Importance: Normal
Sender: [email-masked]

Denis,

See responses inline in [SC:]

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Denis Pinkas
Sent: Wednesday, October 27, 2004 5:29 AM
To: Santosh Chokhani
Cc: [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting

Santosh,

> Denis:

> The following URL is the location for the briefing you requested to be
> posted.
>  
> www.orionsec.com/crldp-idp-v3.ppt 
> <http://www.orionsec.com/crldp-idp-v3.ppt>

Many thanks. I browsed thru it.

A minor point first. On slide 3, it is written:

"A CA is defined by a name alone".

This is contradicted 3 slides after when it is said:
"There can be more than one CA with the same name".

[SC: There is no contradiction.  This concern is what the path matching
logic is all about.  When there are two or more "X", we are trying to sure
that we are talking about the same "X"]

Unless it is aid which CA provides the name of tha tCA, this is meaningless.
If we apply this recursively, then a CA name is composed of a name given by 
another CA, whose name is given by another CA, whose name is given by 
another CA, ..., whose name is given by a TA.

This could be what is meant in the last bullet point of slide 8 : "Starting
with a TA, the relying party can match the CA names in the 
certificate and CRL certification paths", but this is far from crystal
clear.

[SC: Your suggestion that a CA name is disambiguated by ancestors is what
the algorithm does]
Now the major points.

The same would apply to a CRL issuer name, UNLESS it is clear which CA can 
nominate that CRL Issuer. Unfortunately, this point is also far from crystal

clear.

[SC: Since there could be two or more "X" as CRL issuers, that is why we
need the path matching algorithm]

Before diving into the details of algorithms for CRL path processing, it is 
important to agree on which cases we will cover.

[SC: We cover all the cases]

The case where the AC is the CRL Issuer is easy when it is the same key.

[SC: What is AC?  If you mean CA, this case is covered]

The case where the AC is the CRL Issuer but there has been a key change is 
already more complex.

[SC: What is AC?  If you mean CA, this case is covered by the path matching
algorithm]

Now when the CRL Isssuer is not the CA we need to consider two cases:

   a) the CA got no right to issue CRLs (it only got a CA certificate
      with the keyCertSign bit (bit 5),

[SC: We are not covering all the validation logic that is already in 3280.
We are focusing on added rules for making sure we are dealing with the
correct "X"]

   b) the CA got the right to issue CRLs (it got a CA certificate with both
      bits sets, i.e. keyCertSign bit (bit 5) and cRLSign bit (bit 6).

[SC: We are not covering all the validation logic that is already in 3280.
We are focusing on added rules for making sure we are dealing with the
correct "X"]

These two cases would need to be addressed in details.

Finally we would have to clarify what is an indirect CRL Issuer and what 
kind of processing would be done in taht case.

[SC: Indirect CRL is defined in 3280.  The path matching algorithm covers
this]

Now, if we go just a litte bit under the details of some slides, there is no

notion of a certification path with CRL isssuer names.

[SC: All the certificates on slide 10 are issued by CAs with the possible
exception to the last one.  The node names are different, but does not mean
that the CAs are not issuing certificates]

A path may end up with a CRL Issuer name, but only CA names are allowed in 
the certification path. So slide 10 is incorrect and by implication 
subsequent slides 11 and 12 are incorrect too.

[SC: These are all CA names.  We can change the tags if that helps you]

Denis

> Santosh Chokhani
> Orion Security Solutions, Inc.
> 1489 Chain Bridge Road, Suite 300
> McLean, Virginia 22101
> (703) 917-0060  Ext. 35 (voice)
> (703) 917-0260 (Fax)
> [email-masked]
> Visit our Web site
> http://www.orionsec.com <http://www.orionsec.com/>

From: Alicia da Conceicao <[email-masked]>
Subject: Re: Digital Signature Implementation Interoperability
To: [email-masked] (Mike Henry)
Date: Wed, 27 Oct 2004 13:18:53 -0400 (EDT)
Sender: [email-masked]

Dear Mike:

I disagree!  As someone who recently complete her own digital signature
product nearly two months ago, I cannot see why any other digital
signature products that also uses CMS signedData based signatures with
DER encoding won't interoperate with each other.
 
In other words, if I send you a DER encoded file of a CMS signedData
digital signature, then any CMS compliant software should be able to load
it up and validate it against the original document and signing certificate.
The original document and/or DER encoded signing certificate may or may
not be present in the signature, but any robust digital signature software
must also be able to load these from external binary files.

On a side note, does anyone know if there is an ISO standard yet for CMS
based digital signatures?  ISO-18014-2 was recently added for RFC-3161
based timestamps that are used in CMS, but I haven't come across any ISO
standard for generic CMS signedData.

If anyone else has any CMS signedData based digital signature software
that they would like to interop test, please let me know, since I would
be happy to test it against my own fully functional CMS software.  Prehaps
if a critical mass of CMS software providers are interested, we can even
have an interop test-fest where we all test our CMS software against each
other.

Alicia.

> I  recently attended a session of a working group whose charter
> is to "develop a strategy to address interoperability and implementation
> challenges with digital signatures" across a large government enterprise
> One of the explicitly stated premises of this group is that "among all the
> COTS digital signature implementations there are no two that interoperate
> out of the box". Interoperate here is to be understood as - a user of
> product
> A generates a digital signature over some data and transmits it to a
> recipient
> using product B who is able to verify the signature.(A and B not the same
> product.)
> This premise is frequently briefed to senior decision makers as an absolute
> "there are none".
> It is not briefed as, for example, "there are problems in interoperability
> one has to
> choose carefully" or some other more nuanced estimate of the situation.
> 
> This premise is an important one to this working group. If it were
> demonstrably
> not so in one or two  instances it would probably just require more
> precision
> in choice of words. If it were not so in a sufficient number of instances
> (i.e
> product A interoperates with B, C, D and another set E, F, G all
> interoperate
> quite nicely among themselves ......) then it would likely have a
> significant
> impact on planning and future decisions.
> 
> I was troubled by the fact that there was no evidence offered in support of
> this defining premise other than  reference to undocumented phone survey
> results to some sample of digital signature product vendors. It may very
> well
> be the case that as of Oct 2004 the implementations of the standards have
> not
> resulted in any interoperability, but I was not convinced by the evidence
> presented.
> 
> I would very much appreciate hearing from anyone who has some independent
> testing results or practical experience on this topic. If this is not an
> appropriate
> topic for this list then an e-mail response would be fine.
> 
> Mike Henry
> 
> Michael C. Henry
> Senior Systems Engineer
> MTC
> In Support of USMC PK-E Initiative Office

Date: Wed, 27 Oct 2004 18:19:27 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Cc: [email-masked], [email-masked]
Sender: [email-masked]

I say it differently:

A CA is not a PKI. You say that according to X509 a DN is only
attributed to the same entity by one CA. That's in the text, but
this does not mean that in order to have a PKI working, you don't 
need more. 

At least you would probably agree that a CA cannot sign another
CA having the same DN (because this would be considered as a 
self signed cert). 

Now, a CA1 --> CA2 --> CA1  can legally occur as a pair of
cross certificates, how would you distinguish whether CA1
and CA1 are identical or not (in case the same keys are used
the situation is clear). otherwise in rekeying you check
CA1 self signed certs towards each other, if so, same CA1,
if you happen to find another CA creating a certificate
for the two CA1 keys, again same CA1, ... etc, you can go
recursively up and down through all cross certs in your PKI
(if you find them)

If you fail all these tests, i.e. all cases where by 
some direct application of the existing rules you must conclude
that the two CA1 are identical, then you say, ok, I assume that
these two CA1s are different but still valid candidates in my
PKI, i.e. you have two sets of CRLs (V1) ...

Anyway: If you allow this, you can never ensure that any CA in your PKI
cross certify any other CA, a feature that seems more 
interesting to have 

Of course you have a problem when cross certifying two 
existing PKIs, which still does not mean that one cannot
consider this situation as 'garbage in', it may happen that
by chance of path building you get a good path if you
don't see the other CA, but the question was whether one
should try and accept two different entities with the 
same DN. 

> Peter,
> 
> > denis, would you assume that it is a desirable feature in
> > a PKI that any CA could issue cross certs to any other in
> > a PKI, and that a PKI should not prohibit this.
> 
> What is the trick behind this question ?
>    ... and why this question relates to the topic of that thread ?
> 
> Nevertheless, my answer is the following:
> 
> Nobody can prevent a CA to issue a cross certificate.
> 
> However, it is another matter whether that cross certificate will be 
> accepted or not under the rules of the validation policy to build a valid 
> certification path.
> 
> Denis
> 
> 

Date: Wed, 27 Oct 2004 17:51:14 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Peter Sylvester <[email-masked]>
CC: [email-masked], [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Sender: [email-masked]

Peter,

> denis, would you assume that it is a desirable feature in
> a PKI that any CA could issue cross certs to any other in
> a PKI, and that a PKI should not prohibit this.

What is the trick behind this question ?
   ... and why this question relates to the topic of that thread ?

Nevertheless, my answer is the following:

Nobody can prevent a CA to issue a cross certificate.

However, it is another matter whether that cross certificate will be 
accepted or not under the rules of the validation policy to build a valid 
certification path.

Denis

Date: Wed, 27 Oct 2004 17:31:57 +0200
From: Jean-Marc Desperrier <[email-masked]>
To: [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Sender: [email-masked]

Denis Pinkas wrote:

> Jean-Marc,
>
>> I'd say that the X509 rule is that a CA is defined by it's DN alone, 
>> therefore one should never try to create two CA with the same DN in a 
>> properly managed hierarchy.
>
> For X.509, I do *not* say X.500, a DN is only relative to the CA who 
> has given it.

I had no idea we had established that.
I only remember several messages asking why we would try to handle in 
PKIX the case of several CA with the same DN as it's invalid.

In his presentation, to show that a CA is defined by name alone, Santosh 
refers specifically only to section 7 of X.509, and I think that must be 
in reference to the following sentence :
NOTE 1 — Although the CAs are unambiguously defined by a distinguished 
name in the DIT, this does not imply that there is any relationship 
between the organization of the CAs and the DIT
which I don't see as supporting what you say.

I can see that you already said the same thing from this message
http://www.imc.org/ietf-pkix/mail-archive/msg03305.html
Quote :
"[Denis : a CA can never be defined by a name only. It is a name issued 
by a given CA. It can also be a root key with a sequence of names. These 
are the only ways names can be unambiguous].

[Santosh: I do not find support for anything other than Issuer being identified by DN only in X.509 and 3280.]"

But I can not find any message in which you gave additional info in answer to Santosh's doubts.

From: "Mike Henry" <[email-masked]>
To: <[email-masked]>
Subject: Digital Signature Implementation Interoperability
Date: Wed, 27 Oct 2004 11:04:53 -0400
Importance: Normal
Sender: [email-masked]

All.

I  recently attended a session of a working group whose charter
is to "develop a strategy to address interoperability and implementation
challenges with digital signatures" across a large government enterprise

One of the explicitly stated premises of this group is that "among all the
COTS digital signature implementations there are no two that interoperate
out of the box". Interoperate here is to be understood as - a user of
product
A generates a digital signature over some data and transmits it to a
recipient
using product B who is able to verify the signature.(A and B not the same
product.)
This premise is frequently briefed to senior decision makers as an absolute
"there are none".
It is not briefed as, for example, "there are problems in interoperability
one has to
choose carefully" or some other more nuanced estimate of the situation.

This premise is an important one to this working group. If it were
demonstrably
not so in one or two  instances it would probably just require more
precision
in choice of words. If it were not so in a sufficient number of instances
(i.e
product A interoperates with B, C, D and another set E, F, G all
interoperate
quite nicely among themselves ......) then it would likely have a
significant
impact on planning and future decisions.

I was troubled by the fact that there was no evidence offered in support of
this defining premise other than  reference to undocumented phone survey
results to some sample of digital signature product vendors. It may very
well
be the case that as of Oct 2004 the implementations of the standards have
not
resulted in any interoperability, but I was not convinced by the evidence
presented.

I would very much appreciate hearing from anyone who has some independent
testing results or practical experience on this topic. If this is not an
appropriate
topic for this list then an e-mail response would be fine.

Mike Henry

Michael C. Henry
Senior Systems Engineer
MTC
In Support of USMC PK-E Initiative Office

From: The IESG <[email-masked]>
To: IETF-Announce <[email-masked]>
Cc: Internet Architecture Board <[email-masked]>, RFC Editor <[email-masked]>, pkix mailing list <[email-masked]>, pkix chair <[email-masked]>, pkix  chair <[email-masked]>
Subject: Protocol Action: 'Additional Algorithms and Identifiers for  RSA Cryptography for use in the Internet X.509 Public Key  Infrastructure Certificate and Certificate Revocation List (CRL)  Profile' to Proposed Standard 
Date: Wed, 27 Oct 2004 11:00:55 -0400
Sender: [email-masked]

The IESG has approved the following document:

- 'Additional Algorithms and Identifiers for RSA Cryptography for use in the 
   Internet X.509 Public Key Infrastructure Certificate and Certificate 
   Revocation List (CRL) Profile '
   <draft-ietf-pkix-rsa-pkalgs-03.txt> as a Proposed Standard

This document is the product of the Public-Key Infrastructure (X.509) Working 
Group. 

The IESG contact persons are Steve Bellovin and Russ Housley.

Technical Summary
 
 This document supplements RFC 3279 to describe how to use some newer 
cryptographic algorithms.
 
Working Group Summary
 
 There were no major issues raised during the discussion.
 
Protocol Quality
 
 Steve Bellovin reviewed this document for the IESG.

Date: Wed, 27 Oct 2004 07:47:11 -0700
To: [email-masked]
From: Paul Hoffman / VPNC <[email-masked]>
Subject: Suggestion for revising RFC 3280
Sender: [email-masked]

Instead of starting rfc3280bis, start a draft called something like 
"rfc3280-changes". Have that draft be short, and contain *only* 
changes to 3280. Only after there is consensus on the -changes draft 
should you roll the changes in.

No one reads all of 3280 these days, so expecting people to search 
through rfc3280bis for different sections is not reasonable.

--Paul Hoffman, Director
--VPN Consortium

Date: Wed, 27 Oct 2004 16:46:03 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked], [email-masked], [email-masked]
Subject: Re: AW: Signer certificate discovery for CRLs
Cc: [email-masked]
Sender: [email-masked]

> with issuerSerial in the AKI extension you only identify the certificate to
> verify the signature of e. g. the CRL. But, as far as I understood the
> discussion, the question is where can I find this certificate.

That's why I said: 

> > 
> > What is missing here:
> > 
> > -  A generic way to map this value to some repository request? 
> > -  To indicate an explicit mapping (at a near place)?  

.. i.e. a mapping from URI to URL 

Date: Wed, 27 Oct 2004 16:43:59 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Cc: [email-masked]
Sender: [email-masked]

denis, would you assume that it is a desirable feature in
a PKI that any CA could issue cross certs to any other in
a PKI, and that a PKI should not prohibit this.

From: [email-masked]
To: [email-masked], [email-masked], [email-masked]
Cc: [email-masked]
Subject: AW: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 16:35:39 +0200
Sender: [email-masked]

Peter,

with issuerSerial in the AKI extension you only identify the certificate to
verify the signature of e. g. the CRL. But, as far as I understood the
discussion, the question is where can I find this certificate.

Regards

Thomas

> -----Ursprüngliche Nachricht-----
> Von: Peter Sylvester [mailto:[email-masked]]
> Gesendet: Mittwoch, 27. Oktober 2004 16:19
> An: [email-masked]; [email-masked]
> Cc: [email-masked]
> Betreff: RE: Signer certificate discovery for CRLs
> 
> 
> 
> 
> SMIME seems to work with an information that just has
> 'issuername+serialnumber' to point to th certificate
> that is used for signing. 
> 
> A similar information can be made available in the
> AuthorityKeyIdentifier, i.e. point to a cert that
> has a key that has signed the cert or crl. 
> 
> What is missing here:
> 
> -  A generic way to map this value to some repository request? 
> -  To indicate an explicit mapping (at a near place)?  
> 
> I also do not really remember that the id-ad-caRepository
> SIA extension had been actually proposed in 2000, it simply
> appeared in part1-new-03. 
> 
> 
> 

Date: Wed, 27 Oct 2004 16:19:10 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked]
Subject: RE: Signer certificate discovery for CRLs
Cc: [email-masked]
Sender: [email-masked]

SMIME seems to work with an information that just has
'issuername+serialnumber' to point to th certificate
that is used for signing. 

A similar information can be made available in the
AuthorityKeyIdentifier, i.e. point to a cert that
has a key that has signed the cert or crl. 

What is missing here:

-  A generic way to map this value to some repository request? 
-  To indicate an explicit mapping (at a near place)?  

I also do not really remember that the id-ad-caRepository
SIA extension had been actually proposed in 2000, it simply
appeared in part1-new-03. 

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: 3280 issue
Date: Wed, 27 Oct 2004 09:35:15 -0400
Importance: Normal
Sender: [email-masked]

Peter,

This is not a 3280 issue.  This is how directories are deployed.  That is
why X.500 and LDAP can be run over TLS/SSL.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Peter Sylvester
Sent: Wednesday, October 27, 2004 8:19 AM
To: [email-masked]
Subject: 3280 issue

In a directory which is protected by the same X509 hierarchy
it is sufficient that certificates and crls are the only 
objects (besides a trust anchor) that need to be protected using a signature
(authentoicity and integrity), since an absence of certificats always leads
to some error that can be attributed to the repository.

In a situation with multiple paths, the absence of a CA cert
in the directory is something cannot be detected, i.e., if
some MIM or wahtever modifies the content of the transfer from the
directory, an theoretically existing cert path can simply not be available
without the possibility of detecting whether this is intended or a failure
of the directory (directory = 
whatever repository).

It seems necessary that something like signing a  
list of certificates containing all crosscerts towards
and another from other CAs is necessary to have the
analogy of a single object, i.e; to determine completeness. 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 14:26:29 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

Short reply.

> Are you claiming that this is only needed for indirect CRLs ?

No this is not just for indirect CRLs but it is most needed and obvious
there.

> This has never been demonstrated, and before knowing the solution, it
> would
> be nice to know what the problem is.

The issue has been explained at lest 4 or 5 times on this thread and it
would probably not do any good to do it yet another time. 
You have also demonstrated through your answers that you have understood
it quite well.

Short repetition of the stated pros and cons:

The SIA may work IF:
- You have a "repository" available through which you can find suitable
information or make a suitable query for certificates.
- You have enough defined rules and processing time and power to allow
local processing the information gathered to find and build the path to
the CRL issuer.
- The CRL signer is nominated through a certificate that is issued
directly by the certificate issuing CA (or it will be to complex to find
the path to the CRL issuer). 

The AIA may work IF:
- The client already supports AIA in certificates for path building and
have the capacity to extend this to use in CRLs
- The client support downloading and processing of a single certificate
file from the specified location.

The AIA have 2 main advantages over SIA.
1) You typically only get a single certificate response in a single
file. This is much lower complexity than a link to all certificates
issued by a CA.
2) SIA is constrained to nomination of CRL issuer through a certificate
issued by the certificate issuing CA. AIA is independent of how the path
to the CRL is built and thus more generic.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 27 oktober 2004 15:00
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> > I disagree,
>    So we disagree.
> 
> > The problem to determine that a CRL is the correct CRL for a
certificate
> > is a completely separate and independent problem to the issue to
> > discover a factual certification path to a particular CRL in order
to
> > validate its signature.
> 
> No. The issue is who provide that extension and in which case or
case(s).
> Then what kind of use RPs are expected to do with it.
> 
> We already have too many extensions where different people have
different
> interpretations of their use and thenafter justify an architecture by
the
> presence of that extension ! or because "nothing prevents to make a
given
> interpretation" of the document.
> 
> > These can, and probably should, be solved independently.
> 
> > The task to allow AIA as a CRL extension in its current form does
not
> > have to be on hold in the meanwhile. There are strong reasons enough
to
> > see it through.
> 
> > This relates to real practical problems. In our efforts, as
implementer,
> > to work with indirect CRLs,
> 
> Are you claiming that this is only needed for indirect CRLs ?
> 
> (i.e. for CRLs which include certificates issued by authorities other
than
> the CRL issuer).
> 
> > we must in some cases rely on either AIA in CRLs or a similar,
currently
>  > non-standardized method.
> 
> > SIA doesn't solve our needs.
> 
> This has never been demonstrated, and before knowing the solution, it
> would
> be nice to know what the problem is.
> 
> Denis
> 
>  > AIA does. It seems to me that other implementers have reached
> > the same conclusion.
> 
> 
> > /Stefan

Date: Wed, 27 Oct 2004 15:25:48 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

There is also the AuthorityKeyIdentifier extension in a CRL. 

Date: Wed, 27 Oct 2004 14:59:42 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

> I disagree,
   So we disagree.

> The problem to determine that a CRL is the correct CRL for a certificate
> is a completely separate and independent problem to the issue to
> discover a factual certification path to a particular CRL in order to
> validate its signature.

No. The issue is who provide that extension and in which case or case(s).
Then what kind of use RPs are expected to do with it.

We already have too many extensions where different people have different 
interpretations of their use and thenafter justify an architecture by the 
presence of that extension ! or because "nothing prevents to make a given 
interpretation" of the document.

> These can, and probably should, be solved independently.

> The task to allow AIA as a CRL extension in its current form does not
> have to be on hold in the meanwhile. There are strong reasons enough to
> see it through.

> This relates to real practical problems. In our efforts, as implementer,
> to work with indirect CRLs, 

Are you claiming that this is only needed for indirect CRLs ?

(i.e. for CRLs which include certificates issued by authorities other than 
the CRL issuer).

> we must in some cases rely on either AIA in CRLs or a similar, currently 
 > non-standardized method.

> SIA doesn't solve our needs. 

This has never been demonstrated, and before knowing the solution, it would 
be nice to know what the problem is.

Denis

 > AIA does. It seems to me that other implementers have reached
> the same conclusion. 

> /Stefan

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 13:44:06 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

I disagree,

The problem to determine that a CRL is the correct CRL for a certificate
is a completely separate and independent problem to the issue to
discover a factual certification path to a particular CRL in order to
validate its signature.

These can, and probably should, be solved independently.

The task to allow AIA as a CRL extension in its current form does not
have to be on hold in the meanwhile. There are strong reasons enough to
see it through.

This relates to real practical problems. In our efforts, as implementer,
to work with indirect CRLs, we must in some cases rely on either AIA in
CRLs or a similar, currently non-standardized method. SIA doesn't solve
our needs. AIA does. It seems to me that other implementers have reached
the same conclusion. 

/Stefan

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 27 oktober 2004 14:24
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> > Denis,
> >
> > Yes, SIA could be an option in SOME cases, if properly implemented
and
> > if combined with an appropriate directory infrastructure.
> 
> You sentence is not correct.
> 
> "SIA could be an option in SOME cases, if properly implemented and if
> combined with an appropriate *repository* infrastructure".
> 
> > It's just not as generic and cost effective as AIA in CRLs,
especially
> > not when building chains from bottom up, which is a common way to
build
> > paths.
> 
> Of course since SIA is used to build chain top down ! (which is a
common
> way
> to build paths).
> 
> > I'm not trying to pick on words here. But for the first time I got
the
> > impression that you accept AIA in CRLs as a valid option.
> 
> Not exactly. AIA in CRLs COULD be a valid option.
> 
> > Do you still claim that AIA in CRLs is an invalid option that should
NOT
> > be allowed?
> 
> I never claimed such a sentence, so I do not need to disclaim it. :-|
> 
> Before accepting AIA as a valid option for CRLs we have to say how and
> when
> it would be used. The issue is MUCH MORE complicated than simply
adding
> AIA
> in CRLs, since we have to give the processing rules for that
extension.
> 
> Upon this aspect, we are far from an agreement and this is of course
> strongly related to the (lack of a) CRL processing model.
> 
> So we need first to say how we verify that a CRL Issuer is the right
CRL
> Issuer (see my e-mail fom this morning to Santosh). Once we will have
> fixed
> that, then we will be able to explore the advantages and disavantages
of
> including or not AIA in CRLs.
> 
> Denis
> 

Date: Wed, 27 Oct 2004 14:24:16 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

> Denis,
> 
> Yes, SIA could be an option in SOME cases, if properly implemented and
> if combined with an appropriate directory infrastructure.

You sentence is not correct.

"SIA could be an option in SOME cases, if properly implemented and if 
combined with an appropriate *repository* infrastructure".

> It's just not as generic and cost effective as AIA in CRLs, especially
> not when building chains from bottom up, which is a common way to build
> paths.

Of course since SIA is used to build chain top down ! (which is a common way 
to build paths).

> I'm not trying to pick on words here. But for the first time I got the
> impression that you accept AIA in CRLs as a valid option.

Not exactly. AIA in CRLs COULD be a valid option.

> Do you still claim that AIA in CRLs is an invalid option that should NOT
> be allowed?

I never claimed such a sentence, so I do not need to disclaim it. :-|

Before accepting AIA as a valid option for CRLs we have to say how and when 
it would be used. The issue is MUCH MORE complicated than simply adding AIA 
in CRLs, since we have to give the processing rules for that extension.

Upon this aspect, we are far from an agreement and this is of course 
strongly related to the (lack of a) CRL processing model.

So we need first to say how we verify that a CRL Issuer is the right CRL 
Issuer (see my e-mail fom this morning to Santosh). Once we will have fixed 
that, then we will be able to explore the advantages and disavantages of 
including or not AIA in CRLs.

Denis

> /Stefan
>  
> 
> 
>>-----Original Message-----
>>From: [email-masked]
> 
> [mailto:[email-masked]]
> 
>>On Behalf Of Denis Pinkas
>>Sent: den 27 oktober 2004 09:32
>>To: Stefan Santesson
>>Cc: pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Stefan,
>>
>>
>>>Denis,
>>
>>><snip>
>>
>>>>Use of AIA in CRLs would be one way to do it, while the use of SIA
>>>>in CA certificates is the other way.
>>>
>>>I'm pleased to read that you acknowledge AIA in CRLs as a valid
>>
> option.
> 
>>>That is all I ask for.
>>
>>I'm pleased to read that you noticed that AIA *would be an option*
> 
> since I
> 
>>used "would be" in the case of AIA and "is" in the case of SIA:
>>
>>Use of AIA in CRLs *would be* one way to do it, while the use of SIA
>>in CA certificates *is* the other way.  :-)
>>
>>Denis
>>
>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>
> 
> 

Date: Wed, 27 Oct 2004 14:19:28 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked]
Subject: 3280 issue
Sender: [email-masked]

In a directory which is protected by the same X509 hierarchy
it is sufficient that certificates and crls are the only 
objects (besides a trust anchor) that need to be protected
using a signature (authentoicity and integrity), since an
absence of certificats always leads to some error that can
be attributed to the repository.

In a situation with multiple paths, the absence of a CA cert
in the directory is something cannot be detected, i.e., if
some MIM or wahtever modifies the content of the transfer from
the directory, an theoretically existing cert path can simply
not be available without the possibility of detecting whether
this is intended or a failure of the directory (directory = 
whatever repository).

It seems necessary that something like signing a  
list of certificates containing all crosscerts towards
and another from other CAs is necessary to have the
analogy of a single object, i.e; to determine completeness. 

Content-class: urn:content-classes:message
Subject: RE: 3280 open issues
Date: Wed, 27 Oct 2004 13:18:49 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Santosh Chokhani" <[email-masked]>, <[email-masked]>
Sender: [email-masked]

Santosh,

We agree on the facts.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Santosh Chokhani
> Sent: den 25 oktober 2004 15:00
> To: [email-masked]
> Subject: RE: 3280 open issues
> 
> 
> I agree on criticality.
> 
> As to the qualifiers, they are output for use by the RP (client); they
> should be kept in order to comply with X.509
> 
> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On
> Behalf Of Stefan Santesson
> Sent: Monday, October 25, 2004 4:45 AM
> To: Peter Sylvester; [email-masked]
> Subject: RE: 3280 open issues
> 
> 
> 
> More so,
> 
> The qualifier set isn't used anywhere either.
> 
> Test for criticality is part of 3280 path validation, but as Peter
points
> out, it doesn't require use of the criticality indicator as part of
the
> process.
> 
> You could in fact create a compliant path validation algorithm by
> completely
> remove the qualifier set and criticality indicator from the policy
tree,
> which would make the algorithm more clean.
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> > -----Original Message-----
> > From: [email-masked]
> [mailto:[email-masked]]
> > On Behalf Of Peter Sylvester
> > Sent: den 22 oktober 2004 17:47
> > To: [email-masked]
> > Subject: 3280 open issues
> >
> >
> >
> > To repeat it:
> >
> > The current validation algorith in 3280 contain a table
> >
> >               +----------------+
> >               |   anyPolicy    |   <---- valid_policy
> >               +----------------+
> >               |       {}       |   <---- qualifier_set
> >               +----------------+
> >               |     FALSE      |   <---- criticality_indicator
> >               +----------------+
> >               |  {anyPolicy}   |   <---- expected_policy_set
> >               +----------------+
> >
> > but it seems to me that nowhere the criticality_indicator
> > is used at all which is normal because treatment is independant of
> > that.
> >
> > There are several places to copy some value and to set it according
> > the criticality of policy mapping but still no usage.
> >
> > it seems that this is a left over from a treatment which had been
> > abandonned in order to be aligned with an X509 defect report
> resolution.
> 
> 

From: [email-masked]
To: [email-masked], [email-masked]
Subject: AW: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Wed, 27 Oct 2004 14:06:55 +0200
Sender: [email-masked]

See below 

> -----Ursprüngliche Nachricht-----
> Von: Jean-Marc Desperrier [mailto:[email-masked]]
> Gesendet: Mittwoch, 27. Oktober 2004 13:18
> An: [email-masked]
> Betreff: Re: Briefing on CRL Path for IETF PKIX WG Meeting
> 
> 
> 
> Denis Pinkas wrote:
> 
> > A minor point first. On slide 3, it is written:
> >
> > "A CA is defined by a name alone".
> >
> > This is contradicted 3 slides after when it is said:
> > "There can be more than one CA with the same name".
> 
> I'd say that the X509 rule is that a CA is defined by it's DN alone, 
> therefore one should never try to create two CA with the same DN in a 
> properly managed hierarchy.

Jean-Marc, what do you mean by "creating two CAs with the same DN"? What you
mean is to "create two certificates containing the same DN". And this means
both certificates belong to the same CA. This is IMHO useful e. g. for key
turnover. The fraud you mentioned below is only applicable on TAs. The
naming of subordinate CAs is within the responsibility of the certificate
issuing CA(TA). In the case of TAs you will ever have the problem, that
somebody may create a certificate with the TAs DN an publish it.

Regards

Thomas Beckmann

> 
> But that the pkix Internet profile has to envision cases 
> where it's will 
> not be possible to absolutly garantee this will never happen and 
> therefore must protect itself against the security issues 
> raised by such 
> a situation and impose more stringent rules for certification 
> paths that 
> wil properly handle even that case.
> 
> One interesting question this raises is the following :
> If we don't consider the restriction we need for pkix, what 
> would be the 
> X509 compliant way to handle the case where you have two CA 
> certificates 
> with the same DN inside separate certification path ?
> I see two possible answer :
> - This is forbidden, and one or both of the certificates should be 
> handled as invalid when a client discovers such a case.
> - They validly cover the same CA, and validation may be made using 
> either path.
> 
> What is raised here is that the second solution is not acceptable for 
> pkix, because it makes it possible for anybody who was given the 
> autority to emit a CA certificate to impersonate any other CA in the 
> hirarchy.
> Several aspects of X509 make me believe it's not really intended for 
> X509 either.
> 

To: Tim Polk <[email-masked]>, [email-masked]
Cc: Denis Pinkas <[email-masked]>, [email-masked]
Subject: Re: Call for 3280 issues (was Re: PKIX agenda requests)
From: Tom Gindin <[email-masked]>
Date: Wed, 27 Oct 2004 08:01:46 -0400
Sender: [email-masked]

        Tim, David:

        Is the question of whether constraint values should be permitted 
in the "Initialization" step of standard path validation within scope for 
this effort?  I realize that to avoid declaring existing implementations 
non-conformant we would need to make support for this feature optional. 
There don't appear to be any serious compatibility issues, at least to me.

                Tom Gindin

Tim Polk <[email-masked]>
Sent by: [email-masked]
10/25/2004 11:30 AM
 
        To:     Denis Pinkas <[email-masked]>, [email-masked]
        cc:     [email-masked]
        Subject:        Call for 3280 issues (was Re: PKIX agenda 
requests)

Denis,

Thank you for raising this issue.  3280bis will certainly be on the agenda 

at the 61st IETF, but I had forgotten to post a call for issues.

Here is a preview of the 3280bis discussion:
(1) I have volunteered David Cooper as lead editor for 3280bis. ISO-PKIX 
consistency is a key issue, and David was a key contributor in both 
arenas.
(2) David is assembling an issues list from old PKIX mailing list traffic, 

as well as issues that had been pointed out to the 3280 editors.
(3) Steve and I have assembled a small design team to publish the -00 
draft.   The group includes product expertise as well as former ISO and 
PKIX editors.
(4) When the -00 draft is published, David will also post the list of 
issues and how they were resolved.  This will let the WG quickly identify 
modifications to the text, and the rationale.

We need all WG members to document and submit any issues that need to be 
addressed in RFC 3280.  Note that the scope of this effort is limited to 
clarification of existing features where required to achieve 
interoperability or maintain consistency with ISO X.509, and removal of 
features where two implementations did not exist.  New features would 
jeopardize the progression from Draft to Proposed.

Issues may be submitted to the list, but please CC David Cooper at 
[email-masked] on any issues lists!

Thanks,

Tim

At 04:26 PM 10/22/2004 +0200, Denis Pinkas wrote:
>Tim,
>
>Since you are listening and asking for agenda topics, revision of RFC 
3280 
>should be a top priority item on the list.
>
>It is time to start the writing of a draft document which summarizes all 
>the candidate changes which should be done to RFC 3280.
>
>Then would you also ask if there are co-editors volunteer to write 
>son-of-RFC 3280 ?
>
>Denis
>
>>Folks,
>>PKIX is scheduled for Wednesday November 10, 1 - 3:00 PM at the 60th 
IETF 
>>(in Washington).
>>I spaced on agenda requests, and the time for WG agenda submissions is 
>>winding down.  My apologies about the late notice, but I would like to 
>>submit a draft agenda next Monday by the noon deadline.
>>Please send me your agenda requests as soon as possible.  I will as 
>>always give preference to WG documents, but will try to fit in related 
>>personal drafts and liasion presentations.
>>Thanks,
>>Tim Polk
>
>
>
>

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 27 Oct 2004 13:01:52 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

Denis,

Yes, SIA could be an option in SOME cases, if properly implemented and
if combined with an appropriate directory infrastructure.

It's just not as generic and cost effective as AIA in CRLs, especially
not when building chains from bottom up, which is a common way to build
paths.

I'm not trying to pick on words here. But for the first time I got the
impression that you accept AIA in CRLs as a valid option.

Do you still claim that AIA in CRLs is an invalid option that should NOT
be allowed?

/Stefan

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Denis Pinkas
> Sent: den 27 oktober 2004 09:32
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Stefan,
> 
> > Denis,
> 
> > <snip>
> 
> >>Use of AIA in CRLs would be one way to do it, while the use of SIA
> >>in CA certificates is the other way.
> 
> > I'm pleased to read that you acknowledge AIA in CRLs as a valid
option.
> > That is all I ask for.
> 
> I'm pleased to read that you noticed that AIA *would be an option*
since I
> used "would be" in the case of AIA and "is" in the case of SIA:
> 
> Use of AIA in CRLs *would be* one way to do it, while the use of SIA
> in CA certificates *is* the other way.  :-)
> 
> Denis
> 
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)

Date: Wed, 27 Oct 2004 13:59:32 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Jean-Marc Desperrier <[email-masked]>
CC: [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Sender: [email-masked]

Jean-Marc,

> Denis Pinkas wrote:

>> A minor point first. On slide 3, it is written:

>> "A CA is defined by a name alone".

>> This is contradicted 3 slides after when it is said:
>> "There can be more than one CA with the same name".

You cut the original message I sent and thus you missed the explanation.
See later down.

> I'd say that the X509 rule is that a CA is defined by it's DN alone, 
> therefore one should never try to create two CA with the same DN in a 
> properly managed hierarchy.

For X.509, I do *not* say X.500, a DN is only relative to the CA who has 
given it.

> But that the pkix Internet profile has to envision cases where it's will 
> not be possible to absolutly garantee this will never happen and 
> therefore must protect itself against the security issues raised by such 
> a situation and impose more stringent rules for certification paths that 
> wil properly handle even that case.

> One interesting question this raises is the following :
> If we don't consider the restriction we need for pkix, what would be the 
> X509 compliant way to handle the case where you have two CA certificates 
> with the same DN inside separate certification path ?

It is perfectly allowed to have two CA certificates with the same CA DN 
inside which do not refer to the same CA (i.e.entity).

> I see two possible answer :
> - This is forbidden, and one or both of the certificates should be 
> handled as invalid when a client discovers such a case.

No, since this is allowed.

> - They validly cover the same CA, and validation may be made using 
> either path.

This is neither true.

The sentence you cut provides you with the explanation:

"If we apply this recursively, then a CA name is composed of a name given by 
another CA, whose name is given by another CA, whose name is given by 
another CA, ..., whose name is given by a TA."

The single rule is: every CA MUST never assign the same DN to two different 
entities.

Denis

> What is raised here is that the second solution is not acceptable for 
> pkix, because it makes it possible for anybody who was given the 
> autority to emit a CA certificate to impersonate any other CA in the 
> hirarchy.
> Several aspects of X509 make me believe it's not really intended for 
> X509 either.
> 
> 

Date: Wed, 27 Oct 2004 13:18:04 +0200
From: Jean-Marc Desperrier <[email-masked]>
To: [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Sender: [email-masked]

Denis Pinkas wrote:

> A minor point first. On slide 3, it is written:
>
> "A CA is defined by a name alone".
>
> This is contradicted 3 slides after when it is said:
> "There can be more than one CA with the same name".

I'd say that the X509 rule is that a CA is defined by it's DN alone, 
therefore one should never try to create two CA with the same DN in a 
properly managed hierarchy.

But that the pkix Internet profile has to envision cases where it's will 
not be possible to absolutly garantee this will never happen and 
therefore must protect itself against the security issues raised by such 
a situation and impose more stringent rules for certification paths that 
wil properly handle even that case.

One interesting question this raises is the following :
If we don't consider the restriction we need for pkix, what would be the 
X509 compliant way to handle the case where you have two CA certificates 
with the same DN inside separate certification path ?
I see two possible answer :
- This is forbidden, and one or both of the certificates should be 
handled as invalid when a client discovers such a case.
- They validly cover the same CA, and validation may be made using 
either path.

What is raised here is that the second solution is not acceptable for 
pkix, because it makes it possible for anybody who was given the 
autority to emit a CA certificate to impersonate any other CA in the 
hirarchy.
Several aspects of X509 make me believe it's not really intended for 
X509 either.

Date: Wed, 27 Oct 2004 11:28:37 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: [email-masked]
Subject: Re: Briefing on CRL Path for IETF PKIX WG Meeting
Sender: [email-masked]

Santosh,

> Denis:

> The following URL is the location for the briefing you requested to be 
> posted.
>  
> www.orionsec.com/crldp-idp-v3.ppt <http://www.orionsec.com/crldp-idp-v3.ppt>

Many thanks. I browsed thru it.

A minor point first. On slide 3, it is written:

"A CA is defined by a name alone".

This is contradicted 3 slides after when it is said:
"There can be more than one CA with the same name".

Unless it is aid which CA provides the name of tha tCA, this is meaningless.
If we apply this recursively, then a CA name is composed of a name given by 
another CA, whose name is given by another CA, whose name is given by 
another CA, ..., whose name is given by a TA.

This could be what is meant in the last bullet point of slide 8 :
"Starting with a TA, the relying party can match the CA names in the 
certificate and CRL certification paths", but this is far from crystal clear.

Now the major points.

The same would apply to a CRL issuer name, UNLESS it is clear which CA can 
nominate that CRL Issuer. Unfortunately, this point is also far from crystal 
clear.

Before diving into the details of algorithms for CRL path processing, it is 
important to agree on which cases we will cover.

The case where the AC is the CRL Issuer is easy when it is the same key.

The case where the AC is the CRL Issuer but there has been a key change is 
already more complex.

Now when the CRL Isssuer is not the CA we need to consider two cases:

   a) the CA got no right to issue CRLs (it only got a CA certificate
      with the keyCertSign bit (bit 5),

   b) the CA got the right to issue CRLs (it got a CA certificate with both
      bits sets, i.e. keyCertSign bit (bit 5) and cRLSign bit (bit 6).

These two cases would need to be addressed in details.

Finally we would have to clarify what is an indirect CRL Issuer and what 
kind of processing would be done in taht case.

Now, if we go just a litte bit under the details of some slides, there is no 
notion of a certification path with CRL isssuer names.

A path may end up with a CRL Issuer name, but only CA names are allowed in 
the certification path. So slide 10 is incorrect and by implication 
subsequent slides 11 and 12 are incorrect too.

Denis

> Santosh Chokhani
> Orion Security Solutions, Inc.
> 1489 Chain Bridge Road, Suite 300
> McLean, Virginia 22101
> (703) 917-0060  Ext. 35 (voice)
> (703) 917-0260 (Fax)
> [email-masked]
> Visit our Web site
> http://www.orionsec.com <http://www.orionsec.com/>

Date: Wed, 27 Oct 2004 09:54:14 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: [email-masked], [email-masked]
CC: Peter Sylvester <[email-masked]>, [email-masked]
Subject: Re: PKIX WG Agenda for 61st IETF
Sender: [email-masked]

Tim and Steve,

I fully support Peter.

Starting to issue a -00 version for 3280bis would not be a good solution.

What we first need is the list of compiled issues and publish that list as 
an Internet Draft knowing that it will not be transformed into an RFC but 
will be used later on to build 3280bis-00.

Denis

>>2.2 3280bis
>>         Tim Polk (NIST)
>>         (no draft)
>>
>>       The co-chairs have selected a lead editor for RFC 3280bis and formed
>>       a design team to develop a -00 draft from a issues list complied from
>>       PKIX mail messages and mail to the RFC 3280 editors.  Draft -00 is
>>       expected late in 2004.  This presentation will focus on scope and
>>       process.
>>       (10 min.)

> Tim, could you please tell a little bit more on the mailing list.
> The only information seen so far is in the presentation of San Diego
> which seems to list the same status *and* more, since it says that
> "list of issues compiled". 
> 
> waht is the probablity of success of "Draft -00 is expected late in 2004."
> compared to waht has been in the S.D. slides.
> 
> Since the list has been compiled, it could possible to show it somehow,
> and not just a digested version in a new draft for which it may be difficult
> to find where an issues has been treated (and ignored for whatever
> reason) or forgotten.  

Date: Wed, 27 Oct 2004 09:31:30 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

> Denis,

> <snip>

>>Use of AIA in CRLs would be one way to do it, while the use of SIA
>>in CA certificates is the other way.

> I'm pleased to read that you acknowledge AIA in CRLs as a valid option.
> That is all I ask for.

I'm pleased to read that you noticed that AIA *would be an option* since I 
used "would be" in the case of AIA and "is" in the case of SIA:

Use of AIA in CRLs *would be* one way to do it, while the use of SIA
in CA certificates *is* the other way.  :-)

Denis

> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-scvp-16.txt
Date: Tue, 26 Oct 2004 17:00:48 -0400
Sender: [email-masked]

--NextPart

	Title		: Simple Certificate Validation Protocol (SCVP)
	Author(s)	: A. Malpani, et al.
	Filename	: draft-ietf-pkix-scvp-16.txt
	Pages		: 73
	Date		: 2004-10-26
	
SCVP allows a client to offload certificate handling to a server.  
The server can provide the client with a variety of valuable 
information about the certificate, such as whether the certificate 
is valid, a certification path to a trust anchor, and revocation 
status.  SCVP has many purposes, including simplifying client 
implementations and allowing companies to centralize trust and 
policy management.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-scvp-16.txt

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-scvp-16.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-scvp-16.txt".

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-scvp-16.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-scvp-16.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-scvp-16.txt
Date: Tue, 26 Oct 2004 17:00:48 -0400
Sender: [email-masked]

--NextPart

	Title		: Simple Certificate Validation Protocol (SCVP)
	Author(s)	: A. Malpani, et al.
	Filename	: draft-ietf-pkix-scvp-16.txt
	Pages		: 73
	Date		: 2004-10-26
	
SCVP allows a client to offload certificate handling to a server.  
The server can provide the client with a variety of valuable 
information about the certificate, such as whether the certificate 
is valid, a certification path to a trust anchor, and revocation 
status.  SCVP has many purposes, including simplifying client 
implementations and allowing companies to centralize trust and 
policy management.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-scvp-16.txt

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-scvp-16.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-scvp-16.txt".

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-scvp-16.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-scvp-16.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Tue, 26 Oct 2004 12:17:30 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>, "Santosh Chokhani" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

Denis,

<snip>
> Use of AIA in CRLs would be one way to do it, while the use of SIA
> in CA certificates is the other way.
>

I'm pleased to read that you acknowledge AIA in CRLs as a valid option.
That is all I ask for.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 22 oktober 2004 16:37
> To: Stefan Santesson; Santosh Chokhani
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan and Santosh,
> 
> > Denis,
> 
> > Thanks for the collection of relevant quotes.
> 
> > The case described may be odd but as far as I know, not violating
any
> > current text in RFC 3280 or X.509.
> 
> > A CA nominates a CRL by information in the CDP extension in the
cert,
> > not by issuing a cert to the CRL issuer. Where can you find that the
> > latter is a requirement? At least not in any of the sections you
quote.
> 
> > Regardless of this, the truth expressed by Santosh stands. Use of
AIA in
> > CRLs is more generic and provides less coding complexity.
> 
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> 
> Conformity of CRL revocation checking to RFC 3280 through vagueness
> (your argument saying the content of the document does not violate
> any current text) is not the way to guaranty interoperability.
> 
> The description present in the document shall be sufficient to allow
> two different implementation to interoperate.
> 
> RFC 3280 is supposed to be a "standards track" document which means
> that it has also to conform with the draft standard requirements
> expressed in RFC 2026, which are:
> 
> 4.1.2  Draft Standard
> 
>     A specification from which at least two independent and
interoperable
>     implementations from different code bases have been developed, and
>     for which sufficient successful operational experience has been
>     obtained, may be elevated to the "Draft Standard" level.  For the
>     purposes of this section, "interoperable" means to be functionally
>     equivalent or interchangeable components of the system or process
in
>     which they are used.
> 
> (..)
> 
>     A Draft Standard must be well-understood and known to be quite
>     stable, both in its semantics and as a basis for developing an
>     implementation.
> 
> RFC 3280 is supposed to be a standards track document which means,
> according to RFC 2026, that :
> 
>     A Proposed Standard should have no known technical omissions with
>     respect to the requirements placed upon it.
> 
> However CRL processing has technical omissions which should be fixed.
> 
> Since Tim is listening and asking for agenda topics, revision of RFC
3280
> should be a top priority item on the list.
> 
> It is time to start the writing of a document which summarizes all
> the candidate changes which should be done to RFC 3280.
> 
> In addition, the "truth expressed by Santosh" does NOT stand.
> Use of AIA in CRLs would be one way to do it, while the use of SIA
> in CA certificates is the other way.
> 
> Denis

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: Briefing on CRL Path for IETF PKIX WG Meeting
Date: Tue, 26 Oct 2004 05:32:38 -0400
Importance: Normal
Sender: [email-masked]

This is a multi-part message in MIME format.

------=_NextPart_000_00EA_01C4BB1D.37BC4EB0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Denis:
 
The following URL is the location for the briefing you requested to be
posted.
 
 <http://www.orionsec.com/crldp-idp-v3.ppt>
www.orionsec.com/crldp-idp-v3.ppt
 
Santosh Chokhani 
Orion Security Solutions, Inc. 
1489 Chain Bridge Road, Suite 300 
McLean, Virginia 22101 
(703) 917-0060  Ext. 35 (voice) 
(703) 917-0260 (Fax) 
[email-masked] 
Visit our Web site 
http://www.orionsec.com <http://www.orionsec.com/>  

------=_NextPart_000_00EA_01C4BB1D.37BC4EB0
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii">
<TITLE>Message</TITLE>

<META content=3D"MSHTML 6.00.2900.2523" name=3DGENERATOR></HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D045533009-26102004>Denis:</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D045533009-26102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D045533009-26102004>The =
following URL is=20
the location for the briefing you requested to be =
posted.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><A href=3D"http://www.orionsec.com/crldp-idp-v3.ppt"><FONT =
face=3DArial=20
size=3D2>www.orionsec.com/crldp-idp-v3.ppt</FONT></A></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><SPAN lang=3Den-us><FONT face=3DArial size=3D2>Santosh =
Chokhani</FONT></SPAN>=20
<BR><SPAN lang=3Den-us><FONT face=3DArial size=3D2>Orion Security =
Solutions,=20
Inc.</FONT></SPAN> <BR><SPAN lang=3Den-us><FONT face=3DArial =
size=3D2>1489 Chain=20
Bridge Road, Suite 300</FONT></SPAN> <BR><SPAN lang=3Den-us><FONT =
face=3DArial=20
size=3D2>McLean, Virginia 22101</FONT></SPAN> <BR><SPAN =
lang=3Den-us><FONT=20
face=3DArial size=3D2>(703)</FONT> <FONT face=3DArial =
size=3D2>917</FONT><FONT=20
face=3DArial size=3D2>-</FONT><FONT face=3DArial =
size=3D2>0060</FONT><FONT face=3DArial=20
size=3D2></FONT>&nbsp;<FONT face=3DArial size=3D2> </FONT><FONT =
face=3DArial=20
color=3D#ff0000 size=3D2>Ext. 35</FONT> <FONT face=3DArial =
size=3D2>(</FONT><FONT=20
face=3DArial size=3D2>voice</FONT><FONT face=3DArial =
size=3D2>)</FONT></SPAN> <BR><SPAN=20
lang=3Den-us><FONT face=3DArial size=3D2>(703)</FONT> <FONT face=3DArial =

size=3D2>917</FONT><FONT face=3DArial size=3D2>-</FONT><FONT =
face=3DArial=20
size=3D2>0260</FONT><FONT face=3DArial size=3D2> (Fax)</FONT></SPAN> =
<BR><SPAN=20
lang=3Den-us><FONT face=3DArial =
size=3D2>[email-masked]</FONT></SPAN> <BR><SPAN=20
lang=3Den-us><FONT face=3DArial size=3D2>Visit our Web =
site</FONT></SPAN> <BR><SPAN=20
lang=3Den-us><FONT face=3DArial size=3D2><A=20
href=3D"http://www.orionsec.com/">http://www.orionsec.com</A></FONT></SPA=
N> </DIV>
<DIV>&nbsp;</DIV></BODY></HTML>

------=_NextPart_000_00EA_01C4BB1D.37BC4EB0--

Date: Mon, 25 Oct 2004 18:44:03 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked]
Subject: Re: PKIX WG Agenda for 61st IETF
Cc: [email-masked], [email-masked]
Sender: [email-masked]

>> 
> 2.2 3280bis
>          Tim Polk (NIST)
>          (no draft)
> 
>        The co-chairs have selected a lead editor for RFC 3280bis and formed
>        a design team to develop a -00 draft from a issues list complied from
>        PKIX mail messages and mail to the RFC 3280 editors.  Draft -00 is
>        expected late in 2004.  This presentation will focus on scope and
>        process.
>        (10 min.)
> 

Tim, could you please tell a little bit more on the mailing list.
The only information seen so far is in the presentation of San Diego
which seems to list the same status *and* more, since it says that
"list of issues compiled". 

waht is the probablity of success of "Draft -00 is expected late in 2004."
compared to waht has been in the S.D. slides.

Since the list has been compiled, it could possible to show it somehow,
and not just a digested version in a new draft for which it may be difficult
to find where an issues has been treated (and ignored for whatever
reason) or forgotten.  

Date: Mon, 25 Oct 2004 17:40:22 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Tim Polk <[email-masked]>, [email-masked]
CC: [email-masked]
Subject: Re: PKIX WG Agenda for 61st IETF
Sender: [email-masked]

Tim and Steve,

A few remarks:

Item 2.1: SCVP the draft is issued very late (we have still not received it 
at this time) so that we may reasonnably read it and raise issues. I would 
appreciate if Trevor could post his presentation before the meeting.

Item 2.2: 3280bis I would appreciate to be part of the design team.

Item 2.3: "Issues and Recommendations on CRL Processing Rules".
I would appreciate if Santosh could post his presentation before the meeting.

Item 2.4: "Discovering CRL Signer Certificates Using AIA" should be instead 
"Discovering CRL Signer Certificates Using AIA *and SIA*" and thus the draft 
should cover both AIA and SIA.

Denis

PS. Unfortunately I will not be able to attend the meeting.

> Please accept the draft agenda below for the PKIX WG at the 61st IETF 
> meeting.
> 
> Thanks,
> 
> Tim Polk
> 
> ---------------------------------------------
> 
> PKIX WG (pkix-wg)
> 
> 
> WEDNESDAY, November 10, 2004 1300-1500
> ======================================
> 
> CHAIR: Stephen Kent <[email-masked]>, Tim Polk <[email-masked]>
> 
> AGENDA:
> 
> 1. WG Status and Direction
> 
> 1.1 Document Status Review [Tim Polk (NIST)]
> 
>        The working group has a number of Internet-Drafts.  Many
>        documents are with the ADs or in various stages of WG Last Call.
>        Several others are ready for Last Call. (10 min.)
> 
> 2. PKIX WG Specifications
> 
> 2.1 Simple Certificate Validation Protocol (SCVP)
>        Trveor Freeman (Microsoft)
>          submitted new draft, available soon at
>          http://www.ietf.org/internet-drafts/draft-ietf-pkix-scvp-15.txt
> 
>       A new draft has been submitted with significant enhancements.  This
>       presentation will highlight those changes and their rationale.
>       (30 min.)
> 
> 2.2 3280bis
>         Tim Polk (NIST)
>         (no draft)
> 
>       The co-chairs have selected a lead editor for RFC 3280bis and formed
>       a design team to develop a -00 draft from a issues list complied from
>       PKIX mail messages and mail to the RFC 3280 editors.  Draft -00 is
>       expected late in 2004.  This presentation will focus on scope and
>       process.
>       (10 min.)
> 
> 2.3 Issues and Recommendations on CRL Processing Rules
>         Santosh Chokhani (Orion)
>         (no draft)
> 
>       This presentation will provide a comprehensive review of issues in
>       CRL Processing.  Issues are identified in RFCs 3280 and 2560; changes
>       are proposed to resolve these issues.  Relationship with ISO's X.509
>       standard is also addressed
>       (15 min.)
> 
> 2.4 Discovering CRL Signer Certificates Using AIA
>         Stefan Santesson (Microsoft)
>         (draft after meeting)
> 
>       The ADs have approved a new PKIX document on this topic.  The 
> first draft
>       will be posted after this meeting.  This presentation will 
> describe the
>       problem and the projected -00 solution.
>       (5 min.)
> 
> 2.5 LDAP Schemas
>          David Chadwick (Univ. of Salford)
>          submitted new drafts; available soon at
>   
> http://www.ietf.org/internet-drafts/draft-ietf-pkix-ldap-crl-schema-03.txt
>   http://www.ietf.org/internet-drafts/draft-ietf-pkix-ldap-ac-schema-02.txt
> 
>       The WG has a suite of LDAP-PKIX drafts forming a comprehensive 
> solution
>       for LDAP based PKI information distribution.  New drafts of two 
> documenta
>       have been submitted since IETF 60 and are in WG Last Call.  (10 min.)
> 
> 2.6 LDAP PKIX Schema Issues
>        Kent Zeilenga (LDAP WG co-chair)
>        (no draft)
> 
>       This presentation identify remaining issues for PKI LDAP schemas and
>       (where applicable) ways to address them.
>       (10 min.)
> 
> 2.7 Algorithm IDs for Elliptic Curve Cryptography in PKIX
>         Daniel Brown (Certicom)
>       http://www.ietf.org/internet-drafts/draft-ietf-pkix-ecc-pkalgs-00.txt
> 
>       This document is stable and ready for progression.  The WG needs to
>       select a startegy for progression: progress indpendently or in a
>       revision of RFC 3279?
>       (10 min.)
> 
> 3. Related Specifications & Liaison Presentations
> 
>       Time allowing, liaison presentations will be accommodated to 
> ensure the
>       PKIX WG is aware of related specifications currently progressing as
>       individual drafts.
> 
>     3.1 User Interface Requirements for PKIX
>         Jaehoo Yoon (KISA)
>         (new draft submitted; to be available at
>       http://www.ietf.org/internet-drafts/draft-choi-pkix-ui-01.txt
> 
>       This document is a personal draft.  The presentation is a 
> follow-up to
>       a presentation on draft -00 at IETF-60.  Many people asked about 
> the all
>       important look and feel of the user interface; this short 
> demonstration
>       should further understanding and promote additional discussion.
>       (10 min.)
> 
> 

Date: Mon, 25 Oct 2004 11:30:41 -0400
To: Denis Pinkas <[email-masked]>, [email-masked]
From: Tim Polk <[email-masked]>
Subject: Call for 3280 issues (was Re: PKIX agenda requests)
Cc: [email-masked]
Sender: [email-masked]

Denis,

Thank you for raising this issue.  3280bis will certainly be on the agenda 
at the 61st IETF, but I had forgotten to post a call for issues.

Here is a preview of the 3280bis discussion:
(1) I have volunteered David Cooper as lead editor for 3280bis. ISO-PKIX 
consistency is a key issue, and David was a key contributor in both arenas.
(2) David is assembling an issues list from old PKIX mailing list traffic, 
as well as issues that had been pointed out to the 3280 editors.
(3) Steve and I have assembled a small design team to publish the -00 
draft.   The group includes product expertise as well as former ISO and 
PKIX editors.
(4) When the -00 draft is published, David will also post the list of 
issues and how they were resolved.  This will let the WG quickly identify 
modifications to the text, and the rationale.

We need all WG members to document and submit any issues that need to be 
addressed in RFC 3280.  Note that the scope of this effort is limited to 
clarification of existing features where required to achieve 
interoperability or maintain consistency with ISO X.509, and removal of 
features where two implementations did not exist.  New features would 
jeopardize the progression from Draft to Proposed.

Issues may be submitted to the list, but please CC David Cooper at 
[email-masked] on any issues lists!

Thanks,

Tim

At 04:26 PM 10/22/2004 +0200, Denis Pinkas wrote:
>Tim,
>
>Since you are listening and asking for agenda topics, revision of RFC 3280 
>should be a top priority item on the list.
>
>It is time to start the writing of a draft document which summarizes all 
>the candidate changes which should be done to RFC 3280.
>
>Then would you also ask if there are co-editors volunteer to write 
>son-of-RFC 3280 ?
>
>Denis
>
>>Folks,
>>PKIX is scheduled for Wednesday November 10, 1 - 3:00 PM at the 60th IETF 
>>(in Washington).
>>I spaced on agenda requests, and the time for WG agenda submissions is 
>>winding down.  My apologies about the late notice, but I would like to 
>>submit a draft agenda next Monday by the noon deadline.
>>Please send me your agenda requests as soon as possible.  I will as 
>>always give preference to WG documents, but will try to fit in related 
>>personal drafts and liasion presentations.
>>Thanks,
>>Tim Polk
>
>
>
>

Date: Mon, 25 Oct 2004 10:59:27 -0400
To: [email-masked]
From: Tim Polk <[email-masked]>
Subject: PKIX WG Agenda for 61st IETF
Cc: [email-masked], [email-masked]
Sender: [email-masked]

Please accept the draft agenda below for the PKIX WG at the 61st IETF meeting.

Thanks,

Tim Polk

---------------------------------------------

PKIX WG (pkix-wg)

WEDNESDAY, November 10, 2004 1300-1500
======================================

CHAIR: Stephen Kent <[email-masked]>, Tim Polk <[email-masked]>

AGENDA:

1. WG Status and Direction

1.1 Document Status Review [Tim Polk (NIST)]

        The working group has a number of Internet-Drafts.  Many
        documents are with the ADs or in various stages of WG Last Call.
        Several others are ready for Last Call. (10 min.)

2. PKIX WG Specifications

2.1 Simple Certificate Validation Protocol (SCVP)
        Trveor Freeman (Microsoft)
          submitted new draft, available soon at
          http://www.ietf.org/internet-drafts/draft-ietf-pkix-scvp-15.txt

       A new draft has been submitted with significant enhancements.  This
       presentation will highlight those changes and their rationale.
       (30 min.)

2.2 3280bis
         Tim Polk (NIST)
         (no draft)

       The co-chairs have selected a lead editor for RFC 3280bis and formed
       a design team to develop a -00 draft from a issues list complied from
       PKIX mail messages and mail to the RFC 3280 editors.  Draft -00 is
       expected late in 2004.  This presentation will focus on scope and
       process.
       (10 min.)

2.3 Issues and Recommendations on CRL Processing Rules
         Santosh Chokhani (Orion)
         (no draft)

       This presentation will provide a comprehensive review of issues in
       CRL Processing.  Issues are identified in RFCs 3280 and 2560; changes
       are proposed to resolve these issues.  Relationship with ISO's X.509
       standard is also addressed
       (15 min.)

2.4 Discovering CRL Signer Certificates Using AIA
         Stefan Santesson (Microsoft)
         (draft after meeting)

       The ADs have approved a new PKIX document on this topic.  The first 
draft
       will be posted after this meeting.  This presentation will describe the
       problem and the projected -00 solution.
       (5 min.)

2.5 LDAP Schemas
          David Chadwick (Univ. of Salford)
          submitted new drafts; available soon at
   http://www.ietf.org/internet-drafts/draft-ietf-pkix-ldap-crl-schema-03.txt
   http://www.ietf.org/internet-drafts/draft-ietf-pkix-ldap-ac-schema-02.txt

       The WG has a suite of LDAP-PKIX drafts forming a comprehensive solution
       for LDAP based PKI information distribution.  New drafts of two 
documenta
       have been submitted since IETF 60 and are in WG Last Call.  (10 min.)

2.6 LDAP PKIX Schema Issues
        Kent Zeilenga (LDAP WG co-chair)
        (no draft)

       This presentation identify remaining issues for PKI LDAP schemas and
       (where applicable) ways to address them.
       (10 min.)

2.7 Algorithm IDs for Elliptic Curve Cryptography in PKIX
         Daniel Brown (Certicom)
       http://www.ietf.org/internet-drafts/draft-ietf-pkix-ecc-pkalgs-00.txt

       This document is stable and ready for progression.  The WG needs to
       select a startegy for progression: progress indpendently or in a
       revision of RFC 3279?
       (10 min.)

3. Related Specifications & Liaison Presentations

       Time allowing, liaison presentations will be accommodated to ensure the
       PKIX WG is aware of related specifications currently progressing as
       individual drafts.

     3.1 User Interface Requirements for PKIX
         Jaehoo Yoon (KISA)
         (new draft submitted; to be available at
       http://www.ietf.org/internet-drafts/draft-choi-pkix-ui-01.txt

       This document is a personal draft.  The presentation is a follow-up to
       a presentation on draft -00 at IETF-60.  Many people asked about the all
       important look and feel of the user interface; this short demonstration
       should further understanding and promote additional discussion.
       (10 min.)

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: 3280 open issues
Date: Mon, 25 Oct 2004 08:59:38 -0400
Importance: Normal
Sender: [email-masked]

I agree on criticality.

As to the qualifiers, they are output for use by the RP (client); they
should be kept in order to comply with X.509

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Stefan Santesson
Sent: Monday, October 25, 2004 4:45 AM
To: Peter Sylvester; [email-masked]
Subject: RE: 3280 open issues

More so,

The qualifier set isn't used anywhere either.

Test for criticality is part of 3280 path validation, but as Peter points
out, it doesn't require use of the criticality indicator as part of the
process.

You could in fact create a compliant path validation algorithm by completely
remove the qualifier set and criticality indicator from the policy tree,
which would make the algorithm more clean.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)
 
> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Peter Sylvester
> Sent: den 22 oktober 2004 17:47
> To: [email-masked]
> Subject: 3280 open issues
> 
> 
> 
> To repeat it:
> 
> The current validation algorith in 3280 contain a table
> 
>               +----------------+
>               |   anyPolicy    |   <---- valid_policy
>               +----------------+
>               |       {}       |   <---- qualifier_set
>               +----------------+
>               |     FALSE      |   <---- criticality_indicator
>               +----------------+
>               |  {anyPolicy}   |   <---- expected_policy_set
>               +----------------+
> 
> but it seems to me that nowhere the criticality_indicator
> is used at all which is normal because treatment is independant of
> that.
> 
> There are several places to copy some value and to set it according
> the criticality of policy mapping but still no usage.
> 
> it seems that this is a left over from a treatment which had been
> abandonned in order to be aligned with an X509 defect report
resolution.

From: "David W Chadwick" <[email-masked]>
To: <[email-masked]>, <[email-masked]>
Subject: RE: PKIX agenda requests
Date: Mon, 25 Oct 2004 10:38:46 +0100
Organization: University of Salford
Sender: [email-masked]

Tim

I would like to present the LDAP schemas (for informational RFCs) for last
call as agreed at the last meeting. The final versions will be submitted to
the editor today

Regards

David

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of [email-masked]
> Sent: 22 October 2004 02:53
> To: [email-masked]
> Subject: PKIX agenda requests
> 
> 
> 
> 
> Folks,
> 
> PKIX is scheduled for Wednesday November 10, 1 - 3:00 PM at 
> the 60th IETF (in Washington).
> 
> I spaced on agenda requests, and the time for WG agenda 
> submissions is winding down.  My apologies about the late 
> notice, but I would like to submit a draft agenda next Monday 
> by the noon deadline.
> 
> Please send me your agenda requests as soon as possible.  I 
> will as always give preference to WG documents, but will try 
> to fit in related personal drafts and liasion presentations.
> 
> Thanks,
> 
> Tim Polk
> 
> 

Content-class: urn:content-classes:message
Subject: RE: 3280 open issues
Date: Mon, 25 Oct 2004 09:45:00 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Peter Sylvester" <[email-masked]>, <[email-masked]>
Sender: [email-masked]

More so,

The qualifier set isn't used anywhere either.

Test for criticality is part of 3280 path validation, but as Peter
points out, it doesn't require use of the criticality indicator as part
of the process.

You could in fact create a compliant path validation algorithm by
completely remove the qualifier set and criticality indicator from the
policy tree, which would make the algorithm more clean.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)
 
> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Peter Sylvester
> Sent: den 22 oktober 2004 17:47
> To: [email-masked]
> Subject: 3280 open issues
> 
> 
> 
> To repeat it:
> 
> The current validation algorith in 3280 contain a table
> 
>               +----------------+
>               |   anyPolicy    |   <---- valid_policy
>               +----------------+
>               |       {}       |   <---- qualifier_set
>               +----------------+
>               |     FALSE      |   <---- criticality_indicator
>               +----------------+
>               |  {anyPolicy}   |   <---- expected_policy_set
>               +----------------+
> 
> but it seems to me that nowhere the criticality_indicator
> is used at all which is normal because treatment is independant
> of that.
> 
> There are several places to copy some value and to set it according
> the criticality of policy mapping but still no usage.
> 
> it seems that this is a left over from a treatment which had been
> abandonned in order to be aligned with an X509 defect report
resolution.

From: "Faisal Maqsood" <[email-masked]>
To: <[email-masked]>, "Trevor Freeman" <[email-masked]>
Subject: Re: scvp 16 status
Date: Mon, 25 Oct 2004 12:21:20 +0500
Organization: Ascertia Ltd
Sender: [email-masked]

This is a multi-part message in MIME format.

------=_NextPart_000_003B_01C4BA8D.225CF910
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Yes please send me the marked up version.

Regards,
Faisal
  ----- Original Message -----=20
  From: Trevor Freeman=20
  To: [email-masked]=20
  Sent: Monday, October 25, 2004 11:45
  Subject: scvp 16 status

  SCVP 16 has been posted to the RFC editors.

  The volume of comments which were forthcoming following San Diego has =
generated a large number of edits to the document. If anyone is =
interested I have a marked up word version of the delta from SCVP 15. If =
you are interested in receiving that version just little r me.

  Thanks

  Trevor

------=_NextPart_000_003B_01C4BA8D.225CF910
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 5.50.4134.600" name=3DGENERATOR>
<STYLE>@font-face {
	font-family: Device Font 10cpi;
}
@page Section1 {size: 612.0pt 792.0pt; margin: 0pt 201.0pt 0pt 0pt; }
P.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0pt; FONT-FAMILY: "Device Font 10cpi"
}
LI.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0pt; FONT-FAMILY: "Device Font 10cpi"
}
DIV.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0pt; FONT-FAMILY: "Device Font 10cpi"
}
A:link {
	COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
	COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
	COLOR: purple; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
	COLOR: purple; TEXT-DECORATION: underline
}
SPAN.EmailStyle17 {
	COLOR: windowtext; FONT-FAMILY: Arial
}
DIV.Section1 {
	page: Section1
}
</STYLE>
</HEAD>
<BODY lang=3DEN-US vLink=3Dpurple link=3Dblue bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Yes please send me the marked up=20
version.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Regards,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Faisal</FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV=20
  style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
  <A title=[email-masked]=20
  href=3D"mailto:[email-masked]">Trevor Freeman</A> =
</DIV>
  <DIV style=3D"FONT: 10pt arial"><B>To:</B> <A =
title=[email-masked]=20
  href=3D"mailto:[email-masked]">[email-masked]</A> </DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Monday, October 25, 2004=20
11:45</DIV>
  <DIV style=3D"FONT: 10pt arial"><B>Subject:</B> scvp 16 status</DIV>
  <DIV><BR></DIV>
  <DIV class=3DSection1>
  <P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
  style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">SCVP 16 has been posted =
to the RFC=20
  editors.</SPAN></FONT></P>
  <P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
  style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial"></SPAN></FONT>&nbsp;</P>
  <P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
  style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">The volume of comments =
which were=20
  forthcoming following San Diego has generated a large number of edits =
to the=20
  document. If anyone is interested I have a marked up word version of =
the delta=20
  from SCVP 15. If you are interested in receiving that version just =
little r=20
  me.</SPAN></FONT></P>
  <P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
  style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Thanks</SPAN></FONT></P>
  <P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
  style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial">Trevor</SPAN></FONT></P></DIV></BLOCKQUOTE></BODY></HTML>

------=_NextPart_000_003B_01C4BA8D.225CF910--

Content-class: urn:content-classes:message
Subject: scvp 16 status
Date: Sun, 24 Oct 2004 23:45:09 -0700
From: "Trevor Freeman" <[email-masked]>
To: <[email-masked]>
Sender: [email-masked]

This is a multi-part message in MIME format.

------_=_NextPart_001_01C4BA5E.2B9B9849
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

SCVP 16 has been posted to the RFC editors.

=20

The volume of comments which were forthcoming following San Diego has
generated a large number of edits to the document. If anyone is
interested I have a marked up word version of the delta from SCVP 15. If
you are interested in receiving that version just little r me.

Thanks

Trevor

------_=_NextPart_001_01C4BA5E.2B9B9849
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html>

<head>
<meta http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 11 (filtered)">

<style>
<!--
 /* Font Definitions */
 @font-face
	{font-family:"Device Font 10cpi";
	panose-1:0 0 0 0 0 0 0 0 0 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0pt;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Device Font 10cpi";}
a:link, span.MsoHyperlink
	{color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{font-family:Arial;
	color:windowtext;}
@page Section1
	{size:612.0pt 792.0pt;
	margin:0pt 201.0pt 0pt 0pt;}
div.Section1
	{page:Section1;}
-->
</style>

</head>

<body lang=3DEN-US link=3Dblue vlink=3Dpurple>

<div class=3DSection1>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>SCVP 16 has been posted to the RFC =
editors.</span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>&nbsp;</span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>The volume of comments which were forthcoming =
following San Diego has generated a large number of edits to the =
document. If anyone is interested I
have a marked up word version of the delta from SCVP 15. If you are =
interested in
receiving that version just little r me.</span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Thanks</span></font></p>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Trevor</span></font></p>

</div>

</body>

</html>

------_=_NextPart_001_01C4BA5E.2B9B9849--

Date: Fri, 22 Oct 2004 17:47:25 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked]
Subject: 3280 open issues
Sender: [email-masked]

To repeat it:

The current validation algorith in 3280 contain a table

              +----------------+
              |   anyPolicy    |   <---- valid_policy
              +----------------+
              |       {}       |   <---- qualifier_set
              +----------------+
              |     FALSE      |   <---- criticality_indicator
              +----------------+
              |  {anyPolicy}   |   <---- expected_policy_set
              +----------------+

but it seems to me that nowhere the criticality_indicator
is used at all which is normal because treatment is independant
of that. 

There are several places to copy some value and to set it according
the criticality of policy mapping but still no usage.

it seems that this is a left over from a treatment which had been
abandonned in order to be aligned with an X509 defect report resolution. 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Fri, 22 Oct 2004 11:41:47 -0400
Importance: Normal
Sender: [email-masked]

Denis:

When I read 3280 and add the suggestions I and others have made, I find RFC
3280 compliant implementations to provides secure, interoperable, consistent
(i.e., adventitial results). 

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Denis Pinkas
Sent: Friday, October 22, 2004 10:37 AM
To: Stefan Santesson; Santosh Chokhani
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs

Stefan and Santosh,

> Denis,

> Thanks for the collection of relevant quotes.

> The case described may be odd but as far as I know, not violating any 
> current text in RFC 3280 or X.509.

> A CA nominates a CRL by information in the CDP extension in the cert, 
> not by issuing a cert to the CRL issuer. Where can you find that the 
> latter is a requirement? At least not in any of the sections you 
> quote.

> Regardless of this, the truth expressed by Santosh stands. Use of AIA 
> in CRLs is more generic and provides less coding complexity.

> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)

Conformity of CRL revocation checking to RFC 3280 through vagueness (your
argument saying the content of the document does not violate any current
text) is not the way to guaranty interoperability.

The description present in the document shall be sufficient to allow two
different implementation to interoperate.

RFC 3280 is supposed to be a "standards track" document which means that it
has also to conform with the draft standard requirements expressed in RFC
2026, which are:

4.1.2  Draft Standard

    A specification from which at least two independent and interoperable
    implementations from different code bases have been developed, and
    for which sufficient successful operational experience has been
    obtained, may be elevated to the "Draft Standard" level.  For the
    purposes of this section, "interoperable" means to be functionally
    equivalent or interchangeable components of the system or process in
    which they are used.

(..)

    A Draft Standard must be well-understood and known to be quite
    stable, both in its semantics and as a basis for developing an
    implementation.

RFC 3280 is supposed to be a standards track document which means, according
to RFC 2026, that :

    A Proposed Standard should have no known technical omissions with
    respect to the requirements placed upon it.

However CRL processing has technical omissions which should be fixed.

Since Tim is listening and asking for agenda topics, revision of RFC 3280
should be a top priority item on the list.

It is time to start the writing of a document which summarizes all the
candidate changes which should be done to RFC 3280.

In addition, the "truth expressed by Santosh" does NOT stand. Use of AIA in
CRLs would be one way to do it, while the use of SIA in CA certificates is
the other way.

Denis

Date: Fri, 22 Oct 2004 16:36:58 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>, Santosh Chokhani <[email-masked]>
CC: pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan and Santosh,

> Denis,

> Thanks for the collection of relevant quotes.

> The case described may be odd but as far as I know, not violating any
> current text in RFC 3280 or X.509.

> A CA nominates a CRL by information in the CDP extension in the cert,
> not by issuing a cert to the CRL issuer. Where can you find that the
> latter is a requirement? At least not in any of the sections you quote.

> Regardless of this, the truth expressed by Santosh stands. Use of AIA in
> CRLs is more generic and provides less coding complexity.

> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)

Conformity of CRL revocation checking to RFC 3280 through vagueness
(your argument saying the content of the document does not violate
any current text) is not the way to guaranty interoperability.

The description present in the document shall be sufficient to allow
two different implementation to interoperate.

RFC 3280 is supposed to be a "standards track" document which means
that it has also to conform with the draft standard requirements
expressed in RFC 2026, which are:

4.1.2  Draft Standard

    A specification from which at least two independent and interoperable
    implementations from different code bases have been developed, and
    for which sufficient successful operational experience has been
    obtained, may be elevated to the "Draft Standard" level.  For the
    purposes of this section, "interoperable" means to be functionally
    equivalent or interchangeable components of the system or process in
    which they are used.

(..)

    A Draft Standard must be well-understood and known to be quite
    stable, both in its semantics and as a basis for developing an
    implementation.

RFC 3280 is supposed to be a standards track document which means,
according to RFC 2026, that :

    A Proposed Standard should have no known technical omissions with
    respect to the requirements placed upon it.

However CRL processing has technical omissions which should be fixed.

Since Tim is listening and asking for agenda topics, revision of RFC 3280
should be a top priority item on the list.

It is time to start the writing of a document which summarizes all
the candidate changes which should be done to RFC 3280.

In addition, the "truth expressed by Santosh" does NOT stand.
Use of AIA in CRLs would be one way to do it, while the use of SIA
in CA certificates is the other way.

Denis

Date: Fri, 22 Oct 2004 16:33:54 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Peter Sylvester <[email-masked]>
CC: [email-masked], [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Peter,

I support your position.

>>My suggestion is base on the curent practice I am aware of, not based
>>on any spec or standard.

>>I believe that currently there is no spec to tell us what kind of objects
>>an AIA caIssuers URI will point to. The current definition of AIA in
>>RFC 3280 is too vague. I think that Stefan's proposal of
>>expanding the scope of AIA is a chance to clarify this.

> I would second the idea to put this on the list of issues for an
> update of 3280, ooups, the San Diego meeting proceedings say
> 'list of open issues compiled'. 

We need a document to list all "agreed changes" and pending issues.

>>For MIME types, RFC 2585 and RFC 2633 already defined some
>>useful types for cert, crl, or CMS/PKCS#7 object. Unfortunately,
>>related HTTP or FTP URI pointers (such as those in an AIA or a CRLDP)
>>defined in RFC 3280 have no reference to MIME types defined in RFC 2585
>>and RFC 2633.

> i'd be careful to allow different mime type together with one access method OID. 
> 
>>>Also, Peter Gutmann's new http-certstore does something completely
>>>different AFAIS.

>>Please note that I am talking about AIA not SIA. For an HTTP
>>URI in a SIA, it should follow the spec in Peter Gutmann's new
>>http-certstore proposal. I suggest that http-certstore spec should
>>have a reference to MIME types defined in RFC 2585.

> The difference is not SIA vs AIA IMO, but the format implied by 
> accessMethod (which is the same definition for SIA and AIA). 

>   " The type and
>    format of the information is specified by the accessMethod field;" 

We need to say more about the formats implied by accessMethod.
There are four possible cases :

  - it allows to retrieve one single file,
  - it allows to query for a single file in a repository,
  - it allows to query for one or more files in a repository,
  - it provides the address of a repository.

The current text is not crystal clear.

Denis

>>Wen-Cheng Wang
> Peter

Date: Fri, 22 Oct 2004 16:26:18 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: [email-masked]
CC: [email-masked]
Subject: Re: PKIX agenda requests
Sender: [email-masked]

Tim,

Since you are listening and asking for agenda topics, revision of RFC 3280 
should be a top priority item on the list.

It is time to start the writing of a draft document which summarizes all the 
candidate changes which should be done to RFC 3280.

Then would you also ask if there are co-editors volunteer to write 
son-of-RFC 3280 ?

Denis

> Folks,
> 
> PKIX is scheduled for Wednesday November 10, 1 - 3:00 PM at the 60th IETF (in 
> Washington).
> 
> I spaced on agenda requests, and the time for WG agenda submissions is winding 
> down.  My apologies about the late notice, but I would like to submit a draft 
> agenda next Monday by the noon deadline.
> 
> Please send me your agenda requests as soon as possible.  I will as always 
> give preference to WG documents, but will try to fit in related personal 
> drafts and liasion presentations.
> 
> Thanks,
> 
> Tim Polk

Date: Fri, 22 Oct 2004 16:16:01 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: pkix <[email-masked]>
Subject: Re : Signer certificate discovery for CRLs
Sender: [email-masked]

This is a repost of the message sent to the list on October 20.
This message was too long and thus has not been broadcasted to the list.

Since Stefan was copied, he got the message and has already provided one 
answer to it.

=========================================================================

Stefan,

[Stefan]

To save you from excessive discussions on a topic you don't really care
about, I concentrate on the one major problem with SIA that you missed
my point on:

1) How can the RP know what certificate's SIA it would use to find
these CRL signer cert?

You just picked the right certificate in my example since I gave that
information in the example. But the RP don't know that path, it only knows 
the path of the EE cert and the name of the CRL issuer!

[Denis]

This is sufficient to find out the right certificate once you know
where the CA places the certificates that it has issued.

[Stefan]

So.. This is NOT the point.

I'll try to explain. Take again an example.

The following is known to the RP:
1) Cert path:  EE_Cert -> CA_1 -> Root_CA_1
2) CRL issued by CRL_Issuer_B

This is NOT known to the RP.
CRL path: CRL -> CRL_Issuer_B -> Intermediary_CA_X - Root_CA_Y

[Denis]

I do not agree with that case.

The question is "who can nominate a CRL issuer ?".

A given CA_X can issue a certificate to CA_Y either allowing it to :

  - only issue certificates (keyCertSign bit set),
  - or both issue certificates and CRLs (cRLSign bit set also set).

In the former case, the CA_X will nominate one or more CRL Issuers, and CA_Y 
will need to contract with one (or more) of them.

Going back to the example above this means that CRL_Issuer_B must have a 
certificate from CA_1. It cannot have a certificate from Intermediary_CA_X, 
unless specific and different relationships would apply to CRL Issuers and 
such details have never been detailed in RFC 3280 (some proprietary models 
have adopted some very specific rules, but they are not covered by RFC 3280).

This discussion highlights the fact that the determination of the CRL Issuer 
is not precise enough in RC 3280 and due to this lack of precision, it seems 
that some people are make their own interpretation, which will lead to a 
lack of interoperability.

RFC 3280 states on page 48:

    Whenever the CRL issuer is not the CA
    that issued the certificates, the CRL is referred to as an indirect
    CRL.

"CRL issuer" is defined as "an optional system to which a CA delegates the 
             publication of certificate revocation lists";

This is vague. How is the delegation really performed from a RP point of view ?

RFC 3280 States:

    If the certificate issuer is not the CRL
    issuer, then the cRLIssuer field MUST be present and contain the Name
    of the CRL issuer.

A name is ambiguous unless it relates to some CA, whose name can also be 
trusted up to a root key. The question is thus who can issue a certificate 
for that name ? RFC 3280 does not tell.

Section 6.3 from RFC 3280 states:

6.3.3  CRL Processing

    This algorithm begins by assuming the certificate is not revoked.
    The algorithm checks one or more CRLs until either the certificate
    status is determined to be revoked or sufficient CRLs have been
    checked to cover all reason codes.

    (...)

       (1)  If the DP includes cRLIssuer, then verify that the issuer
       field in the complete CRL matches cRLIssuer in the DP and that
       the complete CRL contains an issuing distribution point
       extension with the indrectCRL boolean asserted.

The text does not say explicitly how the match is obtained.

 From the above explanations, I am considering the case where a given CA_X 
has issued a certificate to CA_Y either allowing it to :

  - only issue certificates (keyCertSign bit set),
  - or both issue certificates and CRLs (cRLSign bit set also set).

This means that the CA which has nominated CA_Y is the only one allowed to 
nominate CRL Issuers that CA_Y can use. Any other case would imply a model 
that is not described (and thus not supported) in RFC 3280.

So the discussion is now taking quite a new dimension.

Denis

Date: Fri, 22 Oct 2004 14:09:22 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked], [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Cc: [email-masked]
Sender: [email-masked]

> 
> My suggestion is base on the curent practice I am aware of, not based
> on any spec or standard.
> I believe that currently there is no spec to tell us what kind of objects
> an AIA caIssuers URI will point to. The current definition of AIA in
> RFC 3280 is too vague. I think that Stefan's proposal of
> expanding the scope of AIA is a chance to clarify this.

I would second the idea to put this on the list of issues for an
update of 3280, ooups, the San Diego meeting proceedings say
'list of open issues compiled'. 

> 
> For MIME types, RFC 2585 and RFC 2633 already defined some
> useful types for cert, crl, or CMS/PKCS#7 object. Unfortunately,
> related HTTP or FTP URI pointers (such as those in an AIA or a CRLDP)
> defined in RFC 3280 have no reference to MIME types defined in RFC 2585
> and RFC 2633.

i'd be careful to allow different mime type together with one access method OID. 

> > Also, Peter Gutmann's new http-certstore does something completely
> > different AFAIS.
> >
> Please note that I am talking about AIA not SIA. For an HTTP
> URI in a SIA, it should follow the spec in Peter Gutmann's new
> http-certstore proposal. I suggest that http-certstore spec should
> have a reference to MIME types defined in RFC 2585.

The difference is not SIA vs AIA IMO, but the format implied by 
accessMethod (which is the same definition for SIA and AIA). 

  " The type and
   format of the information is specified by the accessMethod field;" 

> Wen-Cheng Wang
Peter

Date: Thu, 21 Oct 2004 21:52:40 -0400
From: [email-masked]
To: [email-masked]
Subject: PKIX agenda requests
Sender: [email-masked]

Folks,

PKIX is scheduled for Wednesday November 10, 1 - 3:00 PM at the 60th IETF (in 
Washington).

I spaced on agenda requests, and the time for WG agenda submissions is winding 
down.  My apologies about the late notice, but I would like to submit a draft 
agenda next Monday by the noon deadline.

Please send me your agenda requests as soon as possible.  I will as always 
give preference to WG documents, but will try to fit in related personal 
drafts and liasion presentations.

Thanks,

Tim Polk

Date: Thu, 21 Oct 2004 15:02:21 -0700
To: [email-masked]
From: "Kurt D. Zeilenga" <[email-masked]>
Subject: Fwd: I-D ACTION:draft-zeilenga-ldap-x509-00.txt
Cc: [email-masked]
Sender: [email-masked]

At IETF#60, I stated that I would submit an I-D providing
LDAP schema descriptions for the certificate related
elements covered in RFC 2252/2256 but not covered in
LDAPBIS syntax/schema I-Ds, with matching rule corrections.
Though a submitted later than I had hoped, this is that I-D.
This I-D assumes familiarity with X.509 and other normative
references.

In addition, to the these elements, this document provides
LDAP schema descriptions for the elements discussed in
RFC 2587, namely the X.509 pkiUser and pkiCA classes.
Additionally, a few additional X.509 certificate related
matching rules were included for completeness.

The introduction of these rules requires introduction of
new LDAP syntaxes for the assertion values.  With the
exception of one syntax, these LDAP syntaxes are GSER-based.
The exception, certificateExactAssertion, utilizes the
syntax suggested by RFC 3876.   In a sequence revision
of the I-D, ABNF grammars for each of the GSER-based
formats will be provided for informational purposes.

As noted at IETF#60, the intent of this I-D is to provide
an RFC 2252/RFC2256 compatible specification for these
X.500 schema elements.  Hence, unlike the latest revisions
of draft-ietf-pkix-ldap-pki, this I-D mandates the use of
the ;binary transfer option to request and transfer
certificate (and related) attribute values.

There are a few other differences between this I-D and
draft-ietf-pkix-ldap-pki.  For instance, this I-D doesn't
offer LDAP schema descriptions for 'cpCPS' and
'pkiCertPath' object classes and related attribute
types, matching rules, and syntaxes.

Lastly, I did not attempt to state an applicability
statement for use of LDAP in Public Key Infrastructures.
This, I believe, is better left to separate I-D, possibly
titled "Internet X.509 Public Key Infrastructure Operational
Protocols - LDAPv3".   I intend to leave that to others
authors.

Comments welcomed.

Also, if there is available PKIX session time at IETF#61, I
would be happy to present proposal(s) to reconcile any
issues with this I-D.

Enjoy! Kurt

>To: [email-masked]
>From: [email-masked]
>Date: Wed, 20 Oct 2004 10:36:40 -0400
>Subject: I-D ACTION:draft-zeilenga-ldap-x509-00.txt
>Reply-To: [email-masked]
>
>        Title           : LDAP X.509 Certificate Schema
>        Author(s)       : K. Zeilenga
>        Filename        : draft-zeilenga-ldap-x509-00.txt
>        Pages           : 16
>        Date            : 2004-10-19
>        
>This document describes schema for representing X.509 certificates,
>  X.521 security information, and related elements in directories
>  accessible using the Lightweight Directory Access Protocol (LDAP).
>  The LDAP definitions for these X.509 and X.521 schema elements
>  replaces those provided in RFC 2252 and RFC 2256.
>
>http://www.ietf.org/internet-drafts/draft-zeilenga-ldap-x509-00.txt
>
>        "get draft-zeilenga-ldap-x509-00.txt".
>
>        "FILE /internet-drafts/draft-zeilenga-ldap-x509-00.txt".
>        
>Content-Type: text/plain
>Content-ID: <[email-masked]>
>
>ENCODING mime
>FILE /internet-drafts/draft-zeilenga-ldap-x509-00.txt
>
><ftp://ftp.ietf.org/internet-drafts/draft-zeilenga-ldap-x509-00.txt>
>_______________________________________________
>I-D-Announce mailing list
>[email-masked]
>https://www1.ietf.org/mailman/listinfo/i-d-announce

From: "Wen-Cheng Wang" <[email-masked]>
To: "Peter Sylvester" <[email-masked]>
Cc: <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Date: Thu, 21 Oct 2004 11:17:12 +0800
Organization: Chunghwa Telecom
Sender: [email-masked]

> > More specifically, for a LDAP URI it could point to the
crossCertificatePair
> > attribute or the caCertificate attribute of a CA's directory entry; for
a
> > HTTP
> > URI or a FTP URI it could point to a cert-only CMS/PKCS#7 file (please
see
> > section 3.6 of RFC 2633).
> > Both a LDAP attribute and a CMS/PKCS#7 file can contains multiple
> > certificates.
>
> "it could point" but where is a spec? What kind of mime types
> should a client be prepared to get in case of an HTTP URI
> in some SIA or AIA?

My suggestion is base on the curent practice I am aware of, not based
on any spec or standard.
I believe that currently there is no spec to tell us what kind of objects
an AIA caIssuers URI will point to. The current definition of AIA in
RFC 3280 is too vague. I think that Stefan's proposal of
expanding the scope of AIA is a chance to clarify this.

For MIME types, RFC 2585 and RFC 2633 already defined some
useful types for cert, crl, or CMS/PKCS#7 object. Unfortunately,
related HTTP or FTP URI pointers (such as those in an AIA or a CRLDP)
defined in RFC 3280 have no reference to MIME types defined in RFC 2585
and RFC 2633.

>
> Also, Peter Gutmann's new http-certstore does something completely
> different AFAIS.
>
Please note that I am talking about AIA not SIA. For an HTTP
URI in a SIA, it should follow the spec in Peter Gutmann's new
http-certstore proposal. I suggest that http-certstore spec should
have a reference to MIME types defined in RFC 2585.

Wen-Cheng Wang

Date: Wed, 20 Oct 2004 13:25:50 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Cc: [email-masked]
Sender: [email-masked]

> From [email-masked] Tue Oct 19 04:13:28 2004
> Return-Path: <[email-masked]>
> Message-ID: <008301c4b581$32882b90$4f85900a@wcwang>
> From: "Wen-Cheng Wang" <[email-masked]>
> To: "Santosh Chokhani" <[email-masked]>, <[email-masked]>,
>    "Peter Sylvester" <[email-masked]>
> References: <[email-masked]>
> Subject: Re: Signer certificate discovery for CRLs
> Date: Tue, 19 Oct 2004 10:13:16 +0800
> Organization: Chunghwa Telecom
> MIME-Version: 1.0
> X-scanner: scanned by Inflex 1.0.10 - (http://pldaniels.com/inflex/)
> More specifically, for a LDAP URI it could point to the crossCertificatePair
> attribute or the caCertificate attribute of a CA's directory entry; for a
> HTTP
> URI or a FTP URI it could point to a cert-only CMS/PKCS#7 file (please see
> section 3.6 of RFC 2633).
> Both a LDAP attribute and a CMS/PKCS#7 file can contains multiple
> certificates.

"it could point" but where is a spec? What kind of mime types
should a client be prepared to get in case of an HTTP URI
in some SIA or AIA? 

Also, Peter Gutmann's new http-certstore does something completely
different AFAIS.

Date: Tue, 19 Oct 2004 03:20:10 -0700
To: [email-masked]
From: Carl Ellison <[email-masked]>
Subject: CFP 2005 PKI R&D Workshop - Deadline soon
Sender: [email-masked]

<fontfamily><param>Courier New</param><bigger>4th Annual PKI R&D
Workshop: Multiple Paths to Trust

April 19-21, 2005

NIST -- Gaithersburg, MD

Papers and Proposals Due: October 29, 2004

Website:
<underline><color><param>0000,0000,ffff</param>http://middleware.internet2.edu/pki05/

</color></underline>Registration Fee: $125.00

This workshop considers the full range of public key technology used

for security decisions and supporting functionalities, including

authentication, authorization, identity (syndication, federation, and

aggregation), and trust.  This year, the workshop has a particular

interest in how PKI and emerging trust mechanisms will interact with

each other at technical, policy and user levels to support trust

models that lack a central authority.  This workshop has three goals:

1. Explore the current state of public key technology and

   emerging trust mechanisms in different domains including

   web services; grid technologies; authentication systems,

   et al., in academia, research, government, and industry.

2. Share & discuss lessons learned and scenarios from vendors

   and practitioners on current deployments.

3. Provide a forum for leading security researchers to explore

   the issues relevant to PKI space in areas of security

   management, identity, trust, policy, authentication, and

   authorization.

CALL FOR PAPERS

We solicit papers, case studies, panel proposals, and participation

from researchers, systems architects, vendor engineers, and users.

Submitted works should address one or more critical areas of inquiry.

Topics include (but are not limited to):

* Federated versus Non-Federated trust models

* Standards related to PKI and security decision systems such as

  x509, SDSI/SPKI, PGP, XKMS, XACML, XRML, XML signature, and SAML.

* Cryptographic and alternative methods for supporting security

  decisions, including the characterization and encoding of data

* Intersection of policy based systems and PKI

* Privacy protection and implications

* Scalability of security systems

* Security of the components of PKI systems

* Security Infrastructures for constrained environments

* Improved human factor designs for security-related interfaces

  including authorization and policy management, naming, use of

  multiple private keys, and selective disclosure

* New paradigms in PKI architectures

* Reports of real-world experience with the use and deployment of

  PKI, including future research directions

Deadlines for conference paper and panel submissions are:

* Papers and Proposals Due: October 29, 2004

* Authors Notified:         December 10, 2004

* Final Materials Due:      February 18, 2005

Submissions should be provided electronically, in PDF, for standard

US letter-size paper (8.5 x 11 inches). Paper submissions must not

exceed 15 pages (single space, two column format with 1" margins

using a 10 pt or larger font) and have no header or footer text

(e.g., no page numbers). Proposals for panels should be no longer

than five pages and include possible panelists and an indication of

which panelists have confirmed availability.

Please submit the following information to [email-masked]:

* Name, affiliation, email, phone, postal address for the primary

  contact author

* First name, last name, and affiliation of each co-author

* The finished paper in PDF format as an attachment

All submissions will be acknowledged.

Submissions of papers must not substantially duplicate work that any

of the authors have published elsewhere or have submitted in parallel

to any other conferences or journals.

Accepted papers will be published in a proceedings of the workshop.

REGISTRATION

The registration fee of $125 per person includes workshop materials,

coffee breaks, lunches, and a dinner.  There will be no on-site

registration. Please pre-register by April 12, 2005 at

 <underline><color><param>0000,0000,ffff</param>https://rproxy.nist.gov/CRS/conf_ext.cfm?conf_id=1065

</color></underline>

Teresa Vicente

NIST

Phone: (301) 975-3883

Fax: (301) 948-2067

email: [email-masked]

An agenda will be available in late December at

<underline><color><param>0000,0000,ffff</param>http://middleware.internet2.edu/pki05/

</color></underline>

ACCOMMODATIONS

A block of rooms has been reserved at the Gaithersburg Holiday Inn,

(301) 948-8900, at a special rate of $99, single or double, plus 12%

tax. Reservations must be received by April 4, 2005, in order to

receive the special rate.  Please mention you are attending the

"NIST/PKI Workshop".

</bigger></fontfamily>

+------------------------------------------------------------------+

|Carl M. Ellison         [email-masked]      http://theworld.com/~cme |

|    PGP: 75C5 1814 C3E3 AAA7 3F31  47B9 73F1 7E3C 96E7 2B71       |

+---Officer, arrest that man. He's whistling a copyrighted song.---+

From: "Wen-Cheng Wang" <[email-masked]>
To: "Santosh Chokhani" <[email-masked]>, <[email-masked]>, "Peter Sylvester" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Date: Tue, 19 Oct 2004 10:13:16 +0800
Organization: Chunghwa Telecom
Sender: [email-masked]

Peter,
>
> I think the pointer as a URI.  I could be LDAP, HTTP or FTP pointer to a
> file that contains one or more certificates.
>
More specifically, for a LDAP URI it could point to the crossCertificatePair
attribute or the caCertificate attribute of a CA's directory entry; for a
HTTP
URI or a FTP URI it could point to a cert-only CMS/PKCS#7 file (please see
section 3.6 of RFC 2633).
Both a LDAP attribute and a CMS/PKCS#7 file can contains multiple
certificates.

Wen-Cheng Wang

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Mon, 18 Oct 2004 16:53:57 -0400
Importance: Normal
Sender: [email-masked]

Peter:

I think the pointer as a URI.  I could be LDAP, HTTP or FTP pointer to a
file that contains one or more certificates.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Peter Sylvester
Sent: Monday, October 18, 2004 3:29 PM
To: [email-masked]
Subject: Re: Signer certificate discovery for CRLs

As a side remark or a question:

Waht is supposed to be be returned for a value of the id-ad-caRepository or
id-ad-caIssuers in case the value starts with ftp or http?

As far as I understand, the values point to a repository.

of course, in some cases this may degenerate to a single cert. But what is
the information to be returned for a caIssuer if the ca cert has to higher
level (cross) certs. 

Peter

Date: Mon, 18 Oct 2004 21:28:49 +0200 (MEST)
From: Peter Sylvester <[email-masked]>
To: [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

As a side remark or a question:

Waht is supposed to be be returned for a value of the id-ad-caRepository
or id-ad-caIssuers in case the value starts with ftp or http?

As far as I understand, the values point to a repository.

of course, in some cases this may degenerate to a single cert.
But what is the information to be returned for a caIssuer if the
ca cert has to higher level (cross) certs. 

Peter

Date: Mon, 18 Oct 2004 15:10:47 -0400
To: Puneet kumar <[email-masked]>
From: Stephen Kent <[email-masked]>
Subject: Re: Effect of adding an attribute to CSR
Cc: [email-masked]
Sender: [email-masked]

At 4:26 AM -0700 10/14/04, Puneet kumar wrote:
>Dear all,
>       I need some assistance on a peculiar problem we are facing.
>
>       We are an organisation which acts as the TTP for all CA's 
>operating in our country ,ie, we are the Root CA. So whenverea new 
>CA comes up they send us a CSR (in PKCS#10) which we sign and give 
>back a X.509 base 64 Certificate.
>
>We recently received a CSR from a new CA.We added the attribute "cn" 
>to the dn of the CSR (as this is a requirement at our end) and then 
>issued the cert.Now the CA's software is not accpeting the cert and 
>they say that its because we added the cn attribute.We are using a 
>softwrae by Smarttrust (CM)and the CA has an Entrust s/w.
>
>Now I have the following queries
>
>1.Does adding an attribute to the CSR make any difference towards 
>the acceptability of the cert?
>
>2.What options do we have at our end..I mean do we need to revoke 
>the cert? Can we re-certify the cert? Actually I did'nt find the 
>term re-certify in any standardd..certs are either revoked or get 
>expired.Your Comments would be most welcome.
>
>3.Is their any setting changes that can be done in the Entrust CA 
>softwrae to allow this cert with the changed distinguished name to 
>be accepted?
>
>Request feedback from you guys..
>
>Thanks

The PKIX standards for cert request/response do not address this 
issue, in the general case.  However, a client (a CA in this case) 
might well compare the returned cert to the one submitted and reject 
the response because of the mismatch.  In your case the "right" 
solution is to have the client resubmit the request with the subject 
name in the form you procedurally require.

Steve

Date: Mon, 18 Oct 2004 13:59:54 -0400
From: Steve Hanna <[email-masked]>
To: Stefan Santesson <[email-masked]>
CC: Denis Pinkas <[email-masked]>, Santosh Chokhani <[email-masked]>, pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

This is a classic case of building cert paths forward
(from EE to trust anchor) vs. building reverse (from
trust anchor to EE). In a hierarchy, building forward
is usually best. In a more complex topology, building
reverse or meeting in the middle can be better. See
our paper in the NDSS 2001 proceedings.

The first step in a forward build is to find certificates
that have the EE as the subject. Then you build from there
toward the TA. AIA helps with that. The first step in a
reverse build is to find certificates that have the TA as
the issuer. Then you build toward the EE. SIA helps with that.
So both SIA and AIA are useful.

Given that most PKIs are hierarchies today, building
reverse will often be most useful. That's why you
should put an AIA in CRLs. It helps find the CRL issuer's
certificate(s). Even in complex topologies, it will often
be useful to have the AIA (to meet in the middle) and
I can't see how it would hurt.

Thanks,

Steve

Stefan Santesson wrote:

> To save you from excessive discussions on a topic you don't really care
> about, I concentrate on the one major problem with SIA that you missed
> my point on:
> 
> 
>>>1) How can the RP know what certificate's SIA it would use to find
> 
> the 
> 
>>>CRL signer cert?
> 
> 
>>>You just picked the right certificate in my example since I gave that
> 
> 
>>>information in the example. But the RP don't know that path, it only 
>>>knows the path of the EE cert and the name of the CRL issuer!
> 
> 
>>This is sufficient to find out the right certificate once you know
> 
> where >the CA places the certificates that it has issued.
> 
> So.. This is NOT the point.
> 
> I'll try to explain. Take again an example.
> 
> The following is known to the RP:
> 1) Cert path:  EE_Cert -> CA_1 -> Root_CA_1
> 2) CRL issued by CRL_Issuer_B
> 
> This is NOT known to the RP.
> CRL path: CRL -> CRL_Issuer_B -> Intermediary_CA_X - Root_CA_Y
> 
> To find the CRL Issuer cert, the RP need to look in the SIA of
> Intermediary_CA_X certificate, right?
> 
> But how can the RP do that when it doesn't know the CRL path. THE RP HAS
> NO KNOWLEDGE ABOUTH THE FACT THAT Intermediary_CA_X IS THE CA ABOVE THE
> CRL SIGNER CERT. In fact the RP has no means to find out, except through
> exhaustive search from all its trusted roots.
> 
> Here, AIA in the CRL solves the issue, SIA doesn't.
> 
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 
>>-----Original Message-----
>>From: [email-masked]
> 
> [mailto:[email-masked]]
> 
>>On Behalf Of Denis Pinkas
>>Sent: den 18 oktober 2004 16:58
>>To: Santosh Chokhani; Stefan Santesson
>>Cc: 'pkix'
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Santosh and Stefan,
>>
>>Now we get to the point that there exists one solution, while the
> 
> thread
> 
>>started saying that there was no other solution.
>>
>>We can now start to discuss the advantages and disadvantages of the
> 
> two
> 
>>solutions.
>>
>>However, we have to provide a fair view.
>>
>>For the time being, you have only considered the disadvantages of the
>>*current* solution, i.e. using SIA. It would be fair that you also
>>consider
>>its advantages and that we take the time to have a fair comparison.
>>
>>
>>>The SIA can be used to find the certificate, but it leads to the
>>
>>exponential
>>
>>>growth in the search base in the case of indirect CRL.
>>
>>This is an argument about disadvantages. However this argument is
>>incorrect:
>>there is no exponential grow. A CA nominates an authority either as :
>>
>>  1 - "CA issuer + CRL issuer"
>>  2 - "CA issuer only", or
>>  3 - "CRL Issuer only"
>>
>>Once the path is constructed, if every CA certificate includes the SIA
>>extension, then this is straightforward.
>>
>>
>>>Also, I do not think SIA is that well supported.
>>
>>I could say that the new proposal is not "that well supported" but
> 
> this
> 
>>would be an argument leading nowhere. :-|
>>
>>The SIA extension is very useful and we should make our best efforts
> 
> so
> 
>>that
>>it will be more and more supported. Providing "yet another way" is not
>>going
>>to lead in that direction. :-(
>>
>>
>>>Thus, we need to consider the commercial realities and permit a
> 
> simple
> 
>>and
>>
>>>elegant approach of using AIA to prime the pump (so to speak) to
> 
> start
> 
>>the
>>
>>>CRL signer path development.
>>
>>SIA was not present in RFC 2459. It has been introduced in RFC 3280
> 
> and
> 
>>this
>>is a good point. It should be generalized in order to support
>>interoperability. Going down from trust points to leaf certificates
> 
> allow
> 
>>to
>>cover any case.
>>
>>The answers to Stefan follow:
>>
>>
>>>-----Original Message-----
>>>From: Stefan Santesson [mailto:[email-masked]]
>>>Sent: Monday, October 18, 2004 8:19 AM
>>>To: Denis Pinkas
>>>Cc: Santosh Chokhani; pkix
>>>Subject: RE: Signer certificate discovery for CRLs
>>>
>>>
>>>Thanks Denis,
>>>
>>>I now finally understand your SIA alternative.
>>>
>>>There are some major problems with it though.
>>
>>>1) How can the RP know what certificate's SIA it would use to find
> 
> the
> 
>>CRL
>>
>>>signer cert?
>>
>>>You just picked the right certificate in my example since I gave
> 
> that
> 
>>>information in the example. But the RP don't know that path, it only
>>
>>knows
>>
>>>the path of the EE cert and the name of the CRL issuer!
>>
>>This is sufficient to find out the right certificate once you know
> 
> where
> 
>>the
>>CA places the certificates that it has issued.
>>
>>
>>>2) And even if RP knew the path beforehand, finding THE one CRL
> 
> signer
> 
>>>certificate from a CRL AIA is much more direct and efficient than
>>
>>finding
>>
>>>among all issued certificates from a CA the 1 out of x issued
>>
>>certificates
>>
>>>that is the CRL Issuer cert.
>>
>>Usually a CA issues a small number of CA certificates and CRL
>>certificates.
>>So this is not a problem.
>>
>>
>>>3) Using SIA in the examples requires available directories and
>>
>>directory
>>
>>>enabled clients. How do you solve the problem if either of these is
> 
> not
> 
>>>available?
>>
>>It could work as well with HTTP using the recent draft that has been
>>proposed.
>>
>>
>>>Do you seriously suggest that use of SIA is a better and more
> 
> effective
> 
>>way
>>
>>>to address this problem or are you just pointing out the fact that
> 
> there
> 
>>are
>>
>>>SOME cases where use of SIA may work in theory?
>>
>>I rather believe that your question was:
>>
>>"Do you suggest that use of SIA is a better and more effective way to
>>address this problem or are you just pointing out the fact that there
> 
> are
> 
>>SOME cases where use of SIA may work ?
>>
>>SIA is certainly better and shoud be generalized to ease path
> 
> contruction,
> 
>>not only for CRL issuers but also for CAs.
>>
>>SIA may work in ALL cases, unless you provide an example where it
> 
> cannot.
> 
>>Now I have spent quite a lot of time on that topic (on which I am
>>personally
>>NOT interested), but since I have been asked by the Security Area
> 
> Director
> 
>>to provide details I needed to respond.
>>
>>I will not be able to sustain the same level of discussions in the
> 
> next
> 
>>coming days. In particular, I will not be in my office tomorrow. So
> 
> you
> 
>>have
>>plenty of time to consider pros and cons for both approaches and do
> 
> not
> 
>>take
>>silence as approval.
>>
>>Denis
>>
>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>Sent: den 18 oktober 2004 12:28
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>
>>>>
>>>>>Denis,
>>>>
>>>>>If I get you right you mean that one can always successfully use
> 
> AIA
> 
>>>and
>>>
>>>
>>>>>SIA in certs to solve discovery of CRL signer cert.
>>>>>Others on this list (me included) don't understand how. It would
>>>>>therefore be useful if you told us.
>>>>>
>>>>>I'll try to explain the problem from my perspective one more time.
>>>>
>>>>Thanks.
>>>>
>>>>
>>>>
>>>>>Note: "->" in these examples means "issued by"
>>>>
>>>>Fine.
>>>>
>>>>
>>>>
>>>>>Case 1 - indirect CRL:
>>>>>
>>>>>Cert path is:  EE_Cert -> CA_1 -> Root-CA
>>>>>CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA
>>>>
>>>>This means Root-CA has nominated CA_1 and a CRL_Issuer_B and that
> 
> CA_1
> 
>>>has
>>>
>>>
>>>>chosen to use CRL_Issuer_B for revocation checking for some
>>>
>>>certificates.
>>>
>>>
>>>>>Scenario:
>>>>>Relying party has access to the cert path, discovers the CRL
> 
> through
> 
>>>CDP
>>>
>>>
>>>>>in EE_Cert.
>>>>
>>>>If there is no attack on the objects stored at the CRL DP, the CRL
>>>
>>>Issuer
>>>
>>>>from that CRL is CRL_Issuer_B. Now the relying party needs to get
> 
> the
> 
>>>>certificate isued by Root-CA for CRL_Issuer_B. If Root-CA has
> 
> included
> 
>>>a
>>>
>>>
>>>>SIA
>>>>extension in his self-signed certificate, then using that extension
>>>
>>>allows
>>>
>>>
>>>>to get the CRL_Issuer_B certificate issued by the Root-CA.
>>>>
>>>>
>>>>>The RP searches the location specified in SIA through
>>>>
>>>>>id-ad-caRepository in the CA_1 cert but finds nothing useful since
>>>>>revocation is subordinated to another entity (CRL_Issuer_B)
>>>>
>>>>Correct, but looking in Root-CA allows to find something useful, if
>>>
>>>the
>>>
>>>
>>>>self-signed certificate includes a SIA extension.
>>>>
>>>>
>>>>
>>>>>In this case, the problem could be solved if an AIA in the CRL
>>>>
>>>indicated
>>>
>>>
>>>>>the access location of the CRL Issuer cert.
>>>>
>>>>This would be an *alternative* way.
>>>>
>>>>
>>>>
>>>>>Case 2 - re-keyed CA.
>>>>>
>>>>>Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
>>>>>CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA
>>>>
>>>>This means that the EE_Cert chain has been created with CA_1(old
> 
> key)
> 
>>>and
>>>
>>>
>>>>that the CRL issuer that was originaly used when the EE_Cert was
>>>
>>>created
>>>
>>>
>>>>has
>>>>been changed and a new CRL Issuer got a certificate under CA_1(new
>>>
>>>key)
>>>
>>>
>>>>and
>>>>is now the legitimate CRL issuer for the CRL DP originally
> 
> mentionned
> 
>>>in
>>>
>>>
>>>>the
>>>>EE_Cert.
>>>>
>>>>
>>>>
>>>>>The 2 CA_1 certificates above (old key and new key) are issued to
>>>>>different subject keys belonging to the same CA (same name). The
>>>>>cert CA_1(old key) was issued before creation of cert CA_1(new
>>>>
>>>key)
>>>
>>>
>>>>>and have thus no reference to CA_1(new key) in its SIA
>>>>>
>>>>>Scenario:
>>>>>RP discovers the CRL for the EE_Cert through the CDP but doesn't
>>>>
>>>possess
>>>
>>>
>>>>>the CRL issuer cert. The RP client searches the SIA of the CA_1(old
>>>>
>>>key)
>>>
>>>
>>>>>but finds no direct reference to the CRL signer cert. Since the RP
>>>>>client has no access to a directory where the CRL signer cert could
>>>>
>>>be
>>>
>>>
>>>>>found through directory lookup, cert validation fails.
>>>>
>>>>Correct, but looking in Root-CA allows to find something useful, if
>>>
>>>the
>>>
>>>
>>>>self-signed certificate includes a SIA extension.
>>>>
>>>>
>>>>
>>>>>In this scenario the problem could be solved through an AIA in the
>>>>
>>>CRL.
>>>
>>>
>>>>This would be an *alternative* way.
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>Sent: den 15 oktober 2004 17:30
>>>>>>To: Stefan Santesson
>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Denis,
>>>>>>
>>>>>>>Unfortunately I fail to understand your questions, issues and
>>>>>>
>>>>>requests.
>>>>>
>>>>>
>>>>>
>>>>>>The sentence below demonstrates that you understand the issue.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>It would be very useful if you could explain how current
> 
> mechanisms
> 
>>>>>can
>>>>>
>>>>>
>>>>>
>>>>>>>be used in a simple and straightforward manner to discover CRL
>>>>>>
>>>>>signer
>>>>>
>>>>>
>>>>>
>>>>>>>certificates in ALL the use cases discussed, mainly re-keyed CA
> 
> and
> 
>>>>>>>indirect CRLs.
>>>>>>
>>>>>>You are also reversing the question. Using your terms, my question
>>>>>
>>>>>would
>>>>>
>>>>>
>>>>>
>>>>>>be:
>>>>>>
>>>>>>"It would be very useful if you could explain how current
> 
> mechanisms
> 
>>>>>>CANNOT be used in a simple and straightforward manner to discover
>>>>>>CRL
>>>>>
>>>signer
>>>
>>>
>>>>>>certificates in ONE or MORE the use cases discussed, mainly
> 
> re-keyed
> 
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>>and
>>>>>>indirect CRLs."
>>>>>>
>>>>>>Denis
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>
>>>>>>>[mailto:[email-masked]]
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>On Behalf Of Denis Pinkas
>>>>>>>>Sent: den 14 oktober 2004 17:13
>>>>>>>>To: Santosh Chokhani
>>>>>>>>Cc: 'pkix'
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>Santosh,
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>Denis:
>>>>>>>>
>>>>>>>>>With the three assumptions/constraints I provided, how would
> 
> you
> 
>>>>>>>locate
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>the
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>CRL issuer certificate for the two examples using 3280
> 
> extensions
> 
>>>>>>>and
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>without putting AIA in the CRL?
>>>>>>>>
>>>>>>>>As far as I understand, the three assumptions are:
>>>>>>>>
>>>>>>>>1.  You are directory challenged; and
>>>>>>>>  [I do not understand what this means]
>>>>>>>>2.  You use AIA to develop the path; and
>>>>>>>>  [It does not matter]
>>>>>>>>3.  You develop the path from the end entity to trust anchor
>>>>>>>>  [Could also be the contrary].
>>>>>>>>
>>>>>>>>If this is not correct, thus please correct.
>>>>>>>>
>>>>>>>>Then my request is: "using ANY OF the current extensions that
> 
> are
> 
>>>>>>>defined
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>in
>>>>>>>>RFC 3280", which includes SIA.
>>>>>>>>
>>>>>>>>In your explanations  you said :
>>>>>>>>"if you do no deal with SIA et. al"
>>>>>>>>
>>>>>>>>This last assumption is neither part of the three assumptions
> 
> and
> 
>>>>>does
>>>>>
>>>>>
>>>>>
>>>>>>>not
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>conform to my request.
>>>>>>>>
>>>>>>>>Denis
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>That is my point.
>>>>>>>>>
>>>>>>>>>-----Original Message-----
>>>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>>>>Sent: Thursday, October 14, 2004 6:22 AM
>>>>>>>>>To: Santosh Chokhani
>>>>>>>>>Cc: 'pkix'
>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>Santosh,
>>>>>>>>>
>>>>>>>>>You misread my request. I said:
>>>>>>>>>
>>>>>>>>>"For the time being, I would like that you provide an example
>>>>>>>>
>>>>>where,
>>>>>
>>>>>
>>>>>
>>>>>>>>when
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>using the current extensions that are defined in RFC 3280, it
>>>>>>>>
>>>will
>>>
>>>
>>>>>>>NOT
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>be
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>possible to locate a CRL Issuer certificate."
>>>>>>>>>
>>>>>>>>>Maybe I would have needed to be clearer and say :
>>>>>>>>>
>>>>>>>>>"For the time being, I would like that you provide an example
>>>>>>>>
>>>>>where,
>>>>>
>>>>>
>>>>>
>>>>>>>>when
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>using ANY OF the current extensions that are defined in RFC
> 
> 3280,
> 
>>>>>it
>>>>>
>>>>>
>>>>>
>>>>>>>>will
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>NOT be possible to locate a CRL Issuer certificate."
>>>>>>>>>
>>>>>>>>>The examples you provide below do not fulfil this request.
>>>>>>>>>
>>>>>>>>>The assumption is that there exists a path to be tested for
>>>>>>>>
>>>>>>>revocation
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>checking (and that it does not matter to know which way it has
>>>>>>>>
>>>been
>>>
>>>
>>>>>>>>>constructed).
>>>>>>>>>
>>>>>>>>>I am not saying that using AIA in CRL might not be useful, but
> 
> I
> 
>>>am
>>>
>>>
>>>>>>>>still
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>lacking the demonstration that there would be no other way.
>>>>>>>>>
>>>>>>>>>Denis
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>Denis:
>>>>>>>>>>
>>>>>>>>>>Two examples are very simple: one for direct CRL Issuer and
> 
> one
> 
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>>>>>>Indirect CRL Issuer.
>>>>>>>>>>
>>>>>>>>>>Let us make the following assumptions that Stefan was making:
>>>>>>>>>>
>>>>>>>>>>1.  You are directory challenged; and
>>>>>>>>>>2.  You use AIA to develop the path; and
>>>>>>>>>>3.  You develop the path from the end entity to trust anchor.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>From what I know of MS CAPI, these are reasonable
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>assumptions/constraints.
>>>>>>>>>>
>>>>>>>>>>Now the examples.
>>>>>>>>>>
>>>>>>>>>>Example 1: Direct CRL Issuer
>>>>>>>>>>
>>>>>>>>>>The certificate trust path is:
>>>>>>>>>>Root --> CA1 --> CA 2, old key --> Denis
>>>>>>>>>>
>>>>>>>>>>The CRL trust path is:
>>>>>>>>>>Root --> CA1 --> CA 2, new key --> CRL
>>>>>>>>>>
>>>>>>>>>>(Note: We do not do self-issued certificate since there is no
>>>>>>>>>
>>>>>>>simple,
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>secure way to check their revocation status).
>>>>>>>>>>
>>>>>>>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>>>>>>>>straightforward.  How would you find it if you do no deal with
>>>>>>>>>
>>>SIA
>>>
>>>
>>>>>>>et.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>al.
>>>>>>>>>>
>>>>>>>>>>Example 2: Indirect CRL Issuer
>>>>>>>>>>
>>>>>>>>>>The certificate trust path is:
>>>>>>>>>>Root --> CA1 --> CA 2 --> Denis
>>>>>>>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
>>>>>>>>>
>>>>>>>issued
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>by CAI.
>>>>>>>>>>
>>>>>>>>>>The CRL trust path is:
>>>>>>>>>>Root --> CAI --> CRL
>>>>>>>>>>
>>>>>>>>>>Now, with AIA in CRL, finding the CAI certificate is
>>>>>>>>>
>>>>>>>straightforward.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>How would you find it if you do no deal with SIA et. al.
>>>>>>>>>>
>>>>>>>>>>In addition to the need cited above, please note that the
>>>>>>>>>
>>>>>extension
>>>>>
>>>>>
>>>>>
>>>>>>>>>>semantics does not change, it does not hinder any
>>>>>>>>>
>>>>>interoperability,
>>>>>
>>>>>
>>>>>
>>>>>>>>>>and it does not break any backward compatibility.  So, what if
> 
> I
> 
>>>>>>>>>>wanted to use this extension in the CRL.  It does no harm to
>>>>>>>>>
>>>other
>>>
>>>
>>>>>>>>>>relying parties.
>>>>>>>>>>
>>>>>>>>>>-----Original Message-----
>>>>>>>>>>From: [email-masked]
>>>>>>>>>>[mailto:[email-masked]] On Behalf Of Denis
> 
> Pinkas
> 
>>>>>>>>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>Stefan,
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>Denis,
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>I'm not sure what you mean.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>For the time being, I would like that you provide an example
>>>>>>>>>
>>>>>where,
>>>>>
>>>>>
>>>>>
>>>>>>>>>>when
>>>>>>>>>>using the current extensions that are defined in RFC 3280, it
>>>>>>>>>
>>>will
>>>
>>>
>>>>>>>NOT
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>be
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>possible to locate a CRL Issuer certificate.
>>>>>>>>>>
>>>>>>>>>>If you are able to provide that example, then it would justify
>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>need for
>>>>>>>>>>an extension at least for one case. Then we can see what that
>>>>>>>>>
>>>case
>>>
>>>
>>>>>>>is.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>I am awaiting that example.
>>>>>>>>>>
>>>>>>>>>>Denis
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>I conclude that I agree with Santosh.
>>>>>>>>>>>
>>>>>>>>>>>The debate is still open... Feel free to express your
> 
> opinion.
> 
>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>-----Original Message-----
>>>>>>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>>>>>>>Sent: den 13 oktober 2004 16:34
>>>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan,
>>>>>>>>>>>>
>>>>>>>>>>>>You are making a conclusion without letting me the time to
>>>>>>>>>>>
>>>>>>>respond. I
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>will need more time to look at the pictures (and understand
>>>>>>>>>>>
>>>>>them).
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>For the time being, I am still reluctant to accept
>>>>>>>>>>>
>>>>>>>>>>>"yet-another-method".
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>We already have too many.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>Santosh,
>>>>>>>>>>>>>
>>>>>>>>>>>>>I conclude that we are in complete and total agreement. The
>>>>>>>>>>>>>question is how to go about this.
>>>>>>>>>>>>
>>>>>>>>>>>>>Could we do this amendment to RFC 3280 in its next
> 
> revision?
> 
>>>It
>>>
>>>
>>>>>>>>>>>>>would hopefully just be a minor change.
>>>>>>>>>>>>
>>>>>>>>>>>>This is exactly what I feared.
>>>>>>>>>>>>
>>>>>>>>>>>>We usually end-up with a "minor change" in an extension
>>>>>>>>>>>
>>>without
>>>
>>>
>>>>>>>>>>>>saying cleary how and when it shall/should be used.
>>>>>>>>>>>>
>>>>>>>>>>>>I still have in mind that:
>>>>>>>>>>>>
>>>>>>>>>>>>1) a certification path must first be constructed,
>>>>>>>>>>>>2) then the revocation checking of that path must be done.
>>>>>>>>>>>>
>>>>>>>>>>>>This means that information about CRL issuers certificates
>>>>>>>>>>>
>>>>>>>locations
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>may
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>certainly be found in that chain. If not, I would like an
>>>>>>>>>>>
>>>>>example.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>Denis
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>It would not change the definition of AIA just add that it
>>>>>>>>>>>>
>>>can
>>>
>>>
>>>>>be
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>used
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>also as CRL extension and list eventual restrictions and
>>>>>>>>>>>
>>>>>guidance
>>>>>
>>>>>
>>>>>
>>>>>>>for
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>use
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>with CRLs.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>>-----Original Message-----
>>>>>>>>>>>>>>From: [email-masked]
>>>>>>>>>>>>>
>>>>>>>>>>>[mailto:[email-masked]]
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>>>>>>>>To: 'pkix'
>>>>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Stefan:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>In terms of certificate discovery, your proposal for AIA
> 
> in
> 
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>>>is
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>more
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>robust.  The whole idea of self-issued key rollover
>>>>>>>>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>and
>>>>>>>>>>>>>
>>>>>>>>>>>>then
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>using the new key to issue CRL is fraught with security
>>>>>>>>>>>>>
>>>>>>>problems.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>A secure solution would be one where the new key is
>>>>>>>>>>>>>
>>>certified
>>>
>>>
>>>>>by
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>the parent
>>>>>>>>>>>>>
>>>>>>>>>>>CA.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>In
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>that case to obtain the new certificate, you could use AIA
>>>>>>>>>>>>>
>>>in
>>>
>>>
>>>>>>>CRL.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL
> 
> DP
> 
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>certificate in question points to the indirect CRL.  You
> 
> get
> 
>>>>>>>that
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>CRL.  The AIA
>>>>>>>>>>>>>
>>>>>>>>>>>in
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>CRL
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>gets you started for the indirect CRL issuer certification
>>>>>>>>>>>>>
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>>>and
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>you
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>are
>>>>>>>>>>>>>>in business.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>-----Original Message-----
>>>>>>>>>>>>>>From: [email-masked]
>>>>>>>>>>>>>
>>>>>>>>>>>[mailto:[email-masked]]
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>On
>>>>>>>>>>>>>>Behalf Of Stefan Santesson
>>>>>>>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>>>>>>>>To: David A. Cooper
>>>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>David,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>>>>>>>>I did misread your pictures.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>So can we conclude that for a re-keyed CA in accordance
> 
> with
> 
>>>>>RFC
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>3280,
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>either the CRL issuer certificate itself, or the location
> 
> of
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>CRL issuer certificate, will be clearly
> 
> identified/available
> 
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>the validating
>>>>>>>>>>>>>
>>>>>>>>>>>>party
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>in some cases, but not in others?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Can we also conclude that there is no real discovery
>>>>>>>>>>>>>
>>>solution
>>>
>>>
>>>>>>>for
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>indirect
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>CRLs?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Do you then agree then that it could be appropriate to
> 
> allow
> 
>>>>>AIA
>>>>>
>>>>>
>>>>>
>>>>>>>as
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>a
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>CRL
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>extension to facilitate discovery of CRL signer
> 
> certificate?
> 
>>>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>________________________________________
>>>>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Stefan,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>I believe that you are misinterpreting the figures.  They
>>>>>>>>>>>>>
>>>>>really
>>>>>
>>>>>
>>>>>
>>>>>>>do
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>represent three different cases, not three different
>>>>>>>>>>>>>
>>>>>>>certification
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>paths
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>that have been constructed through the same PKI
>>>>>>>>>>>>>
>>>architecture.
>>>
>>>
>>>>>>>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>>>>>>>>
>>>>>>>>>>>certificates.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>The
>>>>>>>>>>>>>>Root CA has issued a certificate to CA 1's new key, but
> 
> not
> 
>>>>>its
>>>>>
>>>>>
>>>>>
>>>>>>>old
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>key
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>(either the Root CA never issued a certificate to CA 1's
> 
> old
> 
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>>>or
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>that
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>certificate has expired).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>In figure 2, CA 2 has also generated self-issued key
>>>>>>>>>>>>>
>>>rollover
>>>
>>>
>>>>>>>>>>>>>>certificates. The Root CA has issued a certificate to CA
> 
> 2's
> 
>>>>>old
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>key, but not its
>>>>>>>>>>>>>
>>>>>>>>>>>new
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>key.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>In figure 3, when CA 3 performed key rollover, it
> 
> requested
> 
>>>a
>>>
>>>
>>>>>>>new
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated
>>>>>>>>>>>>>>self-issued
>>>>>>>>>>>>>
>>>>>>>>>>>key
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>rollover certificates.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Of course, another realistic scenario would be one in
> 
> which
> 
>>>a
>>>
>>>
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>generated
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>self-issued key rollover certificates upon key rollover
> 
> and
> 
>>>>>then
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>had
>>>>>>>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>Root CA issue a CA certificate to its new key.  In this
>>>>>>>>>>>>>
>>>case,
>>>
>>>
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>you suggest, any of the certification paths from figures
> 
> 1,
> 
>>>2,
>>>
>>>
>>>>>>>or 3
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>could be
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>constructed.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>As for the contents of the AIA extension, here is what I
>>>>>>>>>>>>>
>>>have
>>>
>>>
>>>>>>>>>>>specified
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>in
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
>>>>>>>>>>>>>
>>>>>Common
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>Policy":
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>The authorityInfoAccess extension uses URIs for two
>>>>>>>>>>>>>
>>>purposes.
>>>
>>>
>>>>>>>When
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>>>>>>>>specifies
>>>>>>>>>>>>>
>>>>>>>>>>>>where
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>certificates issued to the issuer of the certificate may
> 
> be
> 
>>>>>>>found.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>If
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>LDAP
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>is used, the URI must include the DN of the entry
> 
> containing
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>relevant
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>certificates and specify the directory attribute in which
>>>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>>>certificates
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>are located. If the directory in which the certificates
> 
> are
> 
>>>>>>>stored
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>expects
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>the "binary" option to be specified, then the attribute
> 
> type
> 
>>>>>>>must
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the
>>>>>>>>>>>>>
>>>URI
>>>
>>>
>>>>>>>must
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>point to
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>a
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>file that has an extension of ".p7c" that contains a
>>>>>>>>>>>>>
>>>>>certs-only
>>>>>
>>>>>
>>>>>
>>>>>>>CMS
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>message (see RFC 2633). The CMS message should include all
>>>>>>>>>>>>>>certificates
>>>>>>>>>>>>>
>>>>>>>>>>>issued
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>to
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>the issuer of this certificate, but must at least contain
>>>>>>>>>>>>>
>>>all
>>>
>>>
>>>>>>>>>>>>certificates
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>issued to the issuer of this certificate in which the
>>>>>>>>>>>>>
>>>subject
>>>
>>>
>>>>>>>>>>>>>>public
>>>>>>>>>>>>>
>>>>>>>>>>>key
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>may
>>>>>>>>>>>>>>be used to verify the signature on this certificate. ....
>>>>>>>>>>>>>
>>>For
>>>
>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>certificate issued by "Good CA", some examples of URIs
> 
> that
> 
>>>>>may
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>appear as the
>>>>>>>>>>>>>
>>>>>>>>>>>access
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>>>>>>>>
>>>>>>>>>>>id-ad-caIssuers
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>access
>>>>>>>>>>>>>>method is used are:
>>>>>>>>>>>>>
>>>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?c
> 
> A
> 
>>>C
>>>
>>>
>>>>>e
>>>>>
>>>>>
>>>>>
>>>>>>>r
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>t
>>>>>>>>>>>>>i
>>>>>>>>>>>>
>>>>>>>>>>>fi
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>ca
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>te
>>>>>>>>>>>>>>,crossCertificatePair
>>>>>>>>>>>>>
>>>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACer
> 
> t
> 
>>>i
>>>
>>>
>>>>>f
>>>>>
>>>>>
>>>>>
>>>>>>>i
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>c
>>>>>>>>>>>>>a
>>>>>>>>>>>>
>>>>>>>>>>>te
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>;b
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>in
>>>>>>>>>>>>>>ary,crossCertificatePair;binary
>>>>>>>>>>>>>
>>>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certs
> 
> I
> 
>>>s
>>>
>>>
>>>>>s
>>>>>
>>>>>
>>>>>
>>>>>>>u
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>e
>>>>>>>>>>>>>d
>>>>>>>>>>>>
>>>>>>>>>>>To
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>Go
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>od
>>>>>>>>>>>>>>CA.p7c
>>>>>>>>>>>>>>For both LDAP and HTTP, the URI provides the exact
> 
> location
> 
>>>>>>>where
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>information is to be located, so there is no requirement
> 
> for
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>relying
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>party to try to figure out where information is located.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>The HTTP URI points to a certs-only CMS message that
>>>>>>>>>>>>>
>>>includes
>>>
>>>
>>>>>>>all
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>certificates issued to the CA identified in the issuer
> 
> field
> 
>>>>>of
>>>>>
>>>>>
>>>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>certificate.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>The LDAP URI points to the cACertificate and
>>>>>>>>>>>>>
>>>>>>>crossCertificatePair
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>attributes of the directory entry of the CA identified in
>>>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>>>>>issuer field of
>>>>>>>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>certificate.  These two attributes together hold all of
> 
> the
> 
>>>>>>>>>>>certificates
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>issued to the CA:  the cACertificate attribute holds the
>>>>>>>>>>>>>
>>>CA's
>>>
>>>
>>>>>>>self-
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>issued
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>certificates and the crossCertificatePair attribute holds
>>>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Dave
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>David,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>I have some comments and questions on this.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>First of all we can conclude that in some scenarios
> 
> (figure
> 
>>>1)
>>>
>>>
>>>>>>>>>>>>>>where
>>>>>>>>>>>>>
>>>>>>>>>>>a
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>self
>>>>>>>>>>>>>>issued certificate is inserted into the path, you are
> 
> likely
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>find
>>>>>>>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>CRL
>>>>>>>>>>>>>>issuer cert in the path. (given that the new CA have a
>>>>>>>>>>>>>
>>>common
>>>
>>>
>>>>>>>key
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>and
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
>>>>>>>>>>>>>
>>>>>describing
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>different
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>path building strategies. An application that has access
>>>>>>>>>>>>>
>>>>>locally
>>>>>
>>>>>
>>>>>
>>>>>>>to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>all
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>chaining options may however still choose path 2 for the
>>>>>>>>>>>>>
>>>certs
>>>
>>>
>>>>>>>and
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>path
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>1
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>for the CRL independent of each other (which I think
> 
> figure
> 
>>>3
>>>
>>>
>>>>>>>tries
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>to
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>describe)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Another comment is the structure of AIA extensions. The
> 
> use
> 
>>>>>I'm
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>familiar
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>with doesn't use AIA to describe a directory entry where
> 
> it
> 
>>>is
>>>
>>>
>>>>>>>left
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>to
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>validation application logic to be intelligent enough to
>>>>>>>>>>>>>
>>>find
>>>
>>>
>>>>>>>>>>>>appropriate
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>certificate data from the directory. The model I'm
> 
> familiar
> 
>>>>>with
>>>>>
>>>>>
>>>>>
>>>>>>>is
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>when
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>the
>>>>>>>>>>>>>>AIA URL explicitly identifies the exact location of the
>>>>>>>>>>>>>
>>>>>>>appropriate
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>CA
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>certificate file, relieving the validation software from
>>>>>>>>>>>>>
>>>>>complex
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>information queries. If just location of explicit
>>>>>>>>>>>>>
>>>certificate
>>>
>>>
>>>>>>>files
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>are
>>>>>>>>>>>>>
>>>>>>>>>>>identified
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>through AIA, the presence of an AIA may not help finding
> 
> the
> 
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>signer
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>cert
>>>>>>>>>>>>>>if this is different from the CA certificate. This is also
>>>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>>problem
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>with
>>>>>>>>>>>>>>Denis proposal.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>I think we share the basic conclusion that the ability to
>>>>>>>>>>>>>
>>>>>locate
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>the
>>>>>>>>>>>>>
>>>>>>>>>>>CRL
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>signer certificate directly through the CRL could be very
>>>>>>>>>>>>>
>>>>>>>useful.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>At
>>>>>>>>>>>>>
>>>>>>>>>>>>least
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>in the case of indirect CRL but it could also be proven
> 
> very
> 
>>>>>>>useful
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>in
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>CA
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>re-keying scenarios.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>The easiest solution would probably be to allow AIA to be
>>>>>>>>>>>>>
>>>used
>>>
>>>
>>>>>>>in
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>its
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>current shape and structure as a CRL extension (MUST NOT
> 
> be
> 
>>>>>>>>>>>critical).
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>It
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>would present a very clear and uncomplicated logic to
>>>>>>>>>>>>>
>>>>>>>certificate
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>validating applications in many cases.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>________________________________________
>>>>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Stefan,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>I think what you are proposing is a good idea.  In most
>>>>>>>>>>>>>
>>>cases,
>>>
>>>
>>>>>>>path
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>discovery algorithms assume that both the trust anchor (or
>>>>>>>>>>>>>
>>>>>trust
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>anchors)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>and the end entity certificate are provided as input.  In
>>>>>>>>>>>>>
>>>this
>>>
>>>
>>>>>>>>>>>>>>case,
>>>>>>>>>>>>>
>>>>>>>>>>>one
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>may
>>>>>>>>>>>>>>need to construct a certification path without a priori
>>>>>>>>>>>>>
>>>access
>>>
>>>
>>>>>>>to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>end
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>entity certificate (the one with the subject public key
>>>>>>>>>>>>>
>>>>>>>>>>>corresponding to
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>the
>>>>>>>>>>>>>>CRL signing key).  Including an AIA extension (or some
> 
> other
> 
>>>>>>>>>>>pointer) in
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>the
>>>>>>>>>>>>>>CRL would provide the relying party with a simple way to
>>>>>>>>>>>>>
>>>>>obtain
>>>>>
>>>>>
>>>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>end
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>entity certificate for the CRL signing key's certification
>>>>>>>>>>>>>
>>>>>path.
>>>>>
>>>>>
>>>>>
>>>>>>>On
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>other hand, I believe that a relying party should be able
> 
> to
> 
>>>>>>>>>>>construct
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>certification path even without an AIA extension in the
> 
> CRL,
> 
>>>>>so
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>long
>>>>>>>>>>>>>
>>>>>>>>>>>as
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>it
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>is not an indirect CRL.  Attached is a drawing of the
> 
> three
> 
>>>>>>>basic
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>In each of these scenarios, the CA has performed key
>>>>>>>>>>>>>
>>>rollover
>>>
>>>
>>>>>>>and
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>is
>>>>>>>>>>>>>
>>>>>>>>>>>>only
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>signing CRLs with its new key.  The diagrams would look
>>>>>>>>>>>>>
>>>>>similar,
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>however,
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>if
>>>>>>>>>>>>>>the CA simply choose to use different keys to sign
>>>>>>>>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>>>and
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>CRLs
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>for
>>>>>>>>>>>>>>some other reason.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>>>>>>>
>>>>>>>certification
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>path
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>for
>>>>>>>>>>>>>>the CRL signing key would just be a subset of the
>>>>>>>>>>>>>
>>>>>certification
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>path
>>>>>>>>>>>>>
>>>>>>>>>>>for
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>the
>>>>>>>>>>>>>>EE certificate, so no addition path discovery would be
>>>>>>>>>>>>>
>>>needed.
>>>
>>>
>>>>>>>>>>>>>>If the PKI architecture resembled figure 1, then it would
> 
> be
> 
>>>>>>>>>>>necessary
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>to
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>obtain the new-signed-with-old self-issued certificate.
> 
> In
> 
>>>>>>>>>>>>>>building
>>>>>>>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>certification path to the EE certificate, however, the
>>>>>>>>>>>>>
>>>relying
>>>
>>>
>>>>>>>>>>>>>>party
>>>>>>>>>>>>>
>>>>>>>>>>>>will
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>obtain the certificates pointed to by the AIA extension in
>>>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>EE
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>certificate.  This AIA extension will point to a location
>>>>>>>>>>>>>>containing
>>>>>>>>>>>>>
>>>>>>>>>>>all
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>>>>>>>>
>>>>>>>>>>>certificate
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>issued
>>>>>>>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.
> 
> So,
> 
>>>>>>>even
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>though
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>the
>>>>>>>>>>>>>>self-issued certificate would not be part of the
>>>>>>>>>>>>>
>>>certification
>>>
>>>
>>>>>>>path
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>to
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>EE certificate, it would be downloaded by the relying
> 
> party
> 
>>>>>>>during
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>>>>>>>
>>>>>>>circular
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>>>>>>>
>>>>>>>resembled
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>figure
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>3.  The AIA extension in the EE certificate would point to
> 
> a
> 
>>>>>>>>>>>location
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>containing certificates issued to CA 3.  When the relying
>>>>>>>>>>>>>
>>>>>party
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>downloaded
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>these certificates, it would obtain both of the
> 
> certificates
> 
>>>>>>>issued
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>by
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>Root to CA 3 and so again would have the certificate
> 
> needed
> 
>>>to
>>>
>>>
>>>>>>>>>>>validate
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>the
>>>>>>>>>>>>>>CRL signing key.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>In the case of an indirect CRL, things may not work as
> 
> well.
> 
>>>>>If
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>indirect
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>CRLs were used, and the PKI architecture resembled figures
> 
> 2
> 
>>>>>or
>>>>>
>>>>>
>>>>>
>>>>>>>3
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>(replacing "New Key" with a different CA), then the set of
>>>>>>>>>>>>>>certificates pointed
>>>>>>>>>>>>>
>>>>>>>>>>>to
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>by
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>the AIA extension in the EE certificate would not include
>>>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>>>certificate
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>of
>>>>>>>>>>>>>>the CRL signer.  One could find this certificate by
> 
> building
> 
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>reverse direction and using the SIA extension, but that
> 
> may
> 
>>>>>not
>>>>>
>>>>>
>>>>>
>>>>>>>be
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>the most convenient solution.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>So, when indirect CRLs are being used, it seems that it
>>>>>>>>>>>>>
>>>would
>>>
>>>
>>>>>be
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>very
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>useful
>>>>>>>>>>>>>>to have a pointer in the CRL to the CRL signing
> 
> certificate.
> 
>>>>>>>When
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>CRL
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>is not indirect, the need for this pointer does not seem
> 
> to
> 
>>>be
>>>
>>>
>>>>>>>as
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>clear,
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>but
>>>>>>>>>>>>>>I can't see any harm in including it.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Dave
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>>>>>All,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>I'm interested in the opinion from members on this list
>>>>>>>>>>>>>
>>>about
>>>
>>>
>>>>>>>>>>>discovery
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>of
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>CRL signer's certificate in non directory centric
>>>>>>>>>>>>>
>>>>>environments.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>>>The problem is the following.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>The relying party (RP) needs to check validity of a
>>>>>>>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>>>and
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>finds
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>a
>>>>>>>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this
>>>>>>>>>>>>>
>>>CRL
>>>
>>>
>>>>>>>>>>>>>>which
>>>>>>>>>>>>>
>>>>>>>>>>>in
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>this
>>>>>>>>>>>>>>particular case is either signed by another key of the CA
>>>>>>>>>>>>>
>>>>>>>(re-keyed
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>CA)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>or
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>another entity (indirect CRL).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>In this case the relying party needs to obtain the
>>>>>>>>>>>>>
>>>certificate
>>>
>>>
>>>>>>>of
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>CRL
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>>>>>>>
>>>>>>>directory
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>centric
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>solution this is retrieved from the directory, but what if
>>>>>>>>>>>>>
>>>>>such
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>directory
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>is
>>>>>>>>>>>>>>not available or accessible.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>>>>>>>
>>>>>>>certificate
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>>unless
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>the RP already have possession of it by some other means.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Is seems that CRLs would need an AIA extension with the
>>>>>>>>>>>>>
>>>option
>>>
>>>
>>>>>>>to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>point
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>to
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>the location of the signers certificate in the same manner
>>>>>>>>>>>>>
>>>as
>>>
>>>
>>>>>is
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>possible
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>>for certificates.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Maybe AIA should be defined as both cert and CRL extension
>>>>>>>>>>>>>
>>>and
>>>
>>>
>>>>>>>not
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>>only
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>>certificate extension as today.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Thoughts and comments?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>
>>>
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Mon, 18 Oct 2004 13:18:52 -0400
Importance: Normal
Sender: [email-masked]

Denis:

The AIA approach is simpler, has lower computational complexity, and is
well-supported by the commercial products.

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Monday, October 18, 2004 10:58 AM
To: Santosh Chokhani; Stefan Santesson
Cc: 'pkix'
Subject: Re: Signer certificate discovery for CRLs

Santosh and Stefan,

Now we get to the point that there exists one solution, while the thread 
started saying that there was no other solution.

We can now start to discuss the advantages and disadvantages of the two 
solutions.

However, we have to provide a fair view.

For the time being, you have only considered the disadvantages of the 
*current* solution, i.e. using SIA. It would be fair that you also consider 
its advantages and that we take the time to have a fair comparison.

> The SIA can be used to find the certificate, but it leads to the 
> exponential growth in the search base in the case of indirect CRL.

This is an argument about disadvantages. However this argument is incorrect:

there is no exponential grow. A CA nominates an authority either as :

  1 - "CA issuer + CRL issuer"
  2 - "CA issuer only", or
  3 - "CRL Issuer only"

Once the path is constructed, if every CA certificate includes the SIA 
extension, then this is straightforward.

> Also, I do not think SIA is that well supported.

I could say that the new proposal is not "that well supported" but this 
would be an argument leading nowhere. :-|

The SIA extension is very useful and we should make our best efforts so that

it will be more and more supported. Providing "yet another way" is not going

to lead in that direction. :-(

> Thus, we need to consider the commercial realities and permit a simple 
> and elegant approach of using AIA to prime the pump (so to speak) to 
> start the CRL signer path development.

SIA was not present in RFC 2459. It has been introduced in RFC 3280 and this

is a good point. It should be generalized in order to support 
interoperability. Going down from trust points to leaf certificates allow to

cover any case.

The answers to Stefan follow:

> -----Original Message-----
> From: Stefan Santesson [mailto:[email-masked]]
> Sent: Monday, October 18, 2004 8:19 AM
> To: Denis Pinkas
> Cc: Santosh Chokhani; pkix
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> Thanks Denis,
> 
> I now finally understand your SIA alternative.
> 
> There are some major problems with it though.

> 1) How can the RP know what certificate's SIA it would use to find the 
> CRL signer cert?

> You just picked the right certificate in my example since I gave that 
> information in the example. But the RP don't know that path, it only 
> knows the path of the EE cert and the name of the CRL issuer!

This is sufficient to find out the right certificate once you know where the

CA places the certificates that it has issued.

> 2) And even if RP knew the path beforehand, finding THE one CRL signer 
> certificate from a CRL AIA is much more direct and efficient than 
> finding among all issued certificates from a CA the 1 out of x issued 
> certificates that is the CRL Issuer cert.

Usually a CA issues a small number of CA certificates and CRL certificates. 
So this is not a problem.

> 3) Using SIA in the examples requires available directories and 
> directory enabled clients. How do you solve the problem if either of 
> these is not available?

It could work as well with HTTP using the recent draft that has been
proposed.

> Do you seriously suggest that use of SIA is a better and more 
> effective way to address this problem or are you just pointing out the 
> fact that there are SOME cases where use of SIA may work in theory?

I rather believe that your question was:

"Do you suggest that use of SIA is a better and more effective way to 
address this problem or are you just pointing out the fact that there are 
SOME cases where use of SIA may work ?

SIA is certainly better and shoud be generalized to ease path contruction, 
not only for CRL issuers but also for CAs.

SIA may work in ALL cases, unless you provide an example where it cannot.

Now I have spent quite a lot of time on that topic (on which I am personally

NOT interested), but since I have been asked by the Security Area Director 
to provide details I needed to respond.

I will not be able to sustain the same level of discussions in the next 
coming days. In particular, I will not be in my office tomorrow. So you have

plenty of time to consider pros and cons for both approaches and do not take

silence as approval.

Denis

> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: den 18 oktober 2004 12:28
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>
>>>Denis,
>>
>>>If I get you right you mean that one can always successfully use AIA
>>
> and
> 
>>>SIA in certs to solve discovery of CRL signer cert.
>>>Others on this list (me included) don't understand how. It would
>>>therefore be useful if you told us.
>>>
>>>I'll try to explain the problem from my perspective one more time.
>>
>>Thanks.
>>
>>
>>>Note: "->" in these examples means "issued by"
>>
>>Fine.
>>
>>
>>>Case 1 - indirect CRL:
>>>
>>>Cert path is:  EE_Cert -> CA_1 -> Root-CA
>>>CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA
>>
>>This means Root-CA has nominated CA_1 and a CRL_Issuer_B and that CA_1
> 
> has
> 
>>chosen to use CRL_Issuer_B for revocation checking for some
> 
> certificates.
> 
>>>Scenario:
>>>Relying party has access to the cert path, discovers the CRL through
>>
> CDP
> 
>>>in EE_Cert.
>>
>>If there is no attack on the objects stored at the CRL DP, the CRL
> 
> Issuer
> 
>>from that CRL is CRL_Issuer_B. Now the relying party needs to get the
>>certificate isued by Root-CA for CRL_Issuer_B. If Root-CA has included
> 
> a
> 
>>SIA
>>extension in his self-signed certificate, then using that extension
> 
> allows
> 
>>to get the CRL_Issuer_B certificate issued by the Root-CA.
>>
>> > The RP searches the location specified in SIA through
>>
>>>id-ad-caRepository in the CA_1 cert but finds nothing useful since
>>>revocation is subordinated to another entity (CRL_Issuer_B)
>>
>>Correct, but looking in Root-CA allows to find something useful, if
> 
> the
> 
>>self-signed certificate includes a SIA extension.
>>
>>
>>>In this case, the problem could be solved if an AIA in the CRL
>>
> indicated
> 
>>>the access location of the CRL Issuer cert.
>>
>>This would be an *alternative* way.
>>
>>
>>>Case 2 - re-keyed CA.
>>>
>>>Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
>>>CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA
>>
>>This means that the EE_Cert chain has been created with CA_1(old key)
> 
> and
> 
>>that the CRL issuer that was originaly used when the EE_Cert was
> 
> created
> 
>>has
>>been changed and a new CRL Issuer got a certificate under CA_1(new
> 
> key)
> 
>>and
>>is now the legitimate CRL issuer for the CRL DP originally mentionned
> 
> in
> 
>>the
>>EE_Cert.
>>
>>
>>>The 2 CA_1 certificates above (old key and new key) are issued to
>>>different subject keys belonging to the same CA (same name). The 
>>>cert CA_1(old key) was issued before creation of cert CA_1(new
>>
> key)
> 
>>>and have thus no reference to CA_1(new key) in its SIA
>>>
>>>Scenario:
>>>RP discovers the CRL for the EE_Cert through the CDP but doesn't
>>
> possess
> 
>>>the CRL issuer cert. The RP client searches the SIA of the CA_1(old
>>
> key)
> 
>>>but finds no direct reference to the CRL signer cert. Since the RP
>>>client has no access to a directory where the CRL signer cert could
>>
> be
> 
>>>found through directory lookup, cert validation fails.
>>
>>Correct, but looking in Root-CA allows to find something useful, if
> 
> the
> 
>>self-signed certificate includes a SIA extension.
>>
>>
>>>In this scenario the problem could be solved through an AIA in the
>>
> CRL.
> 
>>This would be an *alternative* way.
>>
>>Denis
>>
>>
>>>
>>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>Sent: den 15 oktober 2004 17:30
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>
>>>>
>>>>>Denis,
>>>>
>>>>>Unfortunately I fail to understand your questions, issues and
>>>>
>>>requests.
>>>
>>>
>>>>The sentence below demonstrates that you understand the issue.
>>>>
>>>>
>>>>
>>>>>It would be very useful if you could explain how current mechanisms
>>>>
>>>can
>>>
>>>
>>>>>be used in a simple and straightforward manner to discover CRL
>>>>
>>>signer
>>>
>>>
>>>>>certificates in ALL the use cases discussed, mainly re-keyed CA and
>>>>>indirect CRLs.
>>>>
>>>>You are also reversing the question. Using your terms, my question
>>>
>>>would
>>>
>>>
>>>>be:
>>>>
>>>>"It would be very useful if you could explain how current mechanisms
>>>>CANNOT be used in a simple and straightforward manner to discover 
>>>>CRL
>>>
> signer
> 
>>>>certificates in ONE or MORE the use cases discussed, mainly re-keyed
>>>
>>>CA
>>>
>>>
>>>>and
>>>>indirect CRLs."
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: [email-masked]
>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>>On Behalf Of Denis Pinkas
>>>>>>Sent: den 14 oktober 2004 17:13
>>>>>>To: Santosh Chokhani
>>>>>>Cc: 'pkix'
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>
>>>>>>Santosh,
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Denis:
>>>>>>
>>>>>>>With the three assumptions/constraints I provided, how would you
>>>>>>
>>>>>locate
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>>CRL issuer certificate for the two examples using 3280 extensions
>>>>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>without putting AIA in the CRL?
>>>>>>
>>>>>>As far as I understand, the three assumptions are:
>>>>>>
>>>>>>1.  You are directory challenged; and
>>>>>>   [I do not understand what this means]
>>>>>>2.  You use AIA to develop the path; and
>>>>>>   [It does not matter]
>>>>>>3.  You develop the path from the end entity to trust anchor
>>>>>>   [Could also be the contrary].
>>>>>>
>>>>>>If this is not correct, thus please correct.
>>>>>>
>>>>>>Then my request is: "using ANY OF the current extensions that are
>>>>>
>>>>>defined
>>>>>
>>>>>
>>>>>
>>>>>>in
>>>>>>RFC 3280", which includes SIA.
>>>>>>
>>>>>>In your explanations  you said :
>>>>>>"if you do no deal with SIA et. al"
>>>>>>
>>>>>>This last assumption is neither part of the three assumptions and
>>>>>
>>>does
>>>
>>>
>>>>>not
>>>>>
>>>>>
>>>>>
>>>>>>conform to my request.
>>>>>>
>>>>>>Denis
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>That is my point.
>>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>>Sent: Thursday, October 14, 2004 6:22 AM
>>>>>>>To: Santosh Chokhani
>>>>>>>Cc: 'pkix'
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>Santosh,
>>>>>>>
>>>>>>>You misread my request. I said:
>>>>>>>
>>>>>>>"For the time being, I would like that you provide an example
>>>>>>
>>>where,
>>>
>>>
>>>>>>when
>>>>>>
>>>>>>
>>>>>>
>>>>>>>using the current extensions that are defined in RFC 3280, it
>>>>>>
> will
> 
>>>>>NOT
>>>>>
>>>>>
>>>>>
>>>>>>be
>>>>>>
>>>>>>
>>>>>>
>>>>>>>possible to locate a CRL Issuer certificate."
>>>>>>>
>>>>>>>Maybe I would have needed to be clearer and say :
>>>>>>>
>>>>>>>"For the time being, I would like that you provide an example
>>>>>>
>>>where,
>>>
>>>
>>>>>>when
>>>>>>
>>>>>>
>>>>>>
>>>>>>>using ANY OF the current extensions that are defined in RFC 3280,
>>>>>>
>>>it
>>>
>>>
>>>>>>will
>>>>>>
>>>>>>
>>>>>>
>>>>>>>NOT be possible to locate a CRL Issuer certificate."
>>>>>>>
>>>>>>>The examples you provide below do not fulfil this request.
>>>>>>>
>>>>>>>The assumption is that there exists a path to be tested for
>>>>>>
>>>>>revocation
>>>>>
>>>>>
>>>>>
>>>>>>>checking (and that it does not matter to know which way it has
>>>>>>
> been
> 
>>>>>>>constructed).
>>>>>>>
>>>>>>>I am not saying that using AIA in CRL might not be useful, but I
>>>>>>
> am
> 
>>>>>>still
>>>>>>
>>>>>>
>>>>>>
>>>>>>>lacking the demonstration that there would be no other way.
>>>>>>>
>>>>>>>Denis
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>Denis:
>>>>>>>>
>>>>>>>>Two examples are very simple: one for direct CRL Issuer and one
>>>>>>>
>>>for
>>>
>>>
>>>>>>>>Indirect CRL Issuer.
>>>>>>>>
>>>>>>>>Let us make the following assumptions that Stefan was making:
>>>>>>>>
>>>>>>>>1.  You are directory challenged; and
>>>>>>>>2.  You use AIA to develop the path; and
>>>>>>>>3.  You develop the path from the end entity to trust anchor.
>>>>>>>>
>>>>>>>
>>>>>>>>From what I know of MS CAPI, these are reasonable
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>assumptions/constraints.
>>>>>>>>
>>>>>>>>Now the examples.
>>>>>>>>
>>>>>>>>Example 1: Direct CRL Issuer
>>>>>>>>
>>>>>>>>The certificate trust path is:
>>>>>>>>Root --> CA1 --> CA 2, old key --> Denis
>>>>>>>>
>>>>>>>>The CRL trust path is:
>>>>>>>>Root --> CA1 --> CA 2, new key --> CRL
>>>>>>>>
>>>>>>>>(Note: We do not do self-issued certificate since there is no
>>>>>>>
>>>>>simple,
>>>>>
>>>>>
>>>>>
>>>>>>>>secure way to check their revocation status).
>>>>>>>>
>>>>>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>>>>>>straightforward.  How would you find it if you do no deal with
>>>>>>>
> SIA
> 
>>>>>et.
>>>>>
>>>>>
>>>>>
>>>>>>>>al.
>>>>>>>>
>>>>>>>>Example 2: Indirect CRL Issuer
>>>>>>>>
>>>>>>>>The certificate trust path is:
>>>>>>>>Root --> CA1 --> CA 2 --> Denis
>>>>>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
>>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>>>>by CAI.
>>>>>>>>
>>>>>>>>The CRL trust path is:
>>>>>>>>Root --> CAI --> CRL
>>>>>>>>
>>>>>>>>Now, with AIA in CRL, finding the CAI certificate is
>>>>>>>
>>>>>straightforward.
>>>>>
>>>>>
>>>>>
>>>>>>>>How would you find it if you do no deal with SIA et. al.
>>>>>>>>
>>>>>>>>In addition to the need cited above, please note that the
>>>>>>>
>>>extension
>>>
>>>
>>>>>>>>semantics does not change, it does not hinder any
>>>>>>>
>>>interoperability,
>>>
>>>
>>>>>>>>and it does not break any backward compatibility.  So, what if I
>>>>>>>>wanted to use this extension in the CRL.  It does no harm to
>>>>>>>
> other
> 
>>>>>>>>relying parties.
>>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>>>>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>Denis,
>>>>>>>>
>>>>>>>>
>>>>>>>>>I'm not sure what you mean.
>>>>>>>>
>>>>>>>>
>>>>>>>>For the time being, I would like that you provide an example
>>>>>>>
>>>where,
>>>
>>>
>>>>>>>>when
>>>>>>>>using the current extensions that are defined in RFC 3280, it
>>>>>>>
> will
> 
>>>>>NOT
>>>>>
>>>>>
>>>>>
>>>>>>be
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>possible to locate a CRL Issuer certificate.
>>>>>>>>
>>>>>>>>If you are able to provide that example, then it would justify
>>>>>>>
> the
> 
>>>>>>>>need for
>>>>>>>>an extension at least for one case. Then we can see what that
>>>>>>>
> case
> 
>>>>>is.
>>>>>
>>>>>
>>>>>
>>>>>>>>I am awaiting that example.
>>>>>>>>
>>>>>>>>Denis
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>I conclude that I agree with Santosh.
>>>>>>>>>
>>>>>>>>>The debate is still open... Feel free to express your opinion.
>>>>>>>>>
>>>>>>>>>Stefan Santesson
>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>-----Original Message-----
>>>>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>>>>>Sent: den 13 oktober 2004 16:34
>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>
>>>>>>>>>>Stefan,
>>>>>>>>>>
>>>>>>>>>>You are making a conclusion without letting me the time to
>>>>>>>>>
>>>>>respond. I
>>>>>
>>>>>
>>>>>
>>>>>>>>>>will need more time to look at the pictures (and understand
>>>>>>>>>
>>>them).
>>>
>>>
>>>>>>>>>>For the time being, I am still reluctant to accept
>>>>>>>>>
>>>>>>>>>"yet-another-method".
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>We already have too many.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>Santosh,
>>>>>>>>>>>
>>>>>>>>>>>I conclude that we are in complete and total agreement. The
>>>>>>>>>>>question is how to go about this.
>>>>>>>>>>
>>>>>>>>>>>Could we do this amendment to RFC 3280 in its next revision?
>>>>>>>>>>
> It
> 
>>>>>>>>>>>would hopefully just be a minor change.
>>>>>>>>>>
>>>>>>>>>>This is exactly what I feared.
>>>>>>>>>>
>>>>>>>>>>We usually end-up with a "minor change" in an extension
>>>>>>>>>
> without
> 
>>>>>>>>>>saying cleary how and when it shall/should be used.
>>>>>>>>>>
>>>>>>>>>>I still have in mind that:
>>>>>>>>>>
>>>>>>>>>>1) a certification path must first be constructed,
>>>>>>>>>>2) then the revocation checking of that path must be done.
>>>>>>>>>>
>>>>>>>>>>This means that information about CRL issuers certificates
>>>>>>>>>
>>>>>locations
>>>>>
>>>>>
>>>>>
>>>>>>>>>may
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>certainly be found in that chain. If not, I would like an
>>>>>>>>>
>>>example.
>>>
>>>
>>>>>>>>>>Denis
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>It would not change the definition of AIA just add that it
>>>>>>>>>>
> can
> 
>>>be
>>>
>>>
>>>>>>>>>used
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>also as CRL extension and list eventual restrictions and
>>>>>>>>>
>>>guidance
>>>
>>>
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>>>>>use
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>with CRLs.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>-----Original Message-----
>>>>>>>>>>>>From: [email-masked]
>>>>>>>>>>>
>>>>>>>>>[mailto:[email-masked]]
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>>>>>>To: 'pkix'
>>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan:
>>>>>>>>>>>>
>>>>>>>>>>>>In terms of certificate discovery, your proposal for AIA in
>>>>>>>>>>>
>>>CRL
>>>
>>>
>>>>>is
>>>>>
>>>>>
>>>>>
>>>>>>>>>more
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>robust.  The whole idea of self-issued key rollover
>>>>>>>>>>>
>>>certificates
>>>
>>>
>>>>>>>>>>>>and
>>>>>>>>>>>
>>>>>>>>>>then
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>using the new key to issue CRL is fraught with security
>>>>>>>>>>>
>>>>>problems.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>A secure solution would be one where the new key is
>>>>>>>>>>>
> certified
> 
>>>by
>>>
>>>
>>>>>>>>>>>>the parent
>>>>>>>>>>>
>>>>>>>>>CA.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>In
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>that case to obtain the new certificate, you could use AIA
>>>>>>>>>>>
> in
> 
>>>>>CRL.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP
>>>>>>>>>>>
>>>in
>>>
>>>
>>>>>>>>>>>>certificate in question points to the indirect CRL.  You get
>>>>>>>>>>>
>>>>>that
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>CRL.  The AIA
>>>>>>>>>>>
>>>>>>>>>in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>gets you started for the indirect CRL issuer certification
>>>>>>>>>>>
>>>path
>>>
>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>you
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>are
>>>>>>>>>>>>in business.
>>>>>>>>>>>>
>>>>>>>>>>>>-----Original Message-----
>>>>>>>>>>>>From: [email-masked]
>>>>>>>>>>>
>>>>>>>>>[mailto:[email-masked]]
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>On
>>>>>>>>>>>>Behalf Of Stefan Santesson
>>>>>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>>>>>>To: David A. Cooper
>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>David,
>>>>>>>>>>>>
>>>>>>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>>>>>>I did misread your pictures.
>>>>>>>>>>>>
>>>>>>>>>>>>So can we conclude that for a re-keyed CA in accordance with
>>>>>>>>>>>
>>>RFC
>>>
>>>
>>>>>>>>>3280,
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>either the CRL issuer certificate itself, or the location of
>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>>>CRL issuer certificate, will be clearly identified/available
>>>>>>>>>>>
>>>for
>>>
>>>
>>>>>>>>>>>>the validating
>>>>>>>>>>>
>>>>>>>>>>party
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>in some cases, but not in others?
>>>>>>>>>>>>
>>>>>>>>>>>>Can we also conclude that there is no real discovery
>>>>>>>>>>>
> solution
> 
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>>>>>>indirect
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>CRLs?
>>>>>>>>>>>>
>>>>>>>>>>>>Do you then agree then that it could be appropriate to allow
>>>>>>>>>>>
>>>AIA
>>>
>>>
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>>>>>a
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>
>>>>>>>>>>>>________________________________________
>>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan,
>>>>>>>>>>>>
>>>>>>>>>>>>I believe that you are misinterpreting the figures.  They
>>>>>>>>>>>
>>>really
>>>
>>>
>>>>>do
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>represent three different cases, not three different
>>>>>>>>>>>
>>>>>certification
>>>>>
>>>>>
>>>>>
>>>>>>>>>paths
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>that have been constructed through the same PKI
>>>>>>>>>>>
> architecture.
> 
>>>>>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>>>>>>
>>>>>>>>>certificates.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>The
>>>>>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not
>>>>>>>>>>>
>>>its
>>>
>>>
>>>>>old
>>>>>
>>>>>
>>>>>
>>>>>>>>>key
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>(either the Root CA never issued a certificate to CA 1's old
>>>>>>>>>>>
>>>key
>>>
>>>
>>>>>or
>>>>>
>>>>>
>>>>>
>>>>>>>>>that
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate has expired).
>>>>>>>>>>>>
>>>>>>>>>>>>In figure 2, CA 2 has also generated self-issued key
>>>>>>>>>>>
> rollover
> 
>>>>>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's
>>>>>>>>>>>
>>>old
>>>
>>>
>>>>>>>>>>>>key, but not its
>>>>>>>>>>>
>>>>>>>>>new
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>key.
>>>>>>>>>>>>
>>>>>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested
>>>>>>>>>>>
> a
> 
>>>>>new
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated
>>>>>>>>>>>>self-issued
>>>>>>>>>>>
>>>>>>>>>key
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>rollover certificates.
>>>>>>>>>>>>
>>>>>>>>>>>>Of course, another realistic scenario would be one in which
>>>>>>>>>>>
> a
> 
>>>CA
>>>
>>>
>>>>>>>>>>generated
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>self-issued key rollover certificates upon key rollover and
>>>>>>>>>>>
>>>then
>>>
>>>
>>>>>>>>>>>>had
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>Root CA issue a CA certificate to its new key.  In this
>>>>>>>>>>>
> case,
> 
>>>as
>>>
>>>
>>>>>>>>>>>>you suggest, any of the certification paths from figures 1,
>>>>>>>>>>>
> 2,
> 
>>>>>or 3
>>>>>
>>>>>
>>>>>
>>>>>>>>>could be
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>constructed.
>>>>>>>>>>>>
>>>>>>>>>>>>As for the contents of the AIA extension, here is what I
>>>>>>>>>>>
> have
> 
>>>>>>>>>specified
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>in
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
>>>>>>>>>>>
>>>Common
>>>
>>>
>>>>>>>>>>Policy":
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>The authorityInfoAccess extension uses URIs for two
>>>>>>>>>>>
> purposes.
> 
>>>>>When
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>>>>>>specifies
>>>>>>>>>>>
>>>>>>>>>>where
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>>>>>
>>>>>found.
>>>>>
>>>>>
>>>>>
>>>>>>>>>If
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>LDAP
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is used, the URI must include the DN of the entry containing
>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>relevant
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificates and specify the directory attribute in which
>>>>>>>>>>>
> the
> 
>>>>>>>>>>certificates
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>are located. If the directory in which the certificates are
>>>>>>>>>>>
>>>>>stored
>>>>>
>>>>>
>>>>>
>>>>>>>>>>expects
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the "binary" option to be specified, then the attribute type
>>>>>>>>>>>
>>>>>must
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the
>>>>>>>>>>>
> URI
> 
>>>>>must
>>>>>
>>>>>
>>>>>
>>>>>>>>>point to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>a
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>file that has an extension of ".p7c" that contains a
>>>>>>>>>>>
>>>certs-only
>>>
>>>
>>>>>CMS
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>message (see RFC 2633). The CMS message should include all
>>>>>>>>>>>>certificates
>>>>>>>>>>>
>>>>>>>>>issued
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>to
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the issuer of this certificate, but must at least contain
>>>>>>>>>>>
> all
> 
>>>>>>>>>>certificates
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>issued to the issuer of this certificate in which the
>>>>>>>>>>>
> subject
> 
>>>>>>>>>>>>public
>>>>>>>>>>>
>>>>>>>>>key
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>may
>>>>>>>>>>>>be used to verify the signature on this certificate. ....
>>>>>>>>>>>
> For
> 
>>>a
>>>
>>>
>>>>>>>>>>>>certificate issued by "Good CA", some examples of URIs that
>>>>>>>>>>>
>>>may
>>>
>>>
>>>>>>>>>>>>appear as the
>>>>>>>>>>>
>>>>>>>>>access
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>>>>>>
>>>>>>>>>id-ad-caIssuers
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>access
>>>>>>>>>>>>method is used are:
>>>>>>>>>>>
>>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?c
>>>>>>>>A
>>>>>>>
> C
> 
>>>e
>>>
>>>
>>>>>r
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>t
>>>>>>>>>>>i
>>>>>>>>>>
>>>>>>>>>fi
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>ca
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>te
>>>>>>>>>>>>,crossCertificatePair
>>>>>>>>>>>
>>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACer
>>>>>>>>t
>>>>>>>
> i
> 
>>>f
>>>
>>>
>>>>>i
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>c
>>>>>>>>>>>a
>>>>>>>>>>
>>>>>>>>>te
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>;b
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>in
>>>>>>>>>>>>ary,crossCertificatePair;binary
>>>>>>>>>>>
>>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certs
>>>>>>>>I
>>>>>>>
> s
> 
>>>s
>>>
>>>
>>>>>u
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>e
>>>>>>>>>>>d
>>>>>>>>>>
>>>>>>>>>To
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>Go
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>od
>>>>>>>>>>>>CA.p7c
>>>>>>>>>>>>For both LDAP and HTTP, the URI provides the exact location
>>>>>>>>>>>
>>>>>where
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>information is to be located, so there is no requirement for
>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>relying
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>party to try to figure out where information is located.
>>>>>>>>>>>>
>>>>>>>>>>>>The HTTP URI points to a certs-only CMS message that
>>>>>>>>>>>
> includes
> 
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>certificates issued to the CA identified in the issuer field
>>>>>>>>>>>
>>>of
>>>
>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>certificate.
>>>>>>>>>>>>
>>>>>>>>>>>>The LDAP URI points to the cACertificate and
>>>>>>>>>>>
>>>>>crossCertificatePair
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>attributes of the directory entry of the CA identified in
>>>>>>>>>>>
> the
> 
>>>>>>>>>>>>issuer field of
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>>>>>>
>>>>>>>>>certificates
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>issued to the CA:  the cACertificate attribute holds the
>>>>>>>>>>>
> CA's
> 
>>>>>self-
>>>>>
>>>>>
>>>>>
>>>>>>>>>>issued
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificates and the crossCertificatePair attribute holds
>>>>>>>>>>>
> the
> 
>>>>>>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>>>>>>
>>>>>>>>>>>>Dave
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>David,
>>>>>>>>>>>>
>>>>>>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>>>>>>
>>>>>>>>>>>>I have some comments and questions on this.
>>>>>>>>>>>>
>>>>>>>>>>>>First of all we can conclude that in some scenarios (figure
>>>>>>>>>>>
> 1)
> 
>>>>>>>>>>>>where
>>>>>>>>>>>
>>>>>>>>>a
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>self
>>>>>>>>>>>>issued certificate is inserted into the path, you are likely
>>>>>>>>>>>
>>>to
>>>
>>>
>>>>>>>>>>>>find
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>CRL
>>>>>>>>>>>>issuer cert in the path. (given that the new CA have a
>>>>>>>>>>>
> common
> 
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>>>>>and
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>>>>>>
>>>>>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
>>>>>>>>>>>
>>>describing
>>>
>>>
>>>>>>>>>>different
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>path building strategies. An application that has access
>>>>>>>>>>>
>>>locally
>>>
>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>>>>>all
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>chaining options may however still choose path 2 for the
>>>>>>>>>>>
> certs
> 
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>path
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>1
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>for the CRL independent of each other (which I think figure
>>>>>>>>>>>
> 3
> 
>>>>>tries
>>>>>
>>>>>
>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>describe)
>>>>>>>>>>>>
>>>>>>>>>>>>Another comment is the structure of AIA extensions. The use
>>>>>>>>>>>
>>>I'm
>>>
>>>
>>>>>>>>>familiar
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>with doesn't use AIA to describe a directory entry where it
>>>>>>>>>>>
> is
> 
>>>>>left
>>>>>
>>>>>
>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>validation application logic to be intelligent enough to
>>>>>>>>>>>
> find
> 
>>>>>>>>>>appropriate
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificate data from the directory. The model I'm familiar
>>>>>>>>>>>
>>>with
>>>
>>>
>>>>>is
>>>>>
>>>>>
>>>>>
>>>>>>>>>when
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>AIA URL explicitly identifies the exact location of the
>>>>>>>>>>>
>>>>>appropriate
>>>>>
>>>>>
>>>>>
>>>>>>>>>CA
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate file, relieving the validation software from
>>>>>>>>>>>
>>>complex
>>>
>>>
>>>>>>>>>>>>information queries. If just location of explicit
>>>>>>>>>>>
> certificate
> 
>>>>>files
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>are
>>>>>>>>>>>
>>>>>>>>>identified
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>through AIA, the presence of an AIA may not help finding the
>>>>>>>>>>>
>>>CRL
>>>
>>>
>>>>>>>>>signer
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>cert
>>>>>>>>>>>>if this is different from the CA certificate. This is also
>>>>>>>>>>>
> the
> 
>>>>>>>>>problem
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>with
>>>>>>>>>>>>Denis proposal.
>>>>>>>>>>>>
>>>>>>>>>>>>I think we share the basic conclusion that the ability to
>>>>>>>>>>>
>>>locate
>>>
>>>
>>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>CRL
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>signer certificate directly through the CRL could be very
>>>>>>>>>>>
>>>>>useful.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>At
>>>>>>>>>>>
>>>>>>>>>>least
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>in the case of indirect CRL but it could also be proven very
>>>>>>>>>>>
>>>>>useful
>>>>>
>>>>>
>>>>>
>>>>>>>>>in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CA
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>re-keying scenarios.
>>>>>>>>>>>>
>>>>>>>>>>>>The easiest solution would probably be to allow AIA to be
>>>>>>>>>>>
> used
> 
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>>>>>its
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>>>>>>
>>>>>>>>>critical).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>It
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>would present a very clear and uncomplicated logic to
>>>>>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>validating applications in many cases.
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>
>>>>>>>>>>>>________________________________________
>>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan,
>>>>>>>>>>>>
>>>>>>>>>>>>I think what you are proposing is a good idea.  In most
>>>>>>>>>>>
> cases,
> 
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>discovery algorithms assume that both the trust anchor (or
>>>>>>>>>>>
>>>trust
>>>
>>>
>>>>>>>>>>anchors)
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>and the end entity certificate are provided as input.  In
>>>>>>>>>>>
> this
> 
>>>>>>>>>>>>case,
>>>>>>>>>>>
>>>>>>>>>one
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>may
>>>>>>>>>>>>need to construct a certification path without a priori
>>>>>>>>>>>
> access
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>end
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>entity certificate (the one with the subject public key
>>>>>>>>>>>
>>>>>>>>>corresponding to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>>>>>>
>>>>>>>>>pointer) in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>CRL would provide the relying party with a simple way to
>>>>>>>>>>>
>>>obtain
>>>
>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>end
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>entity certificate for the CRL signing key's certification
>>>>>>>>>>>
>>>path.
>>>
>>>
>>>>>On
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>>>>>>
>>>>>>>>>construct
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certification path even without an AIA extension in the CRL,
>>>>>>>>>>>
>>>so
>>>
>>>
>>>>>>>>>>>>long
>>>>>>>>>>>
>>>>>>>>>as
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>it
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
>>>>>>>>>>>
>>>>>basic
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>>>>>>
>>>>>>>>>>>>In each of these scenarios, the CA has performed key
>>>>>>>>>>>
> rollover
> 
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>is
>>>>>>>>>>>
>>>>>>>>>>only
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>signing CRLs with its new key.  The diagrams would look
>>>>>>>>>>>
>>>similar,
>>>
>>>
>>>>>>>>>>however,
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>if
>>>>>>>>>>>>the CA simply choose to use different keys to sign
>>>>>>>>>>>
>>>certificates
>>>
>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>CRLs
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>for
>>>>>>>>>>>>some other reason.
>>>>>>>>>>>>
>>>>>>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>>>>>
>>>>>certification
>>>>>
>>>>>
>>>>>
>>>>>>>>>path
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>for
>>>>>>>>>>>>the CRL signing key would just be a subset of the
>>>>>>>>>>>
>>>certification
>>>
>>>
>>>>>>>>>>>>path
>>>>>>>>>>>
>>>>>>>>>for
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>EE certificate, so no addition path discovery would be
>>>>>>>>>>>
> needed.
> 
>>>>>>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>>>>>>
>>>>>>>>>necessary
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>to
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>>>>>>building
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certification path to the EE certificate, however, the
>>>>>>>>>>>
> relying
> 
>>>>>>>>>>>>party
>>>>>>>>>>>
>>>>>>>>>>will
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>obtain the certificates pointed to by the AIA extension in
>>>>>>>>>>>
> the
> 
>>>>>EE
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>certificate.  This AIA extension will point to a location
>>>>>>>>>>>>containing
>>>>>>>>>>>
>>>>>>>>>all
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>>>>>>
>>>>>>>>>certificate
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>issued
>>>>>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
>>>>>>>>>>>
>>>>>even
>>>>>
>>>>>
>>>>>
>>>>>>>>>though
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>self-issued certificate would not be part of the
>>>>>>>>>>>
> certification
> 
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>>>>>
>>>>>during
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>>>>>
>>>>>circular
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>>>>>>>
>>>>>>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>>>>>
>>>>>resembled
>>>>>
>>>>>
>>>>>
>>>>>>>>>>figure
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>>>>>>
>>>>>>>>>location
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>containing certificates issued to CA 3.  When the relying
>>>>>>>>>>>
>>>party
>>>
>>>
>>>>>>>>>>downloaded
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>these certificates, it would obtain both of the certificates
>>>>>>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>>>>>by
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>Root to CA 3 and so again would have the certificate needed
>>>>>>>>>>>
> to
> 
>>>>>>>>>validate
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>CRL signing key.
>>>>>>>>>>>>
>>>>>>>>>>>>In the case of an indirect CRL, things may not work as well.
>>>>>>>>>>>
>>>If
>>>
>>>
>>>>>>>>>>indirect
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2
>>>>>>>>>>>
>>>or
>>>
>>>
>>>>>3
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>(replacing "New Key" with a different CA), then the set of
>>>>>>>>>>>>certificates pointed
>>>>>>>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>by
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the AIA extension in the EE certificate would not include
>>>>>>>>>>>
> the
> 
>>>>>>>>>>certificate
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>of
>>>>>>>>>>>>the CRL signer.  One could find this certificate by building
>>>>>>>>>>>
>>>in
>>>
>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>reverse direction and using the SIA extension, but that may
>>>>>>>>>>>
>>>not
>>>
>>>
>>>>>be
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>the most convenient solution.
>>>>>>>>>>>>
>>>>>>>>>>>>So, when indirect CRLs are being used, it seems that it
>>>>>>>>>>>
> would
> 
>>>be
>>>
>>>
>>>>>>>>>very
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>useful
>>>>>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>>>>>
>>>>>When
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is not indirect, the need for this pointer does not seem to
>>>>>>>>>>>
> be
> 
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>>>>>clear,
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>but
>>>>>>>>>>>>I can't see any harm in including it.
>>>>>>>>>>>>
>>>>>>>>>>>>Dave
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>>>All,
>>>>>>>>>>>>
>>>>>>>>>>>>I'm interested in the opinion from members on this list
>>>>>>>>>>>
> about
> 
>>>>>>>>>discovery
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>of
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>CRL signer's certificate in non directory centric
>>>>>>>>>>>
>>>environments.
>>>
>>>
>>>>>>>>>>>>The problem is the following.
>>>>>>>>>>>>
>>>>>>>>>>>>The relying party (RP) needs to check validity of a
>>>>>>>>>>>
>>>certificate
>>>
>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>>finds
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>a
>>>>>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this
>>>>>>>>>>>
> CRL
> 
>>>>>>>>>>>>which
>>>>>>>>>>>
>>>>>>>>>in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>this
>>>>>>>>>>>>particular case is either signed by another key of the CA
>>>>>>>>>>>
>>>>>(re-keyed
>>>>>
>>>>>
>>>>>
>>>>>>>>>CA)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>or
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>another entity (indirect CRL).
>>>>>>>>>>>>
>>>>>>>>>>>>In this case the relying party needs to obtain the
>>>>>>>>>>>
> certificate
> 
>>>>>of
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>>>>>
>>>>>directory
>>>>>
>>>>>
>>>>>
>>>>>>>>>>centric
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>solution this is retrieved from the directory, but what if
>>>>>>>>>>>
>>>such
>>>
>>>
>>>>>>>>>>directory
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is
>>>>>>>>>>>>not available or accessible.
>>>>>>>>>>>>
>>>>>>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>>>>>>unless
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the RP already have possession of it by some other means.
>>>>>>>>>>>>
>>>>>>>>>>>>Is seems that CRLs would need an AIA extension with the
>>>>>>>>>>>
> option
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>>>>>point
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>to
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the location of the signers certificate in the same manner
>>>>>>>>>>>
> as
> 
>>>is
>>>
>>>
>>>>>>>>>>possible
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>for certificates.
>>>>>>>>>>>>
>>>>>>>>>>>>Maybe AIA should be defined as both cert and CRL extension
>>>>>>>>>>>
> and
> 
>>>>>not
>>>>>
>>>>>
>>>>>
>>>>>>>>>only
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate extension as today.
>>>>>>>>>>>>
>>>>>>>>>>>>Thoughts and comments?
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>
> 
> 
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Mon, 18 Oct 2004 17:53:37 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>, "Santosh Chokhani" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

To save you from excessive discussions on a topic you don't really care
about, I concentrate on the one major problem with SIA that you missed
my point on:

>> 1) How can the RP know what certificate's SIA it would use to find
the 
>> CRL signer cert?

>> You just picked the right certificate in my example since I gave that

>> information in the example. But the RP don't know that path, it only 
>> knows the path of the EE cert and the name of the CRL issuer!

>This is sufficient to find out the right certificate once you know
where >the CA places the certificates that it has issued.

So.. This is NOT the point.

I'll try to explain. Take again an example.

The following is known to the RP:
1) Cert path:  EE_Cert -> CA_1 -> Root_CA_1
2) CRL issued by CRL_Issuer_B

This is NOT known to the RP.
CRL path: CRL -> CRL_Issuer_B -> Intermediary_CA_X - Root_CA_Y

To find the CRL Issuer cert, the RP need to look in the SIA of
Intermediary_CA_X certificate, right?

But how can the RP do that when it doesn't know the CRL path. THE RP HAS
NO KNOWLEDGE ABOUTH THE FACT THAT Intermediary_CA_X IS THE CA ABOVE THE
CRL SIGNER CERT. In fact the RP has no means to find out, except through
exhaustive search from all its trusted roots.

Here, AIA in the CRL solves the issue, SIA doesn't.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Denis Pinkas
> Sent: den 18 oktober 2004 16:58
> To: Santosh Chokhani; Stefan Santesson
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh and Stefan,
> 
> Now we get to the point that there exists one solution, while the
thread
> started saying that there was no other solution.
> 
> We can now start to discuss the advantages and disadvantages of the
two
> solutions.
> 
> However, we have to provide a fair view.
> 
> For the time being, you have only considered the disadvantages of the
> *current* solution, i.e. using SIA. It would be fair that you also
> consider
> its advantages and that we take the time to have a fair comparison.
> 
> > The SIA can be used to find the certificate, but it leads to the
> exponential
> > growth in the search base in the case of indirect CRL.
> 
> This is an argument about disadvantages. However this argument is
> incorrect:
> there is no exponential grow. A CA nominates an authority either as :
> 
>   1 - "CA issuer + CRL issuer"
>   2 - "CA issuer only", or
>   3 - "CRL Issuer only"
> 
> Once the path is constructed, if every CA certificate includes the SIA
> extension, then this is straightforward.
> 
> > Also, I do not think SIA is that well supported.
> 
> I could say that the new proposal is not "that well supported" but
this
> would be an argument leading nowhere. :-|
> 
> The SIA extension is very useful and we should make our best efforts
so
> that
> it will be more and more supported. Providing "yet another way" is not
> going
> to lead in that direction. :-(
> 
> > Thus, we need to consider the commercial realities and permit a
simple
> and
> > elegant approach of using AIA to prime the pump (so to speak) to
start
> the
> > CRL signer path development.
> 
> SIA was not present in RFC 2459. It has been introduced in RFC 3280
and
> this
> is a good point. It should be generalized in order to support
> interoperability. Going down from trust points to leaf certificates
allow
> to
> cover any case.
> 
> The answers to Stefan follow:
> 
> > -----Original Message-----
> > From: Stefan Santesson [mailto:[email-masked]]
> > Sent: Monday, October 18, 2004 8:19 AM
> > To: Denis Pinkas
> > Cc: Santosh Chokhani; pkix
> > Subject: RE: Signer certificate discovery for CRLs
> >
> >
> > Thanks Denis,
> >
> > I now finally understand your SIA alternative.
> >
> > There are some major problems with it though.
> 
> > 1) How can the RP know what certificate's SIA it would use to find
the
> CRL
> > signer cert?
> 
> > You just picked the right certificate in my example since I gave
that
> > information in the example. But the RP don't know that path, it only
> knows
> > the path of the EE cert and the name of the CRL issuer!
> 
> This is sufficient to find out the right certificate once you know
where
> the
> CA places the certificates that it has issued.
> 
> > 2) And even if RP knew the path beforehand, finding THE one CRL
signer
> > certificate from a CRL AIA is much more direct and efficient than
> finding
> > among all issued certificates from a CA the 1 out of x issued
> certificates
> > that is the CRL Issuer cert.
> 
> Usually a CA issues a small number of CA certificates and CRL
> certificates.
> So this is not a problem.
> 
> > 3) Using SIA in the examples requires available directories and
> directory
> > enabled clients. How do you solve the problem if either of these is
not
> > available?
> 
> It could work as well with HTTP using the recent draft that has been
> proposed.
> 
> > Do you seriously suggest that use of SIA is a better and more
effective
> way
> > to address this problem or are you just pointing out the fact that
there
> are
> > SOME cases where use of SIA may work in theory?
> 
> I rather believe that your question was:
> 
> "Do you suggest that use of SIA is a better and more effective way to
> address this problem or are you just pointing out the fact that there
are
> SOME cases where use of SIA may work ?
> 
> SIA is certainly better and shoud be generalized to ease path
contruction,
> not only for CRL issuers but also for CAs.
> 
> SIA may work in ALL cases, unless you provide an example where it
cannot.
> 
> Now I have spent quite a lot of time on that topic (on which I am
> personally
> NOT interested), but since I have been asked by the Security Area
Director
> to provide details I needed to respond.
> 
> I will not be able to sustain the same level of discussions in the
next
> coming days. In particular, I will not be in my office tomorrow. So
you
> have
> plenty of time to consider pros and cons for both approaches and do
not
> take
> silence as approval.
> 
> Denis
> 
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >
> >>-----Original Message-----
> >>From: Denis Pinkas [mailto:[email-masked]]
> >>Sent: den 18 oktober 2004 12:28
> >>To: Stefan Santesson
> >>Cc: Santosh Chokhani; pkix
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>Stefan,
> >>
> >>
> >>>Denis,
> >>
> >>>If I get you right you mean that one can always successfully use
AIA
> >>
> > and
> >
> >>>SIA in certs to solve discovery of CRL signer cert.
> >>>Others on this list (me included) don't understand how. It would
> >>>therefore be useful if you told us.
> >>>
> >>>I'll try to explain the problem from my perspective one more time.
> >>
> >>Thanks.
> >>
> >>
> >>>Note: "->" in these examples means "issued by"
> >>
> >>Fine.
> >>
> >>
> >>>Case 1 - indirect CRL:
> >>>
> >>>Cert path is:  EE_Cert -> CA_1 -> Root-CA
> >>>CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA
> >>
> >>This means Root-CA has nominated CA_1 and a CRL_Issuer_B and that
CA_1
> >
> > has
> >
> >>chosen to use CRL_Issuer_B for revocation checking for some
> >
> > certificates.
> >
> >>>Scenario:
> >>>Relying party has access to the cert path, discovers the CRL
through
> >>
> > CDP
> >
> >>>in EE_Cert.
> >>
> >>If there is no attack on the objects stored at the CRL DP, the CRL
> >
> > Issuer
> >
> >>from that CRL is CRL_Issuer_B. Now the relying party needs to get
the
> >>certificate isued by Root-CA for CRL_Issuer_B. If Root-CA has
included
> >
> > a
> >
> >>SIA
> >>extension in his self-signed certificate, then using that extension
> >
> > allows
> >
> >>to get the CRL_Issuer_B certificate issued by the Root-CA.
> >>
> >> > The RP searches the location specified in SIA through
> >>
> >>>id-ad-caRepository in the CA_1 cert but finds nothing useful since
> >>>revocation is subordinated to another entity (CRL_Issuer_B)
> >>
> >>Correct, but looking in Root-CA allows to find something useful, if
> >
> > the
> >
> >>self-signed certificate includes a SIA extension.
> >>
> >>
> >>>In this case, the problem could be solved if an AIA in the CRL
> >>
> > indicated
> >
> >>>the access location of the CRL Issuer cert.
> >>
> >>This would be an *alternative* way.
> >>
> >>
> >>>Case 2 - re-keyed CA.
> >>>
> >>>Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
> >>>CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA
> >>
> >>This means that the EE_Cert chain has been created with CA_1(old
key)
> >
> > and
> >
> >>that the CRL issuer that was originaly used when the EE_Cert was
> >
> > created
> >
> >>has
> >>been changed and a new CRL Issuer got a certificate under CA_1(new
> >
> > key)
> >
> >>and
> >>is now the legitimate CRL issuer for the CRL DP originally
mentionned
> >
> > in
> >
> >>the
> >>EE_Cert.
> >>
> >>
> >>>The 2 CA_1 certificates above (old key and new key) are issued to
> >>>different subject keys belonging to the same CA (same name). The
> >>>cert CA_1(old key) was issued before creation of cert CA_1(new
> >>
> > key)
> >
> >>>and have thus no reference to CA_1(new key) in its SIA
> >>>
> >>>Scenario:
> >>>RP discovers the CRL for the EE_Cert through the CDP but doesn't
> >>
> > possess
> >
> >>>the CRL issuer cert. The RP client searches the SIA of the CA_1(old
> >>
> > key)
> >
> >>>but finds no direct reference to the CRL signer cert. Since the RP
> >>>client has no access to a directory where the CRL signer cert could
> >>
> > be
> >
> >>>found through directory lookup, cert validation fails.
> >>
> >>Correct, but looking in Root-CA allows to find something useful, if
> >
> > the
> >
> >>self-signed certificate includes a SIA extension.
> >>
> >>
> >>>In this scenario the problem could be solved through an AIA in the
> >>
> > CRL.
> >
> >>This would be an *alternative* way.
> >>
> >>Denis
> >>
> >>
> >>>
> >>>
> >>>Stefan Santesson
> >>>Microsoft Security Center of Excellence (SCOE)
> >>>
> >>>
> >>>
> >>>>-----Original Message-----
> >>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>Sent: den 15 oktober 2004 17:30
> >>>>To: Stefan Santesson
> >>>>Cc: Santosh Chokhani; pkix
> >>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>
> >>>>Stefan,
> >>>>
> >>>>
> >>>>
> >>>>>Denis,
> >>>>
> >>>>>Unfortunately I fail to understand your questions, issues and
> >>>>
> >>>requests.
> >>>
> >>>
> >>>>The sentence below demonstrates that you understand the issue.
> >>>>
> >>>>
> >>>>
> >>>>>It would be very useful if you could explain how current
mechanisms
> >>>>
> >>>can
> >>>
> >>>
> >>>>>be used in a simple and straightforward manner to discover CRL
> >>>>
> >>>signer
> >>>
> >>>
> >>>>>certificates in ALL the use cases discussed, mainly re-keyed CA
and
> >>>>>indirect CRLs.
> >>>>
> >>>>You are also reversing the question. Using your terms, my question
> >>>
> >>>would
> >>>
> >>>
> >>>>be:
> >>>>
> >>>>"It would be very useful if you could explain how current
mechanisms
> >>>>CANNOT be used in a simple and straightforward manner to discover
> >>>>CRL
> >>>
> > signer
> >
> >>>>certificates in ONE or MORE the use cases discussed, mainly
re-keyed
> >>>
> >>>CA
> >>>
> >>>
> >>>>and
> >>>>indirect CRLs."
> >>>>
> >>>>Denis
> >>>>
> >>>>
> >>>>
> >>>>>Stefan Santesson
> >>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>-----Original Message-----
> >>>>>>From: [email-masked]
> >>>>>
> >>>>>[mailto:[email-masked]]
> >>>>>
> >>>>>
> >>>>>
> >>>>>>On Behalf Of Denis Pinkas
> >>>>>>Sent: den 14 oktober 2004 17:13
> >>>>>>To: Santosh Chokhani
> >>>>>>Cc: 'pkix'
> >>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>
> >>>>>>Santosh,
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>Denis:
> >>>>>>
> >>>>>>>With the three assumptions/constraints I provided, how would
you
> >>>>>>
> >>>>>locate
> >>>>>
> >>>>>
> >>>>>
> >>>>>>the
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>CRL issuer certificate for the two examples using 3280
extensions
> >>>>>>
> >>>>>and
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>without putting AIA in the CRL?
> >>>>>>
> >>>>>>As far as I understand, the three assumptions are:
> >>>>>>
> >>>>>>1.  You are directory challenged; and
> >>>>>>   [I do not understand what this means]
> >>>>>>2.  You use AIA to develop the path; and
> >>>>>>   [It does not matter]
> >>>>>>3.  You develop the path from the end entity to trust anchor
> >>>>>>   [Could also be the contrary].
> >>>>>>
> >>>>>>If this is not correct, thus please correct.
> >>>>>>
> >>>>>>Then my request is: "using ANY OF the current extensions that
are
> >>>>>
> >>>>>defined
> >>>>>
> >>>>>
> >>>>>
> >>>>>>in
> >>>>>>RFC 3280", which includes SIA.
> >>>>>>
> >>>>>>In your explanations  you said :
> >>>>>>"if you do no deal with SIA et. al"
> >>>>>>
> >>>>>>This last assumption is neither part of the three assumptions
and
> >>>>>
> >>>does
> >>>
> >>>
> >>>>>not
> >>>>>
> >>>>>
> >>>>>
> >>>>>>conform to my request.
> >>>>>>
> >>>>>>Denis
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>That is my point.
> >>>>>>>
> >>>>>>>-----Original Message-----
> >>>>>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>>>>Sent: Thursday, October 14, 2004 6:22 AM
> >>>>>>>To: Santosh Chokhani
> >>>>>>>Cc: 'pkix'
> >>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>
> >>>>>>>
> >>>>>>>Santosh,
> >>>>>>>
> >>>>>>>You misread my request. I said:
> >>>>>>>
> >>>>>>>"For the time being, I would like that you provide an example
> >>>>>>
> >>>where,
> >>>
> >>>
> >>>>>>when
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>using the current extensions that are defined in RFC 3280, it
> >>>>>>
> > will
> >
> >>>>>NOT
> >>>>>
> >>>>>
> >>>>>
> >>>>>>be
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>possible to locate a CRL Issuer certificate."
> >>>>>>>
> >>>>>>>Maybe I would have needed to be clearer and say :
> >>>>>>>
> >>>>>>>"For the time being, I would like that you provide an example
> >>>>>>
> >>>where,
> >>>
> >>>
> >>>>>>when
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>using ANY OF the current extensions that are defined in RFC
3280,
> >>>>>>
> >>>it
> >>>
> >>>
> >>>>>>will
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>NOT be possible to locate a CRL Issuer certificate."
> >>>>>>>
> >>>>>>>The examples you provide below do not fulfil this request.
> >>>>>>>
> >>>>>>>The assumption is that there exists a path to be tested for
> >>>>>>
> >>>>>revocation
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>checking (and that it does not matter to know which way it has
> >>>>>>
> > been
> >
> >>>>>>>constructed).
> >>>>>>>
> >>>>>>>I am not saying that using AIA in CRL might not be useful, but
I
> >>>>>>
> > am
> >
> >>>>>>still
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>lacking the demonstration that there would be no other way.
> >>>>>>>
> >>>>>>>Denis
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>Denis:
> >>>>>>>>
> >>>>>>>>Two examples are very simple: one for direct CRL Issuer and
one
> >>>>>>>
> >>>for
> >>>
> >>>
> >>>>>>>>Indirect CRL Issuer.
> >>>>>>>>
> >>>>>>>>Let us make the following assumptions that Stefan was making:
> >>>>>>>>
> >>>>>>>>1.  You are directory challenged; and
> >>>>>>>>2.  You use AIA to develop the path; and
> >>>>>>>>3.  You develop the path from the end entity to trust anchor.
> >>>>>>>>
> >>>>>>>
> >>>>>>>>From what I know of MS CAPI, these are reasonable
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>assumptions/constraints.
> >>>>>>>>
> >>>>>>>>Now the examples.
> >>>>>>>>
> >>>>>>>>Example 1: Direct CRL Issuer
> >>>>>>>>
> >>>>>>>>The certificate trust path is:
> >>>>>>>>Root --> CA1 --> CA 2, old key --> Denis
> >>>>>>>>
> >>>>>>>>The CRL trust path is:
> >>>>>>>>Root --> CA1 --> CA 2, new key --> CRL
> >>>>>>>>
> >>>>>>>>(Note: We do not do self-issued certificate since there is no
> >>>>>>>
> >>>>>simple,
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>secure way to check their revocation status).
> >>>>>>>>
> >>>>>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
> >>>>>>>>straightforward.  How would you find it if you do no deal with
> >>>>>>>
> > SIA
> >
> >>>>>et.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>al.
> >>>>>>>>
> >>>>>>>>Example 2: Indirect CRL Issuer
> >>>>>>>>
> >>>>>>>>The certificate trust path is:
> >>>>>>>>Root --> CA1 --> CA 2 --> Denis
> >>>>>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
> >>>>>>>
> >>>>>issued
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>by CAI.
> >>>>>>>>
> >>>>>>>>The CRL trust path is:
> >>>>>>>>Root --> CAI --> CRL
> >>>>>>>>
> >>>>>>>>Now, with AIA in CRL, finding the CAI certificate is
> >>>>>>>
> >>>>>straightforward.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>How would you find it if you do no deal with SIA et. al.
> >>>>>>>>
> >>>>>>>>In addition to the need cited above, please note that the
> >>>>>>>
> >>>extension
> >>>
> >>>
> >>>>>>>>semantics does not change, it does not hinder any
> >>>>>>>
> >>>interoperability,
> >>>
> >>>
> >>>>>>>>and it does not break any backward compatibility.  So, what if
I
> >>>>>>>>wanted to use this extension in the CRL.  It does no harm to
> >>>>>>>
> > other
> >
> >>>>>>>>relying parties.
> >>>>>>>>
> >>>>>>>>-----Original Message-----
> >>>>>>>>From: [email-masked]
> >>>>>>>>[mailto:[email-masked]] On Behalf Of Denis
Pinkas
> >>>>>>>>Sent: Wednesday, October 13, 2004 11:01 AM
> >>>>>>>>To: Stefan Santesson
> >>>>>>>>Cc: Santosh Chokhani; pkix
> >>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>Stefan,
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>Denis,
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>I'm not sure what you mean.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>For the time being, I would like that you provide an example
> >>>>>>>
> >>>where,
> >>>
> >>>
> >>>>>>>>when
> >>>>>>>>using the current extensions that are defined in RFC 3280, it
> >>>>>>>
> > will
> >
> >>>>>NOT
> >>>>>
> >>>>>
> >>>>>
> >>>>>>be
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>possible to locate a CRL Issuer certificate.
> >>>>>>>>
> >>>>>>>>If you are able to provide that example, then it would justify
> >>>>>>>
> > the
> >
> >>>>>>>>need for
> >>>>>>>>an extension at least for one case. Then we can see what that
> >>>>>>>
> > case
> >
> >>>>>is.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>I am awaiting that example.
> >>>>>>>>
> >>>>>>>>Denis
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>I conclude that I agree with Santosh.
> >>>>>>>>>
> >>>>>>>>>The debate is still open... Feel free to express your
opinion.
> >>>>>>>>>
> >>>>>>>>>Stefan Santesson
> >>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>-----Original Message-----
> >>>>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>>>>>>>Sent: den 13 oktober 2004 16:34
> >>>>>>>>>>To: Stefan Santesson
> >>>>>>>>>>Cc: Santosh Chokhani; pkix
> >>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>Stefan,
> >>>>>>>>>>
> >>>>>>>>>>You are making a conclusion without letting me the time to
> >>>>>>>>>
> >>>>>respond. I
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>will need more time to look at the pictures (and understand
> >>>>>>>>>
> >>>them).
> >>>
> >>>
> >>>>>>>>>>For the time being, I am still reluctant to accept
> >>>>>>>>>
> >>>>>>>>>"yet-another-method".
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>We already have too many.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>Santosh,
> >>>>>>>>>>>
> >>>>>>>>>>>I conclude that we are in complete and total agreement. The
> >>>>>>>>>>>question is how to go about this.
> >>>>>>>>>>
> >>>>>>>>>>>Could we do this amendment to RFC 3280 in its next
revision?
> >>>>>>>>>>
> > It
> >
> >>>>>>>>>>>would hopefully just be a minor change.
> >>>>>>>>>>
> >>>>>>>>>>This is exactly what I feared.
> >>>>>>>>>>
> >>>>>>>>>>We usually end-up with a "minor change" in an extension
> >>>>>>>>>
> > without
> >
> >>>>>>>>>>saying cleary how and when it shall/should be used.
> >>>>>>>>>>
> >>>>>>>>>>I still have in mind that:
> >>>>>>>>>>
> >>>>>>>>>>1) a certification path must first be constructed,
> >>>>>>>>>>2) then the revocation checking of that path must be done.
> >>>>>>>>>>
> >>>>>>>>>>This means that information about CRL issuers certificates
> >>>>>>>>>
> >>>>>locations
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>may
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>certainly be found in that chain. If not, I would like an
> >>>>>>>>>
> >>>example.
> >>>
> >>>
> >>>>>>>>>>Denis
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>It would not change the definition of AIA just add that it
> >>>>>>>>>>
> > can
> >
> >>>be
> >>>
> >>>
> >>>>>>>>>used
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>also as CRL extension and list eventual restrictions and
> >>>>>>>>>
> >>>guidance
> >>>
> >>>
> >>>>>for
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>use
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>with CRLs.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>Stefan Santesson
> >>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>>-----Original Message-----
> >>>>>>>>>>>>From: [email-masked]
> >>>>>>>>>>>
> >>>>>>>>>[mailto:[email-masked]]
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>On Behalf Of Santosh Chokhani
> >>>>>>>>>>>>Sent: den 13 oktober 2004 04:33
> >>>>>>>>>>>>To: 'pkix'
> >>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan:
> >>>>>>>>>>>>
> >>>>>>>>>>>>In terms of certificate discovery, your proposal for AIA
in
> >>>>>>>>>>>
> >>>CRL
> >>>
> >>>
> >>>>>is
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>more
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>robust.  The whole idea of self-issued key rollover
> >>>>>>>>>>>
> >>>certificates
> >>>
> >>>
> >>>>>>>>>>>>and
> >>>>>>>>>>>
> >>>>>>>>>>then
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>using the new key to issue CRL is fraught with security
> >>>>>>>>>>>
> >>>>>problems.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>A secure solution would be one where the new key is
> >>>>>>>>>>>
> > certified
> >
> >>>by
> >>>
> >>>
> >>>>>>>>>>>>the parent
> >>>>>>>>>>>
> >>>>>>>>>CA.
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>In
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>that case to obtain the new certificate, you could use AIA
> >>>>>>>>>>>
> > in
> >
> >>>>>CRL.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL
DP
> >>>>>>>>>>>
> >>>in
> >>>
> >>>
> >>>>>>>>>>>>certificate in question points to the indirect CRL.  You
get
> >>>>>>>>>>>
> >>>>>that
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>CRL.  The AIA
> >>>>>>>>>>>
> >>>>>>>>>in
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>CRL
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>gets you started for the indirect CRL issuer certification
> >>>>>>>>>>>
> >>>path
> >>>
> >>>
> >>>>>and
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>you
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>are
> >>>>>>>>>>>>in business.
> >>>>>>>>>>>>
> >>>>>>>>>>>>-----Original Message-----
> >>>>>>>>>>>>From: [email-masked]
> >>>>>>>>>>>
> >>>>>>>>>[mailto:[email-masked]]
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>On
> >>>>>>>>>>>>Behalf Of Stefan Santesson
> >>>>>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
> >>>>>>>>>>>>To: David A. Cooper
> >>>>>>>>>>>>Cc: pkix
> >>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>David,
> >>>>>>>>>>>>
> >>>>>>>>>>>>Thanks for the clarifications, they make sense.
> >>>>>>>>>>>>I did misread your pictures.
> >>>>>>>>>>>>
> >>>>>>>>>>>>So can we conclude that for a re-keyed CA in accordance
with
> >>>>>>>>>>>
> >>>RFC
> >>>
> >>>
> >>>>>>>>>3280,
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>either the CRL issuer certificate itself, or the location
of
> >>>>>>>>>>>
> >>>the
> >>>
> >>>
> >>>>>>>>>>>>CRL issuer certificate, will be clearly
identified/available
> >>>>>>>>>>>
> >>>for
> >>>
> >>>
> >>>>>>>>>>>>the validating
> >>>>>>>>>>>
> >>>>>>>>>>party
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>in some cases, but not in others?
> >>>>>>>>>>>>
> >>>>>>>>>>>>Can we also conclude that there is no real discovery
> >>>>>>>>>>>
> > solution
> >
> >>>>>for
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>indirect
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>CRLs?
> >>>>>>>>>>>>
> >>>>>>>>>>>>Do you then agree then that it could be appropriate to
allow
> >>>>>>>>>>>
> >>>AIA
> >>>
> >>>
> >>>>>as
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>a
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>CRL
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>extension to facilitate discovery of CRL signer
certificate?
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan Santesson
> >>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>>>
> >>>>>>>>>>>>________________________________________
> >>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>>>>>Sent: den 12 oktober 2004 21:14
> >>>>>>>>>>>>To: Stefan Santesson
> >>>>>>>>>>>>Cc: pkix
> >>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan,
> >>>>>>>>>>>>
> >>>>>>>>>>>>I believe that you are misinterpreting the figures.  They
> >>>>>>>>>>>
> >>>really
> >>>
> >>>
> >>>>>do
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>represent three different cases, not three different
> >>>>>>>>>>>
> >>>>>certification
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>paths
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>that have been constructed through the same PKI
> >>>>>>>>>>>
> > architecture.
> >
> >>>>>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
> >>>>>>>>>>>
> >>>>>>>>>certificates.
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>The
> >>>>>>>>>>>>Root CA has issued a certificate to CA 1's new key, but
not
> >>>>>>>>>>>
> >>>its
> >>>
> >>>
> >>>>>old
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>key
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>(either the Root CA never issued a certificate to CA 1's
old
> >>>>>>>>>>>
> >>>key
> >>>
> >>>
> >>>>>or
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>that
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>certificate has expired).
> >>>>>>>>>>>>
> >>>>>>>>>>>>In figure 2, CA 2 has also generated self-issued key
> >>>>>>>>>>>
> > rollover
> >
> >>>>>>>>>>>>certificates. The Root CA has issued a certificate to CA
2's
> >>>>>>>>>>>
> >>>old
> >>>
> >>>
> >>>>>>>>>>>>key, but not its
> >>>>>>>>>>>
> >>>>>>>>>new
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>key.
> >>>>>>>>>>>>
> >>>>>>>>>>>>In figure 3, when CA 3 performed key rollover, it
requested
> >>>>>>>>>>>
> > a
> >
> >>>>>new
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated
> >>>>>>>>>>>>self-issued
> >>>>>>>>>>>
> >>>>>>>>>key
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>rollover certificates.
> >>>>>>>>>>>>
> >>>>>>>>>>>>Of course, another realistic scenario would be one in
which
> >>>>>>>>>>>
> > a
> >
> >>>CA
> >>>
> >>>
> >>>>>>>>>>generated
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>self-issued key rollover certificates upon key rollover
and
> >>>>>>>>>>>
> >>>then
> >>>
> >>>
> >>>>>>>>>>>>had
> >>>>>>>>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>Root CA issue a CA certificate to its new key.  In this
> >>>>>>>>>>>
> > case,
> >
> >>>as
> >>>
> >>>
> >>>>>>>>>>>>you suggest, any of the certification paths from figures
1,
> >>>>>>>>>>>
> > 2,
> >
> >>>>>or 3
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>could be
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>constructed.
> >>>>>>>>>>>>
> >>>>>>>>>>>>As for the contents of the AIA extension, here is what I
> >>>>>>>>>>>
> > have
> >
> >>>>>>>>>specified
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>in
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
> >>>>>>>>>>>
> >>>Common
> >>>
> >>>
> >>>>>>>>>>Policy":
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>The authorityInfoAccess extension uses URIs for two
> >>>>>>>>>>>
> > purposes.
> >
> >>>>>When
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>id-ad-caIssuers access method is used, the access location
> >>>>>>>>>>>>specifies
> >>>>>>>>>>>
> >>>>>>>>>>where
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>certificates issued to the issuer of the certificate may
be
> >>>>>>>>>>>
> >>>>>found.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>If
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>LDAP
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>is used, the URI must include the DN of the entry
containing
> >>>>>>>>>>>
> >>>the
> >>>
> >>>
> >>>>>>>>>>relevant
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>certificates and specify the directory attribute in which
> >>>>>>>>>>>
> > the
> >
> >>>>>>>>>>certificates
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>are located. If the directory in which the certificates
are
> >>>>>>>>>>>
> >>>>>stored
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>expects
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>the "binary" option to be specified, then the attribute
type
> >>>>>>>>>>>
> >>>>>must
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the
> >>>>>>>>>>>
> > URI
> >
> >>>>>must
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>point to
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>a
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>file that has an extension of ".p7c" that contains a
> >>>>>>>>>>>
> >>>certs-only
> >>>
> >>>
> >>>>>CMS
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>message (see RFC 2633). The CMS message should include all
> >>>>>>>>>>>>certificates
> >>>>>>>>>>>
> >>>>>>>>>issued
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>to
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>the issuer of this certificate, but must at least contain
> >>>>>>>>>>>
> > all
> >
> >>>>>>>>>>certificates
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>issued to the issuer of this certificate in which the
> >>>>>>>>>>>
> > subject
> >
> >>>>>>>>>>>>public
> >>>>>>>>>>>
> >>>>>>>>>key
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>may
> >>>>>>>>>>>>be used to verify the signature on this certificate. ....
> >>>>>>>>>>>
> > For
> >
> >>>a
> >>>
> >>>
> >>>>>>>>>>>>certificate issued by "Good CA", some examples of URIs
that
> >>>>>>>>>>>
> >>>may
> >>>
> >>>
> >>>>>>>>>>>>appear as the
> >>>>>>>>>>>
> >>>>>>>>>access
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>location in an authorityInfoAccess extension when the
> >>>>>>>>>>>
> >>>>>>>>>id-ad-caIssuers
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>access
> >>>>>>>>>>>>method is used are:
> >>>>>>>>>>>
>
>>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?c
A
> >>>>>>>
> > C
> >
> >>>e
> >>>
> >>>
> >>>>>r
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>t
> >>>>>>>>>>>i
> >>>>>>>>>>
> >>>>>>>>>fi
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>ca
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>te
> >>>>>>>>>>>>,crossCertificatePair
> >>>>>>>>>>>
>
>>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACer
t
> >>>>>>>
> > i
> >
> >>>f
> >>>
> >>>
> >>>>>i
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>c
> >>>>>>>>>>>a
> >>>>>>>>>>
> >>>>>>>>>te
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>;b
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>in
> >>>>>>>>>>>>ary,crossCertificatePair;binary
> >>>>>>>>>>>
>
>>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certs
I
> >>>>>>>
> > s
> >
> >>>s
> >>>
> >>>
> >>>>>u
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>e
> >>>>>>>>>>>d
> >>>>>>>>>>
> >>>>>>>>>To
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>Go
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>od
> >>>>>>>>>>>>CA.p7c
> >>>>>>>>>>>>For both LDAP and HTTP, the URI provides the exact
location
> >>>>>>>>>>>
> >>>>>where
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>information is to be located, so there is no requirement
for
> >>>>>>>>>>>
> >>>the
> >>>
> >>>
> >>>>>>>>>relying
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>party to try to figure out where information is located.
> >>>>>>>>>>>>
> >>>>>>>>>>>>The HTTP URI points to a certs-only CMS message that
> >>>>>>>>>>>
> > includes
> >
> >>>>>all
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>certificates issued to the CA identified in the issuer
field
> >>>>>>>>>>>
> >>>of
> >>>
> >>>
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>certificate.
> >>>>>>>>>>>>
> >>>>>>>>>>>>The LDAP URI points to the cACertificate and
> >>>>>>>>>>>
> >>>>>crossCertificatePair
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>attributes of the directory entry of the CA identified in
> >>>>>>>>>>>
> > the
> >
> >>>>>>>>>>>>issuer field of
> >>>>>>>>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>certificate.  These two attributes together hold all of
the
> >>>>>>>>>>>
> >>>>>>>>>certificates
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>issued to the CA:  the cACertificate attribute holds the
> >>>>>>>>>>>
> > CA's
> >
> >>>>>self-
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>issued
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>certificates and the crossCertificatePair attribute holds
> >>>>>>>>>>>
> > the
> >
> >>>>>>>>>>>>cross-certificates issued to the CA by other CAs.
> >>>>>>>>>>>>
> >>>>>>>>>>>>Dave
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan Santesson wrote:
> >>>>>>>>>>>>
> >>>>>>>>>>>>David,
> >>>>>>>>>>>>
> >>>>>>>>>>>>Thanks for these good thoughts and very useful scenarios.
> >>>>>>>>>>>>
> >>>>>>>>>>>>I have some comments and questions on this.
> >>>>>>>>>>>>
> >>>>>>>>>>>>First of all we can conclude that in some scenarios
(figure
> >>>>>>>>>>>
> > 1)
> >
> >>>>>>>>>>>>where
> >>>>>>>>>>>
> >>>>>>>>>a
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>self
> >>>>>>>>>>>>issued certificate is inserted into the path, you are
likely
> >>>>>>>>>>>
> >>>to
> >>>
> >>>
> >>>>>>>>>>>>find
> >>>>>>>>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>CRL
> >>>>>>>>>>>>issuer cert in the path. (given that the new CA have a
> >>>>>>>>>>>
> > common
> >
> >>>>>key
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>and
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>certificate for cert signing and CRL signing).
> >>>>>>>>>>>>
> >>>>>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
> >>>>>>>>>>>
> >>>describing
> >>>
> >>>
> >>>>>>>>>>different
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>path building strategies. An application that has access
> >>>>>>>>>>>
> >>>locally
> >>>
> >>>
> >>>>>to
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>all
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>chaining options may however still choose path 2 for the
> >>>>>>>>>>>
> > certs
> >
> >>>>>and
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>path
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>1
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>for the CRL independent of each other (which I think
figure
> >>>>>>>>>>>
> > 3
> >
> >>>>>tries
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>to
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>describe)
> >>>>>>>>>>>>
> >>>>>>>>>>>>Another comment is the structure of AIA extensions. The
use
> >>>>>>>>>>>
> >>>I'm
> >>>
> >>>
> >>>>>>>>>familiar
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>with doesn't use AIA to describe a directory entry where
it
> >>>>>>>>>>>
> > is
> >
> >>>>>left
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>to
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>validation application logic to be intelligent enough to
> >>>>>>>>>>>
> > find
> >
> >>>>>>>>>>appropriate
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>certificate data from the directory. The model I'm
familiar
> >>>>>>>>>>>
> >>>with
> >>>
> >>>
> >>>>>is
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>when
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>the
> >>>>>>>>>>>>AIA URL explicitly identifies the exact location of the
> >>>>>>>>>>>
> >>>>>appropriate
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>CA
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>certificate file, relieving the validation software from
> >>>>>>>>>>>
> >>>complex
> >>>
> >>>
> >>>>>>>>>>>>information queries. If just location of explicit
> >>>>>>>>>>>
> > certificate
> >
> >>>>>files
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>are
> >>>>>>>>>>>
> >>>>>>>>>identified
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>through AIA, the presence of an AIA may not help finding
the
> >>>>>>>>>>>
> >>>CRL
> >>>
> >>>
> >>>>>>>>>signer
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>cert
> >>>>>>>>>>>>if this is different from the CA certificate. This is also
> >>>>>>>>>>>
> > the
> >
> >>>>>>>>>problem
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>with
> >>>>>>>>>>>>Denis proposal.
> >>>>>>>>>>>>
> >>>>>>>>>>>>I think we share the basic conclusion that the ability to
> >>>>>>>>>>>
> >>>locate
> >>>
> >>>
> >>>>>>>>>>>>the
> >>>>>>>>>>>
> >>>>>>>>>CRL
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>signer certificate directly through the CRL could be very
> >>>>>>>>>>>
> >>>>>useful.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>At
> >>>>>>>>>>>
> >>>>>>>>>>least
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>in the case of indirect CRL but it could also be proven
very
> >>>>>>>>>>>
> >>>>>useful
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>in
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>CA
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>re-keying scenarios.
> >>>>>>>>>>>>
> >>>>>>>>>>>>The easiest solution would probably be to allow AIA to be
> >>>>>>>>>>>
> > used
> >
> >>>>>in
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>its
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>current shape and structure as a CRL extension (MUST NOT
be
> >>>>>>>>>>>
> >>>>>>>>>critical).
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>It
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>would present a very clear and uncomplicated logic to
> >>>>>>>>>>>
> >>>>>certificate
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>validating applications in many cases.
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan Santesson
> >>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>>>
> >>>>>>>>>>>>________________________________________
> >>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>>>>>Sent: den 7 oktober 2004 18:35
> >>>>>>>>>>>>To: Stefan Santesson
> >>>>>>>>>>>>Cc: pkix
> >>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan,
> >>>>>>>>>>>>
> >>>>>>>>>>>>I think what you are proposing is a good idea.  In most
> >>>>>>>>>>>
> > cases,
> >
> >>>>>path
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>discovery algorithms assume that both the trust anchor (or
> >>>>>>>>>>>
> >>>trust
> >>>
> >>>
> >>>>>>>>>>anchors)
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>and the end entity certificate are provided as input.  In
> >>>>>>>>>>>
> > this
> >
> >>>>>>>>>>>>case,
> >>>>>>>>>>>
> >>>>>>>>>one
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>may
> >>>>>>>>>>>>need to construct a certification path without a priori
> >>>>>>>>>>>
> > access
> >
> >>>>>to
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>end
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>entity certificate (the one with the subject public key
> >>>>>>>>>>>
> >>>>>>>>>corresponding to
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>the
> >>>>>>>>>>>>CRL signing key).  Including an AIA extension (or some
other
> >>>>>>>>>>>
> >>>>>>>>>pointer) in
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>the
> >>>>>>>>>>>>CRL would provide the relying party with a simple way to
> >>>>>>>>>>>
> >>>obtain
> >>>
> >>>
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>end
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>entity certificate for the CRL signing key's certification
> >>>>>>>>>>>
> >>>path.
> >>>
> >>>
> >>>>>On
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>other hand, I believe that a relying party should be able
to
> >>>>>>>>>>>
> >>>>>>>>>construct
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>certification path even without an AIA extension in the
CRL,
> >>>>>>>>>>>
> >>>so
> >>>
> >>>
> >>>>>>>>>>>>long
> >>>>>>>>>>>
> >>>>>>>>>as
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>it
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>is not an indirect CRL.  Attached is a drawing of the
three
> >>>>>>>>>>>
> >>>>>basic
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>scenarios that I expect a relying party may encounter:
> >>>>>>>>>>>>
> >>>>>>>>>>>>In each of these scenarios, the CA has performed key
> >>>>>>>>>>>
> > rollover
> >
> >>>>>and
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>is
> >>>>>>>>>>>
> >>>>>>>>>>only
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>signing CRLs with its new key.  The diagrams would look
> >>>>>>>>>>>
> >>>similar,
> >>>
> >>>
> >>>>>>>>>>however,
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>if
> >>>>>>>>>>>>the CA simply choose to use different keys to sign
> >>>>>>>>>>>
> >>>certificates
> >>>
> >>>
> >>>>>and
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>CRLs
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>for
> >>>>>>>>>>>>some other reason.
> >>>>>>>>>>>>
> >>>>>>>>>>>>If the PKI architecture resembled figure 1, then the
> >>>>>>>>>>>
> >>>>>certification
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>path
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>for
> >>>>>>>>>>>>the CRL signing key would just be a subset of the
> >>>>>>>>>>>
> >>>certification
> >>>
> >>>
> >>>>>>>>>>>>path
> >>>>>>>>>>>
> >>>>>>>>>for
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>the
> >>>>>>>>>>>>EE certificate, so no addition path discovery would be
> >>>>>>>>>>>
> > needed.
> >
> >>>>>>>>>>>>If the PKI architecture resembled figure 1, then it would
be
> >>>>>>>>>>>
> >>>>>>>>>necessary
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>to
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>obtain the new-signed-with-old self-issued certificate.
In
> >>>>>>>>>>>>building
> >>>>>>>>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>certification path to the EE certificate, however, the
> >>>>>>>>>>>
> > relying
> >
> >>>>>>>>>>>>party
> >>>>>>>>>>>
> >>>>>>>>>>will
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>obtain the certificates pointed to by the AIA extension in
> >>>>>>>>>>>
> > the
> >
> >>>>>EE
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>certificate.  This AIA extension will point to a location
> >>>>>>>>>>>>containing
> >>>>>>>>>>>
> >>>>>>>>>all
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>certificates issued to CA 2, which would include both the
> >>>>>>>>>>>
> >>>>>>>>>certificate
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>issued
> >>>>>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.
So,
> >>>>>>>>>>>
> >>>>>even
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>though
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>the
> >>>>>>>>>>>>self-issued certificate would not be part of the
> >>>>>>>>>>>
> > certification
> >
> >>>>>path
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>to
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>EE certificate, it would be downloaded by the relying
party
> >>>>>>>>>>>
> >>>>>during
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>construction of that certification path.  (Yes, there are
> >>>>>>>>>>>
> >>>>>circular
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>dependency issues in figure 2, but that is another issue.)
> >>>>>>>>>>>>
> >>>>>>>>>>>>A similar situation would happen if the PKI architecture
> >>>>>>>>>>>
> >>>>>resembled
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>figure
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>3.  The AIA extension in the EE certificate would point to
a
> >>>>>>>>>>>
> >>>>>>>>>location
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>containing certificates issued to CA 3.  When the relying
> >>>>>>>>>>>
> >>>party
> >>>
> >>>
> >>>>>>>>>>downloaded
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>these certificates, it would obtain both of the
certificates
> >>>>>>>>>>>
> >>>>>issued
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>by
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>Root to CA 3 and so again would have the certificate
needed
> >>>>>>>>>>>
> > to
> >
> >>>>>>>>>validate
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>the
> >>>>>>>>>>>>CRL signing key.
> >>>>>>>>>>>>
> >>>>>>>>>>>>In the case of an indirect CRL, things may not work as
well.
> >>>>>>>>>>>
> >>>If
> >>>
> >>>
> >>>>>>>>>>indirect
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>CRLs were used, and the PKI architecture resembled figures
2
> >>>>>>>>>>>
> >>>or
> >>>
> >>>
> >>>>>3
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>(replacing "New Key" with a different CA), then the set of
> >>>>>>>>>>>>certificates pointed
> >>>>>>>>>>>
> >>>>>>>>>to
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>by
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>the AIA extension in the EE certificate would not include
> >>>>>>>>>>>
> > the
> >
> >>>>>>>>>>certificate
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>of
> >>>>>>>>>>>>the CRL signer.  One could find this certificate by
building
> >>>>>>>>>>>
> >>>in
> >>>
> >>>
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>reverse direction and using the SIA extension, but that
may
> >>>>>>>>>>>
> >>>not
> >>>
> >>>
> >>>>>be
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>>>the most convenient solution.
> >>>>>>>>>>>>
> >>>>>>>>>>>>So, when indirect CRLs are being used, it seems that it
> >>>>>>>>>>>
> > would
> >
> >>>be
> >>>
> >>>
> >>>>>>>>>very
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>useful
> >>>>>>>>>>>>to have a pointer in the CRL to the CRL signing
certificate.
> >>>>>>>>>>>
> >>>>>When
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>CRL
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>is not indirect, the need for this pointer does not seem
to
> >>>>>>>>>>>
> > be
> >
> >>>>>as
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>clear,
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>but
> >>>>>>>>>>>>I can't see any harm in including it.
> >>>>>>>>>>>>
> >>>>>>>>>>>>Dave
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan Santesson wrote:
> >>>>>>>>>>>>All,
> >>>>>>>>>>>>
> >>>>>>>>>>>>I'm interested in the opinion from members on this list
> >>>>>>>>>>>
> > about
> >
> >>>>>>>>>discovery
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>of
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>CRL signer's certificate in non directory centric
> >>>>>>>>>>>
> >>>environments.
> >>>
> >>>
> >>>>>>>>>>>>The problem is the following.
> >>>>>>>>>>>>
> >>>>>>>>>>>>The relying party (RP) needs to check validity of a
> >>>>>>>>>>>
> >>>certificate
> >>>
> >>>
> >>>>>and
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>finds
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>a
> >>>>>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this
> >>>>>>>>>>>
> > CRL
> >
> >>>>>>>>>>>>which
> >>>>>>>>>>>
> >>>>>>>>>in
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>this
> >>>>>>>>>>>>particular case is either signed by another key of the CA
> >>>>>>>>>>>
> >>>>>(re-keyed
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>CA)
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>or
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>another entity (indirect CRL).
> >>>>>>>>>>>>
> >>>>>>>>>>>>In this case the relying party needs to obtain the
> >>>>>>>>>>>
> > certificate
> >
> >>>>>of
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>the
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>CRL
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>signer which may NOT be part of the original chain. In a
> >>>>>>>>>>>
> >>>>>directory
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>centric
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>solution this is retrieved from the directory, but what if
> >>>>>>>>>>>
> >>>such
> >>>
> >>>
> >>>>>>>>>>directory
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>is
> >>>>>>>>>>>>not available or accessible.
> >>>>>>>>>>>>
> >>>>>>>>>>>>The RP have thus no hint where to find the CRL issuers
> >>>>>>>>>>>
> >>>>>certificate
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>>unless
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>the RP already have possession of it by some other means.
> >>>>>>>>>>>>
> >>>>>>>>>>>>Is seems that CRLs would need an AIA extension with the
> >>>>>>>>>>>
> > option
> >
> >>>>>to
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>point
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>to
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>the location of the signers certificate in the same manner
> >>>>>>>>>>>
> > as
> >
> >>>is
> >>>
> >>>
> >>>>>>>>>>possible
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>>for certificates.
> >>>>>>>>>>>>
> >>>>>>>>>>>>Maybe AIA should be defined as both cert and CRL extension
> >>>>>>>>>>>
> > and
> >
> >>>>>not
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>>only
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>>>certificate extension as today.
> >>>>>>>>>>>>
> >>>>>>>>>>>>Thoughts and comments?
> >>>>>>>>>>>>
> >>>>>>>>>>>>Stefan Santesson
> >>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>
> >
> >
> >
> 

Date: Mon, 18 Oct 2004 16:57:32 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>, Stefan Santesson <[email-masked]>
CC: "'pkix'" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Santosh and Stefan,

Now we get to the point that there exists one solution, while the thread 
started saying that there was no other solution.

We can now start to discuss the advantages and disadvantages of the two 
solutions.

However, we have to provide a fair view.

For the time being, you have only considered the disadvantages of the 
*current* solution, i.e. using SIA. It would be fair that you also consider 
its advantages and that we take the time to have a fair comparison.

> The SIA can be used to find the certificate, but it leads to the exponential
> growth in the search base in the case of indirect CRL.

This is an argument about disadvantages. However this argument is incorrect: 
there is no exponential grow. A CA nominates an authority either as :

  1 - "CA issuer + CRL issuer"
  2 - "CA issuer only", or
  3 - "CRL Issuer only"

Once the path is constructed, if every CA certificate includes the SIA 
extension, then this is straightforward.

> Also, I do not think SIA is that well supported.

I could say that the new proposal is not "that well supported" but this 
would be an argument leading nowhere. :-|

The SIA extension is very useful and we should make our best efforts so that 
it will be more and more supported. Providing "yet another way" is not going 
to lead in that direction. :-(

> Thus, we need to consider the commercial realities and permit a simple and
> elegant approach of using AIA to prime the pump (so to speak) to start the
> CRL signer path development.

SIA was not present in RFC 2459. It has been introduced in RFC 3280 and this 
is a good point. It should be generalized in order to support 
interoperability. Going down from trust points to leaf certificates allow to 
cover any case.

The answers to Stefan follow:

> -----Original Message-----
> From: Stefan Santesson [mailto:[email-masked]] 
> Sent: Monday, October 18, 2004 8:19 AM
> To: Denis Pinkas
> Cc: Santosh Chokhani; pkix
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> Thanks Denis,
> 
> I now finally understand your SIA alternative.
> 
> There are some major problems with it though.

> 1) How can the RP know what certificate's SIA it would use to find the CRL
> signer cert?

> You just picked the right certificate in my example since I gave that
> information in the example. But the RP don't know that path, it only knows
> the path of the EE cert and the name of the CRL issuer!

This is sufficient to find out the right certificate once you know where the 
CA places the certificates that it has issued.

> 2) And even if RP knew the path beforehand, finding THE one CRL signer
> certificate from a CRL AIA is much more direct and efficient than finding
> among all issued certificates from a CA the 1 out of x issued certificates
> that is the CRL Issuer cert.

Usually a CA issues a small number of CA certificates and CRL certificates. 
So this is not a problem.

> 3) Using SIA in the examples requires available directories and directory
> enabled clients. How do you solve the problem if either of these is not
> available?

It could work as well with HTTP using the recent draft that has been proposed.

> Do you seriously suggest that use of SIA is a better and more effective way
> to address this problem or are you just pointing out the fact that there are
> SOME cases where use of SIA may work in theory?

I rather believe that your question was:

"Do you suggest that use of SIA is a better and more effective way to 
address this problem or are you just pointing out the fact that there are 
SOME cases where use of SIA may work ?

SIA is certainly better and shoud be generalized to ease path contruction, 
not only for CRL issuers but also for CAs.

SIA may work in ALL cases, unless you provide an example where it cannot.

Now I have spent quite a lot of time on that topic (on which I am personally 
NOT interested), but since I have been asked by the Security Area Director 
to provide details I needed to respond.

I will not be able to sustain the same level of discussions in the next 
coming days. In particular, I will not be in my office tomorrow. So you have 
plenty of time to consider pros and cons for both approaches and do not take 
silence as approval.

Denis

> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: den 18 oktober 2004 12:28
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>
>>>Denis,
>>
>>>If I get you right you mean that one can always successfully use AIA
>>
> and
> 
>>>SIA in certs to solve discovery of CRL signer cert.
>>>Others on this list (me included) don't understand how. It would 
>>>therefore be useful if you told us.
>>>
>>>I'll try to explain the problem from my perspective one more time.
>>
>>Thanks.
>>
>>
>>>Note: "->" in these examples means "issued by"
>>
>>Fine.
>>
>>
>>>Case 1 - indirect CRL:
>>>
>>>Cert path is:  EE_Cert -> CA_1 -> Root-CA
>>>CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA
>>
>>This means Root-CA has nominated CA_1 and a CRL_Issuer_B and that CA_1
> 
> has
> 
>>chosen to use CRL_Issuer_B for revocation checking for some
> 
> certificates.
> 
>>>Scenario:
>>>Relying party has access to the cert path, discovers the CRL through
>>
> CDP
> 
>>>in EE_Cert.
>>
>>If there is no attack on the objects stored at the CRL DP, the CRL
> 
> Issuer
> 
>>from that CRL is CRL_Issuer_B. Now the relying party needs to get the 
>>certificate isued by Root-CA for CRL_Issuer_B. If Root-CA has included
> 
> a
> 
>>SIA
>>extension in his self-signed certificate, then using that extension
> 
> allows
> 
>>to get the CRL_Issuer_B certificate issued by the Root-CA.
>>
>> > The RP searches the location specified in SIA through
>>
>>>id-ad-caRepository in the CA_1 cert but finds nothing useful since 
>>>revocation is subordinated to another entity (CRL_Issuer_B)
>>
>>Correct, but looking in Root-CA allows to find something useful, if
> 
> the
> 
>>self-signed certificate includes a SIA extension.
>>
>>
>>>In this case, the problem could be solved if an AIA in the CRL
>>
> indicated
> 
>>>the access location of the CRL Issuer cert.
>>
>>This would be an *alternative* way.
>>
>>
>>>Case 2 - re-keyed CA.
>>>
>>>Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
>>>CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA
>>
>>This means that the EE_Cert chain has been created with CA_1(old key)
> 
> and
> 
>>that the CRL issuer that was originaly used when the EE_Cert was
> 
> created
> 
>>has
>>been changed and a new CRL Issuer got a certificate under CA_1(new
> 
> key)
> 
>>and
>>is now the legitimate CRL issuer for the CRL DP originally mentionned
> 
> in
> 
>>the
>>EE_Cert.
>>
>>
>>>The 2 CA_1 certificates above (old key and new key) are issued to 
>>>different subject keys belonging to the same CA (same name). The 
>>>cert CA_1(old key) was issued before creation of cert CA_1(new
>>
> key)
> 
>>>and have thus no reference to CA_1(new key) in its SIA
>>>
>>>Scenario:
>>>RP discovers the CRL for the EE_Cert through the CDP but doesn't
>>
> possess
> 
>>>the CRL issuer cert. The RP client searches the SIA of the CA_1(old
>>
> key)
> 
>>>but finds no direct reference to the CRL signer cert. Since the RP 
>>>client has no access to a directory where the CRL signer cert could
>>
> be
> 
>>>found through directory lookup, cert validation fails.
>>
>>Correct, but looking in Root-CA allows to find something useful, if
> 
> the
> 
>>self-signed certificate includes a SIA extension.
>>
>>
>>>In this scenario the problem could be solved through an AIA in the
>>
> CRL.
> 
>>This would be an *alternative* way.
>>
>>Denis
>>
>>
>>>
>>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>Sent: den 15 oktober 2004 17:30
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>
>>>>
>>>>>Denis,
>>>>
>>>>>Unfortunately I fail to understand your questions, issues and
>>>>
>>>requests.
>>>
>>>
>>>>The sentence below demonstrates that you understand the issue.
>>>>
>>>>
>>>>
>>>>>It would be very useful if you could explain how current mechanisms
>>>>
>>>can
>>>
>>>
>>>>>be used in a simple and straightforward manner to discover CRL
>>>>
>>>signer
>>>
>>>
>>>>>certificates in ALL the use cases discussed, mainly re-keyed CA and 
>>>>>indirect CRLs.
>>>>
>>>>You are also reversing the question. Using your terms, my question
>>>
>>>would
>>>
>>>
>>>>be:
>>>>
>>>>"It would be very useful if you could explain how current mechanisms 
>>>>CANNOT be used in a simple and straightforward manner to discover 
>>>>CRL
>>>
> signer
> 
>>>>certificates in ONE or MORE the use cases discussed, mainly re-keyed
>>>
>>>CA
>>>
>>>
>>>>and
>>>>indirect CRLs."
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: [email-masked]
>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>>On Behalf Of Denis Pinkas
>>>>>>Sent: den 14 oktober 2004 17:13
>>>>>>To: Santosh Chokhani
>>>>>>Cc: 'pkix'
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>
>>>>>>Santosh,
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Denis:
>>>>>>
>>>>>>>With the three assumptions/constraints I provided, how would you
>>>>>>
>>>>>locate
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>>CRL issuer certificate for the two examples using 3280 extensions
>>>>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>without putting AIA in the CRL?
>>>>>>
>>>>>>As far as I understand, the three assumptions are:
>>>>>>
>>>>>>1.  You are directory challenged; and
>>>>>>   [I do not understand what this means]
>>>>>>2.  You use AIA to develop the path; and
>>>>>>   [It does not matter]
>>>>>>3.  You develop the path from the end entity to trust anchor
>>>>>>   [Could also be the contrary].
>>>>>>
>>>>>>If this is not correct, thus please correct.
>>>>>>
>>>>>>Then my request is: "using ANY OF the current extensions that are
>>>>>
>>>>>defined
>>>>>
>>>>>
>>>>>
>>>>>>in
>>>>>>RFC 3280", which includes SIA.
>>>>>>
>>>>>>In your explanations  you said :
>>>>>>"if you do no deal with SIA et. al"
>>>>>>
>>>>>>This last assumption is neither part of the three assumptions and
>>>>>
>>>does
>>>
>>>
>>>>>not
>>>>>
>>>>>
>>>>>
>>>>>>conform to my request.
>>>>>>
>>>>>>Denis
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>That is my point.
>>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>>Sent: Thursday, October 14, 2004 6:22 AM
>>>>>>>To: Santosh Chokhani
>>>>>>>Cc: 'pkix'
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>Santosh,
>>>>>>>
>>>>>>>You misread my request. I said:
>>>>>>>
>>>>>>>"For the time being, I would like that you provide an example
>>>>>>
>>>where,
>>>
>>>
>>>>>>when
>>>>>>
>>>>>>
>>>>>>
>>>>>>>using the current extensions that are defined in RFC 3280, it
>>>>>>
> will
> 
>>>>>NOT
>>>>>
>>>>>
>>>>>
>>>>>>be
>>>>>>
>>>>>>
>>>>>>
>>>>>>>possible to locate a CRL Issuer certificate."
>>>>>>>
>>>>>>>Maybe I would have needed to be clearer and say :
>>>>>>>
>>>>>>>"For the time being, I would like that you provide an example
>>>>>>
>>>where,
>>>
>>>
>>>>>>when
>>>>>>
>>>>>>
>>>>>>
>>>>>>>using ANY OF the current extensions that are defined in RFC 3280,
>>>>>>
>>>it
>>>
>>>
>>>>>>will
>>>>>>
>>>>>>
>>>>>>
>>>>>>>NOT be possible to locate a CRL Issuer certificate."
>>>>>>>
>>>>>>>The examples you provide below do not fulfil this request.
>>>>>>>
>>>>>>>The assumption is that there exists a path to be tested for
>>>>>>
>>>>>revocation
>>>>>
>>>>>
>>>>>
>>>>>>>checking (and that it does not matter to know which way it has
>>>>>>
> been
> 
>>>>>>>constructed).
>>>>>>>
>>>>>>>I am not saying that using AIA in CRL might not be useful, but I
>>>>>>
> am
> 
>>>>>>still
>>>>>>
>>>>>>
>>>>>>
>>>>>>>lacking the demonstration that there would be no other way.
>>>>>>>
>>>>>>>Denis
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>Denis:
>>>>>>>>
>>>>>>>>Two examples are very simple: one for direct CRL Issuer and one
>>>>>>>
>>>for
>>>
>>>
>>>>>>>>Indirect CRL Issuer.
>>>>>>>>
>>>>>>>>Let us make the following assumptions that Stefan was making:
>>>>>>>>
>>>>>>>>1.  You are directory challenged; and
>>>>>>>>2.  You use AIA to develop the path; and
>>>>>>>>3.  You develop the path from the end entity to trust anchor.
>>>>>>>>
>>>>>>>
>>>>>>>>From what I know of MS CAPI, these are reasonable
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>assumptions/constraints.
>>>>>>>>
>>>>>>>>Now the examples.
>>>>>>>>
>>>>>>>>Example 1: Direct CRL Issuer
>>>>>>>>
>>>>>>>>The certificate trust path is:
>>>>>>>>Root --> CA1 --> CA 2, old key --> Denis
>>>>>>>>
>>>>>>>>The CRL trust path is:
>>>>>>>>Root --> CA1 --> CA 2, new key --> CRL
>>>>>>>>
>>>>>>>>(Note: We do not do self-issued certificate since there is no
>>>>>>>
>>>>>simple,
>>>>>
>>>>>
>>>>>
>>>>>>>>secure way to check their revocation status).
>>>>>>>>
>>>>>>>>Now, with AIA in CRL, finding the CA2, new key certificate is 
>>>>>>>>straightforward.  How would you find it if you do no deal with
>>>>>>>
> SIA
> 
>>>>>et.
>>>>>
>>>>>
>>>>>
>>>>>>>>al.
>>>>>>>>
>>>>>>>>Example 2: Indirect CRL Issuer
>>>>>>>>
>>>>>>>>The certificate trust path is:
>>>>>>>>Root --> CA1 --> CA 2 --> Denis
>>>>>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
>>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>>>>by CAI.
>>>>>>>>
>>>>>>>>The CRL trust path is:
>>>>>>>>Root --> CAI --> CRL
>>>>>>>>
>>>>>>>>Now, with AIA in CRL, finding the CAI certificate is
>>>>>>>
>>>>>straightforward.
>>>>>
>>>>>
>>>>>
>>>>>>>>How would you find it if you do no deal with SIA et. al.
>>>>>>>>
>>>>>>>>In addition to the need cited above, please note that the
>>>>>>>
>>>extension
>>>
>>>
>>>>>>>>semantics does not change, it does not hinder any
>>>>>>>
>>>interoperability,
>>>
>>>
>>>>>>>>and it does not break any backward compatibility.  So, what if I 
>>>>>>>>wanted to use this extension in the CRL.  It does no harm to
>>>>>>>
> other
> 
>>>>>>>>relying parties.
>>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked] 
>>>>>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>>>>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>Denis,
>>>>>>>>
>>>>>>>>
>>>>>>>>>I'm not sure what you mean.
>>>>>>>>
>>>>>>>>
>>>>>>>>For the time being, I would like that you provide an example
>>>>>>>
>>>where,
>>>
>>>
>>>>>>>>when
>>>>>>>>using the current extensions that are defined in RFC 3280, it
>>>>>>>
> will
> 
>>>>>NOT
>>>>>
>>>>>
>>>>>
>>>>>>be
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>possible to locate a CRL Issuer certificate.
>>>>>>>>
>>>>>>>>If you are able to provide that example, then it would justify
>>>>>>>
> the
> 
>>>>>>>>need for
>>>>>>>>an extension at least for one case. Then we can see what that
>>>>>>>
> case
> 
>>>>>is.
>>>>>
>>>>>
>>>>>
>>>>>>>>I am awaiting that example.
>>>>>>>>
>>>>>>>>Denis
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>I conclude that I agree with Santosh.
>>>>>>>>>
>>>>>>>>>The debate is still open... Feel free to express your opinion.
>>>>>>>>>
>>>>>>>>>Stefan Santesson
>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>-----Original Message-----
>>>>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>>>>>Sent: den 13 oktober 2004 16:34
>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>
>>>>>>>>>>Stefan,
>>>>>>>>>>
>>>>>>>>>>You are making a conclusion without letting me the time to
>>>>>>>>>
>>>>>respond. I
>>>>>
>>>>>
>>>>>
>>>>>>>>>>will need more time to look at the pictures (and understand
>>>>>>>>>
>>>them).
>>>
>>>
>>>>>>>>>>For the time being, I am still reluctant to accept
>>>>>>>>>
>>>>>>>>>"yet-another-method".
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>We already have too many.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>Santosh,
>>>>>>>>>>>
>>>>>>>>>>>I conclude that we are in complete and total agreement. The 
>>>>>>>>>>>question is how to go about this.
>>>>>>>>>>
>>>>>>>>>>>Could we do this amendment to RFC 3280 in its next revision?
>>>>>>>>>>
> It
> 
>>>>>>>>>>>would hopefully just be a minor change.
>>>>>>>>>>
>>>>>>>>>>This is exactly what I feared.
>>>>>>>>>>
>>>>>>>>>>We usually end-up with a "minor change" in an extension
>>>>>>>>>
> without
> 
>>>>>>>>>>saying cleary how and when it shall/should be used.
>>>>>>>>>>
>>>>>>>>>>I still have in mind that:
>>>>>>>>>>
>>>>>>>>>>1) a certification path must first be constructed,
>>>>>>>>>>2) then the revocation checking of that path must be done.
>>>>>>>>>>
>>>>>>>>>>This means that information about CRL issuers certificates
>>>>>>>>>
>>>>>locations
>>>>>
>>>>>
>>>>>
>>>>>>>>>may
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>certainly be found in that chain. If not, I would like an
>>>>>>>>>
>>>example.
>>>
>>>
>>>>>>>>>>Denis
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>It would not change the definition of AIA just add that it
>>>>>>>>>>
> can
> 
>>>be
>>>
>>>
>>>>>>>>>used
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>also as CRL extension and list eventual restrictions and
>>>>>>>>>
>>>guidance
>>>
>>>
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>>>>>use
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>with CRLs.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>-----Original Message-----
>>>>>>>>>>>>From: [email-masked]
>>>>>>>>>>>
>>>>>>>>>[mailto:[email-masked]]
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>>>>>>To: 'pkix'
>>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan:
>>>>>>>>>>>>
>>>>>>>>>>>>In terms of certificate discovery, your proposal for AIA in
>>>>>>>>>>>
>>>CRL
>>>
>>>
>>>>>is
>>>>>
>>>>>
>>>>>
>>>>>>>>>more
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>robust.  The whole idea of self-issued key rollover
>>>>>>>>>>>
>>>certificates
>>>
>>>
>>>>>>>>>>>>and
>>>>>>>>>>>
>>>>>>>>>>then
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>using the new key to issue CRL is fraught with security
>>>>>>>>>>>
>>>>>problems.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>A secure solution would be one where the new key is
>>>>>>>>>>>
> certified
> 
>>>by
>>>
>>>
>>>>>>>>>>>>the parent
>>>>>>>>>>>
>>>>>>>>>CA.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>In
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>that case to obtain the new certificate, you could use AIA
>>>>>>>>>>>
> in
> 
>>>>>CRL.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP
>>>>>>>>>>>
>>>in
>>>
>>>
>>>>>>>>>>>>certificate in question points to the indirect CRL.  You get
>>>>>>>>>>>
>>>>>that
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>CRL.  The AIA
>>>>>>>>>>>
>>>>>>>>>in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>gets you started for the indirect CRL issuer certification
>>>>>>>>>>>
>>>path
>>>
>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>you
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>are
>>>>>>>>>>>>in business.
>>>>>>>>>>>>
>>>>>>>>>>>>-----Original Message-----
>>>>>>>>>>>>From: [email-masked]
>>>>>>>>>>>
>>>>>>>>>[mailto:[email-masked]]
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>On
>>>>>>>>>>>>Behalf Of Stefan Santesson
>>>>>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>>>>>>To: David A. Cooper
>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>David,
>>>>>>>>>>>>
>>>>>>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>>>>>>I did misread your pictures.
>>>>>>>>>>>>
>>>>>>>>>>>>So can we conclude that for a re-keyed CA in accordance with
>>>>>>>>>>>
>>>RFC
>>>
>>>
>>>>>>>>>3280,
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>either the CRL issuer certificate itself, or the location of
>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>>>CRL issuer certificate, will be clearly identified/available
>>>>>>>>>>>
>>>for
>>>
>>>
>>>>>>>>>>>>the validating
>>>>>>>>>>>
>>>>>>>>>>party
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>in some cases, but not in others?
>>>>>>>>>>>>
>>>>>>>>>>>>Can we also conclude that there is no real discovery
>>>>>>>>>>>
> solution
> 
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>>>>>>indirect
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>CRLs?
>>>>>>>>>>>>
>>>>>>>>>>>>Do you then agree then that it could be appropriate to allow
>>>>>>>>>>>
>>>AIA
>>>
>>>
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>>>>>a
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>
>>>>>>>>>>>>________________________________________
>>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan,
>>>>>>>>>>>>
>>>>>>>>>>>>I believe that you are misinterpreting the figures.  They
>>>>>>>>>>>
>>>really
>>>
>>>
>>>>>do
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>represent three different cases, not three different
>>>>>>>>>>>
>>>>>certification
>>>>>
>>>>>
>>>>>
>>>>>>>>>paths
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>that have been constructed through the same PKI
>>>>>>>>>>>
> architecture.
> 
>>>>>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>>>>>>
>>>>>>>>>certificates.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>The
>>>>>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not
>>>>>>>>>>>
>>>its
>>>
>>>
>>>>>old
>>>>>
>>>>>
>>>>>
>>>>>>>>>key
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>(either the Root CA never issued a certificate to CA 1's old
>>>>>>>>>>>
>>>key
>>>
>>>
>>>>>or
>>>>>
>>>>>
>>>>>
>>>>>>>>>that
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate has expired).
>>>>>>>>>>>>
>>>>>>>>>>>>In figure 2, CA 2 has also generated self-issued key
>>>>>>>>>>>
> rollover
> 
>>>>>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's
>>>>>>>>>>>
>>>old
>>>
>>>
>>>>>>>>>>>>key, but not its
>>>>>>>>>>>
>>>>>>>>>new
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>key.
>>>>>>>>>>>>
>>>>>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested
>>>>>>>>>>>
> a
> 
>>>>>new
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>>>>>>>self-issued
>>>>>>>>>>>
>>>>>>>>>key
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>rollover certificates.
>>>>>>>>>>>>
>>>>>>>>>>>>Of course, another realistic scenario would be one in which
>>>>>>>>>>>
> a
> 
>>>CA
>>>
>>>
>>>>>>>>>>generated
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>self-issued key rollover certificates upon key rollover and
>>>>>>>>>>>
>>>then
>>>
>>>
>>>>>>>>>>>>had
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>Root CA issue a CA certificate to its new key.  In this
>>>>>>>>>>>
> case,
> 
>>>as
>>>
>>>
>>>>>>>>>>>>you suggest, any of the certification paths from figures 1,
>>>>>>>>>>>
> 2,
> 
>>>>>or 3
>>>>>
>>>>>
>>>>>
>>>>>>>>>could be
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>constructed.
>>>>>>>>>>>>
>>>>>>>>>>>>As for the contents of the AIA extension, here is what I
>>>>>>>>>>>
> have
> 
>>>>>>>>>specified
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>in
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
>>>>>>>>>>>
>>>Common
>>>
>>>
>>>>>>>>>>Policy":
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>The authorityInfoAccess extension uses URIs for two
>>>>>>>>>>>
> purposes.
> 
>>>>>When
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>id-ad-caIssuers access method is used, the access location 
>>>>>>>>>>>>specifies
>>>>>>>>>>>
>>>>>>>>>>where
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>>>>>
>>>>>found.
>>>>>
>>>>>
>>>>>
>>>>>>>>>If
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>LDAP
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is used, the URI must include the DN of the entry containing
>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>>relevant
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificates and specify the directory attribute in which
>>>>>>>>>>>
> the
> 
>>>>>>>>>>certificates
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>are located. If the directory in which the certificates are
>>>>>>>>>>>
>>>>>stored
>>>>>
>>>>>
>>>>>
>>>>>>>>>>expects
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the "binary" option to be specified, then the attribute type
>>>>>>>>>>>
>>>>>must
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the
>>>>>>>>>>>
> URI
> 
>>>>>must
>>>>>
>>>>>
>>>>>
>>>>>>>>>point to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>a
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>file that has an extension of ".p7c" that contains a
>>>>>>>>>>>
>>>certs-only
>>>
>>>
>>>>>CMS
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>message (see RFC 2633). The CMS message should include all 
>>>>>>>>>>>>certificates
>>>>>>>>>>>
>>>>>>>>>issued
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>to
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the issuer of this certificate, but must at least contain
>>>>>>>>>>>
> all
> 
>>>>>>>>>>certificates
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>issued to the issuer of this certificate in which the
>>>>>>>>>>>
> subject
> 
>>>>>>>>>>>>public
>>>>>>>>>>>
>>>>>>>>>key
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>may
>>>>>>>>>>>>be used to verify the signature on this certificate. ....
>>>>>>>>>>>
> For
> 
>>>a
>>>
>>>
>>>>>>>>>>>>certificate issued by "Good CA", some examples of URIs that
>>>>>>>>>>>
>>>may
>>>
>>>
>>>>>>>>>>>>appear as the
>>>>>>>>>>>
>>>>>>>>>access
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>>>>>>
>>>>>>>>>id-ad-caIssuers
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>access
>>>>>>>>>>>>method is used are:
>>>>>>>>>>>
>>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cA
>>>>>>>
> C
> 
>>>e
>>>
>>>
>>>>>r
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>t
>>>>>>>>>>>i
>>>>>>>>>>
>>>>>>>>>fi
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>ca
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>te
>>>>>>>>>>>>,crossCertificatePair
>>>>>>>>>>>
>>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACert
>>>>>>>
> i
> 
>>>f
>>>
>>>
>>>>>i
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>c
>>>>>>>>>>>a
>>>>>>>>>>
>>>>>>>>>te
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>;b
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>in
>>>>>>>>>>>>ary,crossCertificatePair;binary
>>>>>>>>>>>
>>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsI
>>>>>>>
> s
> 
>>>s
>>>
>>>
>>>>>u
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>e
>>>>>>>>>>>d
>>>>>>>>>>
>>>>>>>>>To
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>Go
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>od
>>>>>>>>>>>>CA.p7c
>>>>>>>>>>>>For both LDAP and HTTP, the URI provides the exact location
>>>>>>>>>>>
>>>>>where
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>information is to be located, so there is no requirement for
>>>>>>>>>>>
>>>the
>>>
>>>
>>>>>>>>>relying
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>party to try to figure out where information is located.
>>>>>>>>>>>>
>>>>>>>>>>>>The HTTP URI points to a certs-only CMS message that
>>>>>>>>>>>
> includes
> 
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>certificates issued to the CA identified in the issuer field
>>>>>>>>>>>
>>>of
>>>
>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>certificate.
>>>>>>>>>>>>
>>>>>>>>>>>>The LDAP URI points to the cACertificate and
>>>>>>>>>>>
>>>>>crossCertificatePair
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>attributes of the directory entry of the CA identified in
>>>>>>>>>>>
> the
> 
>>>>>>>>>>>>issuer field of
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>>>>>>
>>>>>>>>>certificates
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>issued to the CA:  the cACertificate attribute holds the
>>>>>>>>>>>
> CA's
> 
>>>>>self-
>>>>>
>>>>>
>>>>>
>>>>>>>>>>issued
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificates and the crossCertificatePair attribute holds
>>>>>>>>>>>
> the
> 
>>>>>>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>>>>>>
>>>>>>>>>>>>Dave
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>David,
>>>>>>>>>>>>
>>>>>>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>>>>>>
>>>>>>>>>>>>I have some comments and questions on this.
>>>>>>>>>>>>
>>>>>>>>>>>>First of all we can conclude that in some scenarios (figure
>>>>>>>>>>>
> 1)
> 
>>>>>>>>>>>>where
>>>>>>>>>>>
>>>>>>>>>a
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>self
>>>>>>>>>>>>issued certificate is inserted into the path, you are likely
>>>>>>>>>>>
>>>to
>>>
>>>
>>>>>>>>>>>>find
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>CRL
>>>>>>>>>>>>issuer cert in the path. (given that the new CA have a
>>>>>>>>>>>
> common
> 
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>>>>>and
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>>>>>>
>>>>>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
>>>>>>>>>>>
>>>describing
>>>
>>>
>>>>>>>>>>different
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>path building strategies. An application that has access
>>>>>>>>>>>
>>>locally
>>>
>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>>>>>all
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>chaining options may however still choose path 2 for the
>>>>>>>>>>>
> certs
> 
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>path
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>1
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>for the CRL independent of each other (which I think figure
>>>>>>>>>>>
> 3
> 
>>>>>tries
>>>>>
>>>>>
>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>describe)
>>>>>>>>>>>>
>>>>>>>>>>>>Another comment is the structure of AIA extensions. The use
>>>>>>>>>>>
>>>I'm
>>>
>>>
>>>>>>>>>familiar
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>with doesn't use AIA to describe a directory entry where it
>>>>>>>>>>>
> is
> 
>>>>>left
>>>>>
>>>>>
>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>validation application logic to be intelligent enough to
>>>>>>>>>>>
> find
> 
>>>>>>>>>>appropriate
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certificate data from the directory. The model I'm familiar
>>>>>>>>>>>
>>>with
>>>
>>>
>>>>>is
>>>>>
>>>>>
>>>>>
>>>>>>>>>when
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>AIA URL explicitly identifies the exact location of the
>>>>>>>>>>>
>>>>>appropriate
>>>>>
>>>>>
>>>>>
>>>>>>>>>CA
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate file, relieving the validation software from
>>>>>>>>>>>
>>>complex
>>>
>>>
>>>>>>>>>>>>information queries. If just location of explicit
>>>>>>>>>>>
> certificate
> 
>>>>>files
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>are
>>>>>>>>>>>
>>>>>>>>>identified
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>through AIA, the presence of an AIA may not help finding the
>>>>>>>>>>>
>>>CRL
>>>
>>>
>>>>>>>>>signer
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>cert
>>>>>>>>>>>>if this is different from the CA certificate. This is also
>>>>>>>>>>>
> the
> 
>>>>>>>>>problem
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>with
>>>>>>>>>>>>Denis proposal.
>>>>>>>>>>>>
>>>>>>>>>>>>I think we share the basic conclusion that the ability to
>>>>>>>>>>>
>>>locate
>>>
>>>
>>>>>>>>>>>>the
>>>>>>>>>>>
>>>>>>>>>CRL
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>signer certificate directly through the CRL could be very
>>>>>>>>>>>
>>>>>useful.
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>At
>>>>>>>>>>>
>>>>>>>>>>least
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>in the case of indirect CRL but it could also be proven very
>>>>>>>>>>>
>>>>>useful
>>>>>
>>>>>
>>>>>
>>>>>>>>>in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CA
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>re-keying scenarios.
>>>>>>>>>>>>
>>>>>>>>>>>>The easiest solution would probably be to allow AIA to be
>>>>>>>>>>>
> used
> 
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>>>>>its
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>>>>>>
>>>>>>>>>critical).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>It
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>would present a very clear and uncomplicated logic to
>>>>>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>validating applications in many cases.
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>
>>>>>>>>>>>>________________________________________
>>>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>>>Cc: pkix
>>>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan,
>>>>>>>>>>>>
>>>>>>>>>>>>I think what you are proposing is a good idea.  In most
>>>>>>>>>>>
> cases,
> 
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>discovery algorithms assume that both the trust anchor (or
>>>>>>>>>>>
>>>trust
>>>
>>>
>>>>>>>>>>anchors)
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>and the end entity certificate are provided as input.  In
>>>>>>>>>>>
> this
> 
>>>>>>>>>>>>case,
>>>>>>>>>>>
>>>>>>>>>one
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>may
>>>>>>>>>>>>need to construct a certification path without a priori
>>>>>>>>>>>
> access
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>end
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>entity certificate (the one with the subject public key
>>>>>>>>>>>
>>>>>>>>>corresponding to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>>>>>>
>>>>>>>>>pointer) in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>CRL would provide the relying party with a simple way to
>>>>>>>>>>>
>>>obtain
>>>
>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>end
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>entity certificate for the CRL signing key's certification
>>>>>>>>>>>
>>>path.
>>>
>>>
>>>>>On
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>>>>>>
>>>>>>>>>construct
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>certification path even without an AIA extension in the CRL,
>>>>>>>>>>>
>>>so
>>>
>>>
>>>>>>>>>>>>long
>>>>>>>>>>>
>>>>>>>>>as
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>it
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
>>>>>>>>>>>
>>>>>basic
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>>>>>>
>>>>>>>>>>>>In each of these scenarios, the CA has performed key
>>>>>>>>>>>
> rollover
> 
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>is
>>>>>>>>>>>
>>>>>>>>>>only
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>signing CRLs with its new key.  The diagrams would look
>>>>>>>>>>>
>>>similar,
>>>
>>>
>>>>>>>>>>however,
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>if
>>>>>>>>>>>>the CA simply choose to use different keys to sign
>>>>>>>>>>>
>>>certificates
>>>
>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>CRLs
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>for
>>>>>>>>>>>>some other reason.
>>>>>>>>>>>>
>>>>>>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>>>>>
>>>>>certification
>>>>>
>>>>>
>>>>>
>>>>>>>>>path
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>for
>>>>>>>>>>>>the CRL signing key would just be a subset of the
>>>>>>>>>>>
>>>certification
>>>
>>>
>>>>>>>>>>>>path
>>>>>>>>>>>
>>>>>>>>>for
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>EE certificate, so no addition path discovery would be
>>>>>>>>>>>
> needed.
> 
>>>>>>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>>>>>>
>>>>>>>>>necessary
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>to
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In 
>>>>>>>>>>>>building
>>>>>>>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certification path to the EE certificate, however, the
>>>>>>>>>>>
> relying
> 
>>>>>>>>>>>>party
>>>>>>>>>>>
>>>>>>>>>>will
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>obtain the certificates pointed to by the AIA extension in
>>>>>>>>>>>
> the
> 
>>>>>EE
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>certificate.  This AIA extension will point to a location 
>>>>>>>>>>>>containing
>>>>>>>>>>>
>>>>>>>>>all
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>>>>>>
>>>>>>>>>certificate
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>issued
>>>>>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
>>>>>>>>>>>
>>>>>even
>>>>>
>>>>>
>>>>>
>>>>>>>>>though
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>self-issued certificate would not be part of the
>>>>>>>>>>>
> certification
> 
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>>>>>
>>>>>during
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>>>>>
>>>>>circular
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>>>>>>>
>>>>>>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>>>>>
>>>>>resembled
>>>>>
>>>>>
>>>>>
>>>>>>>>>>figure
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>>>>>>
>>>>>>>>>location
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>containing certificates issued to CA 3.  When the relying
>>>>>>>>>>>
>>>party
>>>
>>>
>>>>>>>>>>downloaded
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>these certificates, it would obtain both of the certificates
>>>>>>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>>>>>by
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>Root to CA 3 and so again would have the certificate needed
>>>>>>>>>>>
> to
> 
>>>>>>>>>validate
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>the
>>>>>>>>>>>>CRL signing key.
>>>>>>>>>>>>
>>>>>>>>>>>>In the case of an indirect CRL, things may not work as well.
>>>>>>>>>>>
>>>If
>>>
>>>
>>>>>>>>>>indirect
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2
>>>>>>>>>>>
>>>or
>>>
>>>
>>>>>3
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>>>>>>>>certificates pointed
>>>>>>>>>>>
>>>>>>>>>to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>by
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the AIA extension in the EE certificate would not include
>>>>>>>>>>>
> the
> 
>>>>>>>>>>certificate
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>of
>>>>>>>>>>>>the CRL signer.  One could find this certificate by building
>>>>>>>>>>>
>>>in
>>>
>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>reverse direction and using the SIA extension, but that may
>>>>>>>>>>>
>>>not
>>>
>>>
>>>>>be
>>>>>
>>>>>
>>>>>
>>>>>>>>>>>>the most convenient solution.
>>>>>>>>>>>>
>>>>>>>>>>>>So, when indirect CRLs are being used, it seems that it
>>>>>>>>>>>
> would
> 
>>>be
>>>
>>>
>>>>>>>>>very
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>useful
>>>>>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>>>>>
>>>>>When
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is not indirect, the need for this pointer does not seem to
>>>>>>>>>>>
> be
> 
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>>>>>clear,
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>but
>>>>>>>>>>>>I can't see any harm in including it.
>>>>>>>>>>>>
>>>>>>>>>>>>Dave
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>>>All,
>>>>>>>>>>>>
>>>>>>>>>>>>I'm interested in the opinion from members on this list
>>>>>>>>>>>
> about
> 
>>>>>>>>>discovery
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>of
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>CRL signer's certificate in non directory centric
>>>>>>>>>>>
>>>environments.
>>>
>>>
>>>>>>>>>>>>The problem is the following.
>>>>>>>>>>>>
>>>>>>>>>>>>The relying party (RP) needs to check validity of a
>>>>>>>>>>>
>>>certificate
>>>
>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>>>>>>finds
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>a
>>>>>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this
>>>>>>>>>>>
> CRL
> 
>>>>>>>>>>>>which
>>>>>>>>>>>
>>>>>>>>>in
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>this
>>>>>>>>>>>>particular case is either signed by another key of the CA
>>>>>>>>>>>
>>>>>(re-keyed
>>>>>
>>>>>
>>>>>
>>>>>>>>>CA)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>or
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>another entity (indirect CRL).
>>>>>>>>>>>>
>>>>>>>>>>>>In this case the relying party needs to obtain the
>>>>>>>>>>>
> certificate
> 
>>>>>of
>>>>>
>>>>>
>>>>>
>>>>>>>>>the
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>>>>>
>>>>>directory
>>>>>
>>>>>
>>>>>
>>>>>>>>>>centric
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>solution this is retrieved from the directory, but what if
>>>>>>>>>>>
>>>such
>>>
>>>
>>>>>>>>>>directory
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>is
>>>>>>>>>>>>not available or accessible.
>>>>>>>>>>>>
>>>>>>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>>>>>>unless
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the RP already have possession of it by some other means.
>>>>>>>>>>>>
>>>>>>>>>>>>Is seems that CRLs would need an AIA extension with the
>>>>>>>>>>>
> option
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>>>>>point
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>to
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>the location of the signers certificate in the same manner
>>>>>>>>>>>
> as
> 
>>>is
>>>
>>>
>>>>>>>>>>possible
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>for certificates.
>>>>>>>>>>>>
>>>>>>>>>>>>Maybe AIA should be defined as both cert and CRL extension
>>>>>>>>>>>
> and
> 
>>>>>not
>>>>>
>>>>>
>>>>>
>>>>>>>>>only
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>certificate extension as today.
>>>>>>>>>>>>
>>>>>>>>>>>>Thoughts and comments?
>>>>>>>>>>>>
>>>>>>>>>>>>Stefan Santesson
>>>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>
> 
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Mon, 18 Oct 2004 08:58:46 -0400
Importance: Normal
Sender: [email-masked]

The SIA can be used to find the certificate, but it leads to the exponential
growth in the search base in the case of indirect CRL.

Also, I do not think SIA is that well supported.

Thus, we need to consider the commercial realities and permit a simple and
elegant approach of using AIA to prime the pump (so to speak) to start the
CRL signer path development.

-----Original Message-----
From: Stefan Santesson [mailto:[email-masked]] 
Sent: Monday, October 18, 2004 8:19 AM
To: Denis Pinkas
Cc: Santosh Chokhani; pkix
Subject: RE: Signer certificate discovery for CRLs

Thanks Denis,

I now finally understand your SIA alternative.

There are some major problems with it though.

1) How can the RP know what certificate's SIA it would use to find the CRL
signer cert?

You just picked the right certificate in my example since I gave that
information in the example. But the RP don't know that path, it only knows
the path of the EE cert and the name of the CRL issuer!

2) And even if RP knew the path beforehand, finding THE one CRL signer
certificate from a CRL AIA is much more direct and efficient than finding
among all issued certificates from a CA the 1 out of x issued certificates
that is the CRL Issuer cert.

3) Using SIA in the examples requires available directories and directory
enabled clients. How do you solve the problem if either of these is not
available?

Do you seriously suggest that use of SIA is a better and more effective way
to address this problem or are you just pointing out the fact that there are
SOME cases where use of SIA may work in theory?

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 18 oktober 2004 12:28
> To: Stefan Santesson
> Cc: Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> > Denis,
> 
> > If I get you right you mean that one can always successfully use AIA
and
> > SIA in certs to solve discovery of CRL signer cert.
> > Others on this list (me included) don't understand how. It would 
> > therefore be useful if you told us.
> >
> > I'll try to explain the problem from my perspective one more time.
> 
> Thanks.
> 
> > Note: "->" in these examples means "issued by"
> 
> Fine.
> 
> > Case 1 - indirect CRL:
> >
> > Cert path is:  EE_Cert -> CA_1 -> Root-CA
> > CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA
> 
> This means Root-CA has nominated CA_1 and a CRL_Issuer_B and that CA_1
has
> chosen to use CRL_Issuer_B for revocation checking for some
certificates.
> 
> > Scenario:
> > Relying party has access to the cert path, discovers the CRL through
CDP
> > in EE_Cert.
> 
> If there is no attack on the objects stored at the CRL DP, the CRL
Issuer
> from that CRL is CRL_Issuer_B. Now the relying party needs to get the 
> certificate isued by Root-CA for CRL_Issuer_B. If Root-CA has included
a
> SIA
> extension in his self-signed certificate, then using that extension
allows
> to get the CRL_Issuer_B certificate issued by the Root-CA.
> 
>  > The RP searches the location specified in SIA through
> > id-ad-caRepository in the CA_1 cert but finds nothing useful since 
> > revocation is subordinated to another entity (CRL_Issuer_B)
> 
> Correct, but looking in Root-CA allows to find something useful, if
the
> self-signed certificate includes a SIA extension.
> 
> > In this case, the problem could be solved if an AIA in the CRL
indicated
> > the access location of the CRL Issuer cert.
> 
> This would be an *alternative* way.
> 
> > Case 2 - re-keyed CA.
> >
> > Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
> > CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA
> 
> This means that the EE_Cert chain has been created with CA_1(old key)
and
> that the CRL issuer that was originaly used when the EE_Cert was
created
> has
> been changed and a new CRL Issuer got a certificate under CA_1(new
key)
> and
> is now the legitimate CRL issuer for the CRL DP originally mentionned
in
> the
> EE_Cert.
> 
> > The 2 CA_1 certificates above (old key and new key) are issued to 
> > different subject keys belonging to the same CA (same name). The 
> > cert CA_1(old key) was issued before creation of cert CA_1(new
key)
> > and have thus no reference to CA_1(new key) in its SIA
> >
> > Scenario:
> > RP discovers the CRL for the EE_Cert through the CDP but doesn't
possess
> > the CRL issuer cert. The RP client searches the SIA of the CA_1(old
key)
> > but finds no direct reference to the CRL signer cert. Since the RP 
> > client has no access to a directory where the CRL signer cert could
be
> > found through directory lookup, cert validation fails.
> 
> Correct, but looking in Root-CA allows to find something useful, if
the
> self-signed certificate includes a SIA extension.
> 
> > In this scenario the problem could be solved through an AIA in the
CRL.
> 
> This would be an *alternative* way.
> 
> Denis
> 
> >
> >
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >>-----Original Message-----
> >>From: Denis Pinkas [mailto:[email-masked]]
> >>Sent: den 15 oktober 2004 17:30
> >>To: Stefan Santesson
> >>Cc: Santosh Chokhani; pkix
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>Stefan,
> >>
> >>
> >>>Denis,
> >>
> >>>Unfortunately I fail to understand your questions, issues and
> >>
> > requests.
> >
> >>The sentence below demonstrates that you understand the issue.
> >>
> >>
> >>>It would be very useful if you could explain how current mechanisms
> >>
> > can
> >
> >>>be used in a simple and straightforward manner to discover CRL
> >>
> > signer
> >
> >>>certificates in ALL the use cases discussed, mainly re-keyed CA and 
> >>>indirect CRLs.
> >>
> >>You are also reversing the question. Using your terms, my question
> >
> > would
> >
> >>be:
> >>
> >>"It would be very useful if you could explain how current mechanisms 
> >>CANNOT be used in a simple and straightforward manner to discover 
> >>CRL
signer
> >>certificates in ONE or MORE the use cases discussed, mainly re-keyed
> >
> > CA
> >
> >>and
> >>indirect CRLs."
> >>
> >>Denis
> >>
> >>
> >>>Stefan Santesson
> >>>Microsoft Security Center of Excellence (SCOE)
> >>>
> >>>
> >>>
> >>>
> >>>>-----Original Message-----
> >>>>From: [email-masked]
> >>>
> >>>[mailto:[email-masked]]
> >>>
> >>>
> >>>>On Behalf Of Denis Pinkas
> >>>>Sent: den 14 oktober 2004 17:13
> >>>>To: Santosh Chokhani
> >>>>Cc: 'pkix'
> >>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>
> >>>>
> >>>>Santosh,
> >>>>
> >>>>
> >>>>
> >>>>>Denis:
> >>>>
> >>>>>With the three assumptions/constraints I provided, how would you
> >>>>
> >>>locate
> >>>
> >>>
> >>>>the
> >>>>
> >>>>
> >>>>>CRL issuer certificate for the two examples using 3280 extensions
> >>>>
> >>>and
> >>>
> >>>
> >>>>>without putting AIA in the CRL?
> >>>>
> >>>>As far as I understand, the three assumptions are:
> >>>>
> >>>>1.  You are directory challenged; and
> >>>>    [I do not understand what this means]
> >>>>2.  You use AIA to develop the path; and
> >>>>    [It does not matter]
> >>>>3.  You develop the path from the end entity to trust anchor
> >>>>    [Could also be the contrary].
> >>>>
> >>>>If this is not correct, thus please correct.
> >>>>
> >>>>Then my request is: "using ANY OF the current extensions that are
> >>>
> >>>defined
> >>>
> >>>
> >>>>in
> >>>>RFC 3280", which includes SIA.
> >>>>
> >>>>In your explanations  you said :
> >>>>"if you do no deal with SIA et. al"
> >>>>
> >>>>This last assumption is neither part of the three assumptions and
> >>>
> > does
> >
> >>>not
> >>>
> >>>
> >>>>conform to my request.
> >>>>
> >>>>Denis
> >>>>
> >>>>
> >>>>
> >>>>>That is my point.
> >>>>>
> >>>>>-----Original Message-----
> >>>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>>Sent: Thursday, October 14, 2004 6:22 AM
> >>>>>To: Santosh Chokhani
> >>>>>Cc: 'pkix'
> >>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>
> >>>>>
> >>>>>Santosh,
> >>>>>
> >>>>>You misread my request. I said:
> >>>>>
> >>>>>"For the time being, I would like that you provide an example
> >>>>
> > where,
> >
> >>>>when
> >>>>
> >>>>
> >>>>>using the current extensions that are defined in RFC 3280, it
will
> >>>>
> >>>NOT
> >>>
> >>>
> >>>>be
> >>>>
> >>>>
> >>>>>possible to locate a CRL Issuer certificate."
> >>>>>
> >>>>>Maybe I would have needed to be clearer and say :
> >>>>>
> >>>>>"For the time being, I would like that you provide an example
> >>>>
> > where,
> >
> >>>>when
> >>>>
> >>>>
> >>>>>using ANY OF the current extensions that are defined in RFC 3280,
> >>>>
> > it
> >
> >>>>will
> >>>>
> >>>>
> >>>>>NOT be possible to locate a CRL Issuer certificate."
> >>>>>
> >>>>>The examples you provide below do not fulfil this request.
> >>>>>
> >>>>>The assumption is that there exists a path to be tested for
> >>>>
> >>>revocation
> >>>
> >>>
> >>>>>checking (and that it does not matter to know which way it has
been
> >>>>>constructed).
> >>>>>
> >>>>>I am not saying that using AIA in CRL might not be useful, but I
am
> >>>>
> >>>>still
> >>>>
> >>>>
> >>>>>lacking the demonstration that there would be no other way.
> >>>>>
> >>>>>Denis
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>Denis:
> >>>>>>
> >>>>>>Two examples are very simple: one for direct CRL Issuer and one
> >>>>>
> > for
> >
> >>>>>>Indirect CRL Issuer.
> >>>>>>
> >>>>>>Let us make the following assumptions that Stefan was making:
> >>>>>>
> >>>>>>1.  You are directory challenged; and
> >>>>>>2.  You use AIA to develop the path; and
> >>>>>>3.  You develop the path from the end entity to trust anchor.
> >>>>>>
> >>>>>
> >>>>>>From what I know of MS CAPI, these are reasonable
> >>>>>
> >>>>>
> >>>>>>assumptions/constraints.
> >>>>>>
> >>>>>>Now the examples.
> >>>>>>
> >>>>>>Example 1: Direct CRL Issuer
> >>>>>>
> >>>>>>The certificate trust path is:
> >>>>>>Root --> CA1 --> CA 2, old key --> Denis
> >>>>>>
> >>>>>>The CRL trust path is:
> >>>>>>Root --> CA1 --> CA 2, new key --> CRL
> >>>>>>
> >>>>>>(Note: We do not do self-issued certificate since there is no
> >>>>>
> >>>simple,
> >>>
> >>>
> >>>>>>secure way to check their revocation status).
> >>>>>>
> >>>>>>Now, with AIA in CRL, finding the CA2, new key certificate is 
> >>>>>>straightforward.  How would you find it if you do no deal with
SIA
> >>>>>
> >>>et.
> >>>
> >>>
> >>>>>>al.
> >>>>>>
> >>>>>>Example 2: Indirect CRL Issuer
> >>>>>>
> >>>>>>The certificate trust path is:
> >>>>>>Root --> CA1 --> CA 2 --> Denis
> >>>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
> >>>>>
> >>>issued
> >>>
> >>>
> >>>>>>by CAI.
> >>>>>>
> >>>>>>The CRL trust path is:
> >>>>>>Root --> CAI --> CRL
> >>>>>>
> >>>>>>Now, with AIA in CRL, finding the CAI certificate is
> >>>>>
> >>>straightforward.
> >>>
> >>>
> >>>>>>How would you find it if you do no deal with SIA et. al.
> >>>>>>
> >>>>>>In addition to the need cited above, please note that the
> >>>>>
> > extension
> >
> >>>>>>semantics does not change, it does not hinder any
> >>>>>
> > interoperability,
> >
> >>>>>>and it does not break any backward compatibility.  So, what if I 
> >>>>>>wanted to use this extension in the CRL.  It does no harm to
other
> >>>>>>relying parties.
> >>>>>>
> >>>>>>-----Original Message-----
> >>>>>>From: [email-masked] 
> >>>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
> >>>>>>Sent: Wednesday, October 13, 2004 11:01 AM
> >>>>>>To: Stefan Santesson
> >>>>>>Cc: Santosh Chokhani; pkix
> >>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>Stefan,
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>Denis,
> >>>>>>
> >>>>>>
> >>>>>>>I'm not sure what you mean.
> >>>>>>
> >>>>>>
> >>>>>>For the time being, I would like that you provide an example
> >>>>>
> > where,
> >
> >>>>>>when
> >>>>>>using the current extensions that are defined in RFC 3280, it
will
> >>>>>
> >>>NOT
> >>>
> >>>
> >>>>be
> >>>>
> >>>>
> >>>>>>possible to locate a CRL Issuer certificate.
> >>>>>>
> >>>>>>If you are able to provide that example, then it would justify
the
> >>>>>>need for
> >>>>>>an extension at least for one case. Then we can see what that
case
> >>>>>
> >>>is.
> >>>
> >>>
> >>>>>>I am awaiting that example.
> >>>>>>
> >>>>>>Denis
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>I conclude that I agree with Santosh.
> >>>>>>>
> >>>>>>>The debate is still open... Feel free to express your opinion.
> >>>>>>>
> >>>>>>>Stefan Santesson
> >>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>-----Original Message-----
> >>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>>>>>Sent: den 13 oktober 2004 16:34
> >>>>>>>>To: Stefan Santesson
> >>>>>>>>Cc: Santosh Chokhani; pkix
> >>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>
> >>>>>>>>Stefan,
> >>>>>>>>
> >>>>>>>>You are making a conclusion without letting me the time to
> >>>>>>>
> >>>respond. I
> >>>
> >>>
> >>>>>>>>will need more time to look at the pictures (and understand
> >>>>>>>
> > them).
> >
> >>>>>>>>For the time being, I am still reluctant to accept
> >>>>>>>
> >>>>>>>"yet-another-method".
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>We already have too many.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>Santosh,
> >>>>>>>>>
> >>>>>>>>>I conclude that we are in complete and total agreement. The 
> >>>>>>>>>question is how to go about this.
> >>>>>>>>
> >>>>>>>>>Could we do this amendment to RFC 3280 in its next revision?
It
> >>>>>>>>>would hopefully just be a minor change.
> >>>>>>>>
> >>>>>>>>This is exactly what I feared.
> >>>>>>>>
> >>>>>>>>We usually end-up with a "minor change" in an extension
without
> >>>>>>>>saying cleary how and when it shall/should be used.
> >>>>>>>>
> >>>>>>>>I still have in mind that:
> >>>>>>>>
> >>>>>>>>1) a certification path must first be constructed,
> >>>>>>>>2) then the revocation checking of that path must be done.
> >>>>>>>>
> >>>>>>>>This means that information about CRL issuers certificates
> >>>>>>>
> >>>locations
> >>>
> >>>
> >>>>>>>may
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>certainly be found in that chain. If not, I would like an
> >>>>>>>
> > example.
> >
> >>>>>>>>Denis
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>It would not change the definition of AIA just add that it
can
> >>>>>>>>
> > be
> >
> >>>>>>>used
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>also as CRL extension and list eventual restrictions and
> >>>>>>>
> > guidance
> >
> >>>for
> >>>
> >>>
> >>>>>>>use
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>with CRLs.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>Stefan Santesson
> >>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>-----Original Message-----
> >>>>>>>>>>From: [email-masked]
> >>>>>>>>>
> >>>>>>>[mailto:[email-masked]]
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>On Behalf Of Santosh Chokhani
> >>>>>>>>>>Sent: den 13 oktober 2004 04:33
> >>>>>>>>>>To: 'pkix'
> >>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>Stefan:
> >>>>>>>>>>
> >>>>>>>>>>In terms of certificate discovery, your proposal for AIA in
> >>>>>>>>>
> > CRL
> >
> >>>is
> >>>
> >>>
> >>>>>>>more
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>robust.  The whole idea of self-issued key rollover
> >>>>>>>>>
> > certificates
> >
> >>>>>>>>>>and
> >>>>>>>>>
> >>>>>>>>then
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>using the new key to issue CRL is fraught with security
> >>>>>>>>>
> >>>problems.
> >>>
> >>>
> >>>>>>>>>>A secure solution would be one where the new key is
certified
> >>>>>>>>>
> > by
> >
> >>>>>>>>>>the parent
> >>>>>>>>>
> >>>>>>>CA.
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>In
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>that case to obtain the new certificate, you could use AIA
in
> >>>>>>>>>
> >>>CRL.
> >>>
> >>>
> >>>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP
> >>>>>>>>>
> > in
> >
> >>>>>>>>>>certificate in question points to the indirect CRL.  You get
> >>>>>>>>>
> >>>that
> >>>
> >>>
> >>>>>>>>>>CRL.  The AIA
> >>>>>>>>>
> >>>>>>>in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>gets you started for the indirect CRL issuer certification
> >>>>>>>>>
> > path
> >
> >>>and
> >>>
> >>>
> >>>>>>>you
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>are
> >>>>>>>>>>in business.
> >>>>>>>>>>
> >>>>>>>>>>-----Original Message-----
> >>>>>>>>>>From: [email-masked]
> >>>>>>>>>
> >>>>>>>[mailto:[email-masked]]
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>On
> >>>>>>>>>>Behalf Of Stefan Santesson
> >>>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
> >>>>>>>>>>To: David A. Cooper
> >>>>>>>>>>Cc: pkix
> >>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>David,
> >>>>>>>>>>
> >>>>>>>>>>Thanks for the clarifications, they make sense.
> >>>>>>>>>>I did misread your pictures.
> >>>>>>>>>>
> >>>>>>>>>>So can we conclude that for a re-keyed CA in accordance with
> >>>>>>>>>
> > RFC
> >
> >>>>>>>3280,
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>either the CRL issuer certificate itself, or the location of
> >>>>>>>>>
> > the
> >
> >>>>>>>>>>CRL issuer certificate, will be clearly identified/available
> >>>>>>>>>
> > for
> >
> >>>>>>>>>>the validating
> >>>>>>>>>
> >>>>>>>>party
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>in some cases, but not in others?
> >>>>>>>>>>
> >>>>>>>>>>Can we also conclude that there is no real discovery
solution
> >>>>>>>>>
> >>>for
> >>>
> >>>
> >>>>>>>>indirect
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>CRLs?
> >>>>>>>>>>
> >>>>>>>>>>Do you then agree then that it could be appropriate to allow
> >>>>>>>>>
> > AIA
> >
> >>>as
> >>>
> >>>
> >>>>>>>a
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>extension to facilitate discovery of CRL signer certificate?
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson
> >>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>
> >>>>>>>>>>________________________________________
> >>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>>>Sent: den 12 oktober 2004 21:14
> >>>>>>>>>>To: Stefan Santesson
> >>>>>>>>>>Cc: pkix
> >>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>Stefan,
> >>>>>>>>>>
> >>>>>>>>>>I believe that you are misinterpreting the figures.  They
> >>>>>>>>>
> > really
> >
> >>>do
> >>>
> >>>
> >>>>>>>>>>represent three different cases, not three different
> >>>>>>>>>
> >>>certification
> >>>
> >>>
> >>>>>>>paths
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>that have been constructed through the same PKI
architecture.
> >>>>>>>>>>
> >>>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
> >>>>>>>>>
> >>>>>>>certificates.
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>The
> >>>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not
> >>>>>>>>>
> > its
> >
> >>>old
> >>>
> >>>
> >>>>>>>key
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>(either the Root CA never issued a certificate to CA 1's old
> >>>>>>>>>
> > key
> >
> >>>or
> >>>
> >>>
> >>>>>>>that
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate has expired).
> >>>>>>>>>>
> >>>>>>>>>>In figure 2, CA 2 has also generated self-issued key
rollover
> >>>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's
> >>>>>>>>>
> > old
> >
> >>>>>>>>>>key, but not its
> >>>>>>>>>
> >>>>>>>new
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>key.
> >>>>>>>>>>
> >>>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested
a
> >>>>>>>>>
> >>>new
> >>>
> >>>
> >>>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
> >>>>>>>>>>self-issued
> >>>>>>>>>
> >>>>>>>key
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>rollover certificates.
> >>>>>>>>>>
> >>>>>>>>>>Of course, another realistic scenario would be one in which
a
> >>>>>>>>>
> > CA
> >
> >>>>>>>>generated
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>self-issued key rollover certificates upon key rollover and
> >>>>>>>>>
> > then
> >
> >>>>>>>>>>had
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>Root CA issue a CA certificate to its new key.  In this
case,
> >>>>>>>>>
> > as
> >
> >>>>>>>>>>you suggest, any of the certification paths from figures 1,
2,
> >>>>>>>>>
> >>>or 3
> >>>
> >>>
> >>>>>>>could be
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>constructed.
> >>>>>>>>>>
> >>>>>>>>>>As for the contents of the AIA extension, here is what I
have
> >>>>>>>>>
> >>>>>>>specified
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>in
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
> >>>>>>>>>
> > Common
> >
> >>>>>>>>Policy":
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>The authorityInfoAccess extension uses URIs for two
purposes.
> >>>>>>>>>
> >>>When
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>id-ad-caIssuers access method is used, the access location 
> >>>>>>>>>>specifies
> >>>>>>>>>
> >>>>>>>>where
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificates issued to the issuer of the certificate may be
> >>>>>>>>>
> >>>found.
> >>>
> >>>
> >>>>>>>If
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>LDAP
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is used, the URI must include the DN of the entry containing
> >>>>>>>>>
> > the
> >
> >>>>>>>>relevant
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificates and specify the directory attribute in which
the
> >>>>>>>>>
> >>>>>>>>certificates
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>are located. If the directory in which the certificates are
> >>>>>>>>>
> >>>stored
> >>>
> >>>
> >>>>>>>>expects
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the "binary" option to be specified, then the attribute type
> >>>>>>>>>
> >>>must
> >>>
> >>>
> >>>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the
URI
> >>>>>>>>>
> >>>must
> >>>
> >>>
> >>>>>>>point to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>a
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>file that has an extension of ".p7c" that contains a
> >>>>>>>>>
> > certs-only
> >
> >>>CMS
> >>>
> >>>
> >>>>>>>>>>message (see RFC 2633). The CMS message should include all 
> >>>>>>>>>>certificates
> >>>>>>>>>
> >>>>>>>issued
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>to
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the issuer of this certificate, but must at least contain
all
> >>>>>>>>>
> >>>>>>>>certificates
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>issued to the issuer of this certificate in which the
subject
> >>>>>>>>>>public
> >>>>>>>>>
> >>>>>>>key
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>may
> >>>>>>>>>>be used to verify the signature on this certificate. ....
For
> >>>>>>>>>
> > a
> >
> >>>>>>>>>>certificate issued by "Good CA", some examples of URIs that
> >>>>>>>>>
> > may
> >
> >>>>>>>>>>appear as the
> >>>>>>>>>
> >>>>>>>access
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>location in an authorityInfoAccess extension when the
> >>>>>>>>>
> >>>>>>>id-ad-caIssuers
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>access
> >>>>>>>>>>method is used are:
> >>>>>>>>>
>
>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cA
C
> >>>>>>
> > e
> >
> >>>r
> >>>
> >>>
> >>>>>>>>>t
> >>>>>>>>>i
> >>>>>>>>
> >>>>>>>fi
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>ca
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>te
> >>>>>>>>>>,crossCertificatePair
> >>>>>>>>>
>
>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACert
i
> >>>>>>
> > f
> >
> >>>i
> >>>
> >>>
> >>>>>>>>>c
> >>>>>>>>>a
> >>>>>>>>
> >>>>>>>te
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>;b
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>in
> >>>>>>>>>>ary,crossCertificatePair;binary
> >>>>>>>>>
>
>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsI
s
> >>>>>>
> > s
> >
> >>>u
> >>>
> >>>
> >>>>>>>>>e
> >>>>>>>>>d
> >>>>>>>>
> >>>>>>>To
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>Go
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>od
> >>>>>>>>>>CA.p7c
> >>>>>>>>>>For both LDAP and HTTP, the URI provides the exact location
> >>>>>>>>>
> >>>where
> >>>
> >>>
> >>>>>>>>>>information is to be located, so there is no requirement for
> >>>>>>>>>
> > the
> >
> >>>>>>>relying
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>party to try to figure out where information is located.
> >>>>>>>>>>
> >>>>>>>>>>The HTTP URI points to a certs-only CMS message that
includes
> >>>>>>>>>
> >>>all
> >>>
> >>>
> >>>>>>>>>>certificates issued to the CA identified in the issuer field
> >>>>>>>>>
> > of
> >
> >>>the
> >>>
> >>>
> >>>>>>>>>>certificate.
> >>>>>>>>>>
> >>>>>>>>>>The LDAP URI points to the cACertificate and
> >>>>>>>>>
> >>>crossCertificatePair
> >>>
> >>>
> >>>>>>>>>>attributes of the directory entry of the CA identified in
the
> >>>>>>>>>>issuer field of
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate.  These two attributes together hold all of the
> >>>>>>>>>
> >>>>>>>certificates
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>issued to the CA:  the cACertificate attribute holds the
CA's
> >>>>>>>>>
> >>>self-
> >>>
> >>>
> >>>>>>>>issued
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificates and the crossCertificatePair attribute holds
the
> >>>>>>>>>>cross-certificates issued to the CA by other CAs.
> >>>>>>>>>>
> >>>>>>>>>>Dave
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson wrote:
> >>>>>>>>>>
> >>>>>>>>>>David,
> >>>>>>>>>>
> >>>>>>>>>>Thanks for these good thoughts and very useful scenarios.
> >>>>>>>>>>
> >>>>>>>>>>I have some comments and questions on this.
> >>>>>>>>>>
> >>>>>>>>>>First of all we can conclude that in some scenarios (figure
1)
> >>>>>>>>>>where
> >>>>>>>>>
> >>>>>>>a
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>self
> >>>>>>>>>>issued certificate is inserted into the path, you are likely
> >>>>>>>>>
> > to
> >
> >>>>>>>>>>find
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>CRL
> >>>>>>>>>>issuer cert in the path. (given that the new CA have a
common
> >>>>>>>>>
> >>>key
> >>>
> >>>
> >>>>>>>and
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate for cert signing and CRL signing).
> >>>>>>>>>>
> >>>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
> >>>>>>>>>
> > describing
> >
> >>>>>>>>different
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>path building strategies. An application that has access
> >>>>>>>>>
> > locally
> >
> >>>to
> >>>
> >>>
> >>>>>>>all
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>chaining options may however still choose path 2 for the
certs
> >>>>>>>>>
> >>>and
> >>>
> >>>
> >>>>>>>path
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>1
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>for the CRL independent of each other (which I think figure
3
> >>>>>>>>>
> >>>tries
> >>>
> >>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>describe)
> >>>>>>>>>>
> >>>>>>>>>>Another comment is the structure of AIA extensions. The use
> >>>>>>>>>
> > I'm
> >
> >>>>>>>familiar
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>with doesn't use AIA to describe a directory entry where it
is
> >>>>>>>>>
> >>>left
> >>>
> >>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>validation application logic to be intelligent enough to
find
> >>>>>>>>>
> >>>>>>>>appropriate
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificate data from the directory. The model I'm familiar
> >>>>>>>>>
> > with
> >
> >>>is
> >>>
> >>>
> >>>>>>>when
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>AIA URL explicitly identifies the exact location of the
> >>>>>>>>>
> >>>appropriate
> >>>
> >>>
> >>>>>>>CA
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate file, relieving the validation software from
> >>>>>>>>>
> > complex
> >
> >>>>>>>>>>information queries. If just location of explicit
certificate
> >>>>>>>>>
> >>>files
> >>>
> >>>
> >>>>>>>>>>are
> >>>>>>>>>
> >>>>>>>identified
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>through AIA, the presence of an AIA may not help finding the
> >>>>>>>>>
> > CRL
> >
> >>>>>>>signer
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>cert
> >>>>>>>>>>if this is different from the CA certificate. This is also
the
> >>>>>>>>>
> >>>>>>>problem
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>with
> >>>>>>>>>>Denis proposal.
> >>>>>>>>>>
> >>>>>>>>>>I think we share the basic conclusion that the ability to
> >>>>>>>>>
> > locate
> >
> >>>>>>>>>>the
> >>>>>>>>>
> >>>>>>>CRL
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>signer certificate directly through the CRL could be very
> >>>>>>>>>
> >>>useful.
> >>>
> >>>
> >>>>>>>>>>At
> >>>>>>>>>
> >>>>>>>>least
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>in the case of indirect CRL but it could also be proven very
> >>>>>>>>>
> >>>useful
> >>>
> >>>
> >>>>>>>in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CA
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>re-keying scenarios.
> >>>>>>>>>>
> >>>>>>>>>>The easiest solution would probably be to allow AIA to be
used
> >>>>>>>>>
> >>>in
> >>>
> >>>
> >>>>>>>its
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
> >>>>>>>>>
> >>>>>>>critical).
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>It
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>would present a very clear and uncomplicated logic to
> >>>>>>>>>
> >>>certificate
> >>>
> >>>
> >>>>>>>>>>validating applications in many cases.
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson
> >>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>
> >>>>>>>>>>________________________________________
> >>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>>>Sent: den 7 oktober 2004 18:35
> >>>>>>>>>>To: Stefan Santesson
> >>>>>>>>>>Cc: pkix
> >>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>Stefan,
> >>>>>>>>>>
> >>>>>>>>>>I think what you are proposing is a good idea.  In most
cases,
> >>>>>>>>>
> >>>path
> >>>
> >>>
> >>>>>>>>>>discovery algorithms assume that both the trust anchor (or
> >>>>>>>>>
> > trust
> >
> >>>>>>>>anchors)
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>and the end entity certificate are provided as input.  In
this
> >>>>>>>>>>case,
> >>>>>>>>>
> >>>>>>>one
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>may
> >>>>>>>>>>need to construct a certification path without a priori
access
> >>>>>>>>>
> >>>to
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>end
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>entity certificate (the one with the subject public key
> >>>>>>>>>
> >>>>>>>corresponding to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>CRL signing key).  Including an AIA extension (or some other
> >>>>>>>>>
> >>>>>>>pointer) in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>CRL would provide the relying party with a simple way to
> >>>>>>>>>
> > obtain
> >
> >>>the
> >>>
> >>>
> >>>>>>>end
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>entity certificate for the CRL signing key's certification
> >>>>>>>>>
> > path.
> >
> >>>On
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>other hand, I believe that a relying party should be able to
> >>>>>>>>>
> >>>>>>>construct
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certification path even without an AIA extension in the CRL,
> >>>>>>>>>
> > so
> >
> >>>>>>>>>>long
> >>>>>>>>>
> >>>>>>>as
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>it
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
> >>>>>>>>>
> >>>basic
> >>>
> >>>
> >>>>>>>>>>scenarios that I expect a relying party may encounter:
> >>>>>>>>>>
> >>>>>>>>>>In each of these scenarios, the CA has performed key
rollover
> >>>>>>>>>
> >>>and
> >>>
> >>>
> >>>>>>>>>>is
> >>>>>>>>>
> >>>>>>>>only
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>signing CRLs with its new key.  The diagrams would look
> >>>>>>>>>
> > similar,
> >
> >>>>>>>>however,
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>if
> >>>>>>>>>>the CA simply choose to use different keys to sign
> >>>>>>>>>
> > certificates
> >
> >>>and
> >>>
> >>>
> >>>>>>>CRLs
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>for
> >>>>>>>>>>some other reason.
> >>>>>>>>>>
> >>>>>>>>>>If the PKI architecture resembled figure 1, then the
> >>>>>>>>>
> >>>certification
> >>>
> >>>
> >>>>>>>path
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>for
> >>>>>>>>>>the CRL signing key would just be a subset of the
> >>>>>>>>>
> > certification
> >
> >>>>>>>>>>path
> >>>>>>>>>
> >>>>>>>for
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>EE certificate, so no addition path discovery would be
needed.
> >>>>>>>>>>
> >>>>>>>>>>If the PKI architecture resembled figure 1, then it would be
> >>>>>>>>>
> >>>>>>>necessary
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>to
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In 
> >>>>>>>>>>building
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certification path to the EE certificate, however, the
relying
> >>>>>>>>>>party
> >>>>>>>>>
> >>>>>>>>will
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>obtain the certificates pointed to by the AIA extension in
the
> >>>>>>>>>
> >>>EE
> >>>
> >>>
> >>>>>>>>>>certificate.  This AIA extension will point to a location 
> >>>>>>>>>>containing
> >>>>>>>>>
> >>>>>>>all
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificates issued to CA 2, which would include both the
> >>>>>>>>>
> >>>>>>>certificate
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>issued
> >>>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
> >>>>>>>>>
> >>>even
> >>>
> >>>
> >>>>>>>though
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>self-issued certificate would not be part of the
certification
> >>>>>>>>>
> >>>path
> >>>
> >>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>EE certificate, it would be downloaded by the relying party
> >>>>>>>>>
> >>>during
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>construction of that certification path.  (Yes, there are
> >>>>>>>>>
> >>>circular
> >>>
> >>>
> >>>>>>>>>>dependency issues in figure 2, but that is another issue.)
> >>>>>>>>>>
> >>>>>>>>>>A similar situation would happen if the PKI architecture
> >>>>>>>>>
> >>>resembled
> >>>
> >>>
> >>>>>>>>figure
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>3.  The AIA extension in the EE certificate would point to a
> >>>>>>>>>
> >>>>>>>location
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>containing certificates issued to CA 3.  When the relying
> >>>>>>>>>
> > party
> >
> >>>>>>>>downloaded
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>these certificates, it would obtain both of the certificates
> >>>>>>>>>
> >>>issued
> >>>
> >>>
> >>>>>>>by
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>Root to CA 3 and so again would have the certificate needed
to
> >>>>>>>>>
> >>>>>>>validate
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>CRL signing key.
> >>>>>>>>>>
> >>>>>>>>>>In the case of an indirect CRL, things may not work as well.
> >>>>>>>>>
> > If
> >
> >>>>>>>>indirect
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2
> >>>>>>>>>
> > or
> >
> >>>3
> >>>
> >>>
> >>>>>>>>>>(replacing "New Key" with a different CA), then the set of 
> >>>>>>>>>>certificates pointed
> >>>>>>>>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>by
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the AIA extension in the EE certificate would not include
the
> >>>>>>>>>
> >>>>>>>>certificate
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>of
> >>>>>>>>>>the CRL signer.  One could find this certificate by building
> >>>>>>>>>
> > in
> >
> >>>the
> >>>
> >>>
> >>>>>>>>>>reverse direction and using the SIA extension, but that may
> >>>>>>>>>
> > not
> >
> >>>be
> >>>
> >>>
> >>>>>>>>>>the most convenient solution.
> >>>>>>>>>>
> >>>>>>>>>>So, when indirect CRLs are being used, it seems that it
would
> >>>>>>>>>
> > be
> >
> >>>>>>>very
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>useful
> >>>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
> >>>>>>>>>
> >>>When
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is not indirect, the need for this pointer does not seem to
be
> >>>>>>>>>
> >>>as
> >>>
> >>>
> >>>>>>>clear,
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>but
> >>>>>>>>>>I can't see any harm in including it.
> >>>>>>>>>>
> >>>>>>>>>>Dave
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson wrote:
> >>>>>>>>>>All,
> >>>>>>>>>>
> >>>>>>>>>>I'm interested in the opinion from members on this list
about
> >>>>>>>>>
> >>>>>>>discovery
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>of
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>CRL signer's certificate in non directory centric
> >>>>>>>>>
> > environments.
> >
> >>>>>>>>>>The problem is the following.
> >>>>>>>>>>
> >>>>>>>>>>The relying party (RP) needs to check validity of a
> >>>>>>>>>
> > certificate
> >
> >>>and
> >>>
> >>>
> >>>>>>>>finds
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>a
> >>>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this
CRL
> >>>>>>>>>>which
> >>>>>>>>>
> >>>>>>>in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>this
> >>>>>>>>>>particular case is either signed by another key of the CA
> >>>>>>>>>
> >>>(re-keyed
> >>>
> >>>
> >>>>>>>CA)
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>or
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>another entity (indirect CRL).
> >>>>>>>>>>
> >>>>>>>>>>In this case the relying party needs to obtain the
certificate
> >>>>>>>>>
> >>>of
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>signer which may NOT be part of the original chain. In a
> >>>>>>>>>
> >>>directory
> >>>
> >>>
> >>>>>>>>centric
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>solution this is retrieved from the directory, but what if
> >>>>>>>>>
> > such
> >
> >>>>>>>>directory
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is
> >>>>>>>>>>not available or accessible.
> >>>>>>>>>>
> >>>>>>>>>>The RP have thus no hint where to find the CRL issuers
> >>>>>>>>>
> >>>certificate
> >>>
> >>>
> >>>>>>>>unless
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the RP already have possession of it by some other means.
> >>>>>>>>>>
> >>>>>>>>>>Is seems that CRLs would need an AIA extension with the
option
> >>>>>>>>>
> >>>to
> >>>
> >>>
> >>>>>>>point
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>to
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the location of the signers certificate in the same manner
as
> >>>>>>>>>
> > is
> >
> >>>>>>>>possible
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>for certificates.
> >>>>>>>>>>
> >>>>>>>>>>Maybe AIA should be defined as both cert and CRL extension
and
> >>>>>>>>>
> >>>not
> >>>
> >>>
> >>>>>>>only
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate extension as today.
> >>>>>>>>>>
> >>>>>>>>>>Thoughts and comments?
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson
> >>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>
> >>>
> >
> >
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Mon, 18 Oct 2004 13:19:27 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Sender: [email-masked]

Thanks Denis,

I now finally understand your SIA alternative.

There are some major problems with it though.

1) How can the RP know what certificate's SIA it would use to find the
CRL signer cert?

You just picked the right certificate in my example since I gave that
information in the example. But the RP don't know that path, it only
knows the path of the EE cert and the name of the CRL issuer!

2) And even if RP knew the path beforehand, finding THE one CRL signer
certificate from a CRL AIA is much more direct and efficient than
finding among all issued certificates from a CA the 1 out of x issued
certificates that is the CRL Issuer cert.

3) Using SIA in the examples requires available directories and
directory enabled clients. How do you solve the problem if either of
these is not available?

Do you seriously suggest that use of SIA is a better and more effective
way to address this problem or are you just pointing out the fact that
there are SOME cases where use of SIA may work in theory?

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 18 oktober 2004 12:28
> To: Stefan Santesson
> Cc: Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> > Denis,
> 
> > If I get you right you mean that one can always successfully use AIA
and
> > SIA in certs to solve discovery of CRL signer cert.
> > Others on this list (me included) don't understand how. It would
> > therefore be useful if you told us.
> >
> > I'll try to explain the problem from my perspective one more time.
> 
> Thanks.
> 
> > Note: "->" in these examples means "issued by"
> 
> Fine.
> 
> > Case 1 - indirect CRL:
> >
> > Cert path is:  EE_Cert -> CA_1 -> Root-CA
> > CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA
> 
> This means Root-CA has nominated CA_1 and a CRL_Issuer_B and that CA_1
has
> chosen to use CRL_Issuer_B for revocation checking for some
certificates.
> 
> > Scenario:
> > Relying party has access to the cert path, discovers the CRL through
CDP
> > in EE_Cert.
> 
> If there is no attack on the objects stored at the CRL DP, the CRL
Issuer
> from that CRL is CRL_Issuer_B. Now the relying party needs to get the
> certificate isued by Root-CA for CRL_Issuer_B. If Root-CA has included
a
> SIA
> extension in his self-signed certificate, then using that extension
allows
> to get the CRL_Issuer_B certificate issued by the Root-CA.
> 
>  > The RP searches the location specified in SIA through
> > id-ad-caRepository in the CA_1 cert but finds nothing useful since
> > revocation is subordinated to another entity (CRL_Issuer_B)
> 
> Correct, but looking in Root-CA allows to find something useful, if
the
> self-signed certificate includes a SIA extension.
> 
> > In this case, the problem could be solved if an AIA in the CRL
indicated
> > the access location of the CRL Issuer cert.
> 
> This would be an *alternative* way.
> 
> > Case 2 - re-keyed CA.
> >
> > Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
> > CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA
> 
> This means that the EE_Cert chain has been created with CA_1(old key)
and
> that the CRL issuer that was originaly used when the EE_Cert was
created
> has
> been changed and a new CRL Issuer got a certificate under CA_1(new
key)
> and
> is now the legitimate CRL issuer for the CRL DP originally mentionned
in
> the
> EE_Cert.
> 
> > The 2 CA_1 certificates above (old key and new key) are issued to
> > different subject keys belonging to the same CA (same name).
> > The cert CA_1(old key) was issued before creation of cert CA_1(new
key)
> > and have thus no reference to CA_1(new key) in its SIA
> >
> > Scenario:
> > RP discovers the CRL for the EE_Cert through the CDP but doesn't
possess
> > the CRL issuer cert. The RP client searches the SIA of the CA_1(old
key)
> > but finds no direct reference to the CRL signer cert. Since the RP
> > client has no access to a directory where the CRL signer cert could
be
> > found through directory lookup, cert validation fails.
> 
> Correct, but looking in Root-CA allows to find something useful, if
the
> self-signed certificate includes a SIA extension.
> 
> > In this scenario the problem could be solved through an AIA in the
CRL.
> 
> This would be an *alternative* way.
> 
> Denis
> 
> >
> >
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >>-----Original Message-----
> >>From: Denis Pinkas [mailto:[email-masked]]
> >>Sent: den 15 oktober 2004 17:30
> >>To: Stefan Santesson
> >>Cc: Santosh Chokhani; pkix
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>Stefan,
> >>
> >>
> >>>Denis,
> >>
> >>>Unfortunately I fail to understand your questions, issues and
> >>
> > requests.
> >
> >>The sentence below demonstrates that you understand the issue.
> >>
> >>
> >>>It would be very useful if you could explain how current mechanisms
> >>
> > can
> >
> >>>be used in a simple and straightforward manner to discover CRL
> >>
> > signer
> >
> >>>certificates in ALL the use cases discussed, mainly re-keyed CA and
> >>>indirect CRLs.
> >>
> >>You are also reversing the question. Using your terms, my question
> >
> > would
> >
> >>be:
> >>
> >>"It would be very useful if you could explain how current mechanisms
> >>CANNOT
> >>be used in a simple and straightforward manner to discover CRL
signer
> >>certificates in ONE or MORE the use cases discussed, mainly re-keyed
> >
> > CA
> >
> >>and
> >>indirect CRLs."
> >>
> >>Denis
> >>
> >>
> >>>Stefan Santesson
> >>>Microsoft Security Center of Excellence (SCOE)
> >>>
> >>>
> >>>
> >>>
> >>>>-----Original Message-----
> >>>>From: [email-masked]
> >>>
> >>>[mailto:[email-masked]]
> >>>
> >>>
> >>>>On Behalf Of Denis Pinkas
> >>>>Sent: den 14 oktober 2004 17:13
> >>>>To: Santosh Chokhani
> >>>>Cc: 'pkix'
> >>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>
> >>>>
> >>>>Santosh,
> >>>>
> >>>>
> >>>>
> >>>>>Denis:
> >>>>
> >>>>>With the three assumptions/constraints I provided, how would you
> >>>>
> >>>locate
> >>>
> >>>
> >>>>the
> >>>>
> >>>>
> >>>>>CRL issuer certificate for the two examples using 3280 extensions
> >>>>
> >>>and
> >>>
> >>>
> >>>>>without putting AIA in the CRL?
> >>>>
> >>>>As far as I understand, the three assumptions are:
> >>>>
> >>>>1.  You are directory challenged; and
> >>>>    [I do not understand what this means]
> >>>>2.  You use AIA to develop the path; and
> >>>>    [It does not matter]
> >>>>3.  You develop the path from the end entity to trust anchor
> >>>>    [Could also be the contrary].
> >>>>
> >>>>If this is not correct, thus please correct.
> >>>>
> >>>>Then my request is: "using ANY OF the current extensions that are
> >>>
> >>>defined
> >>>
> >>>
> >>>>in
> >>>>RFC 3280", which includes SIA.
> >>>>
> >>>>In your explanations  you said :
> >>>>"if you do no deal with SIA et. al"
> >>>>
> >>>>This last assumption is neither part of the three assumptions and
> >>>
> > does
> >
> >>>not
> >>>
> >>>
> >>>>conform to my request.
> >>>>
> >>>>Denis
> >>>>
> >>>>
> >>>>
> >>>>>That is my point.
> >>>>>
> >>>>>-----Original Message-----
> >>>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>>Sent: Thursday, October 14, 2004 6:22 AM
> >>>>>To: Santosh Chokhani
> >>>>>Cc: 'pkix'
> >>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>
> >>>>>
> >>>>>Santosh,
> >>>>>
> >>>>>You misread my request. I said:
> >>>>>
> >>>>>"For the time being, I would like that you provide an example
> >>>>
> > where,
> >
> >>>>when
> >>>>
> >>>>
> >>>>>using the current extensions that are defined in RFC 3280, it
will
> >>>>
> >>>NOT
> >>>
> >>>
> >>>>be
> >>>>
> >>>>
> >>>>>possible to locate a CRL Issuer certificate."
> >>>>>
> >>>>>Maybe I would have needed to be clearer and say :
> >>>>>
> >>>>>"For the time being, I would like that you provide an example
> >>>>
> > where,
> >
> >>>>when
> >>>>
> >>>>
> >>>>>using ANY OF the current extensions that are defined in RFC 3280,
> >>>>
> > it
> >
> >>>>will
> >>>>
> >>>>
> >>>>>NOT be possible to locate a CRL Issuer certificate."
> >>>>>
> >>>>>The examples you provide below do not fulfil this request.
> >>>>>
> >>>>>The assumption is that there exists a path to be tested for
> >>>>
> >>>revocation
> >>>
> >>>
> >>>>>checking (and that it does not matter to know which way it has
been
> >>>>>constructed).
> >>>>>
> >>>>>I am not saying that using AIA in CRL might not be useful, but I
am
> >>>>
> >>>>still
> >>>>
> >>>>
> >>>>>lacking the demonstration that there would be no other way.
> >>>>>
> >>>>>Denis
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>Denis:
> >>>>>>
> >>>>>>Two examples are very simple: one for direct CRL Issuer and one
> >>>>>
> > for
> >
> >>>>>>Indirect CRL Issuer.
> >>>>>>
> >>>>>>Let us make the following assumptions that Stefan was making:
> >>>>>>
> >>>>>>1.  You are directory challenged; and
> >>>>>>2.  You use AIA to develop the path; and
> >>>>>>3.  You develop the path from the end entity to trust anchor.
> >>>>>>
> >>>>>
> >>>>>>From what I know of MS CAPI, these are reasonable
> >>>>>
> >>>>>
> >>>>>>assumptions/constraints.
> >>>>>>
> >>>>>>Now the examples.
> >>>>>>
> >>>>>>Example 1: Direct CRL Issuer
> >>>>>>
> >>>>>>The certificate trust path is:
> >>>>>>Root --> CA1 --> CA 2, old key --> Denis
> >>>>>>
> >>>>>>The CRL trust path is:
> >>>>>>Root --> CA1 --> CA 2, new key --> CRL
> >>>>>>
> >>>>>>(Note: We do not do self-issued certificate since there is no
> >>>>>
> >>>simple,
> >>>
> >>>
> >>>>>>secure way to check their revocation status).
> >>>>>>
> >>>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
> >>>>>>straightforward.  How would you find it if you do no deal with
SIA
> >>>>>
> >>>et.
> >>>
> >>>
> >>>>>>al.
> >>>>>>
> >>>>>>Example 2: Indirect CRL Issuer
> >>>>>>
> >>>>>>The certificate trust path is:
> >>>>>>Root --> CA1 --> CA 2 --> Denis
> >>>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
> >>>>>
> >>>issued
> >>>
> >>>
> >>>>>>by CAI.
> >>>>>>
> >>>>>>The CRL trust path is:
> >>>>>>Root --> CAI --> CRL
> >>>>>>
> >>>>>>Now, with AIA in CRL, finding the CAI certificate is
> >>>>>
> >>>straightforward.
> >>>
> >>>
> >>>>>>How would you find it if you do no deal with SIA et. al.
> >>>>>>
> >>>>>>In addition to the need cited above, please note that the
> >>>>>
> > extension
> >
> >>>>>>semantics does not change, it does not hinder any
> >>>>>
> > interoperability,
> >
> >>>>>>and it does not break any backward compatibility.  So, what if I
> >>>>>>wanted to use this extension in the CRL.  It does no harm to
other
> >>>>>>relying parties.
> >>>>>>
> >>>>>>-----Original Message-----
> >>>>>>From: [email-masked]
> >>>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
> >>>>>>Sent: Wednesday, October 13, 2004 11:01 AM
> >>>>>>To: Stefan Santesson
> >>>>>>Cc: Santosh Chokhani; pkix
> >>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>Stefan,
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>Denis,
> >>>>>>
> >>>>>>
> >>>>>>>I'm not sure what you mean.
> >>>>>>
> >>>>>>
> >>>>>>For the time being, I would like that you provide an example
> >>>>>
> > where,
> >
> >>>>>>when
> >>>>>>using the current extensions that are defined in RFC 3280, it
will
> >>>>>
> >>>NOT
> >>>
> >>>
> >>>>be
> >>>>
> >>>>
> >>>>>>possible to locate a CRL Issuer certificate.
> >>>>>>
> >>>>>>If you are able to provide that example, then it would justify
the
> >>>>>>need for
> >>>>>>an extension at least for one case. Then we can see what that
case
> >>>>>
> >>>is.
> >>>
> >>>
> >>>>>>I am awaiting that example.
> >>>>>>
> >>>>>>Denis
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>I conclude that I agree with Santosh.
> >>>>>>>
> >>>>>>>The debate is still open... Feel free to express your opinion.
> >>>>>>>
> >>>>>>>Stefan Santesson
> >>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>-----Original Message-----
> >>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>>>>>Sent: den 13 oktober 2004 16:34
> >>>>>>>>To: Stefan Santesson
> >>>>>>>>Cc: Santosh Chokhani; pkix
> >>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>
> >>>>>>>>Stefan,
> >>>>>>>>
> >>>>>>>>You are making a conclusion without letting me the time to
> >>>>>>>
> >>>respond. I
> >>>
> >>>
> >>>>>>>>will need more time to look at the pictures (and understand
> >>>>>>>
> > them).
> >
> >>>>>>>>For the time being, I am still reluctant to accept
> >>>>>>>
> >>>>>>>"yet-another-method".
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>We already have too many.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>Santosh,
> >>>>>>>>>
> >>>>>>>>>I conclude that we are in complete and total agreement.
> >>>>>>>>>The question is how to go about this.
> >>>>>>>>
> >>>>>>>>>Could we do this amendment to RFC 3280 in its next revision?
It
> >>>>>>>>>would hopefully just be a minor change.
> >>>>>>>>
> >>>>>>>>This is exactly what I feared.
> >>>>>>>>
> >>>>>>>>We usually end-up with a "minor change" in an extension
without
> >>>>>>>>saying cleary how and when it shall/should be used.
> >>>>>>>>
> >>>>>>>>I still have in mind that:
> >>>>>>>>
> >>>>>>>>1) a certification path must first be constructed,
> >>>>>>>>2) then the revocation checking of that path must be done.
> >>>>>>>>
> >>>>>>>>This means that information about CRL issuers certificates
> >>>>>>>
> >>>locations
> >>>
> >>>
> >>>>>>>may
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>certainly be found in that chain. If not, I would like an
> >>>>>>>
> > example.
> >
> >>>>>>>>Denis
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>It would not change the definition of AIA just add that it
can
> >>>>>>>>
> > be
> >
> >>>>>>>used
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>also as CRL extension and list eventual restrictions and
> >>>>>>>
> > guidance
> >
> >>>for
> >>>
> >>>
> >>>>>>>use
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>with CRLs.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>Stefan Santesson
> >>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>-----Original Message-----
> >>>>>>>>>>From: [email-masked]
> >>>>>>>>>
> >>>>>>>[mailto:[email-masked]]
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>On Behalf Of Santosh Chokhani
> >>>>>>>>>>Sent: den 13 oktober 2004 04:33
> >>>>>>>>>>To: 'pkix'
> >>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>Stefan:
> >>>>>>>>>>
> >>>>>>>>>>In terms of certificate discovery, your proposal for AIA in
> >>>>>>>>>
> > CRL
> >
> >>>is
> >>>
> >>>
> >>>>>>>more
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>robust.  The whole idea of self-issued key rollover
> >>>>>>>>>
> > certificates
> >
> >>>>>>>>>>and
> >>>>>>>>>
> >>>>>>>>then
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>using the new key to issue CRL is fraught with security
> >>>>>>>>>
> >>>problems.
> >>>
> >>>
> >>>>>>>>>>A secure solution would be one where the new key is
certified
> >>>>>>>>>
> > by
> >
> >>>>>>>>>>the parent
> >>>>>>>>>
> >>>>>>>CA.
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>In
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>that case to obtain the new certificate, you could use AIA
in
> >>>>>>>>>
> >>>CRL.
> >>>
> >>>
> >>>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP
> >>>>>>>>>
> > in
> >
> >>>>>>>>>>certificate in question points to the indirect CRL.  You get
> >>>>>>>>>
> >>>that
> >>>
> >>>
> >>>>>>>>>>CRL.  The AIA
> >>>>>>>>>
> >>>>>>>in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>gets you started for the indirect CRL issuer certification
> >>>>>>>>>
> > path
> >
> >>>and
> >>>
> >>>
> >>>>>>>you
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>are
> >>>>>>>>>>in business.
> >>>>>>>>>>
> >>>>>>>>>>-----Original Message-----
> >>>>>>>>>>From: [email-masked]
> >>>>>>>>>
> >>>>>>>[mailto:[email-masked]]
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>On
> >>>>>>>>>>Behalf Of Stefan Santesson
> >>>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
> >>>>>>>>>>To: David A. Cooper
> >>>>>>>>>>Cc: pkix
> >>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>David,
> >>>>>>>>>>
> >>>>>>>>>>Thanks for the clarifications, they make sense.
> >>>>>>>>>>I did misread your pictures.
> >>>>>>>>>>
> >>>>>>>>>>So can we conclude that for a re-keyed CA in accordance with
> >>>>>>>>>
> > RFC
> >
> >>>>>>>3280,
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>either the CRL issuer certificate itself, or the location of
> >>>>>>>>>
> > the
> >
> >>>>>>>>>>CRL issuer certificate, will be clearly identified/available
> >>>>>>>>>
> > for
> >
> >>>>>>>>>>the validating
> >>>>>>>>>
> >>>>>>>>party
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>in some cases, but not in others?
> >>>>>>>>>>
> >>>>>>>>>>Can we also conclude that there is no real discovery
solution
> >>>>>>>>>
> >>>for
> >>>
> >>>
> >>>>>>>>indirect
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>CRLs?
> >>>>>>>>>>
> >>>>>>>>>>Do you then agree then that it could be appropriate to allow
> >>>>>>>>>
> > AIA
> >
> >>>as
> >>>
> >>>
> >>>>>>>a
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>extension to facilitate discovery of CRL signer certificate?
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson
> >>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>
> >>>>>>>>>>________________________________________
> >>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>>>Sent: den 12 oktober 2004 21:14
> >>>>>>>>>>To: Stefan Santesson
> >>>>>>>>>>Cc: pkix
> >>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>Stefan,
> >>>>>>>>>>
> >>>>>>>>>>I believe that you are misinterpreting the figures.  They
> >>>>>>>>>
> > really
> >
> >>>do
> >>>
> >>>
> >>>>>>>>>>represent three different cases, not three different
> >>>>>>>>>
> >>>certification
> >>>
> >>>
> >>>>>>>paths
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>that have been constructed through the same PKI
architecture.
> >>>>>>>>>>
> >>>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
> >>>>>>>>>
> >>>>>>>certificates.
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>The
> >>>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not
> >>>>>>>>>
> > its
> >
> >>>old
> >>>
> >>>
> >>>>>>>key
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>(either the Root CA never issued a certificate to CA 1's old
> >>>>>>>>>
> > key
> >
> >>>or
> >>>
> >>>
> >>>>>>>that
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate has expired).
> >>>>>>>>>>
> >>>>>>>>>>In figure 2, CA 2 has also generated self-issued key
rollover
> >>>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's
> >>>>>>>>>
> > old
> >
> >>>>>>>>>>key, but not its
> >>>>>>>>>
> >>>>>>>new
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>key.
> >>>>>>>>>>
> >>>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested
a
> >>>>>>>>>
> >>>new
> >>>
> >>>
> >>>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated
> >>>>>>>>>>self-issued
> >>>>>>>>>
> >>>>>>>key
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>rollover certificates.
> >>>>>>>>>>
> >>>>>>>>>>Of course, another realistic scenario would be one in which
a
> >>>>>>>>>
> > CA
> >
> >>>>>>>>generated
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>self-issued key rollover certificates upon key rollover and
> >>>>>>>>>
> > then
> >
> >>>>>>>>>>had
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>Root CA issue a CA certificate to its new key.  In this
case,
> >>>>>>>>>
> > as
> >
> >>>>>>>>>>you suggest, any of the certification paths from figures 1,
2,
> >>>>>>>>>
> >>>or 3
> >>>
> >>>
> >>>>>>>could be
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>constructed.
> >>>>>>>>>>
> >>>>>>>>>>As for the contents of the AIA extension, here is what I
have
> >>>>>>>>>
> >>>>>>>specified
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>in
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
> >>>>>>>>>
> > Common
> >
> >>>>>>>>Policy":
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>The authorityInfoAccess extension uses URIs for two
purposes.
> >>>>>>>>>
> >>>When
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>id-ad-caIssuers access method is used, the access location
> >>>>>>>>>>specifies
> >>>>>>>>>
> >>>>>>>>where
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificates issued to the issuer of the certificate may be
> >>>>>>>>>
> >>>found.
> >>>
> >>>
> >>>>>>>If
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>LDAP
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is used, the URI must include the DN of the entry containing
> >>>>>>>>>
> > the
> >
> >>>>>>>>relevant
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificates and specify the directory attribute in which
the
> >>>>>>>>>
> >>>>>>>>certificates
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>are located. If the directory in which the certificates are
> >>>>>>>>>
> >>>stored
> >>>
> >>>
> >>>>>>>>expects
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the "binary" option to be specified, then the attribute type
> >>>>>>>>>
> >>>must
> >>>
> >>>
> >>>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the
URI
> >>>>>>>>>
> >>>must
> >>>
> >>>
> >>>>>>>point to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>a
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>file that has an extension of ".p7c" that contains a
> >>>>>>>>>
> > certs-only
> >
> >>>CMS
> >>>
> >>>
> >>>>>>>>>>message (see RFC 2633). The CMS message should include all
> >>>>>>>>>>certificates
> >>>>>>>>>
> >>>>>>>issued
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>to
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the issuer of this certificate, but must at least contain
all
> >>>>>>>>>
> >>>>>>>>certificates
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>issued to the issuer of this certificate in which the
subject
> >>>>>>>>>>public
> >>>>>>>>>
> >>>>>>>key
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>may
> >>>>>>>>>>be used to verify the signature on this certificate. ....
For
> >>>>>>>>>
> > a
> >
> >>>>>>>>>>certificate issued by "Good CA", some examples of URIs that
> >>>>>>>>>
> > may
> >
> >>>>>>>>>>appear as the
> >>>>>>>>>
> >>>>>>>access
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>location in an authorityInfoAccess extension when the
> >>>>>>>>>
> >>>>>>>id-ad-caIssuers
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>access
> >>>>>>>>>>method is used are:
> >>>>>>>>>
>
>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cA
C
> >>>>>>
> > e
> >
> >>>r
> >>>
> >>>
> >>>>>>>>>t
> >>>>>>>>>i
> >>>>>>>>
> >>>>>>>fi
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>ca
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>te
> >>>>>>>>>>,crossCertificatePair
> >>>>>>>>>
>
>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACert
i
> >>>>>>
> > f
> >
> >>>i
> >>>
> >>>
> >>>>>>>>>c
> >>>>>>>>>a
> >>>>>>>>
> >>>>>>>te
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>;b
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>in
> >>>>>>>>>>ary,crossCertificatePair;binary
> >>>>>>>>>
>
>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsI
s
> >>>>>>
> > s
> >
> >>>u
> >>>
> >>>
> >>>>>>>>>e
> >>>>>>>>>d
> >>>>>>>>
> >>>>>>>To
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>Go
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>od
> >>>>>>>>>>CA.p7c
> >>>>>>>>>>For both LDAP and HTTP, the URI provides the exact location
> >>>>>>>>>
> >>>where
> >>>
> >>>
> >>>>>>>>>>information is to be located, so there is no requirement for
> >>>>>>>>>
> > the
> >
> >>>>>>>relying
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>party to try to figure out where information is located.
> >>>>>>>>>>
> >>>>>>>>>>The HTTP URI points to a certs-only CMS message that
includes
> >>>>>>>>>
> >>>all
> >>>
> >>>
> >>>>>>>>>>certificates issued to the CA identified in the issuer field
> >>>>>>>>>
> > of
> >
> >>>the
> >>>
> >>>
> >>>>>>>>>>certificate.
> >>>>>>>>>>
> >>>>>>>>>>The LDAP URI points to the cACertificate and
> >>>>>>>>>
> >>>crossCertificatePair
> >>>
> >>>
> >>>>>>>>>>attributes of the directory entry of the CA identified in
the
> >>>>>>>>>>issuer field of
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate.  These two attributes together hold all of the
> >>>>>>>>>
> >>>>>>>certificates
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>issued to the CA:  the cACertificate attribute holds the
CA's
> >>>>>>>>>
> >>>self-
> >>>
> >>>
> >>>>>>>>issued
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificates and the crossCertificatePair attribute holds
the
> >>>>>>>>>>cross-certificates issued to the CA by other CAs.
> >>>>>>>>>>
> >>>>>>>>>>Dave
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson wrote:
> >>>>>>>>>>
> >>>>>>>>>>David,
> >>>>>>>>>>
> >>>>>>>>>>Thanks for these good thoughts and very useful scenarios.
> >>>>>>>>>>
> >>>>>>>>>>I have some comments and questions on this.
> >>>>>>>>>>
> >>>>>>>>>>First of all we can conclude that in some scenarios (figure
1)
> >>>>>>>>>>where
> >>>>>>>>>
> >>>>>>>a
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>self
> >>>>>>>>>>issued certificate is inserted into the path, you are likely
> >>>>>>>>>
> > to
> >
> >>>>>>>>>>find
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>CRL
> >>>>>>>>>>issuer cert in the path. (given that the new CA have a
common
> >>>>>>>>>
> >>>key
> >>>
> >>>
> >>>>>>>and
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate for cert signing and CRL signing).
> >>>>>>>>>>
> >>>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
> >>>>>>>>>
> > describing
> >
> >>>>>>>>different
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>path building strategies. An application that has access
> >>>>>>>>>
> > locally
> >
> >>>to
> >>>
> >>>
> >>>>>>>all
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>chaining options may however still choose path 2 for the
certs
> >>>>>>>>>
> >>>and
> >>>
> >>>
> >>>>>>>path
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>1
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>for the CRL independent of each other (which I think figure
3
> >>>>>>>>>
> >>>tries
> >>>
> >>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>describe)
> >>>>>>>>>>
> >>>>>>>>>>Another comment is the structure of AIA extensions. The use
> >>>>>>>>>
> > I'm
> >
> >>>>>>>familiar
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>with doesn't use AIA to describe a directory entry where it
is
> >>>>>>>>>
> >>>left
> >>>
> >>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>validation application logic to be intelligent enough to
find
> >>>>>>>>>
> >>>>>>>>appropriate
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certificate data from the directory. The model I'm familiar
> >>>>>>>>>
> > with
> >
> >>>is
> >>>
> >>>
> >>>>>>>when
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>AIA URL explicitly identifies the exact location of the
> >>>>>>>>>
> >>>appropriate
> >>>
> >>>
> >>>>>>>CA
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate file, relieving the validation software from
> >>>>>>>>>
> > complex
> >
> >>>>>>>>>>information queries. If just location of explicit
certificate
> >>>>>>>>>
> >>>files
> >>>
> >>>
> >>>>>>>>>>are
> >>>>>>>>>
> >>>>>>>identified
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>through AIA, the presence of an AIA may not help finding the
> >>>>>>>>>
> > CRL
> >
> >>>>>>>signer
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>cert
> >>>>>>>>>>if this is different from the CA certificate. This is also
the
> >>>>>>>>>
> >>>>>>>problem
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>with
> >>>>>>>>>>Denis proposal.
> >>>>>>>>>>
> >>>>>>>>>>I think we share the basic conclusion that the ability to
> >>>>>>>>>
> > locate
> >
> >>>>>>>>>>the
> >>>>>>>>>
> >>>>>>>CRL
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>signer certificate directly through the CRL could be very
> >>>>>>>>>
> >>>useful.
> >>>
> >>>
> >>>>>>>>>>At
> >>>>>>>>>
> >>>>>>>>least
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>in the case of indirect CRL but it could also be proven very
> >>>>>>>>>
> >>>useful
> >>>
> >>>
> >>>>>>>in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CA
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>re-keying scenarios.
> >>>>>>>>>>
> >>>>>>>>>>The easiest solution would probably be to allow AIA to be
used
> >>>>>>>>>
> >>>in
> >>>
> >>>
> >>>>>>>its
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
> >>>>>>>>>
> >>>>>>>critical).
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>It
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>would present a very clear and uncomplicated logic to
> >>>>>>>>>
> >>>certificate
> >>>
> >>>
> >>>>>>>>>>validating applications in many cases.
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson
> >>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>
> >>>>>>>>>>________________________________________
> >>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>>>Sent: den 7 oktober 2004 18:35
> >>>>>>>>>>To: Stefan Santesson
> >>>>>>>>>>Cc: pkix
> >>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>>>
> >>>>>>>>>>Stefan,
> >>>>>>>>>>
> >>>>>>>>>>I think what you are proposing is a good idea.  In most
cases,
> >>>>>>>>>
> >>>path
> >>>
> >>>
> >>>>>>>>>>discovery algorithms assume that both the trust anchor (or
> >>>>>>>>>
> > trust
> >
> >>>>>>>>anchors)
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>and the end entity certificate are provided as input.  In
this
> >>>>>>>>>>case,
> >>>>>>>>>
> >>>>>>>one
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>may
> >>>>>>>>>>need to construct a certification path without a priori
access
> >>>>>>>>>
> >>>to
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>end
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>entity certificate (the one with the subject public key
> >>>>>>>>>
> >>>>>>>corresponding to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>CRL signing key).  Including an AIA extension (or some other
> >>>>>>>>>
> >>>>>>>pointer) in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>CRL would provide the relying party with a simple way to
> >>>>>>>>>
> > obtain
> >
> >>>the
> >>>
> >>>
> >>>>>>>end
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>entity certificate for the CRL signing key's certification
> >>>>>>>>>
> > path.
> >
> >>>On
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>other hand, I believe that a relying party should be able to
> >>>>>>>>>
> >>>>>>>construct
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>certification path even without an AIA extension in the CRL,
> >>>>>>>>>
> > so
> >
> >>>>>>>>>>long
> >>>>>>>>>
> >>>>>>>as
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>it
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
> >>>>>>>>>
> >>>basic
> >>>
> >>>
> >>>>>>>>>>scenarios that I expect a relying party may encounter:
> >>>>>>>>>>
> >>>>>>>>>>In each of these scenarios, the CA has performed key
rollover
> >>>>>>>>>
> >>>and
> >>>
> >>>
> >>>>>>>>>>is
> >>>>>>>>>
> >>>>>>>>only
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>signing CRLs with its new key.  The diagrams would look
> >>>>>>>>>
> > similar,
> >
> >>>>>>>>however,
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>if
> >>>>>>>>>>the CA simply choose to use different keys to sign
> >>>>>>>>>
> > certificates
> >
> >>>and
> >>>
> >>>
> >>>>>>>CRLs
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>for
> >>>>>>>>>>some other reason.
> >>>>>>>>>>
> >>>>>>>>>>If the PKI architecture resembled figure 1, then the
> >>>>>>>>>
> >>>certification
> >>>
> >>>
> >>>>>>>path
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>for
> >>>>>>>>>>the CRL signing key would just be a subset of the
> >>>>>>>>>
> > certification
> >
> >>>>>>>>>>path
> >>>>>>>>>
> >>>>>>>for
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>EE certificate, so no addition path discovery would be
needed.
> >>>>>>>>>>
> >>>>>>>>>>If the PKI architecture resembled figure 1, then it would be
> >>>>>>>>>
> >>>>>>>necessary
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>to
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
> >>>>>>>>>>building
> >>>>>>>>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certification path to the EE certificate, however, the
relying
> >>>>>>>>>>party
> >>>>>>>>>
> >>>>>>>>will
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>obtain the certificates pointed to by the AIA extension in
the
> >>>>>>>>>
> >>>EE
> >>>
> >>>
> >>>>>>>>>>certificate.  This AIA extension will point to a location
> >>>>>>>>>>containing
> >>>>>>>>>
> >>>>>>>all
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificates issued to CA 2, which would include both the
> >>>>>>>>>
> >>>>>>>certificate
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>issued
> >>>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
> >>>>>>>>>
> >>>even
> >>>
> >>>
> >>>>>>>though
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>self-issued certificate would not be part of the
certification
> >>>>>>>>>
> >>>path
> >>>
> >>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>EE certificate, it would be downloaded by the relying party
> >>>>>>>>>
> >>>during
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>construction of that certification path.  (Yes, there are
> >>>>>>>>>
> >>>circular
> >>>
> >>>
> >>>>>>>>>>dependency issues in figure 2, but that is another issue.)
> >>>>>>>>>>
> >>>>>>>>>>A similar situation would happen if the PKI architecture
> >>>>>>>>>
> >>>resembled
> >>>
> >>>
> >>>>>>>>figure
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>3.  The AIA extension in the EE certificate would point to a
> >>>>>>>>>
> >>>>>>>location
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>containing certificates issued to CA 3.  When the relying
> >>>>>>>>>
> > party
> >
> >>>>>>>>downloaded
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>these certificates, it would obtain both of the certificates
> >>>>>>>>>
> >>>issued
> >>>
> >>>
> >>>>>>>by
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>the
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>Root to CA 3 and so again would have the certificate needed
to
> >>>>>>>>>
> >>>>>>>validate
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>the
> >>>>>>>>>>CRL signing key.
> >>>>>>>>>>
> >>>>>>>>>>In the case of an indirect CRL, things may not work as well.
> >>>>>>>>>
> > If
> >
> >>>>>>>>indirect
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2
> >>>>>>>>>
> > or
> >
> >>>3
> >>>
> >>>
> >>>>>>>>>>(replacing "New Key" with a different CA), then the set of
> >>>>>>>>>>certificates pointed
> >>>>>>>>>
> >>>>>>>to
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>by
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the AIA extension in the EE certificate would not include
the
> >>>>>>>>>
> >>>>>>>>certificate
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>of
> >>>>>>>>>>the CRL signer.  One could find this certificate by building
> >>>>>>>>>
> > in
> >
> >>>the
> >>>
> >>>
> >>>>>>>>>>reverse direction and using the SIA extension, but that may
> >>>>>>>>>
> > not
> >
> >>>be
> >>>
> >>>
> >>>>>>>>>>the most convenient solution.
> >>>>>>>>>>
> >>>>>>>>>>So, when indirect CRLs are being used, it seems that it
would
> >>>>>>>>>
> > be
> >
> >>>>>>>very
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>useful
> >>>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
> >>>>>>>>>
> >>>When
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is not indirect, the need for this pointer does not seem to
be
> >>>>>>>>>
> >>>as
> >>>
> >>>
> >>>>>>>clear,
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>but
> >>>>>>>>>>I can't see any harm in including it.
> >>>>>>>>>>
> >>>>>>>>>>Dave
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson wrote:
> >>>>>>>>>>All,
> >>>>>>>>>>
> >>>>>>>>>>I'm interested in the opinion from members on this list
about
> >>>>>>>>>
> >>>>>>>discovery
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>of
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>CRL signer's certificate in non directory centric
> >>>>>>>>>
> > environments.
> >
> >>>>>>>>>>The problem is the following.
> >>>>>>>>>>
> >>>>>>>>>>The relying party (RP) needs to check validity of a
> >>>>>>>>>
> > certificate
> >
> >>>and
> >>>
> >>>
> >>>>>>>>finds
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>a
> >>>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this
CRL
> >>>>>>>>>>which
> >>>>>>>>>
> >>>>>>>in
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>this
> >>>>>>>>>>particular case is either signed by another key of the CA
> >>>>>>>>>
> >>>(re-keyed
> >>>
> >>>
> >>>>>>>CA)
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>or
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>another entity (indirect CRL).
> >>>>>>>>>>
> >>>>>>>>>>In this case the relying party needs to obtain the
certificate
> >>>>>>>>>
> >>>of
> >>>
> >>>
> >>>>>>>the
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>CRL
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>signer which may NOT be part of the original chain. In a
> >>>>>>>>>
> >>>directory
> >>>
> >>>
> >>>>>>>>centric
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>solution this is retrieved from the directory, but what if
> >>>>>>>>>
> > such
> >
> >>>>>>>>directory
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>is
> >>>>>>>>>>not available or accessible.
> >>>>>>>>>>
> >>>>>>>>>>The RP have thus no hint where to find the CRL issuers
> >>>>>>>>>
> >>>certificate
> >>>
> >>>
> >>>>>>>>unless
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the RP already have possession of it by some other means.
> >>>>>>>>>>
> >>>>>>>>>>Is seems that CRLs would need an AIA extension with the
option
> >>>>>>>>>
> >>>to
> >>>
> >>>
> >>>>>>>point
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>to
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>the location of the signers certificate in the same manner
as
> >>>>>>>>>
> > is
> >
> >>>>>>>>possible
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>for certificates.
> >>>>>>>>>>
> >>>>>>>>>>Maybe AIA should be defined as both cert and CRL extension
and
> >>>>>>>>>
> >>>not
> >>>
> >>>
> >>>>>>>only
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>>>certificate extension as today.
> >>>>>>>>>>
> >>>>>>>>>>Thoughts and comments?
> >>>>>>>>>>
> >>>>>>>>>>Stefan Santesson
> >>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>
> >>>
> >
> >
> 

Date: Mon, 18 Oct 2004 12:28:09 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: Santosh Chokhani <[email-masked]>, pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

> Denis, 

> If I get you right you mean that one can always successfully use AIA and
> SIA in certs to solve discovery of CRL signer cert.
> Others on this list (me included) don't understand how. It would
> therefore be useful if you told us.
> 
> I'll try to explain the problem from my perspective one more time.

Thanks.

> Note: "->" in these examples means "issued by"

Fine.

> Case 1 - indirect CRL:
> 
> Cert path is:  EE_Cert -> CA_1 -> Root-CA
> CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA

This means Root-CA has nominated CA_1 and a CRL_Issuer_B and that CA_1 has 
chosen to use CRL_Issuer_B for revocation checking for some certificates.

> Scenario: 
> Relying party has access to the cert path, discovers the CRL through CDP
> in EE_Cert. 

If there is no attack on the objects stored at the CRL DP, the CRL Issuer 
from that CRL is CRL_Issuer_B. Now the relying party needs to get the 
certificate isued by Root-CA for CRL_Issuer_B. If Root-CA has included a SIA 
extension in his self-signed certificate, then using that extension allows 
to get the CRL_Issuer_B certificate issued by the Root-CA.

 > The RP searches the location specified in SIA through
> id-ad-caRepository in the CA_1 cert but finds nothing useful since
> revocation is subordinated to another entity (CRL_Issuer_B)

Correct, but looking in Root-CA allows to find something useful, if the 
self-signed certificate includes a SIA extension.

> In this case, the problem could be solved if an AIA in the CRL indicated
> the access location of the CRL Issuer cert.

This would be an *alternative* way.

> Case 2 - re-keyed CA.
> 
> Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
> CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA

This means that the EE_Cert chain has been created with CA_1(old key) and 
that the CRL issuer that was originaly used when the EE_Cert was created has 
been changed and a new CRL Issuer got a certificate under CA_1(new key) and 
is now the legitimate CRL issuer for the CRL DP originally mentionned in the 
EE_Cert.

> The 2 CA_1 certificates above (old key and new key) are issued to
> different subject keys belonging to the same CA (same name).
> The cert CA_1(old key) was issued before creation of cert CA_1(new key)
> and have thus no reference to CA_1(new key) in its SIA
> 
> Scenario:
> RP discovers the CRL for the EE_Cert through the CDP but doesn't possess
> the CRL issuer cert. The RP client searches the SIA of the CA_1(old key)
> but finds no direct reference to the CRL signer cert. Since the RP
> client has no access to a directory where the CRL signer cert could be
> found through directory lookup, cert validation fails.

Correct, but looking in Root-CA allows to find something useful, if the 
self-signed certificate includes a SIA extension.

> In this scenario the problem could be solved through an AIA in the CRL.

This would be an *alternative* way.

Denis

>  
> 
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: den 15 oktober 2004 17:30
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>
>>>Denis,
>>
>>>Unfortunately I fail to understand your questions, issues and
>>
> requests.
> 
>>The sentence below demonstrates that you understand the issue.
>>
>>
>>>It would be very useful if you could explain how current mechanisms
>>
> can
> 
>>>be used in a simple and straightforward manner to discover CRL
>>
> signer
> 
>>>certificates in ALL the use cases discussed, mainly re-keyed CA and
>>>indirect CRLs.
>>
>>You are also reversing the question. Using your terms, my question
> 
> would
> 
>>be:
>>
>>"It would be very useful if you could explain how current mechanisms
>>CANNOT
>>be used in a simple and straightforward manner to discover CRL signer
>>certificates in ONE or MORE the use cases discussed, mainly re-keyed
> 
> CA
> 
>>and
>>indirect CRLs."
>>
>>Denis
>>
>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>
>>>[mailto:[email-masked]]
>>>
>>>
>>>>On Behalf Of Denis Pinkas
>>>>Sent: den 14 oktober 2004 17:13
>>>>To: Santosh Chokhani
>>>>Cc: 'pkix'
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>Santosh,
>>>>
>>>>
>>>>
>>>>>Denis:
>>>>
>>>>>With the three assumptions/constraints I provided, how would you
>>>>
>>>locate
>>>
>>>
>>>>the
>>>>
>>>>
>>>>>CRL issuer certificate for the two examples using 3280 extensions
>>>>
>>>and
>>>
>>>
>>>>>without putting AIA in the CRL?
>>>>
>>>>As far as I understand, the three assumptions are:
>>>>
>>>>1.  You are directory challenged; and
>>>>    [I do not understand what this means]
>>>>2.  You use AIA to develop the path; and
>>>>    [It does not matter]
>>>>3.  You develop the path from the end entity to trust anchor
>>>>    [Could also be the contrary].
>>>>
>>>>If this is not correct, thus please correct.
>>>>
>>>>Then my request is: "using ANY OF the current extensions that are
>>>
>>>defined
>>>
>>>
>>>>in
>>>>RFC 3280", which includes SIA.
>>>>
>>>>In your explanations  you said :
>>>>"if you do no deal with SIA et. al"
>>>>
>>>>This last assumption is neither part of the three assumptions and
>>>
> does
> 
>>>not
>>>
>>>
>>>>conform to my request.
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>>That is my point.
>>>>>
>>>>>-----Original Message-----
>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>Sent: Thursday, October 14, 2004 6:22 AM
>>>>>To: Santosh Chokhani
>>>>>Cc: 'pkix'
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>
>>>>>Santosh,
>>>>>
>>>>>You misread my request. I said:
>>>>>
>>>>>"For the time being, I would like that you provide an example
>>>>
> where,
> 
>>>>when
>>>>
>>>>
>>>>>using the current extensions that are defined in RFC 3280, it will
>>>>
>>>NOT
>>>
>>>
>>>>be
>>>>
>>>>
>>>>>possible to locate a CRL Issuer certificate."
>>>>>
>>>>>Maybe I would have needed to be clearer and say :
>>>>>
>>>>>"For the time being, I would like that you provide an example
>>>>
> where,
> 
>>>>when
>>>>
>>>>
>>>>>using ANY OF the current extensions that are defined in RFC 3280,
>>>>
> it
> 
>>>>will
>>>>
>>>>
>>>>>NOT be possible to locate a CRL Issuer certificate."
>>>>>
>>>>>The examples you provide below do not fulfil this request.
>>>>>
>>>>>The assumption is that there exists a path to be tested for
>>>>
>>>revocation
>>>
>>>
>>>>>checking (and that it does not matter to know which way it has been
>>>>>constructed).
>>>>>
>>>>>I am not saying that using AIA in CRL might not be useful, but I am
>>>>
>>>>still
>>>>
>>>>
>>>>>lacking the demonstration that there would be no other way.
>>>>>
>>>>>Denis
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Denis:
>>>>>>
>>>>>>Two examples are very simple: one for direct CRL Issuer and one
>>>>>
> for
> 
>>>>>>Indirect CRL Issuer.
>>>>>>
>>>>>>Let us make the following assumptions that Stefan was making:
>>>>>>
>>>>>>1.  You are directory challenged; and
>>>>>>2.  You use AIA to develop the path; and
>>>>>>3.  You develop the path from the end entity to trust anchor.
>>>>>>
>>>>>
>>>>>>From what I know of MS CAPI, these are reasonable
>>>>>
>>>>>
>>>>>>assumptions/constraints.
>>>>>>
>>>>>>Now the examples.
>>>>>>
>>>>>>Example 1: Direct CRL Issuer
>>>>>>
>>>>>>The certificate trust path is:
>>>>>>Root --> CA1 --> CA 2, old key --> Denis
>>>>>>
>>>>>>The CRL trust path is:
>>>>>>Root --> CA1 --> CA 2, new key --> CRL
>>>>>>
>>>>>>(Note: We do not do self-issued certificate since there is no
>>>>>
>>>simple,
>>>
>>>
>>>>>>secure way to check their revocation status).
>>>>>>
>>>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>>>>straightforward.  How would you find it if you do no deal with SIA
>>>>>
>>>et.
>>>
>>>
>>>>>>al.
>>>>>>
>>>>>>Example 2: Indirect CRL Issuer
>>>>>>
>>>>>>The certificate trust path is:
>>>>>>Root --> CA1 --> CA 2 --> Denis
>>>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
>>>>>
>>>issued
>>>
>>>
>>>>>>by CAI.
>>>>>>
>>>>>>The CRL trust path is:
>>>>>>Root --> CAI --> CRL
>>>>>>
>>>>>>Now, with AIA in CRL, finding the CAI certificate is
>>>>>
>>>straightforward.
>>>
>>>
>>>>>>How would you find it if you do no deal with SIA et. al.
>>>>>>
>>>>>>In addition to the need cited above, please note that the
>>>>>
> extension
> 
>>>>>>semantics does not change, it does not hinder any
>>>>>
> interoperability,
> 
>>>>>>and it does not break any backward compatibility.  So, what if I
>>>>>>wanted to use this extension in the CRL.  It does no harm to other
>>>>>>relying parties.
>>>>>>
>>>>>>-----Original Message-----
>>>>>>From: [email-masked]
>>>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>>>>To: Stefan Santesson
>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Denis,
>>>>>>
>>>>>>
>>>>>>>I'm not sure what you mean.
>>>>>>
>>>>>>
>>>>>>For the time being, I would like that you provide an example
>>>>>
> where,
> 
>>>>>>when
>>>>>>using the current extensions that are defined in RFC 3280, it will
>>>>>
>>>NOT
>>>
>>>
>>>>be
>>>>
>>>>
>>>>>>possible to locate a CRL Issuer certificate.
>>>>>>
>>>>>>If you are able to provide that example, then it would justify the
>>>>>>need for
>>>>>>an extension at least for one case. Then we can see what that case
>>>>>
>>>is.
>>>
>>>
>>>>>>I am awaiting that example.
>>>>>>
>>>>>>Denis
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>I conclude that I agree with Santosh.
>>>>>>>
>>>>>>>The debate is still open... Feel free to express your opinion.
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>>>Sent: den 13 oktober 2004 16:34
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>You are making a conclusion without letting me the time to
>>>>>>>
>>>respond. I
>>>
>>>
>>>>>>>>will need more time to look at the pictures (and understand
>>>>>>>
> them).
> 
>>>>>>>>For the time being, I am still reluctant to accept
>>>>>>>
>>>>>>>"yet-another-method".
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>We already have too many.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>Santosh,
>>>>>>>>>
>>>>>>>>>I conclude that we are in complete and total agreement.
>>>>>>>>>The question is how to go about this.
>>>>>>>>
>>>>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>>>>>would hopefully just be a minor change.
>>>>>>>>
>>>>>>>>This is exactly what I feared.
>>>>>>>>
>>>>>>>>We usually end-up with a "minor change" in an extension without
>>>>>>>>saying cleary how and when it shall/should be used.
>>>>>>>>
>>>>>>>>I still have in mind that:
>>>>>>>>
>>>>>>>>1) a certification path must first be constructed,
>>>>>>>>2) then the revocation checking of that path must be done.
>>>>>>>>
>>>>>>>>This means that information about CRL issuers certificates
>>>>>>>
>>>locations
>>>
>>>
>>>>>>>may
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>certainly be found in that chain. If not, I would like an
>>>>>>>
> example.
> 
>>>>>>>>Denis
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>It would not change the definition of AIA just add that it can
>>>>>>>>
> be
> 
>>>>>>>used
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>also as CRL extension and list eventual restrictions and
>>>>>>>
> guidance
> 
>>>for
>>>
>>>
>>>>>>>use
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>with CRLs.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>Stefan Santesson
>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>-----Original Message-----
>>>>>>>>>>From: [email-masked]
>>>>>>>>>
>>>>>>>[mailto:[email-masked]]
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>>>>To: 'pkix'
>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>Stefan:
>>>>>>>>>>
>>>>>>>>>>In terms of certificate discovery, your proposal for AIA in
>>>>>>>>>
> CRL
> 
>>>is
>>>
>>>
>>>>>>>more
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>robust.  The whole idea of self-issued key rollover
>>>>>>>>>
> certificates
> 
>>>>>>>>>>and
>>>>>>>>>
>>>>>>>>then
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>using the new key to issue CRL is fraught with security
>>>>>>>>>
>>>problems.
>>>
>>>
>>>>>>>>>>A secure solution would be one where the new key is certified
>>>>>>>>>
> by
> 
>>>>>>>>>>the parent
>>>>>>>>>
>>>>>>>CA.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>In
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>that case to obtain the new certificate, you could use AIA in
>>>>>>>>>
>>>CRL.
>>>
>>>
>>>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP
>>>>>>>>>
> in
> 
>>>>>>>>>>certificate in question points to the indirect CRL.  You get
>>>>>>>>>
>>>that
>>>
>>>
>>>>>>>>>>CRL.  The AIA
>>>>>>>>>
>>>>>>>in
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>CRL
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>gets you started for the indirect CRL issuer certification
>>>>>>>>>
> path
> 
>>>and
>>>
>>>
>>>>>>>you
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>are
>>>>>>>>>>in business.
>>>>>>>>>>
>>>>>>>>>>-----Original Message-----
>>>>>>>>>>From: [email-masked]
>>>>>>>>>
>>>>>>>[mailto:[email-masked]]
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>On
>>>>>>>>>>Behalf Of Stefan Santesson
>>>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>>>>To: David A. Cooper
>>>>>>>>>>Cc: pkix
>>>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>David,
>>>>>>>>>>
>>>>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>>>>I did misread your pictures.
>>>>>>>>>>
>>>>>>>>>>So can we conclude that for a re-keyed CA in accordance with
>>>>>>>>>
> RFC
> 
>>>>>>>3280,
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>either the CRL issuer certificate itself, or the location of
>>>>>>>>>
> the
> 
>>>>>>>>>>CRL issuer certificate, will be clearly identified/available
>>>>>>>>>
> for
> 
>>>>>>>>>>the validating
>>>>>>>>>
>>>>>>>>party
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>in some cases, but not in others?
>>>>>>>>>>
>>>>>>>>>>Can we also conclude that there is no real discovery solution
>>>>>>>>>
>>>for
>>>
>>>
>>>>>>>>indirect
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>CRLs?
>>>>>>>>>>
>>>>>>>>>>Do you then agree then that it could be appropriate to allow
>>>>>>>>>
> AIA
> 
>>>as
>>>
>>>
>>>>>>>a
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>CRL
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>>>>
>>>>>>>>>>Stefan Santesson
>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>
>>>>>>>>>>________________________________________
>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>Cc: pkix
>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>
>>>>>>>>>>Stefan,
>>>>>>>>>>
>>>>>>>>>>I believe that you are misinterpreting the figures.  They
>>>>>>>>>
> really
> 
>>>do
>>>
>>>
>>>>>>>>>>represent three different cases, not three different
>>>>>>>>>
>>>certification
>>>
>>>
>>>>>>>paths
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>that have been constructed through the same PKI architecture.
>>>>>>>>>>
>>>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>>>>
>>>>>>>certificates.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>The
>>>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not
>>>>>>>>>
> its
> 
>>>old
>>>
>>>
>>>>>>>key
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>(either the Root CA never issued a certificate to CA 1's old
>>>>>>>>>
> key
> 
>>>or
>>>
>>>
>>>>>>>that
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>certificate has expired).
>>>>>>>>>>
>>>>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's
>>>>>>>>>
> old
> 
>>>>>>>>>>key, but not its
>>>>>>>>>
>>>>>>>new
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>key.
>>>>>>>>>>
>>>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a
>>>>>>>>>
>>>new
>>>
>>>
>>>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated
>>>>>>>>>>self-issued
>>>>>>>>>
>>>>>>>key
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>rollover certificates.
>>>>>>>>>>
>>>>>>>>>>Of course, another realistic scenario would be one in which a
>>>>>>>>>
> CA
> 
>>>>>>>>generated
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>self-issued key rollover certificates upon key rollover and
>>>>>>>>>
> then
> 
>>>>>>>>>>had
>>>>>>>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>Root CA issue a CA certificate to its new key.  In this case,
>>>>>>>>>
> as
> 
>>>>>>>>>>you suggest, any of the certification paths from figures 1, 2,
>>>>>>>>>
>>>or 3
>>>
>>>
>>>>>>>could be
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>constructed.
>>>>>>>>>>
>>>>>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>>>>>
>>>>>>>specified
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>in
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
>>>>>>>>>
> Common
> 
>>>>>>>>Policy":
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>The authorityInfoAccess extension uses URIs for two purposes.
>>>>>>>>>
>>>When
>>>
>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>>>>specifies
>>>>>>>>>
>>>>>>>>where
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>>>
>>>found.
>>>
>>>
>>>>>>>If
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>LDAP
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>is used, the URI must include the DN of the entry containing
>>>>>>>>>
> the
> 
>>>>>>>>relevant
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>certificates and specify the directory attribute in which the
>>>>>>>>>
>>>>>>>>certificates
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>are located. If the directory in which the certificates are
>>>>>>>>>
>>>stored
>>>
>>>
>>>>>>>>expects
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>the "binary" option to be specified, then the attribute type
>>>>>>>>>
>>>must
>>>
>>>
>>>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI
>>>>>>>>>
>>>must
>>>
>>>
>>>>>>>point to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>a
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>file that has an extension of ".p7c" that contains a
>>>>>>>>>
> certs-only
> 
>>>CMS
>>>
>>>
>>>>>>>>>>message (see RFC 2633). The CMS message should include all
>>>>>>>>>>certificates
>>>>>>>>>
>>>>>>>issued
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>to
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>the issuer of this certificate, but must at least contain all
>>>>>>>>>
>>>>>>>>certificates
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>>>>>public
>>>>>>>>>
>>>>>>>key
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>may
>>>>>>>>>>be used to verify the signature on this certificate. .... For
>>>>>>>>>
> a
> 
>>>>>>>>>>certificate issued by "Good CA", some examples of URIs that
>>>>>>>>>
> may
> 
>>>>>>>>>>appear as the
>>>>>>>>>
>>>>>>>access
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>>>>
>>>>>>>id-ad-caIssuers
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>access
>>>>>>>>>>method is used are:
>>>>>>>>>
>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cAC
>>>>>>
> e
> 
>>>r
>>>
>>>
>>>>>>>>>t
>>>>>>>>>i
>>>>>>>>
>>>>>>>fi
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>ca
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>te
>>>>>>>>>>,crossCertificatePair
>>>>>>>>>
>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
>>>>>>
> f
> 
>>>i
>>>
>>>
>>>>>>>>>c
>>>>>>>>>a
>>>>>>>>
>>>>>>>te
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>;b
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>in
>>>>>>>>>>ary,crossCertificatePair;binary
>>>>>>>>>
>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIs
>>>>>>
> s
> 
>>>u
>>>
>>>
>>>>>>>>>e
>>>>>>>>>d
>>>>>>>>
>>>>>>>To
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>Go
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>od
>>>>>>>>>>CA.p7c
>>>>>>>>>>For both LDAP and HTTP, the URI provides the exact location
>>>>>>>>>
>>>where
>>>
>>>
>>>>>>>>>>information is to be located, so there is no requirement for
>>>>>>>>>
> the
> 
>>>>>>>relying
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>party to try to figure out where information is located.
>>>>>>>>>>
>>>>>>>>>>The HTTP URI points to a certs-only CMS message that includes
>>>>>>>>>
>>>all
>>>
>>>
>>>>>>>>>>certificates issued to the CA identified in the issuer field
>>>>>>>>>
> of
> 
>>>the
>>>
>>>
>>>>>>>>>>certificate.
>>>>>>>>>>
>>>>>>>>>>The LDAP URI points to the cACertificate and
>>>>>>>>>
>>>crossCertificatePair
>>>
>>>
>>>>>>>>>>attributes of the directory entry of the CA identified in the
>>>>>>>>>>issuer field of
>>>>>>>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>>>>
>>>>>>>certificates
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's
>>>>>>>>>
>>>self-
>>>
>>>
>>>>>>>>issued
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>>>>
>>>>>>>>>>Dave
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>
>>>>>>>>>>David,
>>>>>>>>>>
>>>>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>>>>
>>>>>>>>>>I have some comments and questions on this.
>>>>>>>>>>
>>>>>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>>>>>where
>>>>>>>>>
>>>>>>>a
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>self
>>>>>>>>>>issued certificate is inserted into the path, you are likely
>>>>>>>>>
> to
> 
>>>>>>>>>>find
>>>>>>>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>CRL
>>>>>>>>>>issuer cert in the path. (given that the new CA have a common
>>>>>>>>>
>>>key
>>>
>>>
>>>>>>>and
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>>>>
>>>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
>>>>>>>>>
> describing
> 
>>>>>>>>different
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>path building strategies. An application that has access
>>>>>>>>>
> locally
> 
>>>to
>>>
>>>
>>>>>>>all
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>chaining options may however still choose path 2 for the certs
>>>>>>>>>
>>>and
>>>
>>>
>>>>>>>path
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>1
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>for the CRL independent of each other (which I think figure 3
>>>>>>>>>
>>>tries
>>>
>>>
>>>>>>>to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>describe)
>>>>>>>>>>
>>>>>>>>>>Another comment is the structure of AIA extensions. The use
>>>>>>>>>
> I'm
> 
>>>>>>>familiar
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>with doesn't use AIA to describe a directory entry where it is
>>>>>>>>>
>>>left
>>>
>>>
>>>>>>>to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>the
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>validation application logic to be intelligent enough to find
>>>>>>>>>
>>>>>>>>appropriate
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>certificate data from the directory. The model I'm familiar
>>>>>>>>>
> with
> 
>>>is
>>>
>>>
>>>>>>>when
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>AIA URL explicitly identifies the exact location of the
>>>>>>>>>
>>>appropriate
>>>
>>>
>>>>>>>CA
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>certificate file, relieving the validation software from
>>>>>>>>>
> complex
> 
>>>>>>>>>>information queries. If just location of explicit certificate
>>>>>>>>>
>>>files
>>>
>>>
>>>>>>>>>>are
>>>>>>>>>
>>>>>>>identified
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>through AIA, the presence of an AIA may not help finding the
>>>>>>>>>
> CRL
> 
>>>>>>>signer
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>cert
>>>>>>>>>>if this is different from the CA certificate. This is also the
>>>>>>>>>
>>>>>>>problem
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>with
>>>>>>>>>>Denis proposal.
>>>>>>>>>>
>>>>>>>>>>I think we share the basic conclusion that the ability to
>>>>>>>>>
> locate
> 
>>>>>>>>>>the
>>>>>>>>>
>>>>>>>CRL
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>signer certificate directly through the CRL could be very
>>>>>>>>>
>>>useful.
>>>
>>>
>>>>>>>>>>At
>>>>>>>>>
>>>>>>>>least
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>in the case of indirect CRL but it could also be proven very
>>>>>>>>>
>>>useful
>>>
>>>
>>>>>>>in
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>CA
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>re-keying scenarios.
>>>>>>>>>>
>>>>>>>>>>The easiest solution would probably be to allow AIA to be used
>>>>>>>>>
>>>in
>>>
>>>
>>>>>>>its
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>>>>
>>>>>>>critical).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>It
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>would present a very clear and uncomplicated logic to
>>>>>>>>>
>>>certificate
>>>
>>>
>>>>>>>>>>validating applications in many cases.
>>>>>>>>>>
>>>>>>>>>>Stefan Santesson
>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>
>>>>>>>>>>________________________________________
>>>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>>>>To: Stefan Santesson
>>>>>>>>>>Cc: pkix
>>>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>>>
>>>>>>>>>>Stefan,
>>>>>>>>>>
>>>>>>>>>>I think what you are proposing is a good idea.  In most cases,
>>>>>>>>>
>>>path
>>>
>>>
>>>>>>>>>>discovery algorithms assume that both the trust anchor (or
>>>>>>>>>
> trust
> 
>>>>>>>>anchors)
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>>>>>case,
>>>>>>>>>
>>>>>>>one
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>may
>>>>>>>>>>need to construct a certification path without a priori access
>>>>>>>>>
>>>to
>>>
>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>end
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>entity certificate (the one with the subject public key
>>>>>>>>>
>>>>>>>corresponding to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>>>>
>>>>>>>pointer) in
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>CRL would provide the relying party with a simple way to
>>>>>>>>>
> obtain
> 
>>>the
>>>
>>>
>>>>>>>end
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>entity certificate for the CRL signing key's certification
>>>>>>>>>
> path.
> 
>>>On
>>>
>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>>>>
>>>>>>>construct
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>the
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>certification path even without an AIA extension in the CRL,
>>>>>>>>>
> so
> 
>>>>>>>>>>long
>>>>>>>>>
>>>>>>>as
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>it
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
>>>>>>>>>
>>>basic
>>>
>>>
>>>>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>>>>
>>>>>>>>>>In each of these scenarios, the CA has performed key rollover
>>>>>>>>>
>>>and
>>>
>>>
>>>>>>>>>>is
>>>>>>>>>
>>>>>>>>only
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>signing CRLs with its new key.  The diagrams would look
>>>>>>>>>
> similar,
> 
>>>>>>>>however,
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>if
>>>>>>>>>>the CA simply choose to use different keys to sign
>>>>>>>>>
> certificates
> 
>>>and
>>>
>>>
>>>>>>>CRLs
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>for
>>>>>>>>>>some other reason.
>>>>>>>>>>
>>>>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>>>
>>>certification
>>>
>>>
>>>>>>>path
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>for
>>>>>>>>>>the CRL signing key would just be a subset of the
>>>>>>>>>
> certification
> 
>>>>>>>>>>path
>>>>>>>>>
>>>>>>>for
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>>>>>
>>>>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>>>>
>>>>>>>necessary
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>to
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>>>>building
>>>>>>>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>certification path to the EE certificate, however, the relying
>>>>>>>>>>party
>>>>>>>>>
>>>>>>>>will
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>obtain the certificates pointed to by the AIA extension in the
>>>>>>>>>
>>>EE
>>>
>>>
>>>>>>>>>>certificate.  This AIA extension will point to a location
>>>>>>>>>>containing
>>>>>>>>>
>>>>>>>all
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>>>>
>>>>>>>certificate
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>issued
>>>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
>>>>>>>>>
>>>even
>>>
>>>
>>>>>>>though
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>self-issued certificate would not be part of the certification
>>>>>>>>>
>>>path
>>>
>>>
>>>>>>>to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>the
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>>>
>>>during
>>>
>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>>>
>>>circular
>>>
>>>
>>>>>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>>>>>
>>>>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>>>
>>>resembled
>>>
>>>
>>>>>>>>figure
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>>>>
>>>>>>>location
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>containing certificates issued to CA 3.  When the relying
>>>>>>>>>
> party
> 
>>>>>>>>downloaded
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>these certificates, it would obtain both of the certificates
>>>>>>>>>
>>>issued
>>>
>>>
>>>>>>>by
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>the
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>>>>>
>>>>>>>validate
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>the
>>>>>>>>>>CRL signing key.
>>>>>>>>>>
>>>>>>>>>>In the case of an indirect CRL, things may not work as well.
>>>>>>>>>
> If
> 
>>>>>>>>indirect
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2
>>>>>>>>>
> or
> 
>>>3
>>>
>>>
>>>>>>>>>>(replacing "New Key" with a different CA), then the set of
>>>>>>>>>>certificates pointed
>>>>>>>>>
>>>>>>>to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>by
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>the AIA extension in the EE certificate would not include the
>>>>>>>>>
>>>>>>>>certificate
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>of
>>>>>>>>>>the CRL signer.  One could find this certificate by building
>>>>>>>>>
> in
> 
>>>the
>>>
>>>
>>>>>>>>>>reverse direction and using the SIA extension, but that may
>>>>>>>>>
> not
> 
>>>be
>>>
>>>
>>>>>>>>>>the most convenient solution.
>>>>>>>>>>
>>>>>>>>>>So, when indirect CRLs are being used, it seems that it would
>>>>>>>>>
> be
> 
>>>>>>>very
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>useful
>>>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>>>
>>>When
>>>
>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>CRL
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>is not indirect, the need for this pointer does not seem to be
>>>>>>>>>
>>>as
>>>
>>>
>>>>>>>clear,
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>but
>>>>>>>>>>I can't see any harm in including it.
>>>>>>>>>>
>>>>>>>>>>Dave
>>>>>>>>>>
>>>>>>>>>>Stefan Santesson wrote:
>>>>>>>>>>All,
>>>>>>>>>>
>>>>>>>>>>I'm interested in the opinion from members on this list about
>>>>>>>>>
>>>>>>>discovery
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>of
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>CRL signer's certificate in non directory centric
>>>>>>>>>
> environments.
> 
>>>>>>>>>>The problem is the following.
>>>>>>>>>>
>>>>>>>>>>The relying party (RP) needs to check validity of a
>>>>>>>>>
> certificate
> 
>>>and
>>>
>>>
>>>>>>>>finds
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>a
>>>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>>>>>which
>>>>>>>>>
>>>>>>>in
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>this
>>>>>>>>>>particular case is either signed by another key of the CA
>>>>>>>>>
>>>(re-keyed
>>>
>>>
>>>>>>>CA)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>or
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>another entity (indirect CRL).
>>>>>>>>>>
>>>>>>>>>>In this case the relying party needs to obtain the certificate
>>>>>>>>>
>>>of
>>>
>>>
>>>>>>>the
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>CRL
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>>>
>>>directory
>>>
>>>
>>>>>>>>centric
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>solution this is retrieved from the directory, but what if
>>>>>>>>>
> such
> 
>>>>>>>>directory
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>is
>>>>>>>>>>not available or accessible.
>>>>>>>>>>
>>>>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>>>
>>>certificate
>>>
>>>
>>>>>>>>unless
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>the RP already have possession of it by some other means.
>>>>>>>>>>
>>>>>>>>>>Is seems that CRLs would need an AIA extension with the option
>>>>>>>>>
>>>to
>>>
>>>
>>>>>>>point
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>to
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>the location of the signers certificate in the same manner as
>>>>>>>>>
> is
> 
>>>>>>>>possible
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>>for certificates.
>>>>>>>>>>
>>>>>>>>>>Maybe AIA should be defined as both cert and CRL extension and
>>>>>>>>>
>>>not
>>>
>>>
>>>>>>>only
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>>>certificate extension as today.
>>>>>>>>>>
>>>>>>>>>>Thoughts and comments?
>>>>>>>>>>
>>>>>>>>>>Stefan Santesson
>>>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>
>>>
> 
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Mon, 18 Oct 2004 09:49:45 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Sender: [email-masked]

Denis, 

If I get you right you mean that one can always successfully use AIA and
SIA in certs to solve discovery of CRL signer cert.
Others on this list (me included) don't understand how. It would
therefore be useful if you told us.

I'll try to explain the problem from my perspective one more time.
Note: "->" in these examples means "issued by"

Case 1 - indirect CRL:

Cert path is:  EE_Cert -> CA_1 -> Root-CA
CRL path for EE_Cert is:  CRL -> CRL_Issuer_B -> Root-CA

Scenario: 
Relying party has access to the cert path, discovers the CRL through CDP
in EE_Cert. The RP searches the location specified in SIA through
id-ad-caRepository in the CA_1 cert but finds nothing useful since
revocation is subordinated to another entity (CRL_Issuer_B)

In this case, the problem could be solved if an AIA in the CRL indicated
the access location of the CRL Issuer cert.

Case 2 - re-keyed CA.

Cert path is:  EE_Cert -> CA_1(old key) -> Root-CA
CRL path for EE_Cert is:  CRL -> CA_1(new key) -> Root-CA

The 2 CA_1 certificates above (old key and new key) are issued to
different subject keys belonging to the same CA (same name).
The cert CA_1(old key) was issued before creation of cert CA_1(new key)
and have thus no reference to CA_1(new key) in its SIA

Scenario:
RP discovers the CRL for the EE_Cert through the CDP but doesn't possess
the CRL issuer cert. The RP client searches the SIA of the CA_1(old key)
but finds no direct reference to the CRL signer cert. Since the RP
client has no access to a directory where the CRL signer cert could be
found through directory lookup, cert validation fails.

In this scenario the problem could be solved through an AIA in the CRL.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)
 
> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 15 oktober 2004 17:30
> To: Stefan Santesson
> Cc: Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> > Denis,
> 
> > Unfortunately I fail to understand your questions, issues and
requests.
> 
> The sentence below demonstrates that you understand the issue.
> 
> > It would be very useful if you could explain how current mechanisms
can
> > be used in a simple and straightforward manner to discover CRL
signer
> > certificates in ALL the use cases discussed, mainly re-keyed CA and
> > indirect CRLs.
> 
> You are also reversing the question. Using your terms, my question
would
> be:
> 
> "It would be very useful if you could explain how current mechanisms
> CANNOT
> be used in a simple and straightforward manner to discover CRL signer
> certificates in ONE or MORE the use cases discussed, mainly re-keyed
CA
> and
> indirect CRLs."
> 
> Denis
> 
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >
> >>-----Original Message-----
> >>From: [email-masked]
> >
> > [mailto:[email-masked]]
> >
> >>On Behalf Of Denis Pinkas
> >>Sent: den 14 oktober 2004 17:13
> >>To: Santosh Chokhani
> >>Cc: 'pkix'
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>
> >>Santosh,
> >>
> >>
> >>>Denis:
> >>
> >>>With the three assumptions/constraints I provided, how would you
> >>
> > locate
> >
> >>the
> >>
> >>>CRL issuer certificate for the two examples using 3280 extensions
> >>
> > and
> >
> >>>without putting AIA in the CRL?
> >>
> >>As far as I understand, the three assumptions are:
> >>
> >>1.  You are directory challenged; and
> >>     [I do not understand what this means]
> >>2.  You use AIA to develop the path; and
> >>     [It does not matter]
> >>3.  You develop the path from the end entity to trust anchor
> >>     [Could also be the contrary].
> >>
> >>If this is not correct, thus please correct.
> >>
> >>Then my request is: "using ANY OF the current extensions that are
> >
> > defined
> >
> >>in
> >>RFC 3280", which includes SIA.
> >>
> >>In your explanations  you said :
> >>"if you do no deal with SIA et. al"
> >>
> >>This last assumption is neither part of the three assumptions and
does
> >
> > not
> >
> >>conform to my request.
> >>
> >>Denis
> >>
> >>
> >>>That is my point.
> >>>
> >>>-----Original Message-----
> >>>From: Denis Pinkas [mailto:[email-masked]]
> >>>Sent: Thursday, October 14, 2004 6:22 AM
> >>>To: Santosh Chokhani
> >>>Cc: 'pkix'
> >>>Subject: Re: Signer certificate discovery for CRLs
> >>>
> >>>
> >>>Santosh,
> >>>
> >>>You misread my request. I said:
> >>>
> >>>"For the time being, I would like that you provide an example
where,
> >>
> >>when
> >>
> >>>using the current extensions that are defined in RFC 3280, it will
> >>
> > NOT
> >
> >>be
> >>
> >>>possible to locate a CRL Issuer certificate."
> >>>
> >>>Maybe I would have needed to be clearer and say :
> >>>
> >>>"For the time being, I would like that you provide an example
where,
> >>
> >>when
> >>
> >>>using ANY OF the current extensions that are defined in RFC 3280,
it
> >>
> >>will
> >>
> >>>NOT be possible to locate a CRL Issuer certificate."
> >>>
> >>>The examples you provide below do not fulfil this request.
> >>>
> >>>The assumption is that there exists a path to be tested for
> >>
> > revocation
> >
> >>>checking (and that it does not matter to know which way it has been
> >>>constructed).
> >>>
> >>>I am not saying that using AIA in CRL might not be useful, but I am
> >>
> >>still
> >>
> >>>lacking the demonstration that there would be no other way.
> >>>
> >>>Denis
> >>>
> >>>
> >>>
> >>>
> >>>>Denis:
> >>>>
> >>>>Two examples are very simple: one for direct CRL Issuer and one
for
> >>>>Indirect CRL Issuer.
> >>>>
> >>>>Let us make the following assumptions that Stefan was making:
> >>>>
> >>>>1.  You are directory challenged; and
> >>>>2.  You use AIA to develop the path; and
> >>>>3.  You develop the path from the end entity to trust anchor.
> >>>>
> >>>
> >>>>From what I know of MS CAPI, these are reasonable
> >>>
> >>>>assumptions/constraints.
> >>>>
> >>>>Now the examples.
> >>>>
> >>>>Example 1: Direct CRL Issuer
> >>>>
> >>>>The certificate trust path is:
> >>>>Root --> CA1 --> CA 2, old key --> Denis
> >>>>
> >>>>The CRL trust path is:
> >>>>Root --> CA1 --> CA 2, new key --> CRL
> >>>>
> >>>>(Note: We do not do self-issued certificate since there is no
> >>>
> > simple,
> >
> >>>>secure way to check their revocation status).
> >>>>
> >>>>Now, with AIA in CRL, finding the CA2, new key certificate is
> >>>>straightforward.  How would you find it if you do no deal with SIA
> >>>
> > et.
> >
> >>>>al.
> >>>>
> >>>>Example 2: Indirect CRL Issuer
> >>>>
> >>>>The certificate trust path is:
> >>>>Root --> CA1 --> CA 2 --> Denis
> >>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
> >>>
> > issued
> >
> >>>>by CAI.
> >>>>
> >>>>The CRL trust path is:
> >>>>Root --> CAI --> CRL
> >>>>
> >>>>Now, with AIA in CRL, finding the CAI certificate is
> >>>
> > straightforward.
> >
> >>>>How would you find it if you do no deal with SIA et. al.
> >>>>
> >>>>In addition to the need cited above, please note that the
extension
> >>>>semantics does not change, it does not hinder any
interoperability,
> >>>>and it does not break any backward compatibility.  So, what if I
> >>>>wanted to use this extension in the CRL.  It does no harm to other
> >>>>relying parties.
> >>>>
> >>>>-----Original Message-----
> >>>>From: [email-masked]
> >>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
> >>>>Sent: Wednesday, October 13, 2004 11:01 AM
> >>>>To: Stefan Santesson
> >>>>Cc: Santosh Chokhani; pkix
> >>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>
> >>>>
> >>>>
> >>>>Stefan,
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>Denis,
> >>>>
> >>>>
> >>>>>I'm not sure what you mean.
> >>>>
> >>>>
> >>>>For the time being, I would like that you provide an example
where,
> >>>>when
> >>>>using the current extensions that are defined in RFC 3280, it will
> >>>
> > NOT
> >
> >>be
> >>
> >>>>possible to locate a CRL Issuer certificate.
> >>>>
> >>>>If you are able to provide that example, then it would justify the
> >>>>need for
> >>>>an extension at least for one case. Then we can see what that case
> >>>
> > is.
> >
> >>>>I am awaiting that example.
> >>>>
> >>>>Denis
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>I conclude that I agree with Santosh.
> >>>>>
> >>>>>The debate is still open... Feel free to express your opinion.
> >>>>>
> >>>>>Stefan Santesson
> >>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>-----Original Message-----
> >>>>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>>>Sent: den 13 oktober 2004 16:34
> >>>>>>To: Stefan Santesson
> >>>>>>Cc: Santosh Chokhani; pkix
> >>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>Stefan,
> >>>>>>
> >>>>>>You are making a conclusion without letting me the time to
> >>>>>
> > respond. I
> >
> >>>>>>will need more time to look at the pictures (and understand
them).
> >>>>>>
> >>>>>>For the time being, I am still reluctant to accept
> >>>>>
> >>>>>"yet-another-method".
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>We already have too many.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>Santosh,
> >>>>>>>
> >>>>>>>I conclude that we are in complete and total agreement.
> >>>>>>>The question is how to go about this.
> >>>>>>
> >>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
> >>>>>>>would hopefully just be a minor change.
> >>>>>>
> >>>>>>This is exactly what I feared.
> >>>>>>
> >>>>>>We usually end-up with a "minor change" in an extension without
> >>>>>>saying cleary how and when it shall/should be used.
> >>>>>>
> >>>>>>I still have in mind that:
> >>>>>>
> >>>>>>1) a certification path must first be constructed,
> >>>>>>2) then the revocation checking of that path must be done.
> >>>>>>
> >>>>>>This means that information about CRL issuers certificates
> >>>>>
> > locations
> >
> >>>>>may
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>certainly be found in that chain. If not, I would like an
example.
> >>>>>>
> >>>>>>Denis
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>It would not change the definition of AIA just add that it can
be
> >>>>>>
> >>>>>used
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>also as CRL extension and list eventual restrictions and
guidance
> >>>>>
> > for
> >
> >>>>>use
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>with CRLs.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>Stefan Santesson
> >>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>-----Original Message-----
> >>>>>>>>From: [email-masked]
> >>>>>>>
> >>>>>[mailto:[email-masked]]
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>On Behalf Of Santosh Chokhani
> >>>>>>>>Sent: den 13 oktober 2004 04:33
> >>>>>>>>To: 'pkix'
> >>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>Stefan:
> >>>>>>>>
> >>>>>>>>In terms of certificate discovery, your proposal for AIA in
CRL
> >>>>>>>
> > is
> >
> >>>>>more
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>robust.  The whole idea of self-issued key rollover
certificates
> >>>>>>>>and
> >>>>>>>
> >>>>>>then
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>using the new key to issue CRL is fraught with security
> >>>>>>>
> > problems.
> >
> >>>>>>>>A secure solution would be one where the new key is certified
by
> >>>>>>>>the parent
> >>>>>>>
> >>>>>CA.
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>In
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>that case to obtain the new certificate, you could use AIA in
> >>>>>>>
> > CRL.
> >
> >>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP
in
> >>>>>>>>certificate in question points to the indirect CRL.  You get
> >>>>>>>
> > that
> >
> >>>>>>>>CRL.  The AIA
> >>>>>>>
> >>>>>in
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>CRL
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>gets you started for the indirect CRL issuer certification
path
> >>>>>>>
> > and
> >
> >>>>>you
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>are
> >>>>>>>>in business.
> >>>>>>>>
> >>>>>>>>-----Original Message-----
> >>>>>>>>From: [email-masked]
> >>>>>>>
> >>>>>[mailto:[email-masked]]
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>On
> >>>>>>>>Behalf Of Stefan Santesson
> >>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
> >>>>>>>>To: David A. Cooper
> >>>>>>>>Cc: pkix
> >>>>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>David,
> >>>>>>>>
> >>>>>>>>Thanks for the clarifications, they make sense.
> >>>>>>>>I did misread your pictures.
> >>>>>>>>
> >>>>>>>>So can we conclude that for a re-keyed CA in accordance with
RFC
> >>>>>>>
> >>>>>3280,
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>either the CRL issuer certificate itself, or the location of
the
> >>>>>>>>CRL issuer certificate, will be clearly identified/available
for
> >>>>>>>>the validating
> >>>>>>>
> >>>>>>party
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>in some cases, but not in others?
> >>>>>>>>
> >>>>>>>>Can we also conclude that there is no real discovery solution
> >>>>>>>
> > for
> >
> >>>>>>indirect
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>CRLs?
> >>>>>>>>
> >>>>>>>>Do you then agree then that it could be appropriate to allow
AIA
> >>>>>>>
> > as
> >
> >>>>>a
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>CRL
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>extension to facilitate discovery of CRL signer certificate?
> >>>>>>>>
> >>>>>>>>Stefan Santesson
> >>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>
> >>>>>>>>________________________________________
> >>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>Sent: den 12 oktober 2004 21:14
> >>>>>>>>To: Stefan Santesson
> >>>>>>>>Cc: pkix
> >>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>
> >>>>>>>>Stefan,
> >>>>>>>>
> >>>>>>>>I believe that you are misinterpreting the figures.  They
really
> >>>>>>>
> > do
> >
> >>>>>>>>represent three different cases, not three different
> >>>>>>>
> > certification
> >
> >>>>>paths
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>that have been constructed through the same PKI architecture.
> >>>>>>>>
> >>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
> >>>>>>>
> >>>>>certificates.
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>The
> >>>>>>>>Root CA has issued a certificate to CA 1's new key, but not
its
> >>>>>>>
> > old
> >
> >>>>>key
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>(either the Root CA never issued a certificate to CA 1's old
key
> >>>>>>>
> > or
> >
> >>>>>that
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>certificate has expired).
> >>>>>>>>
> >>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
> >>>>>>>>certificates. The Root CA has issued a certificate to CA 2's
old
> >>>>>>>>key, but not its
> >>>>>>>
> >>>>>new
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>key.
> >>>>>>>>
> >>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a
> >>>>>>>
> > new
> >
> >>>>>>>>CA certificate from the Root CA.  CA 3 did not generated
> >>>>>>>>self-issued
> >>>>>>>
> >>>>>key
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>rollover certificates.
> >>>>>>>>
> >>>>>>>>Of course, another realistic scenario would be one in which a
CA
> >>>>>>>
> >>>>>>generated
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>self-issued key rollover certificates upon key rollover and
then
> >>>>>>>>had
> >>>>>>>
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>Root CA issue a CA certificate to its new key.  In this case,
as
> >>>>>>>>you suggest, any of the certification paths from figures 1, 2,
> >>>>>>>
> > or 3
> >
> >>>>>could be
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>constructed.
> >>>>>>>>
> >>>>>>>>As for the contents of the AIA extension, here is what I have
> >>>>>>>
> >>>>>specified
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>in
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the
Common
> >>>>>>>
> >>>>>>Policy":
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>The authorityInfoAccess extension uses URIs for two purposes.
> >>>>>>>
> > When
> >
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>id-ad-caIssuers access method is used, the access location
> >>>>>>>>specifies
> >>>>>>>
> >>>>>>where
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>certificates issued to the issuer of the certificate may be
> >>>>>>>
> > found.
> >
> >>>>>If
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>LDAP
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>is used, the URI must include the DN of the entry containing
the
> >>>>>>>
> >>>>>>relevant
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>certificates and specify the directory attribute in which the
> >>>>>>>
> >>>>>>certificates
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>are located. If the directory in which the certificates are
> >>>>>>>
> > stored
> >
> >>>>>>expects
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>the "binary" option to be specified, then the attribute type
> >>>>>>>
> > must
> >
> >>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI
> >>>>>>>
> > must
> >
> >>>>>point to
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>a
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>file that has an extension of ".p7c" that contains a
certs-only
> >>>>>>>
> > CMS
> >
> >>>>>>>>message (see RFC 2633). The CMS message should include all
> >>>>>>>>certificates
> >>>>>>>
> >>>>>issued
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>to
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>the issuer of this certificate, but must at least contain all
> >>>>>>>
> >>>>>>certificates
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>issued to the issuer of this certificate in which the subject
> >>>>>>>>public
> >>>>>>>
> >>>>>key
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>may
> >>>>>>>>be used to verify the signature on this certificate. .... For
a
> >>>>>>>>certificate issued by "Good CA", some examples of URIs that
may
> >>>>>>>>appear as the
> >>>>>>>
> >>>>>access
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>location in an authorityInfoAccess extension when the
> >>>>>>>
> >>>>>id-ad-caIssuers
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>access
> >>>>>>>>method is used are:
> >>>>>>>
>
>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cAC
e
> >>>>>
> > r
> >
> >>>>>>>t
> >>>>>>>i
> >>>>>>
> >>>>>fi
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>ca
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>te
> >>>>>>>>,crossCertificatePair
> >>>>>>>
>
>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
f
> >>>>>
> > i
> >
> >>>>>>>c
> >>>>>>>a
> >>>>>>
> >>>>>te
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>;b
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>in
> >>>>>>>>ary,crossCertificatePair;binary
> >>>>>>>
>
>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIs
s
> >>>>>
> > u
> >
> >>>>>>>e
> >>>>>>>d
> >>>>>>
> >>>>>To
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>Go
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>od
> >>>>>>>>CA.p7c
> >>>>>>>>For both LDAP and HTTP, the URI provides the exact location
> >>>>>>>
> > where
> >
> >>>>>>>>information is to be located, so there is no requirement for
the
> >>>>>>>
> >>>>>relying
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>party to try to figure out where information is located.
> >>>>>>>>
> >>>>>>>>The HTTP URI points to a certs-only CMS message that includes
> >>>>>>>
> > all
> >
> >>>>>>>>certificates issued to the CA identified in the issuer field
of
> >>>>>>>
> > the
> >
> >>>>>>>>certificate.
> >>>>>>>>
> >>>>>>>>The LDAP URI points to the cACertificate and
> >>>>>>>
> > crossCertificatePair
> >
> >>>>>>>>attributes of the directory entry of the CA identified in the
> >>>>>>>>issuer field of
> >>>>>>>
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>certificate.  These two attributes together hold all of the
> >>>>>>>
> >>>>>certificates
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's
> >>>>>>>
> > self-
> >
> >>>>>>issued
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>certificates and the crossCertificatePair attribute holds the
> >>>>>>>>cross-certificates issued to the CA by other CAs.
> >>>>>>>>
> >>>>>>>>Dave
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>Stefan Santesson wrote:
> >>>>>>>>
> >>>>>>>>David,
> >>>>>>>>
> >>>>>>>>Thanks for these good thoughts and very useful scenarios.
> >>>>>>>>
> >>>>>>>>I have some comments and questions on this.
> >>>>>>>>
> >>>>>>>>First of all we can conclude that in some scenarios (figure 1)
> >>>>>>>>where
> >>>>>>>
> >>>>>a
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>self
> >>>>>>>>issued certificate is inserted into the path, you are likely
to
> >>>>>>>>find
> >>>>>>>
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>CRL
> >>>>>>>>issuer cert in the path. (given that the new CA have a common
> >>>>>>>
> > key
> >
> >>>>>and
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>certificate for cert signing and CRL signing).
> >>>>>>>>
> >>>>>>>>Figure 1, 2 and 3 describe the same case. It is just
describing
> >>>>>>>
> >>>>>>different
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>path building strategies. An application that has access
locally
> >>>>>>>
> > to
> >
> >>>>>all
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>chaining options may however still choose path 2 for the certs
> >>>>>>>
> > and
> >
> >>>>>path
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>1
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>for the CRL independent of each other (which I think figure 3
> >>>>>>>
> > tries
> >
> >>>>>to
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>describe)
> >>>>>>>>
> >>>>>>>>Another comment is the structure of AIA extensions. The use
I'm
> >>>>>>>
> >>>>>familiar
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>with doesn't use AIA to describe a directory entry where it is
> >>>>>>>
> > left
> >
> >>>>>to
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>the
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>validation application logic to be intelligent enough to find
> >>>>>>>
> >>>>>>appropriate
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>certificate data from the directory. The model I'm familiar
with
> >>>>>>>
> > is
> >
> >>>>>when
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>the
> >>>>>>>>AIA URL explicitly identifies the exact location of the
> >>>>>>>
> > appropriate
> >
> >>>>>CA
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>certificate file, relieving the validation software from
complex
> >>>>>>>>information queries. If just location of explicit certificate
> >>>>>>>
> > files
> >
> >>>>>>>>are
> >>>>>>>
> >>>>>identified
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>through AIA, the presence of an AIA may not help finding the
CRL
> >>>>>>>
> >>>>>signer
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>cert
> >>>>>>>>if this is different from the CA certificate. This is also the
> >>>>>>>
> >>>>>problem
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>with
> >>>>>>>>Denis proposal.
> >>>>>>>>
> >>>>>>>>I think we share the basic conclusion that the ability to
locate
> >>>>>>>>the
> >>>>>>>
> >>>>>CRL
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>signer certificate directly through the CRL could be very
> >>>>>>>
> > useful.
> >
> >>>>>>>>At
> >>>>>>>
> >>>>>>least
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>in the case of indirect CRL but it could also be proven very
> >>>>>>>
> > useful
> >
> >>>>>in
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>CA
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>re-keying scenarios.
> >>>>>>>>
> >>>>>>>>The easiest solution would probably be to allow AIA to be used
> >>>>>>>
> > in
> >
> >>>>>its
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>current shape and structure as a CRL extension (MUST NOT be
> >>>>>>>
> >>>>>critical).
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>It
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>would present a very clear and uncomplicated logic to
> >>>>>>>
> > certificate
> >
> >>>>>>>>validating applications in many cases.
> >>>>>>>>
> >>>>>>>>Stefan Santesson
> >>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>
> >>>>>>>>________________________________________
> >>>>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>>>Sent: den 7 oktober 2004 18:35
> >>>>>>>>To: Stefan Santesson
> >>>>>>>>Cc: pkix
> >>>>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>>>
> >>>>>>>>Stefan,
> >>>>>>>>
> >>>>>>>>I think what you are proposing is a good idea.  In most cases,
> >>>>>>>
> > path
> >
> >>>>>>>>discovery algorithms assume that both the trust anchor (or
trust
> >>>>>>>
> >>>>>>anchors)
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>and the end entity certificate are provided as input.  In this
> >>>>>>>>case,
> >>>>>>>
> >>>>>one
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>may
> >>>>>>>>need to construct a certification path without a priori access
> >>>>>>>
> > to
> >
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>end
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>entity certificate (the one with the subject public key
> >>>>>>>
> >>>>>corresponding to
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>the
> >>>>>>>>CRL signing key).  Including an AIA extension (or some other
> >>>>>>>
> >>>>>pointer) in
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>the
> >>>>>>>>CRL would provide the relying party with a simple way to
obtain
> >>>>>>>
> > the
> >
> >>>>>end
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>entity certificate for the CRL signing key's certification
path.
> >>>>>>>
> > On
> >
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>other hand, I believe that a relying party should be able to
> >>>>>>>
> >>>>>construct
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>the
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>certification path even without an AIA extension in the CRL,
so
> >>>>>>>>long
> >>>>>>>
> >>>>>as
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>it
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
> >>>>>>>
> > basic
> >
> >>>>>>>>scenarios that I expect a relying party may encounter:
> >>>>>>>>
> >>>>>>>>In each of these scenarios, the CA has performed key rollover
> >>>>>>>
> > and
> >
> >>>>>>>>is
> >>>>>>>
> >>>>>>only
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>signing CRLs with its new key.  The diagrams would look
similar,
> >>>>>>>
> >>>>>>however,
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>if
> >>>>>>>>the CA simply choose to use different keys to sign
certificates
> >>>>>>>
> > and
> >
> >>>>>CRLs
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>for
> >>>>>>>>some other reason.
> >>>>>>>>
> >>>>>>>>If the PKI architecture resembled figure 1, then the
> >>>>>>>
> > certification
> >
> >>>>>path
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>for
> >>>>>>>>the CRL signing key would just be a subset of the
certification
> >>>>>>>>path
> >>>>>>>
> >>>>>for
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>the
> >>>>>>>>EE certificate, so no addition path discovery would be needed.
> >>>>>>>>
> >>>>>>>>If the PKI architecture resembled figure 1, then it would be
> >>>>>>>
> >>>>>necessary
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>to
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
> >>>>>>>>building
> >>>>>>>
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>certification path to the EE certificate, however, the relying
> >>>>>>>>party
> >>>>>>>
> >>>>>>will
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>obtain the certificates pointed to by the AIA extension in the
> >>>>>>>
> > EE
> >
> >>>>>>>>certificate.  This AIA extension will point to a location
> >>>>>>>>containing
> >>>>>>>
> >>>>>all
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>certificates issued to CA 2, which would include both the
> >>>>>>>
> >>>>>certificate
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>issued
> >>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
> >>>>>>>
> > even
> >
> >>>>>though
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>the
> >>>>>>>>self-issued certificate would not be part of the certification
> >>>>>>>
> > path
> >
> >>>>>to
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>the
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>EE certificate, it would be downloaded by the relying party
> >>>>>>>
> > during
> >
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>construction of that certification path.  (Yes, there are
> >>>>>>>
> > circular
> >
> >>>>>>>>dependency issues in figure 2, but that is another issue.)
> >>>>>>>>
> >>>>>>>>A similar situation would happen if the PKI architecture
> >>>>>>>
> > resembled
> >
> >>>>>>figure
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>3.  The AIA extension in the EE certificate would point to a
> >>>>>>>
> >>>>>location
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>containing certificates issued to CA 3.  When the relying
party
> >>>>>>>
> >>>>>>downloaded
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>these certificates, it would obtain both of the certificates
> >>>>>>>
> > issued
> >
> >>>>>by
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>the
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>Root to CA 3 and so again would have the certificate needed to
> >>>>>>>
> >>>>>validate
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>the
> >>>>>>>>CRL signing key.
> >>>>>>>>
> >>>>>>>>In the case of an indirect CRL, things may not work as well.
If
> >>>>>>>
> >>>>>>indirect
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>CRLs were used, and the PKI architecture resembled figures 2
or
> >>>>>>>
> > 3
> >
> >>>>>>>>(replacing "New Key" with a different CA), then the set of
> >>>>>>>>certificates pointed
> >>>>>>>
> >>>>>to
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>by
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>the AIA extension in the EE certificate would not include the
> >>>>>>>
> >>>>>>certificate
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>of
> >>>>>>>>the CRL signer.  One could find this certificate by building
in
> >>>>>>>
> > the
> >
> >>>>>>>>reverse direction and using the SIA extension, but that may
not
> >>>>>>>
> > be
> >
> >>>>>>>>the most convenient solution.
> >>>>>>>>
> >>>>>>>>So, when indirect CRLs are being used, it seems that it would
be
> >>>>>>>
> >>>>>very
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>useful
> >>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
> >>>>>>>
> > When
> >
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>CRL
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>is not indirect, the need for this pointer does not seem to be
> >>>>>>>
> > as
> >
> >>>>>clear,
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>but
> >>>>>>>>I can't see any harm in including it.
> >>>>>>>>
> >>>>>>>>Dave
> >>>>>>>>
> >>>>>>>>Stefan Santesson wrote:
> >>>>>>>>All,
> >>>>>>>>
> >>>>>>>>I'm interested in the opinion from members on this list about
> >>>>>>>
> >>>>>discovery
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>of
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>CRL signer's certificate in non directory centric
environments.
> >>>>>>>>
> >>>>>>>>The problem is the following.
> >>>>>>>>
> >>>>>>>>The relying party (RP) needs to check validity of a
certificate
> >>>>>>>
> > and
> >
> >>>>>>finds
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>a
> >>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
> >>>>>>>>which
> >>>>>>>
> >>>>>in
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>this
> >>>>>>>>particular case is either signed by another key of the CA
> >>>>>>>
> > (re-keyed
> >
> >>>>>CA)
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>or
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>another entity (indirect CRL).
> >>>>>>>>
> >>>>>>>>In this case the relying party needs to obtain the certificate
> >>>>>>>
> > of
> >
> >>>>>the
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>CRL
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>signer which may NOT be part of the original chain. In a
> >>>>>>>
> > directory
> >
> >>>>>>centric
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>solution this is retrieved from the directory, but what if
such
> >>>>>>>
> >>>>>>directory
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>is
> >>>>>>>>not available or accessible.
> >>>>>>>>
> >>>>>>>>The RP have thus no hint where to find the CRL issuers
> >>>>>>>
> > certificate
> >
> >>>>>>unless
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>the RP already have possession of it by some other means.
> >>>>>>>>
> >>>>>>>>Is seems that CRLs would need an AIA extension with the option
> >>>>>>>
> > to
> >
> >>>>>point
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>to
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>the location of the signers certificate in the same manner as
is
> >>>>>>>
> >>>>>>possible
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>for certificates.
> >>>>>>>>
> >>>>>>>>Maybe AIA should be defined as both cert and CRL extension and
> >>>>>>>
> > not
> >
> >>>>>only
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>>>certificate extension as today.
> >>>>>>>>
> >>>>>>>>Thoughts and comments?
> >>>>>>>>
> >>>>>>>>Stefan Santesson
> >>>>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>
> >>>
> >>>
> >
> >
> 

Date: Mon, 18 Oct 2004 10:04:33 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Russ Housley <[email-masked]>
CC: Santosh Chokhani <[email-masked]>, [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Russ,

> Denis:
> 
>> I still wonder why you are making this restriction since LDAP is one 
>> of the only two methods that are supported in RFC 3280 to fetch 
>> certificates.
> 
> 
> This is simply not true.  When a GeneralName is used, the URI schemes 
> ftp, http, and ldap are explicitly discussed for fetching certificates.  
> When a GeneralName is rfc822name, email is discussed.  And, the 
> mailtoURI scheme is discussed for fetching CRLs.
> 
> The Directory Access Protocol (DAP) is also discussed.

OK. DAP and LDAP.

Denis

> Russ

Date: Mon, 18 Oct 2004 10:04:28 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Russ Housley <[email-masked]>
CC: [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Russ,

> Denis:

>> If I understand you correctly, for whatever reason (which one ?), you 
>> only want to use HTTP. Then I would think the solution would be to use 
>> the following draft: draft-ietf-pkix-certstore-http-08 and make sure 
>> that it will be usable with the current AIA and SIA extensions to 
>> fetch CRL issuers certificates.

> RFC 3280 specifies the inclusion of AIA and SIA in certificates.  It is 
> not specified for the inclusion in CRLs.  I believe that the proposal is 
> to write a specification for using AIA in CRLs.

> The problem has been stated, and a proposed solution has been stated.

> If you do not think the problem really exists, please explain why this 
> is the case.  If you have another way to solve the stated problem, 
> please share it.

One solution to the problem is to place an SIA extension in root 
certificates (i.e. self-signed certificates trusted under a validation 
policy) and in every CA certificate. This is also a very useful way to build 
a certification path "going down".

Denis

> Russ

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Fri, 15 Oct 2004 16:52:24 -0400
Importance: Normal
Sender: [email-masked]

Denis:

See my responses in-line in [SC].

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Friday, October 15, 2004 7:59 AM
To: Santosh Chokhani
Cc: 'pkix'
Subject: Re: Signer certificate discovery for CRLs

Santosh,

> Denis:
> 
> 1.  This is a good mechanism to start building the path for CRL
> signer.

"There are none so deaf as those who will not hear".

This is not the point.

[SC: Please tell me how you would find the CRL signer path.]

> If you have a better alternative for directory challenged
> environments,

Your definition of "directory challenged environment" is:
"not use LDAP client or DAP or DSP to query for certificate"

I still wonder why you are making this restriction since LDAP is one of the 
only two methods that are supported in RFC 3280 to fetch certificates.

[It is common for some of the commercial environments to use local
certificate stores and caches and AIA and not use directories.  I am trying
to help meet their need.]

If I understand you correctly, for whatever reason (which one ?), you only 
want to use HTTP. Then I would think the solution would be to use the 
following draft: draft-ietf-pkix-certstore-http-08 and make sure that it 
will be usable with the current AIA and SIA extensions to fetch CRL issuers 
certificates.

[The basic point is not the transport protocol. The point is that the
relying party does not interface to a directory or repository.  That is why
certstore I-D is not applicable.]

> tell us.  Absent you showing that there is a mechanism for directory
> challenged environments that is as simple and that works, we can not 
> have a fruitful dialog.

Please, do not reverse the question.

[We have defined a mechanism that has all the properties IETF espouses.  If
you have an alternative state so.]

> 2.  Adding AIA to CRL does not impact interoperability, security or
> backward compatibility adversely.

It adds complexity with "still-another-extension" in CRLs and still another 
method for revocation checking.

[No, it does not.  If the client process AIA, it can also process this to
start the CRL signer path building.  It is optional, just like AIA in
certificates.  Compliant clients need not use this mechanism if they can
find the CRL signer certificate using other means]

> As to your argument, we could have used it few years back and not
> added AIA to the certificates either.

  ... but you didn't. This last argument does not make sense.

[It is basically saying "if the AIA can be offered an alternative to obtain
CA certificate, it can also be offered to obtain the CRL signer
certificate"]

Denis

> -----Original Message-----
> From: Denis Pinks [mailto:[email-masked]]
> Sent: Friday, October 15, 2004 2:45 AM
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> You are still trying to avoid to respond to my request. So my
> temporary
> conclusion is that you have NOT demonstrated that your proposal is really 
> necessary and it is thus "yet-another-method".
> 
> 
>>Denis:
> 
> 
>>By directory challenged, I mean you do not use LDAP client or DAP or
>>DSP to query for certificate.
> 
> 
> RFC 3280. Page 46:
> 
>     The accessLocation
>     field is defined as a GeneralName, which can take several forms.
>     Where the information is available via http, ftp, or ldap,
>     accessLocation MUST be a uniformResourceIdentifier.  Where the
>     information is available via the Directory Access Protocol (DAP),
>     accessLocation MUST be a directoryName.
> 
> It is thus perfectly allowed and valid to use DAP or ldap.
> 
> 
>>The basic point is that if AIA or local store are the primary ways to
>>obtain certificates,
> 
> 
> No. Local store is of no use. AIA is one possibility, while the other
> one is
> 
> SIA.
> 
> 
>>since the CRL issuer certificate is not in any payload, AIA in CRL
>>helps obtain that certificate and start the path development process 
>>for the CRL certification path.
> 
> 
> No. You can use AIA or SIA in CA certificates, or AIA in leaf
> certificate.
> 
> Denis
> 
> 
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: Thursday, October 14, 2004 11:13 AM
>>To: Santosh Chokhani
>>Cc: 'pkix'
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Santosh,
>>
>>
>>
>>>Denis:
>>
>>
>>>With the three assumptions/constraints I provided, how would you 
>>>locate the CRL issuer certificate for the two examples using 3280 
>>>extensions and without putting AIA in the CRL?
>>
>>
>>As far as I understand, the three assumptions are:
>>
>>1.  You are directory challenged; and
>>     [I do not understand what this means]
>>2.  You use AIA to develop the path; and
>>     [It does not matter]
>>3.  You develop the path from the end entity to trust anchor
>>     [Could also be the contrary].
>>
>>If this is not correct, thus please correct.
>>
>>Then my request is: "using ANY OF the current extensions that are
>>defined in
>>
>>RFC 3280", which includes SIA.
>>
>>In your explanations  you said :
>>"if you do no deal with SIA et. al"
>>
>>This last assumption is neither part of the three assumptions and does
>>not conform to my request.
>>
>>Denis
>>
>>
>>
>>>That is my point.
>>>
>>>-----Original Message-----
>>>From: Denis Pinkas [mailto:[email-masked]]
>>>Sent: Thursday, October 14, 2004 6:22 AM
>>>To: Santosh Chokhani
>>>Cc: 'pkix'
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>
>>>Santosh,
>>>
>>>You misread my request. I said:
>>>
>>>"For the time being, I would like that you provide an example where, 
>>>when using the current extensions that are defined in RFC 3280, it 
>>>will NOT be possible to locate a CRL Issuer certificate."
>>>
>>>Maybe I would have needed to be clearer and say :
>>>
>>>"For the time being, I would like that you provide an example where, 
>>>when using ANY OF the current extensions that are defined in RFC 
>>>3280, it will NOT be possible to locate a CRL Issuer certificate."
>>>
>>>The examples you provide below do not fulfil this request.
>>>
>>>The assumption is that there exists a path to be tested for
>>>revocation checking (and that it does not matter to know which way it 
>>>has been constructed).
>>>
>>>I am not saying that using AIA in CRL might not be useful, but I am 
>>>still lacking the demonstration that there would be no other way.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>
>>>>Denis:
>>>>
>>>>Two examples are very simple: one for direct CRL Issuer and one for
>>>>Indirect CRL Issuer.
>>>>
>>>>Let us make the following assumptions that Stefan was making:
>>>>
>>>>1.  You are directory challenged; and
>>>>2.  You use AIA to develop the path; and
>>>>3.  You develop the path from the end entity to trust anchor.
>>>>
>>>
>>>>From what I know of MS CAPI, these are reasonable
>>>
>>>
>>>>assumptions/constraints.
>>>>
>>>>Now the examples.
>>>>
>>>>Example 1: Direct CRL Issuer
>>>>
>>>>The certificate trust path is:
>>>>Root --> CA1 --> CA 2, old key --> Denis
>>>>
>>>>The CRL trust path is:
>>>>Root --> CA1 --> CA 2, new key --> CRL
>>>>
>>>>(Note: We do not do self-issued certificate since there is no
>>>>simple, secure way to check their revocation status).
>>>>
>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>>straightforward.  How would you find it if you do no deal with SIA 
>>>>et. al.
>>>>
>>>>Example 2: Indirect CRL Issuer
>>>>
>>>>The certificate trust path is:
>>>>Root --> CA1 --> CA 2 --> Denis
>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
>>>>issued by CAI.
>>>>
>>>>The CRL trust path is:
>>>>Root --> CAI --> CRL
>>>>
>>>>Now, with AIA in CRL, finding the CAI certificate is
>>>>straightforward. How would you find it if you do no deal with SIA 
>>>>et. al.
>>>>
>>>>In addition to the need cited above, please note that the extension
>>>>semantics does not change, it does not hinder any interoperability, 
>>>>and it does not break any backward compatibility.  So, what if I 
>>>>wanted to use this extension in the CRL.  It does no harm to other 
>>>>relying parties.
>>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>
>>>>Stefan,
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>Denis,
>>>>
>>>>
>>>>>I'm not sure what you mean.
>>>>
>>>>
>>>>For the time being, I would like that you provide an example where,
>>>>when using the current extensions that are defined in RFC 3280, it 
>>>>will NOT be possible to locate a CRL Issuer certificate.
>>>>
>>>>If you are able to provide that example, then it would justify the
>>>>need for an extension at least for one case. Then we can see what 
>>>>that case is.
>>>>
>>>>I am awaiting that example.
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>I conclude that I agree with Santosh.
>>>>>
>>>>>The debate is still open... Feel free to express your opinion.
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>Sent: den 13 oktober 2004 16:34
>>>>>>To: Stefan Santesson
>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>You are making a conclusion without letting me the time to
>>>>>>respond.
>>>>>>I will need more time to look at the pictures (and understand 
>>>>>>them).
>>>>>>
>>>>>>For the time being, I am still reluctant to accept
>>>>>
>>>>>"yet-another-method".
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>We already have too many.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Santosh,
>>>>>>>
>>>>>>>I conclude that we are in complete and total agreement. The 
>>>>>>>question is how to go about this.
>>>>>>
>>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>>>would hopefully just be a minor change.
>>>>>>
>>>>>>This is exactly what I feared.
>>>>>>
>>>>>>We usually end-up with a "minor change" in an extension without
>>>>>>saying cleary how and when it shall/should be used.
>>>>>>
>>>>>>I still have in mind that:
>>>>>>
>>>>>>1) a certification path must first be constructed,
>>>>>>2) then the revocation checking of that path must be done.
>>>>>>
>>>>>>This means that information about CRL issuers certificates
>>>>>>locations
>>>>>
>>>>>may
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>certainly be found in that chain. If not, I would like an example.
>>>>>>
>>>>>>Denis
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>It would not change the definition of AIA just add that it can be
>>>>>>
>>>>>used
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>also as CRL extension and list eventual restrictions and guidance 
>>>>>>for
>>>>>
>>>>>use
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>with CRLs.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>>To: 'pkix'
>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan:
>>>>>>>>
>>>>>>>>In terms of certificate discovery, your proposal for AIA in CRL
>>>>>>>>is
>>>>>>>
>>>>>more
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>robust.  The whole idea of self-issued key rollover certificates
>>>>>>>>and
>>>>>>>
>>>>>>then
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>using the new key to issue CRL is fraught with security
>>>>>>>>problems. A secure solution would be one where the new key is 
>>>>>>>>certified by the parent
>>>>>>>
>>>>>CA.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>In
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>that case to obtain the new certificate, you could use AIA in
>>>>>>>>CRL.
>>>>>>>>
>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>>>>certificate in question points to the indirect CRL.  You get 
>>>>>>>>that CRL.  The AIA
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>gets you started for the indirect CRL issuer certification path 
>>>>>>>>and
>>>>>>>
>>>>>you
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>are
>>>>>>>>in business.
>>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>On
>>>>>>>>Behalf Of Stefan Santesson
>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>>To: David A. Cooper
>>>>>>>>Cc: pkix
>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>David,
>>>>>>>>
>>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>>I did misread your pictures.
>>>>>>>>
>>>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>>>
>>>>>3280,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>either the CRL issuer certificate itself, or the location of the
>>>>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>>>>the validating
>>>>>>>
>>>>>>party
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in some cases, but not in others?
>>>>>>>>
>>>>>>>>Can we also conclude that there is no real discovery solution
>>>>>>>>for
>>>>>>>
>>>>>>indirect
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRLs?
>>>>>>>>
>>>>>>>>Do you then agree then that it could be appropriate to allow AIA 
>>>>>>>>as
>>>>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>________________________________________
>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>I believe that you are misinterpreting the figures.  They really 
>>>>>>>>do represent three different cases, not three different 
>>>>>>>>certification
>>>>>>>
>>>>>paths
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>that have been constructed through the same PKI architecture.
>>>>>>>>
>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>>
>>>>>certificates.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>The
>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not its 
>>>>>>>>old
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>(either the Root CA never issued a certificate to CA 1's old key 
>>>>>>>>or
>>>>>>>
>>>>>that
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate has expired).
>>>>>>>>
>>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>>>>key, but not its
>>>>>>>
>>>>>new
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>key.
>>>>>>>>
>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a
>>>>>>>>new CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>>>self-issued
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>rollover certificates.
>>>>>>>>
>>>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>>>
>>>>>>generated
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>self-issued key rollover certificates upon key rollover and then
>>>>>>>>had
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>Root CA issue a CA certificate to its new key.  In this case, as
>>>>>>>>you suggest, any of the certification paths from figures 1, 2, 
>>>>>>>>or 3
>>>>>>>
>>>>>could be
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>constructed.
>>>>>>>>
>>>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>>>
>>>>>specified
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>in
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>>>
>>>>>>Policy":
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>The authorityInfoAccess extension uses URIs for two purposes.
>>>>>>>>When
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>>specifies
>>>>>>>
>>>>>>where
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>>found.
>>>>>>>
>>>>>If
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>LDAP
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>>>
>>>>>>relevant
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates and specify the directory attribute in which the
>>>>>>>
>>>>>>certificates
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>are located. If the directory in which the certificates are
>>>>>>>>stored
>>>>>>>
>>>>>>expects
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the "binary" option to be specified, then the attribute type
>>>>>>>>must be followed by ";binary" in the URI. If HTTP is used, the 
>>>>>>>>URI must
>>>>>>>
>>>>>point to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>a
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>file that has an extension of ".p7c" that contains a certs-only 
>>>>>>>>CMS message (see RFC 2633). The CMS message should include all 
>>>>>>>>certificates
>>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the issuer of this certificate, but must at least contain all
>>>>>>>
>>>>>>certificates
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>>>public
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>may
>>>>>>>>be used to verify the signature on this certificate. .... For a
>>>>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>>>>appear as the
>>>>>>>
>>>>>access
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>>
>>>>>id-ad-caIssuers
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>access
>>>>>>>>method is used are:
>>>>>>>
>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cA
>>>>>>>C
>>>>>>>e
>>>>>>>r
>>>>>>>t
>>>>>>>i
>>>>>>
>>>>>fi
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>ca
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>te
>>>>>>>>,crossCertificatePair
>>>>>>>
>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACert
>>>>>>>i
>>>>>>>f
>>>>>>>i
>>>>>>>c
>>>>>>>a
>>>>>>
>>>>>te
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>;b
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in
>>>>>>>>ary,crossCertificatePair;binary
>>>>>>>
>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsI
>>>>>>>s
>>>>>>>s
>>>>>>>u
>>>>>>>e
>>>>>>>d
>>>>>>
>>>>>To
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Go
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>od
>>>>>>>>CA.p7c
>>>>>>>>For both LDAP and HTTP, the URI provides the exact location
>>>>>>>>where information is to be located, so there is no requirement 
>>>>>>>>for the
>>>>>>>
>>>>>relying
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>party to try to figure out where information is located.
>>>>>>>>
>>>>>>>>The HTTP URI points to a certs-only CMS message that includes
>>>>>>>>all certificates issued to the CA identified in the issuer field 
>>>>>>>>of the certificate.
>>>>>>>>
>>>>>>>>The LDAP URI points to the cACertificate and
>>>>>>>>crossCertificatePair attributes of the directory entry of the CA 
>>>>>>>>identified in the issuer field of
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's
>>>>>>>>self-
>>>>>>>
>>>>>>issued
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>>
>>>>>>>>Dave
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan Santesson wrote:
>>>>>>>>
>>>>>>>>David,
>>>>>>>>
>>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>>
>>>>>>>>I have some comments and questions on this.
>>>>>>>>
>>>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>>>where
>>>>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>self
>>>>>>>>issued certificate is inserted into the path, you are likely to
>>>>>>>>find
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>CRL
>>>>>>>>issuer cert in the path. (given that the new CA have a common
>>>>>>>>key
>>>>>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>>
>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>>>
>>>>>>different
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>path building strategies. An application that has access locally 
>>>>>>>>to
>>>>>>>
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>chaining options may however still choose path 2 for the certs
>>>>>>>>and
>>>>>>>
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>1
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>for the CRL independent of each other (which I think figure 3 
>>>>>>>>tries
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>describe)
>>>>>>>>
>>>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>>>
>>>>>familiar
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>with doesn't use AIA to describe a directory entry where it is 
>>>>>>>>left
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>validation application logic to be intelligent enough to find
>>>>>>>
>>>>>>appropriate
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificate data from the directory. The model I'm familiar with 
>>>>>>>>is
>>>>>>>
>>>>>when
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>AIA URL explicitly identifies the exact location of the 
>>>>>>>>appropriate
>>>>>>>
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate file, relieving the validation software from complex
>>>>>>>>information queries. If just location of explicit certificate 
>>>>>>>>files are
>>>>>>>
>>>>>identified
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>>>
>>>>>signer
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>cert
>>>>>>>>if this is different from the CA certificate. This is also the
>>>>>>>
>>>>>problem
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>with
>>>>>>>>Denis proposal.
>>>>>>>>
>>>>>>>>I think we share the basic conclusion that the ability to locate
>>>>>>>>the
>>>>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>signer certificate directly through the CRL could be very
>>>>>>>>useful. At
>>>>>>>
>>>>>>least
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in the case of indirect CRL but it could also be proven very 
>>>>>>>>useful
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CA
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>re-keying scenarios.
>>>>>>>>
>>>>>>>>The easiest solution would probably be to allow AIA to be used
>>>>>>>>in
>>>>>>>
>>>>>its
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>>
>>>>>critical).
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>It
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>would present a very clear and uncomplicated logic to
>>>>>>>>certificate validating applications in many cases.
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>________________________________________
>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>I think what you are proposing is a good idea.  In most cases, 
>>>>>>>>path discovery algorithms assume that both the trust anchor (or 
>>>>>>>>trust
>>>>>>>
>>>>>>anchors)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>>>case,
>>>>>>>
>>>>>one
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>may
>>>>>>>>need to construct a certification path without a priori access
>>>>>>>>to
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>end
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>entity certificate (the one with the subject public key
>>>>>>>
>>>>>corresponding to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>>
>>>>>pointer) in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL would provide the relying party with a simple way to obtain 
>>>>>>>>the
>>>>>>>
>>>>>end
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>entity certificate for the CRL signing key's certification path. 
>>>>>>>>On
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>>
>>>>>construct
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certification path even without an AIA extension in the CRL, so
>>>>>>>>long
>>>>>>>
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>it
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
>>>>>>>>basic scenarios that I expect a relying party may encounter:
>>>>>>>>
>>>>>>>>In each of these scenarios, the CA has performed key rollover
>>>>>>>>and is
>>>>>>>
>>>>>>only
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>>>
>>>>>>however,
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>if
>>>>>>>>the CA simply choose to use different keys to sign certificates 
>>>>>>>>and
>>>>>>>
>>>>>CRLs
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>for
>>>>>>>>some other reason.
>>>>>>>>
>>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>>certification
>>>>>>>
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>for
>>>>>>>>the CRL signing key would just be a subset of the certification
>>>>>>>>path
>>>>>>>
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>>>
>>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>>
>>>>>necessary
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>>building
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certification path to the EE certificate, however, the relying
>>>>>>>>party
>>>>>>>
>>>>>>will
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>obtain the certificates pointed to by the AIA extension in the
>>>>>>>>EE certificate.  This AIA extension will point to a location 
>>>>>>>>containing
>>>>>>>
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>issued
>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
>>>>>>>>even
>>>>>>>
>>>>>though
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>self-issued certificate would not be part of the certification 
>>>>>>>>path
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>>during
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>>circular dependency issues in figure 2, but that is another
>>>>>>>>issue.)
>>>>>>>>
>>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>>resembled
>>>>>>>
>>>>>>figure
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>>
>>>>>location
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>>>
>>>>>>downloaded
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>these certificates, it would obtain both of the certificates 
>>>>>>>>issued
>>>>>>>
>>>>>by
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>>>
>>>>>validate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL signing key.
>>>>>>>>
>>>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>>>
>>>>>>indirect
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or
>>>>>>>>3 (replacing "New Key" with a different CA), then the set of 
>>>>>>>>certificates pointed
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>by
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the AIA extension in the EE certificate would not include the
>>>>>>>
>>>>>>certificate
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>of
>>>>>>>>the CRL signer.  One could find this certificate by building in 
>>>>>>>>the reverse direction and using the SIA extension, but that may 
>>>>>>>>not be the most convenient solution.
>>>>>>>>
>>>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>>>
>>>>>very
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>useful
>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>>When
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is not indirect, the need for this pointer does not seem to be
>>>>>>>>as
>>>>>>>
>>>>>clear,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>but
>>>>>>>>I can't see any harm in including it.
>>>>>>>>
>>>>>>>>Dave
>>>>>>>>
>>>>>>>>Stefan Santesson wrote:
>>>>>>>>All,
>>>>>>>>
>>>>>>>>I'm interested in the opinion from members on this list about
>>>>>>>
>>>>>discovery
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>of
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>>>
>>>>>>>>The problem is the following.
>>>>>>>>
>>>>>>>>The relying party (RP) needs to check validity of a certificate 
>>>>>>>>and
>>>>>>>
>>>>>>finds
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>a
>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>>>which
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>this
>>>>>>>>particular case is either signed by another key of the CA 
>>>>>>>>(re-keyed
>>>>>>>
>>>>>CA)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>or
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>another entity (indirect CRL).
>>>>>>>>
>>>>>>>>In this case the relying party needs to obtain the certificate
>>>>>>>>of
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>>directory
>>>>>>>
>>>>>>centric
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>solution this is retrieved from the directory, but what if such
>>>>>>>
>>>>>>directory
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is
>>>>>>>>not available or accessible.
>>>>>>>>
>>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>>certificate
>>>>>>>
>>>>>>unless
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the RP already have possession of it by some other means.
>>>>>>>>
>>>>>>>>Is seems that CRLs would need an AIA extension with the option
>>>>>>>>to
>>>>>>>
>>>>>point
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the location of the signers certificate in the same manner as is
>>>>>>>
>>>>>>possible
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>for certificates.
>>>>>>>>
>>>>>>>>Maybe AIA should be defined as both cert and CRL extension and
>>>>>>>>not
>>>>>>>
>>>>>only
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate extension as today.
>>>>>>>>
>>>>>>>>Thoughts and comments?
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>
>>
>>
> 
> 
> 

Date: Fri, 15 Oct 2004 14:55:14 -0400
To: [email-masked]
From: Russ Housley <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Cc: [email-masked]
Sender: [email-masked]

Denis:

>If I understand you correctly, for whatever reason (which one ?), you only 
>want to use HTTP. Then I would think the solution would be to use the 
>following draft: draft-ietf-pkix-certstore-http-08 and make sure that it 
>will be usable with the current AIA and SIA extensions to fetch CRL 
>issuers certificates.

RFC 3280 specifies the inclusion of AIA and SIA in certificates.  It is not 
specified for the inclusion in CRLs.  I believe that the proposal is to 
write a specification for using AIA in CRLs.

The problem has been stated, and a proposed solution has been stated.  If 
you do not think the problem really exists, please explain why this is the 
case.  If you have another way to solve the stated problem, please share it.

Russ

Date: Fri, 15 Oct 2004 14:50:17 -0400
To: Denis Pinkas <[email-masked]>, Santosh Chokhani <[email-masked]>
From: Russ Housley <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Cc: [email-masked]
Sender: [email-masked]

Denis:

>I still wonder why you are making this restriction since LDAP is one of 
>the only two methods that are supported in RFC 3280 to fetch certificates.

This is simply not true.  When a GeneralName is used, the URI schemes ftp, 
http, and ldap are explicitly discussed for fetching certificates.  When a 
GeneralName is rfc822name, email is discussed.  And, the mailtoURI scheme 
is discussed for fetching CRLs.

The Directory Access Protocol (DAP) is also discussed.

Russ

Date: Fri, 15 Oct 2004 17:30:13 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: Santosh Chokhani <[email-masked]>, pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

> Denis,

> Unfortunately I fail to understand your questions, issues and requests.

The sentence below demonstrates that you understand the issue.

> It would be very useful if you could explain how current mechanisms can
> be used in a simple and straightforward manner to discover CRL signer
> certificates in ALL the use cases discussed, mainly re-keyed CA and
> indirect CRLs.

You are also reversing the question. Using your terms, my question would be:

"It would be very useful if you could explain how current mechanisms CANNOT
be used in a simple and straightforward manner to discover CRL signer
certificates in ONE or MORE the use cases discussed, mainly re-keyed CA and
indirect CRLs."

Denis

> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 
>>-----Original Message-----
>>From: [email-masked]
> 
> [mailto:[email-masked]]
> 
>>On Behalf Of Denis Pinkas
>>Sent: den 14 oktober 2004 17:13
>>To: Santosh Chokhani
>>Cc: 'pkix'
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Santosh,
>>
>>
>>>Denis:
>>
>>>With the three assumptions/constraints I provided, how would you
>>
> locate
> 
>>the
>>
>>>CRL issuer certificate for the two examples using 3280 extensions
>>
> and
> 
>>>without putting AIA in the CRL?
>>
>>As far as I understand, the three assumptions are:
>>
>>1.  You are directory challenged; and
>>     [I do not understand what this means]
>>2.  You use AIA to develop the path; and
>>     [It does not matter]
>>3.  You develop the path from the end entity to trust anchor
>>     [Could also be the contrary].
>>
>>If this is not correct, thus please correct.
>>
>>Then my request is: "using ANY OF the current extensions that are
> 
> defined
> 
>>in
>>RFC 3280", which includes SIA.
>>
>>In your explanations  you said :
>>"if you do no deal with SIA et. al"
>>
>>This last assumption is neither part of the three assumptions and does
> 
> not
> 
>>conform to my request.
>>
>>Denis
>>
>>
>>>That is my point.
>>>
>>>-----Original Message-----
>>>From: Denis Pinkas [mailto:[email-masked]]
>>>Sent: Thursday, October 14, 2004 6:22 AM
>>>To: Santosh Chokhani
>>>Cc: 'pkix'
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>
>>>Santosh,
>>>
>>>You misread my request. I said:
>>>
>>>"For the time being, I would like that you provide an example where,
>>
>>when
>>
>>>using the current extensions that are defined in RFC 3280, it will
>>
> NOT
> 
>>be
>>
>>>possible to locate a CRL Issuer certificate."
>>>
>>>Maybe I would have needed to be clearer and say :
>>>
>>>"For the time being, I would like that you provide an example where,
>>
>>when
>>
>>>using ANY OF the current extensions that are defined in RFC 3280, it
>>
>>will
>>
>>>NOT be possible to locate a CRL Issuer certificate."
>>>
>>>The examples you provide below do not fulfil this request.
>>>
>>>The assumption is that there exists a path to be tested for
>>
> revocation
> 
>>>checking (and that it does not matter to know which way it has been
>>>constructed).
>>>
>>>I am not saying that using AIA in CRL might not be useful, but I am
>>
>>still
>>
>>>lacking the demonstration that there would be no other way.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>>Denis:
>>>>
>>>>Two examples are very simple: one for direct CRL Issuer and one for
>>>>Indirect CRL Issuer.
>>>>
>>>>Let us make the following assumptions that Stefan was making:
>>>>
>>>>1.  You are directory challenged; and
>>>>2.  You use AIA to develop the path; and
>>>>3.  You develop the path from the end entity to trust anchor.
>>>>
>>>
>>>>From what I know of MS CAPI, these are reasonable
>>>
>>>>assumptions/constraints.
>>>>
>>>>Now the examples.
>>>>
>>>>Example 1: Direct CRL Issuer
>>>>
>>>>The certificate trust path is:
>>>>Root --> CA1 --> CA 2, old key --> Denis
>>>>
>>>>The CRL trust path is:
>>>>Root --> CA1 --> CA 2, new key --> CRL
>>>>
>>>>(Note: We do not do self-issued certificate since there is no
>>>
> simple,
> 
>>>>secure way to check their revocation status).
>>>>
>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>>straightforward.  How would you find it if you do no deal with SIA
>>>
> et.
> 
>>>>al.
>>>>
>>>>Example 2: Indirect CRL Issuer
>>>>
>>>>The certificate trust path is:
>>>>Root --> CA1 --> CA 2 --> Denis
>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL
>>>
> issued
> 
>>>>by CAI.
>>>>
>>>>The CRL trust path is:
>>>>Root --> CAI --> CRL
>>>>
>>>>Now, with AIA in CRL, finding the CAI certificate is
>>>
> straightforward.
> 
>>>>How would you find it if you do no deal with SIA et. al.
>>>>
>>>>In addition to the need cited above, please note that the extension
>>>>semantics does not change, it does not hinder any interoperability,
>>>>and it does not break any backward compatibility.  So, what if I
>>>>wanted to use this extension in the CRL.  It does no harm to other
>>>>relying parties.
>>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>
>>>>Stefan,
>>>>
>>>>
>>>>
>>>>
>>>>>Denis,
>>>>
>>>>
>>>>>I'm not sure what you mean.
>>>>
>>>>
>>>>For the time being, I would like that you provide an example where,
>>>>when
>>>>using the current extensions that are defined in RFC 3280, it will
>>>
> NOT
> 
>>be
>>
>>>>possible to locate a CRL Issuer certificate.
>>>>
>>>>If you are able to provide that example, then it would justify the
>>>>need for
>>>>an extension at least for one case. Then we can see what that case
>>>
> is.
> 
>>>>I am awaiting that example.
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>I conclude that I agree with Santosh.
>>>>>
>>>>>The debate is still open... Feel free to express your opinion.
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>Sent: den 13 oktober 2004 16:34
>>>>>>To: Stefan Santesson
>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>You are making a conclusion without letting me the time to
>>>>>
> respond. I
> 
>>>>>>will need more time to look at the pictures (and understand them).
>>>>>>
>>>>>>For the time being, I am still reluctant to accept
>>>>>
>>>>>"yet-another-method".
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>We already have too many.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Santosh,
>>>>>>>
>>>>>>>I conclude that we are in complete and total agreement.
>>>>>>>The question is how to go about this.
>>>>>>
>>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>>>would hopefully just be a minor change.
>>>>>>
>>>>>>This is exactly what I feared.
>>>>>>
>>>>>>We usually end-up with a "minor change" in an extension without
>>>>>>saying cleary how and when it shall/should be used.
>>>>>>
>>>>>>I still have in mind that:
>>>>>>
>>>>>>1) a certification path must first be constructed,
>>>>>>2) then the revocation checking of that path must be done.
>>>>>>
>>>>>>This means that information about CRL issuers certificates
>>>>>
> locations
> 
>>>>>may
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>certainly be found in that chain. If not, I would like an example.
>>>>>>
>>>>>>Denis
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>It would not change the definition of AIA just add that it can be
>>>>>>
>>>>>used
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>also as CRL extension and list eventual restrictions and guidance
>>>>>
> for
> 
>>>>>use
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>with CRLs.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>>To: 'pkix'
>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan:
>>>>>>>>
>>>>>>>>In terms of certificate discovery, your proposal for AIA in CRL
>>>>>>>
> is
> 
>>>>>more
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>robust.  The whole idea of self-issued key rollover certificates
>>>>>>>>and
>>>>>>>
>>>>>>then
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>using the new key to issue CRL is fraught with security
>>>>>>>
> problems.
> 
>>>>>>>>A secure solution would be one where the new key is certified by
>>>>>>>>the parent
>>>>>>>
>>>>>CA.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>In
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>that case to obtain the new certificate, you could use AIA in
>>>>>>>
> CRL.
> 
>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>>>>certificate in question points to the indirect CRL.  You get
>>>>>>>
> that
> 
>>>>>>>>CRL.  The AIA
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>gets you started for the indirect CRL issuer certification path
>>>>>>>
> and
> 
>>>>>you
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>are
>>>>>>>>in business.
>>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>On
>>>>>>>>Behalf Of Stefan Santesson
>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>>To: David A. Cooper
>>>>>>>>Cc: pkix
>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>David,
>>>>>>>>
>>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>>I did misread your pictures.
>>>>>>>>
>>>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>>>
>>>>>3280,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>either the CRL issuer certificate itself, or the location of the
>>>>>>>>CRL issuer certificate, will be clearly identified/available for
>>>>>>>>the validating
>>>>>>>
>>>>>>party
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in some cases, but not in others?
>>>>>>>>
>>>>>>>>Can we also conclude that there is no real discovery solution
>>>>>>>
> for
> 
>>>>>>indirect
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRLs?
>>>>>>>>
>>>>>>>>Do you then agree then that it could be appropriate to allow AIA
>>>>>>>
> as
> 
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>________________________________________
>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>I believe that you are misinterpreting the figures.  They really
>>>>>>>
> do
> 
>>>>>>>>represent three different cases, not three different
>>>>>>>
> certification
> 
>>>>>paths
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>that have been constructed through the same PKI architecture.
>>>>>>>>
>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>>
>>>>>certificates.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>The
>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not its
>>>>>>>
> old
> 
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>(either the Root CA never issued a certificate to CA 1's old key
>>>>>>>
> or
> 
>>>>>that
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate has expired).
>>>>>>>>
>>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's old
>>>>>>>>key, but not its
>>>>>>>
>>>>>new
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>key.
>>>>>>>>
>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a
>>>>>>>
> new
> 
>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated
>>>>>>>>self-issued
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>rollover certificates.
>>>>>>>>
>>>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>>>
>>>>>>generated
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>self-issued key rollover certificates upon key rollover and then
>>>>>>>>had
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>Root CA issue a CA certificate to its new key.  In this case, as
>>>>>>>>you suggest, any of the certification paths from figures 1, 2,
>>>>>>>
> or 3
> 
>>>>>could be
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>constructed.
>>>>>>>>
>>>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>>>
>>>>>specified
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>in
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>>>
>>>>>>Policy":
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>The authorityInfoAccess extension uses URIs for two purposes.
>>>>>>>
> When
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>>specifies
>>>>>>>
>>>>>>where
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>
> found.
> 
>>>>>If
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>LDAP
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>>>
>>>>>>relevant
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates and specify the directory attribute in which the
>>>>>>>
>>>>>>certificates
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>are located. If the directory in which the certificates are
>>>>>>>
> stored
> 
>>>>>>expects
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the "binary" option to be specified, then the attribute type
>>>>>>>
> must
> 
>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI
>>>>>>>
> must
> 
>>>>>point to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>a
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>file that has an extension of ".p7c" that contains a certs-only
>>>>>>>
> CMS
> 
>>>>>>>>message (see RFC 2633). The CMS message should include all
>>>>>>>>certificates
>>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the issuer of this certificate, but must at least contain all
>>>>>>>
>>>>>>certificates
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>>>public
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>may
>>>>>>>>be used to verify the signature on this certificate. .... For a
>>>>>>>>certificate issued by "Good CA", some examples of URIs that may
>>>>>>>>appear as the
>>>>>>>
>>>>>access
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>>
>>>>>id-ad-caIssuers
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>access
>>>>>>>>method is used are:
>>>>>>>
>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACe
>>>>>
> r
> 
>>>>>>>t
>>>>>>>i
>>>>>>
>>>>>fi
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>ca
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>te
>>>>>>>>,crossCertificatePair
>>>>>>>
>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertif
>>>>>
> i
> 
>>>>>>>c
>>>>>>>a
>>>>>>
>>>>>te
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>;b
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in
>>>>>>>>ary,crossCertificatePair;binary
>>>>>>>
>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIss
>>>>>
> u
> 
>>>>>>>e
>>>>>>>d
>>>>>>
>>>>>To
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Go
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>od
>>>>>>>>CA.p7c
>>>>>>>>For both LDAP and HTTP, the URI provides the exact location
>>>>>>>
> where
> 
>>>>>>>>information is to be located, so there is no requirement for the
>>>>>>>
>>>>>relying
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>party to try to figure out where information is located.
>>>>>>>>
>>>>>>>>The HTTP URI points to a certs-only CMS message that includes
>>>>>>>
> all
> 
>>>>>>>>certificates issued to the CA identified in the issuer field of
>>>>>>>
> the
> 
>>>>>>>>certificate.
>>>>>>>>
>>>>>>>>The LDAP URI points to the cACertificate and
>>>>>>>
> crossCertificatePair
> 
>>>>>>>>attributes of the directory entry of the CA identified in the
>>>>>>>>issuer field of
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's
>>>>>>>
> self-
> 
>>>>>>issued
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>>
>>>>>>>>Dave
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan Santesson wrote:
>>>>>>>>
>>>>>>>>David,
>>>>>>>>
>>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>>
>>>>>>>>I have some comments and questions on this.
>>>>>>>>
>>>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>>>where
>>>>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>self
>>>>>>>>issued certificate is inserted into the path, you are likely to
>>>>>>>>find
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>CRL
>>>>>>>>issuer cert in the path. (given that the new CA have a common
>>>>>>>
> key
> 
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>>
>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>>>
>>>>>>different
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>path building strategies. An application that has access locally
>>>>>>>
> to
> 
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>chaining options may however still choose path 2 for the certs
>>>>>>>
> and
> 
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>1
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>for the CRL independent of each other (which I think figure 3
>>>>>>>
> tries
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>describe)
>>>>>>>>
>>>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>>>
>>>>>familiar
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>with doesn't use AIA to describe a directory entry where it is
>>>>>>>
> left
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>validation application logic to be intelligent enough to find
>>>>>>>
>>>>>>appropriate
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificate data from the directory. The model I'm familiar with
>>>>>>>
> is
> 
>>>>>when
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>AIA URL explicitly identifies the exact location of the
>>>>>>>
> appropriate
> 
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate file, relieving the validation software from complex
>>>>>>>>information queries. If just location of explicit certificate
>>>>>>>
> files
> 
>>>>>>>>are
>>>>>>>
>>>>>identified
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>>>
>>>>>signer
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>cert
>>>>>>>>if this is different from the CA certificate. This is also the
>>>>>>>
>>>>>problem
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>with
>>>>>>>>Denis proposal.
>>>>>>>>
>>>>>>>>I think we share the basic conclusion that the ability to locate
>>>>>>>>the
>>>>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>signer certificate directly through the CRL could be very
>>>>>>>
> useful.
> 
>>>>>>>>At
>>>>>>>
>>>>>>least
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in the case of indirect CRL but it could also be proven very
>>>>>>>
> useful
> 
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CA
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>re-keying scenarios.
>>>>>>>>
>>>>>>>>The easiest solution would probably be to allow AIA to be used
>>>>>>>
> in
> 
>>>>>its
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>>
>>>>>critical).
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>It
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>would present a very clear and uncomplicated logic to
>>>>>>>
> certificate
> 
>>>>>>>>validating applications in many cases.
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>________________________________________
>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>I think what you are proposing is a good idea.  In most cases,
>>>>>>>
> path
> 
>>>>>>>>discovery algorithms assume that both the trust anchor (or trust
>>>>>>>
>>>>>>anchors)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>>>case,
>>>>>>>
>>>>>one
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>may
>>>>>>>>need to construct a certification path without a priori access
>>>>>>>
> to
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>end
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>entity certificate (the one with the subject public key
>>>>>>>
>>>>>corresponding to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>>
>>>>>pointer) in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL would provide the relying party with a simple way to obtain
>>>>>>>
> the
> 
>>>>>end
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>entity certificate for the CRL signing key's certification path.
>>>>>>>
> On
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>>
>>>>>construct
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certification path even without an AIA extension in the CRL, so
>>>>>>>>long
>>>>>>>
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>it
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three
>>>>>>>
> basic
> 
>>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>>
>>>>>>>>In each of these scenarios, the CA has performed key rollover
>>>>>>>
> and
> 
>>>>>>>>is
>>>>>>>
>>>>>>only
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>>>
>>>>>>however,
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>if
>>>>>>>>the CA simply choose to use different keys to sign certificates
>>>>>>>
> and
> 
>>>>>CRLs
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>for
>>>>>>>>some other reason.
>>>>>>>>
>>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>
> certification
> 
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>for
>>>>>>>>the CRL signing key would just be a subset of the certification
>>>>>>>>path
>>>>>>>
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>>>
>>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>>
>>>>>necessary
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>>building
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certification path to the EE certificate, however, the relying
>>>>>>>>party
>>>>>>>
>>>>>>will
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>obtain the certificates pointed to by the AIA extension in the
>>>>>>>
> EE
> 
>>>>>>>>certificate.  This AIA extension will point to a location
>>>>>>>>containing
>>>>>>>
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>issued
>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
>>>>>>>
> even
> 
>>>>>though
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>self-issued certificate would not be part of the certification
>>>>>>>
> path
> 
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>
> during
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>
> circular
> 
>>>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>>>
>>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>
> resembled
> 
>>>>>>figure
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>>
>>>>>location
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>>>
>>>>>>downloaded
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>these certificates, it would obtain both of the certificates
>>>>>>>
> issued
> 
>>>>>by
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>>>
>>>>>validate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL signing key.
>>>>>>>>
>>>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>>>
>>>>>>indirect
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or
>>>>>>>
> 3
> 
>>>>>>>>(replacing "New Key" with a different CA), then the set of
>>>>>>>>certificates pointed
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>by
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the AIA extension in the EE certificate would not include the
>>>>>>>
>>>>>>certificate
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>of
>>>>>>>>the CRL signer.  One could find this certificate by building in
>>>>>>>
> the
> 
>>>>>>>>reverse direction and using the SIA extension, but that may not
>>>>>>>
> be
> 
>>>>>>>>the most convenient solution.
>>>>>>>>
>>>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>>>
>>>>>very
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>useful
>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>
> When
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is not indirect, the need for this pointer does not seem to be
>>>>>>>
> as
> 
>>>>>clear,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>but
>>>>>>>>I can't see any harm in including it.
>>>>>>>>
>>>>>>>>Dave
>>>>>>>>
>>>>>>>>Stefan Santesson wrote:
>>>>>>>>All,
>>>>>>>>
>>>>>>>>I'm interested in the opinion from members on this list about
>>>>>>>
>>>>>discovery
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>of
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>>>
>>>>>>>>The problem is the following.
>>>>>>>>
>>>>>>>>The relying party (RP) needs to check validity of a certificate
>>>>>>>
> and
> 
>>>>>>finds
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>a
>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>>>which
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>this
>>>>>>>>particular case is either signed by another key of the CA
>>>>>>>
> (re-keyed
> 
>>>>>CA)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>or
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>another entity (indirect CRL).
>>>>>>>>
>>>>>>>>In this case the relying party needs to obtain the certificate
>>>>>>>
> of
> 
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>
> directory
> 
>>>>>>centric
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>solution this is retrieved from the directory, but what if such
>>>>>>>
>>>>>>directory
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is
>>>>>>>>not available or accessible.
>>>>>>>>
>>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>
> certificate
> 
>>>>>>unless
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the RP already have possession of it by some other means.
>>>>>>>>
>>>>>>>>Is seems that CRLs would need an AIA extension with the option
>>>>>>>
> to
> 
>>>>>point
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the location of the signers certificate in the same manner as is
>>>>>>>
>>>>>>possible
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>for certificates.
>>>>>>>>
>>>>>>>>Maybe AIA should be defined as both cert and CRL extension and
>>>>>>>
> not
> 
>>>>>only
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate extension as today.
>>>>>>>>
>>>>>>>>Thoughts and comments?
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>
>>>
>>>
> 
> 

Date: Fri, 15 Oct 2004 13:59:19 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: "'pkix'" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Santosh,

> Denis:
> 
> 1.  This is a good mechanism to start building the path for CRL signer. 

"There are none so deaf as those who will not hear".

This is not the point.

> If you have a better alternative for directory challenged environments, 

Your definition of "directory challenged environment" is:
"not use LDAP client or DAP or DSP to query for certificate"

I still wonder why you are making this restriction since LDAP is one of the 
only two methods that are supported in RFC 3280 to fetch certificates.

If I understand you correctly, for whatever reason (which one ?), you only 
want to use HTTP. Then I would think the solution would be to use the 
following draft: draft-ietf-pkix-certstore-http-08 and make sure that it 
will be usable with the current AIA and SIA extensions to fetch CRL issuers 
certificates.

> tell us.  Absent you showing that there is a mechanism for directory
> challenged environments that is as simple and that works, we can not have a
> fruitful dialog.

Please, do not reverse the question.

> 2.  Adding AIA to CRL does not impact interoperability, security or backward
> compatibility adversely.

It adds complexity with "still-another-extension" in CRLs and still another 
method for revocation checking.

> As to your argument, we could have used it few years back and not added AIA
> to the certificates either.

  ... but you didn't. This last argument does not make sense.

Denis

> -----Original Message-----
> From: Denis Pinks [mailto:[email-masked]] 
> Sent: Friday, October 15, 2004 2:45 AM
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> You are still trying to avoid to respond to my request. So my temporary 
> conclusion is that you have NOT demonstrated that your proposal is really 
> necessary and it is thus "yet-another-method".
> 
> 
>>Denis:
> 
> 
>>By directory challenged, I mean you do not use LDAP client or DAP or
>>DSP to query for certificate.
> 
> 
> RFC 3280. Page 46:
> 
>     The accessLocation
>     field is defined as a GeneralName, which can take several forms.
>     Where the information is available via http, ftp, or ldap,
>     accessLocation MUST be a uniformResourceIdentifier.  Where the
>     information is available via the Directory Access Protocol (DAP),
>     accessLocation MUST be a directoryName.
> 
> It is thus perfectly allowed and valid to use DAP or ldap.
> 
> 
>>The basic point is that if AIA or local store are the primary ways to
>>obtain certificates,
> 
> 
> No. Local store is of no use. AIA is one possibility, while the other one is
> 
> SIA.
> 
> 
>>since the CRL issuer certificate is not in any payload, AIA in CRL
>>helps obtain that certificate and start the path development process 
>>for the CRL certification path.
> 
> 
> No. You can use AIA or SIA in CA certificates, or AIA in leaf certificate.
> 
> Denis
> 
> 
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: Thursday, October 14, 2004 11:13 AM
>>To: Santosh Chokhani
>>Cc: 'pkix'
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Santosh,
>>
>>
>>
>>>Denis:
>>
>>
>>>With the three assumptions/constraints I provided, how would you 
>>>locate the CRL issuer certificate for the two examples using 3280 
>>>extensions and without putting AIA in the CRL?
>>
>>
>>As far as I understand, the three assumptions are:
>>
>>1.  You are directory challenged; and
>>     [I do not understand what this means]
>>2.  You use AIA to develop the path; and
>>     [It does not matter]
>>3.  You develop the path from the end entity to trust anchor
>>     [Could also be the contrary].
>>
>>If this is not correct, thus please correct.
>>
>>Then my request is: "using ANY OF the current extensions that are
>>defined in
>>
>>RFC 3280", which includes SIA.
>>
>>In your explanations  you said :
>>"if you do no deal with SIA et. al"
>>
>>This last assumption is neither part of the three assumptions and does
>>not
>>conform to my request.
>>
>>Denis
>>
>>
>>
>>>That is my point.
>>>
>>>-----Original Message-----
>>>From: Denis Pinkas [mailto:[email-masked]]
>>>Sent: Thursday, October 14, 2004 6:22 AM
>>>To: Santosh Chokhani
>>>Cc: 'pkix'
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>
>>>Santosh,
>>>
>>>You misread my request. I said:
>>>
>>>"For the time being, I would like that you provide an example where, 
>>>when using the current extensions that are defined in RFC 3280, it 
>>>will NOT be possible to locate a CRL Issuer certificate."
>>>
>>>Maybe I would have needed to be clearer and say :
>>>
>>>"For the time being, I would like that you provide an example where, 
>>>when using ANY OF the current extensions that are defined in RFC 3280, 
>>>it will NOT be possible to locate a CRL Issuer certificate."
>>>
>>>The examples you provide below do not fulfil this request.
>>>
>>>The assumption is that there exists a path to be tested for revocation
>>>checking (and that it does not matter to know which way it has been 
>>>constructed).
>>>
>>>I am not saying that using AIA in CRL might not be useful, but I am 
>>>still lacking the demonstration that there would be no other way.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>
>>>>Denis:
>>>>
>>>>Two examples are very simple: one for direct CRL Issuer and one for
>>>>Indirect CRL Issuer.
>>>>
>>>>Let us make the following assumptions that Stefan was making:
>>>>
>>>>1.  You are directory challenged; and
>>>>2.  You use AIA to develop the path; and
>>>>3.  You develop the path from the end entity to trust anchor.
>>>>
>>>
>>>>From what I know of MS CAPI, these are reasonable
>>>
>>>
>>>>assumptions/constraints.
>>>>
>>>>Now the examples.
>>>>
>>>>Example 1: Direct CRL Issuer
>>>>
>>>>The certificate trust path is:
>>>>Root --> CA1 --> CA 2, old key --> Denis
>>>>
>>>>The CRL trust path is:
>>>>Root --> CA1 --> CA 2, new key --> CRL
>>>>
>>>>(Note: We do not do self-issued certificate since there is no simple,
>>>>secure way to check their revocation status).
>>>>
>>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>>straightforward.  How would you find it if you do no deal with SIA 
>>>>et. al.
>>>>
>>>>Example 2: Indirect CRL Issuer
>>>>
>>>>The certificate trust path is:
>>>>Root --> CA1 --> CA 2 --> Denis
>>>>(Note: Denis's certificate points to CRL DP of an indirect CRL issued
>>>>by CAI.
>>>>
>>>>The CRL trust path is:
>>>>Root --> CAI --> CRL
>>>>
>>>>Now, with AIA in CRL, finding the CAI certificate is straightforward.
>>>>How would you find it if you do no deal with SIA et. al.
>>>>
>>>>In addition to the need cited above, please note that the extension
>>>>semantics does not change, it does not hinder any interoperability, 
>>>>and it does not break any backward compatibility.  So, what if I 
>>>>wanted to use this extension in the CRL.  It does no harm to other 
>>>>relying parties.
>>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>
>>>>Stefan,
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>Denis,
>>>>
>>>>
>>>>>I'm not sure what you mean.
>>>>
>>>>
>>>>For the time being, I would like that you provide an example where,
>>>>when using the current extensions that are defined in RFC 3280, it 
>>>>will NOT be possible to locate a CRL Issuer certificate.
>>>>
>>>>If you are able to provide that example, then it would justify the
>>>>need for an extension at least for one case. Then we can see what 
>>>>that case is.
>>>>
>>>>I am awaiting that example.
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>I conclude that I agree with Santosh.
>>>>>
>>>>>The debate is still open... Feel free to express your opinion.
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>>Sent: den 13 oktober 2004 16:34
>>>>>>To: Stefan Santesson
>>>>>>Cc: Santosh Chokhani; pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>You are making a conclusion without letting me the time to respond. 
>>>>>>I will need more time to look at the pictures (and understand 
>>>>>>them).
>>>>>>
>>>>>>For the time being, I am still reluctant to accept
>>>>>
>>>>>"yet-another-method".
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>We already have too many.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Santosh,
>>>>>>>
>>>>>>>I conclude that we are in complete and total agreement. The 
>>>>>>>question is how to go about this.
>>>>>>
>>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>>>would hopefully just be a minor change.
>>>>>>
>>>>>>This is exactly what I feared.
>>>>>>
>>>>>>We usually end-up with a "minor change" in an extension without
>>>>>>saying cleary how and when it shall/should be used.
>>>>>>
>>>>>>I still have in mind that:
>>>>>>
>>>>>>1) a certification path must first be constructed,
>>>>>>2) then the revocation checking of that path must be done.
>>>>>>
>>>>>>This means that information about CRL issuers certificates
>>>>>>locations
>>>>>
>>>>>may
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>certainly be found in that chain. If not, I would like an example.
>>>>>>
>>>>>>Denis
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>It would not change the definition of AIA just add that it can be
>>>>>>
>>>>>used
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>also as CRL extension and list eventual restrictions and guidance 
>>>>>>for
>>>>>
>>>>>use
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>with CRLs.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>>To: 'pkix'
>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan:
>>>>>>>>
>>>>>>>>In terms of certificate discovery, your proposal for AIA in CRL
>>>>>>>>is
>>>>>>>
>>>>>more
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>robust.  The whole idea of self-issued key rollover certificates
>>>>>>>>and
>>>>>>>
>>>>>>then
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>using the new key to issue CRL is fraught with security problems.
>>>>>>>>A secure solution would be one where the new key is certified by 
>>>>>>>>the parent
>>>>>>>
>>>>>CA.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>In
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>that case to obtain the new certificate, you could use AIA in
>>>>>>>>CRL.
>>>>>>>>
>>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>>>>CRL.  The AIA
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>gets you started for the indirect CRL issuer certification path 
>>>>>>>>and
>>>>>>>
>>>>>you
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>are
>>>>>>>>in business.
>>>>>>>>
>>>>>>>>-----Original Message-----
>>>>>>>>From: [email-masked]
>>>>>>>
>>>>>[mailto:[email-masked]]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>On
>>>>>>>>Behalf Of Stefan Santesson
>>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>>To: David A. Cooper
>>>>>>>>Cc: pkix
>>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>David,
>>>>>>>>
>>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>>I did misread your pictures.
>>>>>>>>
>>>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>>>
>>>>>3280,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>either the CRL issuer certificate itself, or the location of the
>>>>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>>>>the validating
>>>>>>>
>>>>>>party
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in some cases, but not in others?
>>>>>>>>
>>>>>>>>Can we also conclude that there is no real discovery solution for
>>>>>>>
>>>>>>indirect
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRLs?
>>>>>>>>
>>>>>>>>Do you then agree then that it could be appropriate to allow AIA 
>>>>>>>>as
>>>>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>________________________________________
>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>I believe that you are misinterpreting the figures.  They really 
>>>>>>>>do represent three different cases, not three different 
>>>>>>>>certification
>>>>>>>
>>>>>paths
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>that have been constructed through the same PKI architecture.
>>>>>>>>
>>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>>
>>>>>certificates.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>The
>>>>>>>>Root CA has issued a certificate to CA 1's new key, but not its 
>>>>>>>>old
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>(either the Root CA never issued a certificate to CA 1's old key 
>>>>>>>>or
>>>>>>>
>>>>>that
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate has expired).
>>>>>>>>
>>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>>>>key, but not its
>>>>>>>
>>>>>new
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>key.
>>>>>>>>
>>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a new
>>>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>>>self-issued
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>rollover certificates.
>>>>>>>>
>>>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>>>
>>>>>>generated
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>self-issued key rollover certificates upon key rollover and then
>>>>>>>>had
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>Root CA issue a CA certificate to its new key.  In this case, as
>>>>>>>>you suggest, any of the certification paths from figures 1, 2, or 
>>>>>>>>3
>>>>>>>
>>>>>could be
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>constructed.
>>>>>>>>
>>>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>>>
>>>>>specified
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>in
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>>>
>>>>>>Policy":
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>The authorityInfoAccess extension uses URIs for two purposes.
>>>>>>>>When
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>>specifies
>>>>>>>
>>>>>>where
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>>found.
>>>>>>>
>>>>>If
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>LDAP
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>>>
>>>>>>relevant
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates and specify the directory attribute in which the
>>>>>>>
>>>>>>certificates
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>are located. If the directory in which the certificates are
>>>>>>>>stored
>>>>>>>
>>>>>>expects
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the "binary" option to be specified, then the attribute type must
>>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI 
>>>>>>>>must
>>>>>>>
>>>>>point to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>a
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>file that has an extension of ".p7c" that contains a certs-only 
>>>>>>>>CMS message (see RFC 2633). The CMS message should include all
>>>>>>>>certificates
>>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the issuer of this certificate, but must at least contain all
>>>>>>>
>>>>>>certificates
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>>>public
>>>>>>>
>>>>>key
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>may
>>>>>>>>be used to verify the signature on this certificate. .... For a
>>>>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>>>>appear as the
>>>>>>>
>>>>>access
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>>
>>>>>id-ad-caIssuers
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>access
>>>>>>>>method is used are:
>>>>>>>
>>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cAC
>>>>>>>e
>>>>>>>r
>>>>>>>t
>>>>>>>i
>>>>>>
>>>>>fi
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>ca
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>te
>>>>>>>>,crossCertificatePair
>>>>>>>
>>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
>>>>>>>f
>>>>>>>i
>>>>>>>c
>>>>>>>a
>>>>>>
>>>>>te
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>;b
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in
>>>>>>>>ary,crossCertificatePair;binary
>>>>>>>
>>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIs
>>>>>>>s
>>>>>>>u
>>>>>>>e
>>>>>>>d
>>>>>>
>>>>>To
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Go
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>od
>>>>>>>>CA.p7c
>>>>>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>>>>>information is to be located, so there is no requirement for the
>>>>>>>
>>>>>relying
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>party to try to figure out where information is located.
>>>>>>>>
>>>>>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>>>>>certificates issued to the CA identified in the issuer field of 
>>>>>>>>the certificate.
>>>>>>>>
>>>>>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>>>>>attributes of the directory entry of the CA identified in the 
>>>>>>>>issuer field of
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's
>>>>>>>>self-
>>>>>>>
>>>>>>issued
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>>
>>>>>>>>Dave
>>>>>>>>
>>>>>>>>
>>>>>>>>Stefan Santesson wrote:
>>>>>>>>
>>>>>>>>David,
>>>>>>>>
>>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>>
>>>>>>>>I have some comments and questions on this.
>>>>>>>>
>>>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>>>where
>>>>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>self
>>>>>>>>issued certificate is inserted into the path, you are likely to
>>>>>>>>find
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>CRL
>>>>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>>>>
>>>>>and
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>>
>>>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>>>
>>>>>>different
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>path building strategies. An application that has access locally 
>>>>>>>>to
>>>>>>>
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>chaining options may however still choose path 2 for the certs
>>>>>>>>and
>>>>>>>
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>1
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>for the CRL independent of each other (which I think figure 3 
>>>>>>>>tries
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>describe)
>>>>>>>>
>>>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>>>
>>>>>familiar
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>with doesn't use AIA to describe a directory entry where it is 
>>>>>>>>left
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>validation application logic to be intelligent enough to find
>>>>>>>
>>>>>>appropriate
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certificate data from the directory. The model I'm familiar with 
>>>>>>>>is
>>>>>>>
>>>>>when
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>AIA URL explicitly identifies the exact location of the 
>>>>>>>>appropriate
>>>>>>>
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate file, relieving the validation software from complex
>>>>>>>>information queries. If just location of explicit certificate 
>>>>>>>>files are
>>>>>>>
>>>>>identified
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>>>
>>>>>signer
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>cert
>>>>>>>>if this is different from the CA certificate. This is also the
>>>>>>>
>>>>>problem
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>with
>>>>>>>>Denis proposal.
>>>>>>>>
>>>>>>>>I think we share the basic conclusion that the ability to locate
>>>>>>>>the
>>>>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>signer certificate directly through the CRL could be very useful.
>>>>>>>>At
>>>>>>>
>>>>>>least
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>in the case of indirect CRL but it could also be proven very 
>>>>>>>>useful
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CA
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>re-keying scenarios.
>>>>>>>>
>>>>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>>>>
>>>>>its
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>>
>>>>>critical).
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>It
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>would present a very clear and uncomplicated logic to certificate
>>>>>>>>validating applications in many cases.
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>________________________________________
>>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>>To: Stefan Santesson
>>>>>>>>Cc: pkix
>>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>>
>>>>>>>>Stefan,
>>>>>>>>
>>>>>>>>I think what you are proposing is a good idea.  In most cases, 
>>>>>>>>path discovery algorithms assume that both the trust anchor (or 
>>>>>>>>trust
>>>>>>>
>>>>>>anchors)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>>>case,
>>>>>>>
>>>>>one
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>may
>>>>>>>>need to construct a certification path without a priori access to
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>end
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>entity certificate (the one with the subject public key
>>>>>>>
>>>>>corresponding to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>>
>>>>>pointer) in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL would provide the relying party with a simple way to obtain 
>>>>>>>>the
>>>>>>>
>>>>>end
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>entity certificate for the CRL signing key's certification path. 
>>>>>>>>On
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>>
>>>>>construct
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>certification path even without an AIA extension in the CRL, so
>>>>>>>>long
>>>>>>>
>>>>>as
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>it
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>>
>>>>>>>>In each of these scenarios, the CA has performed key rollover and
>>>>>>>>is
>>>>>>>
>>>>>>only
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>>>
>>>>>>however,
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>if
>>>>>>>>the CA simply choose to use different keys to sign certificates 
>>>>>>>>and
>>>>>>>
>>>>>CRLs
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>for
>>>>>>>>some other reason.
>>>>>>>>
>>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>>certification
>>>>>>>
>>>>>path
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>for
>>>>>>>>the CRL signing key would just be a subset of the certification
>>>>>>>>path
>>>>>>>
>>>>>for
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>>>
>>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>>
>>>>>necessary
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>>building
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certification path to the EE certificate, however, the relying
>>>>>>>>party
>>>>>>>
>>>>>>will
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>>>>>certificate.  This AIA extension will point to a location 
>>>>>>>>containing
>>>>>>>
>>>>>all
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>issued
>>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>>>>
>>>>>though
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>self-issued certificate would not be part of the certification 
>>>>>>>>path
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>>during
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>>circular dependency issues in figure 2, but that is another 
>>>>>>>>issue.)
>>>>>>>>
>>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>>resembled
>>>>>>>
>>>>>>figure
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>>
>>>>>location
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>>>
>>>>>>downloaded
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>these certificates, it would obtain both of the certificates 
>>>>>>>>issued
>>>>>>>
>>>>>by
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>the
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>>>
>>>>>validate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>the
>>>>>>>>CRL signing key.
>>>>>>>>
>>>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>>>
>>>>>>indirect
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>>>>certificates pointed
>>>>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>by
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the AIA extension in the EE certificate would not include the
>>>>>>>
>>>>>>certificate
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>of
>>>>>>>>the CRL signer.  One could find this certificate by building in 
>>>>>>>>the reverse direction and using the SIA extension, but that may 
>>>>>>>>not be the most convenient solution.
>>>>>>>>
>>>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>>>
>>>>>very
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>useful
>>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>>When
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>>>>
>>>>>clear,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>but
>>>>>>>>I can't see any harm in including it.
>>>>>>>>
>>>>>>>>Dave
>>>>>>>>
>>>>>>>>Stefan Santesson wrote:
>>>>>>>>All,
>>>>>>>>
>>>>>>>>I'm interested in the opinion from members on this list about
>>>>>>>
>>>>>discovery
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>of
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>>>
>>>>>>>>The problem is the following.
>>>>>>>>
>>>>>>>>The relying party (RP) needs to check validity of a certificate 
>>>>>>>>and
>>>>>>>
>>>>>>finds
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>a
>>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>>>which
>>>>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>this
>>>>>>>>particular case is either signed by another key of the CA 
>>>>>>>>(re-keyed
>>>>>>>
>>>>>CA)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>or
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>another entity (indirect CRL).
>>>>>>>>
>>>>>>>>In this case the relying party needs to obtain the certificate of
>>>>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>CRL
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>>directory
>>>>>>>
>>>>>>centric
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>solution this is retrieved from the directory, but what if such
>>>>>>>
>>>>>>directory
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>is
>>>>>>>>not available or accessible.
>>>>>>>>
>>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>>certificate
>>>>>>>
>>>>>>unless
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the RP already have possession of it by some other means.
>>>>>>>>
>>>>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>>>>
>>>>>point
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>to
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>the location of the signers certificate in the same manner as is
>>>>>>>
>>>>>>possible
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>>for certificates.
>>>>>>>>
>>>>>>>>Maybe AIA should be defined as both cert and CRL extension and
>>>>>>>>not
>>>>>>>
>>>>>only
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>>certificate extension as today.
>>>>>>>>
>>>>>>>>Thoughts and comments?
>>>>>>>>
>>>>>>>>Stefan Santesson
>>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>
>>
>>
> 
> 
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Fri, 15 Oct 2004 12:10:13 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>, "Santosh Chokhani" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

Denis,

Unfortunately I fail to understand your questions, issues and requests.

It would be very useful if you could explain how current mechanisms can
be used in a simple and straightforward manner to discover CRL signer
certificates in ALL the use cases discussed, mainly re-keyed CA and
indirect CRLs.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Denis Pinkas
> Sent: den 14 oktober 2004 17:13
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> > Denis:
> 
> > With the three assumptions/constraints I provided, how would you
locate
> the
> > CRL issuer certificate for the two examples using 3280 extensions
and
> > without putting AIA in the CRL?
> 
> As far as I understand, the three assumptions are:
> 
> 1.  You are directory challenged; and
>      [I do not understand what this means]
> 2.  You use AIA to develop the path; and
>      [It does not matter]
> 3.  You develop the path from the end entity to trust anchor
>      [Could also be the contrary].
> 
> If this is not correct, thus please correct.
> 
> Then my request is: "using ANY OF the current extensions that are
defined
> in
> RFC 3280", which includes SIA.
> 
> In your explanations  you said :
> "if you do no deal with SIA et. al"
> 
> This last assumption is neither part of the three assumptions and does
not
> conform to my request.
> 
> Denis
> 
> > That is my point.
> >
> > -----Original Message-----
> > From: Denis Pinkas [mailto:[email-masked]]
> > Sent: Thursday, October 14, 2004 6:22 AM
> > To: Santosh Chokhani
> > Cc: 'pkix'
> > Subject: Re: Signer certificate discovery for CRLs
> >
> >
> > Santosh,
> >
> > You misread my request. I said:
> >
> > "For the time being, I would like that you provide an example where,
> when
> > using the current extensions that are defined in RFC 3280, it will
NOT
> be
> > possible to locate a CRL Issuer certificate."
> >
> > Maybe I would have needed to be clearer and say :
> >
> > "For the time being, I would like that you provide an example where,
> when
> > using ANY OF the current extensions that are defined in RFC 3280, it
> will
> > NOT be possible to locate a CRL Issuer certificate."
> >
> > The examples you provide below do not fulfil this request.
> >
> > The assumption is that there exists a path to be tested for
revocation
> > checking (and that it does not matter to know which way it has been
> > constructed).
> >
> > I am not saying that using AIA in CRL might not be useful, but I am
> still
> > lacking the demonstration that there would be no other way.
> >
> > Denis
> >
> >
> >
> >>Denis:
> >>
> >>Two examples are very simple: one for direct CRL Issuer and one for
> >>Indirect CRL Issuer.
> >>
> >>Let us make the following assumptions that Stefan was making:
> >>
> >>1.  You are directory challenged; and
> >>2.  You use AIA to develop the path; and
> >>3.  You develop the path from the end entity to trust anchor.
> >>
> >>From what I know of MS CAPI, these are reasonable
> >>assumptions/constraints.
> >>
> >>Now the examples.
> >>
> >>Example 1: Direct CRL Issuer
> >>
> >>The certificate trust path is:
> >>Root --> CA1 --> CA 2, old key --> Denis
> >>
> >>The CRL trust path is:
> >>Root --> CA1 --> CA 2, new key --> CRL
> >>
> >>(Note: We do not do self-issued certificate since there is no
simple,
> >>secure way to check their revocation status).
> >>
> >>Now, with AIA in CRL, finding the CA2, new key certificate is
> >>straightforward.  How would you find it if you do no deal with SIA
et.
> >>al.
> >>
> >>Example 2: Indirect CRL Issuer
> >>
> >>The certificate trust path is:
> >>Root --> CA1 --> CA 2 --> Denis
> >>(Note: Denis's certificate points to CRL DP of an indirect CRL
issued
> >>by CAI.
> >>
> >>The CRL trust path is:
> >>Root --> CAI --> CRL
> >>
> >>Now, with AIA in CRL, finding the CAI certificate is
straightforward.
> >>How would you find it if you do no deal with SIA et. al.
> >>
> >>In addition to the need cited above, please note that the extension
> >>semantics does not change, it does not hinder any interoperability,
> >>and it does not break any backward compatibility.  So, what if I
> >>wanted to use this extension in the CRL.  It does no harm to other
> >>relying parties.
> >>
> >>-----Original Message-----
> >>From: [email-masked]
> >>[mailto:[email-masked]] On Behalf Of Denis Pinkas
> >>Sent: Wednesday, October 13, 2004 11:01 AM
> >>To: Stefan Santesson
> >>Cc: Santosh Chokhani; pkix
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>
> >>
> >>Stefan,
> >>
> >>
> >>
> >>>Denis,
> >>
> >>
> >>>I'm not sure what you mean.
> >>
> >>
> >>For the time being, I would like that you provide an example where,
> >>when
> >>using the current extensions that are defined in RFC 3280, it will
NOT
> be
> >>possible to locate a CRL Issuer certificate.
> >>
> >>If you are able to provide that example, then it would justify the
> >>need for
> >>an extension at least for one case. Then we can see what that case
is.
> >>
> >>I am awaiting that example.
> >>
> >>Denis
> >>
> >>
> >>
> >>
> >>>I conclude that I agree with Santosh.
> >>>
> >>>The debate is still open... Feel free to express your opinion.
> >>>
> >>>Stefan Santesson
> >>>Microsoft Security Center of Excellence (SCOE)
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>>-----Original Message-----
> >>>>From: Denis Pinkas [mailto:[email-masked]]
> >>>>Sent: den 13 oktober 2004 16:34
> >>>>To: Stefan Santesson
> >>>>Cc: Santosh Chokhani; pkix
> >>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>
> >>>>Stefan,
> >>>>
> >>>>You are making a conclusion without letting me the time to
respond. I
> >>>>will need more time to look at the pictures (and understand them).
> >>>>
> >>>>For the time being, I am still reluctant to accept
> >>>
> >>>"yet-another-method".
> >>>
> >>>
> >>>
> >>>>We already have too many.
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>Santosh,
> >>>>>
> >>>>>I conclude that we are in complete and total agreement.
> >>>>>The question is how to go about this.
> >>>>
> >>>>>Could we do this amendment to RFC 3280 in its next revision? It
> >>>>>would hopefully just be a minor change.
> >>>>
> >>>>This is exactly what I feared.
> >>>>
> >>>>We usually end-up with a "minor change" in an extension without
> >>>>saying cleary how and when it shall/should be used.
> >>>>
> >>>>I still have in mind that:
> >>>>
> >>>>1) a certification path must first be constructed,
> >>>>2) then the revocation checking of that path must be done.
> >>>>
> >>>>This means that information about CRL issuers certificates
locations
> >>>
> >>>may
> >>>
> >>>
> >>>
> >>>>certainly be found in that chain. If not, I would like an example.
> >>>>
> >>>>Denis
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>It would not change the definition of AIA just add that it can be
> >>>>
> >>>used
> >>>
> >>>
> >>>
> >>>>also as CRL extension and list eventual restrictions and guidance
for
> >>>
> >>>use
> >>>
> >>>
> >>>
> >>>>with CRLs.
> >>>>
> >>>>
> >>>>
> >>>>>Stefan Santesson
> >>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>-----Original Message-----
> >>>>>>From: [email-masked]
> >>>>>
> >>>[mailto:[email-masked]]
> >>>
> >>>
> >>>
> >>>>>>On Behalf Of Santosh Chokhani
> >>>>>>Sent: den 13 oktober 2004 04:33
> >>>>>>To: 'pkix'
> >>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>
> >>>>>>Stefan:
> >>>>>>
> >>>>>>In terms of certificate discovery, your proposal for AIA in CRL
is
> >>>>>
> >>>more
> >>>
> >>>
> >>>
> >>>>>>robust.  The whole idea of self-issued key rollover certificates
> >>>>>>and
> >>>>>
> >>>>then
> >>>>
> >>>>
> >>>>
> >>>>>>using the new key to issue CRL is fraught with security
problems.
> >>>>>>A secure solution would be one where the new key is certified by
> >>>>>>the parent
> >>>>>
> >>>CA.
> >>>
> >>>
> >>>
> >>>>In
> >>>>
> >>>>
> >>>>
> >>>>>>that case to obtain the new certificate, you could use AIA in
CRL.
> >>>>>>
> >>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
> >>>>>>certificate in question points to the indirect CRL.  You get
that
> >>>>>>CRL.  The AIA
> >>>>>
> >>>in
> >>>
> >>>
> >>>
> >>>>CRL
> >>>>
> >>>>
> >>>>
> >>>>>>gets you started for the indirect CRL issuer certification path
and
> >>>>>
> >>>you
> >>>
> >>>
> >>>
> >>>>>>are
> >>>>>>in business.
> >>>>>>
> >>>>>>-----Original Message-----
> >>>>>>From: [email-masked]
> >>>>>
> >>>[mailto:[email-masked]]
> >>>
> >>>
> >>>
> >>>>>>On
> >>>>>>Behalf Of Stefan Santesson
> >>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
> >>>>>>To: David A. Cooper
> >>>>>>Cc: pkix
> >>>>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>David,
> >>>>>>
> >>>>>>Thanks for the clarifications, they make sense.
> >>>>>>I did misread your pictures.
> >>>>>>
> >>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
> >>>>>
> >>>3280,
> >>>
> >>>
> >>>
> >>>>>>either the CRL issuer certificate itself, or the location of the
> >>>>>>CRL issuer certificate, will be clearly identified/available for
> >>>>>>the validating
> >>>>>
> >>>>party
> >>>>
> >>>>
> >>>>
> >>>>>>in some cases, but not in others?
> >>>>>>
> >>>>>>Can we also conclude that there is no real discovery solution
for
> >>>>>
> >>>>indirect
> >>>>
> >>>>
> >>>>
> >>>>>>CRLs?
> >>>>>>
> >>>>>>Do you then agree then that it could be appropriate to allow AIA
as
> >>>>>
> >>>a
> >>>
> >>>
> >>>
> >>>>CRL
> >>>>
> >>>>
> >>>>
> >>>>>>extension to facilitate discovery of CRL signer certificate?
> >>>>>>
> >>>>>>Stefan Santesson
> >>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>
> >>>>>>________________________________________
> >>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>Sent: den 12 oktober 2004 21:14
> >>>>>>To: Stefan Santesson
> >>>>>>Cc: pkix
> >>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>Stefan,
> >>>>>>
> >>>>>>I believe that you are misinterpreting the figures.  They really
do
> >>>>>>represent three different cases, not three different
certification
> >>>>>
> >>>paths
> >>>
> >>>
> >>>
> >>>>>>that have been constructed through the same PKI architecture.
> >>>>>>
> >>>>>>In figure 1, CA 1 has generated self-issued key rollover
> >>>>>
> >>>certificates.
> >>>
> >>>
> >>>
> >>>>>>The
> >>>>>>Root CA has issued a certificate to CA 1's new key, but not its
old
> >>>>>
> >>>key
> >>>
> >>>
> >>>
> >>>>>>(either the Root CA never issued a certificate to CA 1's old key
or
> >>>>>
> >>>that
> >>>
> >>>
> >>>
> >>>>>>certificate has expired).
> >>>>>>
> >>>>>>In figure 2, CA 2 has also generated self-issued key rollover
> >>>>>>certificates. The Root CA has issued a certificate to CA 2's old
> >>>>>>key, but not its
> >>>>>
> >>>new
> >>>
> >>>
> >>>
> >>>>>>key.
> >>>>>>
> >>>>>>In figure 3, when CA 3 performed key rollover, it requested a
new
> >>>>>>CA certificate from the Root CA.  CA 3 did not generated
> >>>>>>self-issued
> >>>>>
> >>>key
> >>>
> >>>
> >>>
> >>>>>>rollover certificates.
> >>>>>>
> >>>>>>Of course, another realistic scenario would be one in which a CA
> >>>>>
> >>>>generated
> >>>>
> >>>>
> >>>>
> >>>>>>self-issued key rollover certificates upon key rollover and then
> >>>>>>had
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>>>Root CA issue a CA certificate to its new key.  In this case, as
> >>>>>>you suggest, any of the certification paths from figures 1, 2,
or 3
> >>>>>
> >>>could be
> >>>
> >>>
> >>>
> >>>>>>constructed.
> >>>>>>
> >>>>>>As for the contents of the AIA extension, here is what I have
> >>>>>
> >>>specified
> >>>
> >>>
> >>>
> >>>>in
> >>>>
> >>>>
> >>>>
> >>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
> >>>>>
> >>>>Policy":
> >>>>
> >>>>
> >>>>
> >>>>>>The authorityInfoAccess extension uses URIs for two purposes.
When
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>>>id-ad-caIssuers access method is used, the access location
> >>>>>>specifies
> >>>>>
> >>>>where
> >>>>
> >>>>
> >>>>
> >>>>>>certificates issued to the issuer of the certificate may be
found.
> >>>>>
> >>>If
> >>>
> >>>
> >>>
> >>>>LDAP
> >>>>
> >>>>
> >>>>
> >>>>>>is used, the URI must include the DN of the entry containing the
> >>>>>
> >>>>relevant
> >>>>
> >>>>
> >>>>
> >>>>>>certificates and specify the directory attribute in which the
> >>>>>
> >>>>certificates
> >>>>
> >>>>
> >>>>
> >>>>>>are located. If the directory in which the certificates are
stored
> >>>>>
> >>>>expects
> >>>>
> >>>>
> >>>>
> >>>>>>the "binary" option to be specified, then the attribute type
must
> >>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI
must
> >>>>>
> >>>point to
> >>>
> >>>
> >>>
> >>>>a
> >>>>
> >>>>
> >>>>
> >>>>>>file that has an extension of ".p7c" that contains a certs-only
CMS
> >>>>>>message (see RFC 2633). The CMS message should include all
> >>>>>>certificates
> >>>>>
> >>>issued
> >>>
> >>>
> >>>
> >>>>to
> >>>>
> >>>>
> >>>>
> >>>>>>the issuer of this certificate, but must at least contain all
> >>>>>
> >>>>certificates
> >>>>
> >>>>
> >>>>
> >>>>>>issued to the issuer of this certificate in which the subject
> >>>>>>public
> >>>>>
> >>>key
> >>>
> >>>
> >>>
> >>>>>>may
> >>>>>>be used to verify the signature on this certificate. .... For a
> >>>>>>certificate issued by "Good CA", some examples of URIs that may
> >>>>>>appear as the
> >>>>>
> >>>access
> >>>
> >>>
> >>>
> >>>>>>location in an authorityInfoAccess extension when the
> >>>>>
> >>>id-ad-caIssuers
> >>>
> >>>
> >>>
> >>>>>>access
> >>>>>>method is used are:
> >>>>>
>
>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACe
r
> >>>>>t
> >>>>>i
> >>>>
> >>>fi
> >>>
> >>>
> >>>
> >>>>ca
> >>>>
> >>>>
> >>>>
> >>>>>>te
> >>>>>>,crossCertificatePair
> >>>>>
>
>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertif
i
> >>>>>c
> >>>>>a
> >>>>
> >>>te
> >>>
> >>>
> >>>
> >>>>;b
> >>>>
> >>>>
> >>>>
> >>>>>>in
> >>>>>>ary,crossCertificatePair;binary
> >>>>>
>
>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIss
u
> >>>>>e
> >>>>>d
> >>>>
> >>>To
> >>>
> >>>
> >>>
> >>>>Go
> >>>>
> >>>>
> >>>>
> >>>>>>od
> >>>>>>CA.p7c
> >>>>>>For both LDAP and HTTP, the URI provides the exact location
where
> >>>>>>information is to be located, so there is no requirement for the
> >>>>>
> >>>relying
> >>>
> >>>
> >>>
> >>>>>>party to try to figure out where information is located.
> >>>>>>
> >>>>>>The HTTP URI points to a certs-only CMS message that includes
all
> >>>>>>certificates issued to the CA identified in the issuer field of
the
> >>>>>>certificate.
> >>>>>>
> >>>>>>The LDAP URI points to the cACertificate and
crossCertificatePair
> >>>>>>attributes of the directory entry of the CA identified in the
> >>>>>>issuer field of
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>>>certificate.  These two attributes together hold all of the
> >>>>>
> >>>certificates
> >>>
> >>>
> >>>
> >>>>>>issued to the CA:  the cACertificate attribute holds the CA's
self-
> >>>>>
> >>>>issued
> >>>>
> >>>>
> >>>>
> >>>>>>certificates and the crossCertificatePair attribute holds the
> >>>>>>cross-certificates issued to the CA by other CAs.
> >>>>>>
> >>>>>>Dave
> >>>>>>
> >>>>>>
> >>>>>>Stefan Santesson wrote:
> >>>>>>
> >>>>>>David,
> >>>>>>
> >>>>>>Thanks for these good thoughts and very useful scenarios.
> >>>>>>
> >>>>>>I have some comments and questions on this.
> >>>>>>
> >>>>>>First of all we can conclude that in some scenarios (figure 1)
> >>>>>>where
> >>>>>
> >>>a
> >>>
> >>>
> >>>
> >>>>>>self
> >>>>>>issued certificate is inserted into the path, you are likely to
> >>>>>>find
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>>>CRL
> >>>>>>issuer cert in the path. (given that the new CA have a common
key
> >>>>>
> >>>and
> >>>
> >>>
> >>>
> >>>>>>certificate for cert signing and CRL signing).
> >>>>>>
> >>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
> >>>>>
> >>>>different
> >>>>
> >>>>
> >>>>
> >>>>>>path building strategies. An application that has access locally
to
> >>>>>
> >>>all
> >>>
> >>>
> >>>
> >>>>>>chaining options may however still choose path 2 for the certs
and
> >>>>>
> >>>path
> >>>
> >>>
> >>>
> >>>>1
> >>>>
> >>>>
> >>>>
> >>>>>>for the CRL independent of each other (which I think figure 3
tries
> >>>>>
> >>>to
> >>>
> >>>
> >>>
> >>>>>>describe)
> >>>>>>
> >>>>>>Another comment is the structure of AIA extensions. The use I'm
> >>>>>
> >>>familiar
> >>>
> >>>
> >>>
> >>>>>>with doesn't use AIA to describe a directory entry where it is
left
> >>>>>
> >>>to
> >>>
> >>>
> >>>
> >>>>the
> >>>>
> >>>>
> >>>>
> >>>>>>validation application logic to be intelligent enough to find
> >>>>>
> >>>>appropriate
> >>>>
> >>>>
> >>>>
> >>>>>>certificate data from the directory. The model I'm familiar with
is
> >>>>>
> >>>when
> >>>
> >>>
> >>>
> >>>>>>the
> >>>>>>AIA URL explicitly identifies the exact location of the
appropriate
> >>>>>
> >>>CA
> >>>
> >>>
> >>>
> >>>>>>certificate file, relieving the validation software from complex
> >>>>>>information queries. If just location of explicit certificate
files
> >>>>>>are
> >>>>>
> >>>identified
> >>>
> >>>
> >>>
> >>>>>>through AIA, the presence of an AIA may not help finding the CRL
> >>>>>
> >>>signer
> >>>
> >>>
> >>>
> >>>>>>cert
> >>>>>>if this is different from the CA certificate. This is also the
> >>>>>
> >>>problem
> >>>
> >>>
> >>>
> >>>>>>with
> >>>>>>Denis proposal.
> >>>>>>
> >>>>>>I think we share the basic conclusion that the ability to locate
> >>>>>>the
> >>>>>
> >>>CRL
> >>>
> >>>
> >>>
> >>>>>>signer certificate directly through the CRL could be very
useful.
> >>>>>>At
> >>>>>
> >>>>least
> >>>>
> >>>>
> >>>>
> >>>>>>in the case of indirect CRL but it could also be proven very
useful
> >>>>>
> >>>in
> >>>
> >>>
> >>>
> >>>>CA
> >>>>
> >>>>
> >>>>
> >>>>>>re-keying scenarios.
> >>>>>>
> >>>>>>The easiest solution would probably be to allow AIA to be used
in
> >>>>>
> >>>its
> >>>
> >>>
> >>>
> >>>>>>current shape and structure as a CRL extension (MUST NOT be
> >>>>>
> >>>critical).
> >>>
> >>>
> >>>
> >>>>It
> >>>>
> >>>>
> >>>>
> >>>>>>would present a very clear and uncomplicated logic to
certificate
> >>>>>>validating applications in many cases.
> >>>>>>
> >>>>>>Stefan Santesson
> >>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>
> >>>>>>________________________________________
> >>>>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>>>Sent: den 7 oktober 2004 18:35
> >>>>>>To: Stefan Santesson
> >>>>>>Cc: pkix
> >>>>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>>>
> >>>>>>Stefan,
> >>>>>>
> >>>>>>I think what you are proposing is a good idea.  In most cases,
path
> >>>>>>discovery algorithms assume that both the trust anchor (or trust
> >>>>>
> >>>>anchors)
> >>>>
> >>>>
> >>>>
> >>>>>>and the end entity certificate are provided as input.  In this
> >>>>>>case,
> >>>>>
> >>>one
> >>>
> >>>
> >>>
> >>>>>>may
> >>>>>>need to construct a certification path without a priori access
to
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>end
> >>>>
> >>>>
> >>>>
> >>>>>>entity certificate (the one with the subject public key
> >>>>>
> >>>corresponding to
> >>>
> >>>
> >>>
> >>>>>>the
> >>>>>>CRL signing key).  Including an AIA extension (or some other
> >>>>>
> >>>pointer) in
> >>>
> >>>
> >>>
> >>>>>>the
> >>>>>>CRL would provide the relying party with a simple way to obtain
the
> >>>>>
> >>>end
> >>>
> >>>
> >>>
> >>>>>>entity certificate for the CRL signing key's certification path.
On
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>>>other hand, I believe that a relying party should be able to
> >>>>>
> >>>construct
> >>>
> >>>
> >>>
> >>>>the
> >>>>
> >>>>
> >>>>
> >>>>>>certification path even without an AIA extension in the CRL, so
> >>>>>>long
> >>>>>
> >>>as
> >>>
> >>>
> >>>
> >>>>it
> >>>>
> >>>>
> >>>>
> >>>>>>is not an indirect CRL.  Attached is a drawing of the three
basic
> >>>>>>scenarios that I expect a relying party may encounter:
> >>>>>>
> >>>>>>In each of these scenarios, the CA has performed key rollover
and
> >>>>>>is
> >>>>>
> >>>>only
> >>>>
> >>>>
> >>>>
> >>>>>>signing CRLs with its new key.  The diagrams would look similar,
> >>>>>
> >>>>however,
> >>>>
> >>>>
> >>>>
> >>>>>>if
> >>>>>>the CA simply choose to use different keys to sign certificates
and
> >>>>>
> >>>CRLs
> >>>
> >>>
> >>>
> >>>>>>for
> >>>>>>some other reason.
> >>>>>>
> >>>>>>If the PKI architecture resembled figure 1, then the
certification
> >>>>>
> >>>path
> >>>
> >>>
> >>>
> >>>>>>for
> >>>>>>the CRL signing key would just be a subset of the certification
> >>>>>>path
> >>>>>
> >>>for
> >>>
> >>>
> >>>
> >>>>>>the
> >>>>>>EE certificate, so no addition path discovery would be needed.
> >>>>>>
> >>>>>>If the PKI architecture resembled figure 1, then it would be
> >>>>>
> >>>necessary
> >>>
> >>>
> >>>
> >>>>to
> >>>>
> >>>>
> >>>>
> >>>>>>obtain the new-signed-with-old self-issued certificate.  In
> >>>>>>building
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>>>certification path to the EE certificate, however, the relying
> >>>>>>party
> >>>>>
> >>>>will
> >>>>
> >>>>
> >>>>
> >>>>>>obtain the certificates pointed to by the AIA extension in the
EE
> >>>>>>certificate.  This AIA extension will point to a location
> >>>>>>containing
> >>>>>
> >>>all
> >>>
> >>>
> >>>
> >>>>>>certificates issued to CA 2, which would include both the
> >>>>>
> >>>certificate
> >>>
> >>>
> >>>
> >>>>>>issued
> >>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So,
even
> >>>>>
> >>>though
> >>>
> >>>
> >>>
> >>>>>>the
> >>>>>>self-issued certificate would not be part of the certification
path
> >>>>>
> >>>to
> >>>
> >>>
> >>>
> >>>>the
> >>>>
> >>>>
> >>>>
> >>>>>>EE certificate, it would be downloaded by the relying party
during
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>>>construction of that certification path.  (Yes, there are
circular
> >>>>>>dependency issues in figure 2, but that is another issue.)
> >>>>>>
> >>>>>>A similar situation would happen if the PKI architecture
resembled
> >>>>>
> >>>>figure
> >>>>
> >>>>
> >>>>
> >>>>>>3.  The AIA extension in the EE certificate would point to a
> >>>>>
> >>>location
> >>>
> >>>
> >>>
> >>>>>>containing certificates issued to CA 3.  When the relying party
> >>>>>
> >>>>downloaded
> >>>>
> >>>>
> >>>>
> >>>>>>these certificates, it would obtain both of the certificates
issued
> >>>>>
> >>>by
> >>>
> >>>
> >>>
> >>>>the
> >>>>
> >>>>
> >>>>
> >>>>>>Root to CA 3 and so again would have the certificate needed to
> >>>>>
> >>>validate
> >>>
> >>>
> >>>
> >>>>>>the
> >>>>>>CRL signing key.
> >>>>>>
> >>>>>>In the case of an indirect CRL, things may not work as well.  If
> >>>>>
> >>>>indirect
> >>>>
> >>>>
> >>>>
> >>>>>>CRLs were used, and the PKI architecture resembled figures 2 or
3
> >>>>>>(replacing "New Key" with a different CA), then the set of
> >>>>>>certificates pointed
> >>>>>
> >>>to
> >>>
> >>>
> >>>
> >>>>by
> >>>>
> >>>>
> >>>>
> >>>>>>the AIA extension in the EE certificate would not include the
> >>>>>
> >>>>certificate
> >>>>
> >>>>
> >>>>
> >>>>>>of
> >>>>>>the CRL signer.  One could find this certificate by building in
the
> >>>>>>reverse direction and using the SIA extension, but that may not
be
> >>>>>>the most convenient solution.
> >>>>>>
> >>>>>>So, when indirect CRLs are being used, it seems that it would be
> >>>>>
> >>>very
> >>>
> >>>
> >>>
> >>>>>>useful
> >>>>>>to have a pointer in the CRL to the CRL signing certificate.
When
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>CRL
> >>>>
> >>>>
> >>>>
> >>>>>>is not indirect, the need for this pointer does not seem to be
as
> >>>>>
> >>>clear,
> >>>
> >>>
> >>>
> >>>>>>but
> >>>>>>I can't see any harm in including it.
> >>>>>>
> >>>>>>Dave
> >>>>>>
> >>>>>>Stefan Santesson wrote:
> >>>>>>All,
> >>>>>>
> >>>>>>I'm interested in the opinion from members on this list about
> >>>>>
> >>>discovery
> >>>
> >>>
> >>>
> >>>>of
> >>>>
> >>>>
> >>>>
> >>>>>>CRL signer's certificate in non directory centric environments.
> >>>>>>
> >>>>>>The problem is the following.
> >>>>>>
> >>>>>>The relying party (RP) needs to check validity of a certificate
and
> >>>>>
> >>>>finds
> >>>>
> >>>>
> >>>>
> >>>>>>a
> >>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
> >>>>>>which
> >>>>>
> >>>in
> >>>
> >>>
> >>>
> >>>>>>this
> >>>>>>particular case is either signed by another key of the CA
(re-keyed
> >>>>>
> >>>CA)
> >>>
> >>>
> >>>
> >>>>or
> >>>>
> >>>>
> >>>>
> >>>>>>another entity (indirect CRL).
> >>>>>>
> >>>>>>In this case the relying party needs to obtain the certificate
of
> >>>>>
> >>>the
> >>>
> >>>
> >>>
> >>>>CRL
> >>>>
> >>>>
> >>>>
> >>>>>>signer which may NOT be part of the original chain. In a
directory
> >>>>>
> >>>>centric
> >>>>
> >>>>
> >>>>
> >>>>>>solution this is retrieved from the directory, but what if such
> >>>>>
> >>>>directory
> >>>>
> >>>>
> >>>>
> >>>>>>is
> >>>>>>not available or accessible.
> >>>>>>
> >>>>>>The RP have thus no hint where to find the CRL issuers
certificate
> >>>>>
> >>>>unless
> >>>>
> >>>>
> >>>>
> >>>>>>the RP already have possession of it by some other means.
> >>>>>>
> >>>>>>Is seems that CRLs would need an AIA extension with the option
to
> >>>>>
> >>>point
> >>>
> >>>
> >>>
> >>>>to
> >>>>
> >>>>
> >>>>
> >>>>>>the location of the signers certificate in the same manner as is
> >>>>>
> >>>>possible
> >>>>
> >>>>
> >>>>
> >>>>>>for certificates.
> >>>>>>
> >>>>>>Maybe AIA should be defined as both cert and CRL extension and
not
> >>>>>
> >>>only
> >>>
> >>>
> >>>
> >>>>>>certificate extension as today.
> >>>>>>
> >>>>>>Thoughts and comments?
> >>>>>>
> >>>>>>Stefan Santesson
> >>>>>>Microsoft Security Center of Excellence (SCOE)
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>
> >>
> >
> >
> >
> 

Date: Fri, 15 Oct 2004 11:47:19 +0200
Subject: questions about draft-ietf-pkix-certstore-http-08
From: Cullen Jennings <[email-masked]>
To: <[email-masked]>, <[email-masked]>
Sender: [email-masked]

First of all let me say, I really like this and have for a long time - I'm
really glad to see the IESG last call on it.

I'm not exactly sure if I understand what the uri attribute matches. I want
something that matches any one of the entries in the SubjectAltName list.

In section 2.2 when using the uri attribute, I assume that if a certificate
had a SubjectAltName with a two URI's of say im:[email-masked] and
xmpp:[email-masked], if I did a query (with appropriate escaping which I
did not do below) of

GET /search.cgi?uri=im:[email-masked] HTTP/1.1

that it would find this cert. Do I have this correct?

Thanks, Cullen

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Fri, 15 Oct 2004 05:38:07 -0400
Importance: Normal
Sender: [email-masked]

Denis:

1.  This is a good mechanism to start building the path for CRL signer.  If
you have a better alternative for directory challenged environments, please
tell us.  Absent you showing that there is a mechanism for directory
challenged environments that is as simple and that works, we can not have a
fruitful dialog.

2.  Adding AIA to CRL does not impact interoperability, security or backward
compatibility adversely.

As to your argument, we could have used it few years back and not added AIA
to the certificates either.

-----Original Message-----
From: Denis Pinks [mailto:[email-masked]] 
Sent: Friday, October 15, 2004 2:45 AM
To: Santosh Chokhani
Cc: 'pkix'
Subject: Re: Signer certificate discovery for CRLs

Santosh,

You are still trying to avoid to respond to my request. So my temporary 
conclusion is that you have NOT demonstrated that your proposal is really 
necessary and it is thus "yet-another-method".

> Denis:

> By directory challenged, I mean you do not use LDAP client or DAP or
> DSP to query for certificate.

RFC 3280. Page 46:

    The accessLocation
    field is defined as a GeneralName, which can take several forms.
    Where the information is available via http, ftp, or ldap,
    accessLocation MUST be a uniformResourceIdentifier.  Where the
    information is available via the Directory Access Protocol (DAP),
    accessLocation MUST be a directoryName.

It is thus perfectly allowed and valid to use DAP or ldap.

> The basic point is that if AIA or local store are the primary ways to
> obtain certificates,

No. Local store is of no use. AIA is one possibility, while the other one is

SIA.

> since the CRL issuer certificate is not in any payload, AIA in CRL
> helps obtain that certificate and start the path development process 
> for the CRL certification path.

No. You can use AIA or SIA in CA certificates, or AIA in leaf certificate.

Denis

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: Thursday, October 14, 2004 11:13 AM
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> 
>>Denis:
> 
> 
>>With the three assumptions/constraints I provided, how would you 
>>locate the CRL issuer certificate for the two examples using 3280 
>>extensions and without putting AIA in the CRL?
> 
> 
> As far as I understand, the three assumptions are:
> 
> 1.  You are directory challenged; and
>      [I do not understand what this means]
> 2.  You use AIA to develop the path; and
>      [It does not matter]
> 3.  You develop the path from the end entity to trust anchor
>      [Could also be the contrary].
> 
> If this is not correct, thus please correct.
> 
> Then my request is: "using ANY OF the current extensions that are
> defined in
> 
> RFC 3280", which includes SIA.
> 
> In your explanations  you said :
> "if you do no deal with SIA et. al"
> 
> This last assumption is neither part of the three assumptions and does
> not
> conform to my request.
> 
> Denis
> 
> 
>>That is my point.
>>
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: Thursday, October 14, 2004 6:22 AM
>>To: Santosh Chokhani
>>Cc: 'pkix'
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Santosh,
>>
>>You misread my request. I said:
>>
>>"For the time being, I would like that you provide an example where, 
>>when using the current extensions that are defined in RFC 3280, it 
>>will NOT be possible to locate a CRL Issuer certificate."
>>
>>Maybe I would have needed to be clearer and say :
>>
>>"For the time being, I would like that you provide an example where, 
>>when using ANY OF the current extensions that are defined in RFC 3280, 
>>it will NOT be possible to locate a CRL Issuer certificate."
>>
>>The examples you provide below do not fulfil this request.
>>
>>The assumption is that there exists a path to be tested for revocation
>>checking (and that it does not matter to know which way it has been 
>>constructed).
>>
>>I am not saying that using AIA in CRL might not be useful, but I am 
>>still lacking the demonstration that there would be no other way.
>>
>>Denis
>>
>>
>>
>>
>>>Denis:
>>>
>>>Two examples are very simple: one for direct CRL Issuer and one for
>>>Indirect CRL Issuer.
>>>
>>>Let us make the following assumptions that Stefan was making:
>>>
>>>1.  You are directory challenged; and
>>>2.  You use AIA to develop the path; and
>>>3.  You develop the path from the end entity to trust anchor.
>>>
>>
>>>From what I know of MS CAPI, these are reasonable
>>
>>>assumptions/constraints.
>>>
>>>Now the examples.
>>>
>>>Example 1: Direct CRL Issuer
>>>
>>>The certificate trust path is:
>>>Root --> CA1 --> CA 2, old key --> Denis
>>>
>>>The CRL trust path is:
>>>Root --> CA1 --> CA 2, new key --> CRL
>>>
>>>(Note: We do not do self-issued certificate since there is no simple,
>>>secure way to check their revocation status).
>>>
>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>straightforward.  How would you find it if you do no deal with SIA 
>>>et. al.
>>>
>>>Example 2: Indirect CRL Issuer
>>>
>>>The certificate trust path is:
>>>Root --> CA1 --> CA 2 --> Denis
>>>(Note: Denis's certificate points to CRL DP of an indirect CRL issued
>>>by CAI.
>>>
>>>The CRL trust path is:
>>>Root --> CAI --> CRL
>>>
>>>Now, with AIA in CRL, finding the CAI certificate is straightforward.
>>>How would you find it if you do no deal with SIA et. al.
>>>
>>>In addition to the need cited above, please note that the extension
>>>semantics does not change, it does not hinder any interoperability, 
>>>and it does not break any backward compatibility.  So, what if I 
>>>wanted to use this extension in the CRL.  It does no harm to other 
>>>relying parties.
>>>
>>>-----Original Message-----
>>>From: [email-masked]
>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>To: Stefan Santesson
>>>Cc: Santosh Chokhani; pkix
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>
>>>
>>>Stefan,
>>>
>>>
>>>
>>>
>>>>Denis,
>>>
>>>
>>>>I'm not sure what you mean.
>>>
>>>
>>>For the time being, I would like that you provide an example where,
>>>when using the current extensions that are defined in RFC 3280, it 
>>>will NOT be possible to locate a CRL Issuer certificate.
>>>
>>>If you are able to provide that example, then it would justify the
>>>need for an extension at least for one case. Then we can see what 
>>>that case is.
>>>
>>>I am awaiting that example.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>
>>>>I conclude that I agree with Santosh.
>>>>
>>>>The debate is still open... Feel free to express your opinion.
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>-----Original Message-----
>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>Sent: den 13 oktober 2004 16:34
>>>>>To: Stefan Santesson
>>>>>Cc: Santosh Chokhani; pkix
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>Stefan,
>>>>>
>>>>>You are making a conclusion without letting me the time to respond. 
>>>>>I will need more time to look at the pictures (and understand 
>>>>>them).
>>>>>
>>>>>For the time being, I am still reluctant to accept
>>>>
>>>>"yet-another-method".
>>>>
>>>>
>>>>
>>>>
>>>>>We already have too many.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Santosh,
>>>>>>
>>>>>>I conclude that we are in complete and total agreement. The 
>>>>>>question is how to go about this.
>>>>>
>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>>would hopefully just be a minor change.
>>>>>
>>>>>This is exactly what I feared.
>>>>>
>>>>>We usually end-up with a "minor change" in an extension without
>>>>>saying cleary how and when it shall/should be used.
>>>>>
>>>>>I still have in mind that:
>>>>>
>>>>>1) a certification path must first be constructed,
>>>>>2) then the revocation checking of that path must be done.
>>>>>
>>>>>This means that information about CRL issuers certificates
>>>>>locations
>>>>
>>>>may
>>>>
>>>>
>>>>
>>>>
>>>>>certainly be found in that chain. If not, I would like an example.
>>>>>
>>>>>Denis
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>It would not change the definition of AIA just add that it can be
>>>>>
>>>>used
>>>>
>>>>
>>>>
>>>>
>>>>>also as CRL extension and list eventual restrictions and guidance 
>>>>>for
>>>>
>>>>use
>>>>
>>>>
>>>>
>>>>
>>>>>with CRLs.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: [email-masked]
>>>>>>
>>>>[mailto:[email-masked]]
>>>>
>>>>
>>>>
>>>>
>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>To: 'pkix'
>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>Stefan:
>>>>>>>
>>>>>>>In terms of certificate discovery, your proposal for AIA in CRL
>>>>>>>is
>>>>>>
>>>>more
>>>>
>>>>
>>>>
>>>>
>>>>>>>robust.  The whole idea of self-issued key rollover certificates
>>>>>>>and
>>>>>>
>>>>>then
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>using the new key to issue CRL is fraught with security problems.
>>>>>>>A secure solution would be one where the new key is certified by 
>>>>>>>the parent
>>>>>>
>>>>CA.
>>>>
>>>>
>>>>
>>>>
>>>>>In
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>that case to obtain the new certificate, you could use AIA in
>>>>>>>CRL.
>>>>>>>
>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>>>CRL.  The AIA
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>gets you started for the indirect CRL issuer certification path 
>>>>>>>and
>>>>>>
>>>>you
>>>>
>>>>
>>>>
>>>>
>>>>>>>are
>>>>>>>in business.
>>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: [email-masked]
>>>>>>
>>>>[mailto:[email-masked]]
>>>>
>>>>
>>>>
>>>>
>>>>>>>On
>>>>>>>Behalf Of Stefan Santesson
>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>To: David A. Cooper
>>>>>>>Cc: pkix
>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>David,
>>>>>>>
>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>I did misread your pictures.
>>>>>>>
>>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>>
>>>>3280,
>>>>
>>>>
>>>>
>>>>
>>>>>>>either the CRL issuer certificate itself, or the location of the
>>>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>>>the validating
>>>>>>
>>>>>party
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in some cases, but not in others?
>>>>>>>
>>>>>>>Can we also conclude that there is no real discovery solution for
>>>>>>
>>>>>indirect
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRLs?
>>>>>>>
>>>>>>>Do you then agree then that it could be appropriate to allow AIA 
>>>>>>>as
>>>>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>________________________________________
>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>To: Stefan Santesson
>>>>>>>Cc: pkix
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>Stefan,
>>>>>>>
>>>>>>>I believe that you are misinterpreting the figures.  They really 
>>>>>>>do represent three different cases, not three different 
>>>>>>>certification
>>>>>>
>>>>paths
>>>>
>>>>
>>>>
>>>>
>>>>>>>that have been constructed through the same PKI architecture.
>>>>>>>
>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>
>>>>certificates.
>>>>
>>>>
>>>>
>>>>
>>>>>>>The
>>>>>>>Root CA has issued a certificate to CA 1's new key, but not its 
>>>>>>>old
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>(either the Root CA never issued a certificate to CA 1's old key 
>>>>>>>or
>>>>>>
>>>>that
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate has expired).
>>>>>>>
>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>>>key, but not its
>>>>>>
>>>>new
>>>>
>>>>
>>>>
>>>>
>>>>>>>key.
>>>>>>>
>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a new
>>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>>self-issued
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>rollover certificates.
>>>>>>>
>>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>>
>>>>>generated
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>self-issued key rollover certificates upon key rollover and then
>>>>>>>had
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>Root CA issue a CA certificate to its new key.  In this case, as
>>>>>>>you suggest, any of the certification paths from figures 1, 2, or 
>>>>>>>3
>>>>>>
>>>>could be
>>>>
>>>>
>>>>
>>>>
>>>>>>>constructed.
>>>>>>>
>>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>>
>>>>specified
>>>>
>>>>
>>>>
>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>>
>>>>>Policy":
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>The authorityInfoAccess extension uses URIs for two purposes.
>>>>>>>When
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>specifies
>>>>>>
>>>>>where
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>found.
>>>>>>
>>>>If
>>>>
>>>>
>>>>
>>>>
>>>>>LDAP
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>>
>>>>>relevant
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates and specify the directory attribute in which the
>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>are located. If the directory in which the certificates are
>>>>>>>stored
>>>>>>
>>>>>expects
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the "binary" option to be specified, then the attribute type must
>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI 
>>>>>>>must
>>>>>>
>>>>point to
>>>>
>>>>
>>>>
>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>file that has an extension of ".p7c" that contains a certs-only 
>>>>>>>CMS message (see RFC 2633). The CMS message should include all
>>>>>>>certificates
>>>>>>
>>>>issued
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the issuer of this certificate, but must at least contain all
>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>>public
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>may
>>>>>>>be used to verify the signature on this certificate. .... For a
>>>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>>>appear as the
>>>>>>
>>>>access
>>>>
>>>>
>>>>
>>>>
>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>
>>>>id-ad-caIssuers
>>>>
>>>>
>>>>
>>>>
>>>>>>>access
>>>>>>>method is used are:
>>>>>>
>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cAC
>>>>>>e
>>>>>>r
>>>>>>t
>>>>>>i
>>>>>
>>>>fi
>>>>
>>>>
>>>>
>>>>
>>>>>ca
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>te
>>>>>>>,crossCertificatePair
>>>>>>
>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
>>>>>>f
>>>>>>i
>>>>>>c
>>>>>>a
>>>>>
>>>>te
>>>>
>>>>
>>>>
>>>>
>>>>>;b
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in
>>>>>>>ary,crossCertificatePair;binary
>>>>>>
>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIs
>>>>>>s
>>>>>>u
>>>>>>e
>>>>>>d
>>>>>
>>>>To
>>>>
>>>>
>>>>
>>>>
>>>>>Go
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>od
>>>>>>>CA.p7c
>>>>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>>>>information is to be located, so there is no requirement for the
>>>>>>
>>>>relying
>>>>
>>>>
>>>>
>>>>
>>>>>>>party to try to figure out where information is located.
>>>>>>>
>>>>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>>>>certificates issued to the CA identified in the issuer field of 
>>>>>>>the certificate.
>>>>>>>
>>>>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>>>>attributes of the directory entry of the CA identified in the 
>>>>>>>issuer field of
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>
>>>>certificates
>>>>
>>>>
>>>>
>>>>
>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's
>>>>>>>self-
>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>
>>>>>>>Dave
>>>>>>>
>>>>>>>
>>>>>>>Stefan Santesson wrote:
>>>>>>>
>>>>>>>David,
>>>>>>>
>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>
>>>>>>>I have some comments and questions on this.
>>>>>>>
>>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>>where
>>>>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>>>self
>>>>>>>issued certificate is inserted into the path, you are likely to
>>>>>>>find
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>CRL
>>>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>>>
>>>>and
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>
>>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>>
>>>>>different
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>path building strategies. An application that has access locally 
>>>>>>>to
>>>>>>
>>>>all
>>>>
>>>>
>>>>
>>>>
>>>>>>>chaining options may however still choose path 2 for the certs
>>>>>>>and
>>>>>>
>>>>path
>>>>
>>>>
>>>>
>>>>
>>>>>1
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>for the CRL independent of each other (which I think figure 3 
>>>>>>>tries
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>>>describe)
>>>>>>>
>>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>>
>>>>familiar
>>>>
>>>>
>>>>
>>>>
>>>>>>>with doesn't use AIA to describe a directory entry where it is 
>>>>>>>left
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>validation application logic to be intelligent enough to find
>>>>>>
>>>>>appropriate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificate data from the directory. The model I'm familiar with 
>>>>>>>is
>>>>>>
>>>>when
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>AIA URL explicitly identifies the exact location of the 
>>>>>>>appropriate
>>>>>>
>>>>CA
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate file, relieving the validation software from complex
>>>>>>>information queries. If just location of explicit certificate 
>>>>>>>files are
>>>>>>
>>>>identified
>>>>
>>>>
>>>>
>>>>
>>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>>
>>>>signer
>>>>
>>>>
>>>>
>>>>
>>>>>>>cert
>>>>>>>if this is different from the CA certificate. This is also the
>>>>>>
>>>>problem
>>>>
>>>>
>>>>
>>>>
>>>>>>>with
>>>>>>>Denis proposal.
>>>>>>>
>>>>>>>I think we share the basic conclusion that the ability to locate
>>>>>>>the
>>>>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>
>>>>>>>signer certificate directly through the CRL could be very useful.
>>>>>>>At
>>>>>>
>>>>>least
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in the case of indirect CRL but it could also be proven very 
>>>>>>>useful
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>re-keying scenarios.
>>>>>>>
>>>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>>>
>>>>its
>>>>
>>>>
>>>>
>>>>
>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>
>>>>critical).
>>>>
>>>>
>>>>
>>>>
>>>>>It
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>would present a very clear and uncomplicated logic to certificate
>>>>>>>validating applications in many cases.
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>________________________________________
>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>To: Stefan Santesson
>>>>>>>Cc: pkix
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>Stefan,
>>>>>>>
>>>>>>>I think what you are proposing is a good idea.  In most cases, 
>>>>>>>path discovery algorithms assume that both the trust anchor (or 
>>>>>>>trust
>>>>>>
>>>>>anchors)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>>case,
>>>>>>
>>>>one
>>>>
>>>>
>>>>
>>>>
>>>>>>>may
>>>>>>>need to construct a certification path without a priori access to
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>end
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>entity certificate (the one with the subject public key
>>>>>>
>>>>corresponding to
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>
>>>>pointer) in
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL would provide the relying party with a simple way to obtain 
>>>>>>>the
>>>>>>
>>>>end
>>>>
>>>>
>>>>
>>>>
>>>>>>>entity certificate for the CRL signing key's certification path. 
>>>>>>>On
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>
>>>>construct
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certification path even without an AIA extension in the CRL, so
>>>>>>>long
>>>>>>
>>>>as
>>>>
>>>>
>>>>
>>>>
>>>>>it
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>
>>>>>>>In each of these scenarios, the CA has performed key rollover and
>>>>>>>is
>>>>>>
>>>>>only
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>>
>>>>>however,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>if
>>>>>>>the CA simply choose to use different keys to sign certificates 
>>>>>>>and
>>>>>>
>>>>CRLs
>>>>
>>>>
>>>>
>>>>
>>>>>>>for
>>>>>>>some other reason.
>>>>>>>
>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>certification
>>>>>>
>>>>path
>>>>
>>>>
>>>>
>>>>
>>>>>>>for
>>>>>>>the CRL signing key would just be a subset of the certification
>>>>>>>path
>>>>>>
>>>>for
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>>
>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>
>>>>necessary
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>building
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>certification path to the EE certificate, however, the relying
>>>>>>>party
>>>>>>
>>>>>will
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>>>>certificate.  This AIA extension will point to a location 
>>>>>>>containing
>>>>>>
>>>>all
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>
>>>>certificate
>>>>
>>>>
>>>>
>>>>
>>>>>>>issued
>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>>>
>>>>though
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>self-issued certificate would not be part of the certification 
>>>>>>>path
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>during
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>circular dependency issues in figure 2, but that is another 
>>>>>>>issue.)
>>>>>>>
>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>resembled
>>>>>>
>>>>>figure
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>
>>>>location
>>>>
>>>>
>>>>
>>>>
>>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>>
>>>>>downloaded
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>these certificates, it would obtain both of the certificates 
>>>>>>>issued
>>>>>>
>>>>by
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>>
>>>>validate
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL signing key.
>>>>>>>
>>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>>
>>>>>indirect
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>>>certificates pointed
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>by
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the AIA extension in the EE certificate would not include the
>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>of
>>>>>>>the CRL signer.  One could find this certificate by building in 
>>>>>>>the reverse direction and using the SIA extension, but that may 
>>>>>>>not be the most convenient solution.
>>>>>>>
>>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>>
>>>>very
>>>>
>>>>
>>>>
>>>>
>>>>>>>useful
>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>When
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>>>
>>>>clear,
>>>>
>>>>
>>>>
>>>>
>>>>>>>but
>>>>>>>I can't see any harm in including it.
>>>>>>>
>>>>>>>Dave
>>>>>>>
>>>>>>>Stefan Santesson wrote:
>>>>>>>All,
>>>>>>>
>>>>>>>I'm interested in the opinion from members on this list about
>>>>>>
>>>>discovery
>>>>
>>>>
>>>>
>>>>
>>>>>of
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>>
>>>>>>>The problem is the following.
>>>>>>>
>>>>>>>The relying party (RP) needs to check validity of a certificate 
>>>>>>>and
>>>>>>
>>>>>finds
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>a
>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>>which
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>>>this
>>>>>>>particular case is either signed by another key of the CA 
>>>>>>>(re-keyed
>>>>>>
>>>>CA)
>>>>
>>>>
>>>>
>>>>
>>>>>or
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>another entity (indirect CRL).
>>>>>>>
>>>>>>>In this case the relying party needs to obtain the certificate of
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>directory
>>>>>>
>>>>>centric
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>solution this is retrieved from the directory, but what if such
>>>>>>
>>>>>directory
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is
>>>>>>>not available or accessible.
>>>>>>>
>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>certificate
>>>>>>
>>>>>unless
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the RP already have possession of it by some other means.
>>>>>>>
>>>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>>>
>>>>point
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the location of the signers certificate in the same manner as is
>>>>>>
>>>>>possible
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>for certificates.
>>>>>>>
>>>>>>>Maybe AIA should be defined as both cert and CRL extension and
>>>>>>>not
>>>>>>
>>>>only
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate extension as today.
>>>>>>>
>>>>>>>Thoughts and comments?
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>
>>
>>
> 
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Fri, 15 Oct 2004 05:37:38 -0400
Importance: Normal
Sender: [email-masked]

Denis:

1.  This is a good mechanism to start building the path for CRL signer.  If
you have a better alternative for directory challenged environments, please
tell us.  Absent you showing that there is a mechanism for directory
challenged environments that is as simple and that works, we can not have a
fruitful dialog.

2.  Adding AIA to CRL does not impact interoperability, security or backward
compatibility adversely.

As to your argument, we could have used it few years back and not added AIA
to the certificates either.

-----Original Message-----
From: Denis Pinks [mailto:[email-masked]] 
Sent: Friday, October 15, 2004 2:45 AM
To: Santosh Chokhani
Cc: 'pkix'
Subject: Re: Signer certificate discovery for CRLs

Santosh,

You are still trying to avoid to respond to my request. So my temporary 
conclusion is that you have NOT demonstrated that your proposal is really 
necessary and it is thus "yet-another-method".

> Denis:

> By directory challenged, I mean you do not use LDAP client or DAP or
> DSP to query for certificate.

RFC 3280. Page 46:

    The accessLocation
    field is defined as a GeneralName, which can take several forms.
    Where the information is available via http, ftp, or ldap,
    accessLocation MUST be a uniformResourceIdentifier.  Where the
    information is available via the Directory Access Protocol (DAP),
    accessLocation MUST be a directoryName.

It is thus perfectly allowed and valid to use DAP or ldap.

> The basic point is that if AIA or local store are the primary ways to
> obtain certificates,

No. Local store is of no use. AIA is one possibility, while the other one is

SIA.

> since the CRL issuer certificate is not in any payload, AIA in CRL
> helps obtain that certificate and start the path development process 
> for the CRL certification path.

No. You can use AIA or SIA in CA certificates, or AIA in leaf certificate.

Denis

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: Thursday, October 14, 2004 11:13 AM
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> 
>>Denis:
> 
> 
>>With the three assumptions/constraints I provided, how would you 
>>locate the CRL issuer certificate for the two examples using 3280 
>>extensions and without putting AIA in the CRL?
> 
> 
> As far as I understand, the three assumptions are:
> 
> 1.  You are directory challenged; and
>      [I do not understand what this means]
> 2.  You use AIA to develop the path; and
>      [It does not matter]
> 3.  You develop the path from the end entity to trust anchor
>      [Could also be the contrary].
> 
> If this is not correct, thus please correct.
> 
> Then my request is: "using ANY OF the current extensions that are
> defined in
> 
> RFC 3280", which includes SIA.
> 
> In your explanations  you said :
> "if you do no deal with SIA et. al"
> 
> This last assumption is neither part of the three assumptions and does
> not
> conform to my request.
> 
> Denis
> 
> 
>>That is my point.
>>
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: Thursday, October 14, 2004 6:22 AM
>>To: Santosh Chokhani
>>Cc: 'pkix'
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Santosh,
>>
>>You misread my request. I said:
>>
>>"For the time being, I would like that you provide an example where, 
>>when using the current extensions that are defined in RFC 3280, it 
>>will NOT be possible to locate a CRL Issuer certificate."
>>
>>Maybe I would have needed to be clearer and say :
>>
>>"For the time being, I would like that you provide an example where, 
>>when using ANY OF the current extensions that are defined in RFC 3280, 
>>it will NOT be possible to locate a CRL Issuer certificate."
>>
>>The examples you provide below do not fulfil this request.
>>
>>The assumption is that there exists a path to be tested for revocation
>>checking (and that it does not matter to know which way it has been 
>>constructed).
>>
>>I am not saying that using AIA in CRL might not be useful, but I am 
>>still lacking the demonstration that there would be no other way.
>>
>>Denis
>>
>>
>>
>>
>>>Denis:
>>>
>>>Two examples are very simple: one for direct CRL Issuer and one for
>>>Indirect CRL Issuer.
>>>
>>>Let us make the following assumptions that Stefan was making:
>>>
>>>1.  You are directory challenged; and
>>>2.  You use AIA to develop the path; and
>>>3.  You develop the path from the end entity to trust anchor.
>>>
>>
>>>From what I know of MS CAPI, these are reasonable
>>
>>>assumptions/constraints.
>>>
>>>Now the examples.
>>>
>>>Example 1: Direct CRL Issuer
>>>
>>>The certificate trust path is:
>>>Root --> CA1 --> CA 2, old key --> Denis
>>>
>>>The CRL trust path is:
>>>Root --> CA1 --> CA 2, new key --> CRL
>>>
>>>(Note: We do not do self-issued certificate since there is no simple,
>>>secure way to check their revocation status).
>>>
>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>straightforward.  How would you find it if you do no deal with SIA 
>>>et. al.
>>>
>>>Example 2: Indirect CRL Issuer
>>>
>>>The certificate trust path is:
>>>Root --> CA1 --> CA 2 --> Denis
>>>(Note: Denis's certificate points to CRL DP of an indirect CRL issued
>>>by CAI.
>>>
>>>The CRL trust path is:
>>>Root --> CAI --> CRL
>>>
>>>Now, with AIA in CRL, finding the CAI certificate is straightforward.
>>>How would you find it if you do no deal with SIA et. al.
>>>
>>>In addition to the need cited above, please note that the extension
>>>semantics does not change, it does not hinder any interoperability, 
>>>and it does not break any backward compatibility.  So, what if I 
>>>wanted to use this extension in the CRL.  It does no harm to other 
>>>relying parties.
>>>
>>>-----Original Message-----
>>>From: [email-masked]
>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>To: Stefan Santesson
>>>Cc: Santosh Chokhani; pkix
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>
>>>
>>>Stefan,
>>>
>>>
>>>
>>>
>>>>Denis,
>>>
>>>
>>>>I'm not sure what you mean.
>>>
>>>
>>>For the time being, I would like that you provide an example where,
>>>when using the current extensions that are defined in RFC 3280, it 
>>>will NOT be possible to locate a CRL Issuer certificate.
>>>
>>>If you are able to provide that example, then it would justify the
>>>need for an extension at least for one case. Then we can see what 
>>>that case is.
>>>
>>>I am awaiting that example.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>
>>>>I conclude that I agree with Santosh.
>>>>
>>>>The debate is still open... Feel free to express your opinion.
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>-----Original Message-----
>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>Sent: den 13 oktober 2004 16:34
>>>>>To: Stefan Santesson
>>>>>Cc: Santosh Chokhani; pkix
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>Stefan,
>>>>>
>>>>>You are making a conclusion without letting me the time to respond. 
>>>>>I will need more time to look at the pictures (and understand 
>>>>>them).
>>>>>
>>>>>For the time being, I am still reluctant to accept
>>>>
>>>>"yet-another-method".
>>>>
>>>>
>>>>
>>>>
>>>>>We already have too many.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Santosh,
>>>>>>
>>>>>>I conclude that we are in complete and total agreement. The 
>>>>>>question is how to go about this.
>>>>>
>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>>would hopefully just be a minor change.
>>>>>
>>>>>This is exactly what I feared.
>>>>>
>>>>>We usually end-up with a "minor change" in an extension without
>>>>>saying cleary how and when it shall/should be used.
>>>>>
>>>>>I still have in mind that:
>>>>>
>>>>>1) a certification path must first be constructed,
>>>>>2) then the revocation checking of that path must be done.
>>>>>
>>>>>This means that information about CRL issuers certificates
>>>>>locations
>>>>
>>>>may
>>>>
>>>>
>>>>
>>>>
>>>>>certainly be found in that chain. If not, I would like an example.
>>>>>
>>>>>Denis
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>It would not change the definition of AIA just add that it can be
>>>>>
>>>>used
>>>>
>>>>
>>>>
>>>>
>>>>>also as CRL extension and list eventual restrictions and guidance 
>>>>>for
>>>>
>>>>use
>>>>
>>>>
>>>>
>>>>
>>>>>with CRLs.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: [email-masked]
>>>>>>
>>>>[mailto:[email-masked]]
>>>>
>>>>
>>>>
>>>>
>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>To: 'pkix'
>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>Stefan:
>>>>>>>
>>>>>>>In terms of certificate discovery, your proposal for AIA in CRL
>>>>>>>is
>>>>>>
>>>>more
>>>>
>>>>
>>>>
>>>>
>>>>>>>robust.  The whole idea of self-issued key rollover certificates
>>>>>>>and
>>>>>>
>>>>>then
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>using the new key to issue CRL is fraught with security problems.
>>>>>>>A secure solution would be one where the new key is certified by 
>>>>>>>the parent
>>>>>>
>>>>CA.
>>>>
>>>>
>>>>
>>>>
>>>>>In
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>that case to obtain the new certificate, you could use AIA in
>>>>>>>CRL.
>>>>>>>
>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>>>CRL.  The AIA
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>gets you started for the indirect CRL issuer certification path 
>>>>>>>and
>>>>>>
>>>>you
>>>>
>>>>
>>>>
>>>>
>>>>>>>are
>>>>>>>in business.
>>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: [email-masked]
>>>>>>
>>>>[mailto:[email-masked]]
>>>>
>>>>
>>>>
>>>>
>>>>>>>On
>>>>>>>Behalf Of Stefan Santesson
>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>To: David A. Cooper
>>>>>>>Cc: pkix
>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>David,
>>>>>>>
>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>I did misread your pictures.
>>>>>>>
>>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>>
>>>>3280,
>>>>
>>>>
>>>>
>>>>
>>>>>>>either the CRL issuer certificate itself, or the location of the
>>>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>>>the validating
>>>>>>
>>>>>party
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in some cases, but not in others?
>>>>>>>
>>>>>>>Can we also conclude that there is no real discovery solution for
>>>>>>
>>>>>indirect
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRLs?
>>>>>>>
>>>>>>>Do you then agree then that it could be appropriate to allow AIA 
>>>>>>>as
>>>>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>________________________________________
>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>To: Stefan Santesson
>>>>>>>Cc: pkix
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>Stefan,
>>>>>>>
>>>>>>>I believe that you are misinterpreting the figures.  They really 
>>>>>>>do represent three different cases, not three different 
>>>>>>>certification
>>>>>>
>>>>paths
>>>>
>>>>
>>>>
>>>>
>>>>>>>that have been constructed through the same PKI architecture.
>>>>>>>
>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>
>>>>certificates.
>>>>
>>>>
>>>>
>>>>
>>>>>>>The
>>>>>>>Root CA has issued a certificate to CA 1's new key, but not its 
>>>>>>>old
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>(either the Root CA never issued a certificate to CA 1's old key 
>>>>>>>or
>>>>>>
>>>>that
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate has expired).
>>>>>>>
>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>>>key, but not its
>>>>>>
>>>>new
>>>>
>>>>
>>>>
>>>>
>>>>>>>key.
>>>>>>>
>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a new
>>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>>self-issued
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>rollover certificates.
>>>>>>>
>>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>>
>>>>>generated
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>self-issued key rollover certificates upon key rollover and then
>>>>>>>had
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>Root CA issue a CA certificate to its new key.  In this case, as
>>>>>>>you suggest, any of the certification paths from figures 1, 2, or 
>>>>>>>3
>>>>>>
>>>>could be
>>>>
>>>>
>>>>
>>>>
>>>>>>>constructed.
>>>>>>>
>>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>>
>>>>specified
>>>>
>>>>
>>>>
>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>>
>>>>>Policy":
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>The authorityInfoAccess extension uses URIs for two purposes.
>>>>>>>When
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>specifies
>>>>>>
>>>>>where
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates issued to the issuer of the certificate may be
>>>>>>>found.
>>>>>>
>>>>If
>>>>
>>>>
>>>>
>>>>
>>>>>LDAP
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>>
>>>>>relevant
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates and specify the directory attribute in which the
>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>are located. If the directory in which the certificates are
>>>>>>>stored
>>>>>>
>>>>>expects
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the "binary" option to be specified, then the attribute type must
>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI 
>>>>>>>must
>>>>>>
>>>>point to
>>>>
>>>>
>>>>
>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>file that has an extension of ".p7c" that contains a certs-only 
>>>>>>>CMS message (see RFC 2633). The CMS message should include all
>>>>>>>certificates
>>>>>>
>>>>issued
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the issuer of this certificate, but must at least contain all
>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>>public
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>may
>>>>>>>be used to verify the signature on this certificate. .... For a
>>>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>>>appear as the
>>>>>>
>>>>access
>>>>
>>>>
>>>>
>>>>
>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>
>>>>id-ad-caIssuers
>>>>
>>>>
>>>>
>>>>
>>>>>>>access
>>>>>>>method is used are:
>>>>>>
>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cAC
>>>>>>e
>>>>>>r
>>>>>>t
>>>>>>i
>>>>>
>>>>fi
>>>>
>>>>
>>>>
>>>>
>>>>>ca
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>te
>>>>>>>,crossCertificatePair
>>>>>>
>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
>>>>>>f
>>>>>>i
>>>>>>c
>>>>>>a
>>>>>
>>>>te
>>>>
>>>>
>>>>
>>>>
>>>>>;b
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in
>>>>>>>ary,crossCertificatePair;binary
>>>>>>
>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIs
>>>>>>s
>>>>>>u
>>>>>>e
>>>>>>d
>>>>>
>>>>To
>>>>
>>>>
>>>>
>>>>
>>>>>Go
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>od
>>>>>>>CA.p7c
>>>>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>>>>information is to be located, so there is no requirement for the
>>>>>>
>>>>relying
>>>>
>>>>
>>>>
>>>>
>>>>>>>party to try to figure out where information is located.
>>>>>>>
>>>>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>>>>certificates issued to the CA identified in the issuer field of 
>>>>>>>the certificate.
>>>>>>>
>>>>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>>>>attributes of the directory entry of the CA identified in the 
>>>>>>>issuer field of
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>
>>>>certificates
>>>>
>>>>
>>>>
>>>>
>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's
>>>>>>>self-
>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>
>>>>>>>Dave
>>>>>>>
>>>>>>>
>>>>>>>Stefan Santesson wrote:
>>>>>>>
>>>>>>>David,
>>>>>>>
>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>
>>>>>>>I have some comments and questions on this.
>>>>>>>
>>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>>where
>>>>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>>>self
>>>>>>>issued certificate is inserted into the path, you are likely to
>>>>>>>find
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>CRL
>>>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>>>
>>>>and
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>
>>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>>
>>>>>different
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>path building strategies. An application that has access locally 
>>>>>>>to
>>>>>>
>>>>all
>>>>
>>>>
>>>>
>>>>
>>>>>>>chaining options may however still choose path 2 for the certs
>>>>>>>and
>>>>>>
>>>>path
>>>>
>>>>
>>>>
>>>>
>>>>>1
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>for the CRL independent of each other (which I think figure 3 
>>>>>>>tries
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>>>describe)
>>>>>>>
>>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>>
>>>>familiar
>>>>
>>>>
>>>>
>>>>
>>>>>>>with doesn't use AIA to describe a directory entry where it is 
>>>>>>>left
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>validation application logic to be intelligent enough to find
>>>>>>
>>>>>appropriate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificate data from the directory. The model I'm familiar with 
>>>>>>>is
>>>>>>
>>>>when
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>AIA URL explicitly identifies the exact location of the 
>>>>>>>appropriate
>>>>>>
>>>>CA
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate file, relieving the validation software from complex
>>>>>>>information queries. If just location of explicit certificate 
>>>>>>>files are
>>>>>>
>>>>identified
>>>>
>>>>
>>>>
>>>>
>>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>>
>>>>signer
>>>>
>>>>
>>>>
>>>>
>>>>>>>cert
>>>>>>>if this is different from the CA certificate. This is also the
>>>>>>
>>>>problem
>>>>
>>>>
>>>>
>>>>
>>>>>>>with
>>>>>>>Denis proposal.
>>>>>>>
>>>>>>>I think we share the basic conclusion that the ability to locate
>>>>>>>the
>>>>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>
>>>>>>>signer certificate directly through the CRL could be very useful.
>>>>>>>At
>>>>>>
>>>>>least
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in the case of indirect CRL but it could also be proven very 
>>>>>>>useful
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>re-keying scenarios.
>>>>>>>
>>>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>>>
>>>>its
>>>>
>>>>
>>>>
>>>>
>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>
>>>>critical).
>>>>
>>>>
>>>>
>>>>
>>>>>It
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>would present a very clear and uncomplicated logic to certificate
>>>>>>>validating applications in many cases.
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>________________________________________
>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>To: Stefan Santesson
>>>>>>>Cc: pkix
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>Stefan,
>>>>>>>
>>>>>>>I think what you are proposing is a good idea.  In most cases, 
>>>>>>>path discovery algorithms assume that both the trust anchor (or 
>>>>>>>trust
>>>>>>
>>>>>anchors)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>>case,
>>>>>>
>>>>one
>>>>
>>>>
>>>>
>>>>
>>>>>>>may
>>>>>>>need to construct a certification path without a priori access to
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>end
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>entity certificate (the one with the subject public key
>>>>>>
>>>>corresponding to
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>
>>>>pointer) in
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL would provide the relying party with a simple way to obtain 
>>>>>>>the
>>>>>>
>>>>end
>>>>
>>>>
>>>>
>>>>
>>>>>>>entity certificate for the CRL signing key's certification path. 
>>>>>>>On
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>
>>>>construct
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certification path even without an AIA extension in the CRL, so
>>>>>>>long
>>>>>>
>>>>as
>>>>
>>>>
>>>>
>>>>
>>>>>it
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>
>>>>>>>In each of these scenarios, the CA has performed key rollover and
>>>>>>>is
>>>>>>
>>>>>only
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>>
>>>>>however,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>if
>>>>>>>the CA simply choose to use different keys to sign certificates 
>>>>>>>and
>>>>>>
>>>>CRLs
>>>>
>>>>
>>>>
>>>>
>>>>>>>for
>>>>>>>some other reason.
>>>>>>>
>>>>>>>If the PKI architecture resembled figure 1, then the
>>>>>>>certification
>>>>>>
>>>>path
>>>>
>>>>
>>>>
>>>>
>>>>>>>for
>>>>>>>the CRL signing key would just be a subset of the certification
>>>>>>>path
>>>>>>
>>>>for
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>>
>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>
>>>>necessary
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>building
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>certification path to the EE certificate, however, the relying
>>>>>>>party
>>>>>>
>>>>>will
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>>>>certificate.  This AIA extension will point to a location 
>>>>>>>containing
>>>>>>
>>>>all
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>
>>>>certificate
>>>>
>>>>
>>>>
>>>>
>>>>>>>issued
>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>>>
>>>>though
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>self-issued certificate would not be part of the certification 
>>>>>>>path
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>EE certificate, it would be downloaded by the relying party
>>>>>>>during
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>construction of that certification path.  (Yes, there are
>>>>>>>circular dependency issues in figure 2, but that is another 
>>>>>>>issue.)
>>>>>>>
>>>>>>>A similar situation would happen if the PKI architecture
>>>>>>>resembled
>>>>>>
>>>>>figure
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>
>>>>location
>>>>
>>>>
>>>>
>>>>
>>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>>
>>>>>downloaded
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>these certificates, it would obtain both of the certificates 
>>>>>>>issued
>>>>>>
>>>>by
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>>
>>>>validate
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL signing key.
>>>>>>>
>>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>>
>>>>>indirect
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>>>certificates pointed
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>by
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the AIA extension in the EE certificate would not include the
>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>of
>>>>>>>the CRL signer.  One could find this certificate by building in 
>>>>>>>the reverse direction and using the SIA extension, but that may 
>>>>>>>not be the most convenient solution.
>>>>>>>
>>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>>
>>>>very
>>>>
>>>>
>>>>
>>>>
>>>>>>>useful
>>>>>>>to have a pointer in the CRL to the CRL signing certificate.
>>>>>>>When
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>>>
>>>>clear,
>>>>
>>>>
>>>>
>>>>
>>>>>>>but
>>>>>>>I can't see any harm in including it.
>>>>>>>
>>>>>>>Dave
>>>>>>>
>>>>>>>Stefan Santesson wrote:
>>>>>>>All,
>>>>>>>
>>>>>>>I'm interested in the opinion from members on this list about
>>>>>>
>>>>discovery
>>>>
>>>>
>>>>
>>>>
>>>>>of
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>>
>>>>>>>The problem is the following.
>>>>>>>
>>>>>>>The relying party (RP) needs to check validity of a certificate 
>>>>>>>and
>>>>>>
>>>>>finds
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>a
>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>>which
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>>>this
>>>>>>>particular case is either signed by another key of the CA 
>>>>>>>(re-keyed
>>>>>>
>>>>CA)
>>>>
>>>>
>>>>
>>>>
>>>>>or
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>another entity (indirect CRL).
>>>>>>>
>>>>>>>In this case the relying party needs to obtain the certificate of
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>signer which may NOT be part of the original chain. In a
>>>>>>>directory
>>>>>>
>>>>>centric
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>solution this is retrieved from the directory, but what if such
>>>>>>
>>>>>directory
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is
>>>>>>>not available or accessible.
>>>>>>>
>>>>>>>The RP have thus no hint where to find the CRL issuers
>>>>>>>certificate
>>>>>>
>>>>>unless
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the RP already have possession of it by some other means.
>>>>>>>
>>>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>>>
>>>>point
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the location of the signers certificate in the same manner as is
>>>>>>
>>>>>possible
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>for certificates.
>>>>>>>
>>>>>>>Maybe AIA should be defined as both cert and CRL extension and
>>>>>>>not
>>>>>>
>>>>only
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate extension as today.
>>>>>>>
>>>>>>>Thoughts and comments?
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>
>>
>>
> 
> 
> 

Date: Fri, 15 Oct 2004 08:45:27 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: "'pkix'" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Santosh,

You are still trying to avoid to respond to my request. So my temporary 
conclusion is that you have NOT demonstrated that your proposal is really 
necessary and it is thus "yet-another-method".

> Denis:

> By directory challenged, I mean you do not use LDAP client or DAP or DSP to
> query for certificate.

RFC 3280. Page 46:

    The accessLocation
    field is defined as a GeneralName, which can take several forms.
    Where the information is available via http, ftp, or ldap,
    accessLocation MUST be a uniformResourceIdentifier.  Where the
    information is available via the Directory Access Protocol (DAP),
    accessLocation MUST be a directoryName.

It is thus perfectly allowed and valid to use DAP or ldap.

> The basic point is that if AIA or local store are the primary ways to obtain
> certificates, 

No. Local store is of no use. AIA is one possibility, while the other one is 
SIA.

> since the CRL issuer certificate is not in any payload, AIA in
> CRL helps obtain that certificate and start the path development process for
> the CRL certification path.

No. You can use AIA or SIA in CA certificates, or AIA in leaf certificate.

Denis

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]] 
> Sent: Thursday, October 14, 2004 11:13 AM
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> 
>>Denis:
> 
> 
>>With the three assumptions/constraints I provided, how would you 
>>locate the CRL issuer certificate for the two examples using 3280 
>>extensions and without putting AIA in the CRL?
> 
> 
> As far as I understand, the three assumptions are:
> 
> 1.  You are directory challenged; and
>      [I do not understand what this means]
> 2.  You use AIA to develop the path; and
>      [It does not matter]
> 3.  You develop the path from the end entity to trust anchor
>      [Could also be the contrary].
> 
> If this is not correct, thus please correct.
> 
> Then my request is: "using ANY OF the current extensions that are defined in
> 
> RFC 3280", which includes SIA.
> 
> In your explanations  you said :
> "if you do no deal with SIA et. al"
> 
> This last assumption is neither part of the three assumptions and does not 
> conform to my request.
> 
> Denis
> 
> 
>>That is my point.
>>
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: Thursday, October 14, 2004 6:22 AM
>>To: Santosh Chokhani
>>Cc: 'pkix'
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>Santosh,
>>
>>You misread my request. I said:
>>
>>"For the time being, I would like that you provide an example where, 
>>when using the current extensions that are defined in RFC 3280, it 
>>will NOT be possible to locate a CRL Issuer certificate."
>>
>>Maybe I would have needed to be clearer and say :
>>
>>"For the time being, I would like that you provide an example where, 
>>when using ANY OF the current extensions that are defined in RFC 3280, 
>>it will NOT be possible to locate a CRL Issuer certificate."
>>
>>The examples you provide below do not fulfil this request.
>>
>>The assumption is that there exists a path to be tested for revocation
>>checking (and that it does not matter to know which way it has been 
>>constructed).
>>
>>I am not saying that using AIA in CRL might not be useful, but I am 
>>still
>>lacking the demonstration that there would be no other way.
>>
>>Denis
>>
>>
>>
>>
>>>Denis:
>>>
>>>Two examples are very simple: one for direct CRL Issuer and one for
>>>Indirect CRL Issuer.
>>>
>>>Let us make the following assumptions that Stefan was making:
>>>
>>>1.  You are directory challenged; and
>>>2.  You use AIA to develop the path; and
>>>3.  You develop the path from the end entity to trust anchor.
>>>
>>
>>>From what I know of MS CAPI, these are reasonable
>>
>>>assumptions/constraints.
>>>
>>>Now the examples.
>>>
>>>Example 1: Direct CRL Issuer
>>>
>>>The certificate trust path is:
>>>Root --> CA1 --> CA 2, old key --> Denis
>>>
>>>The CRL trust path is:
>>>Root --> CA1 --> CA 2, new key --> CRL
>>>
>>>(Note: We do not do self-issued certificate since there is no simple,
>>>secure way to check their revocation status).
>>>
>>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>>straightforward.  How would you find it if you do no deal with SIA et. 
>>>al.
>>>
>>>Example 2: Indirect CRL Issuer
>>>
>>>The certificate trust path is:
>>>Root --> CA1 --> CA 2 --> Denis
>>>(Note: Denis's certificate points to CRL DP of an indirect CRL issued
>>>by CAI.
>>>
>>>The CRL trust path is:
>>>Root --> CAI --> CRL
>>>
>>>Now, with AIA in CRL, finding the CAI certificate is straightforward.
>>>How would you find it if you do no deal with SIA et. al.
>>>
>>>In addition to the need cited above, please note that the extension
>>>semantics does not change, it does not hinder any interoperability, 
>>>and it does not break any backward compatibility.  So, what if I 
>>>wanted to use this extension in the CRL.  It does no harm to other 
>>>relying parties.
>>>
>>>-----Original Message-----
>>>From: [email-masked]
>>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>>Sent: Wednesday, October 13, 2004 11:01 AM
>>>To: Stefan Santesson
>>>Cc: Santosh Chokhani; pkix
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>
>>>
>>>Stefan,
>>>
>>>
>>>
>>>
>>>>Denis,
>>>
>>>
>>>>I'm not sure what you mean.
>>>
>>>
>>>For the time being, I would like that you provide an example where,
>>>when
>>>using the current extensions that are defined in RFC 3280, it will NOT be 
>>>possible to locate a CRL Issuer certificate.
>>>
>>>If you are able to provide that example, then it would justify the
>>>need for
>>>an extension at least for one case. Then we can see what that case is.
>>>
>>>I am awaiting that example.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>
>>>>I conclude that I agree with Santosh.
>>>>
>>>>The debate is still open... Feel free to express your opinion.
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>-----Original Message-----
>>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>>Sent: den 13 oktober 2004 16:34
>>>>>To: Stefan Santesson
>>>>>Cc: Santosh Chokhani; pkix
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>Stefan,
>>>>>
>>>>>You are making a conclusion without letting me the time to respond. 
>>>>>I
>>>>>will need more time to look at the pictures (and understand them).
>>>>>
>>>>>For the time being, I am still reluctant to accept
>>>>
>>>>"yet-another-method".
>>>>
>>>>
>>>>
>>>>
>>>>>We already have too many.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Santosh,
>>>>>>
>>>>>>I conclude that we are in complete and total agreement. The 
>>>>>>question is how to go about this.
>>>>>
>>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>>would hopefully just be a minor change.
>>>>>
>>>>>This is exactly what I feared.
>>>>>
>>>>>We usually end-up with a "minor change" in an extension without
>>>>>saying cleary how and when it shall/should be used.
>>>>>
>>>>>I still have in mind that:
>>>>>
>>>>>1) a certification path must first be constructed,
>>>>>2) then the revocation checking of that path must be done.
>>>>>
>>>>>This means that information about CRL issuers certificates locations
>>>>
>>>>may
>>>>
>>>>
>>>>
>>>>
>>>>>certainly be found in that chain. If not, I would like an example.
>>>>>
>>>>>Denis
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>It would not change the definition of AIA just add that it can be
>>>>>
>>>>used
>>>>
>>>>
>>>>
>>>>
>>>>>also as CRL extension and list eventual restrictions and guidance 
>>>>>for
>>>>
>>>>use
>>>>
>>>>
>>>>
>>>>
>>>>>with CRLs.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: [email-masked]
>>>>>>
>>>>[mailto:[email-masked]]
>>>>
>>>>
>>>>
>>>>
>>>>>>>On Behalf Of Santosh Chokhani
>>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>>To: 'pkix'
>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>Stefan:
>>>>>>>
>>>>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>>>>
>>>>more
>>>>
>>>>
>>>>
>>>>
>>>>>>>robust.  The whole idea of self-issued key rollover certificates
>>>>>>>and
>>>>>>
>>>>>then
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>using the new key to issue CRL is fraught with security problems.
>>>>>>>A secure solution would be one where the new key is certified by 
>>>>>>>the parent
>>>>>>
>>>>CA.
>>>>
>>>>
>>>>
>>>>
>>>>>In
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>>>>
>>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>>>CRL.  The AIA
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>gets you started for the indirect CRL issuer certification path 
>>>>>>>and
>>>>>>
>>>>you
>>>>
>>>>
>>>>
>>>>
>>>>>>>are
>>>>>>>in business.
>>>>>>>
>>>>>>>-----Original Message-----
>>>>>>>From: [email-masked]
>>>>>>
>>>>[mailto:[email-masked]]
>>>>
>>>>
>>>>
>>>>
>>>>>>>On
>>>>>>>Behalf Of Stefan Santesson
>>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>>To: David A. Cooper
>>>>>>>Cc: pkix
>>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>David,
>>>>>>>
>>>>>>>Thanks for the clarifications, they make sense.
>>>>>>>I did misread your pictures.
>>>>>>>
>>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>>
>>>>3280,
>>>>
>>>>
>>>>
>>>>
>>>>>>>either the CRL issuer certificate itself, or the location of the
>>>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>>>the validating
>>>>>>
>>>>>party
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in some cases, but not in others?
>>>>>>>
>>>>>>>Can we also conclude that there is no real discovery solution for
>>>>>>
>>>>>indirect
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRLs?
>>>>>>>
>>>>>>>Do you then agree then that it could be appropriate to allow AIA 
>>>>>>>as
>>>>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>________________________________________
>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>>To: Stefan Santesson
>>>>>>>Cc: pkix
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>Stefan,
>>>>>>>
>>>>>>>I believe that you are misinterpreting the figures.  They really 
>>>>>>>do
>>>>>>>represent three different cases, not three different certification
>>>>>>
>>>>paths
>>>>
>>>>
>>>>
>>>>
>>>>>>>that have been constructed through the same PKI architecture.
>>>>>>>
>>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>>
>>>>certificates.
>>>>
>>>>
>>>>
>>>>
>>>>>>>The
>>>>>>>Root CA has issued a certificate to CA 1's new key, but not its 
>>>>>>>old
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>(either the Root CA never issued a certificate to CA 1's old key 
>>>>>>>or
>>>>>>
>>>>that
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate has expired).
>>>>>>>
>>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>>>key, but not its
>>>>>>
>>>>new
>>>>
>>>>
>>>>
>>>>
>>>>>>>key.
>>>>>>>
>>>>>>>In figure 3, when CA 3 performed key rollover, it requested a new
>>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>>self-issued
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>rollover certificates.
>>>>>>>
>>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>>
>>>>>generated
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>self-issued key rollover certificates upon key rollover and then
>>>>>>>had
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>Root CA issue a CA certificate to its new key.  In this case, as
>>>>>>>you suggest, any of the certification paths from figures 1, 2, or 3
>>>>>>
>>>>could be
>>>>
>>>>
>>>>
>>>>
>>>>>>>constructed.
>>>>>>>
>>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>>
>>>>specified
>>>>
>>>>
>>>>
>>>>
>>>>>in
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>>
>>>>>Policy":
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>>specifies
>>>>>>
>>>>>where
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates issued to the issuer of the certificate may be found.
>>>>>>
>>>>If
>>>>
>>>>
>>>>
>>>>
>>>>>LDAP
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>>
>>>>>relevant
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates and specify the directory attribute in which the
>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>are located. If the directory in which the certificates are stored
>>>>>>
>>>>>expects
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the "binary" option to be specified, then the attribute type must
>>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI must
>>>>>>
>>>>point to
>>>>
>>>>
>>>>
>>>>
>>>>>a
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>file that has an extension of ".p7c" that contains a certs-only 
>>>>>>>CMS
>>>>>>>message (see RFC 2633). The CMS message should include all 
>>>>>>>certificates
>>>>>>
>>>>issued
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the issuer of this certificate, but must at least contain all
>>>>>>
>>>>>certificates
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>>public
>>>>>>
>>>>key
>>>>
>>>>
>>>>
>>>>
>>>>>>>may
>>>>>>>be used to verify the signature on this certificate. .... For a
>>>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>>>appear as the
>>>>>>
>>>>access
>>>>
>>>>
>>>>
>>>>
>>>>>>>location in an authorityInfoAccess extension when the
>>>>>>
>>>>id-ad-caIssuers
>>>>
>>>>
>>>>
>>>>
>>>>>>>access
>>>>>>>method is used are:
>>>>>>
>>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACe
>>>>>>r
>>>>>>t
>>>>>>i
>>>>>
>>>>fi
>>>>
>>>>
>>>>
>>>>
>>>>>ca
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>te
>>>>>>>,crossCertificatePair
>>>>>>
>>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertif
>>>>>>i
>>>>>>c
>>>>>>a
>>>>>
>>>>te
>>>>
>>>>
>>>>
>>>>
>>>>>;b
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in
>>>>>>>ary,crossCertificatePair;binary
>>>>>>
>>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIss
>>>>>>u
>>>>>>e
>>>>>>d
>>>>>
>>>>To
>>>>
>>>>
>>>>
>>>>
>>>>>Go
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>od
>>>>>>>CA.p7c
>>>>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>>>>information is to be located, so there is no requirement for the
>>>>>>
>>>>relying
>>>>
>>>>
>>>>
>>>>
>>>>>>>party to try to figure out where information is located.
>>>>>>>
>>>>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>>>>certificates issued to the CA identified in the issuer field of the 
>>>>>>>certificate.
>>>>>>>
>>>>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>>>>attributes of the directory entry of the CA identified in the 
>>>>>>>issuer field of
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate.  These two attributes together hold all of the
>>>>>>
>>>>certificates
>>>>
>>>>
>>>>
>>>>
>>>>>>>issued to the CA:  the cACertificate attribute holds the CA's 
>>>>>>>self-
>>>>>>
>>>>>issued
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>>
>>>>>>>Dave
>>>>>>>
>>>>>>>
>>>>>>>Stefan Santesson wrote:
>>>>>>>
>>>>>>>David,
>>>>>>>
>>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>>
>>>>>>>I have some comments and questions on this.
>>>>>>>
>>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>>where
>>>>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>>>self
>>>>>>>issued certificate is inserted into the path, you are likely to
>>>>>>>find
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>CRL
>>>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>>>
>>>>and
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate for cert signing and CRL signing).
>>>>>>>
>>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>>
>>>>>different
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>path building strategies. An application that has access locally 
>>>>>>>to
>>>>>>
>>>>all
>>>>
>>>>
>>>>
>>>>
>>>>>>>chaining options may however still choose path 2 for the certs and
>>>>>>
>>>>path
>>>>
>>>>
>>>>
>>>>
>>>>>1
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>for the CRL independent of each other (which I think figure 3 
>>>>>>>tries
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>>>describe)
>>>>>>>
>>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>>
>>>>familiar
>>>>
>>>>
>>>>
>>>>
>>>>>>>with doesn't use AIA to describe a directory entry where it is 
>>>>>>>left
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>validation application logic to be intelligent enough to find
>>>>>>
>>>>>appropriate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certificate data from the directory. The model I'm familiar with 
>>>>>>>is
>>>>>>
>>>>when
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>AIA URL explicitly identifies the exact location of the 
>>>>>>>appropriate
>>>>>>
>>>>CA
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate file, relieving the validation software from complex
>>>>>>>information queries. If just location of explicit certificate files 
>>>>>>>are
>>>>>>
>>>>identified
>>>>
>>>>
>>>>
>>>>
>>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>>
>>>>signer
>>>>
>>>>
>>>>
>>>>
>>>>>>>cert
>>>>>>>if this is different from the CA certificate. This is also the
>>>>>>
>>>>problem
>>>>
>>>>
>>>>
>>>>
>>>>>>>with
>>>>>>>Denis proposal.
>>>>>>>
>>>>>>>I think we share the basic conclusion that the ability to locate
>>>>>>>the
>>>>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>
>>>>>>>signer certificate directly through the CRL could be very useful.
>>>>>>>At
>>>>>>
>>>>>least
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>in the case of indirect CRL but it could also be proven very 
>>>>>>>useful
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>CA
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>re-keying scenarios.
>>>>>>>
>>>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>>>
>>>>its
>>>>
>>>>
>>>>
>>>>
>>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>>
>>>>critical).
>>>>
>>>>
>>>>
>>>>
>>>>>It
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>would present a very clear and uncomplicated logic to certificate
>>>>>>>validating applications in many cases.
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>________________________________________
>>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>>To: Stefan Santesson
>>>>>>>Cc: pkix
>>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>>
>>>>>>>Stefan,
>>>>>>>
>>>>>>>I think what you are proposing is a good idea.  In most cases, 
>>>>>>>path
>>>>>>>discovery algorithms assume that both the trust anchor (or trust
>>>>>>
>>>>>anchors)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>>case,
>>>>>>
>>>>one
>>>>
>>>>
>>>>
>>>>
>>>>>>>may
>>>>>>>need to construct a certification path without a priori access to
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>end
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>entity certificate (the one with the subject public key
>>>>>>
>>>>corresponding to
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>>
>>>>pointer) in
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL would provide the relying party with a simple way to obtain 
>>>>>>>the
>>>>>>
>>>>end
>>>>
>>>>
>>>>
>>>>
>>>>>>>entity certificate for the CRL signing key's certification path. 
>>>>>>>On
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>other hand, I believe that a relying party should be able to
>>>>>>
>>>>construct
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>certification path even without an AIA extension in the CRL, so
>>>>>>>long
>>>>>>
>>>>as
>>>>
>>>>
>>>>
>>>>
>>>>>it
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>>
>>>>>>>In each of these scenarios, the CA has performed key rollover and
>>>>>>>is
>>>>>>
>>>>>only
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>>
>>>>>however,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>if
>>>>>>>the CA simply choose to use different keys to sign certificates 
>>>>>>>and
>>>>>>
>>>>CRLs
>>>>
>>>>
>>>>
>>>>
>>>>>>>for
>>>>>>>some other reason.
>>>>>>>
>>>>>>>If the PKI architecture resembled figure 1, then the certification
>>>>>>
>>>>path
>>>>
>>>>
>>>>
>>>>
>>>>>>>for
>>>>>>>the CRL signing key would just be a subset of the certification
>>>>>>>path
>>>>>>
>>>>for
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>>
>>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>>
>>>>necessary
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>>building
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>certification path to the EE certificate, however, the relying
>>>>>>>party
>>>>>>
>>>>>will
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>>>>certificate.  This AIA extension will point to a location 
>>>>>>>containing
>>>>>>
>>>>all
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificates issued to CA 2, which would include both the
>>>>>>
>>>>certificate
>>>>
>>>>
>>>>
>>>>
>>>>>>>issued
>>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>>>
>>>>though
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>self-issued certificate would not be part of the certification 
>>>>>>>path
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>EE certificate, it would be downloaded by the relying party during
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>>>construction of that certification path.  (Yes, there are circular
>>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>>
>>>>>>>A similar situation would happen if the PKI architecture resembled
>>>>>>
>>>>>figure
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>>
>>>>location
>>>>
>>>>
>>>>
>>>>
>>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>>
>>>>>downloaded
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>these certificates, it would obtain both of the certificates 
>>>>>>>issued
>>>>>>
>>>>by
>>>>
>>>>
>>>>
>>>>
>>>>>the
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>>
>>>>validate
>>>>
>>>>
>>>>
>>>>
>>>>>>>the
>>>>>>>CRL signing key.
>>>>>>>
>>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>>
>>>>>indirect
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>>>certificates pointed
>>>>>>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>by
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the AIA extension in the EE certificate would not include the
>>>>>>
>>>>>certificate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>of
>>>>>>>the CRL signer.  One could find this certificate by building in 
>>>>>>>the
>>>>>>>reverse direction and using the SIA extension, but that may not be 
>>>>>>>the most convenient solution.
>>>>>>>
>>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>>
>>>>very
>>>>
>>>>
>>>>
>>>>
>>>>>>>useful
>>>>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>>>
>>>>clear,
>>>>
>>>>
>>>>
>>>>
>>>>>>>but
>>>>>>>I can't see any harm in including it.
>>>>>>>
>>>>>>>Dave
>>>>>>>
>>>>>>>Stefan Santesson wrote:
>>>>>>>All,
>>>>>>>
>>>>>>>I'm interested in the opinion from members on this list about
>>>>>>
>>>>discovery
>>>>
>>>>
>>>>
>>>>
>>>>>of
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>>
>>>>>>>The problem is the following.
>>>>>>>
>>>>>>>The relying party (RP) needs to check validity of a certificate 
>>>>>>>and
>>>>>>
>>>>>finds
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>a
>>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>>which
>>>>>>
>>>>in
>>>>
>>>>
>>>>
>>>>
>>>>>>>this
>>>>>>>particular case is either signed by another key of the CA 
>>>>>>>(re-keyed
>>>>>>
>>>>CA)
>>>>
>>>>
>>>>
>>>>
>>>>>or
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>another entity (indirect CRL).
>>>>>>>
>>>>>>>In this case the relying party needs to obtain the certificate of
>>>>>>
>>>>the
>>>>
>>>>
>>>>
>>>>
>>>>>CRL
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>signer which may NOT be part of the original chain. In a directory
>>>>>>
>>>>>centric
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>solution this is retrieved from the directory, but what if such
>>>>>>
>>>>>directory
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>is
>>>>>>>not available or accessible.
>>>>>>>
>>>>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>>>>
>>>>>unless
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the RP already have possession of it by some other means.
>>>>>>>
>>>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>>>
>>>>point
>>>>
>>>>
>>>>
>>>>
>>>>>to
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>the location of the signers certificate in the same manner as is
>>>>>>
>>>>>possible
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>>for certificates.
>>>>>>>
>>>>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>>>>
>>>>only
>>>>
>>>>
>>>>
>>>>
>>>>>>>certificate extension as today.
>>>>>>>
>>>>>>>Thoughts and comments?
>>>>>>>
>>>>>>>Stefan Santesson
>>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>
>>
>>
> 
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 14 Oct 2004 16:37:07 -0400
Importance: Normal
Sender: [email-masked]

Denis:

By directory challenged, I mean you do not use LDAP client or DAP or DSP to
query for certificate.

The basic point is that if AIA or local store are the primary ways to obtain
certificates, since the CRL issuer certificate is not in any payload, AIA in
CRL helps obtain that certificate and start the path development process for
the CRL certification path.

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Thursday, October 14, 2004 11:13 AM
To: Santosh Chokhani
Cc: 'pkix'
Subject: Re: Signer certificate discovery for CRLs

Santosh,

> Denis:

> With the three assumptions/constraints I provided, how would you 
> locate the CRL issuer certificate for the two examples using 3280 
> extensions and without putting AIA in the CRL?

As far as I understand, the three assumptions are:

1.  You are directory challenged; and
     [I do not understand what this means]
2.  You use AIA to develop the path; and
     [It does not matter]
3.  You develop the path from the end entity to trust anchor
     [Could also be the contrary].

If this is not correct, thus please correct.

Then my request is: "using ANY OF the current extensions that are defined in

RFC 3280", which includes SIA.

In your explanations  you said :
"if you do no deal with SIA et. al"

This last assumption is neither part of the three assumptions and does not 
conform to my request.

Denis

> That is my point.
> 
> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: Thursday, October 14, 2004 6:22 AM
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> You misread my request. I said:
> 
> "For the time being, I would like that you provide an example where, 
> when using the current extensions that are defined in RFC 3280, it 
> will NOT be possible to locate a CRL Issuer certificate."
> 
> Maybe I would have needed to be clearer and say :
> 
> "For the time being, I would like that you provide an example where, 
> when using ANY OF the current extensions that are defined in RFC 3280, 
> it will NOT be possible to locate a CRL Issuer certificate."
> 
> The examples you provide below do not fulfil this request.
> 
> The assumption is that there exists a path to be tested for revocation
> checking (and that it does not matter to know which way it has been 
> constructed).
> 
> I am not saying that using AIA in CRL might not be useful, but I am 
> still
> lacking the demonstration that there would be no other way.
> 
> Denis
> 
> 
> 
>>Denis:
>>
>>Two examples are very simple: one for direct CRL Issuer and one for
>>Indirect CRL Issuer.
>>
>>Let us make the following assumptions that Stefan was making:
>>
>>1.  You are directory challenged; and
>>2.  You use AIA to develop the path; and
>>3.  You develop the path from the end entity to trust anchor.
>>
>>From what I know of MS CAPI, these are reasonable
>>assumptions/constraints.
>>
>>Now the examples.
>>
>>Example 1: Direct CRL Issuer
>>
>>The certificate trust path is:
>>Root --> CA1 --> CA 2, old key --> Denis
>>
>>The CRL trust path is:
>>Root --> CA1 --> CA 2, new key --> CRL
>>
>>(Note: We do not do self-issued certificate since there is no simple,
>>secure way to check their revocation status).
>>
>>Now, with AIA in CRL, finding the CA2, new key certificate is
>>straightforward.  How would you find it if you do no deal with SIA et. 
>>al.
>>
>>Example 2: Indirect CRL Issuer
>>
>>The certificate trust path is:
>>Root --> CA1 --> CA 2 --> Denis
>>(Note: Denis's certificate points to CRL DP of an indirect CRL issued
>>by CAI.
>>
>>The CRL trust path is:
>>Root --> CAI --> CRL
>>
>>Now, with AIA in CRL, finding the CAI certificate is straightforward.
>>How would you find it if you do no deal with SIA et. al.
>>
>>In addition to the need cited above, please note that the extension
>>semantics does not change, it does not hinder any interoperability, 
>>and it does not break any backward compatibility.  So, what if I 
>>wanted to use this extension in the CRL.  It does no harm to other 
>>relying parties.
>>
>>-----Original Message-----
>>From: [email-masked]
>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>Sent: Wednesday, October 13, 2004 11:01 AM
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>
>>Stefan,
>>
>>
>>
>>>Denis,
>>
>>
>>>I'm not sure what you mean.
>>
>>
>>For the time being, I would like that you provide an example where,
>>when
>>using the current extensions that are defined in RFC 3280, it will NOT be 
>>possible to locate a CRL Issuer certificate.
>>
>>If you are able to provide that example, then it would justify the
>>need for
>>an extension at least for one case. Then we can see what that case is.
>>
>>I am awaiting that example.
>>
>>Denis
>>
>>
>>
>>
>>>I conclude that I agree with Santosh.
>>>
>>>The debate is still open... Feel free to express your opinion.
>>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>Sent: den 13 oktober 2004 16:34
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>You are making a conclusion without letting me the time to respond. 
>>>>I
>>>>will need more time to look at the pictures (and understand them).
>>>>
>>>>For the time being, I am still reluctant to accept
>>>
>>>"yet-another-method".
>>>
>>>
>>>
>>>>We already have too many.
>>>>
>>>>
>>>>
>>>>
>>>>>Santosh,
>>>>>
>>>>>I conclude that we are in complete and total agreement. The 
>>>>>question is how to go about this.
>>>>
>>>>>Could we do this amendment to RFC 3280 in its next revision? It
>>>>>would hopefully just be a minor change.
>>>>
>>>>This is exactly what I feared.
>>>>
>>>>We usually end-up with a "minor change" in an extension without
>>>>saying cleary how and when it shall/should be used.
>>>>
>>>>I still have in mind that:
>>>>
>>>>1) a certification path must first be constructed,
>>>>2) then the revocation checking of that path must be done.
>>>>
>>>>This means that information about CRL issuers certificates locations
>>>
>>>may
>>>
>>>
>>>
>>>>certainly be found in that chain. If not, I would like an example.
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>It would not change the definition of AIA just add that it can be
>>>>
>>>used
>>>
>>>
>>>
>>>>also as CRL extension and list eventual restrictions and guidance 
>>>>for
>>>
>>>use
>>>
>>>
>>>
>>>>with CRLs.
>>>>
>>>>
>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: [email-masked]
>>>>>
>>>[mailto:[email-masked]]
>>>
>>>
>>>
>>>>>>On Behalf Of Santosh Chokhani
>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>To: 'pkix'
>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>
>>>>>>
>>>>>>Stefan:
>>>>>>
>>>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>>>
>>>more
>>>
>>>
>>>
>>>>>>robust.  The whole idea of self-issued key rollover certificates
>>>>>>and
>>>>>
>>>>then
>>>>
>>>>
>>>>
>>>>>>using the new key to issue CRL is fraught with security problems.
>>>>>>A secure solution would be one where the new key is certified by 
>>>>>>the parent
>>>>>
>>>CA.
>>>
>>>
>>>
>>>>In
>>>>
>>>>
>>>>
>>>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>>>
>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>>CRL.  The AIA
>>>>>
>>>in
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>gets you started for the indirect CRL issuer certification path 
>>>>>>and
>>>>>
>>>you
>>>
>>>
>>>
>>>>>>are
>>>>>>in business.
>>>>>>
>>>>>>-----Original Message-----
>>>>>>From: [email-masked]
>>>>>
>>>[mailto:[email-masked]]
>>>
>>>
>>>
>>>>>>On
>>>>>>Behalf Of Stefan Santesson
>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>To: David A. Cooper
>>>>>>Cc: pkix
>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>
>>>>>>
>>>>>>
>>>>>>David,
>>>>>>
>>>>>>Thanks for the clarifications, they make sense.
>>>>>>I did misread your pictures.
>>>>>>
>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>
>>>3280,
>>>
>>>
>>>
>>>>>>either the CRL issuer certificate itself, or the location of the
>>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>>the validating
>>>>>
>>>>party
>>>>
>>>>
>>>>
>>>>>>in some cases, but not in others?
>>>>>>
>>>>>>Can we also conclude that there is no real discovery solution for
>>>>>
>>>>indirect
>>>>
>>>>
>>>>
>>>>>>CRLs?
>>>>>>
>>>>>>Do you then agree then that it could be appropriate to allow AIA 
>>>>>>as
>>>>>
>>>a
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>________________________________________
>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>To: Stefan Santesson
>>>>>>Cc: pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>I believe that you are misinterpreting the figures.  They really 
>>>>>>do
>>>>>>represent three different cases, not three different certification
>>>>>
>>>paths
>>>
>>>
>>>
>>>>>>that have been constructed through the same PKI architecture.
>>>>>>
>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>
>>>certificates.
>>>
>>>
>>>
>>>>>>The
>>>>>>Root CA has issued a certificate to CA 1's new key, but not its 
>>>>>>old
>>>>>
>>>key
>>>
>>>
>>>
>>>>>>(either the Root CA never issued a certificate to CA 1's old key 
>>>>>>or
>>>>>
>>>that
>>>
>>>
>>>
>>>>>>certificate has expired).
>>>>>>
>>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>>key, but not its
>>>>>
>>>new
>>>
>>>
>>>
>>>>>>key.
>>>>>>
>>>>>>In figure 3, when CA 3 performed key rollover, it requested a new
>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>self-issued
>>>>>
>>>key
>>>
>>>
>>>
>>>>>>rollover certificates.
>>>>>>
>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>
>>>>generated
>>>>
>>>>
>>>>
>>>>>>self-issued key rollover certificates upon key rollover and then
>>>>>>had
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>Root CA issue a CA certificate to its new key.  In this case, as
>>>>>>you suggest, any of the certification paths from figures 1, 2, or 3
>>>>>
>>>could be
>>>
>>>
>>>
>>>>>>constructed.
>>>>>>
>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>
>>>specified
>>>
>>>
>>>
>>>>in
>>>>
>>>>
>>>>
>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>
>>>>Policy":
>>>>
>>>>
>>>>
>>>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>id-ad-caIssuers access method is used, the access location
>>>>>>specifies
>>>>>
>>>>where
>>>>
>>>>
>>>>
>>>>>>certificates issued to the issuer of the certificate may be found.
>>>>>
>>>If
>>>
>>>
>>>
>>>>LDAP
>>>>
>>>>
>>>>
>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>
>>>>relevant
>>>>
>>>>
>>>>
>>>>>>certificates and specify the directory attribute in which the
>>>>>
>>>>certificates
>>>>
>>>>
>>>>
>>>>>>are located. If the directory in which the certificates are stored
>>>>>
>>>>expects
>>>>
>>>>
>>>>
>>>>>>the "binary" option to be specified, then the attribute type must
>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI must
>>>>>
>>>point to
>>>
>>>
>>>
>>>>a
>>>>
>>>>
>>>>
>>>>>>file that has an extension of ".p7c" that contains a certs-only 
>>>>>>CMS
>>>>>>message (see RFC 2633). The CMS message should include all 
>>>>>>certificates
>>>>>
>>>issued
>>>
>>>
>>>
>>>>to
>>>>
>>>>
>>>>
>>>>>>the issuer of this certificate, but must at least contain all
>>>>>
>>>>certificates
>>>>
>>>>
>>>>
>>>>>>issued to the issuer of this certificate in which the subject
>>>>>>public
>>>>>
>>>key
>>>
>>>
>>>
>>>>>>may
>>>>>>be used to verify the signature on this certificate. .... For a
>>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>>appear as the
>>>>>
>>>access
>>>
>>>
>>>
>>>>>>location in an authorityInfoAccess extension when the
>>>>>
>>>id-ad-caIssuers
>>>
>>>
>>>
>>>>>>access
>>>>>>method is used are:
>>>>>
>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACe
>>>>>r
>>>>>t
>>>>>i
>>>>
>>>fi
>>>
>>>
>>>
>>>>ca
>>>>
>>>>
>>>>
>>>>>>te
>>>>>>,crossCertificatePair
>>>>>
>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertif
>>>>>i
>>>>>c
>>>>>a
>>>>
>>>te
>>>
>>>
>>>
>>>>;b
>>>>
>>>>
>>>>
>>>>>>in
>>>>>>ary,crossCertificatePair;binary
>>>>>
>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIss
>>>>>u
>>>>>e
>>>>>d
>>>>
>>>To
>>>
>>>
>>>
>>>>Go
>>>>
>>>>
>>>>
>>>>>>od
>>>>>>CA.p7c
>>>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>>>information is to be located, so there is no requirement for the
>>>>>
>>>relying
>>>
>>>
>>>
>>>>>>party to try to figure out where information is located.
>>>>>>
>>>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>>>certificates issued to the CA identified in the issuer field of the 
>>>>>>certificate.
>>>>>>
>>>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>>>attributes of the directory entry of the CA identified in the 
>>>>>>issuer field of
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>certificate.  These two attributes together hold all of the
>>>>>
>>>certificates
>>>
>>>
>>>
>>>>>>issued to the CA:  the cACertificate attribute holds the CA's 
>>>>>>self-
>>>>>
>>>>issued
>>>>
>>>>
>>>>
>>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>
>>>>>>Dave
>>>>>>
>>>>>>
>>>>>>Stefan Santesson wrote:
>>>>>>
>>>>>>David,
>>>>>>
>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>
>>>>>>I have some comments and questions on this.
>>>>>>
>>>>>>First of all we can conclude that in some scenarios (figure 1)
>>>>>>where
>>>>>
>>>a
>>>
>>>
>>>
>>>>>>self
>>>>>>issued certificate is inserted into the path, you are likely to
>>>>>>find
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>CRL
>>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>>
>>>and
>>>
>>>
>>>
>>>>>>certificate for cert signing and CRL signing).
>>>>>>
>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>
>>>>different
>>>>
>>>>
>>>>
>>>>>>path building strategies. An application that has access locally 
>>>>>>to
>>>>>
>>>all
>>>
>>>
>>>
>>>>>>chaining options may however still choose path 2 for the certs and
>>>>>
>>>path
>>>
>>>
>>>
>>>>1
>>>>
>>>>
>>>>
>>>>>>for the CRL independent of each other (which I think figure 3 
>>>>>>tries
>>>>>
>>>to
>>>
>>>
>>>
>>>>>>describe)
>>>>>>
>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>
>>>familiar
>>>
>>>
>>>
>>>>>>with doesn't use AIA to describe a directory entry where it is 
>>>>>>left
>>>>>
>>>to
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>validation application logic to be intelligent enough to find
>>>>>
>>>>appropriate
>>>>
>>>>
>>>>
>>>>>>certificate data from the directory. The model I'm familiar with 
>>>>>>is
>>>>>
>>>when
>>>
>>>
>>>
>>>>>>the
>>>>>>AIA URL explicitly identifies the exact location of the 
>>>>>>appropriate
>>>>>
>>>CA
>>>
>>>
>>>
>>>>>>certificate file, relieving the validation software from complex
>>>>>>information queries. If just location of explicit certificate files 
>>>>>>are
>>>>>
>>>identified
>>>
>>>
>>>
>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>
>>>signer
>>>
>>>
>>>
>>>>>>cert
>>>>>>if this is different from the CA certificate. This is also the
>>>>>
>>>problem
>>>
>>>
>>>
>>>>>>with
>>>>>>Denis proposal.
>>>>>>
>>>>>>I think we share the basic conclusion that the ability to locate
>>>>>>the
>>>>>
>>>CRL
>>>
>>>
>>>
>>>>>>signer certificate directly through the CRL could be very useful.
>>>>>>At
>>>>>
>>>>least
>>>>
>>>>
>>>>
>>>>>>in the case of indirect CRL but it could also be proven very 
>>>>>>useful
>>>>>
>>>in
>>>
>>>
>>>
>>>>CA
>>>>
>>>>
>>>>
>>>>>>re-keying scenarios.
>>>>>>
>>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>>
>>>its
>>>
>>>
>>>
>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>
>>>critical).
>>>
>>>
>>>
>>>>It
>>>>
>>>>
>>>>
>>>>>>would present a very clear and uncomplicated logic to certificate
>>>>>>validating applications in many cases.
>>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>________________________________________
>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>To: Stefan Santesson
>>>>>>Cc: pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>I think what you are proposing is a good idea.  In most cases, 
>>>>>>path
>>>>>>discovery algorithms assume that both the trust anchor (or trust
>>>>>
>>>>anchors)
>>>>
>>>>
>>>>
>>>>>>and the end entity certificate are provided as input.  In this
>>>>>>case,
>>>>>
>>>one
>>>
>>>
>>>
>>>>>>may
>>>>>>need to construct a certification path without a priori access to
>>>>>
>>>the
>>>
>>>
>>>
>>>>end
>>>>
>>>>
>>>>
>>>>>>entity certificate (the one with the subject public key
>>>>>
>>>corresponding to
>>>
>>>
>>>
>>>>>>the
>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>
>>>pointer) in
>>>
>>>
>>>
>>>>>>the
>>>>>>CRL would provide the relying party with a simple way to obtain 
>>>>>>the
>>>>>
>>>end
>>>
>>>
>>>
>>>>>>entity certificate for the CRL signing key's certification path. 
>>>>>>On
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>other hand, I believe that a relying party should be able to
>>>>>
>>>construct
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>certification path even without an AIA extension in the CRL, so
>>>>>>long
>>>>>
>>>as
>>>
>>>
>>>
>>>>it
>>>>
>>>>
>>>>
>>>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>
>>>>>>In each of these scenarios, the CA has performed key rollover and
>>>>>>is
>>>>>
>>>>only
>>>>
>>>>
>>>>
>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>
>>>>however,
>>>>
>>>>
>>>>
>>>>>>if
>>>>>>the CA simply choose to use different keys to sign certificates 
>>>>>>and
>>>>>
>>>CRLs
>>>
>>>
>>>
>>>>>>for
>>>>>>some other reason.
>>>>>>
>>>>>>If the PKI architecture resembled figure 1, then the certification
>>>>>
>>>path
>>>
>>>
>>>
>>>>>>for
>>>>>>the CRL signing key would just be a subset of the certification
>>>>>>path
>>>>>
>>>for
>>>
>>>
>>>
>>>>>>the
>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>
>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>
>>>necessary
>>>
>>>
>>>
>>>>to
>>>>
>>>>
>>>>
>>>>>>obtain the new-signed-with-old self-issued certificate.  In
>>>>>>building
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>certification path to the EE certificate, however, the relying
>>>>>>party
>>>>>
>>>>will
>>>>
>>>>
>>>>
>>>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>>>certificate.  This AIA extension will point to a location 
>>>>>>containing
>>>>>
>>>all
>>>
>>>
>>>
>>>>>>certificates issued to CA 2, which would include both the
>>>>>
>>>certificate
>>>
>>>
>>>
>>>>>>issued
>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>>
>>>though
>>>
>>>
>>>
>>>>>>the
>>>>>>self-issued certificate would not be part of the certification 
>>>>>>path
>>>>>
>>>to
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>EE certificate, it would be downloaded by the relying party during
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>construction of that certification path.  (Yes, there are circular
>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>
>>>>>>A similar situation would happen if the PKI architecture resembled
>>>>>
>>>>figure
>>>>
>>>>
>>>>
>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>
>>>location
>>>
>>>
>>>
>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>
>>>>downloaded
>>>>
>>>>
>>>>
>>>>>>these certificates, it would obtain both of the certificates 
>>>>>>issued
>>>>>
>>>by
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>
>>>validate
>>>
>>>
>>>
>>>>>>the
>>>>>>CRL signing key.
>>>>>>
>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>
>>>>indirect
>>>>
>>>>
>>>>
>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>>certificates pointed
>>>>>
>>>to
>>>
>>>
>>>
>>>>by
>>>>
>>>>
>>>>
>>>>>>the AIA extension in the EE certificate would not include the
>>>>>
>>>>certificate
>>>>
>>>>
>>>>
>>>>>>of
>>>>>>the CRL signer.  One could find this certificate by building in 
>>>>>>the
>>>>>>reverse direction and using the SIA extension, but that may not be 
>>>>>>the most convenient solution.
>>>>>>
>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>
>>>very
>>>
>>>
>>>
>>>>>>useful
>>>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>>>
>>>the
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>>
>>>clear,
>>>
>>>
>>>
>>>>>>but
>>>>>>I can't see any harm in including it.
>>>>>>
>>>>>>Dave
>>>>>>
>>>>>>Stefan Santesson wrote:
>>>>>>All,
>>>>>>
>>>>>>I'm interested in the opinion from members on this list about
>>>>>
>>>discovery
>>>
>>>
>>>
>>>>of
>>>>
>>>>
>>>>
>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>
>>>>>>The problem is the following.
>>>>>>
>>>>>>The relying party (RP) needs to check validity of a certificate 
>>>>>>and
>>>>>
>>>>finds
>>>>
>>>>
>>>>
>>>>>>a
>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
>>>>>>which
>>>>>
>>>in
>>>
>>>
>>>
>>>>>>this
>>>>>>particular case is either signed by another key of the CA 
>>>>>>(re-keyed
>>>>>
>>>CA)
>>>
>>>
>>>
>>>>or
>>>>
>>>>
>>>>
>>>>>>another entity (indirect CRL).
>>>>>>
>>>>>>In this case the relying party needs to obtain the certificate of
>>>>>
>>>the
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>signer which may NOT be part of the original chain. In a directory
>>>>>
>>>>centric
>>>>
>>>>
>>>>
>>>>>>solution this is retrieved from the directory, but what if such
>>>>>
>>>>directory
>>>>
>>>>
>>>>
>>>>>>is
>>>>>>not available or accessible.
>>>>>>
>>>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>>>
>>>>unless
>>>>
>>>>
>>>>
>>>>>>the RP already have possession of it by some other means.
>>>>>>
>>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>>
>>>point
>>>
>>>
>>>
>>>>to
>>>>
>>>>
>>>>
>>>>>>the location of the signers certificate in the same manner as is
>>>>>
>>>>possible
>>>>
>>>>
>>>>
>>>>>>for certificates.
>>>>>>
>>>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>>>
>>>only
>>>
>>>
>>>
>>>>>>certificate extension as today.
>>>>>>
>>>>>>Thoughts and comments?
>>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>
>>
> 
> 
> 

Date: Thu, 14 Oct 2004 17:12:38 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: "'pkix'" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Santosh,

> Denis:

> With the three assumptions/constraints I provided, how would you locate the
> CRL issuer certificate for the two examples using 3280 extensions and
> without putting AIA in the CRL?

As far as I understand, the three assumptions are:

1.  You are directory challenged; and
     [I do not understand what this means]
2.  You use AIA to develop the path; and
     [It does not matter]
3.  You develop the path from the end entity to trust anchor
     [Could also be the contrary].

If this is not correct, thus please correct.

Then my request is: "using ANY OF the current extensions that are defined in 
RFC 3280", which includes SIA.

In your explanations  you said :
"if you do no deal with SIA et. al"

This last assumption is neither part of the three assumptions and does not 
conform to my request.

Denis

> That is my point.
> 
> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]] 
> Sent: Thursday, October 14, 2004 6:22 AM
> To: Santosh Chokhani
> Cc: 'pkix'
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Santosh,
> 
> You misread my request. I said:
> 
> "For the time being, I would like that you provide an example where, when
> using the current extensions that are defined in RFC 3280, it will NOT be
> possible to locate a CRL Issuer certificate."
> 
> Maybe I would have needed to be clearer and say :
> 
> "For the time being, I would like that you provide an example where, when
> using ANY OF the current extensions that are defined in RFC 3280, it will 
> NOT be possible to locate a CRL Issuer certificate."
> 
> The examples you provide below do not fulfil this request.
> 
> The assumption is that there exists a path to be tested for revocation 
> checking (and that it does not matter to know which way it has been 
> constructed).
> 
> I am not saying that using AIA in CRL might not be useful, but I am still 
> lacking the demonstration that there would be no other way.
> 
> Denis
> 
> 
> 
>>Denis:
>>
>>Two examples are very simple: one for direct CRL Issuer and one for 
>>Indirect CRL Issuer.
>>
>>Let us make the following assumptions that Stefan was making:
>>
>>1.  You are directory challenged; and
>>2.  You use AIA to develop the path; and
>>3.  You develop the path from the end entity to trust anchor.
>>
>>From what I know of MS CAPI, these are reasonable 
>>assumptions/constraints.
>>
>>Now the examples.
>>
>>Example 1: Direct CRL Issuer
>>
>>The certificate trust path is:
>>Root --> CA1 --> CA 2, old key --> Denis
>>
>>The CRL trust path is:
>>Root --> CA1 --> CA 2, new key --> CRL
>>
>>(Note: We do not do self-issued certificate since there is no simple, 
>>secure way to check their revocation status).
>>
>>Now, with AIA in CRL, finding the CA2, new key certificate is 
>>straightforward.  How would you find it if you do no deal with SIA et. 
>>al.
>>
>>Example 2: Indirect CRL Issuer
>>
>>The certificate trust path is:
>>Root --> CA1 --> CA 2 --> Denis
>>(Note: Denis's certificate points to CRL DP of an indirect CRL issued 
>>by CAI.
>>
>>The CRL trust path is:
>>Root --> CAI --> CRL
>>
>>Now, with AIA in CRL, finding the CAI certificate is straightforward.  
>>How would you find it if you do no deal with SIA et. al.
>>
>>In addition to the need cited above, please note that the extension 
>>semantics does not change, it does not hinder any interoperability, 
>>and it does not break any backward compatibility.  So, what if I 
>>wanted to use this extension in the CRL.  It does no harm to other 
>>relying parties.
>>
>>-----Original Message-----
>>From: [email-masked] 
>>[mailto:[email-masked]] On Behalf Of Denis Pinkas
>>Sent: Wednesday, October 13, 2004 11:01 AM
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>
>>
>>Stefan,
>>
>>
>>
>>>Denis,
>>
>>
>>>I'm not sure what you mean.
>>
>>
>>For the time being, I would like that you provide an example where, 
>>when
>>using the current extensions that are defined in RFC 3280, it will NOT be 
>>possible to locate a CRL Issuer certificate.
>>
>>If you are able to provide that example, then it would justify the 
>>need for
>>an extension at least for one case. Then we can see what that case is.
>>
>>I am awaiting that example.
>>
>>Denis
>>
>>
>>
>>
>>>I conclude that I agree with Santosh.
>>>
>>>The debate is still open... Feel free to express your opinion.
>>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: Denis Pinkas [mailto:[email-masked]]
>>>>Sent: den 13 oktober 2004 16:34
>>>>To: Stefan Santesson
>>>>Cc: Santosh Chokhani; pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>You are making a conclusion without letting me the time to respond. I 
>>>>will need more time to look at the pictures (and understand them).
>>>>
>>>>For the time being, I am still reluctant to accept
>>>
>>>"yet-another-method".
>>>
>>>
>>>
>>>>We already have too many.
>>>>
>>>>
>>>>
>>>>
>>>>>Santosh,
>>>>>
>>>>>I conclude that we are in complete and total agreement.
>>>>>The question is how to go about this.
>>>>
>>>>>Could we do this amendment to RFC 3280 in its next revision? It 
>>>>>would hopefully just be a minor change.
>>>>
>>>>This is exactly what I feared.
>>>>
>>>>We usually end-up with a "minor change" in an extension without 
>>>>saying cleary how and when it shall/should be used.
>>>>
>>>>I still have in mind that:
>>>>
>>>>1) a certification path must first be constructed,
>>>>2) then the revocation checking of that path must be done.
>>>>
>>>>This means that information about CRL issuers certificates locations
>>>
>>>may
>>>
>>>
>>>
>>>>certainly be found in that chain. If not, I would like an example.
>>>>
>>>>Denis
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>It would not change the definition of AIA just add that it can be
>>>>
>>>used
>>>
>>>
>>>
>>>>also as CRL extension and list eventual restrictions and guidance for
>>>
>>>use
>>>
>>>
>>>
>>>>with CRLs.
>>>>
>>>>
>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>-----Original Message-----
>>>>>>From: [email-masked]
>>>>>
>>>[mailto:[email-masked]]
>>>
>>>
>>>
>>>>>>On Behalf Of Santosh Chokhani
>>>>>>Sent: den 13 oktober 2004 04:33
>>>>>>To: 'pkix'
>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>
>>>>>>
>>>>>>Stefan:
>>>>>>
>>>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>>>
>>>more
>>>
>>>
>>>
>>>>>>robust.  The whole idea of self-issued key rollover certificates 
>>>>>>and
>>>>>
>>>>then
>>>>
>>>>
>>>>
>>>>>>using the new key to issue CRL is fraught with security problems.  
>>>>>>A secure solution would be one where the new key is certified by 
>>>>>>the parent
>>>>>
>>>CA.
>>>
>>>
>>>
>>>>In
>>>>
>>>>
>>>>
>>>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>>>
>>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in 
>>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>>CRL.  The AIA
>>>>>
>>>in
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>gets you started for the indirect CRL issuer certification path and
>>>>>
>>>you
>>>
>>>
>>>
>>>>>>are
>>>>>>in business.
>>>>>>
>>>>>>-----Original Message-----
>>>>>>From: [email-masked]
>>>>>
>>>[mailto:[email-masked]]
>>>
>>>
>>>
>>>>>>On
>>>>>>Behalf Of Stefan Santesson
>>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>>To: David A. Cooper
>>>>>>Cc: pkix
>>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>>
>>>>>>
>>>>>>
>>>>>>David,
>>>>>>
>>>>>>Thanks for the clarifications, they make sense.
>>>>>>I did misread your pictures.
>>>>>>
>>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>>
>>>3280,
>>>
>>>
>>>
>>>>>>either the CRL issuer certificate itself, or the location of the 
>>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>>the validating
>>>>>
>>>>party
>>>>
>>>>
>>>>
>>>>>>in some cases, but not in others?
>>>>>>
>>>>>>Can we also conclude that there is no real discovery solution for
>>>>>
>>>>indirect
>>>>
>>>>
>>>>
>>>>>>CRLs?
>>>>>>
>>>>>>Do you then agree then that it could be appropriate to allow AIA as
>>>>>
>>>a
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>________________________________________
>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>Sent: den 12 oktober 2004 21:14
>>>>>>To: Stefan Santesson
>>>>>>Cc: pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>I believe that you are misinterpreting the figures.  They really do 
>>>>>>represent three different cases, not three different certification
>>>>>
>>>paths
>>>
>>>
>>>
>>>>>>that have been constructed through the same PKI architecture.
>>>>>>
>>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>>
>>>certificates.
>>>
>>>
>>>
>>>>>>The
>>>>>>Root CA has issued a certificate to CA 1's new key, but not its old
>>>>>
>>>key
>>>
>>>
>>>
>>>>>>(either the Root CA never issued a certificate to CA 1's old key or
>>>>>
>>>that
>>>
>>>
>>>
>>>>>>certificate has expired).
>>>>>>
>>>>>>In figure 2, CA 2 has also generated self-issued key rollover 
>>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>>key, but not its
>>>>>
>>>new
>>>
>>>
>>>
>>>>>>key.
>>>>>>
>>>>>>In figure 3, when CA 3 performed key rollover, it requested a new 
>>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>>self-issued
>>>>>
>>>key
>>>
>>>
>>>
>>>>>>rollover certificates.
>>>>>>
>>>>>>Of course, another realistic scenario would be one in which a CA
>>>>>
>>>>generated
>>>>
>>>>
>>>>
>>>>>>self-issued key rollover certificates upon key rollover and then 
>>>>>>had
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>Root CA issue a CA certificate to its new key.  In this case, as 
>>>>>>you suggest, any of the certification paths from figures 1, 2, or 3
>>>>>
>>>could be
>>>
>>>
>>>
>>>>>>constructed.
>>>>>>
>>>>>>As for the contents of the AIA extension, here is what I have
>>>>>
>>>specified
>>>
>>>
>>>
>>>>in
>>>>
>>>>
>>>>
>>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>>
>>>>Policy":
>>>>
>>>>
>>>>
>>>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>id-ad-caIssuers access method is used, the access location 
>>>>>>specifies
>>>>>
>>>>where
>>>>
>>>>
>>>>
>>>>>>certificates issued to the issuer of the certificate may be found.
>>>>>
>>>If
>>>
>>>
>>>
>>>>LDAP
>>>>
>>>>
>>>>
>>>>>>is used, the URI must include the DN of the entry containing the
>>>>>
>>>>relevant
>>>>
>>>>
>>>>
>>>>>>certificates and specify the directory attribute in which the
>>>>>
>>>>certificates
>>>>
>>>>
>>>>
>>>>>>are located. If the directory in which the certificates are stored
>>>>>
>>>>expects
>>>>
>>>>
>>>>
>>>>>>the "binary" option to be specified, then the attribute type must 
>>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI must
>>>>>
>>>point to
>>>
>>>
>>>
>>>>a
>>>>
>>>>
>>>>
>>>>>>file that has an extension of ".p7c" that contains a certs-only CMS 
>>>>>>message (see RFC 2633). The CMS message should include all 
>>>>>>certificates
>>>>>
>>>issued
>>>
>>>
>>>
>>>>to
>>>>
>>>>
>>>>
>>>>>>the issuer of this certificate, but must at least contain all
>>>>>
>>>>certificates
>>>>
>>>>
>>>>
>>>>>>issued to the issuer of this certificate in which the subject 
>>>>>>public
>>>>>
>>>key
>>>
>>>
>>>
>>>>>>may
>>>>>>be used to verify the signature on this certificate. .... For a 
>>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>>appear as the
>>>>>
>>>access
>>>
>>>
>>>
>>>>>>location in an authorityInfoAccess extension when the
>>>>>
>>>id-ad-caIssuers
>>>
>>>
>>>
>>>>>>access
>>>>>>method is used are:
>>>>>
>>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACer
>>>>>t
>>>>>i
>>>>
>>>fi
>>>
>>>
>>>
>>>>ca
>>>>
>>>>
>>>>
>>>>>>te
>>>>>>,crossCertificatePair
>>>>>
>>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifi
>>>>>c
>>>>>a
>>>>
>>>te
>>>
>>>
>>>
>>>>;b
>>>>
>>>>
>>>>
>>>>>>in
>>>>>>ary,crossCertificatePair;binary
>>>>>
>>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssu
>>>>>e
>>>>>d
>>>>
>>>To
>>>
>>>
>>>
>>>>Go
>>>>
>>>>
>>>>
>>>>>>od
>>>>>>CA.p7c
>>>>>>For both LDAP and HTTP, the URI provides the exact location where 
>>>>>>information is to be located, so there is no requirement for the
>>>>>
>>>relying
>>>
>>>
>>>
>>>>>>party to try to figure out where information is located.
>>>>>>
>>>>>>The HTTP URI points to a certs-only CMS message that includes all 
>>>>>>certificates issued to the CA identified in the issuer field of the 
>>>>>>certificate.
>>>>>>
>>>>>>The LDAP URI points to the cACertificate and crossCertificatePair 
>>>>>>attributes of the directory entry of the CA identified in the 
>>>>>>issuer field of
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>certificate.  These two attributes together hold all of the
>>>>>
>>>certificates
>>>
>>>
>>>
>>>>>>issued to the CA:  the cACertificate attribute holds the CA's self-
>>>>>
>>>>issued
>>>>
>>>>
>>>>
>>>>>>certificates and the crossCertificatePair attribute holds the 
>>>>>>cross-certificates issued to the CA by other CAs.
>>>>>>
>>>>>>Dave
>>>>>>
>>>>>>
>>>>>>Stefan Santesson wrote:
>>>>>>
>>>>>>David,
>>>>>>
>>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>>
>>>>>>I have some comments and questions on this.
>>>>>>
>>>>>>First of all we can conclude that in some scenarios (figure 1) 
>>>>>>where
>>>>>
>>>a
>>>
>>>
>>>
>>>>>>self
>>>>>>issued certificate is inserted into the path, you are likely to 
>>>>>>find
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>CRL
>>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>>
>>>and
>>>
>>>
>>>
>>>>>>certificate for cert signing and CRL signing).
>>>>>>
>>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>>
>>>>different
>>>>
>>>>
>>>>
>>>>>>path building strategies. An application that has access locally to
>>>>>
>>>all
>>>
>>>
>>>
>>>>>>chaining options may however still choose path 2 for the certs and
>>>>>
>>>path
>>>
>>>
>>>
>>>>1
>>>>
>>>>
>>>>
>>>>>>for the CRL independent of each other (which I think figure 3 tries
>>>>>
>>>to
>>>
>>>
>>>
>>>>>>describe)
>>>>>>
>>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>>
>>>familiar
>>>
>>>
>>>
>>>>>>with doesn't use AIA to describe a directory entry where it is left
>>>>>
>>>to
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>validation application logic to be intelligent enough to find
>>>>>
>>>>appropriate
>>>>
>>>>
>>>>
>>>>>>certificate data from the directory. The model I'm familiar with is
>>>>>
>>>when
>>>
>>>
>>>
>>>>>>the
>>>>>>AIA URL explicitly identifies the exact location of the appropriate
>>>>>
>>>CA
>>>
>>>
>>>
>>>>>>certificate file, relieving the validation software from complex 
>>>>>>information queries. If just location of explicit certificate files 
>>>>>>are
>>>>>
>>>identified
>>>
>>>
>>>
>>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>>
>>>signer
>>>
>>>
>>>
>>>>>>cert
>>>>>>if this is different from the CA certificate. This is also the
>>>>>
>>>problem
>>>
>>>
>>>
>>>>>>with
>>>>>>Denis proposal.
>>>>>>
>>>>>>I think we share the basic conclusion that the ability to locate 
>>>>>>the
>>>>>
>>>CRL
>>>
>>>
>>>
>>>>>>signer certificate directly through the CRL could be very useful. 
>>>>>>At
>>>>>
>>>>least
>>>>
>>>>
>>>>
>>>>>>in the case of indirect CRL but it could also be proven very useful
>>>>>
>>>in
>>>
>>>
>>>
>>>>CA
>>>>
>>>>
>>>>
>>>>>>re-keying scenarios.
>>>>>>
>>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>>
>>>its
>>>
>>>
>>>
>>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>>
>>>critical).
>>>
>>>
>>>
>>>>It
>>>>
>>>>
>>>>
>>>>>>would present a very clear and uncomplicated logic to certificate 
>>>>>>validating applications in many cases.
>>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>________________________________________
>>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>>Sent: den 7 oktober 2004 18:35
>>>>>>To: Stefan Santesson
>>>>>>Cc: pkix
>>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>>
>>>>>>Stefan,
>>>>>>
>>>>>>I think what you are proposing is a good idea.  In most cases, path 
>>>>>>discovery algorithms assume that both the trust anchor (or trust
>>>>>
>>>>anchors)
>>>>
>>>>
>>>>
>>>>>>and the end entity certificate are provided as input.  In this 
>>>>>>case,
>>>>>
>>>one
>>>
>>>
>>>
>>>>>>may
>>>>>>need to construct a certification path without a priori access to
>>>>>
>>>the
>>>
>>>
>>>
>>>>end
>>>>
>>>>
>>>>
>>>>>>entity certificate (the one with the subject public key
>>>>>
>>>corresponding to
>>>
>>>
>>>
>>>>>>the
>>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>>
>>>pointer) in
>>>
>>>
>>>
>>>>>>the
>>>>>>CRL would provide the relying party with a simple way to obtain the
>>>>>
>>>end
>>>
>>>
>>>
>>>>>>entity certificate for the CRL signing key's certification path. On
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>other hand, I believe that a relying party should be able to
>>>>>
>>>construct
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>certification path even without an AIA extension in the CRL, so 
>>>>>>long
>>>>>
>>>as
>>>
>>>
>>>
>>>>it
>>>>
>>>>
>>>>
>>>>>>is not an indirect CRL.  Attached is a drawing of the three basic 
>>>>>>scenarios that I expect a relying party may encounter:
>>>>>>
>>>>>>In each of these scenarios, the CA has performed key rollover and 
>>>>>>is
>>>>>
>>>>only
>>>>
>>>>
>>>>
>>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>>
>>>>however,
>>>>
>>>>
>>>>
>>>>>>if
>>>>>>the CA simply choose to use different keys to sign certificates and
>>>>>
>>>CRLs
>>>
>>>
>>>
>>>>>>for
>>>>>>some other reason.
>>>>>>
>>>>>>If the PKI architecture resembled figure 1, then the certification
>>>>>
>>>path
>>>
>>>
>>>
>>>>>>for
>>>>>>the CRL signing key would just be a subset of the certification 
>>>>>>path
>>>>>
>>>for
>>>
>>>
>>>
>>>>>>the
>>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>>
>>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>>
>>>necessary
>>>
>>>
>>>
>>>>to
>>>>
>>>>
>>>>
>>>>>>obtain the new-signed-with-old self-issued certificate.  In 
>>>>>>building
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>certification path to the EE certificate, however, the relying 
>>>>>>party
>>>>>
>>>>will
>>>>
>>>>
>>>>
>>>>>>obtain the certificates pointed to by the AIA extension in the EE 
>>>>>>certificate.  This AIA extension will point to a location 
>>>>>>containing
>>>>>
>>>all
>>>
>>>
>>>
>>>>>>certificates issued to CA 2, which would include both the
>>>>>
>>>certificate
>>>
>>>
>>>
>>>>>>issued
>>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>>
>>>though
>>>
>>>
>>>
>>>>>>the
>>>>>>self-issued certificate would not be part of the certification path
>>>>>
>>>to
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>EE certificate, it would be downloaded by the relying party during
>>>>>
>>>the
>>>
>>>
>>>
>>>>>>construction of that certification path.  (Yes, there are circular 
>>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>>
>>>>>>A similar situation would happen if the PKI architecture resembled
>>>>>
>>>>figure
>>>>
>>>>
>>>>
>>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>>
>>>location
>>>
>>>
>>>
>>>>>>containing certificates issued to CA 3.  When the relying party
>>>>>
>>>>downloaded
>>>>
>>>>
>>>>
>>>>>>these certificates, it would obtain both of the certificates issued
>>>>>
>>>by
>>>
>>>
>>>
>>>>the
>>>>
>>>>
>>>>
>>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>>
>>>validate
>>>
>>>
>>>
>>>>>>the
>>>>>>CRL signing key.
>>>>>>
>>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>>
>>>>indirect
>>>>
>>>>
>>>>
>>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3 
>>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>>certificates pointed
>>>>>
>>>to
>>>
>>>
>>>
>>>>by
>>>>
>>>>
>>>>
>>>>>>the AIA extension in the EE certificate would not include the
>>>>>
>>>>certificate
>>>>
>>>>
>>>>
>>>>>>of
>>>>>>the CRL signer.  One could find this certificate by building in the 
>>>>>>reverse direction and using the SIA extension, but that may not be 
>>>>>>the most convenient solution.
>>>>>>
>>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>>
>>>very
>>>
>>>
>>>
>>>>>>useful
>>>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>>>
>>>the
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>>
>>>clear,
>>>
>>>
>>>
>>>>>>but
>>>>>>I can't see any harm in including it.
>>>>>>
>>>>>>Dave
>>>>>>
>>>>>>Stefan Santesson wrote:
>>>>>>All,
>>>>>>
>>>>>>I'm interested in the opinion from members on this list about
>>>>>
>>>discovery
>>>
>>>
>>>
>>>>of
>>>>
>>>>
>>>>
>>>>>>CRL signer's certificate in non directory centric environments.
>>>>>>
>>>>>>The problem is the following.
>>>>>>
>>>>>>The relying party (RP) needs to check validity of a certificate and
>>>>>
>>>>finds
>>>>
>>>>
>>>>
>>>>>>a
>>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL 
>>>>>>which
>>>>>
>>>in
>>>
>>>
>>>
>>>>>>this
>>>>>>particular case is either signed by another key of the CA (re-keyed
>>>>>
>>>CA)
>>>
>>>
>>>
>>>>or
>>>>
>>>>
>>>>
>>>>>>another entity (indirect CRL).
>>>>>>
>>>>>>In this case the relying party needs to obtain the certificate of
>>>>>
>>>the
>>>
>>>
>>>
>>>>CRL
>>>>
>>>>
>>>>
>>>>>>signer which may NOT be part of the original chain. In a directory
>>>>>
>>>>centric
>>>>
>>>>
>>>>
>>>>>>solution this is retrieved from the directory, but what if such
>>>>>
>>>>directory
>>>>
>>>>
>>>>
>>>>>>is
>>>>>>not available or accessible.
>>>>>>
>>>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>>>
>>>>unless
>>>>
>>>>
>>>>
>>>>>>the RP already have possession of it by some other means.
>>>>>>
>>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>>
>>>point
>>>
>>>
>>>
>>>>to
>>>>
>>>>
>>>>
>>>>>>the location of the signers certificate in the same manner as is
>>>>>
>>>>possible
>>>>
>>>>
>>>>
>>>>>>for certificates.
>>>>>>
>>>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>>>
>>>only
>>>
>>>
>>>
>>>>>>certificate extension as today.
>>>>>>
>>>>>>Thoughts and comments?
>>>>>>
>>>>>>Stefan Santesson
>>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>
>>
> 
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 14 Oct 2004 09:10:09 -0400
Importance: Normal
Sender: [email-masked]

Denis:

With the three assumptions/constraints I provided, how would you locate the
CRL issuer certificate for the two examples using 3280 extensions and
without putting AIA in the CRL?

That is my point.

-----Original Message-----
From: Denis Pinkas [mailto:[email-masked]] 
Sent: Thursday, October 14, 2004 6:22 AM
To: Santosh Chokhani
Cc: 'pkix'
Subject: Re: Signer certificate discovery for CRLs

Santosh,

You misread my request. I said:

"For the time being, I would like that you provide an example where, when
using the current extensions that are defined in RFC 3280, it will NOT be
possible to locate a CRL Issuer certificate."

Maybe I would have needed to be clearer and say :

"For the time being, I would like that you provide an example where, when
using ANY OF the current extensions that are defined in RFC 3280, it will 
NOT be possible to locate a CRL Issuer certificate."

The examples you provide below do not fulfil this request.

The assumption is that there exists a path to be tested for revocation 
checking (and that it does not matter to know which way it has been 
constructed).

I am not saying that using AIA in CRL might not be useful, but I am still 
lacking the demonstration that there would be no other way.

Denis

> Denis:
> 
> Two examples are very simple: one for direct CRL Issuer and one for 
> Indirect CRL Issuer.
> 
> Let us make the following assumptions that Stefan was making:
> 
> 1.  You are directory challenged; and
> 2.  You use AIA to develop the path; and
> 3.  You develop the path from the end entity to trust anchor.
> 
> From what I know of MS CAPI, these are reasonable 
> assumptions/constraints.
> 
> Now the examples.
> 
> Example 1: Direct CRL Issuer
> 
> The certificate trust path is:
> Root --> CA1 --> CA 2, old key --> Denis
> 
> The CRL trust path is:
> Root --> CA1 --> CA 2, new key --> CRL
> 
> (Note: We do not do self-issued certificate since there is no simple, 
> secure way to check their revocation status).
> 
> Now, with AIA in CRL, finding the CA2, new key certificate is 
> straightforward.  How would you find it if you do no deal with SIA et. 
> al.
> 
> Example 2: Indirect CRL Issuer
> 
> The certificate trust path is:
> Root --> CA1 --> CA 2 --> Denis
> (Note: Denis's certificate points to CRL DP of an indirect CRL issued 
> by CAI.
> 
> The CRL trust path is:
> Root --> CAI --> CRL
> 
> Now, with AIA in CRL, finding the CAI certificate is straightforward.  
> How would you find it if you do no deal with SIA et. al.
> 
> In addition to the need cited above, please note that the extension 
> semantics does not change, it does not hinder any interoperability, 
> and it does not break any backward compatibility.  So, what if I 
> wanted to use this extension in the CRL.  It does no harm to other 
> relying parties.
> 
> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Denis Pinkas
> Sent: Wednesday, October 13, 2004 11:01 AM
> To: Stefan Santesson
> Cc: Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> 
> Stefan,
> 
> 
>>Denis,
> 
> 
>>I'm not sure what you mean.
> 
> 
> For the time being, I would like that you provide an example where, 
> when
> using the current extensions that are defined in RFC 3280, it will NOT be 
> possible to locate a CRL Issuer certificate.
> 
> If you are able to provide that example, then it would justify the 
> need for
> an extension at least for one case. Then we can see what that case is.
> 
> I am awaiting that example.
> 
> Denis
> 
> 
> 
>>I conclude that I agree with Santosh.
>>
>>The debate is still open... Feel free to express your opinion.
>>
>>Stefan Santesson
>>Microsoft Security Center of Excellence (SCOE)
>> 
>>
>>
>>
>>>-----Original Message-----
>>>From: Denis Pinkas [mailto:[email-masked]]
>>>Sent: den 13 oktober 2004 16:34
>>>To: Stefan Santesson
>>>Cc: Santosh Chokhani; pkix
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>Stefan,
>>>
>>>You are making a conclusion without letting me the time to respond. I 
>>>will need more time to look at the pictures (and understand them).
>>>
>>>For the time being, I am still reluctant to accept
>>
>>"yet-another-method".
>>
>>
>>>We already have too many.
>>>
>>>
>>>
>>>>Santosh,
>>>>
>>>>I conclude that we are in complete and total agreement.
>>>>The question is how to go about this.
>>>
>>>>Could we do this amendment to RFC 3280 in its next revision? It 
>>>>would hopefully just be a minor change.
>>>
>>>This is exactly what I feared.
>>>
>>>We usually end-up with a "minor change" in an extension without 
>>>saying cleary how and when it shall/should be used.
>>>
>>>I still have in mind that:
>>>
>>> 1) a certification path must first be constructed,
>>> 2) then the revocation checking of that path must be done.
>>>
>>>This means that information about CRL issuers certificates locations
>>
>>may
>>
>>
>>>certainly be found in that chain. If not, I would like an example.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>>It would not change the definition of AIA just add that it can be
>>>
>>used
>>
>>
>>>also as CRL extension and list eventual restrictions and guidance for
>>
>>use
>>
>>
>>>with CRLs.
>>>
>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>-----Original Message-----
>>>>>From: [email-masked]
>>>>
>>[mailto:[email-masked]]
>>
>>
>>>>>On Behalf Of Santosh Chokhani
>>>>>Sent: den 13 oktober 2004 04:33
>>>>>To: 'pkix'
>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>
>>>>>
>>>>>Stefan:
>>>>>
>>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>>
>>more
>>
>>
>>>>>robust.  The whole idea of self-issued key rollover certificates 
>>>>>and
>>>>
>>>then
>>>
>>>
>>>>>using the new key to issue CRL is fraught with security problems.  
>>>>>A secure solution would be one where the new key is certified by 
>>>>>the parent
>>>>
>>CA.
>>
>>
>>>In
>>>
>>>
>>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>>
>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in 
>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>CRL.  The AIA
>>>>
>>in
>>
>>
>>>CRL
>>>
>>>
>>>>>gets you started for the indirect CRL issuer certification path and
>>>>
>>you
>>
>>
>>>>>are
>>>>>in business.
>>>>>
>>>>>-----Original Message-----
>>>>>From: [email-masked]
>>>>
>>[mailto:[email-masked]]
>>
>>
>>>>>On
>>>>>Behalf Of Stefan Santesson
>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>To: David A. Cooper
>>>>>Cc: pkix
>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>
>>>>>
>>>>>
>>>>>David,
>>>>>
>>>>>Thanks for the clarifications, they make sense.
>>>>>I did misread your pictures.
>>>>>
>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>
>>3280,
>>
>>
>>>>>either the CRL issuer certificate itself, or the location of the 
>>>>>CRL issuer certificate, will be clearly identified/available for 
>>>>>the validating
>>>>
>>>party
>>>
>>>
>>>>>in some cases, but not in others?
>>>>>
>>>>>Can we also conclude that there is no real discovery solution for
>>>>
>>>indirect
>>>
>>>
>>>>>CRLs?
>>>>>
>>>>>Do you then agree then that it could be appropriate to allow AIA as
>>>>
>>a
>>
>>
>>>CRL
>>>
>>>
>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>________________________________________
>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>Sent: den 12 oktober 2004 21:14
>>>>>To: Stefan Santesson
>>>>>Cc: pkix
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>Stefan,
>>>>>
>>>>>I believe that you are misinterpreting the figures.  They really do 
>>>>>represent three different cases, not three different certification
>>>>
>>paths
>>
>>
>>>>>that have been constructed through the same PKI architecture.
>>>>>
>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>
>>certificates.
>>
>>
>>>>>The
>>>>>Root CA has issued a certificate to CA 1's new key, but not its old
>>>>
>>key
>>
>>
>>>>>(either the Root CA never issued a certificate to CA 1's old key or
>>>>
>>that
>>
>>
>>>>>certificate has expired).
>>>>>
>>>>>In figure 2, CA 2 has also generated self-issued key rollover 
>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>key, but not its
>>>>
>>new
>>
>>
>>>>>key.
>>>>>
>>>>>In figure 3, when CA 3 performed key rollover, it requested a new 
>>>>>CA certificate from the Root CA.  CA 3 did not generated 
>>>>>self-issued
>>>>
>>key
>>
>>
>>>>>rollover certificates.
>>>>>
>>>>>Of course, another realistic scenario would be one in which a CA
>>>>
>>>generated
>>>
>>>
>>>>>self-issued key rollover certificates upon key rollover and then 
>>>>>had
>>>>
>>the
>>
>>
>>>>>Root CA issue a CA certificate to its new key.  In this case, as 
>>>>>you suggest, any of the certification paths from figures 1, 2, or 3
>>>>
>>could be
>>
>>
>>>>>constructed.
>>>>>
>>>>>As for the contents of the AIA extension, here is what I have
>>>>
>>specified
>>
>>
>>>in
>>>
>>>
>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>
>>>Policy":
>>>
>>>
>>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>>
>>the
>>
>>
>>>>>id-ad-caIssuers access method is used, the access location 
>>>>>specifies
>>>>
>>>where
>>>
>>>
>>>>>certificates issued to the issuer of the certificate may be found.
>>>>
>>If
>>
>>
>>>LDAP
>>>
>>>
>>>>>is used, the URI must include the DN of the entry containing the
>>>>
>>>relevant
>>>
>>>
>>>>>certificates and specify the directory attribute in which the
>>>>
>>>certificates
>>>
>>>
>>>>>are located. If the directory in which the certificates are stored
>>>>
>>>expects
>>>
>>>
>>>>>the "binary" option to be specified, then the attribute type must 
>>>>>be followed by ";binary" in the URI. If HTTP is used, the URI must
>>>>
>>point to
>>
>>
>>>a
>>>
>>>
>>>>>file that has an extension of ".p7c" that contains a certs-only CMS 
>>>>>message (see RFC 2633). The CMS message should include all 
>>>>>certificates
>>>>
>>issued
>>
>>
>>>to
>>>
>>>
>>>>>the issuer of this certificate, but must at least contain all
>>>>
>>>certificates
>>>
>>>
>>>>>issued to the issuer of this certificate in which the subject 
>>>>>public
>>>>
>>key
>>
>>
>>>>>may
>>>>>be used to verify the signature on this certificate. .... For a 
>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>appear as the
>>>>
>>access
>>
>>
>>>>>location in an authorityInfoAccess extension when the
>>>>
>>id-ad-caIssuers
>>
>>
>>>>>access
>>>>>method is used are:
>>>>
>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACer
>>>>t
>>>>i
>>>
>>fi
>>
>>
>>>ca
>>>
>>>
>>>>>te
>>>>>,crossCertificatePair
>>>>
>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifi
>>>>c
>>>>a
>>>
>>te
>>
>>
>>>;b
>>>
>>>
>>>>>in
>>>>>ary,crossCertificatePair;binary
>>>>
>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssu
>>>>e
>>>>d
>>>
>>To
>>
>>
>>>Go
>>>
>>>
>>>>>od
>>>>>CA.p7c
>>>>>For both LDAP and HTTP, the URI provides the exact location where 
>>>>>information is to be located, so there is no requirement for the
>>>>
>>relying
>>
>>
>>>>>party to try to figure out where information is located.
>>>>>
>>>>>The HTTP URI points to a certs-only CMS message that includes all 
>>>>>certificates issued to the CA identified in the issuer field of the 
>>>>>certificate.
>>>>>
>>>>>The LDAP URI points to the cACertificate and crossCertificatePair 
>>>>>attributes of the directory entry of the CA identified in the 
>>>>>issuer field of
>>>>
>>the
>>
>>
>>>>>certificate.  These two attributes together hold all of the
>>>>
>>certificates
>>
>>
>>>>>issued to the CA:  the cACertificate attribute holds the CA's self-
>>>>
>>>issued
>>>
>>>
>>>>>certificates and the crossCertificatePair attribute holds the 
>>>>>cross-certificates issued to the CA by other CAs.
>>>>>
>>>>>Dave
>>>>>
>>>>>
>>>>>Stefan Santesson wrote:
>>>>>
>>>>>David,
>>>>>
>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>
>>>>>I have some comments and questions on this.
>>>>>
>>>>>First of all we can conclude that in some scenarios (figure 1) 
>>>>>where
>>>>
>>a
>>
>>
>>>>>self
>>>>>issued certificate is inserted into the path, you are likely to 
>>>>>find
>>>>
>>the
>>
>>
>>>>>CRL
>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>
>>and
>>
>>
>>>>>certificate for cert signing and CRL signing).
>>>>>
>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>
>>>different
>>>
>>>
>>>>>path building strategies. An application that has access locally to
>>>>
>>all
>>
>>
>>>>>chaining options may however still choose path 2 for the certs and
>>>>
>>path
>>
>>
>>>1
>>>
>>>
>>>>>for the CRL independent of each other (which I think figure 3 tries
>>>>
>>to
>>
>>
>>>>>describe)
>>>>>
>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>
>>familiar
>>
>>
>>>>>with doesn't use AIA to describe a directory entry where it is left
>>>>
>>to
>>
>>
>>>the
>>>
>>>
>>>>>validation application logic to be intelligent enough to find
>>>>
>>>appropriate
>>>
>>>
>>>>>certificate data from the directory. The model I'm familiar with is
>>>>
>>when
>>
>>
>>>>>the
>>>>>AIA URL explicitly identifies the exact location of the appropriate
>>>>
>>CA
>>
>>
>>>>>certificate file, relieving the validation software from complex 
>>>>>information queries. If just location of explicit certificate files 
>>>>>are
>>>>
>>identified
>>
>>
>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>
>>signer
>>
>>
>>>>>cert
>>>>>if this is different from the CA certificate. This is also the
>>>>
>>problem
>>
>>
>>>>>with
>>>>>Denis proposal.
>>>>>
>>>>>I think we share the basic conclusion that the ability to locate 
>>>>>the
>>>>
>>CRL
>>
>>
>>>>>signer certificate directly through the CRL could be very useful. 
>>>>>At
>>>>
>>>least
>>>
>>>
>>>>>in the case of indirect CRL but it could also be proven very useful
>>>>
>>in
>>
>>
>>>CA
>>>
>>>
>>>>>re-keying scenarios.
>>>>>
>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>
>>its
>>
>>
>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>
>>critical).
>>
>>
>>>It
>>>
>>>
>>>>>would present a very clear and uncomplicated logic to certificate 
>>>>>validating applications in many cases.
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>________________________________________
>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>Sent: den 7 oktober 2004 18:35
>>>>>To: Stefan Santesson
>>>>>Cc: pkix
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>Stefan,
>>>>>
>>>>>I think what you are proposing is a good idea.  In most cases, path 
>>>>>discovery algorithms assume that both the trust anchor (or trust
>>>>
>>>anchors)
>>>
>>>
>>>>>and the end entity certificate are provided as input.  In this 
>>>>>case,
>>>>
>>one
>>
>>
>>>>>may
>>>>>need to construct a certification path without a priori access to
>>>>
>>the
>>
>>
>>>end
>>>
>>>
>>>>>entity certificate (the one with the subject public key
>>>>
>>corresponding to
>>
>>
>>>>>the
>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>
>>pointer) in
>>
>>
>>>>>the
>>>>>CRL would provide the relying party with a simple way to obtain the
>>>>
>>end
>>
>>
>>>>>entity certificate for the CRL signing key's certification path. On
>>>>
>>the
>>
>>
>>>>>other hand, I believe that a relying party should be able to
>>>>
>>construct
>>
>>
>>>the
>>>
>>>
>>>>>certification path even without an AIA extension in the CRL, so 
>>>>>long
>>>>
>>as
>>
>>
>>>it
>>>
>>>
>>>>>is not an indirect CRL.  Attached is a drawing of the three basic 
>>>>>scenarios that I expect a relying party may encounter:
>>>>>
>>>>>In each of these scenarios, the CA has performed key rollover and 
>>>>>is
>>>>
>>>only
>>>
>>>
>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>
>>>however,
>>>
>>>
>>>>>if
>>>>>the CA simply choose to use different keys to sign certificates and
>>>>
>>CRLs
>>
>>
>>>>>for
>>>>>some other reason.
>>>>>
>>>>>If the PKI architecture resembled figure 1, then the certification
>>>>
>>path
>>
>>
>>>>>for
>>>>>the CRL signing key would just be a subset of the certification 
>>>>>path
>>>>
>>for
>>
>>
>>>>>the
>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>
>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>
>>necessary
>>
>>
>>>to
>>>
>>>
>>>>>obtain the new-signed-with-old self-issued certificate.  In 
>>>>>building
>>>>
>>the
>>
>>
>>>>>certification path to the EE certificate, however, the relying 
>>>>>party
>>>>
>>>will
>>>
>>>
>>>>>obtain the certificates pointed to by the AIA extension in the EE 
>>>>>certificate.  This AIA extension will point to a location 
>>>>>containing
>>>>
>>all
>>
>>
>>>>>certificates issued to CA 2, which would include both the
>>>>
>>certificate
>>
>>
>>>>>issued
>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>
>>though
>>
>>
>>>>>the
>>>>>self-issued certificate would not be part of the certification path
>>>>
>>to
>>
>>
>>>the
>>>
>>>
>>>>>EE certificate, it would be downloaded by the relying party during
>>>>
>>the
>>
>>
>>>>>construction of that certification path.  (Yes, there are circular 
>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>
>>>>>A similar situation would happen if the PKI architecture resembled
>>>>
>>>figure
>>>
>>>
>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>
>>location
>>
>>
>>>>>containing certificates issued to CA 3.  When the relying party
>>>>
>>>downloaded
>>>
>>>
>>>>>these certificates, it would obtain both of the certificates issued
>>>>
>>by
>>
>>
>>>the
>>>
>>>
>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>
>>validate
>>
>>
>>>>>the
>>>>>CRL signing key.
>>>>>
>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>
>>>indirect
>>>
>>>
>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3 
>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>certificates pointed
>>>>
>>to
>>
>>
>>>by
>>>
>>>
>>>>>the AIA extension in the EE certificate would not include the
>>>>
>>>certificate
>>>
>>>
>>>>>of
>>>>>the CRL signer.  One could find this certificate by building in the 
>>>>>reverse direction and using the SIA extension, but that may not be 
>>>>>the most convenient solution.
>>>>>
>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>
>>very
>>
>>
>>>>>useful
>>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>>
>>the
>>
>>
>>>CRL
>>>
>>>
>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>
>>clear,
>>
>>
>>>>>but
>>>>>I can't see any harm in including it.
>>>>>
>>>>>Dave
>>>>>
>>>>>Stefan Santesson wrote:
>>>>>All,
>>>>>
>>>>>I'm interested in the opinion from members on this list about
>>>>
>>discovery
>>
>>
>>>of
>>>
>>>
>>>>>CRL signer's certificate in non directory centric environments.
>>>>>
>>>>>The problem is the following.
>>>>>
>>>>>The relying party (RP) needs to check validity of a certificate and
>>>>
>>>finds
>>>
>>>
>>>>>a
>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL 
>>>>>which
>>>>
>>in
>>
>>
>>>>>this
>>>>>particular case is either signed by another key of the CA (re-keyed
>>>>
>>CA)
>>
>>
>>>or
>>>
>>>
>>>>>another entity (indirect CRL).
>>>>>
>>>>>In this case the relying party needs to obtain the certificate of
>>>>
>>the
>>
>>
>>>CRL
>>>
>>>
>>>>>signer which may NOT be part of the original chain. In a directory
>>>>
>>>centric
>>>
>>>
>>>>>solution this is retrieved from the directory, but what if such
>>>>
>>>directory
>>>
>>>
>>>>>is
>>>>>not available or accessible.
>>>>>
>>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>>
>>>unless
>>>
>>>
>>>>>the RP already have possession of it by some other means.
>>>>>
>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>
>>point
>>
>>
>>>to
>>>
>>>
>>>>>the location of the signers certificate in the same manner as is
>>>>
>>>possible
>>>
>>>
>>>>>for certificates.
>>>>>
>>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>>
>>only
>>
>>
>>>>>certificate extension as today.
>>>>>
>>>>>Thoughts and comments?
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>
> 
> 
> 

Date: Thu, 14 Oct 2004 15:04:28 +0200
From: Jean-Marc Desperrier <[email-masked]>
To: [email-masked]
Subject: Re: Effect of adding an attribute to CSR
Sender: [email-masked]

Puneet kumar wrote:

> We recently received a CSR from a new CA.We added the attribute "cn" 
> to the dn of the CSR (as this is a requirement at our end) and then 
> issued the cert. [...]
>  
> 1.Does adding an attribute to the CSR make any difference towards the 
> acceptability of the cert?

I don't believe any of the IETF standards tries to cover this point, and 
to say explicitly what is the right thing to do in such a situation.
It can be considered a local decision.
This said the CMC RFC 2797 does describe a case where the request 
subject DN is null, and where the CA will generate the correct DN.

Generally talking the format for CSR request enables to requester to 
include many elements, and the CA will have security reasons to filter 
them and keep only what it considers valid.
CA definitively can not accept the elements in request directly, and 
have to either reject requests that don't conform or correct them.

They are many examples on the market of CA that will reformat the DN of 
request, or simply ignore it and use other source to generate the DN of 
the certificate.
They are good reasons for a CA to normalise the DN in input in order to 
avoid problems, some request generating softwares don't put the DN 
component in the normal order, or use invalid string type.
Also if the CA wants to conform fully to RFC3290, it should only emit 
certificate with UTF8String encoding since december 31, 2003.
That's another case where a CA may consider the best solution is to 
reencode in UTF8String format all request before emitting the cert.

> 2.What options do we have at our end..I mean do we need to revoke the 
> cert? Can we re-certify the cert? Actually I did'nt find the term 
> re-certify in any standardd..certs are either revoked or get 
> expired.Your Comments would be most welcome.

It seems to me the easiest solution is to revoke the cert, and ask the 
CA to submit you another request that conforms to your policy for CA's 
DN naming.
When they send you a request that includes a CN, you will not have to 
modify it before emitting the cert and everything will work correctly.

> 3.Is their any setting changes that can be done in the Entrust CA 
> softwrae to allow this cert with the changed distinguished name to be 
> accepted?

That is a question to ask to that specific vendor.

From: [email-masked] (Peter Gutmann)
To: [email-masked], [email-masked]
Subject: Re: Effect of adding an attribute to CSR
Date: Fri, 15 Oct 2004 01:19:12 +1300
Sender: [email-masked]

Puneet kumar <[email-masked]> writes:

>We recently received a CSR from a new CA.We added the attribute "cn" to the
>dn of the CSR (as this is a requirement at our end) and then issued the
>cert.Now the CA's software is not accpeting the cert and they say that its
>because we added the cn attribute.We are using a softwrae by Smarttrust (CM)
>and the CA has an Entrust s/w.
>
>Now I have the following queries
>
>1.Does adding an attribute to the CSR make any difference towards the
>acceptability of the cert?

You mean the CA adding an attribute to the cert that isn't in the PKCS #10?
No, not at all, in fact it's quite standard.

>2.What options do we have at our end..I mean do we need to revoke the cert?
>Can we re-certify the cert? 

If you're the CA, it's really up to you.  If it's been explicitly rejected by
the client, I'd revoke it.

>3.Is their any setting changes that can be done in the Entrust CA softwrae to
>allow this cert with the changed distinguished name to be accepted?

You'd have to ask Entrust that.

Peter.

Date: Thu, 14 Oct 2004 04:26:40 -0700 (PDT)
From: Puneet kumar <[email-masked]>
Subject: Effect of adding an attribute to CSR
To: [email-masked]
Sender: [email-masked]

--0-164744117-1097753200=:22307
Content-Type: text/plain; charset=us-ascii

Dear all,
      I need some assistance on a peculiar problem we are facing. 
 
      We are an organisation which acts as the TTP for all CA's operating in our country ,ie, we are the Root CA. So whenverea new CA comes up they send us a CSR (in PKCS#10) which we sign and give back a X.509 base 64 Certificate.
 
We recently received a CSR from a new CA.We added the attribute "cn" to the dn of the CSR (as this is a requirement at our end) and then issued the cert.Now the CA's software is not accpeting the cert and they say that its because we added the cn attribute.We are using a softwrae by Smarttrust (CM)and the CA has an Entrust s/w.
 
Now I have the following queries
 
1.Does adding an attribute to the CSR make any difference towards the acceptability of the cert?
 
2.What options do we have at our end..I mean do we need to revoke the cert? Can we re-certify the cert? Actually I did'nt find the term re-certify in any standardd..certs are either revoked or get expired.Your Comments would be most welcome.
 
3.Is their any setting changes that can be done in the Entrust CA softwrae to allow this cert with the changed distinguished name to be accepted?
 
Request feedback from you guys..
 
Thanks
2.

---------------------------------
Do you Yahoo!?
vote.yahoo.com - Register online to vote today!
--0-164744117-1097753200=:22307
Content-Type: text/html; charset=us-ascii

<DIV>Dear all,</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I need some assistance on a peculiar problem we are facing. </DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;We are an organisation which acts as the&nbsp;TTP for all CA's operating in our country&nbsp;,ie, we are the Root CA. So whenverea new CA comes up they send us a CSR (in PKCS#10) which we sign and give back a X.509 base 64 Certificate.</DIV>
<DIV>&nbsp;</DIV>
<DIV>We recently received a CSR from a new CA.We added the attribute "cn" to the dn of the CSR (as this is a requirement at our end)&nbsp;and then issued the cert.Now the CA's software is not accpeting the cert and they say that its because we added the cn attribute.We are using a softwrae by Smarttrust (CM)and the CA has an Entrust s/w.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Now I have the following queries</DIV>
<DIV>&nbsp;</DIV>
<DIV>1.Does adding an attribute to the CSR make any difference towards the acceptability of the cert?</DIV>
<DIV>&nbsp;</DIV>
<DIV>2.What options do we have at our end..I mean do we need to revoke the cert? Can we re-certify the cert? Actually I did'nt find the term re-certify in any standardd..certs are either revoked or get expired.Your Comments would be most welcome.</DIV>
<DIV>&nbsp;</DIV>
<DIV>3.Is their any setting changes that can be done in the Entrust CA softwrae to allow this cert with the changed&nbsp;distinguished name to be accepted?</DIV>
<DIV>&nbsp;</DIV>
<DIV>Request feedback from you guys..</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thanks</DIV>
<DIV>2.</DIV><p>
		<hr size=1>Do you Yahoo!?<br><a
href="http://vote.yahoo.com">vote.yahoo.com</a> - Register online to vote today!
--0-164744117-1097753200=:22307--

Date: Thu, 14 Oct 2004 12:21:37 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Santosh Chokhani <[email-masked]>
CC: "'pkix'" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Santosh,

You misread my request. I said:

"For the time being, I would like that you provide an example where, when
using the current extensions that are defined in RFC 3280, it will NOT be
possible to locate a CRL Issuer certificate."

Maybe I would have needed to be clearer and say :

"For the time being, I would like that you provide an example where, when
using ANY OF the current extensions that are defined in RFC 3280, it will 
NOT be possible to locate a CRL Issuer certificate."

The examples you provide below do not fulfil this request.

The assumption is that there exists a path to be tested for revocation 
checking (and that it does not matter to know which way it has been 
constructed).

I am not saying that using AIA in CRL might not be useful, but I am still 
lacking the demonstration that there would be no other way.

Denis

> Denis:
> 
> Two examples are very simple: one for direct CRL Issuer and one for Indirect
> CRL Issuer.
> 
> Let us make the following assumptions that Stefan was making:
> 
> 1.  You are directory challenged; and
> 2.  You use AIA to develop the path; and
> 3.  You develop the path from the end entity to trust anchor.
> 
> From what I know of MS CAPI, these are reasonable assumptions/constraints.
> 
> Now the examples.
> 
> Example 1: Direct CRL Issuer
> 
> The certificate trust path is:
> Root --> CA1 --> CA 2, old key --> Denis
> 
> The CRL trust path is:
> Root --> CA1 --> CA 2, new key --> CRL
> 
> (Note: We do not do self-issued certificate since there is no simple, secure
> way to check their revocation status).
> 
> Now, with AIA in CRL, finding the CA2, new key certificate is
> straightforward.  How would you find it if you do no deal with SIA et. al.
> 
> Example 2: Indirect CRL Issuer
> 
> The certificate trust path is:
> Root --> CA1 --> CA 2 --> Denis
> (Note: Denis's certificate points to CRL DP of an indirect CRL issued by
> CAI.
> 
> The CRL trust path is:
> Root --> CAI --> CRL
> 
> Now, with AIA in CRL, finding the CAI certificate is straightforward.  How
> would you find it if you do no deal with SIA et. al.
> 
> In addition to the need cited above, please note that the extension
> semantics does not change, it does not hinder any interoperability, and it
> does not break any backward compatibility.  So, what if I wanted to use this
> extension in the CRL.  It does no harm to other relying parties.
> 
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On
> Behalf Of Denis Pinkas
> Sent: Wednesday, October 13, 2004 11:01 AM
> To: Stefan Santesson
> Cc: Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> 
> Stefan,
> 
> 
>>Denis,
> 
> 
>>I'm not sure what you mean.
> 
> 
> For the time being, I would like that you provide an example where, when 
> using the current extensions that are defined in RFC 3280, it will NOT be 
> possible to locate a CRL Issuer certificate.
> 
> If you are able to provide that example, then it would justify the need for 
> an extension at least for one case. Then we can see what that case is.
> 
> I am awaiting that example.
> 
> Denis
> 
> 
> 
>>I conclude that I agree with Santosh.
>>
>>The debate is still open... Feel free to express your opinion.
>>
>>Stefan Santesson
>>Microsoft Security Center of Excellence (SCOE)
>> 
>>
>>
>>
>>>-----Original Message-----
>>>From: Denis Pinkas [mailto:[email-masked]]
>>>Sent: den 13 oktober 2004 16:34
>>>To: Stefan Santesson
>>>Cc: Santosh Chokhani; pkix
>>>Subject: Re: Signer certificate discovery for CRLs
>>>
>>>Stefan,
>>>
>>>You are making a conclusion without letting me the time to respond. I
>>>will need more time to look at the pictures (and understand them).
>>>
>>>For the time being, I am still reluctant to accept
>>
>>"yet-another-method".
>>
>>
>>>We already have too many.
>>>
>>>
>>>
>>>>Santosh,
>>>>
>>>>I conclude that we are in complete and total agreement.
>>>>The question is how to go about this.
>>>
>>>>Could we do this amendment to RFC 3280 in its next revision? It would
>>>>hopefully just be a minor change.
>>>
>>>This is exactly what I feared.
>>>
>>>We usually end-up with a "minor change" in an extension without saying
>>>cleary how and when it shall/should be used.
>>>
>>>I still have in mind that:
>>>
>>> 1) a certification path must first be constructed,
>>> 2) then the revocation checking of that path must be done.
>>>
>>>This means that information about CRL issuers certificates locations
>>
>>may
>>
>>
>>>certainly be found in that chain. If not, I would like an example.
>>>
>>>Denis
>>>
>>>
>>>
>>>
>>>>It would not change the definition of AIA just add that it can be
>>>
>>used
>>
>>
>>>also as CRL extension and list eventual restrictions and guidance for
>>
>>use
>>
>>
>>>with CRLs.
>>>
>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>-----Original Message-----
>>>>>From: [email-masked]
>>>>
>>[mailto:[email-masked]]
>>
>>
>>>>>On Behalf Of Santosh Chokhani
>>>>>Sent: den 13 oktober 2004 04:33
>>>>>To: 'pkix'
>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>
>>>>>
>>>>>Stefan:
>>>>>
>>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>>
>>more
>>
>>
>>>>>robust.  The whole idea of self-issued key rollover certificates and
>>>>
>>>then
>>>
>>>
>>>>>using the new key to issue CRL is fraught with security problems.  A
>>>>>secure solution would be one where the new key is certified by the 
>>>>>parent
>>>>
>>CA.
>>
>>
>>>In
>>>
>>>
>>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>>
>>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>>certificate in question points to the indirect CRL.  You get that 
>>>>>CRL.  The AIA
>>>>
>>in
>>
>>
>>>CRL
>>>
>>>
>>>>>gets you started for the indirect CRL issuer certification path and
>>>>
>>you
>>
>>
>>>>>are
>>>>>in business.
>>>>>
>>>>>-----Original Message-----
>>>>>From: [email-masked]
>>>>
>>[mailto:[email-masked]]
>>
>>
>>>>>On
>>>>>Behalf Of Stefan Santesson
>>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>>To: David A. Cooper
>>>>>Cc: pkix
>>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>>
>>>>>
>>>>>
>>>>>David,
>>>>>
>>>>>Thanks for the clarifications, they make sense.
>>>>>I did misread your pictures.
>>>>>
>>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>>
>>3280,
>>
>>
>>>>>either the CRL issuer certificate itself, or the location of the CRL
>>>>>issuer certificate, will be clearly identified/available for the 
>>>>>validating
>>>>
>>>party
>>>
>>>
>>>>>in some cases, but not in others?
>>>>>
>>>>>Can we also conclude that there is no real discovery solution for
>>>>
>>>indirect
>>>
>>>
>>>>>CRLs?
>>>>>
>>>>>Do you then agree then that it could be appropriate to allow AIA as
>>>>
>>a
>>
>>
>>>CRL
>>>
>>>
>>>>>extension to facilitate discovery of CRL signer certificate?
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>________________________________________
>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>Sent: den 12 oktober 2004 21:14
>>>>>To: Stefan Santesson
>>>>>Cc: pkix
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>Stefan,
>>>>>
>>>>>I believe that you are misinterpreting the figures.  They really do
>>>>>represent three different cases, not three different certification
>>>>
>>paths
>>
>>
>>>>>that have been constructed through the same PKI architecture.
>>>>>
>>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>>
>>certificates.
>>
>>
>>>>>The
>>>>>Root CA has issued a certificate to CA 1's new key, but not its old
>>>>
>>key
>>
>>
>>>>>(either the Root CA never issued a certificate to CA 1's old key or
>>>>
>>that
>>
>>
>>>>>certificate has expired).
>>>>>
>>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>>key, but not its
>>>>
>>new
>>
>>
>>>>>key.
>>>>>
>>>>>In figure 3, when CA 3 performed key rollover, it requested a new CA
>>>>>certificate from the Root CA.  CA 3 did not generated self-issued
>>>>
>>key
>>
>>
>>>>>rollover certificates.
>>>>>
>>>>>Of course, another realistic scenario would be one in which a CA
>>>>
>>>generated
>>>
>>>
>>>>>self-issued key rollover certificates upon key rollover and then had
>>>>
>>the
>>
>>
>>>>>Root CA issue a CA certificate to its new key.  In this case, as you
>>>>>suggest, any of the certification paths from figures 1, 2, or 3
>>>>
>>could be
>>
>>
>>>>>constructed.
>>>>>
>>>>>As for the contents of the AIA extension, here is what I have
>>>>
>>specified
>>
>>
>>>in
>>>
>>>
>>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>>
>>>Policy":
>>>
>>>
>>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>>
>>the
>>
>>
>>>>>id-ad-caIssuers access method is used, the access location specifies
>>>>
>>>where
>>>
>>>
>>>>>certificates issued to the issuer of the certificate may be found.
>>>>
>>If
>>
>>
>>>LDAP
>>>
>>>
>>>>>is used, the URI must include the DN of the entry containing the
>>>>
>>>relevant
>>>
>>>
>>>>>certificates and specify the directory attribute in which the
>>>>
>>>certificates
>>>
>>>
>>>>>are located. If the directory in which the certificates are stored
>>>>
>>>expects
>>>
>>>
>>>>>the "binary" option to be specified, then the attribute type must be
>>>>>followed by ";binary" in the URI. If HTTP is used, the URI must
>>>>
>>point to
>>
>>
>>>a
>>>
>>>
>>>>>file that has an extension of ".p7c" that contains a certs-only CMS
>>>>>message (see RFC 2633). The CMS message should include all 
>>>>>certificates
>>>>
>>issued
>>
>>
>>>to
>>>
>>>
>>>>>the issuer of this certificate, but must at least contain all
>>>>
>>>certificates
>>>
>>>
>>>>>issued to the issuer of this certificate in which the subject public
>>>>
>>key
>>
>>
>>>>>may
>>>>>be used to verify the signature on this certificate. .... For a
>>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>>appear as the
>>>>
>>access
>>
>>
>>>>>location in an authorityInfoAccess extension when the
>>>>
>>id-ad-caIssuers
>>
>>
>>>>>access
>>>>>method is used are:
>>>>
>>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACert
>>>>i
>>>
>>fi
>>
>>
>>>ca
>>>
>>>
>>>>>te
>>>>>,crossCertificatePair
>>>>
>>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertific
>>>>a
>>>
>>te
>>
>>
>>>;b
>>>
>>>
>>>>>in
>>>>>ary,crossCertificatePair;binary
>>>>
>>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssue
>>>>d
>>>
>>To
>>
>>
>>>Go
>>>
>>>
>>>>>od
>>>>>CA.p7c
>>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>>information is to be located, so there is no requirement for the
>>>>
>>relying
>>
>>
>>>>>party to try to figure out where information is located.
>>>>>
>>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>>certificates issued to the CA identified in the issuer field of the 
>>>>>certificate.
>>>>>
>>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>>attributes of the directory entry of the CA identified in the issuer 
>>>>>field of
>>>>
>>the
>>
>>
>>>>>certificate.  These two attributes together hold all of the
>>>>
>>certificates
>>
>>
>>>>>issued to the CA:  the cACertificate attribute holds the CA's self-
>>>>
>>>issued
>>>
>>>
>>>>>certificates and the crossCertificatePair attribute holds the
>>>>>cross-certificates issued to the CA by other CAs.
>>>>>
>>>>>Dave
>>>>>
>>>>>
>>>>>Stefan Santesson wrote:
>>>>>
>>>>>David,
>>>>>
>>>>>Thanks for these good thoughts and very useful scenarios.
>>>>>
>>>>>I have some comments and questions on this.
>>>>>
>>>>>First of all we can conclude that in some scenarios (figure 1) where
>>>>
>>a
>>
>>
>>>>>self
>>>>>issued certificate is inserted into the path, you are likely to find
>>>>
>>the
>>
>>
>>>>>CRL
>>>>>issuer cert in the path. (given that the new CA have a common key
>>>>
>>and
>>
>>
>>>>>certificate for cert signing and CRL signing).
>>>>>
>>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>>
>>>different
>>>
>>>
>>>>>path building strategies. An application that has access locally to
>>>>
>>all
>>
>>
>>>>>chaining options may however still choose path 2 for the certs and
>>>>
>>path
>>
>>
>>>1
>>>
>>>
>>>>>for the CRL independent of each other (which I think figure 3 tries
>>>>
>>to
>>
>>
>>>>>describe)
>>>>>
>>>>>Another comment is the structure of AIA extensions. The use I'm
>>>>
>>familiar
>>
>>
>>>>>with doesn't use AIA to describe a directory entry where it is left
>>>>
>>to
>>
>>
>>>the
>>>
>>>
>>>>>validation application logic to be intelligent enough to find
>>>>
>>>appropriate
>>>
>>>
>>>>>certificate data from the directory. The model I'm familiar with is
>>>>
>>when
>>
>>
>>>>>the
>>>>>AIA URL explicitly identifies the exact location of the appropriate
>>>>
>>CA
>>
>>
>>>>>certificate file, relieving the validation software from complex
>>>>>information queries. If just location of explicit certificate files 
>>>>>are
>>>>
>>identified
>>
>>
>>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>>
>>signer
>>
>>
>>>>>cert
>>>>>if this is different from the CA certificate. This is also the
>>>>
>>problem
>>
>>
>>>>>with
>>>>>Denis proposal.
>>>>>
>>>>>I think we share the basic conclusion that the ability to locate the
>>>>
>>CRL
>>
>>
>>>>>signer certificate directly through the CRL could be very useful. At
>>>>
>>>least
>>>
>>>
>>>>>in the case of indirect CRL but it could also be proven very useful
>>>>
>>in
>>
>>
>>>CA
>>>
>>>
>>>>>re-keying scenarios.
>>>>>
>>>>>The easiest solution would probably be to allow AIA to be used in
>>>>
>>its
>>
>>
>>>>>current shape and structure as a CRL extension (MUST NOT be
>>>>
>>critical).
>>
>>
>>>It
>>>
>>>
>>>>>would present a very clear and uncomplicated logic to certificate
>>>>>validating applications in many cases.
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>________________________________________
>>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>>Sent: den 7 oktober 2004 18:35
>>>>>To: Stefan Santesson
>>>>>Cc: pkix
>>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>>
>>>>>Stefan,
>>>>>
>>>>>I think what you are proposing is a good idea.  In most cases, path
>>>>>discovery algorithms assume that both the trust anchor (or trust
>>>>
>>>anchors)
>>>
>>>
>>>>>and the end entity certificate are provided as input.  In this case,
>>>>
>>one
>>
>>
>>>>>may
>>>>>need to construct a certification path without a priori access to
>>>>
>>the
>>
>>
>>>end
>>>
>>>
>>>>>entity certificate (the one with the subject public key
>>>>
>>corresponding to
>>
>>
>>>>>the
>>>>>CRL signing key).  Including an AIA extension (or some other
>>>>
>>pointer) in
>>
>>
>>>>>the
>>>>>CRL would provide the relying party with a simple way to obtain the
>>>>
>>end
>>
>>
>>>>>entity certificate for the CRL signing key's certification path. On
>>>>
>>the
>>
>>
>>>>>other hand, I believe that a relying party should be able to
>>>>
>>construct
>>
>>
>>>the
>>>
>>>
>>>>>certification path even without an AIA extension in the CRL, so long
>>>>
>>as
>>
>>
>>>it
>>>
>>>
>>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>>scenarios that I expect a relying party may encounter:
>>>>>
>>>>>In each of these scenarios, the CA has performed key rollover and is
>>>>
>>>only
>>>
>>>
>>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>>
>>>however,
>>>
>>>
>>>>>if
>>>>>the CA simply choose to use different keys to sign certificates and
>>>>
>>CRLs
>>
>>
>>>>>for
>>>>>some other reason.
>>>>>
>>>>>If the PKI architecture resembled figure 1, then the certification
>>>>
>>path
>>
>>
>>>>>for
>>>>>the CRL signing key would just be a subset of the certification path
>>>>
>>for
>>
>>
>>>>>the
>>>>>EE certificate, so no addition path discovery would be needed.
>>>>>
>>>>>If the PKI architecture resembled figure 1, then it would be
>>>>
>>necessary
>>
>>
>>>to
>>>
>>>
>>>>>obtain the new-signed-with-old self-issued certificate.  In building
>>>>
>>the
>>
>>
>>>>>certification path to the EE certificate, however, the relying party
>>>>
>>>will
>>>
>>>
>>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>>certificate.  This AIA extension will point to a location containing
>>>>
>>all
>>
>>
>>>>>certificates issued to CA 2, which would include both the
>>>>
>>certificate
>>
>>
>>>>>issued
>>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>>
>>though
>>
>>
>>>>>the
>>>>>self-issued certificate would not be part of the certification path
>>>>
>>to
>>
>>
>>>the
>>>
>>>
>>>>>EE certificate, it would be downloaded by the relying party during
>>>>
>>the
>>
>>
>>>>>construction of that certification path.  (Yes, there are circular
>>>>>dependency issues in figure 2, but that is another issue.)
>>>>>
>>>>>A similar situation would happen if the PKI architecture resembled
>>>>
>>>figure
>>>
>>>
>>>>>3.  The AIA extension in the EE certificate would point to a
>>>>
>>location
>>
>>
>>>>>containing certificates issued to CA 3.  When the relying party
>>>>
>>>downloaded
>>>
>>>
>>>>>these certificates, it would obtain both of the certificates issued
>>>>
>>by
>>
>>
>>>the
>>>
>>>
>>>>>Root to CA 3 and so again would have the certificate needed to
>>>>
>>validate
>>
>>
>>>>>the
>>>>>CRL signing key.
>>>>>
>>>>>In the case of an indirect CRL, things may not work as well.  If
>>>>
>>>indirect
>>>
>>>
>>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>>(replacing "New Key" with a different CA), then the set of 
>>>>>certificates pointed
>>>>
>>to
>>
>>
>>>by
>>>
>>>
>>>>>the AIA extension in the EE certificate would not include the
>>>>
>>>certificate
>>>
>>>
>>>>>of
>>>>>the CRL signer.  One could find this certificate by building in the
>>>>>reverse direction and using the SIA extension, but that may not be 
>>>>>the most convenient solution.
>>>>>
>>>>>So, when indirect CRLs are being used, it seems that it would be
>>>>
>>very
>>
>>
>>>>>useful
>>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>>
>>the
>>
>>
>>>CRL
>>>
>>>
>>>>>is not indirect, the need for this pointer does not seem to be as
>>>>
>>clear,
>>
>>
>>>>>but
>>>>>I can't see any harm in including it.
>>>>>
>>>>>Dave
>>>>>
>>>>>Stefan Santesson wrote:
>>>>>All,
>>>>>
>>>>>I'm interested in the opinion from members on this list about
>>>>
>>discovery
>>
>>
>>>of
>>>
>>>
>>>>>CRL signer's certificate in non directory centric environments.
>>>>>
>>>>>The problem is the following.
>>>>>
>>>>>The relying party (RP) needs to check validity of a certificate and
>>>>
>>>finds
>>>
>>>
>>>>>a
>>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL which
>>>>
>>in
>>
>>
>>>>>this
>>>>>particular case is either signed by another key of the CA (re-keyed
>>>>
>>CA)
>>
>>
>>>or
>>>
>>>
>>>>>another entity (indirect CRL).
>>>>>
>>>>>In this case the relying party needs to obtain the certificate of
>>>>
>>the
>>
>>
>>>CRL
>>>
>>>
>>>>>signer which may NOT be part of the original chain. In a directory
>>>>
>>>centric
>>>
>>>
>>>>>solution this is retrieved from the directory, but what if such
>>>>
>>>directory
>>>
>>>
>>>>>is
>>>>>not available or accessible.
>>>>>
>>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>>
>>>unless
>>>
>>>
>>>>>the RP already have possession of it by some other means.
>>>>>
>>>>>Is seems that CRLs would need an AIA extension with the option to
>>>>
>>point
>>
>>
>>>to
>>>
>>>
>>>>>the location of the signers certificate in the same manner as is
>>>>
>>>possible
>>>
>>>
>>>>>for certificates.
>>>>>
>>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>>
>>only
>>
>>
>>>>>certificate extension as today.
>>>>>
>>>>>Thoughts and comments?
>>>>>
>>>>>Stefan Santesson
>>>>>Microsoft Security Center of Excellence (SCOE)
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>
> 
> 
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 14 Oct 2004 09:15:23 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Sender: [email-masked]

Santosh,

I agree to these examples. I only have 1 comment.

MS-CAPI is not constrained to use chain building from leaf to Root
through AIA but it has the capacity to do so. However MS-CAPI has
limited possibilities to find the CRL issuer cert unless it is the one
used to sign the cert checked for revocation, much because there is no
straightforward solution to this problem (as your examples illustrate).

I think this is generally true also for other products in the market
place. It would be interesting to hear other vendors view on this
though.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Santosh Chokhani
> Sent: den 13 oktober 2004 23:51
> To: 'pkix'
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> Denis:
> 
> Two examples are very simple: one for direct CRL Issuer and one for
> Indirect
> CRL Issuer.
> 
> Let us make the following assumptions that Stefan was making:
> 
> 1.  You are directory challenged; and
> 2.  You use AIA to develop the path; and
> 3.  You develop the path from the end entity to trust anchor.
> 
> From what I know of MS CAPI, these are reasonable
assumptions/constraints.
> 
> Now the examples.
> 
> Example 1: Direct CRL Issuer
> 
> The certificate trust path is:
> Root --> CA1 --> CA 2, old key --> Denis
> 
> The CRL trust path is:
> Root --> CA1 --> CA 2, new key --> CRL
> 
> (Note: We do not do self-issued certificate since there is no simple,
> secure
> way to check their revocation status).
> 
> Now, with AIA in CRL, finding the CA2, new key certificate is
> straightforward.  How would you find it if you do no deal with SIA et.
al.
> 
> Example 2: Indirect CRL Issuer
> 
> The certificate trust path is:
> Root --> CA1 --> CA 2 --> Denis
> (Note: Denis's certificate points to CRL DP of an indirect CRL issued
by
> CAI.
> 
> The CRL trust path is:
> Root --> CAI --> CRL
> 
> Now, with AIA in CRL, finding the CAI certificate is straightforward.
How
> would you find it if you do no deal with SIA et. al.
> 
> In addition to the need cited above, please note that the extension
> semantics does not change, it does not hinder any interoperability,
and it
> does not break any backward compatibility.  So, what if I wanted to
use
> this
> extension in the CRL.  It does no harm to other relying parties.
> 
> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On
> Behalf Of Denis Pinkas
> Sent: Wednesday, October 13, 2004 11:01 AM
> To: Stefan Santesson
> Cc: Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> 
> Stefan,
> 
> > Denis,
> 
> > I'm not sure what you mean.
> 
> For the time being, I would like that you provide an example where,
when
> using the current extensions that are defined in RFC 3280, it will NOT
be
> possible to locate a CRL Issuer certificate.
> 
> If you are able to provide that example, then it would justify the
need
> for
> an extension at least for one case. Then we can see what that case is.
> 
> I am awaiting that example.
> 
> Denis
> 
> 
> > I conclude that I agree with Santosh.
> >
> > The debate is still open... Feel free to express your opinion.
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >
> >>-----Original Message-----
> >>From: Denis Pinkas [mailto:[email-masked]]
> >>Sent: den 13 oktober 2004 16:34
> >>To: Stefan Santesson
> >>Cc: Santosh Chokhani; pkix
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>Stefan,
> >>
> >>You are making a conclusion without letting me the time to respond.
I
> >>will need more time to look at the pictures (and understand them).
> >>
> >>For the time being, I am still reluctant to accept
> >
> > "yet-another-method".
> >
> >>We already have too many.
> >>
> >>
> >>>Santosh,
> >>>
> >>>I conclude that we are in complete and total agreement.
> >>>The question is how to go about this.
> >>
> >>>Could we do this amendment to RFC 3280 in its next revision? It
would
> >>>hopefully just be a minor change.
> >>
> >>This is exactly what I feared.
> >>
> >>We usually end-up with a "minor change" in an extension without
saying
> >>cleary how and when it shall/should be used.
> >>
> >>I still have in mind that:
> >>
> >>  1) a certification path must first be constructed,
> >>  2) then the revocation checking of that path must be done.
> >>
> >>This means that information about CRL issuers certificates locations
> >
> > may
> >
> >>certainly be found in that chain. If not, I would like an example.
> >>
> >>Denis
> >>
> >>
> >>
> >>>It would not change the definition of AIA just add that it can be
> >>
> > used
> >
> >>also as CRL extension and list eventual restrictions and guidance
for
> >
> > use
> >
> >>with CRLs.
> >>
> >>>
> >>>Stefan Santesson
> >>>Microsoft Security Center of Excellence (SCOE)
> >>>
> >>>
> >>>
> >>>
> >>>>-----Original Message-----
> >>>>From: [email-masked]
> >>>
> > [mailto:[email-masked]]
> >
> >>>>On Behalf Of Santosh Chokhani
> >>>>Sent: den 13 oktober 2004 04:33
> >>>>To: 'pkix'
> >>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>
> >>>>
> >>>>Stefan:
> >>>>
> >>>>In terms of certificate discovery, your proposal for AIA in CRL is
> >>>
> > more
> >
> >>>>robust.  The whole idea of self-issued key rollover certificates
and
> >>>
> >>then
> >>
> >>>>using the new key to issue CRL is fraught with security problems.
A
> >>>>secure solution would be one where the new key is certified by the
> >>>>parent
> >>>
> > CA.
> >
> >>In
> >>
> >>>>that case to obtain the new certificate, you could use AIA in CRL.
> >>>>
> >>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
> >>>>certificate in question points to the indirect CRL.  You get that
> >>>>CRL.  The AIA
> >>>
> > in
> >
> >>CRL
> >>
> >>>>gets you started for the indirect CRL issuer certification path
and
> >>>
> > you
> >
> >>>>are
> >>>>in business.
> >>>>
> >>>>-----Original Message-----
> >>>>From: [email-masked]
> >>>
> > [mailto:[email-masked]]
> >
> >>>>On
> >>>>Behalf Of Stefan Santesson
> >>>>Sent: Tuesday, October 12, 2004 7:30 PM
> >>>>To: David A. Cooper
> >>>>Cc: pkix
> >>>>Subject: RE: Signer certificate discovery for CRLs
> >>>>
> >>>>
> >>>>
> >>>>David,
> >>>>
> >>>>Thanks for the clarifications, they make sense.
> >>>>I did misread your pictures.
> >>>>
> >>>>So can we conclude that for a re-keyed CA in accordance with RFC
> >>>
> > 3280,
> >
> >>>>either the CRL issuer certificate itself, or the location of the
CRL
> >>>>issuer certificate, will be clearly identified/available for the
> >>>>validating
> >>>
> >>party
> >>
> >>>>in some cases, but not in others?
> >>>>
> >>>>Can we also conclude that there is no real discovery solution for
> >>>
> >>indirect
> >>
> >>>>CRLs?
> >>>>
> >>>>Do you then agree then that it could be appropriate to allow AIA
as
> >>>
> > a
> >
> >>CRL
> >>
> >>>>extension to facilitate discovery of CRL signer certificate?
> >>>>
> >>>>Stefan Santesson
> >>>>Microsoft Security Center of Excellence (SCOE)
> >>>>
> >>>>________________________________________
> >>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>Sent: den 12 oktober 2004 21:14
> >>>>To: Stefan Santesson
> >>>>Cc: pkix
> >>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>
> >>>>Stefan,
> >>>>
> >>>>I believe that you are misinterpreting the figures.  They really
do
> >>>>represent three different cases, not three different certification
> >>>
> > paths
> >
> >>>>that have been constructed through the same PKI architecture.
> >>>>
> >>>>In figure 1, CA 1 has generated self-issued key rollover
> >>>
> > certificates.
> >
> >>>>The
> >>>>Root CA has issued a certificate to CA 1's new key, but not its
old
> >>>
> > key
> >
> >>>>(either the Root CA never issued a certificate to CA 1's old key
or
> >>>
> > that
> >
> >>>>certificate has expired).
> >>>>
> >>>>In figure 2, CA 2 has also generated self-issued key rollover
> >>>>certificates. The Root CA has issued a certificate to CA 2's old
> >>>>key, but not its
> >>>
> > new
> >
> >>>>key.
> >>>>
> >>>>In figure 3, when CA 3 performed key rollover, it requested a new
CA
> >>>>certificate from the Root CA.  CA 3 did not generated self-issued
> >>>
> > key
> >
> >>>>rollover certificates.
> >>>>
> >>>>Of course, another realistic scenario would be one in which a CA
> >>>
> >>generated
> >>
> >>>>self-issued key rollover certificates upon key rollover and then
had
> >>>
> > the
> >
> >>>>Root CA issue a CA certificate to its new key.  In this case, as
you
> >>>>suggest, any of the certification paths from figures 1, 2, or 3
> >>>
> > could be
> >
> >>>>constructed.
> >>>>
> >>>>As for the contents of the AIA extension, here is what I have
> >>>
> > specified
> >
> >>in
> >>
> >>>>the "X.509 Certificate and CRL Extensions Profile for the Common
> >>>
> >>Policy":
> >>
> >>>>The authorityInfoAccess extension uses URIs for two purposes. When
> >>>
> > the
> >
> >>>>id-ad-caIssuers access method is used, the access location
specifies
> >>>
> >>where
> >>
> >>>>certificates issued to the issuer of the certificate may be found.
> >>>
> > If
> >
> >>LDAP
> >>
> >>>>is used, the URI must include the DN of the entry containing the
> >>>
> >>relevant
> >>
> >>>>certificates and specify the directory attribute in which the
> >>>
> >>certificates
> >>
> >>>>are located. If the directory in which the certificates are stored
> >>>
> >>expects
> >>
> >>>>the "binary" option to be specified, then the attribute type must
be
> >>>>followed by ";binary" in the URI. If HTTP is used, the URI must
> >>>
> > point to
> >
> >>a
> >>
> >>>>file that has an extension of ".p7c" that contains a certs-only
CMS
> >>>>message (see RFC 2633). The CMS message should include all
> >>>>certificates
> >>>
> > issued
> >
> >>to
> >>
> >>>>the issuer of this certificate, but must at least contain all
> >>>
> >>certificates
> >>
> >>>>issued to the issuer of this certificate in which the subject
public
> >>>
> > key
> >
> >>>>may
> >>>>be used to verify the signature on this certificate. .... For a
> >>>>certificate issued by "Good CA", some examples of URIs that may
> >>>>appear as the
> >>>
> > access
> >
> >>>>location in an authorityInfoAccess extension when the
> >>>
> > id-ad-caIssuers
> >
> >>>>access
> >>>>method is used are:
> >>>
>
>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACert
> >>>i
> >>
> > fi
> >
> >>ca
> >>
> >>>>te
> >>>>,crossCertificatePair
> >>>
>
>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertific
> >>>a
> >>
> > te
> >
> >>;b
> >>
> >>>>in
> >>>>ary,crossCertificatePair;binary
> >>>
>
>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssue
> >>>d
> >>
> > To
> >
> >>Go
> >>
> >>>>od
> >>>>CA.p7c
> >>>>For both LDAP and HTTP, the URI provides the exact location where
> >>>>information is to be located, so there is no requirement for the
> >>>
> > relying
> >
> >>>>party to try to figure out where information is located.
> >>>>
> >>>>The HTTP URI points to a certs-only CMS message that includes all
> >>>>certificates issued to the CA identified in the issuer field of
the
> >>>>certificate.
> >>>>
> >>>>The LDAP URI points to the cACertificate and crossCertificatePair
> >>>>attributes of the directory entry of the CA identified in the
issuer
> >>>>field of
> >>>
> > the
> >
> >>>>certificate.  These two attributes together hold all of the
> >>>
> > certificates
> >
> >>>>issued to the CA:  the cACertificate attribute holds the CA's
self-
> >>>
> >>issued
> >>
> >>>>certificates and the crossCertificatePair attribute holds the
> >>>>cross-certificates issued to the CA by other CAs.
> >>>>
> >>>>Dave
> >>>>
> >>>>
> >>>>Stefan Santesson wrote:
> >>>>
> >>>>David,
> >>>>
> >>>>Thanks for these good thoughts and very useful scenarios.
> >>>>
> >>>>I have some comments and questions on this.
> >>>>
> >>>>First of all we can conclude that in some scenarios (figure 1)
where
> >>>
> > a
> >
> >>>>self
> >>>>issued certificate is inserted into the path, you are likely to
find
> >>>
> > the
> >
> >>>>CRL
> >>>>issuer cert in the path. (given that the new CA have a common key
> >>>
> > and
> >
> >>>>certificate for cert signing and CRL signing).
> >>>>
> >>>>Figure 1, 2 and 3 describe the same case. It is just describing
> >>>
> >>different
> >>
> >>>>path building strategies. An application that has access locally
to
> >>>
> > all
> >
> >>>>chaining options may however still choose path 2 for the certs and
> >>>
> > path
> >
> >>1
> >>
> >>>>for the CRL independent of each other (which I think figure 3
tries
> >>>
> > to
> >
> >>>>describe)
> >>>>
> >>>>Another comment is the structure of AIA extensions. The use I'm
> >>>
> > familiar
> >
> >>>>with doesn't use AIA to describe a directory entry where it is
left
> >>>
> > to
> >
> >>the
> >>
> >>>>validation application logic to be intelligent enough to find
> >>>
> >>appropriate
> >>
> >>>>certificate data from the directory. The model I'm familiar with
is
> >>>
> > when
> >
> >>>>the
> >>>>AIA URL explicitly identifies the exact location of the
appropriate
> >>>
> > CA
> >
> >>>>certificate file, relieving the validation software from complex
> >>>>information queries. If just location of explicit certificate
files
> >>>>are
> >>>
> > identified
> >
> >>>>through AIA, the presence of an AIA may not help finding the CRL
> >>>
> > signer
> >
> >>>>cert
> >>>>if this is different from the CA certificate. This is also the
> >>>
> > problem
> >
> >>>>with
> >>>>Denis proposal.
> >>>>
> >>>>I think we share the basic conclusion that the ability to locate
the
> >>>
> > CRL
> >
> >>>>signer certificate directly through the CRL could be very useful.
At
> >>>
> >>least
> >>
> >>>>in the case of indirect CRL but it could also be proven very
useful
> >>>
> > in
> >
> >>CA
> >>
> >>>>re-keying scenarios.
> >>>>
> >>>>The easiest solution would probably be to allow AIA to be used in
> >>>
> > its
> >
> >>>>current shape and structure as a CRL extension (MUST NOT be
> >>>
> > critical).
> >
> >>It
> >>
> >>>>would present a very clear and uncomplicated logic to certificate
> >>>>validating applications in many cases.
> >>>>
> >>>>Stefan Santesson
> >>>>Microsoft Security Center of Excellence (SCOE)
> >>>>
> >>>>________________________________________
> >>>>From: David A. Cooper [mailto:[email-masked]]
> >>>>Sent: den 7 oktober 2004 18:35
> >>>>To: Stefan Santesson
> >>>>Cc: pkix
> >>>>Subject: Re: Signer certificate discovery for CRLs
> >>>>
> >>>>Stefan,
> >>>>
> >>>>I think what you are proposing is a good idea.  In most cases,
path
> >>>>discovery algorithms assume that both the trust anchor (or trust
> >>>
> >>anchors)
> >>
> >>>>and the end entity certificate are provided as input.  In this
case,
> >>>
> > one
> >
> >>>>may
> >>>>need to construct a certification path without a priori access to
> >>>
> > the
> >
> >>end
> >>
> >>>>entity certificate (the one with the subject public key
> >>>
> > corresponding to
> >
> >>>>the
> >>>>CRL signing key).  Including an AIA extension (or some other
> >>>
> > pointer) in
> >
> >>>>the
> >>>>CRL would provide the relying party with a simple way to obtain
the
> >>>
> > end
> >
> >>>>entity certificate for the CRL signing key's certification path.
On
> >>>
> > the
> >
> >>>>other hand, I believe that a relying party should be able to
> >>>
> > construct
> >
> >>the
> >>
> >>>>certification path even without an AIA extension in the CRL, so
long
> >>>
> > as
> >
> >>it
> >>
> >>>>is not an indirect CRL.  Attached is a drawing of the three basic
> >>>>scenarios that I expect a relying party may encounter:
> >>>>
> >>>>In each of these scenarios, the CA has performed key rollover and
is
> >>>
> >>only
> >>
> >>>>signing CRLs with its new key.  The diagrams would look similar,
> >>>
> >>however,
> >>
> >>>>if
> >>>>the CA simply choose to use different keys to sign certificates
and
> >>>
> > CRLs
> >
> >>>>for
> >>>>some other reason.
> >>>>
> >>>>If the PKI architecture resembled figure 1, then the certification
> >>>
> > path
> >
> >>>>for
> >>>>the CRL signing key would just be a subset of the certification
path
> >>>
> > for
> >
> >>>>the
> >>>>EE certificate, so no addition path discovery would be needed.
> >>>>
> >>>>If the PKI architecture resembled figure 1, then it would be
> >>>
> > necessary
> >
> >>to
> >>
> >>>>obtain the new-signed-with-old self-issued certificate.  In
building
> >>>
> > the
> >
> >>>>certification path to the EE certificate, however, the relying
party
> >>>
> >>will
> >>
> >>>>obtain the certificates pointed to by the AIA extension in the EE
> >>>>certificate.  This AIA extension will point to a location
containing
> >>>
> > all
> >
> >>>>certificates issued to CA 2, which would include both the
> >>>
> > certificate
> >
> >>>>issued
> >>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
> >>>
> > though
> >
> >>>>the
> >>>>self-issued certificate would not be part of the certification
path
> >>>
> > to
> >
> >>the
> >>
> >>>>EE certificate, it would be downloaded by the relying party during
> >>>
> > the
> >
> >>>>construction of that certification path.  (Yes, there are circular
> >>>>dependency issues in figure 2, but that is another issue.)
> >>>>
> >>>>A similar situation would happen if the PKI architecture resembled
> >>>
> >>figure
> >>
> >>>>3.  The AIA extension in the EE certificate would point to a
> >>>
> > location
> >
> >>>>containing certificates issued to CA 3.  When the relying party
> >>>
> >>downloaded
> >>
> >>>>these certificates, it would obtain both of the certificates
issued
> >>>
> > by
> >
> >>the
> >>
> >>>>Root to CA 3 and so again would have the certificate needed to
> >>>
> > validate
> >
> >>>>the
> >>>>CRL signing key.
> >>>>
> >>>>In the case of an indirect CRL, things may not work as well.  If
> >>>
> >>indirect
> >>
> >>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
> >>>>(replacing "New Key" with a different CA), then the set of
> >>>>certificates pointed
> >>>
> > to
> >
> >>by
> >>
> >>>>the AIA extension in the EE certificate would not include the
> >>>
> >>certificate
> >>
> >>>>of
> >>>>the CRL signer.  One could find this certificate by building in
the
> >>>>reverse direction and using the SIA extension, but that may not be
> >>>>the most convenient solution.
> >>>>
> >>>>So, when indirect CRLs are being used, it seems that it would be
> >>>
> > very
> >
> >>>>useful
> >>>>to have a pointer in the CRL to the CRL signing certificate.  When
> >>>
> > the
> >
> >>CRL
> >>
> >>>>is not indirect, the need for this pointer does not seem to be as
> >>>
> > clear,
> >
> >>>>but
> >>>>I can't see any harm in including it.
> >>>>
> >>>>Dave
> >>>>
> >>>>Stefan Santesson wrote:
> >>>>All,
> >>>>
> >>>>I'm interested in the opinion from members on this list about
> >>>
> > discovery
> >
> >>of
> >>
> >>>>CRL signer's certificate in non directory centric environments.
> >>>>
> >>>>The problem is the following.
> >>>>
> >>>>The relying party (RP) needs to check validity of a certificate
and
> >>>
> >>finds
> >>
> >>>>a
> >>>>CDP extension with a URL to the CRL. The RP retrieves this CRL
which
> >>>
> > in
> >
> >>>>this
> >>>>particular case is either signed by another key of the CA
(re-keyed
> >>>
> > CA)
> >
> >>or
> >>
> >>>>another entity (indirect CRL).
> >>>>
> >>>>In this case the relying party needs to obtain the certificate of
> >>>
> > the
> >
> >>CRL
> >>
> >>>>signer which may NOT be part of the original chain. In a directory
> >>>
> >>centric
> >>
> >>>>solution this is retrieved from the directory, but what if such
> >>>
> >>directory
> >>
> >>>>is
> >>>>not available or accessible.
> >>>>
> >>>>The RP have thus no hint where to find the CRL issuers certificate
> >>>
> >>unless
> >>
> >>>>the RP already have possession of it by some other means.
> >>>>
> >>>>Is seems that CRLs would need an AIA extension with the option to
> >>>
> > point
> >
> >>to
> >>
> >>>>the location of the signers certificate in the same manner as is
> >>>
> >>possible
> >>
> >>>>for certificates.
> >>>>
> >>>>Maybe AIA should be defined as both cert and CRL extension and not
> >>>
> > only
> >
> >>>>certificate extension as today.
> >>>>
> >>>>Thoughts and comments?
> >>>>
> >>>>Stefan Santesson
> >>>>Microsoft Security Center of Excellence (SCOE)
> >>>>
> >>>>
> >>>
> >>>
> >>>
> >
> >
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 14 Oct 2004 03:53:13 -0400
Importance: Normal
Sender: [email-masked]

Stefan:

I agree that the change does not warrant change in OID and should not impact
others.

-----Original Message-----
From: Stefan Santesson [mailto:[email-masked]] 
Sent: Thursday, October 14, 2004 3:40 AM
To: Wen-Cheng Wang; Santosh Chokhani; pkix
Subject: RE: Signer certificate discovery for CRLs

Wen-Cheng,

Thanks for bringing this up. Yes, this has also crossed my mind and we will
have to find the appropriate course on this matter.

I'm personally divided but I kind of like to keep the current OID since we
have a lot of current code and logic that successfully use the
id-ad-caIssuers to retrieve certificates for chain-building, which is the
case both for certificate chains for certs and CRLs. So I see no major
change in the use of the OID, just a fractional expansion of scope.

So currently I lean towards adding the minor expansion of scope to the
current id-ad-caIssuers OID instead of creating a new one. But that is not
yet a mature opinion.

I think the time to deal with this problem is best after deciding whether we
want to do AIA for CRLs in the first place. I'm positive that we can find a
good solution.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Wen-Cheng Wang
> Sent: den 14 oktober 2004 04:09
> To: Stefan Santesson; Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Stefan,
> 
> I think it is a good idea to include AIA extension in CRL to aid RP in 
> finding CRL issuer certificates.
> 
> However, I am concerning about the accessMethod OID to be used. 
> Currently, RFC 3280 only define id-ad-caIssuers OID, which is intended 
> to aid RP in finding CA certificates. Since a CRL issuer might not be 
> a CA, the name and definition of the id-ad-caIssuers OID need to be 
> changed (or extended).
> 
> In addition, the definition of the id-ad-caIssuers accessMethod is 
> very vague. I think this is a chance to clarify it. I suggest that 
> when doing this amendment the following things should be
> clarified:
> 
>    1. What will be retrieved from the acceesLocation if it is an URI?
>            I believe that the current practice is that an issuer 
> certificate
>            or a list of issuer certificates (in PKCS#7 format) will be
>            retrieved if the acceesLocation is an HTTP or FTP URI.
>            But it is not clear what will be retrieved if the 
> acceesLocation
>            is an LDAP URI?
>    2. What will be the MIME type of the retrieved object?
> 
> Since id-ad-caIssuers is not a proper name for the the accessMethod 
> OID, I suggest that th name be changed to id-ad-issuerCertificates 
> (and of course the definition should also be changed).
> 
> Wen-Cheng Wang
> 
> 
> ----- Original Message -----
> From: "Stefan Santesson" <[email-masked]>
> To: "Santosh Chokhani" <[email-masked]>; "pkix"
<[email-masked]>
> Sent: Wednesday, October 13, 2004 9:44 PM
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> 
> Santosh,
> 
> I conclude that we are in complete and total agreement.
> The question is how to go about this.
> 
> Could we do this amendment to RFC 3280 in its next revision? It would 
> hopefully just be a minor change.
> 
> It would not change the definition of AIA just add that it can be used 
> also as CRL extension and list eventual restrictions and guidance for 
> use
with
> CRLs.
> 
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> 
> > -----Original Message-----
> > From: [email-masked]
[mailto:[email-masked]]
> > On Behalf Of Santosh Chokhani
> > Sent: den 13 oktober 2004 04:33
> > To: 'pkix'
> > Subject: RE: Signer certificate discovery for CRLs
> >
> >
> > Stefan:
> >
> > In terms of certificate discovery, your proposal for AIA in CRL is
more
> > robust.  The whole idea of self-issued key rollover certificates and
> then
> > using the new key to issue CRL is fraught with security problems.  A 
> > secure solution would be one where the new key is certified by the 
> > parent
CA.
> In
> > that case to obtain the new certificate, you could use AIA in CRL.
> >
> > As to indirect CRL, your proposal is a good one.  The CRL DP in 
> > certificate in question points to the indirect CRL.  You get that 
> > CRL.  The AIA
in
> CRL
> > gets you started for the indirect CRL issuer certification path and
you
> > are
> > in business.
> >
> > -----Original Message-----
> > From: [email-masked]
[mailto:[email-masked]]
> > On
> > Behalf Of Stefan Santesson
> > Sent: Tuesday, October 12, 2004 7:30 PM
> > To: David A. Cooper
> > Cc: pkix
> > Subject: RE: Signer certificate discovery for CRLs
> >
> >
> >
> > David,
> >
> > Thanks for the clarifications, they make sense.
> > I did misread your pictures.
> >
> > So can we conclude that for a re-keyed CA in accordance with RFC
3280,
> > either the CRL issuer certificate itself, or the location of the CRL 
> > issuer certificate, will be clearly identified/available for the 
> > validating
> party
> > in some cases, but not in others?
> >
> > Can we also conclude that there is no real discovery solution for
> indirect
> > CRLs?
> >
> > Do you then agree then that it could be appropriate to allow AIA as
a
> CRL
> > extension to facilitate discovery of CRL signer certificate?
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> > ________________________________________
> > From: David A. Cooper [mailto:[email-masked]]
> > Sent: den 12 oktober 2004 21:14
> > To: Stefan Santesson
> > Cc: pkix
> > Subject: Re: Signer certificate discovery for CRLs
> >
> > Stefan,
> >
> > I believe that you are misinterpreting the figures. They really do 
> > represent three different cases, not three different certification
paths
> > that have been constructed through the same PKI architecture.
> >
> > In figure 1, CA 1 has generated self-issued key rollover
certificates.
> > The
> > Root CA has issued a certificate to CA 1's new key, but not its old
key
> > (either the Root CA never issued a certificate to CA 1's old key or
that
> > certificate has expired).
> >
> > In figure 2, CA 2 has also generated self-issued key rollover 
> > certificates. The Root CA has issued a certificate to CA 2's old 
> > key, but not its
new
> > key.
> >
> > In figure 3, when CA 3 performed key rollover, it requested a new CA 
> > certificate from the Root CA. CA 3 did not generated self-issued key 
> > rollover certificates.
> >
> > Of course, another realistic scenario would be one in which a CA
> generated
> > self-issued key rollover certificates upon key rollover and then had
the
> > Root CA issue a CA certificate to its new key. In this case, as you 
> > suggest, any of the certification paths from figures 1, 2, or 3
could be
> > constructed.
> >
> > As for the contents of the AIA extension, here is what I have
specified
> in
> > the "X.509 Certificate and CRL Extensions Profile for the Common
> Policy":
> >
> > The authorityInfoAccess extension uses URIs for two purposes. When
the
> > id-ad-caIssuers access method is used, the access location specifies
> where
> > certificates issued to the issuer of the certificate may be found.
If
> LDAP
> > is used, the URI must include the DN of the entry containing the
> relevant
> > certificates and specify the directory attribute in which the
> certificates
> > are located. If the directory in which the certificates are stored
> expects
> > the "binary" option to be specified, then the attribute type must be 
> > followed by ";binary" in the URI. If HTTP is used, the URI must
point to
> a
> > file that has an extension of ".p7c" that contains a certs-only CMS 
> > message (see RFC 2633). The CMS message should include all 
> > certificates
issued
> to
> > the issuer of this certificate, but must at least contain all
> certificates
> > issued to the issuer of this certificate in which the subject public
key
> > may
> > be used to verify the signature on this certificate. .... For a 
> > certificate issued by "Good CA", some examples of URIs that may 
> > appear as the
access
> > location in an authorityInfoAccess extension when the
id-ad-caIssuers
> > access
> > method is used are:
ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifi
ca
> > te
> > ,crossCertificatePair
ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate
;b
> > in
> > ary,crossCertificatePair;binary
> >
>
http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedTo
Go
> > od
> > CA.p7c
> > For both LDAP and HTTP, the URI provides the exact location where 
> > information is to be located, so there is no requirement for the
relying
> > party to try to figure out where information is located.
> >
> > The HTTP URI points to a certs-only CMS message that includes all 
> > certificates issued to the CA identified in the issuer field of the 
> > certificate.
> >
> > The LDAP URI points to the cACertificate and crossCertificatePair 
> > attributes of the directory entry of the CA identified in the issuer 
> > field of
the
> > certificate. These two attributes together hold all of the
certificates
> > issued to the CA: the cACertificate attribute holds the CA's
self-issued
> > certificates and the crossCertificatePair attribute holds the 
> > cross-certificates issued to the CA by other CAs.
> >
> > Dave
> >
> >
> > Stefan Santesson wrote:
> >
> > David,
> >
> > Thanks for these good thoughts and very useful scenarios.
> >
> > I have some comments and questions on this.
> >
> > First of all we can conclude that in some scenarios (figure 1) where
a
> > self
> > issued certificate is inserted into the path, you are likely to find
the
> > CRL
> > issuer cert in the path. (given that the new CA have a common key
and
> > certificate for cert signing and CRL signing).
> >
> > Figure 1, 2 and 3 describe the same case. It is just describing
> different
> > path building strategies. An application that has access locally to
all
> > chaining options may however still choose path 2 for the certs and
path
> 1
> > for the CRL independent of each other (which I think figure 3 tries
to
> > describe)
> >
> > Another comment is the structure of AIA extensions. The use I'm
familiar
> > with doesn't use AIA to describe a directory entry where it is left
to
> the
> > validation application logic to be intelligent enough to find
> appropriate
> > certificate data from the directory. The model I'm familiar with is
when
> > the
> > AIA URL explicitly identifies the exact location of the appropriate
CA
> > certificate file, relieving the validation software from complex 
> > information queries. If just location of explicit certificate files 
> > are
identified
> > through AIA, the presence of an AIA may not help finding the CRL
signer
> > cert
> > if this is different from the CA certificate. This is also the
problem
> > with
> > Denis proposal.
> >
> > I think we share the basic conclusion that the ability to locate the
CRL
> > signer certificate directly through the CRL could be very useful. At
> least
> > in the case of indirect CRL but it could also be proven very useful
in
> CA
> > re-keying scenarios.
> >
> > The easiest solution would probably be to allow AIA to be used in
its
> > current shape and structure as a CRL extension (MUST NOT be
critical).
> It
> > would present a very clear and uncomplicated logic to certificate 
> > validating applications in many cases.
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> > ________________________________________
> > From: David A. Cooper [mailto:[email-masked]]
> > Sent: den 7 oktober 2004 18:35
> > To: Stefan Santesson
> > Cc: pkix
> > Subject: Re: Signer certificate discovery for CRLs
> >
> > Stefan,
> >
> > I think what you are proposing is a good idea. In most cases, path 
> > discovery algorithms assume that both the trust anchor (or trust
> anchors)
> > and the end entity certificate are provided as input. In this case,
one
> > may
> > need to construct a certification path without a priori access to
the
> end
> > entity certificate (the one with the subject public key
corresponding to
> > the
> > CRL signing key). Including an AIA extension (or some other pointer)
in
> > the
> > CRL would provide the relying party with a simple way to obtain the
end
> > entity certificate for the CRL signing key's certification path. On
the
> > other hand, I believe that a relying party should be able to
construct
> the
> > certification path even without an AIA extension in the CRL, so long
as
> it
> > is not an indirect CRL. Attached is a drawing of the three basic 
> > scenarios that I expect a relying party may encounter:
> >
> > In each of these scenarios, the CA has performed key rollover and is
> only
> > signing CRLs with its new key. The diagrams would look similar,
however,
> > if
> > the CA simply choose to use different keys to sign certificates and
CRLs
> > for
> > some other reason.
> >
> > If the PKI architecture resembled figure 1, then the certification
path
> > for
> > the CRL signing key would just be a subset of the certification path
for
> > the
> > EE certificate, so no addition path discovery would be needed.
> >
> > If the PKI architecture resembled figure 1, then it would be
necessary
> to
> > obtain the new-signed-with-old self-issued certificate. In building
the
> > certification path to the EE certificate, however, the relying party
> will
> > obtain the certificates pointed to by the AIA extension in the EE 
> > certificate. This AIA extension will point to a location containing
all
> > certificates issued to CA 2, which would include both the
certificate
> > issued
> > by the Root to CA 2 and CA 2's self-issued certificate. So, even
though
> > the
> > self-issued certificate would not be part of the certification path
to
> the
> > EE certificate, it would be downloaded by the relying party during
the
> > construction of that certification path. (Yes, there are circular 
> > dependency issues in figure 2, but that is another issue.)
> >
> > A similar situation would happen if the PKI architecture resembled
> figure
> > 3. The AIA extension in the EE certificate would point to a location 
> > containing certificates issued to CA 3. When the relying party
> downloaded
> > these certificates, it would obtain both of the certificates issued
by
> the
> > Root to CA 3 and so again would have the certificate needed to
validate
> > the
> > CRL signing key.
> >
> > In the case of an indirect CRL, things may not work as well. If
indirect
> > CRLs were used, and the PKI architecture resembled figures 2 or 3 
> > (replacing "New Key" with a different CA), then the set of 
> > certificates pointed
to
> by
> > the AIA extension in the EE certificate would not include the
> certificate
> > of
> > the CRL signer. One could find this certificate by building in the 
> > reverse direction and using the SIA extension, but that may not be 
> > the most convenient solution.
> >
> > So, when indirect CRLs are being used, it seems that it would be
very
> > useful
> > to have a pointer in the CRL to the CRL signing certificate. When
the
> CRL
> > is not indirect, the need for this pointer does not seem to be as
clear,
> > but
> > I can't see any harm in including it.
> >
> > Dave
> >
> > Stefan Santesson wrote:
> > All,
> >
> > I'm interested in the opinion from members on this list about
discovery
> of
> > CRL signer's certificate in non directory centric environments.
> >
> > The problem is the following.
> >
> > The relying party (RP) needs to check validity of a certificate and
> finds
> > a
> > CDP extension with a URL to the CRL. The RP retrieves this CRL which
in
> > this
> > particular case is either signed by another key of the CA (re-keyed
CA)
> or
> > another entity (indirect CRL).
> >
> > In this case the relying party needs to obtain the certificate of
the
> CRL
> > signer which may NOT be part of the original chain. In a directory
> centric
> > solution this is retrieved from the directory, but what if such
> directory
> > is
> > not available or accessible.
> >
> > The RP have thus no hint where to find the CRL issuers certificate
> unless
> > the RP already have possession of it by some other means.
> >
> > Is seems that CRLs would need an AIA extension with the option to
point
> to
> > the location of the signers certificate in the same manner as is
> possible
> > for certificates.
> >
> > Maybe AIA should be defined as both cert and CRL extension and not
only
> > certificate extension as today.
> >
> > Thoughts and comments?
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 14 Oct 2004 08:39:43 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Wen-Cheng Wang" <[email-masked]>, "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Sender: [email-masked]

Wen-Cheng,

Thanks for bringing this up. Yes, this has also crossed my mind and we
will have to find the appropriate course on this matter.

I'm personally divided but I kind of like to keep the current OID since
we have a lot of current code and logic that successfully use the
id-ad-caIssuers to retrieve certificates for chain-building, which is
the case both for certificate chains for certs and CRLs. So I see no
major change in the use of the OID, just a fractional expansion of
scope.

So currently I lean towards adding the minor expansion of scope to the
current id-ad-caIssuers OID instead of creating a new one. But that is
not yet a mature opinion.

I think the time to deal with this problem is best after deciding
whether we want to do AIA for CRLs in the first place. I'm positive that
we can find a good solution.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Wen-Cheng Wang
> Sent: den 14 oktober 2004 04:09
> To: Stefan Santesson; Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Stefan,
> 
> I think it is a good idea to include AIA extension in CRL to aid
> RP in finding CRL issuer certificates.
> 
> However, I am concerning about the accessMethod OID to be
> used. Currently, RFC 3280 only define id-ad-caIssuers OID,
> which is intended to aid RP in finding CA certificates.
> Since a CRL issuer might not be a CA, the name and definition
> of the id-ad-caIssuers OID need to be changed (or extended).
> 
> In addition, the definition of the id-ad-caIssuers accessMethod
> is very vague. I think this is a chance to clarify it. I suggest that
> when doing this amendment the following things should be
> clarified:
> 
>    1. What will be retrieved from the acceesLocation if it is an URI?
>            I believe that the current practice is that an issuer
> certificate
>            or a list of issuer certificates (in PKCS#7 format) will be
>            retrieved if the acceesLocation is an HTTP or FTP URI.
>            But it is not clear what will be retrieved if the
> acceesLocation
>            is an LDAP URI?
>    2. What will be the MIME type of the retrieved object?
> 
> Since id-ad-caIssuers is not a proper name for the the accessMethod
> OID, I suggest that th name be changed to id-ad-issuerCertificates
> (and of course the definition should also be changed).
> 
> Wen-Cheng Wang
> 
> 
> ----- Original Message -----
> From: "Stefan Santesson" <[email-masked]>
> To: "Santosh Chokhani" <[email-masked]>; "pkix"
<[email-masked]>
> Sent: Wednesday, October 13, 2004 9:44 PM
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> 
> Santosh,
> 
> I conclude that we are in complete and total agreement.
> The question is how to go about this.
> 
> Could we do this amendment to RFC 3280 in its next revision?
> It would hopefully just be a minor change.
> 
> It would not change the definition of AIA just add that it can be used
> also
> as CRL extension and list eventual restrictions and guidance for use
with
> CRLs.
> 
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> 
> > -----Original Message-----
> > From: [email-masked]
[mailto:[email-masked]]
> > On Behalf Of Santosh Chokhani
> > Sent: den 13 oktober 2004 04:33
> > To: 'pkix'
> > Subject: RE: Signer certificate discovery for CRLs
> >
> >
> > Stefan:
> >
> > In terms of certificate discovery, your proposal for AIA in CRL is
more
> > robust.  The whole idea of self-issued key rollover certificates and
> then
> > using the new key to issue CRL is fraught with security problems.  A
> > secure
> > solution would be one where the new key is certified by the parent
CA.
> In
> > that case to obtain the new certificate, you could use AIA in CRL.
> >
> > As to indirect CRL, your proposal is a good one.  The CRL DP in
> > certificate
> > in question points to the indirect CRL.  You get that CRL.  The AIA
in
> CRL
> > gets you started for the indirect CRL issuer certification path and
you
> > are
> > in business.
> >
> > -----Original Message-----
> > From: [email-masked]
[mailto:[email-masked]]
> > On
> > Behalf Of Stefan Santesson
> > Sent: Tuesday, October 12, 2004 7:30 PM
> > To: David A. Cooper
> > Cc: pkix
> > Subject: RE: Signer certificate discovery for CRLs
> >
> >
> >
> > David,
> >
> > Thanks for the clarifications, they make sense.
> > I did misread your pictures.
> >
> > So can we conclude that for a re-keyed CA in accordance with RFC
3280,
> > either the CRL issuer certificate itself, or the location of the CRL
> > issuer
> > certificate, will be clearly identified/available for the validating
> party
> > in some cases, but not in others?
> >
> > Can we also conclude that there is no real discovery solution for
> indirect
> > CRLs?
> >
> > Do you then agree then that it could be appropriate to allow AIA as
a
> CRL
> > extension to facilitate discovery of CRL signer certificate?
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> > ________________________________________
> > From: David A. Cooper [mailto:[email-masked]]
> > Sent: den 12 oktober 2004 21:14
> > To: Stefan Santesson
> > Cc: pkix
> > Subject: Re: Signer certificate discovery for CRLs
> >
> > Stefan,
> >
> > I believe that you are misinterpreting the figures. They really do
> > represent three different cases, not three different certification
paths
> > that have been constructed through the same PKI architecture.
> >
> > In figure 1, CA 1 has generated self-issued key rollover
certificates.
> > The
> > Root CA has issued a certificate to CA 1's new key, but not its old
key
> > (either the Root CA never issued a certificate to CA 1's old key or
that
> > certificate has expired).
> >
> > In figure 2, CA 2 has also generated self-issued key rollover
> > certificates.
> > The Root CA has issued a certificate to CA 2's old key, but not its
new
> > key.
> >
> > In figure 3, when CA 3 performed key rollover, it requested a new CA
> > certificate from the Root CA. CA 3 did not generated self-issued key
> > rollover certificates.
> >
> > Of course, another realistic scenario would be one in which a CA
> generated
> > self-issued key rollover certificates upon key rollover and then had
the
> > Root CA issue a CA certificate to its new key. In this case, as you
> > suggest, any of the certification paths from figures 1, 2, or 3
could be
> > constructed.
> >
> > As for the contents of the AIA extension, here is what I have
specified
> in
> > the "X.509 Certificate and CRL Extensions Profile for the Common
> Policy":
> >
> > The authorityInfoAccess extension uses URIs for two purposes. When
the
> > id-ad-caIssuers access method is used, the access location specifies
> where
> > certificates issued to the issuer of the certificate may be found.
If
> LDAP
> > is used, the URI must include the DN of the entry containing the
> relevant
> > certificates and specify the directory attribute in which the
> certificates
> > are located. If the directory in which the certificates are stored
> expects
> > the "binary" option to be specified, then the attribute type must be
> > followed by ";binary" in the URI. If HTTP is used, the URI must
point to
> a
> > file that has an extension of ".p7c" that contains a certs-only CMS
> > message
> > (see RFC 2633). The CMS message should include all certificates
issued
> to
> > the issuer of this certificate, but must at least contain all
> certificates
> > issued to the issuer of this certificate in which the subject public
key
> > may
> > be used to verify the signature on this certificate. .... For a
> > certificate
> > issued by "Good CA", some examples of URIs that may appear as the
access
> > location in an authorityInfoAccess extension when the
id-ad-caIssuers
> > access
> > method is used are:
ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifi
ca
> > te
> > ,crossCertificatePair
ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate
;b
> > in
> > ary,crossCertificatePair;binary
> >
>
http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedTo
Go
> > od
> > CA.p7c
> > For both LDAP and HTTP, the URI provides the exact location where
> > information is to be located, so there is no requirement for the
relying
> > party to try to figure out where information is located.
> >
> > The HTTP URI points to a certs-only CMS message that includes all
> > certificates issued to the CA identified in the issuer field of the
> > certificate.
> >
> > The LDAP URI points to the cACertificate and crossCertificatePair
> > attributes
> > of the directory entry of the CA identified in the issuer field of
the
> > certificate. These two attributes together hold all of the
certificates
> > issued to the CA: the cACertificate attribute holds the CA's
self-issued
> > certificates and the crossCertificatePair attribute holds the
> > cross-certificates issued to the CA by other CAs.
> >
> > Dave
> >
> >
> > Stefan Santesson wrote:
> >
> > David,
> >
> > Thanks for these good thoughts and very useful scenarios.
> >
> > I have some comments and questions on this.
> >
> > First of all we can conclude that in some scenarios (figure 1) where
a
> > self
> > issued certificate is inserted into the path, you are likely to find
the
> > CRL
> > issuer cert in the path. (given that the new CA have a common key
and
> > certificate for cert signing and CRL signing).
> >
> > Figure 1, 2 and 3 describe the same case. It is just describing
> different
> > path building strategies. An application that has access locally to
all
> > chaining options may however still choose path 2 for the certs and
path
> 1
> > for the CRL independent of each other (which I think figure 3 tries
to
> > describe)
> >
> > Another comment is the structure of AIA extensions. The use I'm
familiar
> > with doesn't use AIA to describe a directory entry where it is left
to
> the
> > validation application logic to be intelligent enough to find
> appropriate
> > certificate data from the directory. The model I'm familiar with is
when
> > the
> > AIA URL explicitly identifies the exact location of the appropriate
CA
> > certificate file, relieving the validation software from complex
> > information
> > queries. If just location of explicit certificate files are
identified
> > through AIA, the presence of an AIA may not help finding the CRL
signer
> > cert
> > if this is different from the CA certificate. This is also the
problem
> > with
> > Denis proposal.
> >
> > I think we share the basic conclusion that the ability to locate the
CRL
> > signer certificate directly through the CRL could be very useful. At
> least
> > in the case of indirect CRL but it could also be proven very useful
in
> CA
> > re-keying scenarios.
> >
> > The easiest solution would probably be to allow AIA to be used in
its
> > current shape and structure as a CRL extension (MUST NOT be
critical).
> It
> > would present a very clear and uncomplicated logic to certificate
> > validating
> > applications in many cases.
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> > ________________________________________
> > From: David A. Cooper [mailto:[email-masked]]
> > Sent: den 7 oktober 2004 18:35
> > To: Stefan Santesson
> > Cc: pkix
> > Subject: Re: Signer certificate discovery for CRLs
> >
> > Stefan,
> >
> > I think what you are proposing is a good idea. In most cases, path
> > discovery algorithms assume that both the trust anchor (or trust
> anchors)
> > and the end entity certificate are provided as input. In this case,
one
> > may
> > need to construct a certification path without a priori access to
the
> end
> > entity certificate (the one with the subject public key
corresponding to
> > the
> > CRL signing key). Including an AIA extension (or some other pointer)
in
> > the
> > CRL would provide the relying party with a simple way to obtain the
end
> > entity certificate for the CRL signing key's certification path. On
the
> > other hand, I believe that a relying party should be able to
construct
> the
> > certification path even without an AIA extension in the CRL, so long
as
> it
> > is not an indirect CRL. Attached is a drawing of the three basic
> > scenarios
> > that I expect a relying party may encounter:
> >
> > In each of these scenarios, the CA has performed key rollover and is
> only
> > signing CRLs with its new key. The diagrams would look similar,
however,
> > if
> > the CA simply choose to use different keys to sign certificates and
CRLs
> > for
> > some other reason.
> >
> > If the PKI architecture resembled figure 1, then the certification
path
> > for
> > the CRL signing key would just be a subset of the certification path
for
> > the
> > EE certificate, so no addition path discovery would be needed.
> >
> > If the PKI architecture resembled figure 1, then it would be
necessary
> to
> > obtain the new-signed-with-old self-issued certificate. In building
the
> > certification path to the EE certificate, however, the relying party
> will
> > obtain the certificates pointed to by the AIA extension in the EE
> > certificate. This AIA extension will point to a location containing
all
> > certificates issued to CA 2, which would include both the
certificate
> > issued
> > by the Root to CA 2 and CA 2's self-issued certificate. So, even
though
> > the
> > self-issued certificate would not be part of the certification path
to
> the
> > EE certificate, it would be downloaded by the relying party during
the
> > construction of that certification path. (Yes, there are circular
> > dependency issues in figure 2, but that is another issue.)
> >
> > A similar situation would happen if the PKI architecture resembled
> figure
> > 3. The AIA extension in the EE certificate would point to a location
> > containing certificates issued to CA 3. When the relying party
> downloaded
> > these certificates, it would obtain both of the certificates issued
by
> the
> > Root to CA 3 and so again would have the certificate needed to
validate
> > the
> > CRL signing key.
> >
> > In the case of an indirect CRL, things may not work as well. If
indirect
> > CRLs were used, and the PKI architecture resembled figures 2 or 3
> > (replacing
> > "New Key" with a different CA), then the set of certificates pointed
to
> by
> > the AIA extension in the EE certificate would not include the
> certificate
> > of
> > the CRL signer. One could find this certificate by building in the
> > reverse
> > direction and using the SIA extension, but that may not be the most
> > convenient solution.
> >
> > So, when indirect CRLs are being used, it seems that it would be
very
> > useful
> > to have a pointer in the CRL to the CRL signing certificate. When
the
> CRL
> > is not indirect, the need for this pointer does not seem to be as
clear,
> > but
> > I can't see any harm in including it.
> >
> > Dave
> >
> > Stefan Santesson wrote:
> > All,
> >
> > I'm interested in the opinion from members on this list about
discovery
> of
> > CRL signer's certificate in non directory centric environments.
> >
> > The problem is the following.
> >
> > The relying party (RP) needs to check validity of a certificate and
> finds
> > a
> > CDP extension with a URL to the CRL. The RP retrieves this CRL which
in
> > this
> > particular case is either signed by another key of the CA (re-keyed
CA)
> or
> > another entity (indirect CRL).
> >
> > In this case the relying party needs to obtain the certificate of
the
> CRL
> > signer which may NOT be part of the original chain. In a directory
> centric
> > solution this is retrieved from the directory, but what if such
> directory
> > is
> > not available or accessible.
> >
> > The RP have thus no hint where to find the CRL issuers certificate
> unless
> > the RP already have possession of it by some other means.
> >
> > Is seems that CRLs would need an AIA extension with the option to
point
> to
> > the location of the signers certificate in the same manner as is
> possible
> > for certificates.
> >
> > Maybe AIA should be defined as both cert and CRL extension and not
only
> > certificate extension as today.
> >
> > Thoughts and comments?
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> 

From: "Wen-Cheng Wang" <[email-masked]>
To: "Stefan Santesson" <[email-masked]>, "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Date: Thu, 14 Oct 2004 10:09:24 +0800
Organization: Chunghwa Telecom
Sender: [email-masked]

Stefan,

I think it is a good idea to include AIA extension in CRL to aid
RP in finding CRL issuer certificates.

However, I am concerning about the accessMethod OID to be
used. Currently, RFC 3280 only define id-ad-caIssuers OID,
which is intended to aid RP in finding CA certificates.
Since a CRL issuer might not be a CA, the name and definition
of the id-ad-caIssuers OID need to be changed (or extended).

In addition, the definition of the id-ad-caIssuers accessMethod
is very vague. I think this is a chance to clarify it. I suggest that
when doing this amendment the following things should be
clarified:

   1. What will be retrieved from the acceesLocation if it is an URI?
           I believe that the current practice is that an issuer certificate
           or a list of issuer certificates (in PKCS#7 format) will be
           retrieved if the acceesLocation is an HTTP or FTP URI.
           But it is not clear what will be retrieved if the acceesLocation
           is an LDAP URI?
   2. What will be the MIME type of the retrieved object?

Since id-ad-caIssuers is not a proper name for the the accessMethod
OID, I suggest that th name be changed to id-ad-issuerCertificates
(and of course the definition should also be changed).

Wen-Cheng Wang

----- Original Message ----- 
From: "Stefan Santesson" <[email-masked]>
To: "Santosh Chokhani" <[email-masked]>; "pkix" <[email-masked]>
Sent: Wednesday, October 13, 2004 9:44 PM
Subject: RE: Signer certificate discovery for CRLs

Santosh,

I conclude that we are in complete and total agreement.
The question is how to go about this.

Could we do this amendment to RFC 3280 in its next revision?
It would hopefully just be a minor change.

It would not change the definition of AIA just add that it can be used also
as CRL extension and list eventual restrictions and guidance for use with
CRLs.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
> On Behalf Of Santosh Chokhani
> Sent: den 13 oktober 2004 04:33
> To: 'pkix'
> Subject: RE: Signer certificate discovery for CRLs
>
>
> Stefan:
>
> In terms of certificate discovery, your proposal for AIA in CRL is more
> robust.  The whole idea of self-issued key rollover certificates and then
> using the new key to issue CRL is fraught with security problems.  A
> secure
> solution would be one where the new key is certified by the parent CA.  In
> that case to obtain the new certificate, you could use AIA in CRL.
>
> As to indirect CRL, your proposal is a good one.  The CRL DP in
> certificate
> in question points to the indirect CRL.  You get that CRL.  The AIA in CRL
> gets you started for the indirect CRL issuer certification path and you
> are
> in business.
>
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
> On
> Behalf Of Stefan Santesson
> Sent: Tuesday, October 12, 2004 7:30 PM
> To: David A. Cooper
> Cc: pkix
> Subject: RE: Signer certificate discovery for CRLs
>
>
>
> David,
>
> Thanks for the clarifications, they make sense.
> I did misread your pictures.
>
> So can we conclude that for a re-keyed CA in accordance with RFC 3280,
> either the CRL issuer certificate itself, or the location of the CRL
> issuer
> certificate, will be clearly identified/available for the validating party
> in some cases, but not in others?
>
> Can we also conclude that there is no real discovery solution for indirect
> CRLs?
>
> Do you then agree then that it could be appropriate to allow AIA as a CRL
> extension to facilitate discovery of CRL signer certificate?
>
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>
> ________________________________________
> From: David A. Cooper [mailto:[email-masked]]
> Sent: den 12 oktober 2004 21:14
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
>
> Stefan,
>
> I believe that you are misinterpreting the figures. They really do
> represent three different cases, not three different certification paths
> that have been constructed through the same PKI architecture.
>
> In figure 1, CA 1 has generated self-issued key rollover certificates.
> The
> Root CA has issued a certificate to CA 1's new key, but not its old key
> (either the Root CA never issued a certificate to CA 1's old key or that
> certificate has expired).
>
> In figure 2, CA 2 has also generated self-issued key rollover
> certificates.
> The Root CA has issued a certificate to CA 2's old key, but not its new
> key.
>
> In figure 3, when CA 3 performed key rollover, it requested a new CA
> certificate from the Root CA. CA 3 did not generated self-issued key
> rollover certificates.
>
> Of course, another realistic scenario would be one in which a CA generated
> self-issued key rollover certificates upon key rollover and then had the
> Root CA issue a CA certificate to its new key. In this case, as you
> suggest, any of the certification paths from figures 1, 2, or 3 could be
> constructed.
>
> As for the contents of the AIA extension, here is what I have specified in
> the "X.509 Certificate and CRL Extensions Profile for the Common Policy":
>
> The authorityInfoAccess extension uses URIs for two purposes. When the
> id-ad-caIssuers access method is used, the access location specifies where
> certificates issued to the issuer of the certificate may be found. If LDAP
> is used, the URI must include the DN of the entry containing the relevant
> certificates and specify the directory attribute in which the certificates
> are located. If the directory in which the certificates are stored expects
> the "binary" option to be specified, then the attribute type must be
> followed by ";binary" in the URI. If HTTP is used, the URI must point to a
> file that has an extension of ".p7c" that contains a certs-only CMS
> message
> (see RFC 2633). The CMS message should include all certificates issued to
> the issuer of this certificate, but must at least contain all certificates
> issued to the issuer of this certificate in which the subject public key
> may
> be used to verify the signature on this certificate. .... For a
> certificate
> issued by "Good CA", some examples of URIs that may appear as the access
> location in an authorityInfoAccess extension when the id-ad-caIssuers
> access
> method is used are:
> ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifica
> te
> ,crossCertificatePair
> ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate;b
> in
> ary,crossCertificatePair;binary
> http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedToGo
> od
> CA.p7c
> For both LDAP and HTTP, the URI provides the exact location where
> information is to be located, so there is no requirement for the relying
> party to try to figure out where information is located.
>
> The HTTP URI points to a certs-only CMS message that includes all
> certificates issued to the CA identified in the issuer field of the
> certificate.
>
> The LDAP URI points to the cACertificate and crossCertificatePair
> attributes
> of the directory entry of the CA identified in the issuer field of the
> certificate. These two attributes together hold all of the certificates
> issued to the CA: the cACertificate attribute holds the CA's self-issued
> certificates and the crossCertificatePair attribute holds the
> cross-certificates issued to the CA by other CAs.
>
> Dave
>
>
> Stefan Santesson wrote:
>
> David,
>
> Thanks for these good thoughts and very useful scenarios.
>
> I have some comments and questions on this.
>
> First of all we can conclude that in some scenarios (figure 1) where a
> self
> issued certificate is inserted into the path, you are likely to find the
> CRL
> issuer cert in the path. (given that the new CA have a common key and
> certificate for cert signing and CRL signing).
>
> Figure 1, 2 and 3 describe the same case. It is just describing different
> path building strategies. An application that has access locally to all
> chaining options may however still choose path 2 for the certs and path 1
> for the CRL independent of each other (which I think figure 3 tries to
> describe)
>
> Another comment is the structure of AIA extensions. The use I'm familiar
> with doesn't use AIA to describe a directory entry where it is left to the
> validation application logic to be intelligent enough to find appropriate
> certificate data from the directory. The model I'm familiar with is when
> the
> AIA URL explicitly identifies the exact location of the appropriate CA
> certificate file, relieving the validation software from complex
> information
> queries. If just location of explicit certificate files are identified
> through AIA, the presence of an AIA may not help finding the CRL signer
> cert
> if this is different from the CA certificate. This is also the problem
> with
> Denis proposal.
>
> I think we share the basic conclusion that the ability to locate the CRL
> signer certificate directly through the CRL could be very useful. At least
> in the case of indirect CRL but it could also be proven very useful in CA
> re-keying scenarios.
>
> The easiest solution would probably be to allow AIA to be used in its
> current shape and structure as a CRL extension (MUST NOT be critical). It
> would present a very clear and uncomplicated logic to certificate
> validating
> applications in many cases.
>
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>
> ________________________________________
> From: David A. Cooper [mailto:[email-masked]]
> Sent: den 7 oktober 2004 18:35
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
>
> Stefan,
>
> I think what you are proposing is a good idea. In most cases, path
> discovery algorithms assume that both the trust anchor (or trust anchors)
> and the end entity certificate are provided as input. In this case, one
> may
> need to construct a certification path without a priori access to the end
> entity certificate (the one with the subject public key corresponding to
> the
> CRL signing key). Including an AIA extension (or some other pointer) in
> the
> CRL would provide the relying party with a simple way to obtain the end
> entity certificate for the CRL signing key's certification path. On the
> other hand, I believe that a relying party should be able to construct the
> certification path even without an AIA extension in the CRL, so long as it
> is not an indirect CRL. Attached is a drawing of the three basic
> scenarios
> that I expect a relying party may encounter:
>
> In each of these scenarios, the CA has performed key rollover and is only
> signing CRLs with its new key. The diagrams would look similar, however,
> if
> the CA simply choose to use different keys to sign certificates and CRLs
> for
> some other reason.
>
> If the PKI architecture resembled figure 1, then the certification path
> for
> the CRL signing key would just be a subset of the certification path for
> the
> EE certificate, so no addition path discovery would be needed.
>
> If the PKI architecture resembled figure 1, then it would be necessary to
> obtain the new-signed-with-old self-issued certificate. In building the
> certification path to the EE certificate, however, the relying party will
> obtain the certificates pointed to by the AIA extension in the EE
> certificate. This AIA extension will point to a location containing all
> certificates issued to CA 2, which would include both the certificate
> issued
> by the Root to CA 2 and CA 2's self-issued certificate. So, even though
> the
> self-issued certificate would not be part of the certification path to the
> EE certificate, it would be downloaded by the relying party during the
> construction of that certification path. (Yes, there are circular
> dependency issues in figure 2, but that is another issue.)
>
> A similar situation would happen if the PKI architecture resembled figure
> 3. The AIA extension in the EE certificate would point to a location
> containing certificates issued to CA 3. When the relying party downloaded
> these certificates, it would obtain both of the certificates issued by the
> Root to CA 3 and so again would have the certificate needed to validate
> the
> CRL signing key.
>
> In the case of an indirect CRL, things may not work as well. If indirect
> CRLs were used, and the PKI architecture resembled figures 2 or 3
> (replacing
> "New Key" with a different CA), then the set of certificates pointed to by
> the AIA extension in the EE certificate would not include the certificate
> of
> the CRL signer. One could find this certificate by building in the
> reverse
> direction and using the SIA extension, but that may not be the most
> convenient solution.
>
> So, when indirect CRLs are being used, it seems that it would be very
> useful
> to have a pointer in the CRL to the CRL signing certificate. When the CRL
> is not indirect, the need for this pointer does not seem to be as clear,
> but
> I can't see any harm in including it.
>
> Dave
>
> Stefan Santesson wrote:
> All,
>
> I'm interested in the opinion from members on this list about discovery of
> CRL signer's certificate in non directory centric environments.
>
> The problem is the following.
>
> The relying party (RP) needs to check validity of a certificate and finds
> a
> CDP extension with a URL to the CRL. The RP retrieves this CRL which in
> this
> particular case is either signed by another key of the CA (re-keyed CA) or
> another entity (indirect CRL).
>
> In this case the relying party needs to obtain the certificate of the CRL
> signer which may NOT be part of the original chain. In a directory centric
> solution this is retrieved from the directory, but what if such directory
> is
> not available or accessible.
>
> The RP have thus no hint where to find the CRL issuers certificate unless
> the RP already have possession of it by some other means.
>
> Is seems that CRLs would need an AIA extension with the option to point to
> the location of the signers certificate in the same manner as is possible
> for certificates.
>
> Maybe AIA should be defined as both cert and CRL extension and not only
> certificate extension as today.
>
> Thoughts and comments?
>
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>
>

From: "Miguel Rodriguez" <[email-masked]>
To: <[email-masked]>
Subject: current version of CMP?
Date: Wed, 13 Oct 2004 19:36:25 -0500
Importance: Normal
Sender: [email-masked]

This is a multi-part message in MIME format.

------=_NextPart_000_004D_01C4B15B.ED5DE330
Content-Type: text/plain;
	charset="US-ASCII"
Content-Transfer-Encoding: 7bit

Is there a current version of the draft for CMP?
I mean both draft-ietf-pkix-rfc2510bis-09.txt and the one covering the
transports
 
thanks,
 
Miguel Rodriguez
SeguriData

------=_NextPart_000_004D_01C4B15B.ED5DE330
Content-Type: text/html;
	charset="US-ASCII"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii">
<TITLE>Message</TITLE>

<META content=3D"MSHTML 6.00.2800.1458" name=3DGENERATOR></HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D625103400-14102004>Is =
there=20
a&nbsp;current version of the draft for CMP?</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D625103400-14102004>I mean =
both=20
draft-ietf-pkix-rfc2510bis-09.txt and the one covering the=20
transports</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D625103400-14102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D625103400-14102004>thanks,</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><SPAN class=3D625103400-14102004><FONT face=3DArial size=3D2>Miguel =

Rodriguez</FONT></SPAN></DIV>
<DIV><SPAN class=3D625103400-14102004><FONT face=3DArial=20
size=3D2>SeguriData</FONT></SPAN></DIV></BODY></HTML>

------=_NextPart_000_004D_01C4B15B.ED5DE330--

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 17:51:21 -0400
Importance: Normal
Sender: [email-masked]

Denis:

Two examples are very simple: one for direct CRL Issuer and one for Indirect
CRL Issuer.

Let us make the following assumptions that Stefan was making:

1.  You are directory challenged; and
2.  You use AIA to develop the path; and
3.  You develop the path from the end entity to trust anchor.

>From what I know of MS CAPI, these are reasonable assumptions/constraints.

Now the examples.

Example 1: Direct CRL Issuer

The certificate trust path is:
Root --> CA1 --> CA 2, old key --> Denis

The CRL trust path is:
Root --> CA1 --> CA 2, new key --> CRL

(Note: We do not do self-issued certificate since there is no simple, secure
way to check their revocation status).

Now, with AIA in CRL, finding the CA2, new key certificate is
straightforward.  How would you find it if you do no deal with SIA et. al.

Example 2: Indirect CRL Issuer

The certificate trust path is:
Root --> CA1 --> CA 2 --> Denis
(Note: Denis's certificate points to CRL DP of an indirect CRL issued by
CAI.

The CRL trust path is:
Root --> CAI --> CRL

Now, with AIA in CRL, finding the CAI certificate is straightforward.  How
would you find it if you do no deal with SIA et. al.

In addition to the need cited above, please note that the extension
semantics does not change, it does not hinder any interoperability, and it
does not break any backward compatibility.  So, what if I wanted to use this
extension in the CRL.  It does no harm to other relying parties.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Denis Pinkas
Sent: Wednesday, October 13, 2004 11:01 AM
To: Stefan Santesson
Cc: Santosh Chokhani; pkix
Subject: Re: Signer certificate discovery for CRLs

Stefan,

> Denis,

> I'm not sure what you mean.

For the time being, I would like that you provide an example where, when 
using the current extensions that are defined in RFC 3280, it will NOT be 
possible to locate a CRL Issuer certificate.

If you are able to provide that example, then it would justify the need for 
an extension at least for one case. Then we can see what that case is.

I am awaiting that example.

Denis

> I conclude that I agree with Santosh.
> 
> The debate is still open... Feel free to express your opinion.
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: den 13 oktober 2004 16:34
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>You are making a conclusion without letting me the time to respond. I
>>will need more time to look at the pictures (and understand them).
>>
>>For the time being, I am still reluctant to accept
> 
> "yet-another-method".
> 
>>We already have too many.
>>
>>
>>>Santosh,
>>>
>>>I conclude that we are in complete and total agreement.
>>>The question is how to go about this.
>>
>>>Could we do this amendment to RFC 3280 in its next revision? It would
>>>hopefully just be a minor change.
>>
>>This is exactly what I feared.
>>
>>We usually end-up with a "minor change" in an extension without saying
>>cleary how and when it shall/should be used.
>>
>>I still have in mind that:
>>
>>  1) a certification path must first be constructed,
>>  2) then the revocation checking of that path must be done.
>>
>>This means that information about CRL issuers certificates locations
> 
> may
> 
>>certainly be found in that chain. If not, I would like an example.
>>
>>Denis
>>
>>
>>
>>>It would not change the definition of AIA just add that it can be
>>
> used
> 
>>also as CRL extension and list eventual restrictions and guidance for
> 
> use
> 
>>with CRLs.
>>
>>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>
> [mailto:[email-masked]]
> 
>>>>On Behalf Of Santosh Chokhani
>>>>Sent: den 13 oktober 2004 04:33
>>>>To: 'pkix'
>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>Stefan:
>>>>
>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>
> more
> 
>>>>robust.  The whole idea of self-issued key rollover certificates and
>>>
>>then
>>
>>>>using the new key to issue CRL is fraught with security problems.  A
>>>>secure solution would be one where the new key is certified by the 
>>>>parent
>>>
> CA.
> 
>>In
>>
>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>
>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>certificate in question points to the indirect CRL.  You get that 
>>>>CRL.  The AIA
>>>
> in
> 
>>CRL
>>
>>>>gets you started for the indirect CRL issuer certification path and
>>>
> you
> 
>>>>are
>>>>in business.
>>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>
> [mailto:[email-masked]]
> 
>>>>On
>>>>Behalf Of Stefan Santesson
>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>To: David A. Cooper
>>>>Cc: pkix
>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>
>>>>David,
>>>>
>>>>Thanks for the clarifications, they make sense.
>>>>I did misread your pictures.
>>>>
>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>
> 3280,
> 
>>>>either the CRL issuer certificate itself, or the location of the CRL
>>>>issuer certificate, will be clearly identified/available for the 
>>>>validating
>>>
>>party
>>
>>>>in some cases, but not in others?
>>>>
>>>>Can we also conclude that there is no real discovery solution for
>>>
>>indirect
>>
>>>>CRLs?
>>>>
>>>>Do you then agree then that it could be appropriate to allow AIA as
>>>
> a
> 
>>CRL
>>
>>>>extension to facilitate discovery of CRL signer certificate?
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>________________________________________
>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>Sent: den 12 oktober 2004 21:14
>>>>To: Stefan Santesson
>>>>Cc: pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>I believe that you are misinterpreting the figures.  They really do
>>>>represent three different cases, not three different certification
>>>
> paths
> 
>>>>that have been constructed through the same PKI architecture.
>>>>
>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>
> certificates.
> 
>>>>The
>>>>Root CA has issued a certificate to CA 1's new key, but not its old
>>>
> key
> 
>>>>(either the Root CA never issued a certificate to CA 1's old key or
>>>
> that
> 
>>>>certificate has expired).
>>>>
>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>certificates. The Root CA has issued a certificate to CA 2's old 
>>>>key, but not its
>>>
> new
> 
>>>>key.
>>>>
>>>>In figure 3, when CA 3 performed key rollover, it requested a new CA
>>>>certificate from the Root CA.  CA 3 did not generated self-issued
>>>
> key
> 
>>>>rollover certificates.
>>>>
>>>>Of course, another realistic scenario would be one in which a CA
>>>
>>generated
>>
>>>>self-issued key rollover certificates upon key rollover and then had
>>>
> the
> 
>>>>Root CA issue a CA certificate to its new key.  In this case, as you
>>>>suggest, any of the certification paths from figures 1, 2, or 3
>>>
> could be
> 
>>>>constructed.
>>>>
>>>>As for the contents of the AIA extension, here is what I have
>>>
> specified
> 
>>in
>>
>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>
>>Policy":
>>
>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>
> the
> 
>>>>id-ad-caIssuers access method is used, the access location specifies
>>>
>>where
>>
>>>>certificates issued to the issuer of the certificate may be found.
>>>
> If
> 
>>LDAP
>>
>>>>is used, the URI must include the DN of the entry containing the
>>>
>>relevant
>>
>>>>certificates and specify the directory attribute in which the
>>>
>>certificates
>>
>>>>are located. If the directory in which the certificates are stored
>>>
>>expects
>>
>>>>the "binary" option to be specified, then the attribute type must be
>>>>followed by ";binary" in the URI. If HTTP is used, the URI must
>>>
> point to
> 
>>a
>>
>>>>file that has an extension of ".p7c" that contains a certs-only CMS
>>>>message (see RFC 2633). The CMS message should include all 
>>>>certificates
>>>
> issued
> 
>>to
>>
>>>>the issuer of this certificate, but must at least contain all
>>>
>>certificates
>>
>>>>issued to the issuer of this certificate in which the subject public
>>>
> key
> 
>>>>may
>>>>be used to verify the signature on this certificate. .... For a
>>>>certificate issued by "Good CA", some examples of URIs that may 
>>>>appear as the
>>>
> access
> 
>>>>location in an authorityInfoAccess extension when the
>>>
> id-ad-caIssuers
> 
>>>>access
>>>>method is used are:
>>>
>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACert
>>>i
>>
> fi
> 
>>ca
>>
>>>>te
>>>>,crossCertificatePair
>>>
>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertific
>>>a
>>
> te
> 
>>;b
>>
>>>>in
>>>>ary,crossCertificatePair;binary
>>>
>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssue
>>>d
>>
> To
> 
>>Go
>>
>>>>od
>>>>CA.p7c
>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>information is to be located, so there is no requirement for the
>>>
> relying
> 
>>>>party to try to figure out where information is located.
>>>>
>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>certificates issued to the CA identified in the issuer field of the 
>>>>certificate.
>>>>
>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>attributes of the directory entry of the CA identified in the issuer 
>>>>field of
>>>
> the
> 
>>>>certificate.  These two attributes together hold all of the
>>>
> certificates
> 
>>>>issued to the CA:  the cACertificate attribute holds the CA's self-
>>>
>>issued
>>
>>>>certificates and the crossCertificatePair attribute holds the
>>>>cross-certificates issued to the CA by other CAs.
>>>>
>>>>Dave
>>>>
>>>>
>>>>Stefan Santesson wrote:
>>>>
>>>>David,
>>>>
>>>>Thanks for these good thoughts and very useful scenarios.
>>>>
>>>>I have some comments and questions on this.
>>>>
>>>>First of all we can conclude that in some scenarios (figure 1) where
>>>
> a
> 
>>>>self
>>>>issued certificate is inserted into the path, you are likely to find
>>>
> the
> 
>>>>CRL
>>>>issuer cert in the path. (given that the new CA have a common key
>>>
> and
> 
>>>>certificate for cert signing and CRL signing).
>>>>
>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>
>>different
>>
>>>>path building strategies. An application that has access locally to
>>>
> all
> 
>>>>chaining options may however still choose path 2 for the certs and
>>>
> path
> 
>>1
>>
>>>>for the CRL independent of each other (which I think figure 3 tries
>>>
> to
> 
>>>>describe)
>>>>
>>>>Another comment is the structure of AIA extensions. The use I'm
>>>
> familiar
> 
>>>>with doesn't use AIA to describe a directory entry where it is left
>>>
> to
> 
>>the
>>
>>>>validation application logic to be intelligent enough to find
>>>
>>appropriate
>>
>>>>certificate data from the directory. The model I'm familiar with is
>>>
> when
> 
>>>>the
>>>>AIA URL explicitly identifies the exact location of the appropriate
>>>
> CA
> 
>>>>certificate file, relieving the validation software from complex
>>>>information queries. If just location of explicit certificate files 
>>>>are
>>>
> identified
> 
>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>
> signer
> 
>>>>cert
>>>>if this is different from the CA certificate. This is also the
>>>
> problem
> 
>>>>with
>>>>Denis proposal.
>>>>
>>>>I think we share the basic conclusion that the ability to locate the
>>>
> CRL
> 
>>>>signer certificate directly through the CRL could be very useful. At
>>>
>>least
>>
>>>>in the case of indirect CRL but it could also be proven very useful
>>>
> in
> 
>>CA
>>
>>>>re-keying scenarios.
>>>>
>>>>The easiest solution would probably be to allow AIA to be used in
>>>
> its
> 
>>>>current shape and structure as a CRL extension (MUST NOT be
>>>
> critical).
> 
>>It
>>
>>>>would present a very clear and uncomplicated logic to certificate
>>>>validating applications in many cases.
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>________________________________________
>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>Sent: den 7 oktober 2004 18:35
>>>>To: Stefan Santesson
>>>>Cc: pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>I think what you are proposing is a good idea.  In most cases, path
>>>>discovery algorithms assume that both the trust anchor (or trust
>>>
>>anchors)
>>
>>>>and the end entity certificate are provided as input.  In this case,
>>>
> one
> 
>>>>may
>>>>need to construct a certification path without a priori access to
>>>
> the
> 
>>end
>>
>>>>entity certificate (the one with the subject public key
>>>
> corresponding to
> 
>>>>the
>>>>CRL signing key).  Including an AIA extension (or some other
>>>
> pointer) in
> 
>>>>the
>>>>CRL would provide the relying party with a simple way to obtain the
>>>
> end
> 
>>>>entity certificate for the CRL signing key's certification path. On
>>>
> the
> 
>>>>other hand, I believe that a relying party should be able to
>>>
> construct
> 
>>the
>>
>>>>certification path even without an AIA extension in the CRL, so long
>>>
> as
> 
>>it
>>
>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>scenarios that I expect a relying party may encounter:
>>>>
>>>>In each of these scenarios, the CA has performed key rollover and is
>>>
>>only
>>
>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>
>>however,
>>
>>>>if
>>>>the CA simply choose to use different keys to sign certificates and
>>>
> CRLs
> 
>>>>for
>>>>some other reason.
>>>>
>>>>If the PKI architecture resembled figure 1, then the certification
>>>
> path
> 
>>>>for
>>>>the CRL signing key would just be a subset of the certification path
>>>
> for
> 
>>>>the
>>>>EE certificate, so no addition path discovery would be needed.
>>>>
>>>>If the PKI architecture resembled figure 1, then it would be
>>>
> necessary
> 
>>to
>>
>>>>obtain the new-signed-with-old self-issued certificate.  In building
>>>
> the
> 
>>>>certification path to the EE certificate, however, the relying party
>>>
>>will
>>
>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>certificate.  This AIA extension will point to a location containing
>>>
> all
> 
>>>>certificates issued to CA 2, which would include both the
>>>
> certificate
> 
>>>>issued
>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>
> though
> 
>>>>the
>>>>self-issued certificate would not be part of the certification path
>>>
> to
> 
>>the
>>
>>>>EE certificate, it would be downloaded by the relying party during
>>>
> the
> 
>>>>construction of that certification path.  (Yes, there are circular
>>>>dependency issues in figure 2, but that is another issue.)
>>>>
>>>>A similar situation would happen if the PKI architecture resembled
>>>
>>figure
>>
>>>>3.  The AIA extension in the EE certificate would point to a
>>>
> location
> 
>>>>containing certificates issued to CA 3.  When the relying party
>>>
>>downloaded
>>
>>>>these certificates, it would obtain both of the certificates issued
>>>
> by
> 
>>the
>>
>>>>Root to CA 3 and so again would have the certificate needed to
>>>
> validate
> 
>>>>the
>>>>CRL signing key.
>>>>
>>>>In the case of an indirect CRL, things may not work as well.  If
>>>
>>indirect
>>
>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>(replacing "New Key" with a different CA), then the set of 
>>>>certificates pointed
>>>
> to
> 
>>by
>>
>>>>the AIA extension in the EE certificate would not include the
>>>
>>certificate
>>
>>>>of
>>>>the CRL signer.  One could find this certificate by building in the
>>>>reverse direction and using the SIA extension, but that may not be 
>>>>the most convenient solution.
>>>>
>>>>So, when indirect CRLs are being used, it seems that it would be
>>>
> very
> 
>>>>useful
>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>
> the
> 
>>CRL
>>
>>>>is not indirect, the need for this pointer does not seem to be as
>>>
> clear,
> 
>>>>but
>>>>I can't see any harm in including it.
>>>>
>>>>Dave
>>>>
>>>>Stefan Santesson wrote:
>>>>All,
>>>>
>>>>I'm interested in the opinion from members on this list about
>>>
> discovery
> 
>>of
>>
>>>>CRL signer's certificate in non directory centric environments.
>>>>
>>>>The problem is the following.
>>>>
>>>>The relying party (RP) needs to check validity of a certificate and
>>>
>>finds
>>
>>>>a
>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL which
>>>
> in
> 
>>>>this
>>>>particular case is either signed by another key of the CA (re-keyed
>>>
> CA)
> 
>>or
>>
>>>>another entity (indirect CRL).
>>>>
>>>>In this case the relying party needs to obtain the certificate of
>>>
> the
> 
>>CRL
>>
>>>>signer which may NOT be part of the original chain. In a directory
>>>
>>centric
>>
>>>>solution this is retrieved from the directory, but what if such
>>>
>>directory
>>
>>>>is
>>>>not available or accessible.
>>>>
>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>
>>unless
>>
>>>>the RP already have possession of it by some other means.
>>>>
>>>>Is seems that CRLs would need an AIA extension with the option to
>>>
> point
> 
>>to
>>
>>>>the location of the signers certificate in the same manner as is
>>>
>>possible
>>
>>>>for certificates.
>>>>
>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>
> only
> 
>>>>certificate extension as today.
>>>>
>>>>Thoughts and comments?
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>
>>>
>>>
> 
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 18:07:05 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Sender: [email-masked]

I think David Cooper has done a prime good job on that in his postings to the list.
 
I also think Santosh has made good effort to justify the need, especially for indirect CRLs.
 
Tell me what you miss and I'll try to fill in.
 
Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

________________________________

From: Denis Pinkas [mailto:[email-masked]]
Sent: Wed 10/13/2004 5:01 PM
To: Stefan Santesson
Cc: Santosh Chokhani; pkix
Subject: Re: Signer certificate discovery for CRLs

Stefan,

> Denis,

> I'm not sure what you mean.

For the time being, I would like that you provide an example where, when
using the current extensions that are defined in RFC 3280, it will NOT be
possible to locate a CRL Issuer certificate.

If you are able to provide that example, then it would justify the need for
an extension at least for one case. Then we can see what that case is.

I am awaiting that example.

Denis

> I conclude that I agree with Santosh.
>
> The debate is still open... Feel free to express your opinion.
>
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
>
>
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: den 13 oktober 2004 16:34
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>You are making a conclusion without letting me the time to respond.
>>I will need more time to look at the pictures (and understand them).
>>
>>For the time being, I am still reluctant to accept
>
> "yet-another-method".
>
>>We already have too many.
>>
>>
>>>Santosh,
>>>
>>>I conclude that we are in complete and total agreement.
>>>The question is how to go about this.
>>
>>>Could we do this amendment to RFC 3280 in its next revision?
>>>It would hopefully just be a minor change.
>>
>>This is exactly what I feared.
>>
>>We usually end-up with a "minor change" in an extension without saying
>>cleary how and when it shall/should be used.
>>
>>I still have in mind that:
>>
>>  1) a certification path must first be constructed,
>>  2) then the revocation checking of that path must be done.
>>
>>This means that information about CRL issuers certificates locations
>
> may
>
>>certainly be found in that chain. If not, I would like an example.
>>
>>Denis
>>
>>
>>
>>>It would not change the definition of AIA just add that it can be
>>
> used
>
>>also as CRL extension and list eventual restrictions and guidance for
>
> use
>
>>with CRLs.
>>
>>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>
> [mailto:[email-masked]]
>
>>>>On Behalf Of Santosh Chokhani
>>>>Sent: den 13 oktober 2004 04:33
>>>>To: 'pkix'
>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>Stefan:
>>>>
>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>
> more
>
>>>>robust.  The whole idea of self-issued key rollover certificates and
>>>
>>then
>>
>>>>using the new key to issue CRL is fraught with security problems.  A
>>>>secure
>>>>solution would be one where the new key is certified by the parent
>>>
> CA.
>
>>In
>>
>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>
>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>certificate
>>>>in question points to the indirect CRL.  You get that CRL.  The AIA
>>>
> in
>
>>CRL
>>
>>>>gets you started for the indirect CRL issuer certification path and
>>>
> you
>
>>>>are
>>>>in business.
>>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>
> [mailto:[email-masked]]
>
>>>>On
>>>>Behalf Of Stefan Santesson
>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>To: David A. Cooper
>>>>Cc: pkix
>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>
>>>>David,
>>>>
>>>>Thanks for the clarifications, they make sense.
>>>>I did misread your pictures.
>>>>
>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>
> 3280,
>
>>>>either the CRL issuer certificate itself, or the location of the CRL
>>>>issuer
>>>>certificate, will be clearly identified/available for the validating
>>>
>>party
>>
>>>>in some cases, but not in others?
>>>>
>>>>Can we also conclude that there is no real discovery solution for
>>>
>>indirect
>>
>>>>CRLs?
>>>>
>>>>Do you then agree then that it could be appropriate to allow AIA as
>>>
> a
>
>>CRL
>>
>>>>extension to facilitate discovery of CRL signer certificate?
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>________________________________________
>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>Sent: den 12 oktober 2004 21:14
>>>>To: Stefan Santesson
>>>>Cc: pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>I believe that you are misinterpreting the figures.  They really do
>>>>represent three different cases, not three different certification
>>>
> paths
>
>>>>that have been constructed through the same PKI architecture.
>>>>
>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>
> certificates.
>
>>>>The
>>>>Root CA has issued a certificate to CA 1's new key, but not its old
>>>
> key
>
>>>>(either the Root CA never issued a certificate to CA 1's old key or
>>>
> that
>
>>>>certificate has expired).
>>>>
>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>certificates.
>>>>The Root CA has issued a certificate to CA 2's old key, but not its
>>>
> new
>
>>>>key.
>>>>
>>>>In figure 3, when CA 3 performed key rollover, it requested a new CA
>>>>certificate from the Root CA.  CA 3 did not generated self-issued
>>>
> key
>
>>>>rollover certificates.
>>>>
>>>>Of course, another realistic scenario would be one in which a CA
>>>
>>generated
>>
>>>>self-issued key rollover certificates upon key rollover and then had
>>>
> the
>
>>>>Root CA issue a CA certificate to its new key.  In this case, as you
>>>>suggest, any of the certification paths from figures 1, 2, or 3
>>>
> could be
>
>>>>constructed.
>>>>
>>>>As for the contents of the AIA extension, here is what I have
>>>
> specified
>
>>in
>>
>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>
>>Policy":
>>
>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>
> the
>
>>>>id-ad-caIssuers access method is used, the access location specifies
>>>
>>where
>>
>>>>certificates issued to the issuer of the certificate may be found.
>>>
> If
>
>>LDAP
>>
>>>>is used, the URI must include the DN of the entry containing the
>>>
>>relevant
>>
>>>>certificates and specify the directory attribute in which the
>>>
>>certificates
>>
>>>>are located. If the directory in which the certificates are stored
>>>
>>expects
>>
>>>>the "binary" option to be specified, then the attribute type must be
>>>>followed by ";binary" in the URI. If HTTP is used, the URI must
>>>
> point to
>
>>a
>>
>>>>file that has an extension of ".p7c" that contains a certs-only CMS
>>>>message
>>>>(see RFC 2633). The CMS message should include all certificates
>>>
> issued
>
>>to
>>
>>>>the issuer of this certificate, but must at least contain all
>>>
>>certificates
>>
>>>>issued to the issuer of this certificate in which the subject public
>>>
> key
>
>>>>may
>>>>be used to verify the signature on this certificate. .... For a
>>>>certificate
>>>>issued by "Good CA", some examples of URIs that may appear as the
>>>
> access
>
>>>>location in an authorityInfoAccess extension when the
>>>
> id-ad-caIssuers
>
>>>>access
>>>>method is used are:
>>>
>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
>>
> fi
>
>>ca
>>
>>>>te
>>>>,crossCertificatePair
>>>
>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifica
>>
> te
>
>>;b
>>
>>>>in
>>>>ary,crossCertificatePair;binary
>>>
>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssued
>>
> To
>
>>Go
>>
>>>>od
>>>>CA.p7c
>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>information is to be located, so there is no requirement for the
>>>
> relying
>
>>>>party to try to figure out where information is located.
>>>>
>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>certificates issued to the CA identified in the issuer field of the
>>>>certificate.
>>>>
>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>attributes
>>>>of the directory entry of the CA identified in the issuer field of
>>>
> the
>
>>>>certificate.  These two attributes together hold all of the
>>>
> certificates
>
>>>>issued to the CA:  the cACertificate attribute holds the CA's self-
>>>
>>issued
>>
>>>>certificates and the crossCertificatePair attribute holds the
>>>>cross-certificates issued to the CA by other CAs.
>>>>
>>>>Dave
>>>>
>>>>
>>>>Stefan Santesson wrote:
>>>>
>>>>David,
>>>>
>>>>Thanks for these good thoughts and very useful scenarios.
>>>>
>>>>I have some comments and questions on this.
>>>>
>>>>First of all we can conclude that in some scenarios (figure 1) where
>>>
> a
>
>>>>self
>>>>issued certificate is inserted into the path, you are likely to find
>>>
> the
>
>>>>CRL
>>>>issuer cert in the path. (given that the new CA have a common key
>>>
> and
>
>>>>certificate for cert signing and CRL signing).
>>>>
>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>
>>different
>>
>>>>path building strategies. An application that has access locally to
>>>
> all
>
>>>>chaining options may however still choose path 2 for the certs and
>>>
> path
>
>>1
>>
>>>>for the CRL independent of each other (which I think figure 3 tries
>>>
> to
>
>>>>describe)
>>>>
>>>>Another comment is the structure of AIA extensions. The use I'm
>>>
> familiar
>
>>>>with doesn't use AIA to describe a directory entry where it is left
>>>
> to
>
>>the
>>
>>>>validation application logic to be intelligent enough to find
>>>
>>appropriate
>>
>>>>certificate data from the directory. The model I'm familiar with is
>>>
> when
>
>>>>the
>>>>AIA URL explicitly identifies the exact location of the appropriate
>>>
> CA
>
>>>>certificate file, relieving the validation software from complex
>>>>information
>>>>queries. If just location of explicit certificate files are
>>>
> identified
>
>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>
> signer
>
>>>>cert
>>>>if this is different from the CA certificate. This is also the
>>>
> problem
>
>>>>with
>>>>Denis proposal.
>>>>
>>>>I think we share the basic conclusion that the ability to locate the
>>>
> CRL
>
>>>>signer certificate directly through the CRL could be very useful. At
>>>
>>least
>>
>>>>in the case of indirect CRL but it could also be proven very useful
>>>
> in
>
>>CA
>>
>>>>re-keying scenarios.
>>>>
>>>>The easiest solution would probably be to allow AIA to be used in
>>>
> its
>
>>>>current shape and structure as a CRL extension (MUST NOT be
>>>
> critical).
>
>>It
>>
>>>>would present a very clear and uncomplicated logic to certificate
>>>>validating
>>>>applications in many cases.
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>________________________________________
>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>Sent: den 7 oktober 2004 18:35
>>>>To: Stefan Santesson
>>>>Cc: pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>I think what you are proposing is a good idea.  In most cases, path
>>>>discovery algorithms assume that both the trust anchor (or trust
>>>
>>anchors)
>>
>>>>and the end entity certificate are provided as input.  In this case,
>>>
> one
>
>>>>may
>>>>need to construct a certification path without a priori access to
>>>
> the
>
>>end
>>
>>>>entity certificate (the one with the subject public key
>>>
> corresponding to
>
>>>>the
>>>>CRL signing key).  Including an AIA extension (or some other
>>>
> pointer) in
>
>>>>the
>>>>CRL would provide the relying party with a simple way to obtain the
>>>
> end
>
>>>>entity certificate for the CRL signing key's certification path. On
>>>
> the
>
>>>>other hand, I believe that a relying party should be able to
>>>
> construct
>
>>the
>>
>>>>certification path even without an AIA extension in the CRL, so long
>>>
> as
>
>>it
>>
>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>scenarios
>>>>that I expect a relying party may encounter:
>>>>
>>>>In each of these scenarios, the CA has performed key rollover and is
>>>
>>only
>>
>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>
>>however,
>>
>>>>if
>>>>the CA simply choose to use different keys to sign certificates and
>>>
> CRLs
>
>>>>for
>>>>some other reason.
>>>>
>>>>If the PKI architecture resembled figure 1, then the certification
>>>
> path
>
>>>>for
>>>>the CRL signing key would just be a subset of the certification path
>>>
> for
>
>>>>the
>>>>EE certificate, so no addition path discovery would be needed.
>>>>
>>>>If the PKI architecture resembled figure 1, then it would be
>>>
> necessary
>
>>to
>>
>>>>obtain the new-signed-with-old self-issued certificate.  In building
>>>
> the
>
>>>>certification path to the EE certificate, however, the relying party
>>>
>>will
>>
>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>certificate.  This AIA extension will point to a location containing
>>>
> all
>
>>>>certificates issued to CA 2, which would include both the
>>>
> certificate
>
>>>>issued
>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>
> though
>
>>>>the
>>>>self-issued certificate would not be part of the certification path
>>>
> to
>
>>the
>>
>>>>EE certificate, it would be downloaded by the relying party during
>>>
> the
>
>>>>construction of that certification path.  (Yes, there are circular
>>>>dependency issues in figure 2, but that is another issue.)
>>>>
>>>>A similar situation would happen if the PKI architecture resembled
>>>
>>figure
>>
>>>>3.  The AIA extension in the EE certificate would point to a
>>>
> location
>
>>>>containing certificates issued to CA 3.  When the relying party
>>>
>>downloaded
>>
>>>>these certificates, it would obtain both of the certificates issued
>>>
> by
>
>>the
>>
>>>>Root to CA 3 and so again would have the certificate needed to
>>>
> validate
>
>>>>the
>>>>CRL signing key.
>>>>
>>>>In the case of an indirect CRL, things may not work as well.  If
>>>
>>indirect
>>
>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>(replacing
>>>>"New Key" with a different CA), then the set of certificates pointed
>>>
> to
>
>>by
>>
>>>>the AIA extension in the EE certificate would not include the
>>>
>>certificate
>>
>>>>of
>>>>the CRL signer.  One could find this certificate by building in the
>>>>reverse
>>>>direction and using the SIA extension, but that may not be the most
>>>>convenient solution.
>>>>
>>>>So, when indirect CRLs are being used, it seems that it would be
>>>
> very
>
>>>>useful
>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>
> the
>
>>CRL
>>
>>>>is not indirect, the need for this pointer does not seem to be as
>>>
> clear,
>
>>>>but
>>>>I can't see any harm in including it.
>>>>
>>>>Dave
>>>>
>>>>Stefan Santesson wrote:
>>>>All,
>>>>
>>>>I'm interested in the opinion from members on this list about
>>>
> discovery
>
>>of
>>
>>>>CRL signer's certificate in non directory centric environments.
>>>>
>>>>The problem is the following.
>>>>
>>>>The relying party (RP) needs to check validity of a certificate and
>>>
>>finds
>>
>>>>a
>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL which
>>>
> in
>
>>>>this
>>>>particular case is either signed by another key of the CA (re-keyed
>>>
> CA)
>
>>or
>>
>>>>another entity (indirect CRL).
>>>>
>>>>In this case the relying party needs to obtain the certificate of
>>>
> the
>
>>CRL
>>
>>>>signer which may NOT be part of the original chain. In a directory
>>>
>>centric
>>
>>>>solution this is retrieved from the directory, but what if such
>>>
>>directory
>>
>>>>is
>>>>not available or accessible.
>>>>
>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>
>>unless
>>
>>>>the RP already have possession of it by some other means.
>>>>
>>>>Is seems that CRLs would need an AIA extension with the option to
>>>
> point
>
>>to
>>
>>>>the location of the signers certificate in the same manner as is
>>>
>>possible
>>
>>>>for certificates.
>>>>
>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>
> only
>
>>>>certificate extension as today.
>>>>
>>>>Thoughts and comments?
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>
>>>
>>>
>
>

Date: Wed, 13 Oct 2004 17:01:10 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: Santosh Chokhani <[email-masked]>, pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

> Denis,

> I'm not sure what you mean.

For the time being, I would like that you provide an example where, when 
using the current extensions that are defined in RFC 3280, it will NOT be 
possible to locate a CRL Issuer certificate.

If you are able to provide that example, then it would justify the need for 
an extension at least for one case. Then we can see what that case is.

I am awaiting that example.

Denis

> I conclude that I agree with Santosh.
> 
> The debate is still open... Feel free to express your opinion.
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 
>>-----Original Message-----
>>From: Denis Pinkas [mailto:[email-masked]]
>>Sent: den 13 oktober 2004 16:34
>>To: Stefan Santesson
>>Cc: Santosh Chokhani; pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>You are making a conclusion without letting me the time to respond.
>>I will need more time to look at the pictures (and understand them).
>>
>>For the time being, I am still reluctant to accept
> 
> "yet-another-method".
> 
>>We already have too many.
>>
>>
>>>Santosh,
>>>
>>>I conclude that we are in complete and total agreement.
>>>The question is how to go about this.
>>
>>>Could we do this amendment to RFC 3280 in its next revision?
>>>It would hopefully just be a minor change.
>>
>>This is exactly what I feared.
>>
>>We usually end-up with a "minor change" in an extension without saying
>>cleary how and when it shall/should be used.
>>
>>I still have in mind that:
>>
>>  1) a certification path must first be constructed,
>>  2) then the revocation checking of that path must be done.
>>
>>This means that information about CRL issuers certificates locations
> 
> may
> 
>>certainly be found in that chain. If not, I would like an example.
>>
>>Denis
>>
>>
>>
>>>It would not change the definition of AIA just add that it can be
>>
> used
> 
>>also as CRL extension and list eventual restrictions and guidance for
> 
> use
> 
>>with CRLs.
>>
>>>
>>>Stefan Santesson
>>>Microsoft Security Center of Excellence (SCOE)
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>
> [mailto:[email-masked]]
> 
>>>>On Behalf Of Santosh Chokhani
>>>>Sent: den 13 oktober 2004 04:33
>>>>To: 'pkix'
>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>Stefan:
>>>>
>>>>In terms of certificate discovery, your proposal for AIA in CRL is
>>>
> more
> 
>>>>robust.  The whole idea of self-issued key rollover certificates and
>>>
>>then
>>
>>>>using the new key to issue CRL is fraught with security problems.  A
>>>>secure
>>>>solution would be one where the new key is certified by the parent
>>>
> CA.
> 
>>In
>>
>>>>that case to obtain the new certificate, you could use AIA in CRL.
>>>>
>>>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>>>certificate
>>>>in question points to the indirect CRL.  You get that CRL.  The AIA
>>>
> in
> 
>>CRL
>>
>>>>gets you started for the indirect CRL issuer certification path and
>>>
> you
> 
>>>>are
>>>>in business.
>>>>
>>>>-----Original Message-----
>>>>From: [email-masked]
>>>
> [mailto:[email-masked]]
> 
>>>>On
>>>>Behalf Of Stefan Santesson
>>>>Sent: Tuesday, October 12, 2004 7:30 PM
>>>>To: David A. Cooper
>>>>Cc: pkix
>>>>Subject: RE: Signer certificate discovery for CRLs
>>>>
>>>>
>>>>
>>>>David,
>>>>
>>>>Thanks for the clarifications, they make sense.
>>>>I did misread your pictures.
>>>>
>>>>So can we conclude that for a re-keyed CA in accordance with RFC
>>>
> 3280,
> 
>>>>either the CRL issuer certificate itself, or the location of the CRL
>>>>issuer
>>>>certificate, will be clearly identified/available for the validating
>>>
>>party
>>
>>>>in some cases, but not in others?
>>>>
>>>>Can we also conclude that there is no real discovery solution for
>>>
>>indirect
>>
>>>>CRLs?
>>>>
>>>>Do you then agree then that it could be appropriate to allow AIA as
>>>
> a
> 
>>CRL
>>
>>>>extension to facilitate discovery of CRL signer certificate?
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>________________________________________
>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>Sent: den 12 oktober 2004 21:14
>>>>To: Stefan Santesson
>>>>Cc: pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>I believe that you are misinterpreting the figures.  They really do
>>>>represent three different cases, not three different certification
>>>
> paths
> 
>>>>that have been constructed through the same PKI architecture.
>>>>
>>>>In figure 1, CA 1 has generated self-issued key rollover
>>>
> certificates.
> 
>>>>The
>>>>Root CA has issued a certificate to CA 1's new key, but not its old
>>>
> key
> 
>>>>(either the Root CA never issued a certificate to CA 1's old key or
>>>
> that
> 
>>>>certificate has expired).
>>>>
>>>>In figure 2, CA 2 has also generated self-issued key rollover
>>>>certificates.
>>>>The Root CA has issued a certificate to CA 2's old key, but not its
>>>
> new
> 
>>>>key.
>>>>
>>>>In figure 3, when CA 3 performed key rollover, it requested a new CA
>>>>certificate from the Root CA.  CA 3 did not generated self-issued
>>>
> key
> 
>>>>rollover certificates.
>>>>
>>>>Of course, another realistic scenario would be one in which a CA
>>>
>>generated
>>
>>>>self-issued key rollover certificates upon key rollover and then had
>>>
> the
> 
>>>>Root CA issue a CA certificate to its new key.  In this case, as you
>>>>suggest, any of the certification paths from figures 1, 2, or 3
>>>
> could be
> 
>>>>constructed.
>>>>
>>>>As for the contents of the AIA extension, here is what I have
>>>
> specified
> 
>>in
>>
>>>>the "X.509 Certificate and CRL Extensions Profile for the Common
>>>
>>Policy":
>>
>>>>The authorityInfoAccess extension uses URIs for two purposes. When
>>>
> the
> 
>>>>id-ad-caIssuers access method is used, the access location specifies
>>>
>>where
>>
>>>>certificates issued to the issuer of the certificate may be found.
>>>
> If
> 
>>LDAP
>>
>>>>is used, the URI must include the DN of the entry containing the
>>>
>>relevant
>>
>>>>certificates and specify the directory attribute in which the
>>>
>>certificates
>>
>>>>are located. If the directory in which the certificates are stored
>>>
>>expects
>>
>>>>the "binary" option to be specified, then the attribute type must be
>>>>followed by ";binary" in the URI. If HTTP is used, the URI must
>>>
> point to
> 
>>a
>>
>>>>file that has an extension of ".p7c" that contains a certs-only CMS
>>>>message
>>>>(see RFC 2633). The CMS message should include all certificates
>>>
> issued
> 
>>to
>>
>>>>the issuer of this certificate, but must at least contain all
>>>
>>certificates
>>
>>>>issued to the issuer of this certificate in which the subject public
>>>
> key
> 
>>>>may
>>>>be used to verify the signature on this certificate. .... For a
>>>>certificate
>>>>issued by "Good CA", some examples of URIs that may appear as the
>>>
> access
> 
>>>>location in an authorityInfoAccess extension when the
>>>
> id-ad-caIssuers
> 
>>>>access
>>>>method is used are:
>>>
>>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
>>
> fi
> 
>>ca
>>
>>>>te
>>>>,crossCertificatePair
>>>
>>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifica
>>
> te
> 
>>;b
>>
>>>>in
>>>>ary,crossCertificatePair;binary
>>>
>>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssued
>>
> To
> 
>>Go
>>
>>>>od
>>>>CA.p7c
>>>>For both LDAP and HTTP, the URI provides the exact location where
>>>>information is to be located, so there is no requirement for the
>>>
> relying
> 
>>>>party to try to figure out where information is located.
>>>>
>>>>The HTTP URI points to a certs-only CMS message that includes all
>>>>certificates issued to the CA identified in the issuer field of the
>>>>certificate.
>>>>
>>>>The LDAP URI points to the cACertificate and crossCertificatePair
>>>>attributes
>>>>of the directory entry of the CA identified in the issuer field of
>>>
> the
> 
>>>>certificate.  These two attributes together hold all of the
>>>
> certificates
> 
>>>>issued to the CA:  the cACertificate attribute holds the CA's self-
>>>
>>issued
>>
>>>>certificates and the crossCertificatePair attribute holds the
>>>>cross-certificates issued to the CA by other CAs.
>>>>
>>>>Dave
>>>>
>>>>
>>>>Stefan Santesson wrote:
>>>>
>>>>David,
>>>>
>>>>Thanks for these good thoughts and very useful scenarios.
>>>>
>>>>I have some comments and questions on this.
>>>>
>>>>First of all we can conclude that in some scenarios (figure 1) where
>>>
> a
> 
>>>>self
>>>>issued certificate is inserted into the path, you are likely to find
>>>
> the
> 
>>>>CRL
>>>>issuer cert in the path. (given that the new CA have a common key
>>>
> and
> 
>>>>certificate for cert signing and CRL signing).
>>>>
>>>>Figure 1, 2 and 3 describe the same case. It is just describing
>>>
>>different
>>
>>>>path building strategies. An application that has access locally to
>>>
> all
> 
>>>>chaining options may however still choose path 2 for the certs and
>>>
> path
> 
>>1
>>
>>>>for the CRL independent of each other (which I think figure 3 tries
>>>
> to
> 
>>>>describe)
>>>>
>>>>Another comment is the structure of AIA extensions. The use I'm
>>>
> familiar
> 
>>>>with doesn't use AIA to describe a directory entry where it is left
>>>
> to
> 
>>the
>>
>>>>validation application logic to be intelligent enough to find
>>>
>>appropriate
>>
>>>>certificate data from the directory. The model I'm familiar with is
>>>
> when
> 
>>>>the
>>>>AIA URL explicitly identifies the exact location of the appropriate
>>>
> CA
> 
>>>>certificate file, relieving the validation software from complex
>>>>information
>>>>queries. If just location of explicit certificate files are
>>>
> identified
> 
>>>>through AIA, the presence of an AIA may not help finding the CRL
>>>
> signer
> 
>>>>cert
>>>>if this is different from the CA certificate. This is also the
>>>
> problem
> 
>>>>with
>>>>Denis proposal.
>>>>
>>>>I think we share the basic conclusion that the ability to locate the
>>>
> CRL
> 
>>>>signer certificate directly through the CRL could be very useful. At
>>>
>>least
>>
>>>>in the case of indirect CRL but it could also be proven very useful
>>>
> in
> 
>>CA
>>
>>>>re-keying scenarios.
>>>>
>>>>The easiest solution would probably be to allow AIA to be used in
>>>
> its
> 
>>>>current shape and structure as a CRL extension (MUST NOT be
>>>
> critical).
> 
>>It
>>
>>>>would present a very clear and uncomplicated logic to certificate
>>>>validating
>>>>applications in many cases.
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>________________________________________
>>>>From: David A. Cooper [mailto:[email-masked]]
>>>>Sent: den 7 oktober 2004 18:35
>>>>To: Stefan Santesson
>>>>Cc: pkix
>>>>Subject: Re: Signer certificate discovery for CRLs
>>>>
>>>>Stefan,
>>>>
>>>>I think what you are proposing is a good idea.  In most cases, path
>>>>discovery algorithms assume that both the trust anchor (or trust
>>>
>>anchors)
>>
>>>>and the end entity certificate are provided as input.  In this case,
>>>
> one
> 
>>>>may
>>>>need to construct a certification path without a priori access to
>>>
> the
> 
>>end
>>
>>>>entity certificate (the one with the subject public key
>>>
> corresponding to
> 
>>>>the
>>>>CRL signing key).  Including an AIA extension (or some other
>>>
> pointer) in
> 
>>>>the
>>>>CRL would provide the relying party with a simple way to obtain the
>>>
> end
> 
>>>>entity certificate for the CRL signing key's certification path. On
>>>
> the
> 
>>>>other hand, I believe that a relying party should be able to
>>>
> construct
> 
>>the
>>
>>>>certification path even without an AIA extension in the CRL, so long
>>>
> as
> 
>>it
>>
>>>>is not an indirect CRL.  Attached is a drawing of the three basic
>>>>scenarios
>>>>that I expect a relying party may encounter:
>>>>
>>>>In each of these scenarios, the CA has performed key rollover and is
>>>
>>only
>>
>>>>signing CRLs with its new key.  The diagrams would look similar,
>>>
>>however,
>>
>>>>if
>>>>the CA simply choose to use different keys to sign certificates and
>>>
> CRLs
> 
>>>>for
>>>>some other reason.
>>>>
>>>>If the PKI architecture resembled figure 1, then the certification
>>>
> path
> 
>>>>for
>>>>the CRL signing key would just be a subset of the certification path
>>>
> for
> 
>>>>the
>>>>EE certificate, so no addition path discovery would be needed.
>>>>
>>>>If the PKI architecture resembled figure 1, then it would be
>>>
> necessary
> 
>>to
>>
>>>>obtain the new-signed-with-old self-issued certificate.  In building
>>>
> the
> 
>>>>certification path to the EE certificate, however, the relying party
>>>
>>will
>>
>>>>obtain the certificates pointed to by the AIA extension in the EE
>>>>certificate.  This AIA extension will point to a location containing
>>>
> all
> 
>>>>certificates issued to CA 2, which would include both the
>>>
> certificate
> 
>>>>issued
>>>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
>>>
> though
> 
>>>>the
>>>>self-issued certificate would not be part of the certification path
>>>
> to
> 
>>the
>>
>>>>EE certificate, it would be downloaded by the relying party during
>>>
> the
> 
>>>>construction of that certification path.  (Yes, there are circular
>>>>dependency issues in figure 2, but that is another issue.)
>>>>
>>>>A similar situation would happen if the PKI architecture resembled
>>>
>>figure
>>
>>>>3.  The AIA extension in the EE certificate would point to a
>>>
> location
> 
>>>>containing certificates issued to CA 3.  When the relying party
>>>
>>downloaded
>>
>>>>these certificates, it would obtain both of the certificates issued
>>>
> by
> 
>>the
>>
>>>>Root to CA 3 and so again would have the certificate needed to
>>>
> validate
> 
>>>>the
>>>>CRL signing key.
>>>>
>>>>In the case of an indirect CRL, things may not work as well.  If
>>>
>>indirect
>>
>>>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>>>(replacing
>>>>"New Key" with a different CA), then the set of certificates pointed
>>>
> to
> 
>>by
>>
>>>>the AIA extension in the EE certificate would not include the
>>>
>>certificate
>>
>>>>of
>>>>the CRL signer.  One could find this certificate by building in the
>>>>reverse
>>>>direction and using the SIA extension, but that may not be the most
>>>>convenient solution.
>>>>
>>>>So, when indirect CRLs are being used, it seems that it would be
>>>
> very
> 
>>>>useful
>>>>to have a pointer in the CRL to the CRL signing certificate.  When
>>>
> the
> 
>>CRL
>>
>>>>is not indirect, the need for this pointer does not seem to be as
>>>
> clear,
> 
>>>>but
>>>>I can't see any harm in including it.
>>>>
>>>>Dave
>>>>
>>>>Stefan Santesson wrote:
>>>>All,
>>>>
>>>>I'm interested in the opinion from members on this list about
>>>
> discovery
> 
>>of
>>
>>>>CRL signer's certificate in non directory centric environments.
>>>>
>>>>The problem is the following.
>>>>
>>>>The relying party (RP) needs to check validity of a certificate and
>>>
>>finds
>>
>>>>a
>>>>CDP extension with a URL to the CRL. The RP retrieves this CRL which
>>>
> in
> 
>>>>this
>>>>particular case is either signed by another key of the CA (re-keyed
>>>
> CA)
> 
>>or
>>
>>>>another entity (indirect CRL).
>>>>
>>>>In this case the relying party needs to obtain the certificate of
>>>
> the
> 
>>CRL
>>
>>>>signer which may NOT be part of the original chain. In a directory
>>>
>>centric
>>
>>>>solution this is retrieved from the directory, but what if such
>>>
>>directory
>>
>>>>is
>>>>not available or accessible.
>>>>
>>>>The RP have thus no hint where to find the CRL issuers certificate
>>>
>>unless
>>
>>>>the RP already have possession of it by some other means.
>>>>
>>>>Is seems that CRLs would need an AIA extension with the option to
>>>
> point
> 
>>to
>>
>>>>the location of the signers certificate in the same manner as is
>>>
>>possible
>>
>>>>for certificates.
>>>>
>>>>Maybe AIA should be defined as both cert and CRL extension and not
>>>
> only
> 
>>>>certificate extension as today.
>>>>
>>>>Thoughts and comments?
>>>>
>>>>Stefan Santesson
>>>>Microsoft Security Center of Excellence (SCOE)
>>>>
>>>>
>>>
>>>
>>>
> 
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 15:50:35 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Sender: [email-masked]

Denis,

I'm not sure what you mean.
I conclude that I agree with Santosh.

The debate is still open... Feel free to express your opinion.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: Denis Pinkas [mailto:[email-masked]]
> Sent: den 13 oktober 2004 16:34
> To: Stefan Santesson
> Cc: Santosh Chokhani; pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> You are making a conclusion without letting me the time to respond.
> I will need more time to look at the pictures (and understand them).
> 
> For the time being, I am still reluctant to accept
"yet-another-method".
> We already have too many.
> 
> > Santosh,
> >
> > I conclude that we are in complete and total agreement.
> > The question is how to go about this.
> 
> > Could we do this amendment to RFC 3280 in its next revision?
> > It would hopefully just be a minor change.
> 
> This is exactly what I feared.
> 
> We usually end-up with a "minor change" in an extension without saying
> cleary how and when it shall/should be used.
> 
> I still have in mind that:
> 
>   1) a certification path must first be constructed,
>   2) then the revocation checking of that path must be done.
> 
> This means that information about CRL issuers certificates locations
may
> certainly be found in that chain. If not, I would like an example.
> 
> Denis
> 
> 
> > It would not change the definition of AIA just add that it can be
used
> also as CRL extension and list eventual restrictions and guidance for
use
> with CRLs.
> >
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >
> >>-----Original Message-----
> >>From: [email-masked]
[mailto:[email-masked]]
> >>On Behalf Of Santosh Chokhani
> >>Sent: den 13 oktober 2004 04:33
> >>To: 'pkix'
> >>Subject: RE: Signer certificate discovery for CRLs
> >>
> >>
> >>Stefan:
> >>
> >>In terms of certificate discovery, your proposal for AIA in CRL is
more
> >>robust.  The whole idea of self-issued key rollover certificates and
> then
> >>using the new key to issue CRL is fraught with security problems.  A
> >>secure
> >>solution would be one where the new key is certified by the parent
CA.
> In
> >>that case to obtain the new certificate, you could use AIA in CRL.
> >>
> >>As to indirect CRL, your proposal is a good one.  The CRL DP in
> >>certificate
> >>in question points to the indirect CRL.  You get that CRL.  The AIA
in
> CRL
> >>gets you started for the indirect CRL issuer certification path and
you
> >>are
> >>in business.
> >>
> >>-----Original Message-----
> >>From: [email-masked]
[mailto:[email-masked]]
> >>On
> >>Behalf Of Stefan Santesson
> >>Sent: Tuesday, October 12, 2004 7:30 PM
> >>To: David A. Cooper
> >>Cc: pkix
> >>Subject: RE: Signer certificate discovery for CRLs
> >>
> >>
> >>
> >>David,
> >>
> >>Thanks for the clarifications, they make sense.
> >>I did misread your pictures.
> >>
> >>So can we conclude that for a re-keyed CA in accordance with RFC
3280,
> >>either the CRL issuer certificate itself, or the location of the CRL
> >>issuer
> >>certificate, will be clearly identified/available for the validating
> party
> >>in some cases, but not in others?
> >>
> >>Can we also conclude that there is no real discovery solution for
> indirect
> >>CRLs?
> >>
> >>Do you then agree then that it could be appropriate to allow AIA as
a
> CRL
> >>extension to facilitate discovery of CRL signer certificate?
> >>
> >>Stefan Santesson
> >>Microsoft Security Center of Excellence (SCOE)
> >>
> >>________________________________________
> >>From: David A. Cooper [mailto:[email-masked]]
> >>Sent: den 12 oktober 2004 21:14
> >>To: Stefan Santesson
> >>Cc: pkix
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>Stefan,
> >>
> >>I believe that you are misinterpreting the figures.  They really do
> >>represent three different cases, not three different certification
paths
> >>that have been constructed through the same PKI architecture.
> >>
> >>In figure 1, CA 1 has generated self-issued key rollover
certificates.
> >>The
> >>Root CA has issued a certificate to CA 1's new key, but not its old
key
> >>(either the Root CA never issued a certificate to CA 1's old key or
that
> >>certificate has expired).
> >>
> >>In figure 2, CA 2 has also generated self-issued key rollover
> >>certificates.
> >>The Root CA has issued a certificate to CA 2's old key, but not its
new
> >>key.
> >>
> >>In figure 3, when CA 3 performed key rollover, it requested a new CA
> >>certificate from the Root CA.  CA 3 did not generated self-issued
key
> >>rollover certificates.
> >>
> >>Of course, another realistic scenario would be one in which a CA
> generated
> >>self-issued key rollover certificates upon key rollover and then had
the
> >>Root CA issue a CA certificate to its new key.  In this case, as you
> >>suggest, any of the certification paths from figures 1, 2, or 3
could be
> >>constructed.
> >>
> >>As for the contents of the AIA extension, here is what I have
specified
> in
> >>the "X.509 Certificate and CRL Extensions Profile for the Common
> Policy":
> >>
> >>The authorityInfoAccess extension uses URIs for two purposes. When
the
> >>id-ad-caIssuers access method is used, the access location specifies
> where
> >>certificates issued to the issuer of the certificate may be found.
If
> LDAP
> >>is used, the URI must include the DN of the entry containing the
> relevant
> >>certificates and specify the directory attribute in which the
> certificates
> >>are located. If the directory in which the certificates are stored
> expects
> >>the "binary" option to be specified, then the attribute type must be
> >>followed by ";binary" in the URI. If HTTP is used, the URI must
point to
> a
> >>file that has an extension of ".p7c" that contains a certs-only CMS
> >>message
> >>(see RFC 2633). The CMS message should include all certificates
issued
> to
> >>the issuer of this certificate, but must at least contain all
> certificates
> >>issued to the issuer of this certificate in which the subject public
key
> >>may
> >>be used to verify the signature on this certificate. .... For a
> >>certificate
> >>issued by "Good CA", some examples of URIs that may appear as the
access
> >>location in an authorityInfoAccess extension when the
id-ad-caIssuers
> >>access
> >>method is used are:
>
>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACerti
fi
> ca
> >>te
> >>,crossCertificatePair
>
>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifica
te
> ;b
> >>in
> >>ary,crossCertificatePair;binary
>
>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssued
To
> Go
> >>od
> >>CA.p7c
> >>For both LDAP and HTTP, the URI provides the exact location where
> >>information is to be located, so there is no requirement for the
relying
> >>party to try to figure out where information is located.
> >>
> >>The HTTP URI points to a certs-only CMS message that includes all
> >>certificates issued to the CA identified in the issuer field of the
> >>certificate.
> >>
> >>The LDAP URI points to the cACertificate and crossCertificatePair
> >>attributes
> >>of the directory entry of the CA identified in the issuer field of
the
> >>certificate.  These two attributes together hold all of the
certificates
> >>issued to the CA:  the cACertificate attribute holds the CA's self-
> issued
> >>certificates and the crossCertificatePair attribute holds the
> >>cross-certificates issued to the CA by other CAs.
> >>
> >>Dave
> >>
> >>
> >>Stefan Santesson wrote:
> >>
> >>David,
> >>
> >>Thanks for these good thoughts and very useful scenarios.
> >>
> >>I have some comments and questions on this.
> >>
> >>First of all we can conclude that in some scenarios (figure 1) where
a
> >>self
> >>issued certificate is inserted into the path, you are likely to find
the
> >>CRL
> >>issuer cert in the path. (given that the new CA have a common key
and
> >>certificate for cert signing and CRL signing).
> >>
> >>Figure 1, 2 and 3 describe the same case. It is just describing
> different
> >>path building strategies. An application that has access locally to
all
> >>chaining options may however still choose path 2 for the certs and
path
> 1
> >>for the CRL independent of each other (which I think figure 3 tries
to
> >>describe)
> >>
> >>Another comment is the structure of AIA extensions. The use I'm
familiar
> >>with doesn't use AIA to describe a directory entry where it is left
to
> the
> >>validation application logic to be intelligent enough to find
> appropriate
> >>certificate data from the directory. The model I'm familiar with is
when
> >>the
> >>AIA URL explicitly identifies the exact location of the appropriate
CA
> >>certificate file, relieving the validation software from complex
> >>information
> >>queries. If just location of explicit certificate files are
identified
> >>through AIA, the presence of an AIA may not help finding the CRL
signer
> >>cert
> >>if this is different from the CA certificate. This is also the
problem
> >>with
> >>Denis proposal.
> >>
> >>I think we share the basic conclusion that the ability to locate the
CRL
> >>signer certificate directly through the CRL could be very useful. At
> least
> >>in the case of indirect CRL but it could also be proven very useful
in
> CA
> >>re-keying scenarios.
> >>
> >>The easiest solution would probably be to allow AIA to be used in
its
> >>current shape and structure as a CRL extension (MUST NOT be
critical).
> It
> >>would present a very clear and uncomplicated logic to certificate
> >>validating
> >>applications in many cases.
> >>
> >>Stefan Santesson
> >>Microsoft Security Center of Excellence (SCOE)
> >>
> >>________________________________________
> >>From: David A. Cooper [mailto:[email-masked]]
> >>Sent: den 7 oktober 2004 18:35
> >>To: Stefan Santesson
> >>Cc: pkix
> >>Subject: Re: Signer certificate discovery for CRLs
> >>
> >>Stefan,
> >>
> >>I think what you are proposing is a good idea.  In most cases, path
> >>discovery algorithms assume that both the trust anchor (or trust
> anchors)
> >>and the end entity certificate are provided as input.  In this case,
one
> >>may
> >>need to construct a certification path without a priori access to
the
> end
> >>entity certificate (the one with the subject public key
corresponding to
> >>the
> >>CRL signing key).  Including an AIA extension (or some other
pointer) in
> >>the
> >>CRL would provide the relying party with a simple way to obtain the
end
> >>entity certificate for the CRL signing key's certification path. On
the
> >>other hand, I believe that a relying party should be able to
construct
> the
> >>certification path even without an AIA extension in the CRL, so long
as
> it
> >>is not an indirect CRL.  Attached is a drawing of the three basic
> >>scenarios
> >>that I expect a relying party may encounter:
> >>
> >>In each of these scenarios, the CA has performed key rollover and is
> only
> >>signing CRLs with its new key.  The diagrams would look similar,
> however,
> >>if
> >>the CA simply choose to use different keys to sign certificates and
CRLs
> >>for
> >>some other reason.
> >>
> >>If the PKI architecture resembled figure 1, then the certification
path
> >>for
> >>the CRL signing key would just be a subset of the certification path
for
> >>the
> >>EE certificate, so no addition path discovery would be needed.
> >>
> >>If the PKI architecture resembled figure 1, then it would be
necessary
> to
> >>obtain the new-signed-with-old self-issued certificate.  In building
the
> >>certification path to the EE certificate, however, the relying party
> will
> >>obtain the certificates pointed to by the AIA extension in the EE
> >>certificate.  This AIA extension will point to a location containing
all
> >>certificates issued to CA 2, which would include both the
certificate
> >>issued
> >>by the Root to CA 2 and CA 2's self-issued certificate.  So, even
though
> >>the
> >>self-issued certificate would not be part of the certification path
to
> the
> >>EE certificate, it would be downloaded by the relying party during
the
> >>construction of that certification path.  (Yes, there are circular
> >>dependency issues in figure 2, but that is another issue.)
> >>
> >>A similar situation would happen if the PKI architecture resembled
> figure
> >>3.  The AIA extension in the EE certificate would point to a
location
> >>containing certificates issued to CA 3.  When the relying party
> downloaded
> >>these certificates, it would obtain both of the certificates issued
by
> the
> >>Root to CA 3 and so again would have the certificate needed to
validate
> >>the
> >>CRL signing key.
> >>
> >>In the case of an indirect CRL, things may not work as well.  If
> indirect
> >>CRLs were used, and the PKI architecture resembled figures 2 or 3
> >>(replacing
> >>"New Key" with a different CA), then the set of certificates pointed
to
> by
> >>the AIA extension in the EE certificate would not include the
> certificate
> >>of
> >>the CRL signer.  One could find this certificate by building in the
> >>reverse
> >>direction and using the SIA extension, but that may not be the most
> >>convenient solution.
> >>
> >>So, when indirect CRLs are being used, it seems that it would be
very
> >>useful
> >>to have a pointer in the CRL to the CRL signing certificate.  When
the
> CRL
> >>is not indirect, the need for this pointer does not seem to be as
clear,
> >>but
> >>I can't see any harm in including it.
> >>
> >>Dave
> >>
> >>Stefan Santesson wrote:
> >>All,
> >>
> >>I'm interested in the opinion from members on this list about
discovery
> of
> >>CRL signer's certificate in non directory centric environments.
> >>
> >>The problem is the following.
> >>
> >>The relying party (RP) needs to check validity of a certificate and
> finds
> >>a
> >>CDP extension with a URL to the CRL. The RP retrieves this CRL which
in
> >>this
> >>particular case is either signed by another key of the CA (re-keyed
CA)
> or
> >>another entity (indirect CRL).
> >>
> >>In this case the relying party needs to obtain the certificate of
the
> CRL
> >>signer which may NOT be part of the original chain. In a directory
> centric
> >>solution this is retrieved from the directory, but what if such
> directory
> >>is
> >>not available or accessible.
> >>
> >>The RP have thus no hint where to find the CRL issuers certificate
> unless
> >>the RP already have possession of it by some other means.
> >>
> >>Is seems that CRLs would need an AIA extension with the option to
point
> to
> >>the location of the signers certificate in the same manner as is
> possible
> >>for certificates.
> >>
> >>Maybe AIA should be defined as both cert and CRL extension and not
only
> >>certificate extension as today.
> >>
> >>Thoughts and comments?
> >>
> >>Stefan Santesson
> >>Microsoft Security Center of Excellence (SCOE)
> >>
> >>
> >
> >
> >
> 

Date: Wed, 13 Oct 2004 16:33:56 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: Santosh Chokhani <[email-masked]>, pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

You are making a conclusion without letting me the time to respond.
I will need more time to look at the pictures (and understand them).

For the time being, I am still reluctant to accept "yet-another-method".
We already have too many.

> Santosh,
> 
> I conclude that we are in complete and total agreement.
> The question is how to go about this.

> Could we do this amendment to RFC 3280 in its next revision?
> It would hopefully just be a minor change.

This is exactly what I feared.

We usually end-up with a "minor change" in an extension without saying 
cleary how and when it shall/should be used.

I still have in mind that:

  1) a certification path must first be constructed,
  2) then the revocation checking of that path must be done.

This means that information about CRL issuers certificates locations may 
certainly be found in that chain. If not, I would like an example.

Denis

> It would not change the definition of AIA just add that it can be used also as CRL extension and list eventual restrictions and guidance for use with CRLs.
> 
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 
>>-----Original Message-----
>>From: [email-masked] [mailto:[email-masked]]
>>On Behalf Of Santosh Chokhani
>>Sent: den 13 oktober 2004 04:33
>>To: 'pkix'
>>Subject: RE: Signer certificate discovery for CRLs
>>
>>
>>Stefan:
>>
>>In terms of certificate discovery, your proposal for AIA in CRL is more
>>robust.  The whole idea of self-issued key rollover certificates and then
>>using the new key to issue CRL is fraught with security problems.  A
>>secure
>>solution would be one where the new key is certified by the parent CA.  In
>>that case to obtain the new certificate, you could use AIA in CRL.
>>
>>As to indirect CRL, your proposal is a good one.  The CRL DP in
>>certificate
>>in question points to the indirect CRL.  You get that CRL.  The AIA in CRL
>>gets you started for the indirect CRL issuer certification path and you
>>are
>>in business.
>>
>>-----Original Message-----
>>From: [email-masked] [mailto:[email-masked]]
>>On
>>Behalf Of Stefan Santesson
>>Sent: Tuesday, October 12, 2004 7:30 PM
>>To: David A. Cooper
>>Cc: pkix
>>Subject: RE: Signer certificate discovery for CRLs
>>
>>
>>
>>David,
>>
>>Thanks for the clarifications, they make sense.
>>I did misread your pictures.
>>
>>So can we conclude that for a re-keyed CA in accordance with RFC 3280,
>>either the CRL issuer certificate itself, or the location of the CRL
>>issuer
>>certificate, will be clearly identified/available for the validating party
>>in some cases, but not in others?
>>
>>Can we also conclude that there is no real discovery solution for indirect
>>CRLs?
>>
>>Do you then agree then that it could be appropriate to allow AIA as a CRL
>>extension to facilitate discovery of CRL signer certificate?
>>
>>Stefan Santesson
>>Microsoft Security Center of Excellence (SCOE)
>>
>>________________________________________
>>From: David A. Cooper [mailto:[email-masked]]
>>Sent: den 12 oktober 2004 21:14
>>To: Stefan Santesson
>>Cc: pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>I believe that you are misinterpreting the figures.  They really do
>>represent three different cases, not three different certification paths
>>that have been constructed through the same PKI architecture.
>>
>>In figure 1, CA 1 has generated self-issued key rollover certificates.
>>The
>>Root CA has issued a certificate to CA 1's new key, but not its old key
>>(either the Root CA never issued a certificate to CA 1's old key or that
>>certificate has expired).
>>
>>In figure 2, CA 2 has also generated self-issued key rollover
>>certificates.
>>The Root CA has issued a certificate to CA 2's old key, but not its new
>>key.
>>
>>In figure 3, when CA 3 performed key rollover, it requested a new CA
>>certificate from the Root CA.  CA 3 did not generated self-issued key
>>rollover certificates.
>>
>>Of course, another realistic scenario would be one in which a CA generated
>>self-issued key rollover certificates upon key rollover and then had the
>>Root CA issue a CA certificate to its new key.  In this case, as you
>>suggest, any of the certification paths from figures 1, 2, or 3 could be
>>constructed.
>>
>>As for the contents of the AIA extension, here is what I have specified in
>>the "X.509 Certificate and CRL Extensions Profile for the Common Policy":
>>
>>The authorityInfoAccess extension uses URIs for two purposes. When the
>>id-ad-caIssuers access method is used, the access location specifies where
>>certificates issued to the issuer of the certificate may be found. If LDAP
>>is used, the URI must include the DN of the entry containing the relevant
>>certificates and specify the directory attribute in which the certificates
>>are located. If the directory in which the certificates are stored expects
>>the "binary" option to be specified, then the attribute type must be
>>followed by ";binary" in the URI. If HTTP is used, the URI must point to a
>>file that has an extension of ".p7c" that contains a certs-only CMS
>>message
>>(see RFC 2633). The CMS message should include all certificates issued to
>>the issuer of this certificate, but must at least contain all certificates
>>issued to the issuer of this certificate in which the subject public key
>>may
>>be used to verify the signature on this certificate. .... For a
>>certificate
>>issued by "Good CA", some examples of URIs that may appear as the access
>>location in an authorityInfoAccess extension when the id-ad-caIssuers
>>access
>>method is used are:
>>ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifica
>>te
>>,crossCertificatePair
>>ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate;b
>>in
>>ary,crossCertificatePair;binary
>>http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedToGo
>>od
>>CA.p7c
>>For both LDAP and HTTP, the URI provides the exact location where
>>information is to be located, so there is no requirement for the relying
>>party to try to figure out where information is located.
>>
>>The HTTP URI points to a certs-only CMS message that includes all
>>certificates issued to the CA identified in the issuer field of the
>>certificate.
>>
>>The LDAP URI points to the cACertificate and crossCertificatePair
>>attributes
>>of the directory entry of the CA identified in the issuer field of the
>>certificate.  These two attributes together hold all of the certificates
>>issued to the CA:  the cACertificate attribute holds the CA's self-issued
>>certificates and the crossCertificatePair attribute holds the
>>cross-certificates issued to the CA by other CAs.
>>
>>Dave
>>
>>
>>Stefan Santesson wrote:
>>
>>David,
>>
>>Thanks for these good thoughts and very useful scenarios.
>>
>>I have some comments and questions on this.
>>
>>First of all we can conclude that in some scenarios (figure 1) where a
>>self
>>issued certificate is inserted into the path, you are likely to find the
>>CRL
>>issuer cert in the path. (given that the new CA have a common key and
>>certificate for cert signing and CRL signing).
>>
>>Figure 1, 2 and 3 describe the same case. It is just describing different
>>path building strategies. An application that has access locally to all
>>chaining options may however still choose path 2 for the certs and path 1
>>for the CRL independent of each other (which I think figure 3 tries to
>>describe)
>>
>>Another comment is the structure of AIA extensions. The use I'm familiar
>>with doesn't use AIA to describe a directory entry where it is left to the
>>validation application logic to be intelligent enough to find appropriate
>>certificate data from the directory. The model I'm familiar with is when
>>the
>>AIA URL explicitly identifies the exact location of the appropriate CA
>>certificate file, relieving the validation software from complex
>>information
>>queries. If just location of explicit certificate files are identified
>>through AIA, the presence of an AIA may not help finding the CRL signer
>>cert
>>if this is different from the CA certificate. This is also the problem
>>with
>>Denis proposal.
>>
>>I think we share the basic conclusion that the ability to locate the CRL
>>signer certificate directly through the CRL could be very useful. At least
>>in the case of indirect CRL but it could also be proven very useful in CA
>>re-keying scenarios.
>>
>>The easiest solution would probably be to allow AIA to be used in its
>>current shape and structure as a CRL extension (MUST NOT be critical). It
>>would present a very clear and uncomplicated logic to certificate
>>validating
>>applications in many cases.
>>
>>Stefan Santesson
>>Microsoft Security Center of Excellence (SCOE)
>>
>>________________________________________
>>From: David A. Cooper [mailto:[email-masked]]
>>Sent: den 7 oktober 2004 18:35
>>To: Stefan Santesson
>>Cc: pkix
>>Subject: Re: Signer certificate discovery for CRLs
>>
>>Stefan,
>>
>>I think what you are proposing is a good idea.  In most cases, path
>>discovery algorithms assume that both the trust anchor (or trust anchors)
>>and the end entity certificate are provided as input.  In this case, one
>>may
>>need to construct a certification path without a priori access to the end
>>entity certificate (the one with the subject public key corresponding to
>>the
>>CRL signing key).  Including an AIA extension (or some other pointer) in
>>the
>>CRL would provide the relying party with a simple way to obtain the end
>>entity certificate for the CRL signing key's certification path. On the
>>other hand, I believe that a relying party should be able to construct the
>>certification path even without an AIA extension in the CRL, so long as it
>>is not an indirect CRL.  Attached is a drawing of the three basic
>>scenarios
>>that I expect a relying party may encounter:
>>
>>In each of these scenarios, the CA has performed key rollover and is only
>>signing CRLs with its new key.  The diagrams would look similar, however,
>>if
>>the CA simply choose to use different keys to sign certificates and CRLs
>>for
>>some other reason.
>>
>>If the PKI architecture resembled figure 1, then the certification path
>>for
>>the CRL signing key would just be a subset of the certification path for
>>the
>>EE certificate, so no addition path discovery would be needed.
>>
>>If the PKI architecture resembled figure 1, then it would be necessary to
>>obtain the new-signed-with-old self-issued certificate.  In building the
>>certification path to the EE certificate, however, the relying party will
>>obtain the certificates pointed to by the AIA extension in the EE
>>certificate.  This AIA extension will point to a location containing all
>>certificates issued to CA 2, which would include both the certificate
>>issued
>>by the Root to CA 2 and CA 2's self-issued certificate.  So, even though
>>the
>>self-issued certificate would not be part of the certification path to the
>>EE certificate, it would be downloaded by the relying party during the
>>construction of that certification path.  (Yes, there are circular
>>dependency issues in figure 2, but that is another issue.)
>>
>>A similar situation would happen if the PKI architecture resembled figure
>>3.  The AIA extension in the EE certificate would point to a location
>>containing certificates issued to CA 3.  When the relying party downloaded
>>these certificates, it would obtain both of the certificates issued by the
>>Root to CA 3 and so again would have the certificate needed to validate
>>the
>>CRL signing key.
>>
>>In the case of an indirect CRL, things may not work as well.  If indirect
>>CRLs were used, and the PKI architecture resembled figures 2 or 3
>>(replacing
>>"New Key" with a different CA), then the set of certificates pointed to by
>>the AIA extension in the EE certificate would not include the certificate
>>of
>>the CRL signer.  One could find this certificate by building in the
>>reverse
>>direction and using the SIA extension, but that may not be the most
>>convenient solution.
>>
>>So, when indirect CRLs are being used, it seems that it would be very
>>useful
>>to have a pointer in the CRL to the CRL signing certificate.  When the CRL
>>is not indirect, the need for this pointer does not seem to be as clear,
>>but
>>I can't see any harm in including it.
>>
>>Dave
>>
>>Stefan Santesson wrote:
>>All,
>>
>>I'm interested in the opinion from members on this list about discovery of
>>CRL signer's certificate in non directory centric environments.
>>
>>The problem is the following.
>>
>>The relying party (RP) needs to check validity of a certificate and finds
>>a
>>CDP extension with a URL to the CRL. The RP retrieves this CRL which in
>>this
>>particular case is either signed by another key of the CA (re-keyed CA) or
>>another entity (indirect CRL).
>>
>>In this case the relying party needs to obtain the certificate of the CRL
>>signer which may NOT be part of the original chain. In a directory centric
>>solution this is retrieved from the directory, but what if such directory
>>is
>>not available or accessible.
>>
>>The RP have thus no hint where to find the CRL issuers certificate unless
>>the RP already have possession of it by some other means.
>>
>>Is seems that CRLs would need an AIA extension with the option to point to
>>the location of the signers certificate in the same manner as is possible
>>for certificates.
>>
>>Maybe AIA should be defined as both cert and CRL extension and not only
>>certificate extension as today.
>>
>>Thoughts and comments?
>>
>>Stefan Santesson
>>Microsoft Security Center of Excellence (SCOE)
>>
>>
> 
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 10:21:33 -0400
Importance: Normal
Sender: [email-masked]

Stefan:

The change could be part of CRL related explanation (if the RFC Editor
wishes).

We could describe this as a mechanism to start the CRL issuer path
development process.

-----Original Message-----
From: Stefan Santesson [mailto:[email-masked]] 
Sent: Wednesday, October 13, 2004 9:45 AM
To: Santosh Chokhani; pkix
Subject: RE: Signer certificate discovery for CRLs

Santosh,

I conclude that we are in complete and total agreement.
The question is how to go about this.

Could we do this amendment to RFC 3280 in its next revision?
It would hopefully just be a minor change.

It would not change the definition of AIA just add that it can be used also
as CRL extension and list eventual restrictions and guidance for use with
CRLs.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]]
> On Behalf Of Santosh Chokhani
> Sent: den 13 oktober 2004 04:33
> To: 'pkix'
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> Stefan:
> 
> In terms of certificate discovery, your proposal for AIA in CRL is 
> more robust.  The whole idea of self-issued key rollover certificates 
> and then using the new key to issue CRL is fraught with security 
> problems.  A secure solution would be one where the new key is 
> certified by the parent CA.  In that case to obtain the new 
> certificate, you could use AIA in CRL.
> 
> As to indirect CRL, your proposal is a good one.  The CRL DP in 
> certificate in question points to the indirect CRL.  You get that CRL.  
> The AIA in CRL gets you started for the indirect CRL issuer 
> certification path and you are
> in business.
> 
> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]]
> On
> Behalf Of Stefan Santesson
> Sent: Tuesday, October 12, 2004 7:30 PM
> To: David A. Cooper
> Cc: pkix
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> 
> David,
> 
> Thanks for the clarifications, they make sense.
> I did misread your pictures.
> 
> So can we conclude that for a re-keyed CA in accordance with RFC 3280, 
> either the CRL issuer certificate itself, or the location of the CRL 
> issuer certificate, will be clearly identified/available for the 
> validating party in some cases, but not in others?
> 
> Can we also conclude that there is no real discovery solution for 
> indirect CRLs?
> 
> Do you then agree then that it could be appropriate to allow AIA as a 
> CRL extension to facilitate discovery of CRL signer certificate?
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> ________________________________________
> From: David A. Cooper [mailto:[email-masked]]
> Sent: den 12 oktober 2004 21:14
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> I believe that you are misinterpreting the figures.  They really do 
> represent three different cases, not three different certification 
> paths that have been constructed through the same PKI architecture.
> 
> In figure 1, CA 1 has generated self-issued key rollover certificates. 
> The Root CA has issued a certificate to CA 1's new key, but not its 
> old key (either the Root CA never issued a certificate to CA 1's old 
> key or that certificate has expired).
> 
> In figure 2, CA 2 has also generated self-issued key rollover 
> certificates. The Root CA has issued a certificate to CA 2's old key, 
> but not its new key.
> 
> In figure 3, when CA 3 performed key rollover, it requested a new CA 
> certificate from the Root CA.  CA 3 did not generated self-issued key 
> rollover certificates.
> 
> Of course, another realistic scenario would be one in which a CA 
> generated self-issued key rollover certificates upon key rollover and 
> then had the Root CA issue a CA certificate to its new key.  In this 
> case, as you suggest, any of the certification paths from figures 1, 
> 2, or 3 could be constructed.
> 
> As for the contents of the AIA extension, here is what I have 
> specified in the "X.509 Certificate and CRL Extensions Profile for the 
> Common Policy":
> 
> The authorityInfoAccess extension uses URIs for two purposes. When the 
> id-ad-caIssuers access method is used, the access location specifies 
> where certificates issued to the issuer of the certificate may be 
> found. If LDAP is used, the URI must include the DN of the entry 
> containing the relevant certificates and specify the directory 
> attribute in which the certificates are located. If the directory in 
> which the certificates are stored expects the "binary" option to be 
> specified, then the attribute type must be followed by ";binary" in 
> the URI. If HTTP is used, the URI must point to a file that has an 
> extension of ".p7c" that contains a certs-only CMS message (see RFC 
> 2633). The CMS message should include all certificates issued to the 
> issuer of this certificate, but must at least contain all certificates 
> issued to the issuer of this certificate in which the subject public 
> key may be used to verify the signature on this certificate. .... For 
> a certificate
> issued by "Good CA", some examples of URIs that may appear as the access
> location in an authorityInfoAccess extension when the id-ad-caIssuers
> access
> method is used are:
> ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifica
> te
> ,crossCertificatePair
> ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate;b
> in
> ary,crossCertificatePair;binary
> http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedToGo
> od
> CA.p7c
> For both LDAP and HTTP, the URI provides the exact location where
> information is to be located, so there is no requirement for the relying
> party to try to figure out where information is located.
> 
> The HTTP URI points to a certs-only CMS message that includes all 
> certificates issued to the CA identified in the issuer field of the 
> certificate.
> 
> The LDAP URI points to the cACertificate and crossCertificatePair 
> attributes of the directory entry of the CA identified in the issuer 
> field of the certificate.  These two attributes together hold all of 
> the certificates issued to the CA:  the cACertificate attribute holds 
> the CA's self-issued certificates and the crossCertificatePair 
> attribute holds the cross-certificates issued to the CA by other CAs.
> 
> Dave
> 
> 
> Stefan Santesson wrote:
> 
> David,
> 
> Thanks for these good thoughts and very useful scenarios.
> 
> I have some comments and questions on this.
> 
> First of all we can conclude that in some scenarios (figure 1) where a 
> self issued certificate is inserted into the path, you are likely to 
> find the CRL
> issuer cert in the path. (given that the new CA have a common key and
> certificate for cert signing and CRL signing).
> 
> Figure 1, 2 and 3 describe the same case. It is just describing 
> different path building strategies. An application that has access 
> locally to all chaining options may however still choose path 2 for 
> the certs and path 1 for the CRL independent of each other (which I 
> think figure 3 tries to
> describe)
> 
> Another comment is the structure of AIA extensions. The use I'm 
> familiar with doesn't use AIA to describe a directory entry where it 
> is left to the validation application logic to be intelligent enough 
> to find appropriate certificate data from the directory. The model I'm 
> familiar with is when the AIA URL explicitly identifies the exact 
> location of the appropriate CA certificate file, relieving the 
> validation software from complex information
> queries. If just location of explicit certificate files are identified
> through AIA, the presence of an AIA may not help finding the CRL signer
> cert
> if this is different from the CA certificate. This is also the problem
> with
> Denis proposal.
> 
> I think we share the basic conclusion that the ability to locate the 
> CRL signer certificate directly through the CRL could be very useful. 
> At least in the case of indirect CRL but it could also be proven very 
> useful in CA re-keying scenarios.
> 
> The easiest solution would probably be to allow AIA to be used in its 
> current shape and structure as a CRL extension (MUST NOT be critical). 
> It would present a very clear and uncomplicated logic to certificate 
> validating applications in many cases.
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> ________________________________________
> From: David A. Cooper [mailto:[email-masked]]
> Sent: den 7 oktober 2004 18:35
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> I think what you are proposing is a good idea.  In most cases, path 
> discovery algorithms assume that both the trust anchor (or trust 
> anchors) and the end entity certificate are provided as input.  In 
> this case, one may need to construct a certification path without a 
> priori access to the end entity certificate (the one with the subject 
> public key corresponding to the
> CRL signing key).  Including an AIA extension (or some other pointer) in
> the
> CRL would provide the relying party with a simple way to obtain the end
> entity certificate for the CRL signing key's certification path. On the
> other hand, I believe that a relying party should be able to construct the
> certification path even without an AIA extension in the CRL, so long as it
> is not an indirect CRL.  Attached is a drawing of the three basic
> scenarios
> that I expect a relying party may encounter:
> 
> In each of these scenarios, the CA has performed key rollover and is 
> only signing CRLs with its new key.  The diagrams would look similar, 
> however, if the CA simply choose to use different keys to sign 
> certificates and CRLs for
> some other reason.
> 
> If the PKI architecture resembled figure 1, then the certification 
> path for the CRL signing key would just be a subset of the 
> certification path for the
> EE certificate, so no addition path discovery would be needed.
> 
> If the PKI architecture resembled figure 1, then it would be necessary 
> to obtain the new-signed-with-old self-issued certificate.  In 
> building the certification path to the EE certificate, however, the 
> relying party will obtain the certificates pointed to by the AIA 
> extension in the EE certificate.  This AIA extension will point to a 
> location containing all certificates issued to CA 2, which would 
> include both the certificate issued by the Root to CA 2 and CA 2's 
> self-issued certificate.  So, even though the
> self-issued certificate would not be part of the certification path to the
> EE certificate, it would be downloaded by the relying party during the
> construction of that certification path.  (Yes, there are circular
> dependency issues in figure 2, but that is another issue.)
> 
> A similar situation would happen if the PKI architecture resembled 
> figure 3.  The AIA extension in the EE certificate would point to a 
> location containing certificates issued to CA 3.  When the relying 
> party downloaded these certificates, it would obtain both of the 
> certificates issued by the Root to CA 3 and so again would have the 
> certificate needed to validate the CRL signing key.
> 
> In the case of an indirect CRL, things may not work as well.  If 
> indirect CRLs were used, and the PKI architecture resembled figures 2 
> or 3 (replacing "New Key" with a different CA), then the set of 
> certificates pointed to by the AIA extension in the EE certificate 
> would not include the certificate of
> the CRL signer.  One could find this certificate by building in the
> reverse
> direction and using the SIA extension, but that may not be the most
> convenient solution.
> 
> So, when indirect CRLs are being used, it seems that it would be very 
> useful to have a pointer in the CRL to the CRL signing certificate.  
> When the CRL is not indirect, the need for this pointer does not seem 
> to be as clear, but
> I can't see any harm in including it.
> 
> Dave
> 
> Stefan Santesson wrote:
> All,
> 
> I'm interested in the opinion from members on this list about 
> discovery of CRL signer's certificate in non directory centric 
> environments.
> 
> The problem is the following.
> 
> The relying party (RP) needs to check validity of a certificate and 
> finds a CDP extension with a URL to the CRL. The RP retrieves this CRL 
> which in this
> particular case is either signed by another key of the CA (re-keyed CA) or
> another entity (indirect CRL).
> 
> In this case the relying party needs to obtain the certificate of the 
> CRL signer which may NOT be part of the original chain. In a directory 
> centric solution this is retrieved from the directory, but what if 
> such directory is not available or accessible.
> 
> The RP have thus no hint where to find the CRL issuers certificate 
> unless the RP already have possession of it by some other means.
> 
> Is seems that CRLs would need an AIA extension with the option to 
> point to the location of the signers certificate in the same manner as 
> is possible for certificates.
> 
> Maybe AIA should be defined as both cert and CRL extension and not 
> only certificate extension as today.
> 
> Thoughts and comments?
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> 

Date: Wed, 13 Oct 2004 09:59:57 -0400
From: "David A. Cooper" <[email-masked]>
CC: pkix <[email-masked]>
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

This is a multi-part message in MIME format.
--------------000200090809000605060109
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

Stefan Santesson wrote:

>Re-sending since original html mail was too long with pictures from David Cooper.
>  
>

All,

It seems that my previous messages to the PKIX list have been rejected 
by the list server.  Stefan has successfully forwarded my messages to 
the list, but without the accompanying image.  I have attached a copy of 
the image to this message in one last attempt to provide it to the list.

Dave

--------------000200090809000605060109
Content-Type: application/pdf;
 name="CRLsign.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="CRLsign.pdf"

--------------000200090809000605060109--

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 14:44:32 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Santosh Chokhani" <[email-masked]>, "pkix" <[email-masked]>
Sender: [email-masked]

Santosh,

I conclude that we are in complete and total agreement.
The question is how to go about this.

Could we do this amendment to RFC 3280 in its next revision?
It would hopefully just be a minor change.

It would not change the definition of AIA just add that it can be used also as CRL extension and list eventual restrictions and guidance for use with CRLs.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
> On Behalf Of Santosh Chokhani
> Sent: den 13 oktober 2004 04:33
> To: 'pkix'
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> Stefan:
> 
> In terms of certificate discovery, your proposal for AIA in CRL is more
> robust.  The whole idea of self-issued key rollover certificates and then
> using the new key to issue CRL is fraught with security problems.  A
> secure
> solution would be one where the new key is certified by the parent CA.  In
> that case to obtain the new certificate, you could use AIA in CRL.
> 
> As to indirect CRL, your proposal is a good one.  The CRL DP in
> certificate
> in question points to the indirect CRL.  You get that CRL.  The AIA in CRL
> gets you started for the indirect CRL issuer certification path and you
> are
> in business.
> 
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
> On
> Behalf Of Stefan Santesson
> Sent: Tuesday, October 12, 2004 7:30 PM
> To: David A. Cooper
> Cc: pkix
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> 
> David,
> 
> Thanks for the clarifications, they make sense.
> I did misread your pictures.
> 
> So can we conclude that for a re-keyed CA in accordance with RFC 3280,
> either the CRL issuer certificate itself, or the location of the CRL
> issuer
> certificate, will be clearly identified/available for the validating party
> in some cases, but not in others?
> 
> Can we also conclude that there is no real discovery solution for indirect
> CRLs?
> 
> Do you then agree then that it could be appropriate to allow AIA as a CRL
> extension to facilitate discovery of CRL signer certificate?
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> ________________________________________
> From: David A. Cooper [mailto:[email-masked]]
> Sent: den 12 oktober 2004 21:14
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> I believe that you are misinterpreting the figures.  They really do
> represent three different cases, not three different certification paths
> that have been constructed through the same PKI architecture.
> 
> In figure 1, CA 1 has generated self-issued key rollover certificates.
> The
> Root CA has issued a certificate to CA 1's new key, but not its old key
> (either the Root CA never issued a certificate to CA 1's old key or that
> certificate has expired).
> 
> In figure 2, CA 2 has also generated self-issued key rollover
> certificates.
> The Root CA has issued a certificate to CA 2's old key, but not its new
> key.
> 
> In figure 3, when CA 3 performed key rollover, it requested a new CA
> certificate from the Root CA.  CA 3 did not generated self-issued key
> rollover certificates.
> 
> Of course, another realistic scenario would be one in which a CA generated
> self-issued key rollover certificates upon key rollover and then had the
> Root CA issue a CA certificate to its new key.  In this case, as you
> suggest, any of the certification paths from figures 1, 2, or 3 could be
> constructed.
> 
> As for the contents of the AIA extension, here is what I have specified in
> the "X.509 Certificate and CRL Extensions Profile for the Common Policy":
> 
> The authorityInfoAccess extension uses URIs for two purposes. When the
> id-ad-caIssuers access method is used, the access location specifies where
> certificates issued to the issuer of the certificate may be found. If LDAP
> is used, the URI must include the DN of the entry containing the relevant
> certificates and specify the directory attribute in which the certificates
> are located. If the directory in which the certificates are stored expects
> the "binary" option to be specified, then the attribute type must be
> followed by ";binary" in the URI. If HTTP is used, the URI must point to a
> file that has an extension of ".p7c" that contains a certs-only CMS
> message
> (see RFC 2633). The CMS message should include all certificates issued to
> the issuer of this certificate, but must at least contain all certificates
> issued to the issuer of this certificate in which the subject public key
> may
> be used to verify the signature on this certificate. .... For a
> certificate
> issued by "Good CA", some examples of URIs that may appear as the access
> location in an authorityInfoAccess extension when the id-ad-caIssuers
> access
> method is used are:
> ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertifica
> te
> ,crossCertificatePair
> ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate;b
> in
> ary,crossCertificatePair;binary
> http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedToGo
> od
> CA.p7c
> For both LDAP and HTTP, the URI provides the exact location where
> information is to be located, so there is no requirement for the relying
> party to try to figure out where information is located.
> 
> The HTTP URI points to a certs-only CMS message that includes all
> certificates issued to the CA identified in the issuer field of the
> certificate.
> 
> The LDAP URI points to the cACertificate and crossCertificatePair
> attributes
> of the directory entry of the CA identified in the issuer field of the
> certificate.  These two attributes together hold all of the certificates
> issued to the CA:  the cACertificate attribute holds the CA's self-issued
> certificates and the crossCertificatePair attribute holds the
> cross-certificates issued to the CA by other CAs.
> 
> Dave
> 
> 
> Stefan Santesson wrote:
> 
> David,
> 
> Thanks for these good thoughts and very useful scenarios.
> 
> I have some comments and questions on this.
> 
> First of all we can conclude that in some scenarios (figure 1) where a
> self
> issued certificate is inserted into the path, you are likely to find the
> CRL
> issuer cert in the path. (given that the new CA have a common key and
> certificate for cert signing and CRL signing).
> 
> Figure 1, 2 and 3 describe the same case. It is just describing different
> path building strategies. An application that has access locally to all
> chaining options may however still choose path 2 for the certs and path 1
> for the CRL independent of each other (which I think figure 3 tries to
> describe)
> 
> Another comment is the structure of AIA extensions. The use I'm familiar
> with doesn't use AIA to describe a directory entry where it is left to the
> validation application logic to be intelligent enough to find appropriate
> certificate data from the directory. The model I'm familiar with is when
> the
> AIA URL explicitly identifies the exact location of the appropriate CA
> certificate file, relieving the validation software from complex
> information
> queries. If just location of explicit certificate files are identified
> through AIA, the presence of an AIA may not help finding the CRL signer
> cert
> if this is different from the CA certificate. This is also the problem
> with
> Denis proposal.
> 
> I think we share the basic conclusion that the ability to locate the CRL
> signer certificate directly through the CRL could be very useful. At least
> in the case of indirect CRL but it could also be proven very useful in CA
> re-keying scenarios.
> 
> The easiest solution would probably be to allow AIA to be used in its
> current shape and structure as a CRL extension (MUST NOT be critical). It
> would present a very clear and uncomplicated logic to certificate
> validating
> applications in many cases.
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> ________________________________________
> From: David A. Cooper [mailto:[email-masked]]
> Sent: den 7 oktober 2004 18:35
> To: Stefan Santesson
> Cc: pkix
> Subject: Re: Signer certificate discovery for CRLs
> 
> Stefan,
> 
> I think what you are proposing is a good idea.  In most cases, path
> discovery algorithms assume that both the trust anchor (or trust anchors)
> and the end entity certificate are provided as input.  In this case, one
> may
> need to construct a certification path without a priori access to the end
> entity certificate (the one with the subject public key corresponding to
> the
> CRL signing key).  Including an AIA extension (or some other pointer) in
> the
> CRL would provide the relying party with a simple way to obtain the end
> entity certificate for the CRL signing key's certification path. On the
> other hand, I believe that a relying party should be able to construct the
> certification path even without an AIA extension in the CRL, so long as it
> is not an indirect CRL.  Attached is a drawing of the three basic
> scenarios
> that I expect a relying party may encounter:
> 
> In each of these scenarios, the CA has performed key rollover and is only
> signing CRLs with its new key.  The diagrams would look similar, however,
> if
> the CA simply choose to use different keys to sign certificates and CRLs
> for
> some other reason.
> 
> If the PKI architecture resembled figure 1, then the certification path
> for
> the CRL signing key would just be a subset of the certification path for
> the
> EE certificate, so no addition path discovery would be needed.
> 
> If the PKI architecture resembled figure 1, then it would be necessary to
> obtain the new-signed-with-old self-issued certificate.  In building the
> certification path to the EE certificate, however, the relying party will
> obtain the certificates pointed to by the AIA extension in the EE
> certificate.  This AIA extension will point to a location containing all
> certificates issued to CA 2, which would include both the certificate
> issued
> by the Root to CA 2 and CA 2's self-issued certificate.  So, even though
> the
> self-issued certificate would not be part of the certification path to the
> EE certificate, it would be downloaded by the relying party during the
> construction of that certification path.  (Yes, there are circular
> dependency issues in figure 2, but that is another issue.)
> 
> A similar situation would happen if the PKI architecture resembled figure
> 3.  The AIA extension in the EE certificate would point to a location
> containing certificates issued to CA 3.  When the relying party downloaded
> these certificates, it would obtain both of the certificates issued by the
> Root to CA 3 and so again would have the certificate needed to validate
> the
> CRL signing key.
> 
> In the case of an indirect CRL, things may not work as well.  If indirect
> CRLs were used, and the PKI architecture resembled figures 2 or 3
> (replacing
> "New Key" with a different CA), then the set of certificates pointed to by
> the AIA extension in the EE certificate would not include the certificate
> of
> the CRL signer.  One could find this certificate by building in the
> reverse
> direction and using the SIA extension, but that may not be the most
> convenient solution.
> 
> So, when indirect CRLs are being used, it seems that it would be very
> useful
> to have a pointer in the CRL to the CRL signing certificate.  When the CRL
> is not indirect, the need for this pointer does not seem to be as clear,
> but
> I can't see any harm in including it.
> 
> Dave
> 
> Stefan Santesson wrote:
> All,
> 
> I'm interested in the opinion from members on this list about discovery of
> CRL signer's certificate in non directory centric environments.
> 
> The problem is the following.
> 
> The relying party (RP) needs to check validity of a certificate and finds
> a
> CDP extension with a URL to the CRL. The RP retrieves this CRL which in
> this
> particular case is either signed by another key of the CA (re-keyed CA) or
> another entity (indirect CRL).
> 
> In this case the relying party needs to obtain the certificate of the CRL
> signer which may NOT be part of the original chain. In a directory centric
> solution this is retrieved from the directory, but what if such directory
> is
> not available or accessible.
> 
> The RP have thus no hint where to find the CRL issuers certificate unless
> the RP already have possession of it by some other means.
> 
> Is seems that CRLs would need an AIA extension with the option to point to
> the location of the signers certificate in the same manner as is possible
> for certificates.
> 
> Maybe AIA should be defined as both cert and CRL extension and not only
> certificate extension as today.
> 
> Thoughts and comments?
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
> 
> 

From: "Santosh Chokhani" <[email-masked]>
To: "'pkix'" <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Tue, 12 Oct 2004 22:32:36 -0400
Importance: Normal
Sender: [email-masked]

Stefan:

In terms of certificate discovery, your proposal for AIA in CRL is more
robust.  The whole idea of self-issued key rollover certificates and then
using the new key to issue CRL is fraught with security problems.  A secure
solution would be one where the new key is certified by the parent CA.  In
that case to obtain the new certificate, you could use AIA in CRL.

As to indirect CRL, your proposal is a good one.  The CRL DP in certificate
in question points to the indirect CRL.  You get that CRL.  The AIA in CRL
gets you started for the indirect CRL issuer certification path and you are
in business. 

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Stefan Santesson
Sent: Tuesday, October 12, 2004 7:30 PM
To: David A. Cooper
Cc: pkix
Subject: RE: Signer certificate discovery for CRLs

David,

Thanks for the clarifications, they make sense.
I did misread your pictures.

So can we conclude that for a re-keyed CA in accordance with RFC 3280,
either the CRL issuer certificate itself, or the location of the CRL issuer
certificate, will be clearly identified/available for the validating party
in some cases, but not in others?

Can we also conclude that there is no real discovery solution for indirect
CRLs?

Do you then agree then that it could be appropriate to allow AIA as a CRL
extension to facilitate discovery of CRL signer certificate?

Stefan Santesson 
Microsoft Security Center of Excellence (SCOE) 
  
________________________________________
From: David A. Cooper [mailto:[email-masked]] 
Sent: den 12 oktober 2004 21:14
To: Stefan Santesson
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs

Stefan,

I believe that you are misinterpreting the figures.  They really do
represent three different cases, not three different certification paths
that have been constructed through the same PKI architecture.

In figure 1, CA 1 has generated self-issued key rollover certificates.  The
Root CA has issued a certificate to CA 1's new key, but not its old key
(either the Root CA never issued a certificate to CA 1's old key or that
certificate has expired).

In figure 2, CA 2 has also generated self-issued key rollover certificates. 
The Root CA has issued a certificate to CA 2's old key, but not its new key.

In figure 3, when CA 3 performed key rollover, it requested a new CA
certificate from the Root CA.  CA 3 did not generated self-issued key
rollover certificates.

Of course, another realistic scenario would be one in which a CA generated
self-issued key rollover certificates upon key rollover and then had the
Root CA issue a CA certificate to its new key.  In this case, as you
suggest, any of the certification paths from figures 1, 2, or 3 could be
constructed.

As for the contents of the AIA extension, here is what I have specified in
the "X.509 Certificate and CRL Extensions Profile for the Common Policy":

The authorityInfoAccess extension uses URIs for two purposes. When the
id-ad-caIssuers access method is used, the access location specifies where
certificates issued to the issuer of the certificate may be found. If LDAP
is used, the URI must include the DN of the entry containing the relevant
certificates and specify the directory attribute in which the certificates
are located. If the directory in which the certificates are stored expects
the "binary" option to be specified, then the attribute type must be
followed by ";binary" in the URI. If HTTP is used, the URI must point to a
file that has an extension of ".p7c" that contains a certs-only CMS message
(see RFC 2633). The CMS message should include all certificates issued to
the issuer of this certificate, but must at least contain all certificates
issued to the issuer of this certificate in which the subject public key may
be used to verify the signature on this certificate. .... For a certificate
issued by "Good CA", some examples of URIs that may appear as the access
location in an authorityInfoAccess extension when the id-ad-caIssuers access
method is used are: 
ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate
,crossCertificatePair
ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate;bin
ary,crossCertificatePair;binary
http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedToGood
CA.p7c
For both LDAP and HTTP, the URI provides the exact location where
information is to be located, so there is no requirement for the relying
party to try to figure out where information is located.

The HTTP URI points to a certs-only CMS message that includes all
certificates issued to the CA identified in the issuer field of the
certificate.

The LDAP URI points to the cACertificate and crossCertificatePair attributes
of the directory entry of the CA identified in the issuer field of the
certificate.  These two attributes together hold all of the certificates
issued to the CA:  the cACertificate attribute holds the CA's self-issued
certificates and the crossCertificatePair attribute holds the
cross-certificates issued to the CA by other CAs.

Dave

Stefan Santesson wrote:

David,
 
Thanks for these good thoughts and very useful scenarios.
 
I have some comments and questions on this.
 
First of all we can conclude that in some scenarios (figure 1) where a self
issued certificate is inserted into the path, you are likely to find the CRL
issuer cert in the path. (given that the new CA have a common key and
certificate for cert signing and CRL signing).
 
Figure 1, 2 and 3 describe the same case. It is just describing different
path building strategies. An application that has access locally to all
chaining options may however still choose path 2 for the certs and path 1
for the CRL independent of each other (which I think figure 3 tries to
describe)
 
Another comment is the structure of AIA extensions. The use I'm familiar
with doesn't use AIA to describe a directory entry where it is left to the
validation application logic to be intelligent enough to find appropriate
certificate data from the directory. The model I'm familiar with is when the
AIA URL explicitly identifies the exact location of the appropriate CA
certificate file, relieving the validation software from complex information
queries. If just location of explicit certificate files are identified
through AIA, the presence of an AIA may not help finding the CRL signer cert
if this is different from the CA certificate. This is also the problem with
Denis proposal.
 
I think we share the basic conclusion that the ability to locate the CRL
signer certificate directly through the CRL could be very useful. At least
in the case of indirect CRL but it could also be proven very useful in CA
re-keying scenarios.
 
The easiest solution would probably be to allow AIA to be used in its
current shape and structure as a CRL extension (MUST NOT be critical). It
would present a very clear and uncomplicated logic to certificate validating
applications in many cases.
 
Stefan Santesson 
Microsoft Security Center of Excellence (SCOE) 
  
________________________________________
From: David A. Cooper [mailto:[email-masked]] 
Sent: den 7 oktober 2004 18:35
To: Stefan Santesson
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs
 
Stefan,

I think what you are proposing is a good idea.  In most cases, path
discovery algorithms assume that both the trust anchor (or trust anchors)
and the end entity certificate are provided as input.  In this case, one may
need to construct a certification path without a priori access to the end
entity certificate (the one with the subject public key corresponding to the
CRL signing key).  Including an AIA extension (or some other pointer) in the
CRL would provide the relying party with a simple way to obtain the end
entity certificate for the CRL signing key's certification path. On the
other hand, I believe that a relying party should be able to construct the
certification path even without an AIA extension in the CRL, so long as it
is not an indirect CRL.  Attached is a drawing of the three basic scenarios
that I expect a relying party may encounter:

In each of these scenarios, the CA has performed key rollover and is only
signing CRLs with its new key.  The diagrams would look similar, however, if
the CA simply choose to use different keys to sign certificates and CRLs for
some other reason.

If the PKI architecture resembled figure 1, then the certification path for
the CRL signing key would just be a subset of the certification path for the
EE certificate, so no addition path discovery would be needed.

If the PKI architecture resembled figure 1, then it would be necessary to
obtain the new-signed-with-old self-issued certificate.  In building the
certification path to the EE certificate, however, the relying party will
obtain the certificates pointed to by the AIA extension in the EE
certificate.  This AIA extension will point to a location containing all
certificates issued to CA 2, which would include both the certificate issued
by the Root to CA 2 and CA 2's self-issued certificate.  So, even though the
self-issued certificate would not be part of the certification path to the
EE certificate, it would be downloaded by the relying party during the
construction of that certification path.  (Yes, there are circular
dependency issues in figure 2, but that is another issue.)

A similar situation would happen if the PKI architecture resembled figure
3.  The AIA extension in the EE certificate would point to a location
containing certificates issued to CA 3.  When the relying party downloaded
these certificates, it would obtain both of the certificates issued by the
Root to CA 3 and so again would have the certificate needed to validate the
CRL signing key.

In the case of an indirect CRL, things may not work as well.  If indirect
CRLs were used, and the PKI architecture resembled figures 2 or 3 (replacing
"New Key" with a different CA), then the set of certificates pointed to by
the AIA extension in the EE certificate would not include the certificate of
the CRL signer.  One could find this certificate by building in the reverse
direction and using the SIA extension, but that may not be the most
convenient solution.

So, when indirect CRLs are being used, it seems that it would be very useful
to have a pointer in the CRL to the CRL signing certificate.  When the CRL
is not indirect, the need for this pointer does not seem to be as clear, but
I can't see any harm in including it.

Dave

Stefan Santesson wrote:
All,
 
I'm interested in the opinion from members on this list about discovery of
CRL signer's certificate in non directory centric environments.
 
The problem is the following.
 
The relying party (RP) needs to check validity of a certificate and finds a
CDP extension with a URL to the CRL. The RP retrieves this CRL which in this
particular case is either signed by another key of the CA (re-keyed CA) or
another entity (indirect CRL).
 
In this case the relying party needs to obtain the certificate of the CRL
signer which may NOT be part of the original chain. In a directory centric
solution this is retrieved from the directory, but what if such directory is
not available or accessible.
 
The RP have thus no hint where to find the CRL issuers certificate unless
the RP already have possession of it by some other means.
 
Is seems that CRLs would need an AIA extension with the option to point to
the location of the signers certificate in the same manner as is possible
for certificates.
 
Maybe AIA should be defined as both cert and CRL extension and not only
certificate extension as today.
 
Thoughts and comments?
 
Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 01:38:36 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Denis Pinkas" <[email-masked]>
Cc: <[email-masked]>
Sender: [email-masked]

Denis,

I think my reply to David Cooper also cover your mail and need not to be
repeated.

I don't agree to your conclusion. Just because current available methods
(e.g. use of AIA in certificates) may provide sufficient functionality
in some cases does not make a good rationale for not applying a better
and simpler solution that actually works in all situations.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Denis Pinkas
> Sent: den 7 oktober 2004 16:42
> To: Stefan Santesson
> Cc: [email-masked]
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> Stefan,
> 
> > All,
> >
> > I'm interested in the opinion from members on this list about
discovery
> > of CRL signer's certificate in non directory centric environments.
> >
> > The problem is the following.
> >
> > The relying party (RP) needs to check validity of a certificate and
> > finds a CDP extension with a URL to the CRL.
> 
> > The RP retrieves this CRL which in this particular case is either
signed
> > by another key of the CA (re-keyed CA) or another entity (indirect
CRL).
> 
> > In this case the relying party needs to obtain the certificate of
the
> > CRL signer which may NOT be part of the original chain.
> 
> You mean: "In these cases ..." since there are two cases.  :-)
> 
>  > In a directory
> > centric solution this is retrieved from the directory, but what if
such
> > directory is not available or accessible.
> >
> > The RP have thus no hint where to find the CRL issuers certificate
> > unless the RP already have possession of it by some other means.
> >
> > Is seems that CRLs would need an AIA extension with the option to
point
> > to the location of the signers certificate in the same manner as is
> > possible for certificates.
> >
> > Maybe AIA should be defined as both cert and CRL extension and not
only
> > certificate extension as today.
> 
> I suppose that a candidate certification path has been successfully
built,
> but not yet validated as far as certificate revocation status is
> concerned.
> 
> In the first case (re-keyed CA), there may be multiple sub-cases, so
you
> would have to be more specific to explain the scenario you have in
mind.
> 
> In the second case (indirect CRL, no re-keyed CA), let us use a simple
> example.
> 
> A chain of certificates has been built with:
> leaf certificate / CA Cert 1 / CA Cert 2 / ...
> 
> In the chain of certificates, if CA Cert 1 (issued by CA 2) includes
an
> AIA
> extension with an AccessDescription id-ad-caIssuers, then the location
of
> a
> repository that may contain CRL issuer certificates may be known: if
CA 2
> postes the certificate designating the CRL issuer in that repository,
then
> the problem is solved.
> 
> " [FROM RFC 3280] The accessLocation field specifies the location of
the
> information. The retrieval mechanism may be implied by the
accessMethod or
> specified by accessLocation. When id-ad-caIssuers appears as
accessMethod,
> the accessLocation field describes the referenced description server
and
> the
> access protocol to obtain the referenced description."
> 
> In the chain of certificates, if CA Cert 2 (issued by CA 3) includes
an
> Subject Information Access (SIA) extension with an AccessDescription
> id-ad-caRepository, then the location of a repository that may contain
CRL
> issuer certificates may be known: if CA 2 postes the certificate
> designating
> the CRL issuer in that repository, then the problem is also solved.
> 
> Even if these extensions are scarcely (not yet ?) used for that
purpose,
> I do not think it would be desirable to introduce a third way.
> 
> Denis
> 
> 
> 
> > Thoughts and comments?
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 01:33:13 +0100
From: "Stefan Santesson" <[email-masked]>
To: "Santosh Chokhani" <[email-masked]>, <[email-masked]>
Sender: [email-masked]

Santosh,

It seams that we are in agreement regarding AIA in CRLs.

I agree that crypto binding between certificate issuer and CRL is a
useful and important feature for the purpose you mention. Just applying
name matching seems a bit week and could in worst case increase the
vulnerability for attacks thanks to poor implementations or miss
configuration errors.

It would actually be easier to process than path comparison rules but
have the drawback of introducing a new extension. Let's consider that
closer.

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On Behalf Of Santosh Chokhani
> Sent: den 7 oktober 2004 18:44
> To: [email-masked]
> Subject: RE: Signer certificate discovery for CRLs
> 
> 
> Stefan and Denis:
> 
> I have reviewed Denis's examples.  They do not seem clear to me.  But,
for
> both re-key and indirect case (there are several such as assigning a
sub
> CA
> or another CA in the PKI domain that is not in any certificate's
> certification path), what Stefan has suggested for CRL is a good idea.
> 
> I assume that we all realize that having an AIA is not crypto binding.
> 
> Separately, while preparing for PKIX, I have had this idea for crypto
> binding the certificate signer and CRL signer.  This could be in lieu
of
> certification path matching algorithm.  A CRL can contain a
non-critical
> extension which is a SEQUENCE or SET of key identifier (formed using
hash
> scheme recommended by 3280) of the CAs' certificate signing keys.  A
key
> identifier is included if the certificate signed using that key can be
> included in that CRL.  Now, the relying party only needs to match the
AKID
> of the certificate with one of the values in this extension.
> 
> Please note that this check is a substitute for path matching.  IDP
> discipline must still be observed in order to maintain security.
> 
> -----Original Message-----
> From: [email-masked]
[mailto:[email-masked]]
> On
> Behalf Of Denis Pinkas
> Sent: Thursday, October 07, 2004 10:42 AM
> To: Stefan Santesson
> Cc: [email-masked]
> Subject: Re: Signer certificate discovery for CRLs
> 
> 
> 
> Stefan,
> 
> > All,
> >
> > I'm interested in the opinion from members on this list about
> > discovery of CRL signer's certificate in non directory centric
> > environments.
> >
> > The problem is the following.
> >
> > The relying party (RP) needs to check validity of a certificate and
> > finds a CDP extension with a URL to the CRL.
> 
> > The RP retrieves this CRL which in this particular case is either
> > signed by another key of the CA (re-keyed CA) or another entity
> > (indirect CRL).
> 
> > In this case the relying party needs to obtain the certificate of
the
> > CRL signer which may NOT be part of the original chain.
> 
> You mean: "In these cases ..." since there are two cases.  :-)
> 
>  > In a directory
> > centric solution this is retrieved from the directory, but what if
> > such directory is not available or accessible.
> >
> > The RP have thus no hint where to find the CRL issuers certificate
> > unless the RP already have possession of it by some other means.
> >
> > Is seems that CRLs would need an AIA extension with the option to
> > point to the location of the signers certificate in the same manner
as
> > is possible for certificates.
> >
> > Maybe AIA should be defined as both cert and CRL extension and not
> > only certificate extension as today.
> 
> I suppose that a candidate certification path has been successfully
built,
> but not yet validated as far as certificate revocation status is
> concerned.
> 
> In the first case (re-keyed CA), there may be multiple sub-cases, so
you
> would have to be more specific to explain the scenario you have in
mind.
> 
> In the second case (indirect CRL, no re-keyed CA), let us use a simple
> example.
> 
> A chain of certificates has been built with:
> leaf certificate / CA Cert 1 / CA Cert 2 / ...
> 
> In the chain of certificates, if CA Cert 1 (issued by CA 2) includes
an
> AIA
> extension with an AccessDescription id-ad-caIssuers, then the location
of
> a
> repository that may contain CRL issuer certificates may be known: if
CA 2
> postes the certificate designating the CRL issuer in that repository,
then
> the problem is solved.
> 
> " [FROM RFC 3280] The accessLocation field specifies the location of
the
> information. The retrieval mechanism may be implied by the
accessMethod or
> specified by accessLocation. When id-ad-caIssuers appears as
accessMethod,
> the accessLocation field describes the referenced description server
and
> the
> 
> access protocol to obtain the referenced description."
> 
> In the chain of certificates, if CA Cert 2 (issued by CA 3) includes
an
> Subject Information Access (SIA) extension with an AccessDescription
> id-ad-caRepository, then the location of a repository that may contain
CRL
> issuer certificates may be known: if CA 2 postes the certificate
> designating
> 
> the CRL issuer in that repository, then the problem is also solved.
> 
> Even if these extensions are scarcely (not yet ?) used for that
purpose, I
> do not think it would be desirable to introduce a third way.
> 
> Denis
> 
> 
> 
> > Thoughts and comments?
> >
> > Stefan Santesson
> > Microsoft Security Center of Excellence (SCOE)
> >
> >
> >
> 
> 

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 00:29:46 +0100
From: "Stefan Santesson" <[email-masked]>
To: "David A. Cooper" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

David,

Thanks for the clarifications, they make sense.
I did misread your pictures.

So can we conclude that for a re-keyed CA in accordance with RFC 3280, either the CRL issuer certificate itself, or the location of the CRL issuer certificate, will be clearly identified/available for the validating party in some cases, but not in others?

Can we also conclude that there is no real discovery solution for indirect CRLs?

Do you then agree then that it could be appropriate to allow AIA as a CRL extension to facilitate discovery of CRL signer certificate?

Stefan Santesson 
Microsoft Security Center of Excellence (SCOE) 
  
________________________________________
From: David A. Cooper [mailto:[email-masked]] 
Sent: den 12 oktober 2004 21:14
To: Stefan Santesson
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs

Stefan,

I believe that you are misinterpreting the figures.  They really do represent three different cases, not three different certification paths that have been constructed through the same PKI architecture.

In figure 1, CA 1 has generated self-issued key rollover certificates.  The Root CA has issued a certificate to CA 1's new key, but not its old key (either the Root CA never issued a certificate to CA 1's old key or that certificate has expired).

In figure 2, CA 2 has also generated self-issued key rollover certificates.  The Root CA has issued a certificate to CA 2's old key, but not its new key.

In figure 3, when CA 3 performed key rollover, it requested a new CA certificate from the Root CA.  CA 3 did not generated self-issued key rollover certificates.

Of course, another realistic scenario would be one in which a CA generated self-issued key rollover certificates upon key rollover and then had the Root CA issue a CA certificate to its new key.  In this case, as you suggest, any of the certification paths from figures 1, 2, or 3 could be constructed.

As for the contents of the AIA extension, here is what I have specified in the "X.509 Certificate and CRL Extensions Profile for the Common Policy":

The authorityInfoAccess extension uses URIs for two purposes. When the id-ad-caIssuers access method is used, the access location specifies where certificates issued to the issuer of the certificate may be found. If LDAP is used, the URI must include the DN of the entry containing the relevant certificates and specify the directory attribute in which the certificates are located. If the directory in which the certificates are stored expects the "binary" option to be specified, then the attribute type must be followed by ";binary" in the URI. If HTTP is used, the URI must point to a file that has an extension of ".p7c" that contains a certs-only CMS message (see RFC 2633). The CMS message should include all certificates issued to the issuer of this certificate, but must at least contain all certificates issued to the issuer of this certificate in which the subject public key may be used to verify the signature on this certificate.
....
For a certificate issued by "Good CA", some examples of URIs that may appear as the access location in an authorityInfoAccess extension when the id-ad-caIssuers access method is used are: 
ldap://smime2.nist.gov/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate,crossCertificatePair
ldap://129.6.20.71/cn=Good%20CA,o=Test%20Certificates,c=US?cACertificate;binary,crossCertificatePair;binary
http://fictitious.nist.gov/fictitiousCertsOnlyCMSdirectory/certsIssuedToGoodCA.p7c
For both LDAP and HTTP, the URI provides the exact location where information is to be located, so there is no requirement for the relying party to try to figure out where information is located.

The HTTP URI points to a certs-only CMS message that includes all certificates issued to the CA identified in the issuer field of the certificate.

The LDAP URI points to the cACertificate and crossCertificatePair attributes of the directory entry of the CA identified in the issuer field of the certificate.  These two attributes together hold all of the certificates issued to the CA:  the cACertificate attribute holds the CA's self-issued certificates and the crossCertificatePair attribute holds the cross-certificates issued to the CA by other CAs.

Dave

Stefan Santesson wrote:

David,
 
Thanks for these good thoughts and very useful scenarios.
 
I have some comments and questions on this.
 
First of all we can conclude that in some scenarios (figure 1) where a self issued certificate is inserted into the path, you are likely to find the CRL issuer cert in the path. (given that the new CA have a common key and certificate for cert signing and CRL signing).
 
Figure 1, 2 and 3 describe the same case. It is just describing different path building strategies. An application that has access locally to all chaining options may however still choose path 2 for the certs and path 1 for the CRL independent of each other (which I think figure 3 tries to describe)
 
Another comment is the structure of AIA extensions. The use I'm familiar with doesn't use AIA to describe a directory entry where it is left to the validation application logic to be intelligent enough to find appropriate certificate data from the directory. The model I'm familiar with is when the AIA URL explicitly identifies the exact location of the appropriate CA certificate file, relieving the validation software from complex information queries.
If just location of explicit certificate files are identified through AIA, the presence of an AIA may not help finding the CRL signer cert if this is different from the CA certificate.
This is also the problem with Denis proposal.
 
I think we share the basic conclusion that the ability to locate the CRL signer certificate directly through the CRL could be very useful. At least in the case of indirect CRL but it could also be proven very useful in CA re-keying scenarios.
 
The easiest solution would probably be to allow AIA to be used in its current shape and structure as a CRL extension (MUST NOT be critical).
It would present a very clear and uncomplicated logic to certificate validating applications in many cases.
 
Stefan Santesson 
Microsoft Security Center of Excellence (SCOE) 
  
________________________________________
From: David A. Cooper [mailto:[email-masked]] 
Sent: den 7 oktober 2004 18:35
To: Stefan Santesson
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs
 
Stefan,

I think what you are proposing is a good idea.  In most cases, path discovery algorithms assume that both the trust anchor (or trust anchors) and the end entity certificate are provided as input.  In this case, one may need to construct a certification path without a priori access to the end entity certificate (the one with the subject public key corresponding to the CRL signing key).  Including an AIA extension (or some other pointer) in the CRL would provide the relying party with a simple way to obtain the end entity certificate for the CRL signing key's certification path.
On the other hand, I believe that a relying party should be able to construct the certification path even without an AIA extension in the CRL, so long as it is not an indirect CRL.  Attached is a drawing of the three basic scenarios that I expect a relying party may encounter:

In each of these scenarios, the CA has performed key rollover and is only signing CRLs with its new key.  The diagrams would look similar, however, if the CA simply choose to use different keys to sign certificates and CRLs for some other reason.

If the PKI architecture resembled figure 1, then the certification path for the CRL signing key would just be a subset of the certification path for the EE certificate, so no addition path discovery would be needed.

If the PKI architecture resembled figure 1, then it would be necessary to obtain the new-signed-with-old self-issued certificate.  In building the certification path to the EE certificate, however, the relying party will obtain the certificates pointed to by the AIA extension in the EE certificate.  This AIA extension will point to a location containing all certificates issued to CA 2, which would include both the certificate issued by the Root to CA 2 and CA 2's self-issued certificate.  So, even though the self-issued certificate would not be part of the certification path to the EE certificate, it would be downloaded by the relying party during the construction of that certification path.  (Yes, there are circular dependency issues in figure 2, but that is another issue.)

A similar situation would happen if the PKI architecture resembled figure 3.  The AIA extension in the EE certificate would point to a location containing certificates issued to CA 3.  When the relying party downloaded these certificates, it would obtain both of the certificates issued by the Root to CA 3 and so again would have the certificate needed to validate the CRL signing key.

In the case of an indirect CRL, things may not work as well.  If indirect CRLs were used, and the PKI architecture resembled figures 2 or 3 (replacing "New Key" with a different CA), then the set of certificates pointed to by the AIA extension in the EE certificate would not include the certificate of the CRL signer.  One could find this certificate by building in the reverse direction and using the SIA extension, but that may not be the most convenient solution.

So, when indirect CRLs are being used, it seems that it would be very useful to have a pointer in the CRL to the CRL signing certificate.  When the CRL is not indirect, the need for this pointer does not seem to be as clear, but I can't see any harm in including it.

Dave

Stefan Santesson wrote:
All,
 
I'm interested in the opinion from members on this list about discovery
of CRL signer's certificate in non directory centric environments.
 
The problem is the following.
 
The relying party (RP) needs to check validity of a certificate and
finds a CDP extension with a URL to the CRL.
The RP retrieves this CRL which in this particular case is either signed
by another key of the CA (re-keyed CA) or another entity (indirect CRL).
 
In this case the relying party needs to obtain the certificate of the
CRL signer which may NOT be part of the original chain. In a directory
centric solution this is retrieved from the directory, but what if such
directory is not available or accessible.
 
The RP have thus no hint where to find the CRL issuers certificate
unless the RP already have possession of it by some other means.
 
Is seems that CRLs would need an AIA extension with the option to point
to the location of the signers certificate in the same manner as is
possible for certificates.
 
Maybe AIA should be defined as both cert and CRL extension and not only
certificate extension as today.
 
Thoughts and comments?
 
Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

Content-class: urn:content-classes:message
Subject: RE: Signer certificate discovery for CRLs
Date: Wed, 13 Oct 2004 00:13:01 +0100
From: "Stefan Santesson" <[email-masked]>
To: "David A. Cooper" <[email-masked]>
Cc: "pkix" <[email-masked]>
Sender: [email-masked]

Re-sending since original html mail was too long with pictures from David Cooper.

Stefan Santesson 
Microsoft Security Center of Excellence (SCOE) 
  
________________________________________
From: Stefan Santesson 
Sent: den 12 oktober 2004 16:41
To: 'David A. Cooper'
Cc: pkix
Subject: RE: Signer certificate discovery for CRLs

David,
 
Thanks for these good thoughts and very useful scenarios.
 
I have some comments and questions on this.
 
First of all we can conclude that in some scenarios (figure 1) where a self issued certificate is inserted into the path, you are likely to find the CRL issuer cert in the path. (given that the new CA have a common key and certificate for cert signing and CRL signing).
 
Figure 1, 2 and 3 describe the same case. It is just describing different path building strategies. An application that has access locally to all chaining options may however still choose path 2 for the certs and path 1 for the CRL independent of each other (which I think figure 3 tries to describe)
 
Another comment is the structure of AIA extensions. The use I'm familiar with doesn't use AIA to describe a directory entry where it is left to the validation application logic to be intelligent enough to find appropriate certificate data from the directory. The model I'm familiar with is when the AIA URL explicitly identifies the exact location of the appropriate CA certificate file, relieving the validation software from complex information queries.
If just location of explicit certificate files are identified through AIA, the presence of an AIA may not help finding the CRL signer cert if this is different from the CA certificate.
This is also the problem with Denis proposal.
 
I think we share the basic conclusion that the ability to locate the CRL signer certificate directly through the CRL could be very useful. At least in the case of indirect CRL but it could also be proven very useful in CA re-keying scenarios.
 
The easiest solution would probably be to allow AIA to be used in its current shape and structure as a CRL extension (MUST NOT be critical).
It would present a very clear and uncomplicated logic to certificate validating applications in many cases.
 
Stefan Santesson 
Microsoft Security Center of Excellence (SCOE) 
  
________________________________________
From: David A. Cooper [mailto:[email-masked]] 
Sent: den 7 oktober 2004 18:35
To: Stefan Santesson
Cc: pkix
Subject: Re: Signer certificate discovery for CRLs
 
Stefan,

I think what you are proposing is a good idea.  In most cases, path discovery algorithms assume that both the trust anchor (or trust anchors) and the end entity certificate are provided as input.  In this case, one may need to construct a certification path without a priori access to the end entity certificate (the one with the subject public key corresponding to the CRL signing key).  Including an AIA extension (or some other pointer) in the CRL would provide the relying party with a simple way to obtain the end entity certificate for the CRL signing key's certification path.

On the other hand, I believe that a relying party should be able to construct the certification path even without an AIA extension in the CRL, so long as it is not an indirect CRL.  Below I have drawn the three basic scenarios that I expect a relying party may encounter:

In each of these scenarios, the CA has performed key rollover and is only signing CRLs with its new key.  The diagrams would look similar, however, if the CA simply choose to use different keys to sign certificates and CRLs for some other reason.

If the PKI architecture resembled figure 1, then the certification path for the CRL signing key would just be a subset of the certification path for the EE certificate, so no addition path discovery would be needed.

If the PKI architecture resembled figure 1, then it would be necessary to obtain the new-signed-with-old self-issued certificate.  In building the certification path to the EE certificate, however, the relying party will obtain the certificates pointed to by the AIA extension in the EE certificate.  This AIA extension will point to a location containing all certificates issued to CA 2, which would include both the certificate issued by the Root to CA 2 and CA 2's self-issued certificate.  So, even though the self-issued certificate would not be part of the certification path to the EE certificate, it would be downloaded by the relying party during the construction of that certification path.  (Yes, there are circular dependency issues in figure 2, but that is another issue.)

A similar situation would happen if the PKI architecture resembled figure 3.  The AIA extension in the EE certificate would point to a location containing certificates issued to CA 3.  When the relying party downloaded these certificates, it would obtain both of the certificates issued by the Root to CA 3 and so again would have the certificate needed to validate the CRL signing key.

In the case of an indirect CRL, things may not work as well.  If indirect CRLs were used, and the PKI architecture resembled figures 2 or 3 (replacing "New Key" with a different CA), then the set of certificates pointed to by the AIA extension in the EE certificate would not include the certificate of the CRL signer.  One could find this certificate by building in the reverse direction and using the SIA extension, but that may not be the most convenient solution.

So, when indirect CRLs are being used, it seems that it would be very useful to have a pointer in the CRL to the CRL signing certificate.  When the CRL is not indirect, the need for this pointer does not seem to be as clear, but I can't see any harm in including it.

Dave

Stefan Santesson wrote:
All,
 
I'm interested in the opinion from members on this list about discovery
of CRL signer's certificate in non directory centric environments.
 
The problem is the following.
 
The relying party (RP) needs to check validity of a certificate and
finds a CDP extension with a URL to the CRL.
The RP retrieves this CRL which in this particular case is either signed
by another key of the CA (re-keyed CA) or another entity (indirect CRL).
 
In this case the relying party needs to obtain the certificate of the
CRL signer which may NOT be part of the original chain. In a directory
centric solution this is retrieved from the directory, but what if such
directory is not available or accessible.
 
The RP have thus no hint where to find the CRL issuers certificate
unless the RP already have possession of it by some other means.
 
Is seems that CRLs would need an AIA extension with the option to point
to the location of the signers certificate in the same manner as is
possible for certificates.
 
Maybe AIA should be defined as both cert and CRL extension and not only
certificate extension as today.
 
Thoughts and comments?
 
Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

From: The IESG <[email-masked]>
To: IETF-Announce <[email-masked]>
Cc: Internet Architecture Board <[email-masked]>, RFC Editor <[email-masked]>, pkix mailing list <[email-masked]>, pkix chair <[email-masked]>, pkix  chair <[email-masked]>
Subject: Protocol Action: 'Internet X.509 Public Key Infrastructure  Permanent Identifier' to Proposed Standard 
Date: Mon, 11 Oct 2004 14:18:35 -0400
Sender: [email-masked]

The IESG has approved the following document:

- 'Internet X.509 Public Key Infrastructure Permanent Identifier '
   <draft-ietf-pkix-pi-11.txt> as a Proposed Standard

This document is the product of the Public-Key Infrastructure (X.509) Working 
Group. 

The IESG contact persons are Russ Housley and Steve Bellovin.

Technical Summary

  This document define a new form of name, called permanent identifier,
  that may be included in the subjectAltName extension of an X.509
  version 3 public key certificate.  The permanent identifier is an
  optional feature that may be used by a Certification Authority (CA) to
  indicate that the certificate relates to the same entity even if the
  name or the affiliation of that entity stored in the subject or
  another name form in the subjectAltName extension has changed.  The
  subject name, carried in the subject field, is only unique for each
  subject entity certified by the one CA as identified by the issuer
  name field.  Also, the new name form can carry a name that is unique
  for each subject entity certified by a CA.

Working Group Summary

  The Working Group came to consensus on this document.

Protocol Quality

  This document was reviewed by Jeffrey I. Schiller and Russ Housley
  for the IESG.

From: "Michael Myers" <[email-masked]>
To: "Deacon, Alex" <[email-masked]>, "'Santosh Chokhani'" <[email-masked]>, <[email-masked]>
Subject: RE: New Lightweight OCSP I-D
Date: Fri, 8 Oct 2004 16:50:29 -0700
Importance: Normal
Sender: [email-masked]

Alex, Santosh:

A few thoughts embedded below.

Mike

>-----Original Message-----
>From: Deacon, Alex
>Sent: Tuesday, October 05, 2004
>
> . . .
>
> Moving some of the MUSTs to SHOULDs seems to water down
> what we are trying to accomplish.   

I concur.

> > 1.  Section 1.2.2, sha256WithRSAEncryption should be
> > added to the signature algorithms.

> Although I understand the reasoning behind adding this
> requirement, I think doing so is a little premature and
> would create a situation. Where this draft is no longer
> a strict profile of RFC2560.   I think 2560 has to move
> first on this point.  

My action, subject to chair guidance.

Mike

From: "Deacon, Alex" <[email-masked]>
To: "'Santosh Chokhani'" <[email-masked]>, [email-masked]
Subject: RE: New Lightweight OCSP I-D
Date: Fri, 8 Oct 2004 14:08:49 -0700 
Sender: [email-masked]

Thanks again Santosh,

This gives me a better idea as to your concerns so I will go back and work
on a -01 version with your comments in mind.  Look for a new version
sometime next week.

Alex

> -----Original Message-----
> From: Santosh Chokhani [mailto:[email-masked]] 
> Sent: Tuesday, October 05, 2004 3:01 PM
> To: [email-masked]
> Subject: RE: New Lightweight OCSP I-D
> 
> 
> 
> Alex,
> 
> Thanks for your comments.  See my responses in-line using [SC:]
> 
> -----Original Message-----
> From: Deacon, Alex [mailto:[email-masked]] 
> Sent: Tuesday, October 05, 2004 3:00 PM
> To: 'Santosh Chokhani'; [email-masked]
> Subject: RE: New Lightweight OCSP I-D
> 
> 
> 
> Santosh,
> 
> Thanks for taking the time to review the draft.  Comments in line....
> 
> > -----Original Message-----
> > From: Santosh Chokhani [mailto:[email-masked]]
> > Sent: Monday, October 04, 2004 6:54 AM
> > To: [email-masked]
> > Subject: New Lightweight OCSP I-D
> >
> > I have some concerns regarding the new RFC.  There are several items
> > in the I-D that are good engineering advice, but they go far beyond
> > what should be within the scope of the RFC and should be up to the
> > application and relying party.  These are listed as MUST in the RFC 
> > and should be changed to SHOULD or RECOMMENDED.  These items are 
> > included in the comments below.
> 
> Remember that the main motivation of this draft is to define 
> a profile of
> OCSP that ensures OCSP scalability (including bandwidth issues and
> client/server processing) when used in large PKI 
> environments.  Moving some
> of the MUSTs to SHOULDs seems to water down what we are
> trying to accomplish.   Also, our goal is to not make current client
> implementations non-conformant, but to define behavior when these
> clients find themselves in high volume environments.   We will make
> this clearer in the introduction for -01.  
> 
> [SC: I am aware of this.  Most of my comments are related to 
> client behavior
> and not to the bits on the wire.  The possible exception 
> being the mandatory
> caching of the responses.  There, I felt the client simplicity should
> drive.]
> 
> > 1.  Section 1.2.2, sha256WithRSAEncryption should be added to the 
> > signature algorithms.
> 
> Although I understand the reasoning behind adding this 
> requirement, I think
> doing so is a little premature and would create a situation
> Where this draft is no longer a strict profile of RFC2560.   I think
> 2560 has to move first on this point. 
> 
> [SC: 2560 does not limit the signing algorithm.  It imports 
> these.  3280
> also is not dependent.  They bring in the algorithm 
> identifiers from 3279 or
> successor.  I think this I-D should follow the same modular approach.
> Otherwise, we will need to revise it in another year] 
> 
> > 2.  Section 1.2.2, The term "validity window" for the response is
> > not clear or defined.  I suspect it is thisUpdate and nextUpdate for
> > the response.  It should be defined.  Furthermore, there is no 
> > reason for the Responder certificate validity period to envelope 
> > the response window.  For example, the Responder may have been 
> > issued a new certificate since thisUpdate or may get a new 
> > certificate before nextUpdate.  Thus, this requirement is excessive.
> > Also, it is not clear why this requirement is imposed from security 
> > viewpoint.
> 
> Well, from a security point of view its my opinion that a 
> properly behaved
> OCSP responder would always ensure that responses it creates 
> are enveloped
> within the validity period of the certificate it uses to sign 
> the responses.
> If one assumes that the OCSP responder certificate is a 
> license to issue
> responses a responder should not be entitled to issue a response that
> exceeds his license to make such statements.
> 
> [SC: The above text is not a security argument.  Actually, there is no
> security issue in this topic or a security reason to envelop 
> the validity
> period in a revocation entry with that of the Responder 
> certificate.  One
> could try to say that producedAt should fall within the 
> certificate validity
> period.  But, even that is not necessary.  Furthermore, since 
> you recommend
> short validity period for Responder, this may pose a problem. 
>  Imagine a CA
> issuing weekly or daily CRL and Responder renewing it 
> certificate monthly.
> You do not want to change thisUpdate or nextUpdate.  You may 
> not be able to
> use old or the new certificate.  Aside from being useless 
> from security
> viewpoint, you could be in a deadlock at worst and adding the 
> complexity to
> the Responder and the client that is not needed and 2560 does 
> not advocate
> it.]
> 
> >From a more practical point of view, there exist many widely deployed
> clients that will fail OCSP response validation if this 
> nesting does not
> occur.  Thus we were hoping to increase interop with the 
> existing client
> base with this requirement.  You will note that this draft is 
> currently
> specified as informational due in some part to the fact that 
> it defines
> existing and deployed implementations.  
> 
> [SC: If we defined PKI mantra using some of the widely 
> deployed products, we
> would have security holes the size of pacific ocean.  We do 
> not change the
> security principles and standards because commercial products 
> do it one way.
> As to informational RFC, may be you or some one can explain 
> to me what the
> term MUST means for informational.  My comments are oriented towards
> enhancing interoperability.]
> 
> Having said that, I agree clarification would be helpful.  Here is a
> proposed update to the 3rd paragraph of section 1.2.2 -      
> 
> 1.2.2 Signed OCSPResponses 
> 
> [...]
> 
>     The response validity period is the time interval during 
>     which the responder warrants that the response is accurate, 
>     it is represented as two dates: the date in which the 
>     response validity period begins (thisUpdate) and the date
>     in which the response validity period ends (nextUpdate). The 
>     response validity period SHOULD NOT exceed the validity period
>     of the responders certificate.  
>     
> [SC: See previous response]
> 
> > 3.  Section 1.2.3, It is not clear if the certificate has 
> expired and 
> > the Responder does not maintain revocation status of expired 
> > certificates, what the response should be.  May be 
> "unauthorized" is 
> > meant.  If so, this should be made clearer.
> 
> OK.  We will update the last paragraph of Section 1.2.3 as follows:
> 
>     The responder will return an OCSPResponseStatus of "unauthorized" 
>     when processing requests for which it is not capable of 
> responding 
>     authoritatively. This includes the scenario where a responder has 
>     removed the records of expired certificate from its database. 
> 
> [SC: Thanks] 
> 
> > 4.  Section 2.1, The recognition of AIA should be changed from MUST
> > to RECOMMENDED.  Using MUST means that clients and implementations 
> > that use OCSP Responder as trust anchor, will have an added 
> > requirement.
> 
> I think its important that if a CA includes an OCSP AIA 
> extension in the
> cert that all clients have the ability to recognize this 
> extension. The
> requirement does not mandate a client communicate with the 
> responder on the
> other side of the AIA URI...just that it has the option of 
> doing so (or not
> doing so) based on local policy. 
> 
> [SC: I am ok with AIA as MUST for an informational RFC]
> 
> > 5.  Section 2.1, The requirement to check OCSP before CRL 
> as a MUST is 
> > excessive.  This should be recommended.  It should be left 
> up to the 
> > implementation to determine whether to use CRL or OCSP.
> 
> Well...I think asking for a CRL that may be many megabytes when a
> simple/small OCSP request/response would do the trick is also 
> excessive :)
> If others feel the MUST here is excessive I'll change to a SHOULD. 
> 
> [SC: I think we should change it]
> 
> > 6.  Section 2.2, The order in which path is validated and when the 
> > OCSP response is requested, should be changed from MUST to 
> > RECOMMENDED.  This should be an application decision.
> 
> If a client is unable to validate a signature on a cert, why 
> would it bother
> to hit the wire to determine the certs status?Remember that 
> one goal of this
> ID is to limit clients hits to the server and thus we are 
> suggesting that
> applications using OCSP clients in these scenarios (not all 
> scenarios mind
> you) validate the cert first, before it hits the wire to ask for its
> revocation status.  What if we qualified this MUST as follows: 
> 
> 2.2 Sending an OCSP Request 
>      
>     To avoid needless network traffic, when applications are 
> operating 
>     as a lightweight OCSP client they MUST verify the signature of 
>     signed data before asking an OCSP client to check the status of 
>     certificates used to verify the data. If the signature is invalid 
>     or the application is not able to verify it, an OCSP check MUST
>     NOT be requested. 
> 
> [SC: My comments are based on giving the leeway to the 
> clients since these
> things do not impact interoperability or security.  That is 
> why this should
> be RECOMMENDED.]
> 
> > 7. Section 3, When nonce is not included in the request or 
> response, 
> > another way to check freshness are producedAt and thisUpdate.
> > These should be described in this section.
> 
> Agreed.  We mention this in section 3, but don't elaborate.
> 
> [SC: Thanks]
> 
> > 
> > 8.Section 3, The checks for nextUpdate that are MUST should 
> be changed 
> > to RECOMMENDED.  Basically, freshness check should be based on the 
> > local policy and this I-D should RECOMMEND items based on a 
> > combination of the three dates asserted in the response.
> 
> We are saying that when a client is configured (via local policy or
> otherwise) to work in a highvolume/lightweight mode it must make these
> checks.  We are not mandating that clients always operate in 
> this mode.
> Would qualifying this MUST such that it applies to OCSP 
> clients operating in
> a lightweight/highvolume environment (as suggested for #6
> above) do the trick?
> 
> [SC: Again, I do not see why lightweight high volume relates 
> to thus.  The
> client should be able to use any of the three mechanisms and 
> local policy to
> determine if a response is fresh enough.  This is another 
> case of having a
> more stringent requirement and creating extra bits on the 
> wire, when local
> policy or other two dates will help accept a response.]
> 
> >
> > 9.Section 5.1, Caching should be RECOMMEND and not MUST.
> 
> I disagree...especially when clients are operating in a
> lightweight/highvolume environment.  Caching on the client is key to
> ensuring server load and network bandwidth is kept to a 
> minimum. Again,
> would qualifying this MUST address your issue?  
> 
> [SC: May be qualifying here is the best compromise in the interest of
> bandwidth.]
> 
> > 10.  The I-D should explicitly require the Responders to 
> have access 
> > to accurate source of time in order to assert producedAt 
> and possibly 
> > thisUpdate and nextUpdate, depending on how the Responder asserts 
> > these two values.
> 
> Will add to section 3.  
> 
> [SC: Thanks.]
> 
> Thanks
> Alex
> 
> 

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-pi-11.txt
Date: Fri, 08 Oct 2004 15:41:19 -0400
Sender: [email-masked]

--NextPart

	Title		: Internet X.509 Public Key Infrastructure Permanent Identifier
	Author(s)	: D. Pinkas, T. Gindin
	Filename	: draft-ietf-pkix-pi-11.txt
	Pages		: 14
	Date		: 2004-10-8
	
This document define a new form of name, called permanent 
identifier, that may be included in the subjectAltName extension 
of a public key certificate issued to an entity.
The permanent identifier is an optional feature that may be used 
by a CA to indicate that the certificate relates to the same 
entity even if the name or the affiliation of that entity stored 
in the subject or another name form in the subjectAltName extension 
has changed.
The subject name, carried in the subject field, is only unique 
for each subject entity certified by the one CA as defined by the 
issuer name field. Also, the new name form can carry a 
name that is unique for each subject entity certified by a CA.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-pi-11.txt

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-pi-11.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-pi-11.txt".

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-pi-11.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-pi-11.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: Signer certificate discovery for CRLs
Date: Thu, 7 Oct 2004 12:44:26 -0400
Importance: Normal
Sender: [email-masked]

Stefan and Denis:

I have reviewed Denis's examples.  They do not seem clear to me.  But, for
both re-key and indirect case (there are several such as assigning a sub CA
or another CA in the PKI domain that is not in any certificate's
certification path), what Stefan has suggested for CRL is a good idea.

I assume that we all realize that having an AIA is not crypto binding.

Separately, while preparing for PKIX, I have had this idea for crypto
binding the certificate signer and CRL signer.  This could be in lieu of
certification path matching algorithm.  A CRL can contain a non-critical
extension which is a SEQUENCE or SET of key identifier (formed using hash
scheme recommended by 3280) of the CAs' certificate signing keys.  A key
identifier is included if the certificate signed using that key can be
included in that CRL.  Now, the relying party only needs to match the AKID
of the certificate with one of the values in this extension.

Please note that this check is a substitute for path matching.  IDP
discipline must still be observed in order to maintain security.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Denis Pinkas
Sent: Thursday, October 07, 2004 10:42 AM
To: Stefan Santesson
Cc: [email-masked]
Subject: Re: Signer certificate discovery for CRLs

Stefan,

> All,
> 
> I'm interested in the opinion from members on this list about 
> discovery of CRL signer's certificate in non directory centric 
> environments.
> 
> The problem is the following.
> 
> The relying party (RP) needs to check validity of a certificate and 
> finds a CDP extension with a URL to the CRL.

> The RP retrieves this CRL which in this particular case is either 
> signed by another key of the CA (re-keyed CA) or another entity 
> (indirect CRL).

> In this case the relying party needs to obtain the certificate of the 
> CRL signer which may NOT be part of the original chain.

You mean: "In these cases ..." since there are two cases.  :-)

 > In a directory
> centric solution this is retrieved from the directory, but what if 
> such directory is not available or accessible.
> 
> The RP have thus no hint where to find the CRL issuers certificate 
> unless the RP already have possession of it by some other means.
> 
> Is seems that CRLs would need an AIA extension with the option to 
> point to the location of the signers certificate in the same manner as 
> is possible for certificates.
> 
> Maybe AIA should be defined as both cert and CRL extension and not 
> only certificate extension as today.

I suppose that a candidate certification path has been successfully built, 
but not yet validated as far as certificate revocation status is concerned.

In the first case (re-keyed CA), there may be multiple sub-cases, so you 
would have to be more specific to explain the scenario you have in mind.

In the second case (indirect CRL, no re-keyed CA), let us use a simple
example.

A chain of certificates has been built with:
leaf certificate / CA Cert 1 / CA Cert 2 / ...

In the chain of certificates, if CA Cert 1 (issued by CA 2) includes an AIA 
extension with an AccessDescription id-ad-caIssuers, then the location of a 
repository that may contain CRL issuer certificates may be known: if CA 2 
postes the certificate designating the CRL issuer in that repository, then 
the problem is solved.

" [FROM RFC 3280] The accessLocation field specifies the location of the 
information. The retrieval mechanism may be implied by the accessMethod or 
specified by accessLocation. When id-ad-caIssuers appears as accessMethod, 
the accessLocation field describes the referenced description server and the

access protocol to obtain the referenced description."

In the chain of certificates, if CA Cert 2 (issued by CA 3) includes an 
Subject Information Access (SIA) extension with an AccessDescription 
id-ad-caRepository, then the location of a repository that may contain CRL 
issuer certificates may be known: if CA 2 postes the certificate designating

the CRL issuer in that repository, then the problem is also solved.

Even if these extensions are scarcely (not yet ?) used for that purpose, I
do not think it would be desirable to introduce a third way.

Denis

> Thoughts and comments?
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 

Date: Thu, 07 Oct 2004 16:41:34 +0200
From: Denis Pinkas <[email-masked]>
Organization: Bull SA.
To: Stefan Santesson <[email-masked]>
CC: [email-masked]
Subject: Re: Signer certificate discovery for CRLs
Sender: [email-masked]

Stefan,

> All,
> 
> I'm interested in the opinion from members on this list about discovery
> of CRL signer's certificate in non directory centric environments.
> 
> The problem is the following.
> 
> The relying party (RP) needs to check validity of a certificate and
> finds a CDP extension with a URL to the CRL.

> The RP retrieves this CRL which in this particular case is either signed
> by another key of the CA (re-keyed CA) or another entity (indirect CRL).

> In this case the relying party needs to obtain the certificate of the
> CRL signer which may NOT be part of the original chain. 

You mean: "In these cases ..." since there are two cases.  :-)

 > In a directory
> centric solution this is retrieved from the directory, but what if such
> directory is not available or accessible.
> 
> The RP have thus no hint where to find the CRL issuers certificate
> unless the RP already have possession of it by some other means.
> 
> Is seems that CRLs would need an AIA extension with the option to point
> to the location of the signers certificate in the same manner as is
> possible for certificates.
> 
> Maybe AIA should be defined as both cert and CRL extension and not only
> certificate extension as today.

I suppose that a candidate certification path has been successfully built, 
but not yet validated as far as certificate revocation status is concerned.

In the first case (re-keyed CA), there may be multiple sub-cases, so you 
would have to be more specific to explain the scenario you have in mind.

In the second case (indirect CRL, no re-keyed CA), let us use a simple example.

A chain of certificates has been built with:
leaf certificate / CA Cert 1 / CA Cert 2 / ...

In the chain of certificates, if CA Cert 1 (issued by CA 2) includes an AIA 
extension with an AccessDescription id-ad-caIssuers, then the location of a 
repository that may contain CRL issuer certificates may be known: if CA 2 
postes the certificate designating the CRL issuer in that repository, then 
the problem is solved.

" [FROM RFC 3280] The accessLocation field specifies the location of the 
information. The retrieval mechanism may be implied by the accessMethod or 
specified by accessLocation. When id-ad-caIssuers appears as accessMethod, 
the accessLocation field describes the referenced description server and the 
access protocol to obtain the referenced description."

In the chain of certificates, if CA Cert 2 (issued by CA 3) includes an 
Subject Information Access (SIA) extension with an AccessDescription 
id-ad-caRepository, then the location of a repository that may contain CRL 
issuer certificates may be known: if CA 2 postes the certificate designating 
the CRL issuer in that repository, then the problem is also solved.

Even if these extensions are scarcely (not yet ?) used for that purpose,
I do not think it would be desirable to introduce a third way.

Denis

> Thoughts and comments?
> 
> Stefan Santesson
> Microsoft Security Center of Excellence (SCOE)
>  
> 
> 

From: "Administrator" <[email-masked]>
To: [email-masked]
Subject: ADV:      Staff Annoucement
Date: Thu, 07 Oct 04 12:10:36 GMT

This is a multi-part message in MIME format.

--500.8A.__C
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Attention All Nonprofit Organizations: Members and Staff

You Must Respond By 5 P.M. Friday, October 8, 2004.

Through a special arrangement, Avtech Direct is offering a limited
allotment of BRAND NEW, top of-the-line, name-brand desktop computers
at more than 50% off MSRP to all Nonprofit Members and Staff 
who respond to this message before 5 P.M., Friday, October 8, 2004

All desktop computers are brand-new packed in their original boxes,
and come with a full manufacturer's warranty plus
a 100% satisfaction guarantee.

These professional grade Desktops are fully equipped with 2005
next generation technology, making these the best performing
computers money can buy.

Avtech Direct is offering these feature rich, top performing
Desktops with the latest technology at an amazing price
to all who call:

    1-800-795-8466 by 5 P.M. Friday, October 8, 2004

The fast and powerful AT-3200 series Desktop features: 

      * IBM Processor for amazing speed and performance
      * 128MB DDR RAM,  -- Upgradeable to 1024
      * 20 GB UDMA Hard Drive, -- Upgradeable to 80 GB
      * 52X CD-Rom Drive, -- Upgradeable to DVD/CDRW
      * Next Generation 2005 Technology
      * Premium video and sound -- For enhanced colors and graphics
      * Full Connectivity with Fax modem/Lan/IEE 1394/USB 2.0
      * Soft Touch Keyboard and scroll mouse
      * Internet Ready
      * Network Ready
      * 1 Year parts and labor warranty
      * Priority customer service and tech support

MSRP $499 ........................................ Your Cost $227

How to qualify:

  1. You must be a Member, Staff or Associate of a Nonprofit.
  2. All desktop computers will be available on a
     first come first serve basis.
  3. You must call 1-800-795-8466 by 5 P.M. Friday, October 8, 2004.
     and we will hold the desktops you request on will call. 
  4. You are not obligated in any way.
  5. 100% Satisfaction Guaranteed.
  6. Ask for Department C.

Call Avtech Direct
1-800-795-8466 before 5 P.M. Friday, October 8, 2004

Visit our website at http://www.avtechdirectcomputers.com

If you wish to unsubscribe from this list, please go to
http://www.computeradvice.org/unsubscribelink.asp

Avtech Direct
22647 Ventura Blvd. Suite 374
Woodland Hills, CA 91364
--500.8A.__C--

Content-class: urn:content-classes:message
Subject: Signer certificate discovery for CRLs
Date: Wed, 6 Oct 2004 23:07:07 +0100
From: "Stefan Santesson" <[email-masked]>
To: <[email-masked]>
Sender: [email-masked]

All,

I'm interested in the opinion from members on this list about discovery
of CRL signer's certificate in non directory centric environments.

The problem is the following.

The relying party (RP) needs to check validity of a certificate and
finds a CDP extension with a URL to the CRL.
The RP retrieves this CRL which in this particular case is either signed
by another key of the CA (re-keyed CA) or another entity (indirect CRL).

In this case the relying party needs to obtain the certificate of the
CRL signer which may NOT be part of the original chain. In a directory
centric solution this is retrieved from the directory, but what if such
directory is not available or accessible.

The RP have thus no hint where to find the CRL issuers certificate
unless the RP already have possession of it by some other means.

Is seems that CRLs would need an AIA extension with the option to point
to the location of the signers certificate in the same manner as is
possible for certificates.

Maybe AIA should be defined as both cert and CRL extension and not only
certificate extension as today.

Thoughts and comments?

Stefan Santesson
Microsoft Security Center of Excellence (SCOE)

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: RE: New Lightweight OCSP I-D
Date: Tue, 5 Oct 2004 18:01:28 -0400
Importance: Normal
Sender: [email-masked]

Alex,

Thanks for your comments.  See my responses in-line using [SC:]

-----Original Message-----
From: Deacon, Alex [mailto:[email-masked]] 
Sent: Tuesday, October 05, 2004 3:00 PM
To: 'Santosh Chokhani'; [email-masked]
Subject: RE: New Lightweight OCSP I-D

Santosh,

Thanks for taking the time to review the draft.  Comments in line....

> -----Original Message-----
> From: Santosh Chokhani [mailto:[email-masked]]
> Sent: Monday, October 04, 2004 6:54 AM
> To: [email-masked]
> Subject: New Lightweight OCSP I-D
>
> I have some concerns regarding the new RFC.  There are several items
> in the I-D that are good engineering advice, but they go far beyond
> what should be within the scope of the RFC and should be up to the
> application and relying party.  These are listed as MUST in the RFC 
> and should be changed to SHOULD or RECOMMENDED.  These items are 
> included in the comments below.

Remember that the main motivation of this draft is to define a profile of
OCSP that ensures OCSP scalability (including bandwidth issues and
client/server processing) when used in large PKI environments.  Moving some
of the MUSTs to SHOULDs seems to water down what we are
trying to accomplish.   Also, our goal is to not make current client
implementations non-conformant, but to define behavior when these
clients find themselves in high volume environments.   We will make
this clearer in the introduction for -01.  

[SC: I am aware of this.  Most of my comments are related to client behavior
and not to the bits on the wire.  The possible exception being the mandatory
caching of the responses.  There, I felt the client simplicity should
drive.]

> 1.  Section 1.2.2, sha256WithRSAEncryption should be added to the 
> signature algorithms.

Although I understand the reasoning behind adding this requirement, I think
doing so is a little premature and would create a situation
Where this draft is no longer a strict profile of RFC2560.   I think
2560 has to move first on this point. 

[SC: 2560 does not limit the signing algorithm.  It imports these.  3280
also is not dependent.  They bring in the algorithm identifiers from 3279 or
successor.  I think this I-D should follow the same modular approach.
Otherwise, we will need to revise it in another year] 

> 2.  Section 1.2.2, The term "validity window" for the response is
> not clear or defined.  I suspect it is thisUpdate and nextUpdate for
> the response.  It should be defined.  Furthermore, there is no 
> reason for the Responder certificate validity period to envelope 
> the response window.  For example, the Responder may have been 
> issued a new certificate since thisUpdate or may get a new 
> certificate before nextUpdate.  Thus, this requirement is excessive.
> Also, it is not clear why this requirement is imposed from security 
> viewpoint.

Well, from a security point of view its my opinion that a properly behaved
OCSP responder would always ensure that responses it creates are enveloped
within the validity period of the certificate it uses to sign the responses.
If one assumes that the OCSP responder certificate is a license to issue
responses a responder should not be entitled to issue a response that
exceeds his license to make such statements.

[SC: The above text is not a security argument.  Actually, there is no
security issue in this topic or a security reason to envelop the validity
period in a revocation entry with that of the Responder certificate.  One
could try to say that producedAt should fall within the certificate validity
period.  But, even that is not necessary.  Furthermore, since you recommend
short validity period for Responder, this may pose a problem.  Imagine a CA
issuing weekly or daily CRL and Responder renewing it certificate monthly.
You do not want to change thisUpdate or nextUpdate.  You may not be able to
use old or the new certificate.  Aside from being useless from security
viewpoint, you could be in a deadlock at worst and adding the complexity to
the Responder and the client that is not needed and 2560 does not advocate
it.]

>From a more practical point of view, there exist many widely deployed
clients that will fail OCSP response validation if this nesting does not
occur.  Thus we were hoping to increase interop with the existing client
base with this requirement.  You will note that this draft is currently
specified as informational due in some part to the fact that it defines
existing and deployed implementations.  

[SC: If we defined PKI mantra using some of the widely deployed products, we
would have security holes the size of pacific ocean.  We do not change the
security principles and standards because commercial products do it one way.
As to informational RFC, may be you or some one can explain to me what the
term MUST means for informational.  My comments are oriented towards
enhancing interoperability.]

Having said that, I agree clarification would be helpful.  Here is a
proposed update to the 3rd paragraph of section 1.2.2 -      

1.2.2 Signed OCSPResponses 

[...]

    The response validity period is the time interval during 
    which the responder warrants that the response is accurate, 
    it is represented as two dates: the date in which the 
    response validity period begins (thisUpdate) and the date
    in which the response validity period ends (nextUpdate). The 
    response validity period SHOULD NOT exceed the validity period
    of the responders certificate.  
    
[SC: See previous response]

> 3.  Section 1.2.3, It is not clear if the certificate has expired and 
> the Responder does not maintain revocation status of expired 
> certificates, what the response should be.  May be "unauthorized" is 
> meant.  If so, this should be made clearer.

OK.  We will update the last paragraph of Section 1.2.3 as follows:

    The responder will return an OCSPResponseStatus of "unauthorized" 
    when processing requests for which it is not capable of responding 
    authoritatively. This includes the scenario where a responder has 
    removed the records of expired certificate from its database. 

[SC: Thanks] 

> 4.  Section 2.1, The recognition of AIA should be changed from MUST
> to RECOMMENDED.  Using MUST means that clients and implementations 
> that use OCSP Responder as trust anchor, will have an added 
> requirement.

I think its important that if a CA includes an OCSP AIA extension in the
cert that all clients have the ability to recognize this extension. The
requirement does not mandate a client communicate with the responder on the
other side of the AIA URI...just that it has the option of doing so (or not
doing so) based on local policy. 

[SC: I am ok with AIA as MUST for an informational RFC]

> 5.  Section 2.1, The requirement to check OCSP before CRL as a MUST is 
> excessive.  This should be recommended.  It should be left up to the 
> implementation to determine whether to use CRL or OCSP.

Well...I think asking for a CRL that may be many megabytes when a
simple/small OCSP request/response would do the trick is also excessive :)
If others feel the MUST here is excessive I'll change to a SHOULD. 

[SC: I think we should change it]

> 6.  Section 2.2, The order in which path is validated and when the 
> OCSP response is requested, should be changed from MUST to 
> RECOMMENDED.  This should be an application decision.

If a client is unable to validate a signature on a cert, why would it bother
to hit the wire to determine the certs status?Remember that one goal of this
ID is to limit clients hits to the server and thus we are suggesting that
applications using OCSP clients in these scenarios (not all scenarios mind
you) validate the cert first, before it hits the wire to ask for its
revocation status.  What if we qualified this MUST as follows: 

2.2 Sending an OCSP Request 
     
    To avoid needless network traffic, when applications are operating 
    as a lightweight OCSP client they MUST verify the signature of 
    signed data before asking an OCSP client to check the status of 
    certificates used to verify the data. If the signature is invalid 
    or the application is not able to verify it, an OCSP check MUST
    NOT be requested. 

[SC: My comments are based on giving the leeway to the clients since these
things do not impact interoperability or security.  That is why this should
be RECOMMENDED.]

> 7. Section 3, When nonce is not included in the request or response, 
> another way to check freshness are producedAt and thisUpdate.
> These should be described in this section.

Agreed.  We mention this in section 3, but don't elaborate.

[SC: Thanks]

> 
> 8.Section 3, The checks for nextUpdate that are MUST should be changed 
> to RECOMMENDED.  Basically, freshness check should be based on the 
> local policy and this I-D should RECOMMEND items based on a 
> combination of the three dates asserted in the response.

We are saying that when a client is configured (via local policy or
otherwise) to work in a highvolume/lightweight mode it must make these
checks.  We are not mandating that clients always operate in this mode.
Would qualifying this MUST such that it applies to OCSP clients operating in
a lightweight/highvolume environment (as suggested for #6
above) do the trick?

[SC: Again, I do not see why lightweight high volume relates to thus.  The
client should be able to use any of the three mechanisms and local policy to
determine if a response is fresh enough.  This is another case of having a
more stringent requirement and creating extra bits on the wire, when local
policy or other two dates will help accept a response.]

>
> 9.Section 5.1, Caching should be RECOMMEND and not MUST.

I disagree...especially when clients are operating in a
lightweight/highvolume environment.  Caching on the client is key to
ensuring server load and network bandwidth is kept to a minimum. Again,
would qualifying this MUST address your issue?  

[SC: May be qualifying here is the best compromise in the interest of
bandwidth.]

> 10.  The I-D should explicitly require the Responders to have access 
> to accurate source of time in order to assert producedAt and possibly 
> thisUpdate and nextUpdate, depending on how the Responder asserts 
> these two values.

Will add to section 3.  

[SC: Thanks.]

Thanks
Alex

From: "Deacon, Alex" <[email-masked]>
To: "'Santosh Chokhani'" <[email-masked]>, [email-masked]
Subject: RE: New Lightweight OCSP I-D
Date: Tue, 5 Oct 2004 11:59:44 -0700 
Sender: [email-masked]

Santosh,

Thanks for taking the time to review the draft.  Comments in line....

> -----Original Message-----
> From: Santosh Chokhani [mailto:[email-masked]] 
> Sent: Monday, October 04, 2004 6:54 AM
> To: [email-masked]
> Subject: New Lightweight OCSP I-D
>
> I have some concerns regarding the new RFC.  There are several items 
> in the I-D that are good engineering advice, but they go far beyond
> what should be within the scope of the RFC and should be up to the
> application and relying party.  These are listed as MUST in the RFC 
> and should be changed to SHOULD or RECOMMENDED.  These items are 
> included in the comments below.

Remember that the main motivation of this draft is to define a profile
of OCSP that ensures OCSP scalability (including bandwidth issues and
client/server processing) when used in large PKI environments.  Moving
some of the MUSTs to SHOULDs seems to water down what we are
trying to accomplish.   Also, our goal is to not make current client
implementations non-conformant, but to define behavior when these
clients find themselves in high volume environments.   We will make
this clearer in the introduction for -01.  

> 1.  Section 1.2.2, sha256WithRSAEncryption should be added to the
> signature algorithms.

Although I understand the reasoning behind adding this requirement, I
think doing so is a little premature and would create a situation
Where this draft is no longer a strict profile of RFC2560.   I think
2560 has to move first on this point.  

> 2.  Section 1.2.2, The term "validity window" for the response is 
> not clear or defined.  I suspect it is thisUpdate and nextUpdate for
> the response.  It should be defined.  Furthermore, there is no 
> reason for the Responder certificate validity period to envelope 
> the response window.  For example, the Responder may have been 
> issued a new certificate since thisUpdate or may get a new 
> certificate before nextUpdate.  Thus, this requirement is excessive.
> Also, it is not clear why this requirement is imposed from security 
> viewpoint.

Well, from a security point of view its my opinion that a properly
behaved OCSP responder would always ensure that responses it creates
are enveloped within the validity period of the certificate it uses to
sign the responses.  If one assumes that the OCSP responder
certificate is a license to issue responses a responder should not be
entitled to issue a response that exceeds his license to make such
statements.

>From a more practical point of view, there exist many widely deployed
clients that will fail OCSP response validation if this nesting does
not occur.  Thus we were hoping to increase interop with the existing
client base with this requirement.  You will note that this draft is
currently specified as informational due in some part to the fact that
it defines existing and deployed implementations.  

Having said that, I agree clarification would be helpful.  Here is a
proposed update to the 3rd paragraph of section 1.2.2 -      

1.2.2 Signed OCSPResponses 

[...]

    The response validity period is the time interval during 
    which the responder warrants that the response is accurate, 
    it is represented as two dates: the date in which the 
    response validity period begins (thisUpdate) and the date
    in which the response validity period ends (nextUpdate). The 
    response validity period SHOULD NOT exceed the validity period
    of the responders certificate.  

> 3.  Section 1.2.3, It is not clear if the certificate has expired
> and the Responder does not maintain revocation status of expired 
> certificates, what the response should be.  May be "unauthorized" is
> meant.  If so, this should be made clearer.

OK.  We will update the last paragraph of Section 1.2.3 as follows:

    The responder will return an OCSPResponseStatus of "unauthorized" 
    when processing requests for which it is not capable of responding 
    authoritatively. This includes the scenario where a responder has 
    removed the records of expired certificate from its database.  

> 4.  Section 2.1, The recognition of AIA should be changed from MUST 
> to RECOMMENDED.  Using MUST means that clients and implementations 
> that use OCSP Responder as trust anchor, will have an added 
> requirement.

I think its important that if a CA includes an OCSP AIA extension in
the cert that all clients have the ability to recognize this extension. The
requirement does not mandate a client communicate with
the responder on the other side of the AIA URI...just that it has the
option of doing so (or not doing so) based on local policy. 

> 5.  Section 2.1, The requirement to check OCSP before CRL as a MUST
> is excessive.  This should be recommended.  It should be left up to
> the implementation to determine whether to use CRL or OCSP.

Well...I think asking for a CRL that may be many megabytes when a
simple/small OCSP request/response would do the trick is also excessive :)
If others feel the MUST here is excessive I'll change
to a SHOULD. 

> 6.  Section 2.2, The order in which path is validated and when the
> OCSP response is requested, should be changed from MUST to
> RECOMMENDED.  This should be an application decision.

If a client is unable to validate a signature on a cert, why would it
bother to hit the wire to determine the certs status?Remember that one
goal of this ID is to limit clients hits to the server and thus we are
suggesting that applications using OCSP clients in these scenarios
(not all scenarios mind you) validate the cert first, before it hits
the wire to ask for its revocation status.  What if we qualified this
MUST as follows: 

2.2 Sending an OCSP Request 
     
    To avoid needless network traffic, when applications are operating 
    as a lightweight OCSP client they MUST verify the signature of 
    signed data before asking an OCSP client to check the status of 
    certificates used to verify the data. If the signature is invalid 
    or the application is not able to verify it, an OCSP check MUST
    NOT be requested. 

> 7. Section 3, When nonce is not included in the request or response,
> another way to check freshness are producedAt and thisUpdate.  
> These should be described in this section.

Agreed.  We mention this in section 3, but don't elaborate.

> 
> 8.Section 3, The checks for nextUpdate that are MUST should be
> changed to RECOMMENDED.  Basically, freshness check should be based
> on the local policy and this I-D should RECOMMEND items based on a
> combination of the three dates asserted in the response.

We are saying that when a client is configured (via local policy or
otherwise) to work in a highvolume/lightweight mode it must make these
checks.  We are not mandating that clients always operate in this
mode.  Would qualifying this MUST such that it applies to OCSP clients
operating in a lightweight/highvolume environment (as suggested for #6
above) do the trick?

>
> 9.Section 5.1, Caching should be RECOMMEND and not MUST.

I disagree...especially when clients are operating in a
lightweight/highvolume environment.  Caching on the client is key to
ensuring server load and network bandwidth is kept to a minimum.
Again, would qualifying this MUST address your issue?  

> 10.  The I-D should explicitly require the Responders to have access
> to accurate source of time in order to assert producedAt and
> possibly thisUpdate and nextUpdate, depending on how the Responder
> asserts these two values.

Will add to section 3.  

Thanks
Alex

From: "Santosh Chokhani" <[email-masked]>
To: <[email-masked]>
Subject: New Lightweight OCSP I-D
Date: Mon, 4 Oct 2004 09:54:08 -0400
Importance: Normal
Sender: [email-masked]

This is a multi-part message in MIME format.

------=_NextPart_000_0080_01C4A9F8.17E1BCF0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

I have some concerns regarding the new RFC.  There are several items in =
the
I-D that are good engineering advice, but they go far beyond what should =
be
within the scope of the RFC and should be up to the application and =
relying
party.  These are listed as MUST in the RFC and should be changed to =
SHOULD
or RECOMMENDED.  These items are included in the comments below.
=20
1.  Section 1.2.2, sha256WithRSAEncryption should be added to the =
signature
algorithms.
=20
2.  Section 1.2.2, The term "validity window" for the response is not =
clear
or defined.  I suspect it is thisUpdate and nextUpdate for the response. =
 It
should be defined.  Furthermore, there is no reason for the Responder
certificate validity period to envelope the response window.  For =
example,
the Responder may have been issued a new certificate since thisUpdate or =
may
get a new certificate before nextUpdate.  Thus, this requirement is
excessive.  Also, it is not clear why this requirement is imposed from
security viewpoint.
=20
3.  Section 1.2.3, It is not clear if the certificate has expired and =
the
Responder does not maintain revocation status of expired certificates, =
what
the response should be.  May be "unauthorized" is meant.  If so, this =
should
be made clearer.
=20
4.  Section 2.1, The recognition of AIA should be changed from MUST to
RECOMMENDED.  Using MUST means that clients and implementations that use
OCSP Responder as trust anchor, will have an added requirement.
=20
5.  Section 2.1, The requirement to check OCSP before CRL as a MUST is
excessive.  This should be recommended.  It should be left up to the
implementation to determine whether to use CRL or OCSP.
=20
6.  Section 2.2, The order in which path is validated and when the OCSP
response is requested, should be changed from MUST to RECOMMENDED.  This
should be an application decision.
=20
7.Section 3, When nonce is not included in the request or response, =
another
way to check freshness are producedAt and thisUpdate.  These should be
described in this section.
=20
8.Section 3, The checks for nextUpdate that are MUST should be changed =
to
RECOMMENDED.  Basically, freshness check should be based on the local =
policy
and this I-D should RECOMMEND items based on a combination of the three
dates asserted in the response.
=20
9.Section 5.1, Caching should be RECOMMEND and not MUST.
=20
10.  The I-D should explicitly require the Responders to have access to
accurate source of time in order to assert producedAt and possibly
thisUpdate and nextUpdate, depending on how the Responder asserts these =
two
values.
=20
Santosh Chokhani=20
Orion Security Solutions, Inc.=20
1489 Chain Bridge Road, Suite 300=20
McLean, Virginia 22101=20
(703) 917-0060  Ext. 35 (voice)=20
(703) 917-0260 (Fax)=20
[email-masked]=20
Visit our Web site=20
http://www.orionsec.com <http://www.orionsec.com/> =20
=20

------=_NextPart_000_0080_01C4A9F8.17E1BCF0
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii">
<TITLE>Message</TITLE>

<META content=3D"MSHTML 6.00.2900.2180" name=3DGENERATOR></HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D429341400-04102004>I have =
some concerns=20
regarding the new RFC.&nbsp; There are several items in the I-D that are =
good=20
engineering advice, but they go far beyond what should be within the =
scope of=20
the RFC and should be up to the application and relying party.&nbsp; =
These are=20
listed as MUST in the RFC and should be changed to SHOULD or =
RECOMMENDED.&nbsp;=20
These items are included in the comments below.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>1.&nbsp; Section=20
1.2.2, sha256WithRSAEncryption should be added to the signature=20
algorithms.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>2.&nbsp; Section=20
1.2.2, The term "validity window" for the response is not clear or=20
defined.&nbsp; I suspect it is thisUpdate and nextUpdate for the =
response.&nbsp;=20
It should be defined.&nbsp; Furthermore, there is no reason for the =
Responder=20
certificate validity period to envelope the response window.&nbsp; For =
example,=20
the Responder may have been issued a new certificate since thisUpdate or =
may get=20
a new certificate before nextUpdate.&nbsp; Thus, this requirement is=20
excessive.&nbsp; Also, it is not clear why this requirement is imposed =
from=20
security viewpoint.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>3.&nbsp; Section=20
1.2.3, It is not clear if the certificate has expired and the Responder =
does not=20
maintain revocation status of expired certificates, what the response =
should=20
be.&nbsp; May be "unauthorized" is meant.&nbsp; If so, this should be =
made=20
clearer.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>4.&nbsp; Section=20
2.1, The recognition of AIA should be changed from MUST to =
RECOMMENDED.&nbsp;=20
Using MUST means that clients and implementations that use OCSP =
Responder as=20
trust anchor, will have an added requirement.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>5.&nbsp; Section=20
2.1, The requirement to check OCSP before CRL as a MUST is =
excessive.&nbsp; This=20
should be recommended.&nbsp; It should be left up to the implementation =
to=20
determine whether to use CRL or OCSP.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>6.&nbsp; Section=20
2.2, The order in which path is validated and when the OCSP response is=20
requested, should be changed from MUST to RECOMMENDED.&nbsp; This should =
be an=20
application decision.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>7.Section 3, When=20
nonce is not included in the request or response, another way to check=20
freshness&nbsp;are producedAt and thisUpdate.&nbsp; These should be =
described in=20
this section.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>8.Section 3, The=20
checks for nextUpdate that are MUST should be changed to =
RECOMMENDED.&nbsp;=20
Basically, freshness check should be based on the local policy and this =
I-D=20
should RECOMMEND items based on a combination of the three dates =
asserted in the=20
response.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>9.Section 5.1,=20
Caching should be RECOMMEND and not MUST.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004>10.&nbsp; The I-D=20
should explicitly require the Responders to have access to accurate =
source of=20
time in order to assert producedAt and possibly thisUpdate and =
nextUpdate,=20
depending on how the Responder asserts these two =
values.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D429341400-04102004></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D429341400-04102004></SPAN></FONT><SPAN=20
lang=3Den-us><FONT face=3DArial size=3D2>Santosh Chokhani</FONT></SPAN> =
<BR><SPAN=20
lang=3Den-us><FONT face=3DArial size=3D2>Orion Security Solutions, =
Inc.</FONT></SPAN>=20
<BR><SPAN lang=3Den-us><FONT face=3DArial size=3D2>1489 Chain Bridge =
Road, Suite=20
300</FONT></SPAN> <BR><SPAN lang=3Den-us><FONT face=3DArial =
size=3D2>McLean, Virginia=20
22101</FONT></SPAN> <BR><SPAN lang=3Den-us><FONT face=3DArial =
size=3D2>(703)</FONT>=20
<FONT face=3DArial size=3D2>917</FONT><FONT face=3DArial =
size=3D2>-</FONT><FONT=20
face=3DArial size=3D2>0060</FONT><FONT face=3DArial =
size=3D2></FONT>&nbsp;<FONT=20
face=3DArial size=3D2> </FONT><FONT face=3DArial color=3D#ff0000 =
size=3D2>Ext. 35</FONT>=20
<FONT face=3DArial size=3D2>(</FONT><FONT face=3DArial =
size=3D2>voice</FONT><FONT=20
face=3DArial size=3D2>)</FONT></SPAN> <BR><SPAN lang=3Den-us><FONT =
face=3DArial=20
size=3D2>(703)</FONT> <FONT face=3DArial size=3D2>917</FONT><FONT =
face=3DArial=20
size=3D2>-</FONT><FONT face=3DArial size=3D2>0260</FONT><FONT =
face=3DArial size=3D2>=20
(Fax)</FONT></SPAN> <BR><SPAN lang=3Den-us><FONT face=3DArial=20
size=3D2>[email-masked]</FONT></SPAN> <BR><SPAN =
lang=3Den-us><FONT face=3DArial=20
size=3D2>Visit our Web site</FONT></SPAN> <BR><SPAN lang=3Den-us><FONT =
face=3DArial=20
size=3D2><A=20
href=3D"http://www.orionsec.com/">http://www.orionsec.com</A></FONT></SPA=
N> </DIV>
<DIV>&nbsp;</DIV></BODY></HTML>

------=_NextPart_000_0080_01C4A9F8.17E1BCF0--

To: [email-masked]
Cc: [email-masked]
From: [email-masked]
Subject: I-D ACTION:draft-ietf-pkix-lightweight-ocsp-profile-00.txt
Date: Fri, 01 Oct 2004 15:51:34 -0400
Sender: [email-masked]

--NextPart

	Title		: Lightweight OCSP Profile  for High Volume Environments
	Author(s)	: A. Deacon, R. Hurst
	Filename	: draft-ietf-pkix-lightweight-ocsp-profile-00.txt
	Pages		: 20
	Date		: 2004-10-1
	
This document defines a lightweight profile of OCSP (RFC 2560) for 
use in very large PKI environments such as SSL/TLS, code signing 
and secure messaging.  In these environments there exists a large 
client base (in the 100's of millions) and thus the ability to 
scale OCSP request handling is very important.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-00.txt

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-pkix-lightweight-ocsp-profile-00.txt".

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-00.txt".

--NextPart
Content-Type: Multipart/Alternative; Boundary="OtherAccess"

--OtherAccess
Content-Type: Message/External-body;
	access-type="mail-server";
	server="[email-masked]"

Content-Type: text/plain
Content-ID:	<[email-masked]>

ENCODING mime
FILE /internet-drafts/draft-ietf-pkix-lightweight-ocsp-profile-00.txt

--OtherAccess
Content-Type: Message/External-body;
	name="draft-ietf-pkix-lightweight-ocsp-profile-00.txt";
	site="ftp.ietf.org";
	access-type="anon-ftp";
	directory="internet-drafts"

Content-Type: text/plain
Content-ID:	<[email-masked]>

--OtherAccess--

--NextPart--