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