[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Way forward - updating RFC 3161
Title: Re: Way forward - updating RFC 3161
Denis,
I have seen your response and waited to see if someone is stepping up to support you, but it seems that you are quite alone in your urge to update the terminology and role separation of the time stamping protocol.
My primary issue is not whether the role separation is accurate and well motivated. The central issue for me is why it need to be included in the protocol specification.
Note that we have a very similar situation with PKI. The CA issues certificates, but in practice the CA will delegate the signing to a “unit” and may delegate authorization of attributes to “Registration Authority”. Still, the CA is ultimately the responsible party and not any “unit” or other subordinate entity or process. The same is true for a TSA. The TSA is the responsible entity and as such the entity that is represented by the certificate of the service, even if that certificate indicates which unit under the TSA control that actually signed the Time-stamp.
As long as this does not reflect any bits on the wire, it would just be confusing to define the role separation structure behind the service as part of the protocol.
This is where I think you have failed to convince us.
Unless I hear new convincing arguments, I will treat the answers on this list as a rough consensus decision to NOT make a full replacement of RFC 3161, but merely provide an update document with ESSCertIDv2 and possibly similar minor updates, but to drop alignment with RFC 3628 terminology.
/Stefan
On 09-07-10 3:55 PM, "Denis Pinkas" <denis.pinkas@xxxxxxxx> wrote:
No doubt that everybody agrees that RFC 3161 should be updated to allow the use of RFC 5035 [ESSV2].
The question is whether other changes should also be made.
The major differences from RFC 3161 [RFC3161] are summarized on page 3 of the draft and are listed below:
1 - the document has been aligned with RFC 3628 to make the
difference between a time-stamping unit (TSU) and a TSA.
2 - the document makes the difference between a time-stamping
service and a time-stamping unit and allows a time-stamping
service to support more than one time-stamping unit.
3 - the format of the subject field of a TSU certificate is now
defined.
and also some minor updates :
4 - informative references to ISO 18014-1 [ISO18014-1],
ISO 18014-2 [ISO18014-2] and ISO 18014-3 [ISO18014-3] have been
added.
5 - a new normative ASN1 module to refer to the ASN.1 modules
from the latest RFCs.
At the moment, RFC 3161 makes confusion between three different concepts:
a TSA, a TSS and a TSU, respectively a Time-Stamping Authority,
a Time-Stamping Service and a Time-Stamping Unit.
IMO, the document should be cleaned to call a spade a spade.
Historically, the notions applicable to TSAs have been copied and pasted
from the documents related to CAs. Since a CA had one private key, a TSA
had one private key as well, but this was short looking.
The CA advertises one public key, or more exactly one trust anchor, usually
by issuing a self-signed certificate. This private key, when in use,
is supported by one HSH (Hardware Security Module). This private key needs
to be saved in order to be restored in case of a problem. The time for restoration
is usually not critical (this may take a few minutes or even a few hours).
The life time of a CA certificate (or CA public key) is usually between one and
15 years and should not be changed earlier, unless strictly needed.
In order to provide time-stamp tokens (TSTs) with high availability, more than
one TSU is usually needed. These units altogether provide a TSS (Time-Stamping Service)
that is managed by an Authority called a TSA (Time-Stamping Authority).
The key used to sign TSTs is not the key from a TSA, but the key from a TSU.
In order to a high level of security, the key used to sign to TSTs should NOT be saved
and restored. It should be generated by the TSU itself and should NOT be exported
outside the TSU. If the key of the TSU is erased purposely or by accident, a new key pair
and certificate should be generated. Since TSU certificates are provided by a CA,
TST verification systems do not need to change any trust anchor. Some TSUs may even
use short-lived TSU certificates, e.g. a TSU certificate valid for one week or even one day.
However, it is necessary to be able to know the name of the TSA when looking at the
subject DN from the TSU certificate.
Along these lines, several changes should be made to RFC 3161. To mention a few of them:
RFC 3161:
If the TSA does not recognize the hash
algorithm or knows that the hash algorithm is weak (a decision left
to the discretion of each individual TSA), then the TSA SHOULD refuse
to provide the time-stamp token by returning a pkiStatusInfo of
'bad_alg'.
Proposed change :
If the TSS does not recognize the hash
algorithm or knows that the hash algorithm is weak (a decision left
to the discretion of each individual TSA), then the TSS SHOULD refuse
to provide the time-stamp token by returning a pkiStatusInfo of
'bad_alg'.
RFC3161:
The certificate identifier (ESSCertID) of the
TSA certificate MUST be included as a signerInfo attribute inside a
SigningCertificate attribute.
Proposed change:
The certificate identifier (either ESSCertID or ESSCertIDv2) of the TSU certificate
MUST be included as a signerInfo attribute inside a SigningCertificate attribute.
RFC 3161:
The serialNumber field is an integer assigned by the TSA to each
TimeStampToken.
Proposed change:
The serialNumber field is an integer assigned by the TSU to each
TimeStampToken.
RFC 3161:
genTime is the time at which the time-stamp token has been created by
the TSA.
Proposed change:
genTime is the time at which the time-stamp token has been created by
the TSU.
RF3161:
The purpose of the tsa field is to give a hint in identifying the
name of the TSA.
Proposed change:
The purpose of the tsu field is to give a hint in identifying the
name of the TSU.
Note that the difference between a TSU and a TSA that is already present
in RFC 3628 (Informational) is also present in ISO 18014 and in ETSI TS 102 023.
All these documents have been issued after RFC 3161.
Even, if the bits on the wire are the same, the meaning of these bits
would not necessarily be the same. For example, the ESSCertID refers to
a certificate from a TSU, not from a TSA.
Since the changes to be done are scattered around the document, a new draft
would seem more appropriate, hence why a new draft has been proposed.
>From another angle, should we have an update to RFC 3161 or a new draft?
An update would have to advantage to keep the magic number 3161 that everybody
identifies with TSP.
In any case, I believe that both the ESSCertIDv2 and the terminology aspects
should be addressed to align RFC 3161 with the documents issued after it.
Denis
----- Message reçu -----
De : Stefan Santesson <mailto :stefan@xxxxxxxxxxx>
À : Pope,Nick,ietf-pkix <mailto :Nick.Pope@xxxxxxxxxxxxxxxxxxxx,ietf-pkix@xxxxxxx>
Date : 2009-07-09, 13:13:15
Sujet : Re: Way forward - updating RFC 3161
I conclude that the list so far is unanimous in its view of not accepting the approach of draft-ietf-pkix-rfc3161bis-01.
Even though we have not heard the opinion of the draft author, It feels that we will have a strong consensus for just making a short update document.
/Stefan
On 09-07-01 12:47 PM, "Pope, Nick" <Nick.Pope@xxxxxxxxxxxxxxxxxxxx> wrote:
Stefan,
I also agree with the approach of updating RFC 3161. Changing the model of RFC 3161 is only going to cause confusion.
The implementation architecture concepts used in the earlier proposal are already described in RFC 3628 and so I see no need for further steps on that aspect.
Nick
-----Original Message-----
From: Stefan Santesson [mailto:stefan@xxxxxxxxxxx]
Sent: 01 July 2009 02:00
To: ietf-pkix@xxxxxxx
Cc: Denis Pinkas; Pope, Nick
Subject: Way forward - updating RFC 3161
We need to resolve how to update RFC 3161 with respect to allowing support of RFC 5035 (ESSV2)
One particular reason is because ETSI ESI is dependent on progression of this issue in PKIX.
I would like to open this issue up for debate and then hopefully conclude this issue, possibly after a straw poll.
My personal opinion, and what I interpret as the general opinion of this working group is that we should reject draft-ietf-pkix-rfc3161bis-01 as basis for updating rfc 3161. This draft intends to obsolete RFC 3161 and introduces major changes to terminology and role description to align RFC 3161 with the informational document RFC 3628.
It is problematic to introduce such major changes to a standard that is widely deployed. It is neither required from a protocol implementation perspective as these changes are not intended to change any bits on the wire. The optional usage of ESSV2 does not motivate a total rewrite of the current standard, but is better handled in an update RFC.
If description of roles and responsibilities that so not change any bits on the wire need to be clarified in relation to RFC 3628 and RFC 3161, then this should be handled either as an update to RFC 3628 or as a separate informational document.
/Stefan