【问题标题】:Explain the Certificate Signature Value field of a X509 Digital Certificate解释 X509 数字证书的证书签名值字段
【发布时间】:2015-06-29 11:30:09
【问题描述】:

由 CA 签名的 X509 数字证书包含这两个字段以及其他字段。 1.签名算法 2.签名值 我了解“签名算法”字段包含 CA 用于签署证书的哈希算法。 “签名值”是在哈希上计算的签名。 我的问题是散列的数据是什么?是作为 CSR(证书签名请求)的一部分还是整个 CSR 的公钥?

【问题讨论】:

    标签: digital-signature x509 digital-certificate


    【解决方案1】:

    形成签名输入的既不是公钥本身,也不是用于请求证书的 CSR。 根据RFC 5280 - Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile

    signatureValue 字段包含根据计算得出的数字签名 ASN.1 DER 编码的 tbsCertificate。 ASN.1 DER 编码 tbsCertificate 用作签名函数的输入。

    syntax of tbsCertificate (tbs = 待签名) 是:

    TBSCertificate  ::=  SEQUENCE  {
         version         [0]  EXPLICIT Version DEFAULT v1,
         serialNumber         CertificateSerialNumber,
         signature            AlgorithmIdentifier,
         issuer               Name,
         validity             Validity,
         subject              Name,
         subjectPublicKeyInfo SubjectPublicKeyInfo,
         issuerUniqueID  [1]  IMPLICIT UniqueIdentifier OPTIONAL,
                              -- If present, version MUST be v2 or v3
         subjectUniqueID [2]  IMPLICIT UniqueIdentifier OPTIONAL,
                              -- If present, version MUST be v2 or v3
         extensions      [3]  EXPLICIT Extensions OPTIONAL
                              -- If present, version MUST be v3
         }
    

    此结构的 DER 编码是计算签名的数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-01
      • 1970-01-01
      • 2013-05-26
      • 1970-01-01
      • 1970-01-01
      • 2010-12-28
      • 2013-06-28
      • 1970-01-01
      相关资源
      最近更新 更多