首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >公钥如何包含在企业社会责任中?

公钥如何包含在企业社会责任中?
EN

Security用户
提问于 2020-08-21 14:25:44
回答 1查看 794关注 0票数 2

我阅读了很多关于PKI和数字证书主题的文章,因为很少有一篇文章涵盖了所有方面;而且在开始时这个主题令人困惑(这个漂亮的问题是我最后一次阅读:证书在加密、散列和签名方面是如何工作的?)。

我从我的理解点画了这张图:https://i.stack.imgur.com/sI7Od.png

我有两个问题:

  1. 实际上,我不明白公钥和密文是如何“打包”在一起的(这是我能想到的进入下一步的最好方法!),最后,*.csr文件只是一个普通的base64文本,它们是否被加密在一起,所以绘图中步骤的顺序是不准确的?
  2. 为了验证发送者的身份(例如来自web浏览器),它应该有一个CSR的副本,但据我所知,证书只具有它的散列?

编辑:

  1. 此视频可能有助于理解ANS.1编码:https://www.youtube.com/watch?v=EccHushRhWs
  2. 我按照Marc的答案这里这里IETF/基本证书字段中的规范更正了图表:
EN

回答 1

Security用户

回答已采纳

发布于 2020-08-21 14:35:19

你的图表中有一些误解。

最重要的是,您的两个encrypt框都是错误的,他们应该说sign。在此之后,发送给CA的CSR包括各个字段(包括Subject)和主题的公钥,不涉及任何密文,只涉及普通数据和签名。

RFC2986: PKCS#10:认证请求语法详细介绍了构建企业社会责任的步骤:

代码语言:javascript
复制
The process by which a certification request is constructed involves the following steps:

        1. A CertificationRequestInfo value containing a subject
           distinguished name, a subject public key, and optionally a
           set of attributes is constructed by an entity requesting
           certification.

        2. The CertificationRequestInfo value is signed with the subject
           entity's private key.  (See Section 4.2.)

        3. The CertificationRequestInfo value, a signature algorithm
           identifier, and the entity's signature are collected together
           into a CertificationRequest value, defined below.

主题的公钥(在您的例子中是:申请者)被逐字包含在CSR中,主题信息也是如此。这是使用主题的公钥和所有发送到CA的签名。

不是图表形式,而是构建CSR的步骤,包括哪些数据:构建CSR的正确步骤(不是图表形式)是:

  • 使用:CertificationRequestInfo构建一个
    • Subject Distinguished Name
    • Subject Public Key
    • Other attributes

  • 通过使用Signature和特定算法Signature AlgorithmCertificationRequestInfo进行签名来获得Subject Public Key
  • 通过包含:CSR来构造一个对象
    • CertificationRequestInfo
    • Signature
    • Signature Algorithm

  • 将此CSR blob发送到CA。

注意,CSR仍然包含明文CertificationRequestInfoSubject Public Key

在接收到CSR后,CA将或多或少地执行以下操作:

  • 解析CSR
  • 使用主体的公钥验证签名是否与CSR中的字段匹配
  • 验证各个字段是否符合其要求(例如:如果不证明您拥有域,就不能请求CN=google.com )。
  • 使用CSR中的一些字段来创建一个证书,另一些则使用它本身的字段。
  • 使用其(颁发者)私钥对证书进行签名

最终证书仍然包含主题字段和主体的公钥。

更具体地回答你的两个问题:

  1. 主体的公钥是企业社会责任中的一个领域。什么都没有加密,只是签名而已。
  2. subject字段被复制到最终证书中,它们在那里供任何客户端查看。

您可以在RFC5280中看到证书字段列表。没有CSR的散列,因为不需要它,所有相关信息都被复制到证书的它自己的字段中。

票数 5
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/237392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档