Take the 2-minute tour ×
Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. It's 100% free, no registration required.

To get a public key of some organization or someone we want to send an encrypted message to, we need to make a request to CA asking that organization's public key. CA then returns X509 certificate. It contains CA's signature. To decrypt it we need to have a CA's public key. How can we securely obtain CA's public key?

Related:
- How can we get CA's public key?
- I've got my private key compromised. How does CRL work?
- What happens when a root CA has its private key compromised?

share|improve this question
1  
CA public keys are shipped with OS or applications like browsers. –  CodesInChaos Nov 13 '13 at 15:25
    
If the CA cert is self signed (not cross-certified by any CA that is shipped with your OS or browser and thus trusted) then you have to obtain it by some means and to check if it is the original one. For instance, download it from some trusted location and check the hash value of the certificate (where the hash value is typically also published at the trusted location). –  DrLecter Nov 13 '13 at 15:32
2  
@CodesInChaos: make that an answer. –  David Cary Nov 13 '13 at 15:55
add comment

1 Answer

up vote 1 down vote accepted

You can search for root certificates of a given CA.

E.g.:

From there when you want to check a certificate you can check whether it belongs to/was signed by a root CA you trust. If you trust it, then you can get its public key.

More commonly as CodesInChaos said, trusted certificates are shipped with your OS/browser.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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