HPDFCMSSignPDFStreamWithProvider

Подписывает существующий placeholder подписи PDF через callback-, удалённый, аппаратный или определённый приложением provider

Объявление

function HPDFCMSSignPDFStreamWithProvider(InputStream, OutputStream: TStream;
  const CertificateDER: TBytes; Provider: THPDFSignatureProvider;
  const KeyIdentifier: AnsiString; const Options: THPDFCMSSignOptions;
  CancellationToken: THPDFCancellationToken): Boolean;

Перегрузка без CancellationToken ведёт себя так же, и функция сохраняет прежние проверки бюджета CMS placeholder

InputStream должен содержать placeholder /ByteRange и /Contents, записанные подписанным полем подписи

Options.DigestAlgorithm выбирает SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-384 или SHA3-512 для диапазонов байтов, подписанных атрибутов, запроса к provider и опциональных меток времени

Функция копирует данные через ограниченный буфер 256 KB, точечно правит placeholder фиксированной ширины через seek и может использовать один и тот же seekable stream на чтение и запись для входа и выхода, не удерживая полную вторую копию PDF

Когда подключённый PDF MAC выбирает тот же digest, путь подписания переиспользует digest диапазона байтов из общего потокового сканирования