失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 密码学之PKI体系学习笔记

密码学之PKI体系学习笔记

时间:2021-08-17 04:48:35

相关推荐

密码学之PKI体系学习笔记

文章目录

公钥基础设施(PKI)PKI的组成要素用户认证机构仓库认证机构的工作生成密钥对注册证书作废证书与CRL对证书的攻击在公钥注册前进行攻击注册相似人名进行攻击

公钥基础设施(PKI)

公钥基础设施(Public-Key Infrastructure)是为了能够更有效的运用公钥而制定的一系列规范和规格的总称。公钥基础设施一般根据其英文缩写而简写成PKI。

PKI是一个总称,而并指某一个单独的规范或者规格。下图为PKI的基本要素(用户、认证机构和仓库)以及认证机构所负责的工作。

PKI的组成要素

PKI的组成要素主要有以下三个:

用户————使用PKI的人认证机构————颁发证书的人仓库————保存证书的数据库

不过由于PKI中用户和认证机构不仅限于“人”(可能也是计算机),因此我们可以给他们起一个特殊的名字,叫做实体。实体就是进行证书和密钥相关处理的行为主体。

用户

用户就是像Alice、Bob这样使用PKI的人,包括两种:一种是希望使用自己的KPI注册自己公钥的人,另一种是希望使用已注册的公钥的人。

【注册公钥的用户所进行的操作】

生成密钥对(也可以由认证机构生成)在认证机构注册公钥向认证机构申请证书根据需要申请作废已注册的公钥解密接收到的密文对消息进行数字签名

【使用已注册公钥的用户所进行的操作】

将消息加密后发送给接收者验证数字签名

认证机构

认证机构(Certification Authority, CA)是对认证书进行管理的人。认证机构主要所进行的操作如下:

生成密钥对(也可以由用户生成)在注册公钥时对本人身份进行认证生成并颁发证书作废证书

认证机构的工作中,公钥注册和本人身份认证这一部分可以交给注册机构(Registration Authority, RA)来分担。

仓库

仓库(Repository)是一个保存证书的数据库,PKI用户在需要的时候可以从中获取证书,它的作用优点像打电话时候的电话本。仓库也叫做证书目录

认证机构的工作

生成密钥对

生成密钥对有两种方式:一种是由PKI用户来自行生成,一种是由认证机构来生成。

注册证书

在用户自行生成密钥对的情况下,用户会请求认证机构来生成证书。认证机构根据其认证业务准则对用户的身份进行认证,并生成证书。在生成证书的时候,需要使用认证机构的私钥来进行数字签名。生成的证书格式是由X.509定义的。

作废证书与CRL

当用户的密钥丢失、被盗取的时候,认证机构需要对证书进行作废处理。此外,即使私钥安装安然无恙,有时候也需要作废证书,例如公司的用户离职将导致其失去私钥的使用权限。

纸质证书只要撕毁即可,但是对于这里的证书来说是数字的。即使从仓库中删除也无法作废,因为用户会保存证书的副本,但认证机构也不能入侵用户的电脑将副本删除。

要作废证书,认证机构需要一张证书作废清单,简称为CRL。

CRL是认证机构宣布作废证书的一览表,具体来讲,是一张已经作废的证书序列号的清单,并由认证机构加上数字签名。证书序列号是认证机构颁发的时候所赋予的编号,在证书当中都会记载。

PKI用户需要首先从认证机构中获取最新的CRL,并查询自己是用于签名验证(或者用于加密)的公钥是否已经作废。这个步骤很重要。

对证书的攻击

由于证书实际上使用的是数字签名的技术,因此针对数字签名的所有攻击方法对证书都是有效果的。

在公钥注册前进行攻击

证书是认证机构对公钥及其持有者的信息加上数字签名的产物,由于加上数字签名之后非常难以攻击,因此我们考虑对事假数字签名之前的公钥进行攻击。

假设Bob生成了密钥对,并准备在认证机构注册自己的公钥。再认证机构进行数字签名之前,主动攻击者Mallory将公钥替换为自己的公钥。这样,认证机构就会对“Bob的个人信息”和“Mallory的公钥”这个组合进行数字签名。

要防止这种攻击,我们可以采取如下措施:例如Bob可以在公钥发送给认证机构进行注册的时候,使用认证机构的公钥对Bob的公钥进行加密。此外,在认证机构确认Bob的身份的时候,也可以将公钥的指纹一并发送给Bob请他确认。

注册相似人名进行攻击

证书是认证机构对公钥及其持有者信息加上数字签名的产物,对于一些相似的信息,计算机可以进行区别,但人类往往容易认错,从而可以用来被攻击。

例如,假设Bob的用户信息中名字的部分是:

Name = Bob (首字母大写)

而Mallory用另一个类似的用户信息:

Name = BOB (所有字母大写)

注册了另一个不同的公钥。这个公钥名字叫做BOB,但实际上是Mallory的公钥。

随后,Mallory伪装成Bob,将

Name = BOB的公钥发送给Alice。Alice看到证书中的用户信息,很可能九江BOB错误的认为是自己要发送消息对象的Bob。

要防止这种攻击,认证机构必须确认证书中所包含的信息是否真的是其持有者的个人信息,身份确认失败的时候则不向其颁发证书。

如果觉得《密码学之PKI体系学习笔记》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。