4
由CA簽名的X509數字證書包含這兩個字段。 1.簽名算法 2.簽名值 我瞭解「簽名算法」字段包含CA用來簽署證書的哈希算法。而「簽名值」是在哈希上計算的簽名。 我的問題是什麼是散列數據?它是CSR(證書籤名請求)的一部分還是整個CSR的公鑰?解釋X509數字證書的證書籤名值字段
由CA簽名的X509數字證書包含這兩個字段。 1.簽名算法 2.簽名值 我瞭解「簽名算法」字段包含CA用來簽署證書的哈希算法。而「簽名值」是在哈希上計算的簽名。 我的問題是什麼是散列數據?它是CSR(證書籤名請求)的一部分還是整個CSR的公鑰?解釋X509數字證書的證書籤名值字段
它既不是公鑰,也不是用於請求證書的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編碼是在其上簽名計算的數據。