HPDFSignHeadlessCMS
function HPDFSignHeadlessCMS(Source: TStream; const ByteRange: array of Int64; const CertificatePEM, PrivateKeyPEM: SysUtils.TBytes; const Options: THPDFHeadlessCMSOptions): SysUtils.TBytes;
Funktionen signerer de deklarerede kildeintervaller med et eksplicit PEM-certifikat og en ukrypteret PEM-privatnøgle via OpenSSL 3, returnerer DER CMS SignedData med detached indhold og gendanner kalderens kildeposition
Kilden læses inkrementelt gennem den samme afgrænsede BIO, som verificatoren bruger; PEM-input og genereret DER skal være inden for MaxCMSBytes, og de signerede intervaller skal være inden for MaxSignedBytes
RequireCAdES tilføjer ESS signing-certificate-attributten under CMS-generering; valider resultatet med en eksplicit betroet CA-fil, når der kræves CAdES-verifikation
Private nøgler forbliver kalder-ejede byte-arrays; OpenSSL-nøgleobjektet frigøres efter signering, og funktionen spørger aldrig efter en nøgleadgangskode
Krypterede PEM-nøgler, certifikat-/nøgle-mismatch, ugyldige intervaller, cancellation, runtime-fejl og outputgrænse-fejl udløser EHPDFHeadlessCMSError
Denne primitiv genererer kun CMS; den opretter ikke et PDF-signaturfelt, reserverer ikke PDF Contents-plads, publicerer ikke en signeret PDF og kontakter ikke en timestamp- eller revocation-tjeneste