[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[IETF-PKIX] FW: [IETF-PKIX] OCSP Current Status
I submitted this message to the list yesterday, but I haven't seen it
show up yet. My apologies to anyone who receives it twice.
>----------
>From: Robert Zuccherato
>Sent: Tuesday, February 24, 1998 11:46 AM
>To: 'IETF X.509-based public key infrastructure mailing list'
>Cc: 'mmyers@verisign.com'
>Subject: RE: [IETF-PKIX] OCSP Current Status
>
>Mike;
>
>----------
>From: Michael Myers[SMTP:mmyers@verisign.com]
>Sent: Monday, February 23, 1998 10:59 PM
>To: IETF-PKIX@LISTS.TANDEM.COM
>Subject: Re: [IETF-PKIX] OCSP Current Status
>
>You raise a number of very good points which I hope to resolve at the LA
>IETF. These are my views. In the interests of expediency, I suggest we
>convene an ad-hoc subgroup at LA to deal with these issues and deliver to
>PKIX our joint resolution.
>
>I think that there are more than just a few people who are interested in this
>draft. Meeting in the back room of a smokey bar doesn't allow for full,
>public discussion of these ideas. Why don't we try and resolve these issues
>on the list.
>
>-----Original Message-----
>From: Robert Zuccherato <robert.zuccherato@entrust.com>
>To: 'IETF X.509-based public key infrastructure mailing list'
>
>>1) You continue to maintain that OCSP gives "timely" status information
>>and does so "efficiently and rapidly". I guess this statement depends
>>on what your definition of "timely" is. It seems to me however, that
>>there is a tradeoff. In order to get current status information, the
>>responder must produce only fresh responses and sign each one. This
>>does not seem to be efficient and rapid, and certainly isn't scalable.
>>In order to be scalable, the responder must use pre-produced responses
>>and chaching. This doesn't provide timely status information (at least
>>no more than using a CRL). I think the document should make this choice
>>clear. Many people still believe that OCSP can give them both current
>>status information and scalability.
>
>OCSP is an interface specification; it exists to ensure interoperability
>between two endpoints. The quality of service delivered by those endpoints
>is more a matter of system engineering. By analogy, consider that some
>Internet throughput needs are met by a 28K modem while other environments
>need, say, an OC3-size pipe. In either case, TCP/IP flows across the wire
>to accomplish the interface.
>
>Presently, the draft talks about "timely" status information, being able to
>"efficiently and rapidly determine status information", using caching and
>response pre-production, using a nonce, etc. It doesn't mention that using a
>nonce to produce timely status information does not allow efficient and rapid
>status information to be provided to a large number of people. It doesn't
>mention that using caching and response pre-production doesn't allow timely
>status information. These are not only system engineering problems, they are
>security issues. This service has been advertised as providing up-to-date
>revocation status, but it cannot do so under all circumstances. This should
>be made clear to all those using the service.
>
>>2) The draft still has no explanation of how one is to get the
>>verification key for the OCSP responder. The document should clearly
>>explain that there are (at least) two options. You can have the key
>>installed, but then you cannot revoke it. If you run into trouble with
>>the responder's key, it is the same as losing the CA's key, you have to
>>start over. Or, you can issue the OCSP responder a certificate and
>>revocation is possible by placing the certificate on an ARL.
>
>Here again I would assign this scope to a systems-level key management
>document. The diversity of options at this layer of the architecture
>strongly suggests there can be no one standard way of managing an OCSP
>responder's key(s). Further, there's no reason that OCSP should operate in
>isolation of CRLs. Again, I would leave this up to the PKI systems
>engineers to choose the configuration that best meets their local security
>policy needs. Bearing in mind that the primary intent of revocation in this
>case would be to inhibit further use of a private key, one very effective
>way of revoking a responder's key is to take away its PCMCIA token, assuming
>that particulary key management decision was made by the system architect.
>
>I agree that there doesn't have to be one standard way to manage an OCSP
>responder's key(s). Implementer's must be made aware, however, that if you
>choose one option, revocation is not possible, and if you choose another
>option, revocation is possible, but you must place the responder's key on an
>ARL. This is a basic security requirement for an OCSP responder and should
>be discussed in the document, regardless of some future systems-level key
>management document.
>
>>3) The server still responds with VALID and INVALID, but certificates
>>are only valid with respect to a specific certification path and
>>explicitly stated policy. There is a policy extension, but there is no
>>way to pass in a certification path for which validity is to be
>>determined. Also, it appears to me that the responder doesn't have to
>>pay attention to the policy extension. The service as presently
>>designed, really indicates whether or not a certificate is revoked, and
>>the responses should reflect this.
>
>May I ask that you provide a link-by-link example of how such chains would
>work in practice, starting with the public key needed to validate the
>signature on the subject certificate? By "link" I mean "x-signs-y".
>
>Surely I don't have to explain how to do certificate path validation. In
>order to validate a certificate, both a certificate path and a policy OID are
>required. Policy mappings will not allow this to be done one certificate at
>a time. If you do not want to allow both a certificate chain and policy OID
>in the request, then the best you can do is to determine the revocation
>status of the certificate. If you want to determine certificate validity,
>then you must give the responder both the certificate chain and policy.
>
>>4) Unsigned error messages are still allowed. This, of course, allows
>>anyone to produce responses to an OCSP request. The statement is made
>>"It is reasonable to ask for error messages to be signed to address this
>>vulnerability." I do not see how to ask for only signed responses in
>>the request however.
>
>Provision for unsigned responses was in response to an observation that
>within an enterprise, one may already be operating with a secure enclave and
>so have little need of the overhead of signature production. If you and
>others agree that this provision is unwise, I have no problem striking it
>from the draft. I do fear however that such a practice would evolve anyway,
>so we should also keep in mind the utility of maintaining the provision as
>a means of achieving some level of interoperability.
>
>Again, since this is a security issue, the fact that unsigned messages should
>only be used within a secure enclave should be explicitly mentioned in the
>draft. Otherwise, signed error messages must be used.
>
>Regarding the notion of an element in the query to specify signed vs.
>unsigned responses, I would put it the other way around: the client SHOULD
>be capable of handling either. I doubt that an organization operating a
>responder that produces signed responses (ostensibly for the purposes of
>non-repudiation) would be willing upon request to produce any other type.
>Similarly, an organization that choses for reasons of expediency to not
>sign responses would most likely not be well positioned to selectively
>produce signed responses.
>
>Presently, the draft allows a server to produce all signed, all unsigned, or
>any combination of signed/unsigned error responses. Your comment in the
>third paragraph of Section 5 seems to indicate that signed messages can be
>requested by the client. Unless we specify exactly when signed/unsigned
>responses can be used (for example in a secure enclave, as discussed above),
>we should provide the mechanism that you allude to. We should allow clients
>to request a signed error message in situations where it is not clear what
>they will get back, and they want to be sure someone isn't just sending back
>the unsigned response.
>
>>6) Do we really have to do this using ABNF grammar and HTTP? ASN.1
>>would seem more appropriate, and general purpose.
>
>In short, yes. This topic was discussed and closed at D.C. It enables ease
>of implementation.
>
>See other messages on the list, posted by others, on this topic.
>
> Robert.
>
>
>