class function CompletePadesRemoteSignature(Prepared, Dest: TStream; const Request: TPadesRemoteSigningRequest; const CmsDer: TBytes): Boolean; static;
Recomputes the complete prepared-PDF fingerprint and detached document digest, verifies the saved ByteRange and unused placeholder, validates the returned CMS shape and message-digest binding, and fills the reserved hexadecimal slot without changing any signed byte
All request and CMS checks finish before the destination stream is cleared or written
| Prepared | Exact placeholder PDF produced by PreparePadesRemoteSignature |
| Dest | Destination stream for the completed signed PDF |
| Request | Original or deserialised remote-signing request |
| CmsDer | Complete detached CMS SignedData DER returned by the remote signer |
ValidatePades where cryptographic validation support is available
var
Prepared, Output: TFileStream;
Request: TPadesRemoteSigningRequest;
CmsDer: TBytes;
begin
Request := TPdf.LoadPadesRemoteSigningRequest(RequestStream);
TPdf.CompletePadesRemoteSignature(Prepared, Output, Request, CmsDer);
end;