> To avoid duplication of code I'd say such concerns should be addressed > either at the application level or on top of whatever OpenSSL plugin API > is adopted.
I think that would be a serious mistake. I'm specifically thinking of something like the CA cert repository/JSP code in my postgresql library - it's designed to be the store that's published to the world as THE official repository for a CA. If it gets bad data stuffed into it, the security of an entire organization can be quickly compromised. In cases like this I don't think it's acceptable for the backend to depend on the good behavior of the application. There are many cases where you can use a trusting backend and keep all of the key logic in the application. But I don't think you can safely assume that the backend will always accept everything thrown its way. > In such a case > things like duplicate issuer and serial numbers may occur and should be > protected against (at whatever level). I'm beginning to think that the plug-ins will just need to document such things and let the user decide. Even if this is a legitimate concern for an "address book" type application, many sites will only be concerned with their own certs and can guarantee the necessary uniqueness. > I'd say that the actual plugin API should not concern itself with such > details. I agree, but that doesn't mean there's no connection between the two. As a specific example, I think it's now clear that any key returned from a 'findByX' command must be considered opaque. Some backends may use hash-of-certificate, others hash-of-issuer-and-serial-number. This in turn restricts the type of caching that the application itself can do. ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]