Closed HBrock closed 8 months ago
Created PR with proposed changes
Thank you for your proposal. I saw, you that you updated Section 4.4 and Section 4.4.1 and removed Section 4.4.2. Section 5.2.5 is unchanged. See the diff Section 4.4 old.diff.html.pdf.
When checking https://datatracker.ietf.org/doc/rfc4210/referencedby/, I identified the following documents referring to Section 4.4 of RFC 4210:
@johngray-dev @ounsworth Do you have any further thoughts or proposals?
Should we keep the section but state that it changed and moved to Appendix?
I would propose to present the proposal to the LAMPS WG during next IETF and ask for their guidance.
The text as it is in there makes perfect sense to me, and essentially describes how our CA works for doing its CA key updates (for probably the past 20+ years).
Current Text: The basis of the procedure described here is that the CA protects its new public key using its previous private key and vice versa. Thus, when a CA updates its key pair it must generate two extra cACertificate attribute values if certificates are made available using an X.500 directory (for a total of four: OldWithOld, OldWithNew, NewWithOld, and NewWithNew).
Proposed Change: RFC4210 describes extra certificates used by a CA to protect its new public key. This method has been shown to be very use case specific and no assumptions are done on this aspect and RootCaKeyUpdateContent is updated to specify the extra fields as optional.
I don't know what is meant by "This method has been shown to be very use case specific"? How has it been shown to be use-case specific? The existing text essentially explains an example of how root CA certificate management works. I guess it is only giving one specific way of doing a CA key update but it is the use case I believe makes the most sense. If you don't make link certificates then existing clients will have to have their trust stores manually updated with the new CA root, or some alternate out of band means for them to retrieve and trust the new root would be required. The link certificates allow them to temporarily verify there is a link of trust between the original trusted root and the new root, and therefore trust the updated root. I guess not everyone needs to use link certificates, but then CA updates are just so much more painful.
So if these CA key management methods aren't written in another RFC, then I think having it is in the scope of this document, it is CMP, and managing a CA's Certificate management is in scope right? If we want to cover other use cases like the non-link cert method, or various out-of-band methods then I would be okay with moving this to an appendix, and at least keep this link cert method and why its useful, and the non-link cert method and its requirement of out-of-band updates (which we can say it out of scope). Then at least the information is captured.
So yes, probably this needs to be mentioned in a LAMPS update
Thanks for sharing your experience.
What I meant with "This method has been shown to be very use case specific" is that there are other standards (some using CMP) that performs CA updates in different ways.Two specific examples:
Most CAs do not use X.500 directories. It doesn't feel right that RFC4210bit mentions specific database technology.
While you can read 4.4 as it is only a discussion of an example method. This is not fully clear. Being under section 4 that is called "Assumptions and Restrictions".
The fact that the link certificates are now Optional in CMPv3 makes me want to update this section, because the 4.4 discussion is not written with this optionality in mind.
About references (thanks for digging them up Hendrik):
This discussion makes me want to keep it as section 4.4, but update it to
Could you agree with that approach?
thanks for the lively discussion. I do not have the experience that you have regarding the variety of PKI usages. I only have my limited scope on the OT space. Therefor I may be a bit shy to change some of the old and mature text in 4210. I do not want to accidently break anything.
The fact that the link certificates are now Optional in CMPv3 makes me want to update this section, because the 4.4 discussion is not written with this optionality in mind.
Section 5.3.19.15 offers a ASN.1 type with optional newWithOld and oldWithNew. This is to support also those entities that may not need the one or the other link certificate. this section says nothing about whether or not a CA should issue it for proper trust establishment in both directions.
I can't find the reference in RFC5280.
RFC5280 refers to RFC 4210 in the Security Considerations saying:
Detailed procedures for "CA
key update" are specified in [RFC4210], where the CA protects its new
public key using its previous private key and vice versa using two
self-issued certificates.
RFC6024 doesn't reference section 4.4 directly but RFC4210 in general so it's ok.
RFC 6042 refers to RFC 4210 with regard to in-band trust anchor update saying:
Routine trust
anchor rekey operations typically require similar out-of-band checks,
though in-band rekey of a trust anchor is supported by the
Certificate Management Protocol (CMP) [RFC4210].
Generally speaking, I also think, theses references should not hinder updating Section 4.4. I also like Tomas proposals. Maybe we can leave LDAP as an example. As said before, I just do not fee comfortable with changing the content of this section due to my limited background on this section and therefore would need strong support by the LAMPS WG or others having this background.
closed after merging PR #54
@primetomas proposed:
[HB] I absolutely support your point. I see Section 4.4 more as a historic and explanatory section. I cannot say, if it has any relevance today. But I know that at least Section 4.1.3 of RFC 7030 is referring to the CA rollover model of CMP pointing to Section 4.4 of RFC 4210. Therefore, I was hesitating to change anything further on this section. Finally, this section does not use normative language (except twice where it is not critical). Therefore, I do not see the need for implementing this as specified here for RFC compliance. But as said, I am open for proposals how to update the section to express the issues you described. Maybe we can also move historic text of this section to an Appendix if people do not want to drop it completely. Could you contribute text for an updates Section 4.4?
@primetomas proposed:
[HB] I do not know, why this section and the ASN.1 definition were added to the document, but they were already part of RFC 2510 :-) I could imagine moving this section together with parts of Section 4.4 to an appendix. Could you address this in your proposal for an updated Section 4.4 as well?