THPDFCSCSignatureProvider Class
THPDFCSCSignatureProvider = class(THPDFSignatureProvider)
function Sign(const Request: THPDFSignatureProviderRequest;
out Signature: TBytes): THPDFSignatureProviderStatus; override;
function SignHashBatch(const Requests: THPDFCSCSignatureRequests;
const OperationIdentifier: AnsiString;
out Signatures: THPDFCSCSignatures): THPDFSignatureProviderStatus;
function EstimateSignatureSize(const Request: THPDFSignatureProviderRequest;
out SignatureBytes: Integer): THPDFSignatureProviderStatus; override;
procedure Cancel(const OperationIdentifier: AnsiString); override;
function RefreshCredentialInfo(const OperationIdentifier: AnsiString = ''):
THPDFSignatureProviderStatus;
function GetCertificateChain: THPDFCSCCertificateChain;
function TimestampDigest(const Digest: TBytes;
const DigestAlgorithmOID, Nonce, OperationIdentifier: AnsiString;
out TimestampToken: TBytes): THPDFSignatureProviderStatus;
end;
O provedor é serializado na fronteira de operações de credencial, de modo que um SAD de uso único não possa sofrer race entre assinaturas concorrentes, enquanto o cancelamento permanece chamável de forma independente
SignHashBatch aceita um array ordenado e limitado de requisições de digest que compartilham um digest e um algoritmo de assinatura, e depois retorna um array de assinaturas correspondente por posição
spcSafeSignRetry é anunciado apenas quando a idempotência estável está habilitada