HPDFSignHeadlessCMS

function HPDFSignHeadlessCMS(Source: TStream;
  const ByteRange: array of Int64;
  const CertificatePEM, PrivateKeyPEM: SysUtils.TBytes;
  const Options: THPDFHeadlessCMSOptions): SysUtils.TBytes;

De functie tekent de gedeclareerde bronbereiken met een expliciet PEM-certificaat en een niet-versleutelde PEM private key via OpenSSL 3, geeft DER CMS SignedData met detached content terug en herstelt de bronpositie in caller-eigendom

De bron wordt incrementeel gelezen via dezelfde begrensde BIO die de verifier gebruikt; PEM-invoer en gegenereerde DER moeten in MaxCMSBytes passen, en de getekende bereiken moeten in MaxSignedBytes passen

RequireCAdES voegt het ESS signing-certificate-attribute toe tijdens CMS-generatie; valideer het resultaat met een expliciet trusted CA-bestand wanneer CAdES-verificatie vereist is

Private keys blijven byte-arrays in caller-eigendom; het OpenSSL-key-object wordt na het signeren vrijgegeven, en de functie vraagt nooit om een key-wachtwoord

Versleutelde PEM-keys, certificaat/key-mismatches, ongeldige bereiken, annulering, runtime-fouten en output-limit-falen raisen EHPDFHeadlessCMSError

Deze primitive genereert alleen CMS; hij maakt geen PDF signature-veld aan, reserveert geen PDF Contents-ruimte, publiceert geen getekende PDF en neemt geen contact op met een timestamp- of revocation-service