PKI/CA与证书服务
目录
PKI
PKI(Public Key Infrastructure)公钥基础设施,是提供公钥加密和数字签名服务的系统或平台,目的是为了管理密钥和证书。一个机构通过采用 PKI 框架管理密钥和证书可以建立一个安全的网络环境。
- 利用公开密钥技术建立的提供信息安全服务的在线基础设施。它利用加密、数字签名、数字证书来保护应用、通信或事务处理的安全。
- 是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和数字证书的产生、管理、存储、分发和撤销等功能。
- 如同电力基础设施为家用电器提供电力一样,PKI为各种应用提供安全保障,提供网络信任基础
PKI的基础技术包括:公钥加密、数字签名、数据完整性机制、数字信封(混合加密)、双重数字签名等
PKI体系能够实现的功能有:
- 身份验证
- 数据完整性
- 数据机密性
- 操作的不可否认性
CA
CA(Certificate Authority,证书颁发机构),是PKI系统的核心。CA的作用包括处理证书申请、 发放证书、 更新证书、 接受最终用户数字证书的查询、撤销产生和发布证书吊销列表(CRL) 数字证书归档 等
CA层次结构
多层次结构,优点
- 管理层次分明,便于集中管理、政策制订和实施
- 提高CA中心的总体性能、减少瓶颈
- 有充分的灵活性和可扩展性
- 有利于保证CA中心的证书验证效率
RA
RA(Registtaion Authority,证书注册机构),进行证书申请者的身份认证,向CA提交证书申请请求,验证接收到的CA签发的证书,并将之发放给证书申请者,必要时,还协助证书作废。类似于申请身份证的派出所
LDAP目录服务
LDAP(Lightweight Directory Access Protocol)轻量目录访问协议,证书的存储库,提供了证书的保存、修改、删除和获取的能力。CA采用LDAP标准的目录服务存放证书,其作用与数据库相同,优点是在修改操作少的情况下,对于访问的效率比传统数据库要高
CRL证书作废系统
CRL (Certificate Revocation List):证书撤销列表,也称“证书黑名单”,在证书的有效期期间,因为某种原因(如人员调动、私钥
泄漏等等),导致相应的数字证书内容不再是真实可信。此时,进行证书撤销,说明该证书无效,CRL中列出了被撤销的证书序列号
数字证书
数字证书用于保证密钥的合法性,证书的主体可以是用户、计算机、服务等。证书格式遵循 X.509 标准,数字证书包含: 使用者的公钥、 使用者标识信息(如名称和电子邮件地址) 有效期(证书的有效时间)、 颁发者标识信息 、颁发者的数字签名等。数字证书由权威公正的第三方机构即CA签发。
相关文章:数字证书
证书验证
验证证书的过程是迭代寻找证书链中下一个证书和它相应的上级CA证书。在使用每个证书前,必须检查相应的CRL(对用户来说这种在线的检查是透明的)。用户检查证书的路径是从最后一个证书(即用户已确认可以信任的CA证书)所签发的证书有效性开始,检验每一个证书,一旦验证后,就提取该证书中的公钥,用于检验下一个证书,直到验证完发送者的签名证书,并将该证书中包括的公钥用于验证签名。
- 验证证书链中每一个CA证书
- 上级CA签名的有效性
- 证书有效期
- 是否作废:CRL、OCSP
证书撤销
当PKI中某实体的私钥被泄漏时,泄密私钥对应的公钥证书应被作废。或者如果证书中包含的证书持有者和某组织的关系已经中止,相应的公钥证书也应该被作废。
- 应尽快以电话或书面文件方式通知相应证书的签发CA,在密钥泄漏的情况下,应由泄密私钥的持有者通知CA
- 在关系中止的情况下,由原关系中组织方或相应的安全机构通知相应的RA或CA
- 如果RA得到通知,RA应通知相应的CA
- 一旦请求得到认证,CA在数据库中将该证书标记为已作废,并在下次发布CRL时加入该证书序列号及其作废时间
证书更新
在密钥泄漏的情况下,将产生新的密钥和新的证书;在并未泄漏的情况下,密钥也应该定时更换。
如果CA和其下属的密钥同时到达有效期截止日期,则CA和其下属同时更换密钥,CA用自己的新私钥为下属成员的新公钥签发证
书。
如果CA和其下属的密钥不是同时到达有效期截止日期,当用户的密钥到期后,CA将用它当前的私钥为用户的新公钥签发证书,而到达CA密钥的截止日期时,CA用新私钥为所有用户的当前公钥重新签发证书。
不管哪一种更换方式,PKI中的实体都应该在密钥截止之前取得新密钥对和新证书。在截止日期到达后,PKI中的实体开始使用新
私钥来签名数据,同时应该将旧密钥对和证书归档保存。
PKI系统的构成
完整的PKI系统必须具有 权威认证机构(CA)、证书注册机构(RA)、数字证书库LDAP、密钥备份及恢复系统、证书作废系统CRL、应用接口(API)等基本组成部分,构建 PKI 也将围绕着这五大系统来着手构建
- 权威认证机构(CA):即数字证书的申请及签发机关,CA必须具备权威性的特征,CA是证书的签发机构,它是PKI的核心
- 证书注册审核系统(RA):该系统具有证书的申请、审批、下载、OCSP、LDAP等一系列功能,为整个机构体系提供电子认证服务
- 数字证书库LDAP:x.500目录服务器,用于存储已签发的数字证书及公钥,用户可由此获得所需的其他用户的证书及公钥;
- 密钥备份及恢复系统:如果用户丢失了用于解密数据的密钥,则数据将无法被解密,这将造成合法数据丢失。为避免这种情况,PKI提供备份与恢复密钥的机制。但须注意,密钥的备份与恢复必须由可信的机构来完成。并且,密钥备份与恢复只能针对解密密钥,签名私钥为确保其唯一性而不能够作备份。
- 证书作废系统CRL:证书作废处理系统是PKI的一个必备的组件。与日常生活中的各种身份证件一样,证书在有效期以内也可能需要作废,原因可能是密钥介质丢失或用户身份变更等。为实现这一点,PKI必须提供作废证书的一系列机制。
- 应用接口(API):PKI的价值在于使用户能够方便地使用加密、数字签名等安全服务,因此一个完整的PKI必须提供良好的API应用接口系统,使得各种各样的应用能够以安全、一致、可信的方式与PKI交互,确保安全网络环境的完整性和易用性。
PKI的应用
相关文章:企业证书服务的安装
PKI/CA与证书服务的更多相关文章
- Windows Server中企业证书服务的安装
目录 企业证书服务的安装 证书服务的应用 企业证书服务的安装 企业证书服务是基于域的,所以需要该服务器是域控服务器. 添加角色,勾选 Active Directory 证书服务 然后后面的一直下一步, ...
- 对于PKI(公钥基础结构)及证书服务的通俗理解
对于PKI及证书服务的这些概念,相信初学者会有许多迷惑的地方,那是因为其中的某些关键概念没有理解清楚,我力争以通俗易懂的方式给初学者一些启示,也给以后自己忘了的时候一个参考:) ! 参考资料:http ...
- 自己搭建CA颁发证书做https加密网站
192.168.10.187 CA服务器 192.168.10.190 web服务器 (1)搭建CA cd /etc/pki/CA 在这个目录下创建serial和index.txt两个文件 echo ...
- nginx配置https双向验证(ca机构证书+自签证书)
nginx配置https双向验证 服务端验证(ca机构证书) 客户端验证(服务器自签证书) 本文用的阿里云签发的免费证书实验,下载nginx安装ssl,文件夹有两个文件 这两个文件用于做服务器http ...
- 二进制文件安装k8s所需要的证书服务
利用二进制文件安装etcd所需要的证书服务 CFSSL是CloudFlare开源的一款PKI/TLS工具. CFSSL 包含一个命令行工具 和一个用于 签名,验证并且捆绑TLS证书的 HTTP API ...
- Security基础(三):OpenSSL及证书服务、邮件TLS/SSL加密通信
一.OpenSSL及证书服务 目标: 本案例要求熟悉OpenSSL工具的基本使用,完成以下任务操作: 使用OpenSSL加密/解密文件 搭建企业自有的CA服务器,为颁发数字证书提供基础环境 方案: 使 ...
- 搭建CA颁发证书做https加密网站
92.168.10.187 CA服务器 192.168.10.190 web服务器 (1)搭建CA cd /etc/pki/CA 在这个目录下创建serial和index.txt两个文件 echo 0 ...
- [加密]证书、CA、证书信任链
转自:https://www.jianshu.com/p/6bf2f9a37feb TLS 传输层安全性协定 TLS(Transport Layer Security),及其前身安全套接层 SSL(S ...
- PKI/CA
PKI( Public Key Infrastructure )指的是公钥基础设施. CA ( Certificate Authority )指的是认证中心. PKI从技术上解决了网络通信安全的种种障 ...
随机推荐
- python3 批量处理域名解析
域名批量解析,快速确认域名的存活性及IP地址,脚本中包含了具体的用法和简要说明 #!/usr/bin/env python # -*- coding:utf-8 -*- # python3.6 fro ...
- JAVA-标识符、变量、数据类型
标识符和关键字 所有的标识符否应该以字母a ~ z和 A ~Z ,美元符($).下划线(_)开始. 首字符之后可以是字母a ~ z和 A ~Z ,美元符($).下划线(_)的任意字符组合. 注 ...
- 我与FreeBSD的故事之三
联想G400 是我在国美电器线下买的笔记本.我什么也不懂,就随便买了,不随便也不行,谁都知道只要不是那种特别的奸商,基本上货物都是符合价值决定价格这个基本的经济学规律的.所以没钱就失去了选择的自由.到 ...
- [unknown source] 快乐树
一.题目 题目描述 有一棵 \(n\) 个节点的数,每个点有点权 \(a_i\),定义一条路径的权值为路径上所有点的异或和,求所有路径的权值和,有 \(q\) 次修改,每次改一个点的点权. 数据范围 ...
- python基础学习之类
面向对象和面向过程 面向过程:以吃饭为例,即为 煮饭.洗菜.洗碗.切菜.炒菜.出锅.吃饭面向对象:目标对象做完,直接吃疑问点:1.面向对象就是把过程用函数封装起来,随时调用?:2.面向过程就是每次都把 ...
- android分析之Binder 02
分析Java层的ServiceManager,看看Binder在Java层是如何实现的. public final class ServiceManager { private static fina ...
- vim宏录制的操作
1:在vim编辑器normal模式下输入qa(其中a为vim的寄存器) 2:此时在按i进入插入模式,vim编辑器下方则会出现正在录制字样,此时便可以开始操作. 3:需要录制的操作完成后,在normal ...
- Cup HDU - 2289
题目传送门:https://vjudge.net/problem/HDU-2289 题意:有一个上口小于底部的圆台形水杯,告诉我们水的体积求水高度. 思路:利用高中数学知识求rr然后二分求h,具体化简 ...
- 轻量易用的微信Sdk发布——Magicodes.Wx.Sdk
概述 最简洁最易于使用的微信Sdk,包括公众号Sdk.小程序Sdk.企业微信Sdk等,以及Abp VNext集成. GitHub地址:https://github.com/xin-lai/Magico ...
- 《C++反汇编与逆向分析技术揭秘》--数据类型
浮点数类型 IEEE标准从逻辑上采用一个三元组{S, E, M}来表示一个数N,它规定基数为2,符号位S用0和1分别表示正和负,尾数M用原码表示,阶码E用移码表示.根据浮点数的规格化方法,尾数域的 ...