《HTTPS权威指南》读书笔记——PKI

  • 互联网公钥基础设施
    • 基于可信的第三方机构(CA,certification authority)实现不同成员在不见面的情况下进行安全通信
    • 订阅人
      • 需要证书来提供安全服务的团体
    • 登记机构(RA)
      • 完成证书签发的相关管理工作,如对用户进行必要的身份认证
    • 证书颁发机构(CA)
      • 确认用户身份后颁发证书
      • 在线提供其所签发证书的最新吊销信息
    • 信赖方
      • 执行证书验证的网页浏览器、其他程序及操作系统
  • 证书
    • 证书是包含公钥、订阅人相关信息以及证书颁发者数字签名的数字文件
    • 抽象语法表示法1(ASN.1)是支持复杂数据结构和对象的定义、传输、交换的一系列规则
    • X.509依赖于唯一编码规则(DER),只允许一种方式编码ASN.1的值
    • PEM是DER使用Base64编码后的ASCII编码格式
    • 证书字段
      • 版本:共3个版本,版本1只支持简单字段、版本2增加了2个标识符、版本3增加了扩展功能
      • 序列号:序列号需要是无序的且至少包括20位的熵
      • 签名算法:证书签名所用的算法
      • 颁发者(issuer):包含颁发者的DN,根据不同的实体会包含其他的部分。
      • 有效期:包含开始时间和结束时间
      • 使用者(suject):使用者的实体DN,和公钥一起用于证书签发,在自签名证书中,使用者和颁发者字段的DN是一样的。如今使用者字段已经废弃转而使用使用者可选名称扩展
      • 公钥:使用者公钥信息
    • 证书扩展:包含唯一的对象标识符(OID)、关键扩展标识器以及ASN.1格式的值
      • 使用者可选名称:支持通过DNS、IP地址、URI来将多个身份绑定在一起
      • 名称约束:可以限制CA签发证书的对象,比如只允许2级CA签发该公司的所拥有域名的证书
      • 基础约束:用来表明证书是否是CA证书,同时通过路径长度(path length)约束字段,限制二级CA证书路径的深度
      • 密钥用法:定义了证书中密钥可用的场景。
      • 扩展密钥用法:为了更加灵活的支持和限制公钥的使用场景
      • 证书策略:包含一个或多个策略每个策略都包含一个OID和可选限定符,其主要作用是表明证书是在何种条款下下发的。
      • CRL分发点:该扩展用于确定证书吊销列表(CRL)的LDAP或HTTP URL地址。每张证书都应该包含CRL和OCSP吊销信息
      • 颁发机构信息访问:表明如何访问签发CA提供的额外信息和服务
      • 使用者密钥标识符:用于识别包含特别公钥的证书
      • 授权密钥标识符:签发此证书的CA的唯一标识符,用于在构建证书链时,找到颁发者的证书
    • 证书链
      • 保证根证书的安全:直接由根证书签发最终实体证书是不允许的
      • 交叉证书:交叉证书是可以让新CA立即投入运营的唯一方式,通过已经广泛内置浏览器的CA对新CA进行签名
      • 划分:CA会将不同的操作分散给很多二级CA,二级CA一般使用自动化签发程序进行签发
      • 委派:CA允许某个外部CA可以给其内部系统进行签名
    • 证书生命周期
      • 证书的生命周期从订阅人将CSR提交给CA的时候就开始了
posted @ 2019-12-03 00:06  豫让  阅读(505)  评论(0编辑  收藏  举报