Table of Contents

Class TimeStampInformation

Namespace
Syncfusion.Pdf.Security
Assembly
Syncfusion.Pdf.Portable.dll

Specifies the timestamp information from the signature

public class TimeStampInformation
Inheritance
TimeStampInformation
Inherited Members

Examples

// Loads an existing document
PdfLoadedDocument document = new PdfLoadedDocument(fileName);
// Gets the signature field
PdfLoadedSignatureField signatureField = document.Form.Fields[0] as PdfLoadedSignatureField;
// Validate signature and get validation result
PdfSignatureValidationResult result = signatureField.ValidateSignature();
// Gets the timestamp information from the signature
TimeStampInformation timeStampInformation = result.TimeStampInformation;
// Close the document
document.Close(true);
' Loads an existing document
Dim document As PdfLoadedDocument = New PdfLoadedDocument(fileName)
' Gets the signature field
Dim signatureField As PdfLoadedSignatureField = document.Form.Fields[0] As PdfLoadedSignatureField
' Validate signature and get validation result
Dim result As PdfSignatureValidationResult = signatureField.ValidateSignature()
' Gets the timestamp information from the signature
Dim timeStampInformation As TimeStampInformation = result.TimeStampInformation
' Close the document
document.Close(true)

Constructors

TimeStampInformation()

public TimeStampInformation()

Properties

Certificate

Gets the timestamp certificate.

public X509Certificate2 Certificate { get; }

Property Value

X509Certificate2

Examples

// Loads an existing document
PdfLoadedDocument document = new PdfLoadedDocument(fileName);
// Gets the signature field
PdfLoadedSignatureField signatureField = document.Form.Fields[0] as PdfLoadedSignatureField;
// Validate signature and get validation result
PdfSignatureValidationResult result = signatureField.ValidateSignature();
// Gets the timestamp information from the signature
TimeStampInformation timeStampInformation = result.TimeStampInformation;
// Checks whether the signature signed with timestamp alone
bool documentTimeStamp = timeStampInformation.IsDocumentTimeStamp;
//Gets the timestamp certificate.
X509Certificate2 certificate2 = result.TimeStampInformation.Certificate;
// Close the document
document.Close(true);
' Loads an existing document
Dim document As PdfLoadedDocument = New PdfLoadedDocument(fileName)
' Gets the signature field
Dim signatureField As PdfLoadedSignatureField = document.Form.Fields[0] As PdfLoadedSignatureField
' Validate signature and get validation result
Dim result As PdfSignatureValidationResult = signatureField.ValidateSignature()
' Gets the timestamp information from the signature
Dim timeStampInformation As TimeStampInformation = result.TimeStampInformation
' Checks whether the signature signed with timestamp alone
Dim documentTimeStamp As Boolean = timeStampInformation.IsDocumentTimeStamp
'Gets the timestamp certificate.
Dim certificate2 AS X509Certificate2 = result.TimeStampInformation.Certificate
' Close the document
document.Close(true)

IsDocumentTimeStamp

Checks whether the signature signed with timestamp alone

public bool IsDocumentTimeStamp { get; }

Property Value

bool

Examples

// Loads an existing document
PdfLoadedDocument document = new PdfLoadedDocument(fileName);
// Gets the signature field
PdfLoadedSignatureField signatureField = document.Form.Fields[0] as PdfLoadedSignatureField;
// Validate signature and get validation result
PdfSignatureValidationResult result = signatureField.ValidateSignature();
// Gets the timestamp information from the signature
TimeStampInformation timeStampInformation = result.TimeStampInformation;
// Checks whether the signature signed with timestamp alone
bool documentTimeStamp = timeStampInformation.IsDocumentTimeStamp;
// Close the document
document.Close(true);
' Loads an existing document
Dim document As PdfLoadedDocument = New PdfLoadedDocument(fileName)
' Gets the signature field
Dim signatureField As PdfLoadedSignatureField = document.Form.Fields[0] As PdfLoadedSignatureField
' Validate signature and get validation result
Dim result As PdfSignatureValidationResult = signatureField.ValidateSignature()
' Gets the timestamp information from the signature
Dim timeStampInformation As TimeStampInformation = result.TimeStampInformation
' Checks whether the signature signed with timestamp alone
Dim documentTimeStamp As Boolean = timeStampInformation.IsDocumentTimeStamp
' Close the document
document.Close(true)

