On 13.01.2012 01:02, Dave Thompson wrote:

>>> The verify fails. Why is that? The immediate signature is valid, does
>>> the "verify" command expect to always terminate at a self-signed
>>> certificate?
>>>
> Yes. Or rather the libcrypto routine X509_verify_cert, used by the 
> 'verify' utility and also the SSL handshake logic and also other 
> applications if they wish, insists on reaching a root.

Ah, I figured I'd have to go there. The reason why I was hoping to get
around this is that the OpenSSL code is properly reviewed and auditted
-- I would rather not write code which could have serious sercurity
implications if it's broken (especially since it's not properly reviewed).

>>> Or, in other words: Let's assume I have a ultimate root 
>> (self-signed)
>>> "Root" and a branched CA "X". I would like to trust "X" and all it's
>>> children, but not "Root". Is this not possible?
>>>
> Not in OpenSSL, unless you change the verify logic, or replace 
> or override it with your own (which AFAICS could be done, with 
> some effort, using the optional verify callback). It's not clear 
> to me this is the best policy choice; IE (or I believe actually 
> some Windows feature IE uses) and Firefox and Java (JSSE) all 
> allow you to establish a non-root as a trust anchor. But it's 
> what OpenSSL does, and has for a long time.

Thank you for your clarification. I also do not really see the point why
the anchor of trust has to be self-signed. In my scenario this
restriction actually makes the whole system less secure (since it allows
a superset of certificates to be valid instead of just a tiny subset).

I'll have a look into the custom verify-peer-callback and see how
difficult it is and how easily it can be used.

Best regards,
Joe
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to