Podepisovatelé CMS SubjectKeyIdentifier
HotPDF dokáže identifikovat primárního podepisovatele CMS podle rozšíření X.509 subjectKeyIdentifier namísto názvu emitenta a sériového čísla certifikátu
Výběr identifikátoru
HPDFCMSDefaultOptions nastavuje THPDFCMSSignOptions.SignerIdentifier na cmsidIssuerAndSerialNumber, takže stávající volající zachovají svůj deterministický tvar bajtů CMS
Nastavte pole na cmsidSubjectKeyIdentifier před voláním HPDFCMSBuildSignedDataEx, stavitele CMS založeného na poskytovateli, odhadu placeholderu nebo přetížení podepisování na vysoké úrovni, které přijímá THPDFCMSSignOptions
Options := HPDFCMSDefaultOptions(palBaseline_B_B);
Options.SignerIdentifier := cmsidSubjectKeyIdentifier;
CMS := HPDFCMSBuildSignedDataEx(KeyMaterial, DocumentDigest, Options);
Požadavek na certifikát
Podepisovatelský certifikát musí obsahovat přesně jedno neprázdné rozšíření X.509 s OID 2.5.29.14, jehož hodnota rozšíření obsahuje kompletní DER OCTET STRING
HotPDF selže před podepsáním, když toto rozšíření chybí, je duplicitní, prázdné, zkrácené nebo malformované; nesyntetizuje identifikátor klíče z veřejného klíče
SigningCertificateV2 nadále váže stejný certifikát přes své pole emitenta a sériového čísla, i když SID v SignerInfo používá identifikátor klíče
Formát přenosu a ověřování
Identifikátor klíče je zakódován jako primitivní IMPLICIT [0], SignerInfo.version je 3 a generovaný SignedData.version pro jednoho podepisovatele je 3 podle RFC 5652
Ověřování vyžaduje, aby se bajty SID shodovaly s vloženým rozšířením certifikátu, a odmítá neshodující se hodnoty SID, záznamy emitenta a sériového čísla s verzí podepisovatele jiné než 1, záznamy SKI s verzí podepisovatele jiné než 3 a kontejnery SKI s vnější verzí pod 3
Kompaktní identita je užitečná pro úložiště certifikátů orientovaná na klíče a pracovní postupy, které nezachovávají kódování názvů emitentů, ale konzumní software musí podporovat volbu SKI podle RFC 5652
HPDFCMSBuildCounterSignerInfo nadále používá identity emitenta a sériového čísla; nakonfigurujte primárního podepisovatele přes THPDFCMSSignOptions
Viz moderní poskytovatele podpisů a konzistenci digest algoritmu CMS