com.aspose.words
Class DigitalSignatureType

java.lang.Object
    extended by com.aspose.words.DigitalSignatureType

public class DigitalSignatureType 
extends java.lang.Object

Utility class containing constants. Specifies the type of a digital signature.

Example:

Shows how to sign documents with X.509 certificates.
// Verify that a document is not signed.
Assert.assertFalse(FileFormatUtil.detectFileFormat(getMyDir() + "Document.docx").hasDigitalSignature());

// Create a CertificateHolder object from a PKCS12 file, which we will use to sign the document.
CertificateHolder certificateHolder = CertificateHolder.create(getMyDir() + "morzal.pfx", "aw", null);

SignOptions signOptions = new SignOptions();
signOptions.setSignTime(new Date());

// There are two ways of saving a signed copy of a document to the local file system:
// 1 - Designate a document by a local system filename, and save a signed copy at a location specified by another filename.
DigitalSignatureUtil.sign(getMyDir() + "Document.docx", getArtifactsDir() + "Document.DigitalSignature.docx",
        certificateHolder, signOptions);

Assert.assertTrue(FileFormatUtil.detectFileFormat(getArtifactsDir() + "Document.DigitalSignature.docx").hasDigitalSignature());

// 2 - Take a document from a stream, and save a signed copy to another stream.
InputStream inDoc = new FileInputStream(getMyDir() + "Document.docx");
try {
    OutputStream outDoc = new FileOutputStream(getArtifactsDir() + "Document.DigitalSignature.docx");
    try {
        DigitalSignatureUtil.sign(inDoc, outDoc, certificateHolder);
    } finally {
        if (outDoc != null) outDoc.close();
    }
} finally {
    if (inDoc != null) inDoc.close();
}

Assert.assertTrue(FileFormatUtil.detectFileFormat(getArtifactsDir() + "Document.DigitalSignature.docx").hasDigitalSignature());

// Please verify that all of the document's digital signatures are valid, and check their details.
Document signedDoc = new Document(getArtifactsDir() + "Document.DigitalSignature.docx");
DigitalSignatureCollection digitalSignatureCollection = signedDoc.getDigitalSignatures();

Assert.assertTrue(digitalSignatureCollection.isValid());
Assert.assertEquals(1, digitalSignatureCollection.getCount());
Assert.assertEquals(DigitalSignatureType.XML_DSIG, digitalSignatureCollection.get(0).getSignatureType());
Assert.assertEquals("CN=Morzal.Me", signedDoc.getDigitalSignatures().get(0).getIssuerName());
Assert.assertEquals("CN=Morzal.Me", signedDoc.getDigitalSignatures().get(0).getSubjectName());

Field Summary
static final intUNKNOWN = 0
           Indicates an error, unknown digital signature type.
static final intCRYPTO_API = 1
           The Crypto API signature method used in Microsoft Word 97-2003 .DOC binary documents.
static final intXML_DSIG = 2
           The XmlDsig signature method used in OOXML and OpenDocument documents.
 

Field Detail

UNKNOWN = 0

public static final int UNKNOWN
Indicates an error, unknown digital signature type.

CRYPTO_API = 1

public static final int CRYPTO_API
The Crypto API signature method used in Microsoft Word 97-2003 .DOC binary documents.

XML_DSIG = 2

public static final int XML_DSIG
The XmlDsig signature method used in OOXML and OpenDocument documents.

See Also:
          Aspose.Words Documentation - the home page for the Aspose.Words Product Documentation.
          Aspose.Words Support Forum - our preferred method of support.