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