THPDFHeadlessDocument.SignToFile
function SignToFile(FieldIndex: Integer; const FileName: string;
const CertificatePEM, PrivateKeyPEM: SysUtils.TBytes;
const Options: THPDFHeadlessCMSOptions;
ReservedCMSBytes: Integer = 16384): THPDFHeadlessCMSResult;
Signerar ett befintligt osignerat AcroForm-signaturfält och publicerar atomärt en oberoende utdata på nativ Linux eller Windows
FieldIndex är det nollbaserade formulärfältindex som FindFormField eller GetFormFieldreturnerar, vilket kan skilja sig från ett signerad-signatur-index som VerifySignature
accepterar; certifikatet och matchande privat nyckel måste vara PEM-byte; krypterade privata nycklar avvisas utan att fråga, och OpenSSL 3 läses in via samma leverantör som HPDFSignHeadlessCMS
ReservedCMSBytes reserverar ett fast hexadecimalt Contents-gap före hashningen; det måste vara positivt, rymmas i dokumentobjektbudgeten och rymma den completa genererade CMS DER:n
Standardprofilen är adbe.pkcs7.detached; RequireCAdES=true skriver ETSI.CAdES.detached och inkluderar ett signeringscertifikat-attribut, och dokumentverifiering autentiserar dess ESS-bindning automatiskt, med explicit CA-förtroende utvärderat separat
Skrivaren kopierar källbyttena, lägger till ersatta fältvärden och ett nytt signaturobjekt genom den gemensamma xref-skrivaren, patchar fasta ByteRange-platser, signerar de faktiska stagingfil-intervallen och verifierar den resulterande CMS:n före spolning och atomär publicering
Varje äldre godkännandesignatur behåller sina exakta ursprungliga byte; dess verifieringsresultat rapporterar en giltig tidigare revision och antalet senare osignerade byte
Källan öppnas skrivskyddad, den inlästa fältgrafen ändras inte av signeringen, och källsökvägsalias eller fysiska filalias avvisas
Fel bevarar en befintlig destination och tar bort den opublicerade stagingfilen, inklusive avbrott, otillräckliga reservationer, certifikat/nyckelfel, kryptografiska fel samt objekt- eller filbudgettömning
Skrivskyddade fält, signerade fältvärden, icke-tillåtna certifierad-dokument-policyer och nekad AES-formulärifyllningsbehörighet avvisas; ägarautentisering kan auktorisera begränsade källor, medan utdata behåller det ursprungliga användarlösenordet och säkerhetspolicyn
CertificationPermission från 1 till 3 skapar en första certifieringssignatur med katalogens Perms.DocMDP och en SigRef-transform; noll skapar en godkännandesignatur, inklusive en tillåten efterföljande signatur i ett befintligt fält under DocMDP P2 eller P3
Dokument- och CMS-alternativen måste använda samma avbrottstoken om båda specificerar en; i annat fall ärver CMS-leverantören dokumenttoken
Det returnerade THPDFHeadlessCMSResult skiljer integritet från explicit utvärderat CA-förtroende; ingen tidsstämpel-, spärr- eller långtidsvalideringsslutsats antyds
Använd AddSignatureField och SetSignatureFieldAppearance för att förbereda en ny synlig signaturwidget, eller SignPFXToFile för att läsa in en PKCS12-identitet genom OpenSSL 3
Använd TimestampToFile för att lägga till en fristående RFC3161-dokumenttidsstämpel utan ett applikationssigneringsidentitet