com.aspose.words

Class PdfDigitalSignatureDetails

  • java.lang.Object
    • com.aspose.words.PdfDigitalSignatureDetails
public class PdfDigitalSignatureDetails 
extends java.lang.Object

Contains details for signing a PDF document with a digital signature.

At the moment digitally signing PDF documents is only available on .NET 2.0 or higher.

To digitally sign a PDF document when it is created by Aspose.Words, set the PdfSaveOptions.DigitalSignatureDetails property to a valid PdfDigitalSignatureDetails object and then save the document in the PDF format passing the PdfSaveOptions as a parameter into the Document.save(java.lang.String,com.aspose.words.SaveOptions) method.

Aspose.Words creates a PKCS#7 signature over the whole PDF document and uses the "Adobe.PPKMS" filter and "adbe.pkcs7.sha1" subfilter when creating a digital signature.

Example:

Shows how to sign a generated PDF document using Aspose.Words.
// Create a simple document from scratch.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.writeln("Test Signed PDF.");

// Load the certificate from disk.
// The other constructor overloads can be used to load certificates from different locations.
CertificateHolder cert = CertificateHolder.create(
    getMyDir() + "morzal.pfx", "aw");

// Pass the certificate and details to the save options class to sign with.
PdfSaveOptions options = new PdfSaveOptions();
options.setDigitalSignatureDetails(new PdfDigitalSignatureDetails(
    cert,
    "Test Signing",
    "Aspose Office",
    new Date()));

// Save the document as PDF with the digital signature set.
doc.save(getMyDir() + "\\Artifacts\\Document.Signed.pdf", options);
See Also:
PdfSaveOptions.DigitalSignatureDetails

Constructor Summary
PdfDigitalSignatureDetails()
Initializes an instance of this class.
PdfDigitalSignatureDetails(CertificateHolder certificateHolder, java.lang.Stringreason, java.lang.Stringlocation, java.util.DatesignatureDate)
Initializes an instance of this class.
 
Property Getters/Setters Summary
CertificateHoldergetCertificateHolder()
void
          
intgetHashAlgorithm()
void
           Gets or sets the hash algorithm. The value of the property is PdfDigitalSignatureHashAlgorithm integer constant.
java.lang.StringgetLocation()
void
setLocation(java.lang.Stringvalue)
           Gets or sets the location of the signing.
java.lang.StringgetReason()
void
setReason(java.lang.Stringvalue)
           Gets or sets the reason for the signing.
java.util.DategetSignatureDate()
void
setSignatureDate(java.util.Datevalue)
           Gets or sets the date of the signing.
PdfDigitalSignatureTimestampSettingsgetTimestampSettings()
void
           Gets or sets the digital signature timestamp settings.
 

    • Constructor Detail

      • PdfDigitalSignatureDetails

        public PdfDigitalSignatureDetails()
        Initializes an instance of this class.
      • PdfDigitalSignatureDetails

        public PdfDigitalSignatureDetails(CertificateHolder certificateHolder, java.lang.String reason, java.lang.String location, java.util.Date signatureDate)
        Initializes an instance of this class.
        Parameters:
        certificateHolder - A certificate holder which contains the certificate itself.
        reason - The reason for signing.
        location - The location of signing.
        signatureDate - The date and time of signing.

        Example:

        Shows how to sign a generated PDF document using Aspose.Words.
        // Create a simple document from scratch.
        Document doc = new Document();
        DocumentBuilder builder = new DocumentBuilder(doc);
        builder.writeln("Test Signed PDF.");
        
        // Load the certificate from disk.
        // The other constructor overloads can be used to load certificates from different locations.
        CertificateHolder cert = CertificateHolder.create(
            getMyDir() + "morzal.pfx", "aw");
        
        // Pass the certificate and details to the save options class to sign with.
        PdfSaveOptions options = new PdfSaveOptions();
        options.setDigitalSignatureDetails(new PdfDigitalSignatureDetails(
            cert,
            "Test Signing",
            "Aspose Office",
            new Date()));
        
        // Save the document as PDF with the digital signature set.
        doc.save(getMyDir() + "\\Artifacts\\Document.Signed.pdf", options);
    • Property Getters/Setters Detail

      • getHashAlgorithm/setHashAlgorithm

        public int getHashAlgorithm() / public void setHashAlgorithm(int value)
        
        Gets or sets the hash algorithm. The value of the property is PdfDigitalSignatureHashAlgorithm integer constant.The default value is the SHA-512 algorithm.
      • getLocation/setLocation

        public java.lang.String getLocation() / public void setLocation(java.lang.String value)
        
        Gets or sets the location of the signing. The default value is null.
      • getReason/setReason

        public java.lang.String getReason() / public void setReason(java.lang.String value)
        
        Gets or sets the reason for the signing. The default value is null.
      • getSignatureDate/setSignatureDate

        public java.util.Date getSignatureDate() / public void setSignatureDate(java.util.Date value)
        
        Gets or sets the date of the signing.

        The default value is the current time.

        This value will appear in the digital signature as an unverified computer time.