Skip to main content
All docs
V25.1
  • PdfDocumentSigner.AddToDss(String, IList<Byte[]>, IList<Byte[]>, IList<Byte[]>) Method

    Adds information about the specified signature to the Document Security Store (DSS).

    Namespace: DevExpress.Pdf

    Assembly: DevExpress.Docs.v25.1.dll

    NuGet Package: DevExpress.Document.Processor

    Declaration

    public void AddToDss(
        string signatureFieldName,
        IList<byte[]> certificates,
        IList<byte[]> crls,
        IList<byte[]> ocsp
    )

    Parameters

    Name Type Description
    signatureFieldName String

    The name of the form field that contains the target signature.

    certificates IList<Byte[]>

    A list of certificates used to create the certificate chain.

    crls IList<Byte[]>

    A list of DER-encoded CertificateList ASN.1 objects (rfc5280) that contain the Certificate Revocation List (CRL) for every certificate in the chain (except the root certificate).

    ocsp IList<Byte[]>

    A list of DER-encoded OCSPResponse ASN.1 objects (rfc6960) that contain the OCSP server response for every certificate in the chain except root.

    Exceptions

    Type Description
    ArgumentException

    Occurs if the specified form field is not signed.

    Remarks

    The code sample below retrieves the name of the first signature field, adds the related signature’s information to the DSS, and applies a timestamp to the document.

    using (var signer = new PdfDocumentSigner(@"signed.pdf"))
    {
        ITsaClient tsaClient = new TsaClient(new Uri(@"https://freetsa.org/tsr"), HashAlgorithmType.SHA256);
    
        string signatureName = signer.GetSignatureFieldNames(false)[0];
    
       // Create a provider that retrieves certificates from a store:
        using (var certificateStoreProvider =
            new CertificateStoreProvider(new X509Store(StoreLocation.CurrentUser), true))
        {
            // Add the signature to the security store
            // and specify the CrlClient and OcspClient objects
            // used to check the certificates' revocation status:
            signer.AddToDss(signatureName, new CrlClient(), new OcspClient(), certificateStoreProvider);
        }
        signer.SaveDocument(@"signedLTV.pdf", new[] { new PdfSignatureBuilder(new PdfTimeStamp(tsaClient)) });
    }
    
    See Also