PKI PMI
PKI
公钥基础设施 public key infrastructure
遵循标准的,利用公钥理论和技术建立的提供安全服务的基础设施
**目的:**身份认证,点滴信息不完整,不可抵赖,提供可靠安全服务
**任务:**可信任数字身份
PKI概念
组成
- 证书机构
- 注册机构
- 证书发布库
- 密钥备份恢复
- 证书撤销
- PKI接口
应用: 认证,数据完整性/保密性,不可否认,公证
CA系统功能
- 正数 生成/颁发/撤销/更新/归档
- CA自身管理
- 日志审计
- 密钥恢复
数字认证中心
- 发放管理数字证书
- 身份认证服务、证书签发,签发后生命周期的管理
- 证书状态
- 证书需要撤销的时候发布证书撤销通知
- 维护证书档案、证书相关审计
注册机构(RA)
- 数字证书注册审批机构、认证中心的延申
- RA按照特定政策和管理规范,对用户审查,操作发放证书,撤销证书的操作
RA功能
- 填写/提交用户注册信息
- 审核
- 发送生成证书申请
- 发放证书
- 登记黑名单
- 证书撤销列表管理
- 日志审计
- 安全保证
证书发布库:
- CA存放/撤销证书的列表
- 分布式存放
- LDAP目录服务器支持分布式存放
PKI基本概念
- 备份和恢复针对加解密钥,无法对签名密钥备份 —— 数字签名,为了不可否认,有事件性要求,不可备份恢复
- 若公私钥用于数据加密,则CA可对用户私钥备份:用户丢失密钥可以恢复
如何撤销?
- 周期性发布机制 CRL 证书撤销列表 Certificate Revocation List
- 在线查询机制 OCSP Online C二体覅擦特Status Protocol
数字证书
用户身份+公钥(被打包好),权威机构CA正式他的身份 —— 机构对身份和公钥打包好的证书进行数字签名 —— 证书有效性
细节
information
- Subject name 主体名
- Public Key 公钥
- Serial Number
- Valid From/To 有效期
- Isuer Name 签发名
最终用户联系注册机构(RA),注册机构(RA)联系证书机构(CA)
RA —— 接受、验证用户的注册信息,生成user密钥,接受授权证书撤销请求
CA —— 签发证书
步骤
- 密钥生成
- 注册
- 验证
- 证书生成
密钥生成
- 主体生成密钥对,公私钥
- 公钥 to RA
- 私钥给自己
- RA给主体用户生成密钥对
- 用户的私钥
- 用户的公钥
注册
主体写好内容
- 版本
- 主题名
- 公钥
- 属性
- 签名算法、前面
私钥加密后发给RA(可能附带其他注册信息和证明)
验证
RA看材料
检查私钥拥有证明 proof of possession
- RA要求用户用私钥对证书的请求签名 —— 进行数字签名。
- RA生成随机数挑战 : 用户公钥加密 —— 加密后挑战值给用户,用户需要私钥解密。 —— 通过验证
- RA将数字证书用公钥加密,发给user,user用私钥解密得到证书。
生成
- RA把细节给CA
- CA验证后生成数字证书
- CA发给user
- CA的证书目录保留记录
CA签名证书: 详见chapter 9 23
消息摘要字段,除了数字证书的最后一个字段外,其他都经过消息摘要算法变成消息摘要。 然后CA私钥经过数字签名算法得到数字签名 —— 数字签名作为数字证书最后一个字段,保存CA的私钥
数字证书验证:
全部的消息摘要,通过摘要算法变成MD1 —— 这里为啥多了一个signature呢。感觉是不是写错了。。
拿出数字签名(最后一段),CA公钥解密(签名验证算法)得到MD2
对比MD1和MD2,有效接受
如果用户A,B需要验证证书链,则A需要一致验证B的上一层CA,直到验证到他们公共信任的CA//有些根CA不一样,可能还得交叉验证(如美国和日本的根CA)
信任模型
基于X.509的信任模型
- 通用层次结构 子CA给最终实体——用户,服务器,代码发证书,双向信任
- 下属层次信任模型 通用层次模型自己,所有用户的公共信任
- 网状模式 —— 所有根CA之前对等关系课进行交叉任职,任何两个根CA之间安全通信也要交叉认证,可能需要C(2,n)个交叉认证协议
- 混合信任模型 —— 层次+网状
- 桥CA —— 交叉认证中心:提供交叉证书,而非证书路径的根(都是同级)
- 信任链 —— 可信任的根
数字证书的撤销状态检查机制
- 脱机撤销:
- CRL 证书撤销列表
- 链接撤销状态检查
- OCPS 联机证书验证协议
- SCVP 简单证书验证协议
OCSP过程
- 客户机发送Digital certificate,产生OCSP请求询问OCSP服务器,证书是否有效。
- OCSP相应其查询X.500目录
- OCSP响应器进行响应
漫游证书
- 原理:用户证书,私钥放于中央服务器
- 用户登录本地系统,从server检索公钥私钥对,放于本地内存
- 内存完成工作后,软件删除本地系统的用户证书、私钥
- 用户登录 安全服务器
- 安全服务器通过目录查询 user,pswd,certificate,key file
- 安全服务器给客户机数字证书,私钥文件
PKI体系 PKIX模型
注册 初始化 认证 密钥对恢复 密钥生成 密钥更新 交叉证书 撤销
包含
- 操作协议 —— 基础协议
- 管理协议 —— 支持不同PKI实体
- 策略大纲 —— 证书策略的文档
- 时间标注、数据证书服务 —— 前者用于签名消息,后者用于验证数据正确性
拓扑结构 —— 详见page 42
密钥管理(KMC) —— 签发系统 —— 注册系统——证书发布——在线证书状态查询
PKI实例
详见44
核心服务
- 认证 —— 身份识别和鉴别。 鉴别包括数据来源鉴别,数据来源鉴别
- 完整性——数据未修改,可以用消息认证码 MAC
- 保密性
让实体证明他们为所申明的身份
重要数据没有被修改
发送数据只能由接收方读懂
支撑服务
- 不可否认性
- 安全时间戳
- 公证
PMI 授权管理设施
定义:属性证书、属性权威、属性证书框架的集合体。
主题 | 诠释 |
---|---|
属性权威 | 生成,签发属性证书AC的机构 |
属性证书 | 对实体权限绑定。被数字签名的数据结构 |
属性证书框架 | 构建权限管理基础设施PMI的基础。支持访问控制等 |
PMI于PKI关系
PKI | PMI | |
---|---|---|
证书 | PKC公钥 | AC属性 |
颁发者 | 证书机构 | 属性机构 |
接收者 | 证书主体 | 证书持有者 |
绑定 | 主题名字+公钥 | 持有者+n个特权属性 |
撤销 | 证书撤销列表CRL | 属性证书撤销列表ACRL |
根 | 根CA or 信任锚 | 权威源SOA |
子机构 | 子CA | AA |
验证者 | 可信方 | 特权验证 |
总结:PKI证明user是谁并存于公钥证书,PMI证明user能干啥,PMI建立在PKI的可信身份认证服务上,提供交互。以属性证书形式授权
PMI机制
基于Kerberos
- 软硬件实现,快于非对称密码
- 不便于密钥管理,单点失败
- 适用试试事务处理环境的授权管理
策略服务器
- 高度集中,单点管理
- 通信瓶颈
- 适于地理位置集中
属性证书
- 失败拒绝(优点
- 性能低
- 支持不可否认服务