Класс THPDFCSCSignatureProvider
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;
Provider сериализуется на границе credential-операций, поэтому одноразовый SAD не может участвовать в гонке между параллельными подписями, при этом отмена остаётся независимо вызываемой
SignHashBatch принимает ограниченный упорядоченный массив digest-запросов с общим алгоритмом digest и подписи, а возвращает массив подписей, соответствующий по позициям
spcSafeSignRetry анонсируется только при включённой стабильной idempotency