密码应用——数字证书与PKI
数字证书与PKI
数字证书
非对称加密体制中,公钥的获取途径非常重要。
验证数字签名、保密通信都需要保证公钥真实性
BOB的网站(假的) BOB的个人简介(盗用来的真实信息) Mallory BOB的公钥(其实是Mallory的公钥)
数字证书提供了公钥与其所有者身份的安全绑定 ,安全的自动化的证书管理是PKI的重要功能之一,此外,数字证书可以用来作为身份识别的依据 ,传统的证书可以用来证明身份盖章有效保证身份信息和公钥 (学号)的真实性
数字证书 签名有效
给数字证书签名的是CA(Certificate Authority)
简单来说,数字证书上有持有人的身份信息、公钥信息 、其他信息和CA对上述信息的签名 ,验证CA的签名需要用到他的公钥(证书),因此需要上一级CA对公钥证书签名 ,CA具有层次结构 根CA。
完整的证书内容举例
版本信息
证书序列号,唯一的
签名算法
发行证书CA的名称
有效期限;
证书主体名称;
公钥信息,公钥算法、公 钥值
额外信息扩展
Windwos操作系统里内 置了有许多证书,不 需要验证,可以直接使用其中的公钥 有的是根CA的证书
PKI原理与应用
概述
PKI是“Public Key Infrastructure”的缩 写,意为"公钥基础设施",是一个用非对称密码算法原理和技术实现的、具有通用性的安全基础设施
基础设施——如:水,电 用户不需要了解细节,设备生产厂商也不用
PKI利用数字证书标识密钥持有人的身份,通过对密钥的规范化管理,为组织机构建立和维护一 个可信赖的系统环境,透明地为应用系统提供身份认证、数据保密性和完整性、抗抵赖等各种必要的安全保障,满足各种应用系统的安全需求
PKI是提供公钥加密和数字签名服务的系统,目的是为了自动管理密钥和证书,保证网上数字信 息传输的机密性、真实性、完整性和不可否认性 。
PKI的组成
1.密钥管理中心(KMC):向CA服务提供密钥服务 密钥生成、密钥存储、密钥备份、密钥恢复、密钥托管和密钥运算等
(不直接对用户提供服务只对CA提供服务,攻击面比较小,相对更安全;RSA算法,为了生成RSA的公钥和私钥,需要选择2个大素数,一旦公钥和私钥生成完之后,这2个大素数就需要进行妥善的保管,密钥管理中心即完成此类任务)
2.CA:是PKI的核心,它主要完成生成/签发证书、生成/签发证书撤销列表(CRL)、发布证书和CRL到目录服务器、维护证书数据库和审计日志库等功能 PKI的组成
3.RA:数字证书的申请、审核和注册中心。 是CA认证机构的延伸。在逻辑上RA和CA是一个整体,主要负责提供证书注册、审核以及发证功能
4.发布系统:提供LDAP服务、OCSP服务和注册服务。 注册服务为用户提供在线注册的功能;LDAP提供证书和CRL 的目录浏览服务;OCSP提供证书状态在线查询服务
5.应用接口系统:为外界提供使用PKI安全服务的入口 API(可编程接口、系统调用)、JavaBean、COM等形式。
KMC(Key Management Center)
密钥管理中心,是PKI中的一个重要组成部分 ,负责为CA系统提供密钥的生成、保存、备份 、更新、恢复、查询等密钥服务
一般来说,每一个CA都需要有一个KMC负责该CA区域内的密钥管理任务。
KMC可以根据应用所需PKI规模的大小灵活设置,既可以建立单独的KMC,也可以采用嵌入式的方式KMC,让KMC模块直接运行在CA服务器上
CA(Certificate Authority)
CA指包括根CA在内的各级CA
根CA是整个CA体系的信任源。负责整个CA体系的管理,签发并管理下级CA证书 。根CA一般采用离线工作方式。(更安全)其他各级CA负责本 辖区的安全,为本辖区用户和下级CA签发证书, 并管理所发证书 理论上CA体系的层数可以没有限制的,一般都采用两级或三级CA结构
RA(Registration Authority)
从广义上讲,RA是CA的一个组成部分,负责数字证书的申请、审核和注册
除了根CA以外,每一个CA机构都包括一 个RA机构,负责本级CA的证书申请、审核工作。
RA和CA的关系可以形象的比喻为派出所和公安局
发布系统
LDAP轻型目录访问协议 Lightweight Directory Access ProtocolLDAP提供证书和CRL的目录浏览服务
OCSP提供证书状态在线查询服务,
在线证书状态协议(OCSP)克服了证书注销列表(CRL )的主要缺陷:必须经常在客户端下载以确保列表的更新。当用户试图使用一个证书时,利用在线证书状态协议发送一个对于证书状态信息的请求。服务器回复一个 “有效”、“过期”或“未知”的响应。
注册服务为用户提供在线注册的功能;
PKI标准
X.500
X.500是一套已经被国际标准化组织(ISO) 接受的目录服务系统标准,它定义了一个机构如何在全局范围内共享其名字和与之相关的对象。
X.500被认为是实现目录服务的最佳途径, 具有信息模型、多功能和开放性,但成本较高,速度较慢
X.509
由国际电信联盟(ITU-T)制定的数字证书标准。在 X.500确保用户名称惟一性的基础上,X.509为X.500 用户名称提供了通信实体的鉴别机制,并规定了实体鉴别过程中广泛适用的证书语法和数据接口。
最初版本公布于1988年。最新版本定义了包含扩展信息的数字证书,提供了一个扩展信息字段,用来提供更多的灵活性及特殊应用环境下所需的信息传送
X.500系统仅由主权国家实施,以实现国家身份信息共享条约的实施目的
而IETF的公钥基础设施(X.509)简称 PKIX工作组将该标准制定成适用于更灵活的互联网组织
PKI标准
PKCS系列标准
PKCS是由美国RSA数据安全公司及其合作伙伴 制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证 书内容以及数字签名、数字信封的格式等方 面的一系列相关协议
OCSP在线证书状态协议
OCSP(Online Certificate Status Protocol)是IETF 颁布的用于检查数字证书有效性的标准。
提供PKI用户方便快捷的数字证书状态查询机制,使 PKI体系能够更有效、更安全地在各个领域中广泛应用
LDAP轻量级目录访问协议
简化了X.500目录访问协议,并且在功能性、数据表示 、编码和传输方面都进行了相应的修改
PKI中数字证书的发布流程
(1) 录入用户申请;
(2) 审核提交证书申请;
(3) 索取密钥对;
(4) 返回密钥对;
(5) 签发证书并发布;
(6) 下载证书、制证。
PKI应用举例
访问安全的Internet站点 , 浏览器首先获取并验证目标站点的数字证书,用对方的数字证书中的公钥与对方进行会话密钥协商,验证失败则会提示
VPN(虚拟专用网)利用网络层安全协议(尤其 是IPSec)和建立在PKI上的加密与签名技术来获得机密性保护。基于PKI技术的IPSec协议现在已 经成为架构VPN的基础
安全电子邮件协议S/MIME (The Secure Multipurpose Internet Mail Extension) 一个允许发送加密和有签名邮件的协议。该协议的实现需要依赖于PKI技术。
1 以下哪项不是数字证书中包含的内容
A.证书序列号
B.发行证书CA的名称
C.对称加密算法 √
D.签名算法
2 PKI的全称是
A.公钥基础设施 √
B.公开密钥信息
C.私有密钥设施
D.私有密钥信息
3 PKI的组成中不包含哪项
A.证书权威机构(CA)
B.证书代理机构(RA)
C.密钥管理中心(KMC)
D.证书仲裁机构(JA)√
4 以下哪项不是PKI的应用
A.安全电子邮件协议(S/MIME)
B.访问安全的Internet站点(HTTPS)
C.虚拟专用网(VPN)
D.入侵检测系统(IDS)√
5 以下哪项不是PKI标准
A.PKCS
B.ISO20007 √
C.X.509
D.X.500
密码应用——数字证书与PKI的更多相关文章
- SSL协议与数字证书原理
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...
- OpenSSL 与 SSL 数字证书概念贴
SSL/TLS 介绍见文章 SSL/TLS原理详解(http://seanlook.com/2015/01/07/tls-ssl). 如果你想快速自建CA然后签发数字证书,请移步 基于OpenSSL自 ...
- [转]SSL协议与数字证书原理
1 SSL(Secure Socket Lclientyer)是netscclientpe公司设计的主要用于weserver的安全传输协议.这种协议在WESERVER上获得了广泛的应用. SSL在TC ...
- [svc]数字证书基础知识
数字证书基础原理 数字证书采用PKI(Public Key Infrastructure)公开密钥基础架构技术,利用一对互相匹配的密钥进行加密和解密. 每个用户自己设定一把特定的仅为本人所知的私有密钥 ...
- 基于OpenSSL的PKI的PKI数字证书系统实现
本篇主要介绍了基于OpenSSL的PKI的PKI数字证书系统实现,利用OpenSSL建立一个CA中心的详细解决方案和建立的具体步骤. 1.PKI数字证书系统设计 PKI数字证书系统主要包括证书颁发机构 ...
- Atitti.数字证书体系cer pfx attilax总结
Atitti.数字证书体系cer pfx attilax总结 一.数字证书常见标准 1 数字证书文件格式(cer和pfx)的区别: 1 二.数字证书存储内容 2 X.509是一种非常通用的证书格式. ...
- 基于SSL协议的双向认证 - 数字证书 [2]
1.1 数字证书 1.1.1 概念理解 一种文件的名称,例如一个机构或人的签名,能够证明这个机构或人的真实性.简而言之数字证书是一种网络上证明持有者身份的文件,同时还包括有公钥.证书是由国际 ...
- 数字证书简介及Java编码实现
1.数字证书简介 数字证书具备常规加密解密必要的信息,包含签名算法,可用于网络数据加密解密交互,标识网络用户(计算机)身份.数字证书为发布公钥提供了一种简便的途径,其数字证书则成为加密算法以及公钥的载 ...
- 安全HTTPS-全面详解对称加密,非对称加密,数字签名,数字证书和HTTPS【下】
1. HTTPS 1.1. 什么是HTTPS HTTPS(HypertextTransfer Protocol Secure)即安全的HTTP.HTTPS的安全基础是安全套接层(Secure Soc ...
- 数字签名、数字证书的原理以及证书的获得java版
数字签名原理简介(附数字证书) 首先要了解什么叫对称加密和非对称加密,消息摘要这些知识. 1. 非对称加密 在通信双方,如果使用非对称加密,一般遵从这样的原则:公钥加密,私钥解密.同时,一般一个密钥加 ...
随机推荐
- MyBatis-Plus条件构造器:构建安全、高效的数据库查询
一.关于条件构造器(Wrapper) 1.1 简介 MyBatis-Plus 提供了一套强大的条件构造器(Wrapper),用于构建复杂的数据库查询条件.Wrapper 类允许开发者以链式调用的方式构 ...
- 一些有用的shell命令组合
1.找出Linux系统中磁盘占用最大的10个文件 1)CentOS7 和 busybox 1.30.1 验证可用 find / -type f -print0 | xargs -0 du | sort ...
- 开源 - Ideal库 - 常用时间转换扩展方法(一)
从事软件开发这么多年,平时也积累了一些方便自己快速开发的帮助类,一直在想着以什么方式分享出来,因此有了这个系列文章,后面我将以<开源-Ideal库>系列文章分享一些我认为比较成熟.比较方便 ...
- Go语言:未指定类型的常量(untyped int constant)和大整数的关系
运行下面的代码: 点击查看代码 package main import "fmt" const ( Big = 1 << 100 ) func needFloat(x ...
- Spring AI 再更新:如何借助全局参数实现智能数据库操作与个性化待办管理
引言 好的,今天我们继续聊一下Spring AI的相关内容.在10月的时候,我使用Spring AI搭建了一个简易版的个人助理系统,整体来说效果还是非常不错的.通过这次尝试,我对业务系统与AI结合的探 ...
- 爱科微AIC8800D80P Wi-Fi6模块驱动移植
1. 简介 开发环境Ubuntu20.04 目标平台:瑞芯微RK356X 目标平台内核版本:4.19.234 wifi模块型号:AIC8800D80P Wi-Fi6/BT5.0 2. 硬件 wifi模 ...
- 解密prompt系列42. LLM通往动态复杂思维链之路
最近大家都在探讨和尝试复现OpenAI O1的思考效果,解码出的关键技术方向,包括之前已经探讨过的Inference Time Scaling在推理过程中进行路径决策和选择.但想要更优的Inferen ...
- vivo 游戏中心包体积优化方案与实践
作者:来自 vivo 互联网大前端团队- Ke Jie 介绍 App 包体积优化的必要性,游戏中心 App 在实际优化过程中的有效措施,包括一些优化建议以及优化思路. 一.包体积优化的必要性 安装包大 ...
- equals与”==”的区别
本文由 ImportNew - 刘志军 翻译自 Javarevisited.如需转载本文,请先参见文章末尾处的转载要求. equals()和"=="操作用于对象的比较,检查俩对象的 ...
- tmux之常见问题
1. 使用tmux ls的时候显示错误 failed to connect to server: Connection refused 解决: 查看进程是否存在 ps -aux|grep tmux 发 ...