公钥基础设施( PKI )

什么是证书

要开车得先考驾照,驾照上面记有本人的照片、姓名、出生日期等个人信息,以及有效期、准驾车辆的类型等信息,并由公安局在上面盖章。我们只要看到驾照,就可以知道公安局认定此人具有驾驶车辆的资格。

公钥证书( Public-Key Certificate, PKC )其实和驾照很相似,里面记有姓名、组织、邮箱地址等个人信息,以及属于此人的公钥,并由认证机构( Certification Authority. Certifying Authority, CA )施加数字签名。只要看到公钥证书,我们就可以知道认证机构认定该公钥的确属于此人。公钥证书也简称为证书( certificate)。

什么是公钥基础设施

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

PKI只是一个总称,而并非指某一个单独的规范或规格。例如,RSA公司所制定的PKCS ( Public-Key Cryptography Standards,公钥密码标准)系列规范也是PKI的一种,而互联网规格RFC ( Request for Comments)中也有很多与PKI相关的文档。X.509这样的规范也是PKI的一种。

PKI的组成要素

PKI的组成要素主要有以下3个。

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

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

用户

用户包括两种:

  • 一种是希望使用PKI注册自己的公钥的人
  • 另一种是希望使用已注册的公钥人。

我们来具体看一下这两种用户所要进行的操作。

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

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

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

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

认证机构( CA)

认证机构( Certification Authority, CA )是对证书进行管理的人。

认证机构具体所进行的操作如下:

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

认证机构的工作中,公钥注册和本人身份认证这一部分可以由 注册机构 ( Registration Authority, RA)来分担。这样一来,认证机构就可以将精力集中到颁发证书上,从而减轻了认证机构的负担。不过,引入注册机构也有弊端,比如说认证机构需要对注册机构本身进行认证,而且随着组成要素的增加,沟通过程也会变得复杂,容易遭受攻击的点也会增加。

仓库

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

为什么需要证书

如果从认证机构获取公钥,就可以降低遭到中间人攻击的风险。因为带有证书的公钥是经过认证机构进行数字签名的,事实上无法被篡改。

猜你喜欢

转载自blog.csdn.net/luckydog612/article/details/80557068
PKI