Pdf |
Represents a digital ID used to delay-sign (deferred-sign) or re-sign a PDF file.
A PdfDelayOrReSignDigitalId does not perform the actual signing because it contains only a PdfCertificate (with a public key) and no private key. Instead, a PdfDelayOrReSignDigitalId is used in the following process:
The PdfSigner instances used in the delay-sign and re-sign should have equal properties so that the signature content created by re-signing fits into the delay-signed signature content that it replaces.
Delay-signing is also possible with Sign(FuncStream, Byte, PdfSignatureFormat, Int32) method, but then you must take care to provide the appropriate value of the estimatedSignatureContentsLength parameter that should be large enough to contain the entire signature content created when re-signing the PDF file. If the PdfCertificate is not available when performing the delay-sign, then delay-signing must be done by using the Sign(FuncStream, Byte, PdfSignatureFormat, Int32) method. The first parameter of that method should return an array of bytes whose value is zero of the estimatedSignatureContentsLength length. Note that if Format is not PKCS7, then delay-signing with Sign(FuncStream, Byte, PdfSignatureFormat, Int32) method is difficult because hash provided to the external signer is not ComputeHash(PdfHashAlgorithm) as explained in the Message Digest Calculation Process.
The PdfDelayOrReSignDigitalId type exposes the following members.
Name | Description | |
---|---|---|
PdfDelayOrReSignDigitalId | Initializes a new instance of the PdfDelayOrReSignDigitalId class. |
Name | Description | |
---|---|---|
Hash | Gets the hash of either delay-signed (if the Signature is ) or re-signed (if the Signature is not ) PDF file. In the case of a delay-signing the Hash should be passed to an external signer for signing and the returned signature should be set to the Signature and the PDF file should be re-signed. | |
Signature | Gets or sets the signature with which the PDF file should be re-signed. Should be if the PdfDelayOrReSignDigitalId is used for delay-sign. |