Search code examples
sslopensslssl-certificateclient-certificates

What's the physical differences between server and client certificate?


I know their logical differences, their intended ways to use. What I want to know are, how both certificates differs in the procedure of generation, of their actual contents.

Suppose you'll generate a self-signed some certificate with following procedure:

  1. generating a private CA certificate, assume that you've got "ca.crt".
  2. generating a private key as openssl genpkey -algorithm RSA -out key.pem -outform PEM.
  3. generating a CSR as openssl req -new -key key.pem -keyform PEM -out req.pem -outform PEM.
  4. signing to the CSR as openssl ca -in req.pem -out cert.pem -cert ca.crt -keyfile key.pem -keyform PEM.

I searched the web a lot but I couldn't find out whether the procedure above and the contents of generated certificate get differed when I generate a server certificate and a client certificate.

Your answers are greatly appreciated. Thank you.


Solution

  • There is no difference in the format. Both are X.509 certificates with the use-for-SSL bit set.