局域网场景SSL证书的生成及使用

概念

  1. CA(Certificate Authority)证书授权中心 -- 数字证书发放和管理机构
  2. 证书 - 为公钥加上数字签名
    注: 公钥证书(PKC,Public-Key Certificate)类似于驾照,其中包括姓名、地址等个人信息和专属的公钥,然后由认证机构(CA)添加数字签名,公钥证书也简称证书(Certificate)。
  3. 根证书CA认证中心给自己颁发的证书,是信任链的起始点。
    注:安装根证书意味着对这个CA认证中心的信任,一般商业认证机构的根证书会默认导出在浏览器中。

应用场景

  1. Bob生成秘钥对
  2. Bob在认证机构Trent注册自己的公钥
    Bob将公钥发送给认证机构Trent;
    认证机构收到公钥后会核实Bob身份(身份确认和认证业务准则);
    核实通过后对Bob的公钥添加数字签名(证书 = 公钥 + 数字签名)。
  3. 认证机构Trent用自己的私钥对Bob的公钥添加数字签名并生成证书
  4. Alice获得Bob的证书(Bob公钥 + Trent私钥添加的数字签名)
  5. Alice通过Trent的公钥验证证书的数字签名,确认Bob公钥的合法性
  6. Alice得到Bob的公钥并使用公钥给Bob发数据
  7. Bob用自己的私钥解密Alice发来的密文

证书标准规范

X.509 v3版本规范(RFC5280)

格式

X.509规范中一般推荐使用PEM(Privacy Enhanced Mail)格式来存储证书相关的文件。证书文件的文件名后缀一般为.crt或.cer。对应私钥文件的文件名后缀一般为.key。证书请求文件的文件名后綴为.csr。有时候也统一用pem作为文件名后缀。PEM格式采用文本方式进行存储。一般包括首尾标记和内容块,内容块采用Base64进行编码。
** 总结 **
X.509 DER(Distinguished Encoding Rules)编码,后缀:.der .cer .crt
X.509 BASE64编码(PEM格式), 后缀: .pem .cer .crt
** 解析工具 **

openssl 工具命令:openssl x509 -in ca-cert.pem -inform pem -noout -text

公钥基础设施(PKI)

PKI 是 Public Key Infrastructure 的缩写,其主要功能是绑定证书持有者的身份和相关的密钥对(通过为公钥及相关的用户身份信息签发数字证书),为用户提供方便的证书申请、证书作废、证书获取、证书状态查询的途径,并利用数字证书及相关的各种服务(证书发布,黑名单发布,时间戳服务等)实现通信中各实体的身份认证、完整性、抗抵赖性和保密性

单向认证和双向认证

单向认证

双向认证

mkcert-局域网认证

  1. 生成CA根证书和私钥
mkcert -install //生成CA根证书和私钥
mkcert -CAROOT //查看生成路径
  1. 签发证书
mkcert 127.0.0.1 192.168.12.10 //添加证书认证地址,生成的证书和私钥用于服务端部署,认证机构通过私钥来给新生成的证书添加数字签名(生成证书)。
  1. 客户端导入CA根证书(认证中心公钥)添加信任认证机构
  2. 已信任认证机构(已导入CA根证书)的客户端可解码服务端发送过来的证书(服务端公钥 + 认证机构数字签名,机构数字签名需要机构公钥来解码)

证书可信三要素

  1. 由可信的CA机构签发

  2. 访问地址跟证书认证地址相符

  3. 证书在有效期内

posted @ 2021-05-11 20:36  Jefflnb  阅读(1176)  评论(0编辑  收藏  举报