CA证书与客户端证书相同吗?

lil*_*lil 5 ssl-certificate

CA证书与客户端证书相同吗?

如果不是,我怎样才能获得客户证书?如果是,我如何将其用作客户端证书?

抱歉问了这个愚蠢的问题。

提前致谢。

jon*_*ham 4

服务器证书或客户端证书只是证书,它们只是具有不同的属性。证书树中的每个人(包括最终用户和证书颁发者)都有一个证书,通常是 X509 证书

认证机构是树形结构(树的深度不固定):

Root certication authority of a country (level 0)
  Certification authority 1 (level 1)
    Certification authority 1.1 (level 2)
      End-user 1.1.1 
      End-user 1.1.2
      ...
    Certification authority 1.2 (level 2)
    ... 
  Certification authority 2 (level 1)
  ...
Run Code Online (Sandbox Code Playgroud)

最终用户的证书由证书颁发机构在树的叶子上签名。每个证书颁发机构还拥有一个由父证书颁发机构签名的证书。

根证书颁发机构(0 级)的证书由该根 CA 本身签署。

举1个例子:证书颁发机构A有一个子证书颁发机构B,证书颁发机构B为最终用户C颁发证书。

对于此示例:B 持有的证书和 C 持有的证书不同。B的证书是由A签署的,C的证书是由B签署的。这些证书也肯定是不同的,因为证书的内容不同。

而关于如何获得证书,有两种方法:(1)找到证书颁发机构并要求他们购买证书,(2)使用证书生成软件创建自己的证书。但是,CA颁发的证书具有法律效力,您自己生成的证书不能用于合法地签署任何内容,因此您自己生成的证书只能用作测试证书。

可以将证书文件(.cer、.p12等)导入浏览器;对于 Chrome 浏览器:打开“设置”-->“高级”-->“HTTPS/SSL”-->“管理证书”-->“导入”。文件.cer是X509证书(无私钥),文件.p12是PKCS12证书(包含私钥)。并非所有证书都会被浏览器信任;只有那些由浏览器已知的根 CA 的证书树中的 CA 颁发的证书才是受信任的。