Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Why are intermediate certificate authorities required? When would an intermediate certificate be used? How do I verify the chain from the intermediate certificate to the root certificate? What are examples of intermediate certificates that link to root certificates?

share|improve this question

closed as not constructive by techie007, David, Mokubai, Linker3000, studiohack Nov 6 '11 at 3:28

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

3  
Would appreciate people commenting at the very least before voting to close the question. I have no idea why you would want to close it e.g. is it a duplicate, makes no sense, etc –  PeanutsMonkey Oct 17 '11 at 22:11
3  
@Linker3000 - The question is not open-ended as there is clearly an answer nor is it chatty i.e. it is not intended to stir up a conversation. It is to understand how SSL chains work so that if the need arises when implementing SSL certificates it can be done so with an understanding the foundations of SSL chains. –  PeanutsMonkey Oct 18 '11 at 0:18
add comment

1 Answer

up vote 19 down vote accepted

Why are intermediate certificate authorities required? When would an intermediate certificate be used?

Sometimes, to protect the root CA's private key, it is stored in a very secure location and only used to sign a few intermediate certificates, which then are used to issue end entity certificates. In case of compromise, the intermediates can be revoked quickly, without having to reconfigure every single machine to trust a new CA.

Another possible reason is delegation: for example, such companies as Google, which often use many certificates for their own networks, will have an intermediate CA of their own.

How do I verify the chain from the intermediate certificate to the root certificate?

Usually, the end entity (for example, a SSL/TLS web server) provides you with the entire certificate chain, and all you have to do is verify the signatures.

The last in that chain is the root certificate, which you already have marked as trusted.

For example, when you have a chain [user] → [intermed-1] → [intermed-2] → [root], the verification is like this:

  1. Does [user] have [intermed-1] as its "Issuer"?

  2. Does [user] have a valid signature by [intermed-1]'s key?

  3. Does [intermed-1] have [intermed-2] as its "Issuer"?

  4. Does [intermed-1] have a valid signature by [intermed-2]'s key?

  5. Does [intermed-2] have [root] as its "Issuer"?

  6. Does [intermed-2] have a valid signature by [root]'s key?

  7. Since [root] is at the bottom of the chain and has itself as "Issuer", is it marked as trusted?

The process is exactly the same all the time; the existence and count of intermediate CAs does not matter. The user certificate can be signed by root directly, and it will be verified the same way.

What are examples of intermediate certificates that link to root certificates?

See the certificate information of https://twitter.com/ or https://www.facebook.com/ for chains containing three or four certificates. See also https://www.google.com/ for an example of Google's own certification authority.

share|improve this answer
    
Thanks. When you say delegation, how does it help with having their own intermediate certificates? Does it also mean that it has been signed by another trusted root certificate authority? I had a look at Google's certificate however did not see the chain. Can you please upload an image of what you mean? –  PeanutsMonkey Oct 17 '11 at 22:13
    
They're not signed by another trusted root certificate authority, they're signed by their trusted root certificate authority. Typical CAs have several different systems that can sign certificates. If they all actually used the root key, a compromise to one system would destroy the entire CA and render all of their certificates untrustable. –  David Schwartz Oct 17 '11 at 22:27
    
@David Schwartz - Thanks. So in Google's case as an example their root certificate authority is Equifax that have provided them the ability to create intermediate certificates. Is that right? –  PeanutsMonkey Oct 17 '11 at 22:41
2  
That is correct. Most likely, Equifax holds the key needed to sign certificates issued by that intermediate CA, but Google has an interface to allow them to sign certificates without human intervention on Equifax's part. If Google ever abuses the privilege, Equifax can use their root authority to revoke Google's intermediate CA authority. –  David Schwartz Oct 17 '11 at 23:00
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.