IsValid

Checks whether the timestamp is valid or not

public bool IsValid { get; }

Property Value

bool

Examples

// Loads an existing document
PdfLoadedDocument document = new PdfLoadedDocument(fileName);
// Gets the signature field
PdfLoadedSignatureField signatureField = document.Form.Fields[0] as PdfLoadedSignatureField;
// Validate signature and get validation result
PdfSignatureValidationResult result = signatureField.ValidateSignature();
// Gets the timestamp information from the signature
TimeStampInformation timeStampInformation = result.TimeStampInformation;
// Checks whether the timestamp is valid or not
bool isValid = timeStampInformation.IsValid;
// Close the document
document.Close(true);
' Loads an existing document
Dim document As PdfLoadedDocument = New PdfLoadedDocument(fileName)
' Gets the signature field
Dim signatureField As PdfLoadedSignatureField = document.Form.Fields[0] As PdfLoadedSignatureField
' Validate signature and get validation result
Dim result As PdfSignatureValidationResult = signatureField.ValidateSignature()
' Gets the timestamp information from the signature
Dim timeStampInformation As TimeStampInformation = result.TimeStampInformation
' Checks whether the timestamp is valid or not
Dim isValid As Boolean = timeStampInformation.IsValid
' Close the document
document.Close(true)

SignerCertificates

Gets an array of PdfSignerCertificate objects that represent the certificates belonging to the signers associated with the signature timestamp.

public PdfSignerCertificate[] SignerCertificates { get; }

Property Value

PdfSignerCertificate[]

Examples

//Loads an existing document.
PdfLoadedDocument document = new PdfLoadedDocument("Input.pdf");
//Gets the signature field.
PdfLoadedSignatureField signatureField = document.Form.Fields[0] as PdfLoadedSignatureField;
//Validates signature and gets the validation result.
PdfSignatureValidationResult result = signatureField.ValidateSignature();
//Gets signer certificates
PdfSignerCertificate[] certifcate = result.TimeStampInformation.SignerCertificates;
foreach (PdfSignerCertificate cert in certifcate)
{
    //Get the actual signer certificate.
    X509Certificate2 actualCertificate = cert.Certificate;                
    //Get the OCSP certificate.
    PdfRevocationCertificate ocspCertificate = cert.OcspCertificate;
    if (ocspCertificate != null)
    {
        //Gets a value indicating whether the revocation certificate is embedded within the PDF document
        bool isOcspEmbedded = ocspCertificate.IsEmbedded;
        //Gets the certificate associated with the revocation certificate
        X509Certificate2 ocsPCert = ocspCertificate.Certificates[0];
        //Gets the date and time when the revocation certificate becomes valid
        DateTime currentUpdate = ocspCertificate.ValidFrom;
        //Gets the date and time when the revocation certificate expires
        DateTime nextUpdate = ocspCertificate.ValidTo;                    
    }
    //Get the CRL certificate.
    PdfRevocationCertificate crlCertificate = cert.CrlCertificate;
    if (crlCertificate != null)
    {
        //Gets a value indicating whether the revocation certificate is embedded within the PDF document
        bool isCrlEmbedded = crlCertificate.IsEmbedded;
        //Gets the certificate associated with the revocation certificate
        X509Certificate2 crlCert = crlCertificate.Certificates[0];
        //Gets the date and time when the revocation certificate becomes valid
        DateTime currentUpdate = crlCertificate.ValidFrom;
        //Gets the date and time when the revocation certificate expires
        DateTime nextUpdate = crlCertificate.ValidTo;
    }
}
//Close the document.
document.Close(true);
Dim document As PdfLoadedDocument = New PdfLoadedDocument("Input.pdf")
Dim signatureField As PdfLoadedSignatureField = CType(document.Form.Fields(0),PdfLoadedSignatureField)
Dim result As PdfSignatureValidationResult = signatureField.ValidateSignature
Dim certifcate() As PdfSignerCertificate = result.TimeStampInformation.SignerCertificates
For Each cert As PdfSignerCertificate In certifcate
    'Get the actual signer certificate.
    Dim actualCertificate As X509Certificate2 = cert.Certificate
    'Get the OCSP certificate.
    Dim ocspCertificate As PdfRevocationCertificate = cert.OcspCertificate
    If (Not (ocspCertificate) Is Nothing) Then
        'Gets a value indicating whether the revocation certificate is embedded within the PDF document
        Dim isOcspEmbedded As Boolean = ocspCertificate.IsEmbedded
        'Gets the certificate associated with the revocation certificate
        Dim ocsPCert As X509Certificate2 = ocspCertificate.Certificates(0)
        'Gets the date and time when the revocation certificate becomes valid
        Dim currentUpdate As DateTime = ocspCertificate.ValidFrom
        'Gets the date and time when the revocation certificate expires
        Dim nextUpdate As DateTime = ocspCertificate.ValidTo
    End If
    'Get the CRL certificate.
    Dim crlCertificate As PdfRevocationCertificate = cert.CrlCertificate
    If (Not (crlCertificate) Is Nothing) Then
        'Gets a value indicating whether the revocation certificate is embedded within the PDF document
        Dim isCrlEmbedded As Boolean = crlCertificate.IsEmbedded
        'Gets the certificate associated with the revocation certificate
        Dim crlCert As X509Certificate2 = crlCertificate.Certificates(0)
        'Gets the date and time when the revocation certificate becomes valid
        Dim currentUpdate As DateTime = crlCertificate.ValidFrom
        'Gets the date and time when the revocation certificate expires
        Dim nextUpdate As DateTime = crlCertificate.ValidTo
    End If    
