📜  公钥基础结构

📅  最后修改于: 2021-01-12 04:48:56             🧑  作者: Mango


公钥基础结构(PKI)的最大特色是它使用一对密钥来实现基础安全服务。密钥对包括私钥和公钥。

由于公钥在开放域中,因此很可能会被滥用。因此,有必要建立和维护某种受信任的基础结构来管理这些密钥。

密钥管理

不言而喻,任何密码系统的安全性都取决于其密钥的管理安全性。如果没有安全的过程来处理密码密钥,则可能会失去使用强密码方案的好处。

可以看出,加密方案很少会因其设计上的弱点而受到损害。但是,它们通常由于不良的密钥管理而受到损害。

密钥管理的一些重要方面如下:

  • 加密密钥不过是特殊的数据。密钥管理是指加密密钥的安全管理。

  • 密钥管理处理整个密钥生命周期,如下图所示-

密钥管理生命周期

  • 公钥加密的密钥管理有两个特定要求。

    • 私钥的保密性。在整个密钥生命周期中,除了拥有者和被授权使用它们的那些人以外,所有其他方都必须对秘密密钥保持秘密。

    • 保证公钥。在公用密钥加密中,公用密钥位于开放域中,并被视为公用数据。默认情况下,不能保证公钥是否正确,可以与之关联或可以用于什么目的。因此,公钥的密钥管理需要更加明确地关注于公钥目的的保证。

“公钥保证”的最关键要求可以通过公钥基础结构(PKI)来实现,公钥基础结构是一种支持公钥加密的密钥管理系统。

公钥基础结构(PKI)

PKI提供公钥的保证。它提供了公钥及其分配的标识。 PKI的解剖结构包含以下组件。

  • 公钥证书,通常称为“数字证书”。
  • 私钥令牌。
  • 认证中心。
  • 登记机关。
  • 证书管理系统。

数字证书

以此类推,可以将证书视为发给该人的身份证。人们使用身份证(例如驾照,护照)证明自己的身份。在电子世界中,数字证书具有相同的基本功能,但有一个区别。

数字证书不仅可以颁发给人们,还可以颁发给计算机,软件包或其他任何需要证明电子世界身份的证书。

  • 数字证书基于ITU标准X.509,该标准定义了用于公共密钥证书和证书验证的标准证书格式。因此,数字证书有时也称为X.509证书。

    与用户客户端有关的公钥由证书颁发机构(CA)存储在数字证书中,以及其他相关信息,例如客户端信息,到期日期,使用情况,颁发者等。

  • CA对整个信息进行数字签名,并在证书中包含数字签名。

  • 任何需要保证有关客户的公钥和关联信息的人,他都会使用CA的公钥执行签名验证过程。成功的验证可确保证书中提供的公钥属于证书中提供了详细信息的人。

下图描述了通过个人/实体获取数字证书的过程。

数字证书

如图所示,CA接受客户端的申请以证明其公钥。在适当地验证了客户端的身份之后,CA向该客户端颁发数字证书。

认证机构(CA)

如上所述,CA将证书颁发给客户端,并协助其他用户验证证书。 CA负责正确识别要求颁发证书的客户端的身份,并确保证书中包含的信息正确并进行数字签名。

CA的关键功能

CA的关键功能如下-

  • 生成密钥对-CA可以独立或与客户端一起生成密钥对。

  • 颁发数字证书-CA可以看作是护照代理机构的PKI等效项-CA在客户提供凭据以确认其身份后颁发证书。然后,CA对证书进行签名,以防止修改证书中包含的详细信息。

  • 发布证书-CA需要发布证书,以便用户可以找到它们。有两种方法可以实现此目的。一种是发布等效于电子电话簿的证书。另一种是通过一种或另一种方式将您的证书发送给您认为需要的人。

  • 验证证书-CA在环境中提供其公共密钥,以帮助验证其在客户数字证书上的签名。

  • 证书的撤销-有时,CA会由于某些原因(例如,用户破坏私钥或失去对客户端的信任)而撤销颁发的证书。吊销后,CA维护该环境可用的所有吊销证书的列表。

证书类别

证书有四种典型类别-

  • 第1类-通过提供电子邮件地址可以轻松获取这些证书。

  • 2类-这些证书要求提供其他个人信息。

  • 第3类-只有在检查了请求者的身份之后,才能购买这些证书。

  • 第4类-需要高度信任的政府和金融组织可以使用它们。

注册机构(RA)

CA可以使用第三方注册机构(RA)对请求证书的个人或公司进行必要的检查,以确认其身份。 RA在客户端看来可能是CA,但实际上并没有签署已颁发的证书。

证书管理系统(CMS)

它是一个管理系统,通过该系统可以发布,临时或永久吊销,续订或吊销证书。证书管理系统通常不会删除证书,因为可能出于法律原因有必要在某个时间点证明其状态。 CA与关联的RA一起运行证书管理系统,以能够跟踪其责任和义务。

私钥令牌

当客户端的公钥存储在证书上时,关联的私钥可以存储在密钥所有者的计算机上。通常不采用此方法。如果攻击者可以访问计算机,则可以轻松地访问私钥。因此,私钥存储在安全的可移动存储令牌访问中,并通过密码对其进行保护。

不同的供应商经常使用不同的(有时是专有的)存储格式来存储密钥。例如,Entrust使用专有的.epf格式,而Verisign,GlobalSign和Baltimore使用标准的.p12格式。

CA的层次结构

在庞大的网络和全球通信需求的情况下,只有一个受信任的CA才能让所有用户从中获得证书,这实际上是不可行的。其次,如果CA受到损害,则只有一个CA的可用性可能会导致困难。

在这种情况下,由于层次结构认证模型允许在两个通信方与同一CA不具有信任关系的环境中使用公钥证书,因此它是令人感兴趣的。

  • 根CA在CA层次结构的顶部,根CA的证书是自签名证书。

  • 直接隶属于根CA的CA(例如,CA1和CA2)具有由根CA签名的CA证书。

  • 层次结构中下级CA(例如,CA5和CA6)下的CA的CA证书由更高级别的下级CA签名。

证书颁发机构(CA)层次结构反映在证书链中。证书链跟踪证书从层次结构中的分支到层次结构的根的路径。

下图显示了具有证书链的CA层次结构,证书链从实体证书通过两个从属CA证书(CA6和CA3)通向根CA的CA证书。

CA层次结构

验证证书链是确保特定证书链有效,正确签名和可信赖的过程。以下过程从提供用于身份验证的证书开始,验证证书链-

  • 验证其真实性的客户通常会提供其证书,以及直至Root CA的证书链。

  • 验证者通过使用颁发者的公钥来获取证书并进行验证。发行人的公钥位于发行人的证书中,该证书位于客户证书旁边的链中。

  • 现在,如果验证者信任签署了颁发者证书的上级CA,则验证成功,并在此处停止。

  • 否则,将按照与上述步骤中对客户所做的相似方式来验证发行人的证书。该过程将一直持续到找到两者之间的受信任CA为止,否则它将一直持续到根CA为止。