HPDFCMSSignPDFStreamWithProvider

기존 PDF 서명 플레이스홀더를 콜백, 원격, 하드웨어 또는 애플리케이션이 정의한 provider로 서명합니다

선언

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

CancellationToken 없는 overload는 같은 동작을 쓰며 이 함수는 기존 CMS placeholder 예산 검사를 유지합니다

InputStream은 서명된 signature 필드가 출력한 /ByteRange와 /Contents placeholder를 담아야 합니다

Options.DigestAlgorithm은 byte range, 서명 속성, provider 요청, 선택적 timestamp에 대해 SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-384, SHA3-512 중 하나를 고릅니다

이 함수는 256 KB 한도 버퍼로 복사하고 고정폭 플레이스홀더를 seek으로 패치하며, 두 번째 PDF 전체를 보관하지 않고 입출력에 같은 seek 가능한 읽기·쓰기 스트림을 쓸 수 있습니다

첨부된 PDF MAC이 같은 다이제스트를 고르면 서명 경로는 공유 스트리밍 스캔의 byte-range 다이제스트를 재사용합니다