Next
'Close the document.
document.Close(true)

Time

Gets the timestamp time

public DateTime Time { get; }

Property Value

DateTime

Examples

// Loads an existing document
PdfLoadedDocument document = new PdfLoadedDocument(fileName);
// Gets the signature field
PdfLoadedSignatureField signatureField = document.Form.Fields[0] as PdfLoadedSignatureField;
// Validate signature and get validation result
PdfSignatureValidationResult result = signatureField.ValidateSignature();
// Gets the timestamp information from the signature
TimeStampInformation timeStampInformation = result.TimeStampInformation;
// Gets the timestamp time
DateTime timeStampTime = timeStampInformation.Time;
// Close the document
document.Close(true);
' Loads an existing document
Dim document As PdfLoadedDocument = New PdfLoadedDocument(fileName)
' Gets the signature field
Dim signatureField As PdfLoadedSignatureField = document.Form.Fields[0] As PdfLoadedSignatureField
' Validate signature and get validation result
Dim result As PdfSignatureValidationResult = signatureField.ValidateSignature()
' Gets the timestamp information from the signature
Dim timeStampInformation As TimeStampInformation = result.TimeStampInformation
' Gets the timestamp time
Dim timeStampTime As DateTime = timeStampInformation.Time
' Close the document
document.Close(true)

TimeStampPolicyId

Gets the timestamp policy ID

public string TimeStampPolicyId { get; }

Property Value

string

Examples

// Loads an existing document
PdfLoadedDocument document = new PdfLoadedDocument(fileName);
// Gets the signature field
PdfLoadedSignatureField signatureField = document.Form.Fields[0] as PdfLoadedSignatureField;
// Validate signature and get validation result
PdfSignatureValidationResult result = signatureField.ValidateSignature();
// Gets the timestamp information from the signature
TimeStampInformation timeStampInformation = result.TimeStampInformation;
// Gets the timestamp policy ID
string timeStampPolicyId = timeStampInformation.TimeStampPolicyId;
// Close the document
document.Close(true);
' Loads an existing document
Dim document As PdfLoadedDocument = New PdfLoadedDocument(fileName)
' Gets the signature field
Dim signatureField As PdfLoadedSignatureField = document.Form.Fields[0] As PdfLoadedSignatureField
' Validate signature and get validation result
Dim result As PdfSignatureValidationResult = signatureField.ValidateSignature()
' Gets the timestamp information from the signature
Dim timeStampInformation As TimeStampInformation = result.TimeStampInformation
' Gets the timestamp policy ID
Dim timeStampPolicyId As string = timeStampInformation.TimeStampPolicyId
' Close the document
document.Close(true)