HPDFSignHeadlessCMS

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

Funktionen signerar de deklarerade källintervallen med ett explicit PEM-certifikat och en okrypterad PEM-privatnyckel via OpenSSL 3, returnerar DER CMS SignedData med fristående innehåll och återställer den anroparägda källpositionen

Källan läses inkrementellt genom samma avgränsade BIO som verifieraren använder; PEM-indata och genererad DER måste rymmas i MaxCMSBytes, och de signerade intervallen måste rymmas i MaxSignedBytes

RequireCAdES lägger till ESS-attributet signing-certificate under CMS-genereringen; validera resultatet med en explicit betrodd CA-fil när CAdES-verifiering krävs

Privata nycklar förblir anroparägda byte-arrayer; OpenSSL-nyckelobjektet frigörs efter signering, och funktionen frågar aldrig efter ett nyckellösenord

Krypterade PEM-nycklar, matchningsfel mellan certifikat och nyckel, ogiltiga intervall, avbrott, runtime-fel och misslyckade utdatagränser ger EHPDFHeadlessCMSError

Primitiven genererar endast CMS; den skapar inget PDF-signaturfält, reserverar inget utrymme i PDF Contents, publicerar ingen signerad PDF och kontaktar ingen tidstämpel- eller återkallningstjänst