XAdESSigner Component
Properties Methods Events Config Settings Errors
The XAdESSigner component creates XAdES-compliant signature files.
Syntax
TsbxXAdESSigner
Remarks
XAdESSigner can sign XML documents in accordance with XAdES standard. Originally developed and adopted in the European Union, XAdES has quickly become a recognized international standard for signing XML documents. XAdES provides a convenient framework for creating short-lived and long-term signatures over any kind of XML documents, and is now used by governments, healthcare providers, banks, and independent service providers all across the globe.
Standards and technologies supported
XAdESSigner offers the following signing capabilities:
- Create and upgrade XAdES signatures in accordance with the most recent XAdES specification (ETSI EN 319 132). Earlier versions are also supported.
- All profiles are supported (BES, EPES, T, C, X, XL, A, including the Extended variants).
- Timestamping using external TSAs.
- All industry-standard cryptographic algorithms (RSA, ECDSA, SHA256-512, and many others).
Configuring the signature parameters
Configuring XAdESSigner to make it produce a signature of the right type is the main task you would need to perform in your code. Normally the service or software you will be communicating your XML documents to will provide you with the list of requirements that your signatures should match.
Typically, those will dictate the following key aspects of the signatures:
- The signature Form, sometimes referred to as Level (such BES, T, XL, A, or Extended-XLong). This can be adjusted with the XAdESForm property.
- Whether the signature should be detached, enveloped, or enveloping: adjust via SignatureType property.
- When creating a timestamped signature (such as T or A), provide the address of your online TSA service via TimestampServer property.
- When creating long-term signatures that include the signing chain and validation material, tune up validation parameters via RevocationCheck, OfflineMode, and IgnoreChainValidationErrors properties.
In some circumstances you will also need to adjust the following lower-level settings:
- Choose a specific XAdES version between 1.4.1, 1.3.2, 1.2.2, and 1.1.1, and assign it to XAdESVersion property.
- Specify the needed canonicalization method using the CanonicalizationMethod property.
- Provide the hash algorithm via the HashAlgorithm property.
Signing certificates
XAdESSigner can use certificates residing on different media. Besides generic certificates stored in PFX or PEM files (A1), it can operate with non-exportable certificates residing on hardware media (A3) or in the cloud.
Non-exportable certificates can be accessed transparently via a Windows CSP or a PKCS#11 driver, if supplied by the certificate issuer. Proprietary interfaces can be plugged in with the external signing feature (see below).
You can use CertificateManager and CertificateStorage components to access the signing certificate. Assign the certificate to SigningCertificate property, and optionally provide the remainder of its chain via SigningChain property.
Note: If signing with a non-exportable key (such as residing on a hardware device or in the cloud), please make sure you keep the original CertificateStorage object open until the signing is completed. This is because the storage component provides a 'bridge' to the private key. If the storage is closed prematurely, this bridge is destroyed, and the private key can't be used.
You don't need to provide a signing certificate or chain when timestamping and upgrading signatures, since this type of operation does not involve the signing private key.
Signing the document
Now that you have set up all signature properties and attached the signing certificate, it is time to proceed to signing. You can provide the input document in one of the following forms: as a file (assign the path to InputFile property), as a stream (assign to InputStream property), or as a byte array (assign to InputBytes). Similarly, the output can be collected in one of the same forms, either by passing the destination path or stream via OutputFile and OutputStream respectively, or by reading the resulting document bytes from the OutputBytes property after the signing completes.
Having set up the input and output (unless using OutputBytes, which should be read later), call the component's Sign method. This will initiate the signing process. Depending on the settings, the signing may be as straightforward as calculating the document hash and signing it with the private key (e.g. in XAdES-BES variant), or it may involve advanced chain validation routines (XAdES-XL or -A). During the latter the component may contact a number of external revocation information sources (CRL and OCSP servers) to establish the validity of the signing certificate.
If a TSA server was provided via the TimestampServer property, the component will contact it too to timestamp the new signature.
During the signing XAdESSigner may fire events to let your code know of certain conditions. It may fire TLSCertValidate if one of the HTTP endpoints involved in the operation (which may be a CRL, OCSP, or TSA service) works over TLS and needs its certificate to be validated. It may also fire FormatElement and FormatText to let your code apply custom formatting to XML document elements. If XAdESSigner fails to resolve one of the references in the signature, it will fire ResolveReference to let your code help with resolving it.
When the signing operation completes, the output file, stream, or byte array will contain the signature of the requested kind. Note that while nveloped and enveloping signatures contain the signed content within them, detached signatures assume that you supply the original content separately.
Apart from signing, XAdESSigner can perform operations on signatures of other kinds. Use Upgrade method to upgrade an existing XAdES signature to a higher level (e.g. BES to XL). Use Timestamp to add a generic or validation timestamp to an existing signature.
External signing and DCAuth
XAdESSigner, like many other components offered by the product, supports two methods of signing with external keys. These methods are fully independent of each other: you can choose the one that suits your usage scenario best.
Synchronous method: ExternalSign
This is a simpler method that basically lets you infiltrate into the heart of the signing routine by taking care of the hash signing operation. The component does the rest of the job (hash calculation, preparation of signature objects, CRL/OCSP retrieval).
To initiate this method, call SignExternal instead of Sign. When the hash is ready, it will be passed back to your code with ExternalSign event. Your event handler needs to sign the hash with the private key and return the created signature back to the component - which will embed it into the document.
You don't need your signing certificate to contain an associated private key when using this method. The certificate itself (its public copy) may be needed though, as it is often included in the hash calculation.
This method is synchronous, meaning SignExternal provides you the results immediately upon its completion.
Asynchronous method: DCAuth
DCAuth is a SecureBlackbox-own know-how technology. This protocol was designed to allow sharing of private keys across environments, allowing the signer and the private key to reside on different systems. It works in the following way:
- The signing party - such as XAdESSigner - initiates the operation using SignAsyncBegin call. This produces two outcomes: a pre-signed document (a document with a blank signature placeholder), and a request state (an object containing a hash that needs to be signed). At this point the XAdESSigner instance can be released, and the process itself terminated (which may be useful when run as part of a web page).
- The request state is passed to the private key holder party. The private key holder passes the request state to a DCAuth object, which parses the request state, extracts the hash, and signs it. The output of DCAuth processing is another object, response state, which contains the signature. The private key holder then sends the response state back to the signing party.
- The signing party re-creates the controls, and passes the response state, together with the pre-signed version of the document, to the signer's SignAsyncEnd method. SignAsyncEnd extracts the signature from the response state and incorporates it into the pre-signed document.
This method is asynchronous in that sense that, from the signing party's viewpoint, it splits the signing operation into the pre-signing and completion stages which can be performed independently from each other and in different execution contexts. This makes this method particularly helpful for use in web pages and other scenarios where the signing key is not available in real time.
Fine-grained chain validation setup
Chain validation is a sophisticated, multi-faceted procedure that involves a lot of variables. Depending on the configuration of your operating environment, the specifics of the PKI framework being used, and the validation policy you need to follow, you may want to tune up your chain validation parameters so they fit them best. A summary of such parameters is given below.
- RevocationCheck lets you choose between and/or prioritize revocation origins. OCSP sources are often preferred to CRL because of their real-time capability and the smaller size of validation tokens they produce.
- OfflineMode is a master switch that stops the component from looking for any validation tokens online. If this property is switched on, the component will only use the KnownCertificates, TrustedCertificates, KnownCRLs, and KnownOCSPs collections to look for the missing validation material.
- IgnoreChainValidationErrors makes the component ignore any major validation issues it encounters (such us an untrusted chain or missing CRL). This option is handy for debugging and for creating signatures in the environments where the signing certificate is not trusted.
- KnownCertificates, KnownCRLs, and KnownOCSPs let you provide your own validation material. This may be useful when working in OfflineMode, where the signer has no access to the validation sources, or where the validation material has already been collected.
- TrustedCertificates lets you provide a list of trust anchors, either as a complement to the system's or as an alternative to it.
- BlockedCertificates lets you provide a list of blocked/distrusted certificates. Any CA certificate contained in it will be deemed untrusted/invalid.
The following parameters are not directly related to chain validation, but may have an implicit effect on it.
- Proxy, SocketSettings, and TLSSettings let you tune up the connectivity and TLS options in accordance with local preferences.
- TLSClientChain lets you provide the client certificate and its chain for TLS client authentication.
- Subscribe to TLSCertValidate to validate any TLS certificates of the services involved in chain validation.
The results of the chain validation procedure, upon its completion, are published in the following properties:
- ChainValidationResult contains the primary result of the chain validation routine: valid, valid but untrusted, invalid, or undefined.
- ChainValidationDetails provides the details of the factors that contributed to the chain validation result, such as an outdated certificate, a missing CRL, or a missing CA certificate.
- ValidationLog contains the detailed chain validation log. The log can often be very helpful in nailing down various validation issues.
Property List
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
AutoValidateSignatures | Specifies whether component should validate any present signatures when the document is opened. |
BlockedCertCount | The number of records in the BlockedCert arrays. |
BlockedCertBytes | Returns the raw certificate data in DER format. |
BlockedCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
CRLCount | The number of records in the CRL arrays. |
CRLBytes | Returns the raw CRL data in DER format. |
CRLHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
CRLIssuer | The common name of the CRL issuer (CA), typically a company name. |
CRLIssuerRDN | A collection of information, in the form of [OID, Value] pairs, uniquely identifying the CRL issuer. |
CRLLocation | The URL that the CRL was downloaded from. |
CRLNextUpdate | The planned time and date of the next version of this CRL to be published. |
CRLThisUpdate | The date and time at which this version of the CRL was published. |
DataBytes | Use this property to pass the external data to component in the byte array form. |
DataFile | A file containing the external data covered by a detached signature. |
DataType | Specifies the external data type. |
DataURI | Specifies a detached data resource URI. |
Encoding | Specifies XML encoding. |
ExternalCryptoAsyncDocumentID | Specifies an optional document ID for SignAsyncBegin() and SignAsyncEnd() calls. |
ExternalCryptoCustomParams | Custom parameters to be passed to the signing service (uninterpreted). |
ExternalCryptoData | Additional data to be included in the async state and mirrored back by the requestor. |
ExternalCryptoExternalHashCalculation | Specifies whether the message hash is to be calculated at the external endpoint. |
ExternalCryptoHashAlgorithm | Specifies the request's signature hash algorithm. |
ExternalCryptoKeyID | The ID of the pre-shared key used for DC request authentication. |
ExternalCryptoKeySecret | The pre-shared key used for DC request authentication. |
ExternalCryptoMethod | Specifies the asynchronous signing method. |
ExternalCryptoMode | Specifies the external cryptography mode. |
ExternalCryptoPublicKeyAlgorithm | Provide the public key algorithm here if the certificate is not available on the pre-signing stage. |
FIPSMode | Reserved. |
IgnoreChainValidationErrors | Makes the component tolerant to chain validation errors. |
InputBytes | Use this property to pass the input to component in byte array form. |
InputFile | The XML document to sign. |
KnownCertCount | The number of records in the KnownCert arrays. |
KnownCertBytes | Returns the raw certificate data in DER format. |
KnownCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
KnownCRLCount | The number of records in the KnownCRL arrays. |
KnownCRLBytes | Returns the raw CRL data in DER format. |
KnownCRLHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
KnownOCSPCount | The number of records in the KnownOCSP arrays. |
KnownOCSPBytes | A buffer containing the raw OCSP response data. |
KnownOCSPHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
NewSigCanonicalizationMethod | The XML canonicalization method that was used for signing. |
NewSigCertificateIndex | Returns the index of the signing certificate in the Certificates collection Use this property to look up the signing certificate in the Certificates collection. |
NewSigChainValidationDetails | The details of a certificate chain validation outcome. |
NewSigChainValidationResult | The outcome of a certificate chain validation routine. |
NewSigClaimedSigningTime | The signing time from the signer's computer. |
NewSigHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
NewSigHashAlgorithm | The hash algorithm used for signing. |
NewSigIssuerRDN | The Relative Distinguished Name of the signing certificate's issuer. |
NewSigLastArchivalTime | Indicates the most recent archival time of an archived signature This property returns the time of the most recent archival timestamp applied to the signature. |
NewSigPolicyHash | The signature policy hash value. |
NewSigPolicyHashAlgorithm | The algorithm that was used to calculate the signature policy hash Use this property to get or set the hash algorithm used to calculate the signature policy hash. |
NewSigPolicyID | The policy ID that was included or to be included into the signature. |
NewSigPolicyURI | The signature policy URI that was included in the signature. |
NewSigSerialNumber | The serial number of the timestamp. |
NewSigSignatureBytes | Returns the binary representation of the XML-DSig/XAdES signature. |
NewSigSignatureType | The signature type to employ when signing the document. |
NewSigSignatureValidationResult | Contains the signature validation result. |
NewSigSubjectKeyID | Contains the subject key identifier of the signing certificate. |
NewSigSubjectRDN | Contains information about the person owning the signing certificate. |
NewSigTimestamped | Use this property to establish whether the signature contains an embedded timestamp. |
NewSigValidatedSigningTime | Contains the certified signing time. |
NewSigValidationLog | Contains the complete log of the certificate validation routine. |
NewSigXAdES | Specifies whether the document contains an advanced signature (XAdES). |
NewSigXAdESForm | Specifies which form of XAdES should be produced. |
NewSigXAdESVersion | Specifies XAdES version. |
NewSigXMLElement | Specifies the XML element where to save the signature or containing the signature. |
OCSPCount | The number of records in the OCSP arrays. |
OCSPBytes | A buffer containing the raw OCSP response data. |
OCSPHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
OCSPIssuer | Indicates the issuer of this response (a CA or its authorized representative). |
OCSPIssuerRDN | Indicates the RDN of the issuer of this response (a CA or its authorized representative). |
OCSPLocation | The location of the OCSP responder. |
OCSPProducedAt | Specifies the time when the response was produced, in UTC. |
OfflineMode | Switches the component to offline mode. |
OutputBytes | Use this property to read the output the component object has produced. |
OutputFile | Specifies the file where the signed document will be saved. |
Profile | Specifies a pre-defined profile to apply when creating the signature. |
ProxyAddress | The IP address of the proxy server. |
ProxyAuthentication | The authentication type used by the proxy server. |
ProxyPassword | The password to authenticate to the proxy server. |
ProxyPort | The port on the proxy server to connect to. |
ProxyProxyType | The type of the proxy server. |
ProxyRequestHeaders | Contains HTTP request headers for WebTunnel and HTTP proxy. |
ProxyResponseBody | Contains the HTTP or HTTPS (WebTunnel) proxy response body. |
ProxyResponseHeaders | Contains response headers received from an HTTP or HTTPS (WebTunnel) proxy server. |
ProxyUseIPv6 | Specifies whether IPv6 should be used when connecting through the proxy. |
ProxyUseProxy | Enables or disables proxy-driven connection. |
ProxyUsername | Specifies the username credential for proxy authentication. |
ReferenceCount | The number of records in the Reference arrays. |
ReferenceAutoGenerateElementId | Specifies whether the identifier (ID) attribute for a referenced (target) element should be auto-generated during signing. |
ReferenceCanonicalizationMethod | Use this property to specify the canonicalization method for the transform of the reference. |
ReferenceCustomElementId | Specifies a custom identifier (ID) attribute for a referenced (target) element that will be set on signing. |
ReferenceDigestValue | Use this property to get or set the value of the digest calculated over the referenced data. |
ReferenceHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
ReferenceHashAlgorithm | Specifies the hash algorithm to be used. |
ReferenceHasURI | Specifies whether the URI is set (even when it is empty). |
ReferenceID | A user-defined identifier (ID) attribute of this Reference element. |
ReferenceInclusiveNamespacesPrefixList | Use this property to specify InclusiveNamespaces PrefixList for exclusive canonicalization transform of the reference. |
ReferenceReferenceType | The Reference's type attribute as defined in XMLDSIG specification. |
ReferenceSignatureIndex | Returns the index of the owner signature, if applicable. |
ReferenceTargetData | Contains the referenced external data when the digest value is not explicitly specified. |
ReferenceTargetType | The reference's target type to use. |
ReferenceTargetXMLElement | This property specifies the referenced XML element. |
ReferenceURI | Use this property to get or set the URL which references the data. |
ReferenceUseBase64Transform | Specifies whether Base64 transform is included in transform chain. |
ReferenceUseEnvelopedSignatureTransform | Specifies whether enveloped signature transform is included in transform chain. |
ReferenceUseXPathFilter2Transform | Specifies whether XPath Filter 2. |
ReferenceUseXPathTransform | Specifies whether XPath transform is included in transform chain. |
ReferenceXPathExpression | Use this property to specify XPath expression for XPath transform of the reference. |
ReferenceXPathFilter2Expressions | Use this property to specify XPointer expression(s) for XPath Filter 2. |
ReferenceXPathFilter2Filters | Use this property to specify XPointer filter(s) for XPath Filter 2. |
ReferenceXPathFilter2PrefixList | Use this property to specify a prefix list for XPath Filter 2. |
ReferenceXPathPrefixList | Use this property to specify a prefix list for XPath transform of the reference. |
RevocationCheck | Specifies the kind(s) of revocation check to perform for all chain certificates. |
SignatureCount | The number of records in the Signature arrays. |
SignatureCanonicalizationMethod | The XML canonicalization method that was used for signing. |
SignatureCertificateIndex | Returns the index of the signing certificate in the Certificates collection Use this property to look up the signing certificate in the Certificates collection. |
SignatureChainValidationDetails | The details of a certificate chain validation outcome. |
SignatureChainValidationResult | The outcome of a certificate chain validation routine. |
SignatureClaimedSigningTime | The signing time from the signer's computer. |
SignatureHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
SignatureHashAlgorithm | The hash algorithm used for signing. |
SignatureIssuerRDN | The Relative Distinguished Name of the signing certificate's issuer. |
SignatureLastArchivalTime | Indicates the most recent archival time of an archived signature This property returns the time of the most recent archival timestamp applied to the signature. |
SignaturePolicyHash | The signature policy hash value. |
SignaturePolicyHashAlgorithm | The algorithm that was used to calculate the signature policy hash Use this property to get or set the hash algorithm used to calculate the signature policy hash. |
SignaturePolicyID | The policy ID that was included or to be included into the signature. |
SignaturePolicyURI | The signature policy URI that was included in the signature. |
SignatureSerialNumber | The serial number of the timestamp. |
SignatureSignatureBytes | Returns the binary representation of the XML-DSig/XAdES signature. |
SignatureSignatureType | The signature type to employ when signing the document. |
SignatureSignatureValidationResult | Contains the signature validation result. |
SignatureSubjectKeyID | Contains the subject key identifier of the signing certificate. |
SignatureSubjectRDN | Contains information about the person owning the signing certificate. |
SignatureTimestamped | Use this property to establish whether the signature contains an embedded timestamp. |
SignatureValidatedSigningTime | Contains the certified signing time. |
SignatureValidationLog | Contains the complete log of the certificate validation routine. |
SignatureXAdES | Specifies whether the document contains an advanced signature (XAdES). |
SignatureXAdESForm | Specifies which form of XAdES should be produced. |
SignatureXAdESVersion | Specifies XAdES version. |
SignatureXMLElement | Specifies the XML element where to save the signature or containing the signature. |
SigningCertBytes | Returns the raw certificate data in DER format. |
SigningCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
SigningChainCount | The number of records in the SigningChain arrays. |
SigningChainBytes | Returns the raw certificate data in DER format. |
SigningChainHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
SocketDNSMode | Selects the DNS resolver to use: the component's (secure) built-in one, or the one provided by the system. |
SocketDNSPort | Specifies the port number to be used for sending queries to the DNS server. |
SocketDNSQueryTimeout | The timeout (in milliseconds) for each DNS query. |
SocketDNSServers | The addresses of DNS servers to use for address resolution, separated by commas or semicolons. |
SocketDNSTotalTimeout | The timeout (in milliseconds) for the whole resolution process. |
SocketIncomingSpeedLimit | The maximum number of bytes to read from the socket, per second. |
SocketLocalAddress | The local network interface to bind the socket to. |
SocketLocalPort | The local port number to bind the socket to. |
SocketOutgoingSpeedLimit | The maximum number of bytes to write to the socket, per second. |
SocketTimeout | The maximum period of waiting, in milliseconds, after which the socket operation is considered unsuccessful. |
SocketUseIPv6 | Enables or disables IP protocol version 6. |
TimestampCount | The number of records in the Timestamp arrays. |
TimestampAccuracy | This property indicates the accuracy of the included time mark, in microseconds. |
TimestampBytes | Returns the raw timestamp data in DER format. |
TimestampCertificateIndex | Returns the index of the TSA certificate in the Certificates collection. |
TimestampChainValidationDetails | The details of a certificate chain validation outcome. |
TimestampChainValidationResult | The outcome of a certificate chain validation routine. |
TimestampHashAlgorithm | Returns the timestamp's hash algorithm. |
TimestampSerialNumber | Returns the timestamp's serial number. |
TimestampSignatureIndex | Returns the index of the owner signature, if applicable. |
TimestampTime | The time point incorporated into the timestamp. |
TimestampTimestampType | Returns the type of the timestamp. |
TimestampTSAName | This value uniquely identifies the Timestamp Authority (TSA). |
TimestampValidationLog | Contains the TSA certificate chain validation log. |
TimestampValidationResult | Contains the timestamp validation outcome. |
TimestampServer | The address of the timestamping server. |
TLSClientCertCount | The number of records in the TLSClientCert arrays. |
TLSClientCertBytes | Returns the raw certificate data in DER format. |
TLSClientCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
TLSServerCertCount | The number of records in the TLSServerCert arrays. |
TLSServerCertBytes | Returns the raw certificate data in DER format. |
TLSServerCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
TLSAutoValidateCertificates | Specifies whether server-side TLS certificates should be validated automatically using internal validation rules. |
TLSBaseConfiguration | Selects the base configuration for the TLS settings. |
TLSCiphersuites | A list of ciphersuites separated with commas or semicolons. |
TLSECCurves | Defines the elliptic curves to enable. |
TLSExtensions | Provides access to TLS extensions. |
TLSForceResumeIfDestinationChanges | Whether to force TLS session resumption when the destination address changes. |
TLSPreSharedIdentity | Defines the identity used when the PSK (Pre-Shared Key) key-exchange mechanism is negotiated. |
TLSPreSharedKey | Contains the pre-shared key for the PSK (Pre-Shared Key) key-exchange mechanism, encoded with base16. |
TLSPreSharedKeyCiphersuite | Defines the ciphersuite used for PSK (Pre-Shared Key) negotiation. |
TLSRenegotiationAttackPreventionMode | Selects the renegotiation attack prevention mechanism. |
TLSRevocationCheck | Specifies the kind(s) of revocation check to perform. |
TLSSSLOptions | Various SSL (TLS) protocol options, set of cssloExpectShutdownMessage 0x001 Wait for the close-notify message when shutting down the connection cssloOpenSSLDTLSWorkaround 0x002 (DEPRECATED) Use a DTLS version workaround when talking to very old OpenSSL versions cssloDisableKexLengthAlignment 0x004 Do not align the client-side PMS by the RSA modulus size. |
TLSTLSMode | Specifies the TLS mode to use. |
TLSUseExtendedMasterSecret | Enables the Extended Master Secret Extension, as defined in RFC 7627. |
TLSUseSessionResumption | Enables or disables the TLS session resumption capability. |
TLSVersions | The SSL/TLS versions to enable by default. |
TrustedCertCount | The number of records in the TrustedCert arrays. |
TrustedCertBytes | Returns the raw certificate data in DER format. |
TrustedCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
ValidationMoment | The time point at which signature validity is to be established. |
NamespaceCount | The number of records in the Namespace arrays. |
NamespacePrefix | A user-defined prefix value of a namespace. |
NamespaceURI | A user-defined URI value of a namespace. |
Method List
The following is the full list of the methods of the component with short descriptions. Click on the links for further details.
AddDataReference | Creates a new XML reference to the specified data. |
AddReference | Creates a new XML reference to the specified XML element. |
AddTimestampValidationData | Use this method to add timestamp validation data to the signature. |
AddValidationDataRefs | Use this method to add signature validation references to the signature. |
AddValidationDataValues | Use this method to add signature validation values to the signature. |
Close | Closes an opened document. |
Config | Sets or retrieves a configuration setting. |
DoAction | Performs an additional action. |
ExtractAsyncData | Extracts user data from the DC signing service response. |
GetInnerXML | Get the inner XML content of the selected XML element. |
GetOuterXML | Get the outer XML content of the selected XML element. |
GetTextContent | Get the text content of the selected XML element. |
Open | Opens a document for signing or updating. |
Revalidate | Revalidates a signature in accordance with current settings. |
SetInnerXML | Set the inner XML content of the selected XML element. |
SetTextContent | Set the text content of the selected XML element. |
Sign | Signs an XML document. |
SignAsyncBegin | Initiates the asynchronous signing operation. |
SignAsyncEnd | Completes the asynchronous signing operation. |
SignExternal | Signs the document using an external signing facility. |
Timestamp | Use this method to add an timestamp. |
Upgrade | Upgrades existing XAdES signature to a new form. |
Event List
The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.
ChainElementDownload | Fires when there is a need to download a chain element from an online source. |
ChainElementNeeded | Fires when an element required to validate the chain was not located. |
ChainElementStore | This event is fired when a chain element (certificate, CRL, or OCSP response) should be stored along with a signature. |
ChainValidated | Reports the completion of a certificate chain validation. |
ChainValidationProgress | This event is fired multiple times during chain validation to report various stages of the validation procedure. |
DocumentLoaded | This event is fired when the document has been loaded into memory. |
Error | Information about errors during signing. |
ExternalSign | Handles remote or external signing initiated by the SignExternal method or other source. |
FormatElement | Reports the XML element that is currently being processed. |
FormatText | Reports XML text that is currently being processed. |
Notification | This event notifies the application about an underlying control flow event. |
ReferenceValidated | Marks the end of a reference validation. |
ResolveReference | Asks the application to resolve a reference. |
SignatureFound | Signifies the start of signature validation. |
SignatureValidated | Marks the completion of the signature validation routine. |
TimestampFound | Signifies the start of a timestamp validation routine. |
TimestampRequest | Fires when the component is ready to request a timestamp from an external TSA. |
TimestampValidated | Reports the completion of the timestamp validation routine. |
TLSCertNeeded | Fires when a remote TLS party requests a client certificate. |
TLSCertValidate | This event is fired upon receipt of the TLS server's certificate, allowing the user to control its acceptance. |
TLSEstablished | Fires when a TLS handshake with Host successfully completes. |
TLSHandshake | Fires when a new TLS handshake is initiated, before the handshake commences. |
TLSShutdown | Reports the graceful closure of a TLS connection. |
Config Settings
The following is a list of config settings for the component with short descriptions. Click on the links for further details.
AddAllDataObjectsTimestamp | Whether to add all data objects timestamp during signing. |
ClaimedRoleText | The text of the claimed role. |
ClaimedRoleXML | The XML content of the claimed roles. |
CommitmentTypeIndicationAllSignedDataObjects[Index] | Specifies the CommitmentTypeIndication's AllSignedDataObjects. |
CommitmentTypeIndicationCount | The number of the CommitmentTypeIndication elements. |
CommitmentTypeIndicationIdentifier[Index] | Specifies the CommitmentTypeIndication's CommitmentTypeId's Identifier. |
CommitmentTypeIndicationIdentifierDescription[Index] | Specifies the CommitmentTypeIndication's CommitmentTypeId's Description. |
CommitmentTypeIndicationIdentifierDocumentationReferences[Index] | Specifies the CommitmentTypeIndication's CommitmentTypeId's DocumentationReferences. |
CommitmentTypeIndicationIdentifierQualifier[Index] | Specifies the CommitmentTypeIndication's CommitmentTypeId's IdentifierQualifier. |
CommitmentTypeIndicationObjectReference[Index] | Specifies the CommitmentTypeIndication's ObjectReference. |
CommitmentTypeIndicationQualifiersXML[Index] | The XML content of the CommitmentTypeIndication's Qualifiers. |
DataObjectFormatCount | The number of the DataObjectFormat elements. |
DataObjectFormatDescription[Index] | Specifies the DataObjectFormat's Description. |
DataObjectFormatEncoding[Index] | Specifies the DataObjectFormat's Encoding. |
DataObjectFormatMimeType[Index] | Specifies the DataObjectFormat's MimeType. |
DataObjectFormatObjectIdentifier[Index] | Specifies the DataObjectFormat's ObjectIdentifier's Identifier. |
DataObjectFormatObjectIdentifierDescription[Index] | Specifies the DataObjectFormat's ObjectIdentifier's Description. |
DataObjectFormatObjectIdentifierDocumentationReferences[Index] | Specifies the DataObjectFormat's ObjectIdentifier's DocumentationReferences. |
DataObjectFormatObjectIdentifierQualifier[Index] | Specifies the DataObjectFormat's ObjectIdentifier's IdentifierQualifier. |
DataObjectFormatObjectReference[Index] | Specifies the DataObjectFormat's ObjectReference. |
DetachedResourceURI | Specifies a detached resource URI. |
DislikeOpenEndedOCSPs | Tells the component to discourage OCSP responses without an explicit NextUpdate parameter. |
EnvelopingObjectEncoding | Specifies the enveloping object encoding. |
EnvelopingObjectID | Specifies the enveloping object identifier. |
EnvelopingObjectMimeType | Specifies the enveloping object MIME type. |
ExclusiveCanonicalizationPrefix | Specifies the exclusive canonicalization prefix. |
ForceCompleteChainValidation | Whether to check the CA certificates when the signing certificate is invalid. |
ForceCompleteChainValidationForTrusted | Whether to continue with the full validation up to the root CA certificate for mid-level trust anchors. |
GracePeriod | Specifies a grace period to apply during revocation information checks. |
HMACKey | The key value for HMAC. |
HMACOutputLength | Sets the length of the HMAC output. |
IDAttributeName | Specifies the custom name of ID attribute. |
IDAttributeNamespaceURI | Specifies the custom namespace URI of ID attribute. |
IgnoreChainLoops | Whether chain loops should be ignored. |
IgnoreOCSPNoCheckExtension | Whether the OCSP NoCheck extension should be ignored. |
IgnoreSystemTrust | Whether trusted Windows Certificate Stores should be treated as trusted. |
IgnoreTimestampFailure | Whether to ignore time-stamping failure during signing. |
ImplicitlyTrustSelfSignedCertificates | Whether to trust self-signed certificates. |
IncludeKey | Specifies whether to include the signing key to the signature. |
IncludeKeyValue | Specifies whether the key value must be included to the signature. |
IncludeKnownRevocationInfoToSignature | Whether to include custom revocation info to the signature. |
InclusiveNamespacesPrefixList | Specifies the InclusiveNamespaces PrefixList. |
InputType | Specifies the Input type. |
InsertBeforeXMLElement | Defines the reference XML element for signature insertion. |
KeyInfoCustomXML | The custom XML content for KeyInfo element. |
KeyInfoDetails | Specifies the signing key info details to include to the signature. |
KeyInfoID | Specifies the ID for KeyInfo element. |
KeyName | Contains information about the key used for signing. |
ManifestCount | The number of the manifest elements. |
ManifestID[Index] | The ID of the manifest element. |
ManifestObjectIndex[Index] | The object element index to which the manifest element belongs. |
ManifestXML[Index] | The XML content of the manifest element. |
ObjectCount | The number of the object elements. |
ObjectEncoding[Index] | The Encoding of the object element. |
ObjectID[Index] | The ID of the object element. |
ObjectMimeType[Index] | The MIME type of the object element. |
ObjectSignaturePropertiesCount | The number of the signature properties elements. |
ObjectSignaturePropertiesID[Index] | The ID of the signature properties element. |
ObjectSignaturePropertiesObjectIndex[Index] | The object element index to which the signature properties element belongs. |
ObjectSignaturePropertiesXML[Index] | The XML content of the signature properties element. |
ObjectSignaturePropertyCount | The number of the signature property elements. |
ObjectSignaturePropertyID[Index] | The ID of the signature properties element. |
ObjectSignaturePropertyPropertiesIndex[Index] | The signature properties element index to which the signature property element belongs. |
ObjectSignaturePropertyTarget[Index] | The Target of the signature properties element. |
ObjectSignaturePropertyXML[Index] | The XML content of the signature property element. |
ObjectXML[Index] | The XML content of the object element. |
ProductionPlace | Identifies the place of the signature production. |
PromoteLongOCSPResponses | Whether long OCSP responses are requested. |
QualifyingPropertiesID | Specifies the ID for QualifyingProperties element. |
QualifyingPropertiesObjectID | Specifies the ID for object with QualifyingProperties element. |
QualifyingPropertiesReferenceCount | The number of the QualifyingPropertiesReference elements. |
QualifyingPropertiesReferenceID[Index] | Specifies the QualifyingPropertiesReference's ID. |
QualifyingPropertiesReferenceURI[Index] | Specifies the QualifyingPropertiesReference's URI. |
RefsTimestampType | Specifies references timestamp type to include to the signature. |
SignatureCompliance | Specifies the signature compliance mode. |
SignatureID | Specifies the ID for Signature element. |
SignaturePrefix | Specifies the signature prefix. |
SignatureValue | Contains the SignatureValue. |
SignatureValueID | Specifies the ID for SignatureValue element. |
SignedInfoID | Specifies the ID for SignedInfo element. |
SignedPropertiesID | Specifies the ID for SignedProperties element. |
SignedPropertiesReferenceCanonicalizationMethod | Specifies the canonicalization method used in SignedProperties reference. |
SignedPropertiesReferenceHashAlgorithm | Specifies the hash algorithm used in SignedProperties reference. |
SignedPropertiesReferenceID | Specifies the ID for Reference element that points to SignedProperties element. |
SignedPropertiesReferenceInclusiveNamespacesPrefixList | Specifies the InclusiveNamespaces PrefixList used in SignedProperties reference. |
SignedPropertiesReferenceIndex | Specifies the index of SignedProperties reference. |
SignedSignaturePropertiesID | Specifies the ID for SignedSignatureProperties element. |
SigningCertificatesHashAlgorithm | Specifies the hash algorithm used for SigningCertificates. |
SigPolicyDescription | signature policy description. |
SigPolicyExplicitText | The explicit text of the user notice. |
SigPolicyHash | The hash value of the signature policy. |
SigPolicyHashAlgorithm | Specifies the hash algorithm used to compute the signature policy hash. |
SigPolicyID | Identifies the signature policy. |
SigPolicyNoticeNumbers | Contains user notice numbers. |
SigPolicyNoticeOrganization | The organization part of the NoticeReference qualifier. |
SigPolicyURI | Signature policy URI. |
TempPath | Location where the temporary files are stored. |
TimestampCanonicalizationMethod | Specifies canonicalization method used in timestamp. |
TimestampValidationDataDetails | Specifies timestamp validation data details to include to the signature. |
TLSChainValidationDetails | Contains the advanced details of the TLS server certificate validation. |
TLSChainValidationResult | Contains the result of the TLS server certificate validation. |
TLSClientAuthRequested | Indicates whether the TLS server requests client authentication. |
TLSValidationLog | Contains the log of the TLS server certificate validation. |
TolerateMinorChainIssues | Whether to tolerate minor chain issues. |
TspAttemptCount | Specifies the number of timestamping request attempts. |
TspHashAlgorithm | Sets a specific hash algorithm for use with the timestamping service. |
TspReqPolicy | Sets a request policy ID to include in the timestamping request. |
UseHMACSigning | Whether to use HMAC signing. |
UseMicrosoftCTL | Enables or disables the automatic use of the Microsoft online certificate trust list. |
UsePSS | Whether to use RSASSA-PSS algorithm. |
UseSystemCertificates | Enables or disables the use of the system certificates. |
UseValidationCache | Enables or disable the use of the product-wide certificate chain validation cache. |
ValidationDataRefsDetails | Specifies validation data references details to include to the signature. |
ValidationDataRefsHashAlgorithm | Specifies the hash algorithm used in validation data references. |
ValidationDataValuesDetails | Specifies validation data values details to include to the signature. |
WriteBOM | Specifies whether byte-order mark should be written when saving the document. |
XAdESPrefix | Specifies the XAdES prefix. |
XAdESv141Prefix | Specifies the XAdES v1.4.1 prefix. |
XMLFormatting | Specifies the signature XML formatting. |
CheckKeyIntegrityBeforeUse | Enables or disable private key integrity check before use. |
CookieCaching | Specifies whether a cookie cache should be used for HTTP(S) transports. |
Cookies | Gets or sets local cookies for the component. |
DefDeriveKeyIterations | Specifies the default key derivation algorithm iteration count. |
EnableClientSideSSLFFDHE | Enables or disables finite field DHE key exchange support in TLS clients. |
GlobalCookies | Gets or sets global cookies for all the HTTP transports. |
HttpUserAgent | Specifies the user agent name to be used by all HTTP clients. |
LogDestination | Specifies the debug log destination. |
LogDetails | Specifies the debug log details to dump. |
LogFile | Specifies the debug log filename. |
LogFilters | Specifies the debug log filters. |
LogFlushMode | Specifies the log flush mode. |
LogLevel | Specifies the debug log level. |
LogMaxEventCount | Specifies the maximum number of events to cache before further action is taken. |
LogRotationMode | Specifies the log rotation mode. |
MaxASN1BufferLength | Specifies the maximal allowed length for ASN.1 primitive tag data. |
MaxASN1TreeDepth | Specifies the maximal depth for processed ASN.1 trees. |
OCSPHashAlgorithm | Specifies the hash algorithm to be used to identify certificates in OCSP requests. |
StaticDNS | Specifies whether static DNS rules should be used. |
StaticIPAddress[domain] | Gets or sets an IP address for the specified domain name. |
StaticIPAddresses | Gets or sets all the static DNS rules. |
Tag | Allows to store any custom data. |
TLSSessionGroup | Specifies the group name of TLS sessions to be used for session resumption. |
TLSSessionLifetime | Specifies lifetime in seconds of the cached TLS session. |
TLSSessionPurgeInterval | Specifies how often the session cache should remove the expired TLS sessions. |
UseOwnDNSResolver | Specifies whether the client components should use own DNS resolver. |
UseSharedSystemStorages | Specifies whether the validation engine should use a global per-process copy of the system certificate stores. |
UseSystemOAEPAndPSS | Enforces or disables the use of system-driven RSA OAEP and PSS computations. |
UseSystemRandom | Enables or disables the use of the OS PRNG. |
AutoValidateSignatures Property (XAdESSigner Component)
Specifies whether component should validate any present signatures when the document is opened.
Syntax
__property bool AutoValidateSignatures = { read=FAutoValidateSignatures, write=FSetAutoValidateSignatures };
Default Value
false
Remarks
This setting is switched off by default to speed up document processing. Even if the document is loaded with this property set to false, you can validate the signatures manually on a later stage using the Revalidate method.
Data Type
Boolean
BlockedCertCount Property (XAdESSigner Component)
The number of records in the BlockedCert arrays.
Syntax
__property int BlockedCertCount = { read=FBlockedCertCount, write=FSetBlockedCertCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at BlockedCertCount - 1.This property is not available at design time.
Data Type
Integer
BlockedCertBytes Property (XAdESSigner Component)
Returns the raw certificate data in DER format.
Syntax
__property DynamicArrayBlockedCertBytes[int BlockedCertIndex] = { read=FBlockedCertBytes };
Remarks
Returns the raw certificate data in DER format.
The BlockedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the BlockedCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
BlockedCertHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 BlockedCertHandle[int BlockedCertIndex] = { read=FBlockedCertHandle, write=FSetBlockedCertHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The BlockedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the BlockedCertCount property.
This property is not available at design time.
Data Type
Long64
CRLCount Property (XAdESSigner Component)
The number of records in the CRL arrays.
Syntax
__property int CRLCount = { read=FCRLCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at CRLCount - 1.This property is read-only and not available at design time.
Data Type
Integer
CRLBytes Property (XAdESSigner Component)
Returns the raw CRL data in DER format.
Syntax
__property DynamicArrayCRLBytes[int CRLIndex] = { read=FCRLBytes };
Remarks
Returns the raw CRL data in DER format.
The CRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the CRLCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
CRLHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 CRLHandle[int CRLIndex] = { read=FCRLHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The CRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the CRLCount property.
This property is read-only and not available at design time.
Data Type
Long64
CRLIssuer Property (XAdESSigner Component)
The common name of the CRL issuer (CA), typically a company name.
Syntax
__property String CRLIssuer[int CRLIndex] = { read=FCRLIssuer };
Default Value
""
Remarks
The common name of the CRL issuer (CA), typically a company name.
The CRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the CRLCount property.
This property is read-only and not available at design time.
Data Type
String
CRLIssuerRDN Property (XAdESSigner Component)
A collection of information, in the form of [OID, Value] pairs, uniquely identifying the CRL issuer.
Syntax
__property String CRLIssuerRDN[int CRLIndex] = { read=FCRLIssuerRDN };
Default Value
""
Remarks
A collection of information, in the form of [OID, Value] pairs, uniquely identifying the CRL issuer.
The CRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the CRLCount property.
This property is read-only and not available at design time.
Data Type
String
CRLLocation Property (XAdESSigner Component)
The URL that the CRL was downloaded from.
Syntax
__property String CRLLocation[int CRLIndex] = { read=FCRLLocation };
Default Value
""
Remarks
The URL that the CRL was downloaded from.
The CRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the CRLCount property.
This property is read-only and not available at design time.
Data Type
String
CRLNextUpdate Property (XAdESSigner Component)
The planned time and date of the next version of this CRL to be published.
Syntax
__property String CRLNextUpdate[int CRLIndex] = { read=FCRLNextUpdate };
Default Value
""
Remarks
The planned time and date of the next version of this CRL to be published.
The CRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the CRLCount property.
This property is read-only and not available at design time.
Data Type
String
CRLThisUpdate Property (XAdESSigner Component)
The date and time at which this version of the CRL was published.
Syntax
__property String CRLThisUpdate[int CRLIndex] = { read=FCRLThisUpdate };
Default Value
""
Remarks
The date and time at which this version of the CRL was published.
The CRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the CRLCount property.
This property is read-only and not available at design time.
Data Type
String
DataBytes Property (XAdESSigner Component)
Use this property to pass the external data to component in the byte array form.
Syntax
__property DynamicArrayDataBytes = { read=FDataBytes, write=FSetDataBytes };
Remarks
Assign a byte array containing the external data to be processed to this property.
This property is not available at design time.
Data Type
Byte Array
DataFile Property (XAdESSigner Component)
A file containing the external data covered by a detached signature.
Syntax
__property String DataFile = { read=FDataFile, write=FSetDataFile };
Default Value
""
Remarks
In the case of a detached signature, use this property to provide the external data to the component from a file. Alternatively, provide the data via DataStream.
Data Type
String
DataType Property (XAdESSigner Component)
Specifies the external data type.
Syntax
__property TsbxXAdESSignerDataTypes DataType = { read=FDataType, write=FSetDataType };
enum TsbxXAdESSignerDataTypes { cxdtXML=0, cxdtBinary=1, cxdtBase64=2 };
Default Value
cxdtXML
Remarks
Use this property to specify the type of the external data (either DataFile, DataStream or DataBytes properties) for component.
Data Type
Integer
DataURI Property (XAdESSigner Component)
Specifies a detached data resource URI.
Syntax
__property String DataURI = { read=FDataURI, write=FSetDataURI };
Default Value
""
Remarks
Specifies a URI used for data being signed, usually the data filename if stored along with a detached signature.
Data Type
String
Encoding Property (XAdESSigner Component)
Specifies XML encoding.
Syntax
__property String Encoding = { read=FEncoding, write=FSetEncoding };
Default Value
""
Remarks
Use this property to specify the encoding to apply to the XML documents.
Data Type
String
ExternalCryptoAsyncDocumentID Property (XAdESSigner Component)
Specifies an optional document ID for SignAsyncBegin() and SignAsyncEnd() calls.
Syntax
__property String ExternalCryptoAsyncDocumentID = { read=FExternalCryptoAsyncDocumentID, write=FSetExternalCryptoAsyncDocumentID };
Default Value
""
Remarks
Specifies an optional document ID for SignAsyncBegin() and SignAsyncEnd() calls.
Use this property when working with multi-signature DCAuth requests and responses to uniquely identify documents signed within a larger batch. On the completion stage, this value helps the signing component identify the correct signature in the returned batch of responses.
If using batched requests, make sure to set this property to the same value on both the pre-signing (SignAsyncBegin) and completion (SignAsyncEnd) stages.
Data Type
String
ExternalCryptoCustomParams Property (XAdESSigner Component)
Custom parameters to be passed to the signing service (uninterpreted).
Syntax
__property String ExternalCryptoCustomParams = { read=FExternalCryptoCustomParams, write=FSetExternalCryptoCustomParams };
Default Value
""
Remarks
Custom parameters to be passed to the signing service (uninterpreted).
This property is not available at design time.
Data Type
String
ExternalCryptoData Property (XAdESSigner Component)
Additional data to be included in the async state and mirrored back by the requestor.
Syntax
__property String ExternalCryptoData = { read=FExternalCryptoData, write=FSetExternalCryptoData };
Default Value
""
Remarks
Additional data to be included in the async state and mirrored back by the requestor.
This property is not available at design time.
Data Type
String
ExternalCryptoExternalHashCalculation Property (XAdESSigner Component)
Specifies whether the message hash is to be calculated at the external endpoint.
Syntax
__property bool ExternalCryptoExternalHashCalculation = { read=FExternalCryptoExternalHashCalculation, write=FSetExternalCryptoExternalHashCalculation };
Default Value
false
Remarks
Specifies whether the message hash is to be calculated at the external endpoint. Please note that this mode is not supported by the DCAuth component.
If set to true, the component will pass a few kilobytes of to-be-signed data from the document to the OnExternalSign event. This only applies when SignExternal() is called.
Data Type
Boolean
ExternalCryptoHashAlgorithm Property (XAdESSigner Component)
Specifies the request's signature hash algorithm.
Syntax
__property String ExternalCryptoHashAlgorithm = { read=FExternalCryptoHashAlgorithm, write=FSetExternalCryptoHashAlgorithm };
Default Value
"SHA256"
Remarks
Specifies the request's signature hash algorithm.
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_MD2 | MD2 | |
SB_HASH_ALGORITHM_MD4 | MD4 | |
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_CRC32 | CRC32 | |
SB_HASH_ALGORITHM_SSL3 | SSL3 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_POLY1305 | POLY1305 | |
SB_HASH_ALGORITHM_SHA3_224 | SHA3_224 | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 | |
SB_HASH_ALGORITHM_BLAKE2S_128 | BLAKE2S_128 | |
SB_HASH_ALGORITHM_BLAKE2S_160 | BLAKE2S_160 | |
SB_HASH_ALGORITHM_BLAKE2S_224 | BLAKE2S_224 | |
SB_HASH_ALGORITHM_BLAKE2S_256 | BLAKE2S_256 | |
SB_HASH_ALGORITHM_BLAKE2B_160 | BLAKE2B_160 | |
SB_HASH_ALGORITHM_BLAKE2B_256 | BLAKE2B_256 | |
SB_HASH_ALGORITHM_BLAKE2B_384 | BLAKE2B_384 | |
SB_HASH_ALGORITHM_BLAKE2B_512 | BLAKE2B_512 | |
SB_HASH_ALGORITHM_SHAKE_128 | SHAKE_128 | |
SB_HASH_ALGORITHM_SHAKE_256 | SHAKE_256 | |
SB_HASH_ALGORITHM_SHAKE_128_LEN | SHAKE_128_LEN | |
SB_HASH_ALGORITHM_SHAKE_256_LEN | SHAKE_256_LEN |
Data Type
String
ExternalCryptoKeyID Property (XAdESSigner Component)
The ID of the pre-shared key used for DC request authentication.
Syntax
__property String ExternalCryptoKeyID = { read=FExternalCryptoKeyID, write=FSetExternalCryptoKeyID };
Default Value
""
Remarks
The ID of the pre-shared key used for DC request authentication.
Asynchronous DCAuth-driven communication requires that parties authenticate each other with a secret pre-shared cryptographic key. This provides an extra protection layer for the protocol and diminishes the risk of the private key becoming abused by foreign parties. Use this property to provide the pre-shared key identifier, and use ExternalCryptoKeySecret to pass the key itself.
The same KeyID/KeySecret pair should be used on the DCAuth side for the signing requests to be accepted.
Note: The KeyID/KeySecret scheme is very similar to the AuthKey scheme used in various Cloud service providers to authenticate users.
Example:
signer.ExternalCrypto.KeyID = "MainSigningKey";
signer.ExternalCrypto.KeySecret = "abcdef0123456789";
Data Type
String
ExternalCryptoKeySecret Property (XAdESSigner Component)
The pre-shared key used for DC request authentication.
Syntax
__property String ExternalCryptoKeySecret = { read=FExternalCryptoKeySecret, write=FSetExternalCryptoKeySecret };
Default Value
""
Remarks
The pre-shared key used for DC request authentication. This key must be set and match the key used by the DCAuth counterpart for the scheme to work.
Read more about configuring authentication in the ExternalCryptoKeyID topic.
Data Type
String
ExternalCryptoMethod Property (XAdESSigner Component)
Specifies the asynchronous signing method.
Syntax
__property TsbxXAdESSignerExternalCryptoMethods ExternalCryptoMethod = { read=FExternalCryptoMethod, write=FSetExternalCryptoMethod };
enum TsbxXAdESSignerExternalCryptoMethods { asmdPKCS1=0, asmdPKCS7=1 };
Default Value
asmdPKCS1
Remarks
Specifies the asynchronous signing method. This is typically defined by the DC server capabilities and setup.
Available options:
asmdPKCS1 | 0 |
asmdPKCS7 | 1 |
Data Type
Integer
ExternalCryptoMode Property (XAdESSigner Component)
Specifies the external cryptography mode.
Syntax
__property TsbxXAdESSignerExternalCryptoModes ExternalCryptoMode = { read=FExternalCryptoMode, write=FSetExternalCryptoMode };
enum TsbxXAdESSignerExternalCryptoModes { ecmDefault=0, ecmDisabled=1, ecmGeneric=2, ecmDCAuth=3, ecmDCAuthJSON=4 };
Default Value
ecmDefault
Remarks
Specifies the external cryptography mode.
Available options:
ecmDefault | The default value (0) |
ecmDisabled | Do not use DC or external signing (1) |
ecmGeneric | Generic external signing with the OnExternalSign event (2) |
ecmDCAuth | DCAuth signing (3) |
ecmDCAuthJSON | DCAuth signing in JSON format (4) |
This property is not available at design time.
Data Type
Integer
ExternalCryptoPublicKeyAlgorithm Property (XAdESSigner Component)
Provide the public key algorithm here if the certificate is not available on the pre-signing stage.
Syntax
__property String ExternalCryptoPublicKeyAlgorithm = { read=FExternalCryptoPublicKeyAlgorithm, write=FSetExternalCryptoPublicKeyAlgorithm };
Default Value
""
Remarks
Provide the public key algorithm here if the certificate is not available on the pre-signing stage.
SB_CERT_ALGORITHM_ID_RSA_ENCRYPTION | rsaEncryption | |
SB_CERT_ALGORITHM_MD2_RSA_ENCRYPTION | md2withRSAEncryption | |
SB_CERT_ALGORITHM_MD5_RSA_ENCRYPTION | md5withRSAEncryption | |
SB_CERT_ALGORITHM_SHA1_RSA_ENCRYPTION | sha1withRSAEncryption | |
SB_CERT_ALGORITHM_ID_DSA | id-dsa | |
SB_CERT_ALGORITHM_ID_DSA_SHA1 | id-dsa-with-sha1 | |
SB_CERT_ALGORITHM_DH_PUBLIC | dhpublicnumber | |
SB_CERT_ALGORITHM_SHA224_RSA_ENCRYPTION | sha224WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA256_RSA_ENCRYPTION | sha256WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA384_RSA_ENCRYPTION | sha384WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA512_RSA_ENCRYPTION | sha512WithRSAEncryption | |
SB_CERT_ALGORITHM_ID_RSAPSS | id-RSASSA-PSS | |
SB_CERT_ALGORITHM_ID_RSAOAEP | id-RSAES-OAEP | |
SB_CERT_ALGORITHM_RSASIGNATURE_RIPEMD160 | ripemd160withRSA | |
SB_CERT_ALGORITHM_ID_ELGAMAL | elGamal | |
SB_CERT_ALGORITHM_SHA1_ECDSA | ecdsa-with-SHA1 | |
SB_CERT_ALGORITHM_RECOMMENDED_ECDSA | ecdsa-recommended | |
SB_CERT_ALGORITHM_SHA224_ECDSA | ecdsa-with-SHA224 | |
SB_CERT_ALGORITHM_SHA256_ECDSA | ecdsa-with-SHA256 | |
SB_CERT_ALGORITHM_SHA384_ECDSA | ecdsa-with-SHA384 | |
SB_CERT_ALGORITHM_SHA512_ECDSA | ecdsa-with-SHA512 | |
SB_CERT_ALGORITHM_EC | id-ecPublicKey | |
SB_CERT_ALGORITHM_SPECIFIED_ECDSA | ecdsa-specified | |
SB_CERT_ALGORITHM_GOST_R3410_1994 | id-GostR3410-94 | |
SB_CERT_ALGORITHM_GOST_R3410_2001 | id-GostR3410-2001 | |
SB_CERT_ALGORITHM_GOST_R3411_WITH_R3410_1994 | id-GostR3411-94-with-GostR3410-94 | |
SB_CERT_ALGORITHM_GOST_R3411_WITH_R3410_2001 | id-GostR3411-94-with-GostR3410-2001 | |
SB_CERT_ALGORITHM_SHA1_ECDSA_PLAIN | ecdsa-plain-SHA1 | |
SB_CERT_ALGORITHM_SHA224_ECDSA_PLAIN | ecdsa-plain-SHA224 | |
SB_CERT_ALGORITHM_SHA256_ECDSA_PLAIN | ecdsa-plain-SHA256 | |
SB_CERT_ALGORITHM_SHA384_ECDSA_PLAIN | ecdsa-plain-SHA384 | |
SB_CERT_ALGORITHM_SHA512_ECDSA_PLAIN | ecdsa-plain-SHA512 | |
SB_CERT_ALGORITHM_RIPEMD160_ECDSA_PLAIN | ecdsa-plain-RIPEMD160 | |
SB_CERT_ALGORITHM_WHIRLPOOL_RSA_ENCRYPTION | whirlpoolWithRSAEncryption | |
SB_CERT_ALGORITHM_ID_DSA_SHA224 | id-dsa-with-sha224 | |
SB_CERT_ALGORITHM_ID_DSA_SHA256 | id-dsa-with-sha256 | |
SB_CERT_ALGORITHM_SHA3_224_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-512 | |
SB_CERT_ALGORITHM_SHA3_224_ECDSA | id-ecdsa-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_ECDSA | id-ecdsa-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_ECDSA | id-ecdsa-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_ECDSA | id-ecdsa-with-sha3-512 | |
SB_CERT_ALGORITHM_SHA3_224_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-512 | |
SB_CERT_ALGORITHM_ID_DSA_SHA3_224 | id-dsa-with-sha3-224 | |
SB_CERT_ALGORITHM_ID_DSA_SHA3_256 | id-dsa-with-sha3-256 | |
SB_CERT_ALGORITHM_BLAKE2S_128_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b512 | |
SB_CERT_ALGORITHM_BLAKE2S_128_ECDSA | id-ecdsa-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_ECDSA | id-ecdsa-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_ECDSA | id-ecdsa-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_ECDSA | id-ecdsa-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_ECDSA | id-ecdsa-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_ECDSA | id-ecdsa-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_ECDSA | id-ecdsa-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_ECDSA | id-ecdsa-with-blake2b512 | |
SB_CERT_ALGORITHM_BLAKE2S_128_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b512 | |
SB_CERT_ALGORITHM_ID_DSA_BLAKE2S_224 | id-dsa-with-blake2s224 | |
SB_CERT_ALGORITHM_ID_DSA_BLAKE2S_256 | id-dsa-with-blake2s256 | |
SB_CERT_ALGORITHM_EDDSA_ED25519 | id-Ed25519 | |
SB_CERT_ALGORITHM_EDDSA_ED448 | id-Ed448 | |
SB_CERT_ALGORITHM_EDDSA_ED25519_PH | id-Ed25519ph | |
SB_CERT_ALGORITHM_EDDSA_ED448_PH | id-Ed448ph | |
SB_CERT_ALGORITHM_EDDSA | id-EdDSA | |
SB_CERT_ALGORITHM_EDDSA_SIGNATURE | id-EdDSA-sig |
Data Type
String
FIPSMode Property (XAdESSigner Component)
Reserved.
Syntax
__property bool FIPSMode = { read=FFIPSMode, write=FSetFIPSMode };
Default Value
false
Remarks
This property is reserved for future use.
Data Type
Boolean
IgnoreChainValidationErrors Property (XAdESSigner Component)
Makes the component tolerant to chain validation errors.
Syntax
__property bool IgnoreChainValidationErrors = { read=FIgnoreChainValidationErrors, write=FSetIgnoreChainValidationErrors };
Default Value
false
Remarks
If this property is set to True, any errors emerging during certificate chain validation will be ignored. This setting may be handy if the purpose of validation is the creation of an LTV signature, and the validation is performed in an environment that doesn't trust the signer's certificate chain.
Data Type
Boolean
InputBytes Property (XAdESSigner Component)
Use this property to pass the input to component in byte array form.
Syntax
__property DynamicArrayInputBytes = { read=FInputBytes, write=FSetInputBytes };
Remarks
Assign a byte array containing the data to be processed to this property.
This property is not available at design time.
Data Type
Byte Array
InputFile Property (XAdESSigner Component)
The XML document to sign.
Syntax
__property String InputFile = { read=FInputFile, write=FSetInputFile };
Default Value
""
Remarks
Provide a path to the XML file to sign.
Data Type
String
KnownCertCount Property (XAdESSigner Component)
The number of records in the KnownCert arrays.
Syntax
__property int KnownCertCount = { read=FKnownCertCount, write=FSetKnownCertCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at KnownCertCount - 1.This property is not available at design time.
Data Type
Integer
KnownCertBytes Property (XAdESSigner Component)
Returns the raw certificate data in DER format.
Syntax
__property DynamicArrayKnownCertBytes[int KnownCertIndex] = { read=FKnownCertBytes };
Remarks
Returns the raw certificate data in DER format.
The KnownCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KnownCertHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 KnownCertHandle[int KnownCertIndex] = { read=FKnownCertHandle, write=FSetKnownCertHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The KnownCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCertCount property.
This property is not available at design time.
Data Type
Long64
KnownCRLCount Property (XAdESSigner Component)
The number of records in the KnownCRL arrays.
Syntax
__property int KnownCRLCount = { read=FKnownCRLCount, write=FSetKnownCRLCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at KnownCRLCount - 1.This property is not available at design time.
Data Type
Integer
KnownCRLBytes Property (XAdESSigner Component)
Returns the raw CRL data in DER format.
Syntax
__property DynamicArrayKnownCRLBytes[int KnownCRLIndex] = { read=FKnownCRLBytes };
Remarks
Returns the raw CRL data in DER format.
The KnownCRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCRLCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KnownCRLHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 KnownCRLHandle[int KnownCRLIndex] = { read=FKnownCRLHandle, write=FSetKnownCRLHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The KnownCRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCRLCount property.
This property is not available at design time.
Data Type
Long64
KnownOCSPCount Property (XAdESSigner Component)
The number of records in the KnownOCSP arrays.
Syntax
__property int KnownOCSPCount = { read=FKnownOCSPCount, write=FSetKnownOCSPCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at KnownOCSPCount - 1.This property is not available at design time.
Data Type
Integer
KnownOCSPBytes Property (XAdESSigner Component)
A buffer containing the raw OCSP response data.
Syntax
__property DynamicArrayKnownOCSPBytes[int KnownOCSPIndex] = { read=FKnownOCSPBytes };
Remarks
A buffer containing the raw OCSP response data.
The KnownOCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownOCSPCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KnownOCSPHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 KnownOCSPHandle[int KnownOCSPIndex] = { read=FKnownOCSPHandle, write=FSetKnownOCSPHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The KnownOCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownOCSPCount property.
This property is not available at design time.
Data Type
Long64
NewSigCanonicalizationMethod Property (XAdESSigner Component)
The XML canonicalization method that was used for signing.
Syntax
__property TsbxXAdESSignerNewSigCanonicalizationMethods NewSigCanonicalizationMethod = { read=FNewSigCanonicalizationMethod, write=FSetNewSigCanonicalizationMethod };
enum TsbxXAdESSignerNewSigCanonicalizationMethods { cxcmNone=0, cxcmCanon=1, cxcmCanonComment=2, cxcmExclCanon=3, cxcmExclCanonComment=4, cxcmMinCanon=5, cxcmCanon_v1_1=6, cxcmCanonComment_v1_1=7 };
Default Value
cxcmNone
Remarks
The XML canonicalization method that was used for signing.
Supported canonicalization methods:
cxcmNone | 0 | |
cxcmCanon | 1 | |
cxcmCanonComment | 2 | |
cxcmExclCanon | 3 | |
cxcmExclCanonComment | 4 | |
cxcmMinCanon | 5 | |
cxcmCanon_v1_1 | 6 | |
cxcmCanonComment_v1_1 | 7 |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
Integer
NewSigCertificateIndex Property (XAdESSigner Component)
Returns the index of the signing certificate in the Certificates collection Use this property to look up the signing certificate in the Certificates collection.
Syntax
__property int NewSigCertificateIndex = { read=FNewSigCertificateIndex };
Default Value
-1
Remarks
Returns the index of the signing certificate in the Certificates collection
Use this property to look up the signing certificate in the Certificates collection.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Integer
NewSigChainValidationDetails Property (XAdESSigner Component)
The details of a certificate chain validation outcome.
Syntax
__property int NewSigChainValidationDetails = { read=FNewSigChainValidationDetails };
Default Value
0
Remarks
The details of a certificate chain validation outcome. They may often suggest the reasons that contributed to the overall validation result.
Returns a bit mask of the following options:
cvrBadData | 0x0001 | One or more certificates in the validation path are malformed |
cvrRevoked | 0x0002 | One or more certificates are revoked |
cvrNotYetValid | 0x0004 | One or more certificates are not yet valid |
cvrExpired | 0x0008 | One or more certificates are expired |
cvrInvalidSignature | 0x0010 | A certificate contains a non-valid digital signature |
cvrUnknownCA | 0x0020 | A CA certificate for one or more certificates has not been found (chain incomplete) |
cvrCAUnauthorized | 0x0040 | One of the CA certificates are not authorized to act as CA |
cvrCRLNotVerified | 0x0080 | One or more CRLs could not be verified |
cvrOCSPNotVerified | 0x0100 | One or more OCSP responses could not be verified |
cvrIdentityMismatch | 0x0200 | The identity protected by the certificate (a TLS endpoint or an e-mail addressee) does not match what is recorded in the certificate |
cvrNoKeyUsage | 0x0400 | A mandatory key usage is not enabled in one of the chain certificates |
cvrBlocked | 0x0800 | One or more certificates are blocked |
cvrFailure | 0x1000 | General validation failure |
cvrChainLoop | 0x2000 | Chain loop: one of the CA certificates recursively signs itself |
cvrWeakAlgorithm | 0x4000 | A weak algorithm is used in one of certificates or revocation elements |
cvrUserEnforced | 0x8000 | The chain was considered invalid following intervention from a user code |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Integer
NewSigChainValidationResult Property (XAdESSigner Component)
The outcome of a certificate chain validation routine.
Syntax
__property TsbxXAdESSignerNewSigChainValidationResults NewSigChainValidationResult = { read=FNewSigChainValidationResult };
enum TsbxXAdESSignerNewSigChainValidationResults { cvtValid=0, cvtValidButUntrusted=1, cvtInvalid=2, cvtCantBeEstablished=3 };
Default Value
cvtValid
Remarks
The outcome of a certificate chain validation routine.
Available options:
cvtValid | 0 | The chain is valid |
cvtValidButUntrusted | 1 | The chain is valid, but the root certificate is not trusted |
cvtInvalid | 2 | The chain is not valid (some of certificates are revoked, expired, or contain an invalid signature) |
cvtCantBeEstablished | 3 | The validity of the chain cannot be established because of missing or unavailable validation information (certificates, CRLs, or OCSP responses) |
Use the ValidationLog property to access the detailed validation log.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Integer
NewSigClaimedSigningTime Property (XAdESSigner Component)
The signing time from the signer's computer.
Syntax
__property String NewSigClaimedSigningTime = { read=FNewSigClaimedSigningTime, write=FSetNewSigClaimedSigningTime };
Default Value
""
Remarks
The signing time from the signer's computer.
Use this property to provide the signature production time. The claimed time is not supported by a trusted source; it may be inaccurate, forfeited, or wrong, and as such is usually taken for informational purposes only by verifiers. Use timestamp servers to embed verifiable trusted timestamps. The time is in UTC.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
String
NewSigHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 NewSigHandle = { read=FNewSigHandle, write=FSetNewSigHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
Long64
NewSigHashAlgorithm Property (XAdESSigner Component)
The hash algorithm used for signing.
Syntax
__property String NewSigHashAlgorithm = { read=FNewSigHashAlgorithm, write=FSetNewSigHashAlgorithm };
Default Value
"Unknown"
Remarks
The hash algorithm used for signing.
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
String
NewSigIssuerRDN Property (XAdESSigner Component)
The Relative Distinguished Name of the signing certificate's issuer.
Syntax
__property String NewSigIssuerRDN = { read=FNewSigIssuerRDN };
Default Value
""
Remarks
The Relative Distinguished Name of the signing certificate's issuer.
A collection of information, in the form of [OID, Value] pairs, about the company that issued the signing certificate.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
String
NewSigLastArchivalTime Property (XAdESSigner Component)
Indicates the most recent archival time of an archived signature This property returns the time of the most recent archival timestamp applied to the signature.
Syntax
__property String NewSigLastArchivalTime = { read=FNewSigLastArchivalTime };
Default Value
""
Remarks
Indicates the most recent archival time of an archived signature
This property returns the time of the most recent archival timestamp applied to the signature. This property only makes sense for 'archived' (e.g. CAdES-A) signatures. Time is in UTC.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
String
NewSigPolicyHash Property (XAdESSigner Component)
The signature policy hash value.
Syntax
__property String NewSigPolicyHash = { read=FNewSigPolicyHash, write=FSetNewSigPolicyHash };
Default Value
""
Remarks
The signature policy hash value.
Use this property to get the signature policy hash from EPES signatures
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
String
NewSigPolicyHashAlgorithm Property (XAdESSigner Component)
The algorithm that was used to calculate the signature policy hash Use this property to get or set the hash algorithm used to calculate the signature policy hash.
Syntax
__property String NewSigPolicyHashAlgorithm = { read=FNewSigPolicyHashAlgorithm, write=FSetNewSigPolicyHashAlgorithm };
Default Value
""
Remarks
The algorithm that was used to calculate the signature policy hash
Use this property to get or set the hash algorithm used to calculate the signature policy hash. Read the actual hash value from NewSigPolicyHash.
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_MD2 | MD2 | |
SB_HASH_ALGORITHM_MD4 | MD4 | |
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_CRC32 | CRC32 | |
SB_HASH_ALGORITHM_SSL3 | SSL3 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_POLY1305 | POLY1305 | |
SB_HASH_ALGORITHM_SHA3_224 | SHA3_224 | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 | |
SB_HASH_ALGORITHM_BLAKE2S_128 | BLAKE2S_128 | |
SB_HASH_ALGORITHM_BLAKE2S_160 | BLAKE2S_160 | |
SB_HASH_ALGORITHM_BLAKE2S_224 | BLAKE2S_224 | |
SB_HASH_ALGORITHM_BLAKE2S_256 | BLAKE2S_256 | |
SB_HASH_ALGORITHM_BLAKE2B_160 | BLAKE2B_160 | |
SB_HASH_ALGORITHM_BLAKE2B_256 | BLAKE2B_256 | |
SB_HASH_ALGORITHM_BLAKE2B_384 | BLAKE2B_384 | |
SB_HASH_ALGORITHM_BLAKE2B_512 | BLAKE2B_512 | |
SB_HASH_ALGORITHM_SHAKE_128 | SHAKE_128 | |
SB_HASH_ALGORITHM_SHAKE_256 | SHAKE_256 | |
SB_HASH_ALGORITHM_SHAKE_128_LEN | SHAKE_128_LEN | |
SB_HASH_ALGORITHM_SHAKE_256_LEN | SHAKE_256_LEN |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
String
NewSigPolicyID Property (XAdESSigner Component)
The policy ID that was included or to be included into the signature.
Syntax
__property String NewSigPolicyID = { read=FNewSigPolicyID, write=FSetNewSigPolicyID };
Default Value
""
Remarks
The policy ID that was included or to be included into the signature.
Use this property to retrieve the signature policy identifier from EPES signatures.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
String
NewSigPolicyURI Property (XAdESSigner Component)
The signature policy URI that was included in the signature.
Syntax
__property String NewSigPolicyURI = { read=FNewSigPolicyURI, write=FSetNewSigPolicyURI };
Default Value
""
Remarks
The signature policy URI that was included in the signature.
Use this property to set or retrieve the URI of the signature policy from EPES signatures.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
String
NewSigSerialNumber Property (XAdESSigner Component)
The serial number of the timestamp.
Syntax
__property DynamicArrayNewSigSerialNumber = { read=FNewSigSerialNumber };
Remarks
The serial number of the timestamp.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
NewSigSignatureBytes Property (XAdESSigner Component)
Returns the binary representation of the XML-DSig/XAdES signature.
Syntax
__property DynamicArrayNewSigSignatureBytes = { read=FNewSigSignatureBytes };
Remarks
Returns the binary representation of the XML-DSig/XAdES signature.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
NewSigSignatureType Property (XAdESSigner Component)
The signature type to employ when signing the document.
Syntax
__property TsbxXAdESSignerNewSigSignatureTypes NewSigSignatureType = { read=FNewSigSignatureType, write=FSetNewSigSignatureType };
enum TsbxXAdESSignerNewSigSignatureTypes { cxstDetached=1, cxstEnveloping=2, cxstEnveloped=4 };
Default Value
cxstEnveloped
Remarks
The signature type to employ when signing the document.
This property specifies the signature type to be used when signing the document.
Supported values:
cxstDetached | 1 | Specifies whether a detached signature should be produced. I.e., a signature which is kept separately from the signed document. |
cxstEnveloping | 2 | Specifies whether an enveloping signature should be produced. |
cxstEnveloped | 4 | Specifies whether an enveloped signature should be produced. |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
Integer
NewSigSignatureValidationResult Property (XAdESSigner Component)
Contains the signature validation result.
Syntax
__property TsbxXAdESSignerNewSigSignatureValidationResults NewSigSignatureValidationResult = { read=FNewSigSignatureValidationResult };
enum TsbxXAdESSignerNewSigSignatureValidationResults { xsvValid=0, xsvUnknown=1, xsvCorrupted=2, xsvSignerNotFound=3, xsvFailure=4, xsvReferenceCorrupted=5 };
Default Value
xsvValid
Remarks
Contains the signature validation result.
Use this property to check the result of the most recent XML signature validation.
xsvValid | 0 | |
xsvUnknown | 1 | |
xsvCorrupted | 2 | |
xsvSignerNotFound | 3 | |
xsvFailure | 4 | |
xsvReferenceCorrupted | 5 |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Integer
NewSigSubjectKeyID Property (XAdESSigner Component)
Contains the subject key identifier of the signing certificate.
Syntax
__property DynamicArrayNewSigSubjectKeyID = { read=FNewSigSubjectKeyID };
Remarks
Contains the subject key identifier of the signing certificate.
Subject Key Identifier is a (non-critical) X.509 certificate extension which allows the identification of certificates containing a particular public key. In SecureBlackbox, the unique identifier is represented by a SHA-1 hash of the bit string of the subject public key.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
NewSigSubjectRDN Property (XAdESSigner Component)
Contains information about the person owning the signing certificate.
Syntax
__property String NewSigSubjectRDN = { read=FNewSigSubjectRDN };
Default Value
""
Remarks
Contains information about the person owning the signing certificate. Only certificates with given subject information will be enumerated during the search operation. Information is stored in the form of [Object Identifier, Value] pairs.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
String
NewSigTimestamped Property (XAdESSigner Component)
Use this property to establish whether the signature contains an embedded timestamp.
Syntax
__property bool NewSigTimestamped = { read=FNewSigTimestamped };
Default Value
false
Remarks
Use this property to establish whether the signature contains an embedded timestamp.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
Boolean
NewSigValidatedSigningTime Property (XAdESSigner Component)
Contains the certified signing time.
Syntax
__property String NewSigValidatedSigningTime = { read=FNewSigValidatedSigningTime };
Default Value
""
Remarks
Contains the certified signing time.
Use this property to obtain the signing time as certified by a timestamp from a trusted timestamping authority. This property is only non-empty if there was a valid timestamp included in the signature.
NewSigClaimedSigningTime returns a non-trusted signing time from the signer's computer.
Both times are in UTC.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
String
NewSigValidationLog Property (XAdESSigner Component)
Contains the complete log of the certificate validation routine.
Syntax
__property String NewSigValidationLog = { read=FNewSigValidationLog };
Default Value
""
Remarks
Contains the complete log of the certificate validation routine.
Use this property to access the chain validation log produced by the component. The log can be very useful when investigating issues with chain validation, as it contains a step-by-step trace of the entire validation procedure.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is read-only and not available at design time.
Data Type
String
NewSigXAdES Property (XAdESSigner Component)
Specifies whether the document contains an advanced signature (XAdES).
Syntax
__property bool NewSigXAdES = { read=FNewSigXAdES, write=FSetNewSigXAdES };
Default Value
true
Remarks
Specifies whether the document contains an advanced signature (XAdES).
Use this property to check whether the document is signed with XAdES or XML-DSIG only.
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
Boolean
NewSigXAdESForm Property (XAdESSigner Component)
Specifies which form of XAdES should be produced.
Syntax
__property TsbxXAdESSignerNewSigXAdESForms NewSigXAdESForm = { read=FNewSigXAdESForm, write=FSetNewSigXAdESForm };
enum TsbxXAdESSignerNewSigXAdESForms { xafNone=0, xafBasic=1, xafBES=2, xafEPES=3, xafT=4, xafC=5, xafX=6, xafXL=7, xafA=8, xafExtendedBES=9, xafExtendedEPES=10, xafExtendedT=11, xafExtendedC=12, xafExtendedX=13, xafExtendedXLong=14, xafExtendedXL=15, xafExtendedA=16 };
Default Value
xafNone
Remarks
Specifies which form of XAdES should be produced.
Use this property to specify the form (level) of advanced electronic signature to be produced.
The supported forms are:
xafNone | 0 | None |
xafBasic | 1 | XAdES form, supported by XAdES v1.1.1 |
xafBES | 2 | XAdES-BES form, supported starting from XAdES v1.2.2 |
xafEPES | 3 | XAdES-EPES form, supported starting from XAdES v1.2.2 |
xafT | 4 | XAdES-T form |
xafC | 5 | XAdES-C form |
xafX | 6 | XAdES-X form |
xafXL | 7 | XAdES-X-L form |
xafA | 8 | XAdES-A form |
xafExtendedBES | 9 | XAdES-E-BES form |
xafExtendedEPES | 10 | XAdES-E-EPES form |
xafExtendedT | 11 | XAdES-E-T form |
xafExtendedC | 12 | XAdES-E-C form |
xafExtendedX | 13 | XAdES-E-X form |
xafExtendedXLong | 14 | XAdES-E-X-Long form (type 1) |
xafExtendedXL | 15 | XAdES-E-X-L form (type 2) |
xafExtendedA | 16 | XAdES-E-A form |
* XAdES-E-* forms are supported starting from XAdES v1.3.2
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
Integer
NewSigXAdESVersion Property (XAdESSigner Component)
Specifies XAdES version.
Syntax
__property TsbxXAdESSignerNewSigXAdESVersions NewSigXAdESVersion = { read=FNewSigXAdESVersion, write=FSetNewSigXAdESVersion };
enum TsbxXAdESSignerNewSigXAdESVersions { xavUnknown=0, xav111=1, xav122=2, xav132=3, xav141=4 };
Default Value
xav132
Remarks
Specifies XAdES version.
This property specifies the version of the XAdES specification the signature should comply with. For the form of XAdES, use XAdESForm.
The supported vesions are:
xavUnknown | 0 | Unknown |
xav111 | 1 | XAdES v1.1.1 |
xav122 | 2 | XAdES v1.2.2 |
xav132 | 3 | XAdES v1.3.2 |
xav141 | 4 | XAdES v1.4.1 (aka v1.4.2) |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
Integer
NewSigXMLElement Property (XAdESSigner Component)
Specifies the XML element where to save the signature or containing the signature.
Syntax
__property String NewSigXMLElement = { read=FNewSigXMLElement, write=FSetNewSigXMLElement };
Default Value
""
Remarks
Specifies the XML element where to save the signature or containing the signature.
This property specifies the XML element where to save the electronic signature or that contains the signature to be validated.
Supported values are:
"" | an empty string indicates the Document element |
"#id" | indicates an XML element with specified Id |
XPath expression | indicates an XML element selected using XPath expression. Use XPathNamespaces property to specify Prefixes and NamespaceURIs
For example: "/root/data[1]" - indicates the second "data" element under the document element with a name "root" "//ns1:data" - indicates a data element. "ns1" prefix should be defined in XPathNamespaces property |
Node name | indicates an XML element selected using its NodeName.
For example: "data" - indicates an XML element with node name "data". |
The parameter specifies the index of the item in the array. The size of the array is controlled by the NewSigCount property.
This property is not available at design time.
Data Type
String
OCSPCount Property (XAdESSigner Component)
The number of records in the OCSP arrays.
Syntax
__property int OCSPCount = { read=FOCSPCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at OCSPCount - 1.This property is read-only and not available at design time.
Data Type
Integer
OCSPBytes Property (XAdESSigner Component)
A buffer containing the raw OCSP response data.
Syntax
__property DynamicArrayOCSPBytes[int OCSPIndex] = { read=FOCSPBytes };
Remarks
A buffer containing the raw OCSP response data.
The OCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the OCSPCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
OCSPHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 OCSPHandle[int OCSPIndex] = { read=FOCSPHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The OCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the OCSPCount property.
This property is read-only and not available at design time.
Data Type
Long64
OCSPIssuer Property (XAdESSigner Component)
Indicates the issuer of this response (a CA or its authorized representative).
Syntax
__property String OCSPIssuer[int OCSPIndex] = { read=FOCSPIssuer };
Default Value
""
Remarks
Indicates the issuer of this response (a CA or its authorized representative).
The OCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the OCSPCount property.
This property is read-only and not available at design time.
Data Type
String
OCSPIssuerRDN Property (XAdESSigner Component)
Indicates the RDN of the issuer of this response (a CA or its authorized representative).
Syntax
__property String OCSPIssuerRDN[int OCSPIndex] = { read=FOCSPIssuerRDN };
Default Value
""
Remarks
Indicates the RDN of the issuer of this response (a CA or its authorized representative).
The OCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the OCSPCount property.
This property is read-only and not available at design time.
Data Type
String
OCSPLocation Property (XAdESSigner Component)
The location of the OCSP responder.
Syntax
__property String OCSPLocation[int OCSPIndex] = { read=FOCSPLocation };
Default Value
""
Remarks
The location of the OCSP responder.
The OCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the OCSPCount property.
This property is read-only and not available at design time.
Data Type
String
OCSPProducedAt Property (XAdESSigner Component)
Specifies the time when the response was produced, in UTC.
Syntax
__property String OCSPProducedAt[int OCSPIndex] = { read=FOCSPProducedAt };
Default Value
""
Remarks
Specifies the time when the response was produced, in UTC.
The OCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the OCSPCount property.
This property is read-only and not available at design time.
Data Type
String
OfflineMode Property (XAdESSigner Component)
Switches the component to offline mode.
Syntax
__property bool OfflineMode = { read=FOfflineMode, write=FSetOfflineMode };
Default Value
false
Remarks
When working in offline mode, the component restricts itself from using any online revocation information sources, such as CRL or OCSP responders.
Offline mode may be useful if there is a need to verify the completeness of the validation information included within the signature or provided via KnownCertificates, KnownCRLs, and other related properties.
Data Type
Boolean
OutputBytes Property (XAdESSigner Component)
Use this property to read the output the component object has produced.
Syntax
__property DynamicArrayOutputBytes = { read=FOutputBytes };
Remarks
Read the contents of this property after the operation has completed to read the produced output. This property will only be set if the OutputFile and OutputStream properties had not been assigned.
This property is read-only and not available at design time.
Data Type
Byte Array
OutputFile Property (XAdESSigner Component)
Specifies the file where the signed document will be saved.
Syntax
__property String OutputFile = { read=FOutputFile, write=FSetOutputFile };
Default Value
""
Remarks
Provide the full path to the file where the signed document should be saved.
Data Type
String
Profile Property (XAdESSigner Component)
Specifies a pre-defined profile to apply when creating the signature.
Syntax
__property String Profile = { read=FProfile, write=FSetProfile };
Default Value
""
Remarks
Advanced signatures come in many variants, which are often defined by parties that needs to process them or by local standards. SecureBlackbox profiles are sets of pre-defined configurations which correspond to particular signature variants. By specifying a profile, you are pre-configuring the component to make it produce the signature that matches the configuration corresponding to that profile.
Supported profiles:
"ES.Factura" | Spanish Factura Electronica | |
"BR.AD_RB_v2_3" | Brazilian signature with Basic Reference (AD-RB) version 2.3 | |
"BR.AD_RB_v2_4" | Brazilian signature with Basic Reference (AD-RB) version 2.4 | |
"BR.AD_RT_v2_3" | Brazilian signature with Time Reference (AD-RT) version 2.3 | |
"BR.AD_RT_v2_4" | Brazilian signature with Time Reference (AD-RT) version 2.4 | |
"BR.AD_RV_v2_3" | Brazilian signature with References for Validation (AD-RV) version 2.3 | |
"BR.AD_RV_v2_4" | Brazilian signature with References for Validation (AD-RV) version 2.4 | |
"BR.AD_RC_v2_3" | Brazilian signature with Complete References (AD-RC) version 2.3 | |
"BR.AD_RC_v2_4" | Brazilian signature with Complete References (AD-RC) version 2.4 | |
"BR.AD_RA_v2_3" | Brazilian signature with References for Archiving (AD-RA) version 2.3 | |
"BR.AD_RA_v2_4" | Brazilian signature with References for Archiving (AD-RA) version 2.4 | |
"XAdES.BASELINE-B" | XAdES B-B level (ETSI TS 103 171 v2.1.1 Baseline Profile) | |
"XAdES.BASELINE-T" | XAdES B-T level | |
"XAdES.BASELINE-LT" | XAdES B-LT level | |
"XAdES.BASELINE-LTA" | XAdES B-LTA level | |
"XAdES.BASELINE-E-B" | Extended XAdES B-B level (ETSI EN 319 132-1 v1.1.1 Building Blocks and Baseline, ETSI EN 319 132-2 v1.1.1 extended XAdES) | |
"XAdES.BASELINE-E-T" | Extended XAdES B-T level | |
"XAdES.BASELINE-E-LT" | Extended XAdES B-LT level | |
"XAdES.BASELINE-E-LTA" | Extended XAdES B-LTA level | |
"XAdES.CounterSignature" | Adds XAdES countersignature (supported in XML and XAdES signer control) |
"ES.Factura" profile equivalent to the following settings:
using (XMLReference Ref = new XMLReference())
{
Ref.ID = "Reference-1";
Ref.TargetXMLElement = "";
Ref.UseEnvelopedSignatureTransform = true;
XAdESSigner.References.Add(Ref);
}
using (XMLReference Ref = new XMLReference())
{
Ref.URI = "#KeyInfo-1";
XAdESSigner.References.Add(Ref);
}
XAdESSigner.NewSignature.XAdESVersion = XAdESVersions.xav132;
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafEPES;
XAdESSigner.Config("KeyInfoDetails=certificate");
XAdESSigner.Config("KeyInfoID=KeyInfo-1");
XAdESSigner.Config("ClaimedRoleText=emisor");
XAdESSigner.Config("SigPolicyId=http://www.facturae.es/politica_de_firma_formato_facturae/politica_de_firma_formato_facturae_v3_1.pdf");
XAdESSigner.Config("SigPolicyDescription=Pol" + "\u00ED" + "tica de Firma FacturaE v3.1");
XAdESSigner.Config("SigPolicyHash=3a18b197aba90fa6aff0dee912f0c006110bea13");
XAdESSigner.Config("SigPolicyHashAlgorithm=SHA1");
XAdESSigner.Config("DataObjectFormatObjectReference=#Reference-1");
XAdESSigner.Config("DataObjectFormatMimeType=text/xml");
XAdESSigner.Config("DataObjectFormatDescription=Factura electr" + "\u00F3" + "nica");
"XAdES.BASELINE-B" profile equivalent to the following settings:
using (XMLReference Ref = new XMLReference())
{
Ref.ID = "Reference-1";
Ref.TargetXMLElement = "";
Ref.UseEnvelopedSignatureTransform = true;
XAdESSigner.References.Add(Ref);
}
XAdESSigner.NewSignature.XAdESVersion = XAdESVersions.xav141;
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafBES;
XAdESSigner.Config("DataObjectFormatObjectReference=#Reference-1");
XAdESSigner.Config("DataObjectFormatMimeType=text/xml");
"XAdES.BASELINE-T" profile extends "XAdES.BASELINE-B" profile with the following settings:
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafT;
XAdESSigner.TimestampServer = "https://freetsa.org/tsr";
"XAdES.BASELINE-LT" profile extends "XAdES.BASELINE-T" profile with the following settings:
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafXL;
XAdESSigner.Config("RefsTimestampType=none");
XAdESSigner.Config("ValidationDataRefsDetails=none");
"XAdES.BASELINE-LTA" profile extends "XAdES.BASELINE-LT" profile with the following settings:
XAdESSigner.XAdESForm = XadessignerXAdESForms.xafA;
"XAdES.BASELINE-E-B" profile equivalent to the following settings:
using (XMLReference Ref = new XMLReference())
{
Ref.ID = "Reference-1";
Ref.TargetXMLElement = "";
Ref.UseEnvelopedSignatureTransform = true;
XAdESSigner.References.Add(Ref);
}
XAdESSigner.NewSignature.XAdESVersion = XAdESVersions.xav141;
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafExtendedBES;
XAdESSigner.Config("DataObjectFormatObjectReference=#Reference-1");
XAdESSigner.Config("DataObjectFormatMimeType=text/xml");
"XAdES.BASELINE-E-T" profile extends "XAdES.BASELINE-E-B" profile with the following settings:
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafExtendedT;
XAdESSigner.TimestampServer = "https://freetsa.org/tsr";
"XAdES.BASELINE-E-LT" profile extends "XAdES.BASELINE-E-T" profile with the following settings:
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafExtendedXL;
XAdESSigner.Config("RefsTimestampType=none");
XAdESSigner.Config("ValidationDataRefsDetails=none");
"XAdES.BASELINE-E-LTA" profile extends "XAdES.BASELINE-E-LT" profile with the following settings:
XAdESSigner.NewSignature.XAdESForm = XAdESForms.xafExtendedA;
"XAdES.CounterSignature" profile allows to add XAdES countersignature to the existent XAdES-BES or EPES signature. Use XMLElement property to specify existent XAdES signature. Sample code:
XAdESSigner.Profile = "XAdES.CounterSignature";
XAdESSigner.NewSignature.XAdES = false;
Data Type
String
ProxyAddress Property (XAdESSigner Component)
The IP address of the proxy server.
Syntax
__property String ProxyAddress = { read=FProxyAddress, write=FSetProxyAddress };
Default Value
""
Remarks
The IP address of the proxy server.
Data Type
String
ProxyAuthentication Property (XAdESSigner Component)
The authentication type used by the proxy server.
Syntax
__property TsbxXAdESSignerProxyAuthentications ProxyAuthentication = { read=FProxyAuthentication, write=FSetProxyAuthentication };
enum TsbxXAdESSignerProxyAuthentications { patNoAuthentication=0, patBasic=1, patDigest=2, patNTLM=3 };
Default Value
patNoAuthentication
Remarks
The authentication type used by the proxy server.
patNoAuthentication | 0 |
patBasic | 1 |
patDigest | 2 |
patNTLM | 3 |
Data Type
Integer
ProxyPassword Property (XAdESSigner Component)
The password to authenticate to the proxy server.
Syntax
__property String ProxyPassword = { read=FProxyPassword, write=FSetProxyPassword };
Default Value
""
Remarks
The password to authenticate to the proxy server.
Data Type
String
ProxyPort Property (XAdESSigner Component)
The port on the proxy server to connect to.
Syntax
__property int ProxyPort = { read=FProxyPort, write=FSetProxyPort };
Default Value
0
Remarks
The port on the proxy server to connect to.
Data Type
Integer
ProxyProxyType Property (XAdESSigner Component)
The type of the proxy server.
Syntax
__property TsbxXAdESSignerProxyProxyTypes ProxyProxyType = { read=FProxyProxyType, write=FSetProxyProxyType };
enum TsbxXAdESSignerProxyProxyTypes { cptNone=0, cptSocks4=1, cptSocks5=2, cptWebTunnel=3, cptHTTP=4 };
Default Value
cptNone
Remarks
The type of the proxy server.
The WebTunnel proxy is also known as HTTPS proxy. Unlike HTTP proxy, HTTPS proxy (WebTunnel) provides end-to-end security.
cptNone | 0 |
cptSocks4 | 1 |
cptSocks5 | 2 |
cptWebTunnel | 3 |
cptHTTP | 4 |
Data Type
Integer
ProxyRequestHeaders Property (XAdESSigner Component)
Contains HTTP request headers for WebTunnel and HTTP proxy.
Syntax
__property String ProxyRequestHeaders = { read=FProxyRequestHeaders, write=FSetProxyRequestHeaders };
Default Value
""
Remarks
Contains HTTP request headers for WebTunnel and HTTP proxy.
Data Type
String
ProxyResponseBody Property (XAdESSigner Component)
Contains the HTTP or HTTPS (WebTunnel) proxy response body.
Syntax
__property String ProxyResponseBody = { read=FProxyResponseBody, write=FSetProxyResponseBody };
Default Value
""
Remarks
Contains the HTTP or HTTPS (WebTunnel) proxy response body.
Data Type
String
ProxyResponseHeaders Property (XAdESSigner Component)
Contains response headers received from an HTTP or HTTPS (WebTunnel) proxy server.
Syntax
__property String ProxyResponseHeaders = { read=FProxyResponseHeaders, write=FSetProxyResponseHeaders };
Default Value
""
Remarks
Contains response headers received from an HTTP or HTTPS (WebTunnel) proxy server.
Data Type
String
ProxyUseIPv6 Property (XAdESSigner Component)
Specifies whether IPv6 should be used when connecting through the proxy.
Syntax
__property bool ProxyUseIPv6 = { read=FProxyUseIPv6, write=FSetProxyUseIPv6 };
Default Value
false
Remarks
Specifies whether IPv6 should be used when connecting through the proxy.
Data Type
Boolean
ProxyUseProxy Property (XAdESSigner Component)
Enables or disables proxy-driven connection.
Syntax
__property bool ProxyUseProxy = { read=FProxyUseProxy, write=FSetProxyUseProxy };
Default Value
false
Remarks
Enables or disables proxy-driven connection.
Data Type
Boolean
ProxyUsername Property (XAdESSigner Component)
Specifies the username credential for proxy authentication.
Syntax
__property String ProxyUsername = { read=FProxyUsername, write=FSetProxyUsername };
Default Value
""
Remarks
Specifies the username credential for proxy authentication.
Data Type
String
ReferenceCount Property (XAdESSigner Component)
The number of records in the Reference arrays.
Syntax
__property int ReferenceCount = { read=FReferenceCount, write=FSetReferenceCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
- ReferenceAutoGenerateElementId
- ReferenceCanonicalizationMethod
- ReferenceCustomElementId
- ReferenceDigestValue
- ReferenceHandle
- ReferenceHashAlgorithm
- ReferenceHasURI
- ReferenceID
- ReferenceInclusiveNamespacesPrefixList
- ReferenceReferenceType
- ReferenceSignatureIndex
- ReferenceTargetData
- ReferenceTargetType
- ReferenceTargetXMLElement
- ReferenceURI
- ReferenceUseBase64Transform
- ReferenceUseEnvelopedSignatureTransform
- ReferenceUseXPathFilter2Transform
- ReferenceUseXPathTransform
- ReferenceXPathExpression
- ReferenceXPathFilter2Expressions
- ReferenceXPathFilter2Filters
- ReferenceXPathFilter2PrefixList
- ReferenceXPathPrefixList
This property is not available at design time.
Data Type
Integer
ReferenceAutoGenerateElementId Property (XAdESSigner Component)
Specifies whether the identifier (ID) attribute for a referenced (target) element should be auto-generated during signing.
Syntax
__property bool ReferenceAutoGenerateElementId[int ReferenceIndex] = { read=FReferenceAutoGenerateElementId, write=FSetReferenceAutoGenerateElementId };
Default Value
false
Remarks
Specifies whether the identifier (ID) attribute for a referenced (target) element should be auto-generated during signing. Used when the referenced element doesn't have an ID and CustomElementId and URI properties are empty.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Boolean
ReferenceCanonicalizationMethod Property (XAdESSigner Component)
Use this property to specify the canonicalization method for the transform of the reference.
Syntax
__property TsbxXAdESSignerReferenceCanonicalizationMethods ReferenceCanonicalizationMethod[int ReferenceIndex] = { read=FReferenceCanonicalizationMethod, write=FSetReferenceCanonicalizationMethod };
enum TsbxXAdESSignerReferenceCanonicalizationMethods { cxcmNone=0, cxcmCanon=1, cxcmCanonComment=2, cxcmExclCanon=3, cxcmExclCanonComment=4, cxcmMinCanon=5, cxcmCanon_v1_1=6, cxcmCanonComment_v1_1=7 };
Default Value
cxcmNone
Remarks
Use this property to specify the canonicalization method for the transform of the reference. Use cxcmNone value to not to include canonicalization transform in transform chain. See XML-Signature Syntax and Processing specification for details.
cxcmNone | 0 | |
cxcmCanon | 1 | |
cxcmCanonComment | 2 | |
cxcmExclCanon | 3 | |
cxcmExclCanonComment | 4 | |
cxcmMinCanon | 5 | |
cxcmCanon_v1_1 | 6 | |
cxcmCanonComment_v1_1 | 7 |
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Integer
ReferenceCustomElementId Property (XAdESSigner Component)
Specifies a custom identifier (ID) attribute for a referenced (target) element that will be set on signing.
Syntax
__property String ReferenceCustomElementId[int ReferenceIndex] = { read=FReferenceCustomElementId, write=FSetReferenceCustomElementId };
Default Value
""
Remarks
Specifies a custom identifier (ID) attribute for a referenced (target) element that will be set on signing. Used when the referenced element doesn't have an ID and URI property is empty.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceDigestValue Property (XAdESSigner Component)
Use this property to get or set the value of the digest calculated over the referenced data.
Syntax
__property DynamicArrayReferenceDigestValue[int ReferenceIndex] = { read=FReferenceDigestValue, write=FSetReferenceDigestValue };
Remarks
Use this property to get or set the value of the digest calculated over the referenced data.
This property is optional and should be set only if you don't provide the actual data via TargetData or URI. If the data is set, then you don't need to set DigestValue since it will be calculated automatically.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Byte Array
ReferenceHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 ReferenceHandle[int ReferenceIndex] = { read=FReferenceHandle, write=FSetReferenceHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Long64
ReferenceHashAlgorithm Property (XAdESSigner Component)
Specifies the hash algorithm to be used.
Syntax
__property String ReferenceHashAlgorithm[int ReferenceIndex] = { read=FReferenceHashAlgorithm, write=FSetReferenceHashAlgorithm };
Default Value
"SHA256"
Remarks
Specifies the hash algorithm to be used.
Supported values:
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 |
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceHasURI Property (XAdESSigner Component)
Specifies whether the URI is set (even when it is empty).
Syntax
__property bool ReferenceHasURI[int ReferenceIndex] = { read=FReferenceHasURI, write=FSetReferenceHasURI };
Default Value
true
Remarks
Specifies whether the URI is set (even when it is empty).
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Boolean
ReferenceID Property (XAdESSigner Component)
A user-defined identifier (ID) attribute of this Reference element.
Syntax
__property String ReferenceID[int ReferenceIndex] = { read=FReferenceID, write=FSetReferenceID };
Default Value
""
Remarks
A user-defined identifier (ID) attribute of this Reference element.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceInclusiveNamespacesPrefixList Property (XAdESSigner Component)
Use this property to specify InclusiveNamespaces PrefixList for exclusive canonicalization transform of the reference.
Syntax
__property String ReferenceInclusiveNamespacesPrefixList[int ReferenceIndex] = { read=FReferenceInclusiveNamespacesPrefixList, write=FSetReferenceInclusiveNamespacesPrefixList };
Default Value
""
Remarks
Use this property to specify InclusiveNamespaces PrefixList for exclusive canonicalization transform of the reference. See XML-Signature Syntax and Processing specification for details.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceReferenceType Property (XAdESSigner Component)
The Reference's type attribute as defined in XMLDSIG specification.
Syntax
__property String ReferenceReferenceType[int ReferenceIndex] = { read=FReferenceReferenceType, write=FSetReferenceReferenceType };
Default Value
""
Remarks
The Reference's type attribute as defined in XMLDSIG specification.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceSignatureIndex Property (XAdESSigner Component)
Returns the index of the owner signature, if applicable.
Syntax
__property int ReferenceSignatureIndex[int ReferenceIndex] = { read=FReferenceSignatureIndex };
Default Value
-1
Remarks
Returns the index of the owner signature, if applicable.
Use this property to establish the index of the associated signature object in the signature collection.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is read-only and not available at design time.
Data Type
Integer
ReferenceTargetData Property (XAdESSigner Component)
Contains the referenced external data when the digest value is not explicitly specified.
Syntax
__property DynamicArrayReferenceTargetData[int ReferenceIndex] = { read=FReferenceTargetData, write=FSetReferenceTargetData };
Remarks
Contains the referenced external data when the digest value is not explicitly specified.
This property is optional and should only be set if you reference the external data via URI, and you don't provide the digest value explicitly via DigestValue.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Byte Array
ReferenceTargetType Property (XAdESSigner Component)
The reference's target type to use.
Syntax
__property TsbxXAdESSignerReferenceTargetTypes ReferenceTargetType[int ReferenceIndex] = { read=FReferenceTargetType, write=FSetReferenceTargetType };
enum TsbxXAdESSignerReferenceTargetTypes { rttAuto=0, rttXMLElement=1, rttData=2, rttURI=3 };
Default Value
rttAuto
Remarks
The reference's target type to use.
Use this property to specify the reference's target type to use when forming the signature.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Integer
ReferenceTargetXMLElement Property (XAdESSigner Component)
This property specifies the referenced XML element.
Syntax
__property String ReferenceTargetXMLElement[int ReferenceIndex] = { read=FReferenceTargetXMLElement, write=FSetReferenceTargetXMLElement };
Default Value
""
Remarks
This property specifies the referenced XML element. Used when the URI property is not set. In this case, the URI value is generated based on the ID of the referenced (target) XML element. If the URI property is set, this property is ignored until the ResolveReference event.
Supported values are:
"" | an empty string indicates the Document element. |
"#id" | indicates an XML element with specified Id. |
XPointer expression | indicates an XML element selected using XPointer expression. Use the XPathNamespaces property to specify Prefixes and NamespaceURIs
For example: "/root/data[1]" - indicates the second "data" element under the document element with a name "root" "//ns1:data" - indicates a data element. "ns1" prefix should be defined in XPathNamespaces property |
Node name | indicates an XML element selected using its NodeName.
For example: "data" - indicates an XML element with node name "data". |
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceURI Property (XAdESSigner Component)
Use this property to get or set the URL which references the data.
Syntax
__property String ReferenceURI[int ReferenceIndex] = { read=FReferenceURI, write=FSetReferenceURI };
Default Value
""
Remarks
Use this property to get or set the URL which references the data. If the data is external, the application must set either TargetData or DigestValue. If TargetData is set, the digest is calculated automatically unless it is explicitly set by the application via DigestValue.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceUseBase64Transform Property (XAdESSigner Component)
Specifies whether Base64 transform is included in transform chain.
Syntax
__property bool ReferenceUseBase64Transform[int ReferenceIndex] = { read=FReferenceUseBase64Transform, write=FSetReferenceUseBase64Transform };
Default Value
false
Remarks
Specifies whether Base64 transform is included in transform chain.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Boolean
ReferenceUseEnvelopedSignatureTransform Property (XAdESSigner Component)
Specifies whether enveloped signature transform is included in transform chain.
Syntax
__property bool ReferenceUseEnvelopedSignatureTransform[int ReferenceIndex] = { read=FReferenceUseEnvelopedSignatureTransform, write=FSetReferenceUseEnvelopedSignatureTransform };
Default Value
false
Remarks
Specifies whether enveloped signature transform is included in transform chain.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Boolean
ReferenceUseXPathFilter2Transform Property (XAdESSigner Component)
Specifies whether XPath Filter 2.
Syntax
__property bool ReferenceUseXPathFilter2Transform[int ReferenceIndex] = { read=FReferenceUseXPathFilter2Transform, write=FSetReferenceUseXPathFilter2Transform };
Default Value
false
Remarks
Specifies whether XPath Filter 2.0 transform is included in transform chain.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Boolean
ReferenceUseXPathTransform Property (XAdESSigner Component)
Specifies whether XPath transform is included in transform chain.
Syntax
__property bool ReferenceUseXPathTransform[int ReferenceIndex] = { read=FReferenceUseXPathTransform, write=FSetReferenceUseXPathTransform };
Default Value
false
Remarks
Specifies whether XPath transform is included in transform chain.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
Boolean
ReferenceXPathExpression Property (XAdESSigner Component)
Use this property to specify XPath expression for XPath transform of the reference.
Syntax
__property String ReferenceXPathExpression[int ReferenceIndex] = { read=FReferenceXPathExpression, write=FSetReferenceXPathExpression };
Default Value
""
Remarks
Use this property to specify XPath expression for XPath transform of the reference.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceXPathFilter2Expressions Property (XAdESSigner Component)
Use this property to specify XPointer expression(s) for XPath Filter 2.
Syntax
__property String ReferenceXPathFilter2Expressions[int ReferenceIndex] = { read=FReferenceXPathFilter2Expressions, write=FSetReferenceXPathFilter2Expressions };
Default Value
""
Remarks
Use this property to specify XPointer expression(s) for XPath Filter 2.0 transform of the reference.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceXPathFilter2Filters Property (XAdESSigner Component)
Use this property to specify XPointer filter(s) for XPath Filter 2.
Syntax
__property String ReferenceXPathFilter2Filters[int ReferenceIndex] = { read=FReferenceXPathFilter2Filters, write=FSetReferenceXPathFilter2Filters };
Default Value
""
Remarks
Use this property to specify XPointer filter(s) for XPath Filter 2.0 transform of the reference. The prefix list is comma-separated.
Supported values:
"intersect" | Intersect filter computes the intersection of the selected subtrees with the filter node-set. |
"subtract" | Subtract filter computes the subtraction of the selected subtrees with the filter node-set. |
"union" | Union filter computes the union of the selected subtrees with the filter node-set. |
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceXPathFilter2PrefixList Property (XAdESSigner Component)
Use this property to specify a prefix list for XPath Filter 2.
Syntax
__property String ReferenceXPathFilter2PrefixList[int ReferenceIndex] = { read=FReferenceXPathFilter2PrefixList, write=FSetReferenceXPathFilter2PrefixList };
Default Value
""
Remarks
Use this property to specify a prefix list for XPath Filter 2.0 transform of the reference. The prefix list is space-separated. Namespace URIs that are used are taken from XPathNamespaces property.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
ReferenceXPathPrefixList Property (XAdESSigner Component)
Use this property to specify a prefix list for XPath transform of the reference.
Syntax
__property String ReferenceXPathPrefixList[int ReferenceIndex] = { read=FReferenceXPathPrefixList, write=FSetReferenceXPathPrefixList };
Default Value
""
Remarks
Use this property to specify a prefix list for XPath transform of the reference. The prefix list is space-separated. Namespace URIs that are used are taken from XPathNamespaces property.
The ReferenceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReferenceCount property.
This property is not available at design time.
Data Type
String
RevocationCheck Property (XAdESSigner Component)
Specifies the kind(s) of revocation check to perform for all chain certificates.
Syntax
__property TsbxXAdESSignerRevocationChecks RevocationCheck = { read=FRevocationCheck, write=FSetRevocationCheck };
enum TsbxXAdESSignerRevocationChecks { crcNone=0, crcAuto=1, crcAllCRL=2, crcAllOCSP=3, crcAllCRLAndOCSP=4, crcAnyCRL=5, crcAnyOCSP=6, crcAnyCRLOrOCSP=7, crcAnyOCSPOrCRL=8 };
Default Value
crcAuto
Remarks
Revocation checking is necessary to ensure the integrity of the chain and obtain up-to-date certificate validity and trustworthiness information.
Certificate Revocation Lists (CRLs) and Online Certificate Status Protocol (OCSP) responses serve the same purpose of ensuring that the certificate had not been revoked by the Certificate Authority (CA) at the time of use. Depending on your circumstances and security policy requirements, you may want to use either one or both of the revocation information source types.
crcNone | 0 | No revocation checking. |
crcAuto | 1 | Automatic mode selection. Currently this maps to crcAnyOCSPOrCRL, but it may change in the future. |
crcAllCRL | 2 | All provided CRL endpoints will be checked, and all checks must succeed. |
crcAllOCSP | 3 | All provided OCSP endpoints will be checked, and all checks must succeed. |
crcAllCRLAndOCSP | 4 | All provided CRL and OCSP endpoints will be checked, and all checks must succeed. |
crcAnyCRL | 5 | All provided CRL endpoints will be checked, and at least one check must succeed. |
crcAnyOCSP | 6 | All provided OCSP endpoints will be checked, and at least one check must succeed. |
crcAnyCRLOrOCSP | 7 | All provided CRL and OCSP endpoints will be checked, and at least one check must succeed. CRL endpoints are checked first. |
crcAnyOCSPOrCRL | 8 | All provided CRL and OCSP endpoints will be checked, and at least one check must succeed. OCSP endpoints are checked first. |
This setting controls the way the revocation checks are performed for every certificate in the chain. Typically certificates come with two types of revocation information sources: CRL (certificate revocation lists) and OCSP responders. CRLs are static objects periodically published by the CA at some online location. OCSP responders are active online services maintained by the CA that can provide up-to-date information on certificate statuses in near real time.
There are some conceptual differences between the two. CRLs are normally larger in size. Their use involves some latency because there is normally some delay between the time when a certificate was revoked and the time the subsequent CRL mentioning that is published. The benefits of CRL is that the same object can provide statuses for all certificates issued by a particular CA, and that the whole technology is much simpler than OCSP (and thus is supported by more CAs).
This setting lets you adjust the validation course by including or excluding certain types of revocation sources from the validation process. The crcAnyOCSPOrCRL setting (give preference to the faster OCSP route and only demand one source to succeed) is a good choice for most typical validation environments. The "crcAll*" modes are much stricter, and may be used in scenarios where bulletproof validity information is essential.
Note: If no CRL or OCSP endpoints are provided by the CA, the revocation check will be considered successful. This is because the CA chose not to supply revocation information for its certificates, meaning they are considered irrevocable.
Note: Within each of the above settings, if any retrieved CRL or OCSP response indicates that the certificate has been revoked, the revocation check fails.
Data Type
Integer
SignatureCount Property (XAdESSigner Component)
The number of records in the Signature arrays.
Syntax
__property int SignatureCount = { read=FSignatureCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
- SignatureCanonicalizationMethod
- SignatureCertificateIndex
- SignatureChainValidationDetails
- SignatureChainValidationResult
- SignatureClaimedSigningTime
- SignatureHandle
- SignatureHashAlgorithm
- SignatureIssuerRDN
- SignatureLastArchivalTime
- SignaturePolicyHash
- SignaturePolicyHashAlgorithm
- SignaturePolicyID
- SignaturePolicyURI
- SignatureSerialNumber
- SignatureSignatureBytes
- SignatureSignatureType
- SignatureSignatureValidationResult
- SignatureSubjectKeyID
- SignatureSubjectRDN
- SignatureTimestamped
- SignatureValidatedSigningTime
- SignatureValidationLog
- SignatureXAdES
- SignatureXAdESForm
- SignatureXAdESVersion
- SignatureXMLElement
This property is read-only and not available at design time.
Data Type
Integer
SignatureCanonicalizationMethod Property (XAdESSigner Component)
The XML canonicalization method that was used for signing.
Syntax
__property TsbxXAdESSignerSignatureCanonicalizationMethods SignatureCanonicalizationMethod[int SignatureIndex] = { read=FSignatureCanonicalizationMethod };
enum TsbxXAdESSignerSignatureCanonicalizationMethods { cxcmNone=0, cxcmCanon=1, cxcmCanonComment=2, cxcmExclCanon=3, cxcmExclCanonComment=4, cxcmMinCanon=5, cxcmCanon_v1_1=6, cxcmCanonComment_v1_1=7 };
Default Value
cxcmNone
Remarks
The XML canonicalization method that was used for signing.
Supported canonicalization methods:
cxcmNone | 0 | |
cxcmCanon | 1 | |
cxcmCanonComment | 2 | |
cxcmExclCanon | 3 | |
cxcmExclCanonComment | 4 | |
cxcmMinCanon | 5 | |
cxcmCanon_v1_1 | 6 | |
cxcmCanonComment_v1_1 | 7 |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureCertificateIndex Property (XAdESSigner Component)
Returns the index of the signing certificate in the Certificates collection Use this property to look up the signing certificate in the Certificates collection.
Syntax
__property int SignatureCertificateIndex[int SignatureIndex] = { read=FSignatureCertificateIndex };
Default Value
-1
Remarks
Returns the index of the signing certificate in the Certificates collection
Use this property to look up the signing certificate in the Certificates collection.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureChainValidationDetails Property (XAdESSigner Component)
The details of a certificate chain validation outcome.
Syntax
__property int SignatureChainValidationDetails[int SignatureIndex] = { read=FSignatureChainValidationDetails };
Default Value
0
Remarks
The details of a certificate chain validation outcome. They may often suggest the reasons that contributed to the overall validation result.
Returns a bit mask of the following options:
cvrBadData | 0x0001 | One or more certificates in the validation path are malformed |
cvrRevoked | 0x0002 | One or more certificates are revoked |
cvrNotYetValid | 0x0004 | One or more certificates are not yet valid |
cvrExpired | 0x0008 | One or more certificates are expired |
cvrInvalidSignature | 0x0010 | A certificate contains a non-valid digital signature |
cvrUnknownCA | 0x0020 | A CA certificate for one or more certificates has not been found (chain incomplete) |
cvrCAUnauthorized | 0x0040 | One of the CA certificates are not authorized to act as CA |
cvrCRLNotVerified | 0x0080 | One or more CRLs could not be verified |
cvrOCSPNotVerified | 0x0100 | One or more OCSP responses could not be verified |
cvrIdentityMismatch | 0x0200 | The identity protected by the certificate (a TLS endpoint or an e-mail addressee) does not match what is recorded in the certificate |
cvrNoKeyUsage | 0x0400 | A mandatory key usage is not enabled in one of the chain certificates |
cvrBlocked | 0x0800 | One or more certificates are blocked |
cvrFailure | 0x1000 | General validation failure |
cvrChainLoop | 0x2000 | Chain loop: one of the CA certificates recursively signs itself |
cvrWeakAlgorithm | 0x4000 | A weak algorithm is used in one of certificates or revocation elements |
cvrUserEnforced | 0x8000 | The chain was considered invalid following intervention from a user code |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureChainValidationResult Property (XAdESSigner Component)
The outcome of a certificate chain validation routine.
Syntax
__property TsbxXAdESSignerSignatureChainValidationResults SignatureChainValidationResult[int SignatureIndex] = { read=FSignatureChainValidationResult };
enum TsbxXAdESSignerSignatureChainValidationResults { cvtValid=0, cvtValidButUntrusted=1, cvtInvalid=2, cvtCantBeEstablished=3 };
Default Value
cvtValid
Remarks
The outcome of a certificate chain validation routine.
Available options:
cvtValid | 0 | The chain is valid |
cvtValidButUntrusted | 1 | The chain is valid, but the root certificate is not trusted |
cvtInvalid | 2 | The chain is not valid (some of certificates are revoked, expired, or contain an invalid signature) |
cvtCantBeEstablished | 3 | The validity of the chain cannot be established because of missing or unavailable validation information (certificates, CRLs, or OCSP responses) |
Use the ValidationLog property to access the detailed validation log.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureClaimedSigningTime Property (XAdESSigner Component)
The signing time from the signer's computer.
Syntax
__property String SignatureClaimedSigningTime[int SignatureIndex] = { read=FSignatureClaimedSigningTime };
Default Value
""
Remarks
The signing time from the signer's computer.
Use this property to provide the signature production time. The claimed time is not supported by a trusted source; it may be inaccurate, forfeited, or wrong, and as such is usually taken for informational purposes only by verifiers. Use timestamp servers to embed verifiable trusted timestamps. The time is in UTC.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignatureHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 SignatureHandle[int SignatureIndex] = { read=FSignatureHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Long64
SignatureHashAlgorithm Property (XAdESSigner Component)
The hash algorithm used for signing.
Syntax
__property String SignatureHashAlgorithm[int SignatureIndex] = { read=FSignatureHashAlgorithm };
Default Value
"Unknown"
Remarks
The hash algorithm used for signing.
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignatureIssuerRDN Property (XAdESSigner Component)
The Relative Distinguished Name of the signing certificate's issuer.
Syntax
__property String SignatureIssuerRDN[int SignatureIndex] = { read=FSignatureIssuerRDN };
Default Value
""
Remarks
The Relative Distinguished Name of the signing certificate's issuer.
A collection of information, in the form of [OID, Value] pairs, about the company that issued the signing certificate.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignatureLastArchivalTime Property (XAdESSigner Component)
Indicates the most recent archival time of an archived signature This property returns the time of the most recent archival timestamp applied to the signature.
Syntax
__property String SignatureLastArchivalTime[int SignatureIndex] = { read=FSignatureLastArchivalTime };
Default Value
""
Remarks
Indicates the most recent archival time of an archived signature
This property returns the time of the most recent archival timestamp applied to the signature. This property only makes sense for 'archived' (e.g. CAdES-A) signatures. Time is in UTC.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignaturePolicyHash Property (XAdESSigner Component)
The signature policy hash value.
Syntax
__property String SignaturePolicyHash[int SignatureIndex] = { read=FSignaturePolicyHash };
Default Value
""
Remarks
The signature policy hash value.
Use this property to get the signature policy hash from EPES signatures
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignaturePolicyHashAlgorithm Property (XAdESSigner Component)
The algorithm that was used to calculate the signature policy hash Use this property to get or set the hash algorithm used to calculate the signature policy hash.
Syntax
__property String SignaturePolicyHashAlgorithm[int SignatureIndex] = { read=FSignaturePolicyHashAlgorithm };
Default Value
""
Remarks
The algorithm that was used to calculate the signature policy hash
Use this property to get or set the hash algorithm used to calculate the signature policy hash. Read the actual hash value from SignaturePolicyHash.
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_MD2 | MD2 | |
SB_HASH_ALGORITHM_MD4 | MD4 | |
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_CRC32 | CRC32 | |
SB_HASH_ALGORITHM_SSL3 | SSL3 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_POLY1305 | POLY1305 | |
SB_HASH_ALGORITHM_SHA3_224 | SHA3_224 | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 | |
SB_HASH_ALGORITHM_BLAKE2S_128 | BLAKE2S_128 | |
SB_HASH_ALGORITHM_BLAKE2S_160 | BLAKE2S_160 | |
SB_HASH_ALGORITHM_BLAKE2S_224 | BLAKE2S_224 | |
SB_HASH_ALGORITHM_BLAKE2S_256 | BLAKE2S_256 | |
SB_HASH_ALGORITHM_BLAKE2B_160 | BLAKE2B_160 | |
SB_HASH_ALGORITHM_BLAKE2B_256 | BLAKE2B_256 | |
SB_HASH_ALGORITHM_BLAKE2B_384 | BLAKE2B_384 | |
SB_HASH_ALGORITHM_BLAKE2B_512 | BLAKE2B_512 | |
SB_HASH_ALGORITHM_SHAKE_128 | SHAKE_128 | |
SB_HASH_ALGORITHM_SHAKE_256 | SHAKE_256 | |
SB_HASH_ALGORITHM_SHAKE_128_LEN | SHAKE_128_LEN | |
SB_HASH_ALGORITHM_SHAKE_256_LEN | SHAKE_256_LEN |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignaturePolicyID Property (XAdESSigner Component)
The policy ID that was included or to be included into the signature.
Syntax
__property String SignaturePolicyID[int SignatureIndex] = { read=FSignaturePolicyID };
Default Value
""
Remarks
The policy ID that was included or to be included into the signature.
Use this property to retrieve the signature policy identifier from EPES signatures.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignaturePolicyURI Property (XAdESSigner Component)
The signature policy URI that was included in the signature.
Syntax
__property String SignaturePolicyURI[int SignatureIndex] = { read=FSignaturePolicyURI };
Default Value
""
Remarks
The signature policy URI that was included in the signature.
Use this property to set or retrieve the URI of the signature policy from EPES signatures.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignatureSerialNumber Property (XAdESSigner Component)
The serial number of the timestamp.
Syntax
__property DynamicArraySignatureSerialNumber[int SignatureIndex] = { read=FSignatureSerialNumber };
Remarks
The serial number of the timestamp.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
SignatureSignatureBytes Property (XAdESSigner Component)
Returns the binary representation of the XML-DSig/XAdES signature.
Syntax
__property DynamicArraySignatureSignatureBytes[int SignatureIndex] = { read=FSignatureSignatureBytes };
Remarks
Returns the binary representation of the XML-DSig/XAdES signature.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
SignatureSignatureType Property (XAdESSigner Component)
The signature type to employ when signing the document.
Syntax
__property TsbxXAdESSignerSignatureSignatureTypes SignatureSignatureType[int SignatureIndex] = { read=FSignatureSignatureType };
enum TsbxXAdESSignerSignatureSignatureTypes { cxstDetached=1, cxstEnveloping=2, cxstEnveloped=4 };
Default Value
cxstEnveloped
Remarks
The signature type to employ when signing the document.
This property specifies the signature type to be used when signing the document.
Supported values:
cxstDetached | 1 | Specifies whether a detached signature should be produced. I.e., a signature which is kept separately from the signed document. |
cxstEnveloping | 2 | Specifies whether an enveloping signature should be produced. |
cxstEnveloped | 4 | Specifies whether an enveloped signature should be produced. |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureSignatureValidationResult Property (XAdESSigner Component)
Contains the signature validation result.
Syntax
__property TsbxXAdESSignerSignatureSignatureValidationResults SignatureSignatureValidationResult[int SignatureIndex] = { read=FSignatureSignatureValidationResult };
enum TsbxXAdESSignerSignatureSignatureValidationResults { xsvValid=0, xsvUnknown=1, xsvCorrupted=2, xsvSignerNotFound=3, xsvFailure=4, xsvReferenceCorrupted=5 };
Default Value
xsvValid
Remarks
Contains the signature validation result.
Use this property to check the result of the most recent XML signature validation.
xsvValid | 0 | |
xsvUnknown | 1 | |
xsvCorrupted | 2 | |
xsvSignerNotFound | 3 | |
xsvFailure | 4 | |
xsvReferenceCorrupted | 5 |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureSubjectKeyID Property (XAdESSigner Component)
Contains the subject key identifier of the signing certificate.
Syntax
__property DynamicArraySignatureSubjectKeyID[int SignatureIndex] = { read=FSignatureSubjectKeyID };
Remarks
Contains the subject key identifier of the signing certificate.
Subject Key Identifier is a (non-critical) X.509 certificate extension which allows the identification of certificates containing a particular public key. In SecureBlackbox, the unique identifier is represented by a SHA-1 hash of the bit string of the subject public key.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
SignatureSubjectRDN Property (XAdESSigner Component)
Contains information about the person owning the signing certificate.
Syntax
__property String SignatureSubjectRDN[int SignatureIndex] = { read=FSignatureSubjectRDN };
Default Value
""
Remarks
Contains information about the person owning the signing certificate. Only certificates with given subject information will be enumerated during the search operation. Information is stored in the form of [Object Identifier, Value] pairs.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignatureTimestamped Property (XAdESSigner Component)
Use this property to establish whether the signature contains an embedded timestamp.
Syntax
__property bool SignatureTimestamped[int SignatureIndex] = { read=FSignatureTimestamped };
Default Value
false
Remarks
Use this property to establish whether the signature contains an embedded timestamp.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Boolean
SignatureValidatedSigningTime Property (XAdESSigner Component)
Contains the certified signing time.
Syntax
__property String SignatureValidatedSigningTime[int SignatureIndex] = { read=FSignatureValidatedSigningTime };
Default Value
""
Remarks
Contains the certified signing time.
Use this property to obtain the signing time as certified by a timestamp from a trusted timestamping authority. This property is only non-empty if there was a valid timestamp included in the signature.
SignatureClaimedSigningTime returns a non-trusted signing time from the signer's computer.
Both times are in UTC.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignatureValidationLog Property (XAdESSigner Component)
Contains the complete log of the certificate validation routine.
Syntax
__property String SignatureValidationLog[int SignatureIndex] = { read=FSignatureValidationLog };
Default Value
""
Remarks
Contains the complete log of the certificate validation routine.
Use this property to access the chain validation log produced by the component. The log can be very useful when investigating issues with chain validation, as it contains a step-by-step trace of the entire validation procedure.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SignatureXAdES Property (XAdESSigner Component)
Specifies whether the document contains an advanced signature (XAdES).
Syntax
__property bool SignatureXAdES[int SignatureIndex] = { read=FSignatureXAdES };
Default Value
true
Remarks
Specifies whether the document contains an advanced signature (XAdES).
Use this property to check whether the document is signed with XAdES or XML-DSIG only.
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Boolean
SignatureXAdESForm Property (XAdESSigner Component)
Specifies which form of XAdES should be produced.
Syntax
__property TsbxXAdESSignerSignatureXAdESForms SignatureXAdESForm[int SignatureIndex] = { read=FSignatureXAdESForm };
enum TsbxXAdESSignerSignatureXAdESForms { xafNone=0, xafBasic=1, xafBES=2, xafEPES=3, xafT=4, xafC=5, xafX=6, xafXL=7, xafA=8, xafExtendedBES=9, xafExtendedEPES=10, xafExtendedT=11, xafExtendedC=12, xafExtendedX=13, xafExtendedXLong=14, xafExtendedXL=15, xafExtendedA=16 };
Default Value
xafNone
Remarks
Specifies which form of XAdES should be produced.
Use this property to specify the form (level) of advanced electronic signature to be produced.
The supported forms are:
xafNone | 0 | None |
xafBasic | 1 | XAdES form, supported by XAdES v1.1.1 |
xafBES | 2 | XAdES-BES form, supported starting from XAdES v1.2.2 |
xafEPES | 3 | XAdES-EPES form, supported starting from XAdES v1.2.2 |
xafT | 4 | XAdES-T form |
xafC | 5 | XAdES-C form |
xafX | 6 | XAdES-X form |
xafXL | 7 | XAdES-X-L form |
xafA | 8 | XAdES-A form |
xafExtendedBES | 9 | XAdES-E-BES form |
xafExtendedEPES | 10 | XAdES-E-EPES form |
xafExtendedT | 11 | XAdES-E-T form |
xafExtendedC | 12 | XAdES-E-C form |
xafExtendedX | 13 | XAdES-E-X form |
xafExtendedXLong | 14 | XAdES-E-X-Long form (type 1) |
xafExtendedXL | 15 | XAdES-E-X-L form (type 2) |
xafExtendedA | 16 | XAdES-E-A form |
* XAdES-E-* forms are supported starting from XAdES v1.3.2
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureXAdESVersion Property (XAdESSigner Component)
Specifies XAdES version.
Syntax
__property TsbxXAdESSignerSignatureXAdESVersions SignatureXAdESVersion[int SignatureIndex] = { read=FSignatureXAdESVersion };
enum TsbxXAdESSignerSignatureXAdESVersions { xavUnknown=0, xav111=1, xav122=2, xav132=3, xav141=4 };
Default Value
xav132
Remarks
Specifies XAdES version.
This property specifies the version of the XAdES specification the signature should comply with. For the form of XAdES, use XAdESForm.
The supported vesions are:
xavUnknown | 0 | Unknown |
xav111 | 1 | XAdES v1.1.1 |
xav122 | 2 | XAdES v1.2.2 |
xav132 | 3 | XAdES v1.3.2 |
xav141 | 4 | XAdES v1.4.1 (aka v1.4.2) |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
Integer
SignatureXMLElement Property (XAdESSigner Component)
Specifies the XML element where to save the signature or containing the signature.
Syntax
__property String SignatureXMLElement[int SignatureIndex] = { read=FSignatureXMLElement };
Default Value
""
Remarks
Specifies the XML element where to save the signature or containing the signature.
This property specifies the XML element where to save the electronic signature or that contains the signature to be validated.
Supported values are:
"" | an empty string indicates the Document element |
"#id" | indicates an XML element with specified Id |
XPath expression | indicates an XML element selected using XPath expression. Use XPathNamespaces property to specify Prefixes and NamespaceURIs
For example: "/root/data[1]" - indicates the second "data" element under the document element with a name "root" "//ns1:data" - indicates a data element. "ns1" prefix should be defined in XPathNamespaces property |
Node name | indicates an XML element selected using its NodeName.
For example: "data" - indicates an XML element with node name "data". |
The SignatureIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SignatureCount property.
This property is read-only and not available at design time.
Data Type
String
SigningCertBytes Property (XAdESSigner Component)
Returns the raw certificate data in DER format.
Syntax
__property DynamicArraySigningCertBytes = { read=FSigningCertBytes };
Remarks
Returns the raw certificate data in DER format.
This property is read-only and not available at design time.
Data Type
Byte Array
SigningCertHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 SigningCertHandle = { read=FSigningCertHandle, write=FSetSigningCertHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
This property is not available at design time.
Data Type
Long64
SigningChainCount Property (XAdESSigner Component)
The number of records in the SigningChain arrays.
Syntax
__property int SigningChainCount = { read=FSigningChainCount, write=FSetSigningChainCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at SigningChainCount - 1.This property is not available at design time.
Data Type
Integer
SigningChainBytes Property (XAdESSigner Component)
Returns the raw certificate data in DER format.
Syntax
__property DynamicArraySigningChainBytes[int SigningChainIndex] = { read=FSigningChainBytes };
Remarks
Returns the raw certificate data in DER format.
The SigningChainIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SigningChainCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
SigningChainHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 SigningChainHandle[int SigningChainIndex] = { read=FSigningChainHandle, write=FSetSigningChainHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The SigningChainIndex parameter specifies the index of the item in the array. The size of the array is controlled by the SigningChainCount property.
This property is not available at design time.
Data Type
Long64
SocketDNSMode Property (XAdESSigner Component)
Selects the DNS resolver to use: the component's (secure) built-in one, or the one provided by the system.
Syntax
__property TsbxXAdESSignerSocketDNSModes SocketDNSMode = { read=FSocketDNSMode, write=FSetSocketDNSMode };
enum TsbxXAdESSignerSocketDNSModes { dmAuto=0, dmPlatform=1, dmOwn=2, dmOwnSecure=3 };
Default Value
dmAuto
Remarks
Selects the DNS resolver to use: the component's (secure) built-in one, or the one provided by the system.
dmAuto | 0 |
dmPlatform | 1 |
dmOwn | 2 |
dmOwnSecure | 3 |
Data Type
Integer
SocketDNSPort Property (XAdESSigner Component)
Specifies the port number to be used for sending queries to the DNS server.
Syntax
__property int SocketDNSPort = { read=FSocketDNSPort, write=FSetSocketDNSPort };
Default Value
0
Remarks
Specifies the port number to be used for sending queries to the DNS server.
Data Type
Integer
SocketDNSQueryTimeout Property (XAdESSigner Component)
The timeout (in milliseconds) for each DNS query.
Syntax
__property int SocketDNSQueryTimeout = { read=FSocketDNSQueryTimeout, write=FSetSocketDNSQueryTimeout };
Default Value
0
Remarks
The timeout (in milliseconds) for each DNS query. The value of 0 indicates an infinite timeout.
Data Type
Integer
SocketDNSServers Property (XAdESSigner Component)
The addresses of DNS servers to use for address resolution, separated by commas or semicolons.
Syntax
__property String SocketDNSServers = { read=FSocketDNSServers, write=FSetSocketDNSServers };
Default Value
""
Remarks
The addresses of DNS servers to use for address resolution, separated by commas or semicolons.
Data Type
String
SocketDNSTotalTimeout Property (XAdESSigner Component)
The timeout (in milliseconds) for the whole resolution process.
Syntax
__property int SocketDNSTotalTimeout = { read=FSocketDNSTotalTimeout, write=FSetSocketDNSTotalTimeout };
Default Value
0
Remarks
The timeout (in milliseconds) for the whole resolution process. The value of 0 indicates an infinite timeout.
Data Type
Integer
SocketIncomingSpeedLimit Property (XAdESSigner Component)
The maximum number of bytes to read from the socket, per second.
Syntax
__property int SocketIncomingSpeedLimit = { read=FSocketIncomingSpeedLimit, write=FSetSocketIncomingSpeedLimit };
Default Value
0
Remarks
The maximum number of bytes to read from the socket, per second.
Data Type
Integer
SocketLocalAddress Property (XAdESSigner Component)
The local network interface to bind the socket to.
Syntax
__property String SocketLocalAddress = { read=FSocketLocalAddress, write=FSetSocketLocalAddress };
Default Value
""
Remarks
The local network interface to bind the socket to.
Data Type
String
SocketLocalPort Property (XAdESSigner Component)
The local port number to bind the socket to.
Syntax
__property int SocketLocalPort = { read=FSocketLocalPort, write=FSetSocketLocalPort };
Default Value
0
Remarks
The local port number to bind the socket to.
Data Type
Integer
SocketOutgoingSpeedLimit Property (XAdESSigner Component)
The maximum number of bytes to write to the socket, per second.
Syntax
__property int SocketOutgoingSpeedLimit = { read=FSocketOutgoingSpeedLimit, write=FSetSocketOutgoingSpeedLimit };
Default Value
0
Remarks
The maximum number of bytes to write to the socket, per second.
Data Type
Integer
SocketTimeout Property (XAdESSigner Component)
The maximum period of waiting, in milliseconds, after which the socket operation is considered unsuccessful.
Syntax
__property int SocketTimeout = { read=FSocketTimeout, write=FSetSocketTimeout };
Default Value
60000
Remarks
The maximum period of waiting, in milliseconds, after which the socket operation is considered unsuccessful.
If Timeout is set to 0, a socket operation will expire after the system-default timeout (2 hrs 8 min for TCP stack).
Data Type
Integer
SocketUseIPv6 Property (XAdESSigner Component)
Enables or disables IP protocol version 6.
Syntax
__property bool SocketUseIPv6 = { read=FSocketUseIPv6, write=FSetSocketUseIPv6 };
Default Value
false
Remarks
Enables or disables IP protocol version 6.
Data Type
Boolean
TimestampCount Property (XAdESSigner Component)
The number of records in the Timestamp arrays.
Syntax
__property int TimestampCount = { read=FTimestampCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
- TimestampAccuracy
- TimestampBytes
- TimestampCertificateIndex
- TimestampChainValidationDetails
- TimestampChainValidationResult
- TimestampHashAlgorithm
- TimestampSerialNumber
- TimestampSignatureIndex
- TimestampTime
- TimestampTimestampType
- TimestampTSAName
- TimestampValidationLog
- TimestampValidationResult
This property is read-only and not available at design time.
Data Type
Integer
TimestampAccuracy Property (XAdESSigner Component)
This property indicates the accuracy of the included time mark, in microseconds.
Syntax
__property __int64 TimestampAccuracy[int TimestampIndex] = { read=FTimestampAccuracy };
Default Value
0
Remarks
This field indicates the accuracy of the included time mark, in microseconds.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Long64
TimestampBytes Property (XAdESSigner Component)
Returns the raw timestamp data in DER format.
Syntax
__property DynamicArrayTimestampBytes[int TimestampIndex] = { read=FTimestampBytes };
Remarks
Returns the raw timestamp data in DER format.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
TimestampCertificateIndex Property (XAdESSigner Component)
Returns the index of the TSA certificate in the Certificates collection.
Syntax
__property int TimestampCertificateIndex[int TimestampIndex] = { read=FTimestampCertificateIndex };
Default Value
-1
Remarks
Returns the index of the TSA certificate in the Certificates collection.
Use this property to look up the TSA certificate in the Certificates collection.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Integer
TimestampChainValidationDetails Property (XAdESSigner Component)
The details of a certificate chain validation outcome.
Syntax
__property int TimestampChainValidationDetails[int TimestampIndex] = { read=FTimestampChainValidationDetails };
Default Value
0
Remarks
The details of a certificate chain validation outcome. They may often suggest the reasons that contributed to the overall validation result.
Returns a bit mask of the following options:
cvrBadData | 0x0001 | One or more certificates in the validation path are malformed |
cvrRevoked | 0x0002 | One or more certificates are revoked |
cvrNotYetValid | 0x0004 | One or more certificates are not yet valid |
cvrExpired | 0x0008 | One or more certificates are expired |
cvrInvalidSignature | 0x0010 | A certificate contains a non-valid digital signature |
cvrUnknownCA | 0x0020 | A CA certificate for one or more certificates has not been found (chain incomplete) |
cvrCAUnauthorized | 0x0040 | One of the CA certificates are not authorized to act as CA |
cvrCRLNotVerified | 0x0080 | One or more CRLs could not be verified |
cvrOCSPNotVerified | 0x0100 | One or more OCSP responses could not be verified |
cvrIdentityMismatch | 0x0200 | The identity protected by the certificate (a TLS endpoint or an e-mail addressee) does not match what is recorded in the certificate |
cvrNoKeyUsage | 0x0400 | A mandatory key usage is not enabled in one of the chain certificates |
cvrBlocked | 0x0800 | One or more certificates are blocked |
cvrFailure | 0x1000 | General validation failure |
cvrChainLoop | 0x2000 | Chain loop: one of the CA certificates recursively signs itself |
cvrWeakAlgorithm | 0x4000 | A weak algorithm is used in one of certificates or revocation elements |
cvrUserEnforced | 0x8000 | The chain was considered invalid following intervention from a user code |
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Integer
TimestampChainValidationResult Property (XAdESSigner Component)
The outcome of a certificate chain validation routine.
Syntax
__property TsbxXAdESSignerTimestampChainValidationResults TimestampChainValidationResult[int TimestampIndex] = { read=FTimestampChainValidationResult };
enum TsbxXAdESSignerTimestampChainValidationResults { cvtValid=0, cvtValidButUntrusted=1, cvtInvalid=2, cvtCantBeEstablished=3 };
Default Value
cvtValid
Remarks
The outcome of a certificate chain validation routine.
Available options:
cvtValid | 0 | The chain is valid |
cvtValidButUntrusted | 1 | The chain is valid, but the root certificate is not trusted |
cvtInvalid | 2 | The chain is not valid (some of certificates are revoked, expired, or contain an invalid signature) |
cvtCantBeEstablished | 3 | The validity of the chain cannot be established because of missing or unavailable validation information (certificates, CRLs, or OCSP responses) |
Use the ValidationLog property to access the detailed validation log.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Integer
TimestampHashAlgorithm Property (XAdESSigner Component)
Returns the timestamp's hash algorithm.
Syntax
__property String TimestampHashAlgorithm[int TimestampIndex] = { read=FTimestampHashAlgorithm };
Default Value
""
Remarks
Returns the timestamp's hash algorithm.
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_MD2 | MD2 | |
SB_HASH_ALGORITHM_MD4 | MD4 | |
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_CRC32 | CRC32 | |
SB_HASH_ALGORITHM_SSL3 | SSL3 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_POLY1305 | POLY1305 | |
SB_HASH_ALGORITHM_SHA3_224 | SHA3_224 | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 | |
SB_HASH_ALGORITHM_BLAKE2S_128 | BLAKE2S_128 | |
SB_HASH_ALGORITHM_BLAKE2S_160 | BLAKE2S_160 | |
SB_HASH_ALGORITHM_BLAKE2S_224 | BLAKE2S_224 | |
SB_HASH_ALGORITHM_BLAKE2S_256 | BLAKE2S_256 | |
SB_HASH_ALGORITHM_BLAKE2B_160 | BLAKE2B_160 | |
SB_HASH_ALGORITHM_BLAKE2B_256 | BLAKE2B_256 | |
SB_HASH_ALGORITHM_BLAKE2B_384 | BLAKE2B_384 | |
SB_HASH_ALGORITHM_BLAKE2B_512 | BLAKE2B_512 | |
SB_HASH_ALGORITHM_SHAKE_128 | SHAKE_128 | |
SB_HASH_ALGORITHM_SHAKE_256 | SHAKE_256 | |
SB_HASH_ALGORITHM_SHAKE_128_LEN | SHAKE_128_LEN | |
SB_HASH_ALGORITHM_SHAKE_256_LEN | SHAKE_256_LEN |
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
String
TimestampSerialNumber Property (XAdESSigner Component)
Returns the timestamp's serial number.
Syntax
__property DynamicArrayTimestampSerialNumber[int TimestampIndex] = { read=FTimestampSerialNumber };
Remarks
Returns the timestamp's serial number.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
TimestampSignatureIndex Property (XAdESSigner Component)
Returns the index of the owner signature, if applicable.
Syntax
__property int TimestampSignatureIndex[int TimestampIndex] = { read=FTimestampSignatureIndex };
Default Value
-1
Remarks
Returns the index of the owner signature, if applicable.
Use this property to establish the index of the associated signature object in the signature collection.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Integer
TimestampTime Property (XAdESSigner Component)
The time point incorporated into the timestamp.
Syntax
__property String TimestampTime[int TimestampIndex] = { read=FTimestampTime };
Default Value
""
Remarks
The time point incorporated into the timestamp.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
String
TimestampTimestampType Property (XAdESSigner Component)
Returns the type of the timestamp.
Syntax
__property int TimestampTimestampType[int TimestampIndex] = { read=FTimestampTimestampType };
Default Value
0
Remarks
Returns the type of the timestamp.
Available options:
tstUnknown | 0 | |
tstLegacy | 1 | Supported by: Authenticode components |
tstTrusted | 2 | Supported by: Authenticode components |
tstGeneric | 3 | Supported by: CAdES components |
tstESC | 4 | Supported by: CAdES components |
tstContent | 5 | Supported by: CAdES components |
tstCertsAndCRLs | 6 | Supported by: CAdES components |
tstArchive | 7 | Archive timestamp. Supported by: ASiC, CAdES, JAdES, Office, SOAP, XAdES components |
tstArchive2 | 8 | Archive v2 timestamp. Supported by: ASiC, CAdES components |
tstArchive3 | 9 | Archive v3 timestamp. Supported by: ASiC, CAdES components |
tstIndividualDataObjects | 10 | Individual data objects timetamp. Supported by: ASiC, Office, SOAP, XAdES components |
tstAllDataObjects | 11 | All data objects timestamp. Supported by: ASiC, Office, SOAP, XAdES components |
tstSignature | 12 | Signature timestamp. Supported by: ASiC, JAdES, Office, SOAP, XAdES components |
tstRefsOnly | 13 | RefsOnly timestamp. Supported by: ASiC, JAdES, Office, SOAP, XAdES components |
tstSigAndRefs | 14 | SigAndRefs timestamp. Supported by: ASiC, JAdES, Office, SOAP, XAdES components |
tstSignedData | 15 | SignedData timestamp. Supported by: JAdES components |
tstArchive141 | 16 | Archive timestamp v1.4.1. Supported by: ASiC, Office, SOAP, XAdES components |
Not all of the above timestamp types can be supported by a specific signature technology used (CAdES, PDF, XAdES).
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Integer
TimestampTSAName Property (XAdESSigner Component)
This value uniquely identifies the Timestamp Authority (TSA).
Syntax
__property String TimestampTSAName[int TimestampIndex] = { read=FTimestampTSAName };
Default Value
""
Remarks
This value uniquely identifies the Timestamp Authority (TSA).
This property provides information about the entity that manages the TSA.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
String
TimestampValidationLog Property (XAdESSigner Component)
Contains the TSA certificate chain validation log.
Syntax
__property String TimestampValidationLog[int TimestampIndex] = { read=FTimestampValidationLog };
Default Value
""
Remarks
Contains the TSA certificate chain validation log. This information is extremely useful if the timestamp validation fails.
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
String
TimestampValidationResult Property (XAdESSigner Component)
Contains the timestamp validation outcome.
Syntax
__property TsbxXAdESSignerTimestampValidationResults TimestampValidationResult[int TimestampIndex] = { read=FTimestampValidationResult };
enum TsbxXAdESSignerTimestampValidationResults { svtValid=0, svtUnknown=1, svtCorrupted=2, svtSignerNotFound=3, svtFailure=4 };
Default Value
svtValid
Remarks
Contains the timestamp validation outcome.
Use this property to check the result of the most recent timestamp validation.
svtValid | 0 | The signature is valid |
svtUnknown | 1 | Signature validity is unknown |
svtCorrupted | 2 | The signature is corrupted |
svtSignerNotFound | 3 | Failed to acquire the signing certificate. The signature cannot be validated. |
svtFailure | 4 | General failure |
The TimestampIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TimestampCount property.
This property is read-only and not available at design time.
Data Type
Integer
TimestampServer Property (XAdESSigner Component)
The address of the timestamping server.
Syntax
__property String TimestampServer = { read=FTimestampServer, write=FSetTimestampServer };
Default Value
""
Remarks
Use this property to set the address of the TSA (Time Stamping Authority) server which should be used for timestamping the signature.
Data Type
String
TLSClientCertCount Property (XAdESSigner Component)
The number of records in the TLSClientCert arrays.
Syntax
__property int TLSClientCertCount = { read=FTLSClientCertCount, write=FSetTLSClientCertCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at TLSClientCertCount - 1.This property is not available at design time.
Data Type
Integer
TLSClientCertBytes Property (XAdESSigner Component)
Returns the raw certificate data in DER format.
Syntax
__property DynamicArrayTLSClientCertBytes[int TLSClientCertIndex] = { read=FTLSClientCertBytes };
Remarks
Returns the raw certificate data in DER format.
The TLSClientCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TLSClientCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
TLSClientCertHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 TLSClientCertHandle[int TLSClientCertIndex] = { read=FTLSClientCertHandle, write=FSetTLSClientCertHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The TLSClientCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TLSClientCertCount property.
This property is not available at design time.
Data Type
Long64
TLSServerCertCount Property (XAdESSigner Component)
The number of records in the TLSServerCert arrays.
Syntax
__property int TLSServerCertCount = { read=FTLSServerCertCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at TLSServerCertCount - 1.This property is read-only and not available at design time.
Data Type
Integer
TLSServerCertBytes Property (XAdESSigner Component)
Returns the raw certificate data in DER format.
Syntax
__property DynamicArrayTLSServerCertBytes[int TLSServerCertIndex] = { read=FTLSServerCertBytes };
Remarks
Returns the raw certificate data in DER format.
The TLSServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TLSServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
TLSServerCertHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 TLSServerCertHandle[int TLSServerCertIndex] = { read=FTLSServerCertHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The TLSServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TLSServerCertCount property.
This property is read-only and not available at design time.
Data Type
Long64
TLSAutoValidateCertificates Property (XAdESSigner Component)
Specifies whether server-side TLS certificates should be validated automatically using internal validation rules.
Syntax
__property bool TLSAutoValidateCertificates = { read=FTLSAutoValidateCertificates, write=FSetTLSAutoValidateCertificates };
Default Value
true
Remarks
Specifies whether server-side TLS certificates should be validated automatically using internal validation rules.
Data Type
Boolean
TLSBaseConfiguration Property (XAdESSigner Component)
Selects the base configuration for the TLS settings.
Syntax
__property TsbxXAdESSignerTLSBaseConfigurations TLSBaseConfiguration = { read=FTLSBaseConfiguration, write=FSetTLSBaseConfiguration };
enum TsbxXAdESSignerTLSBaseConfigurations { stpcDefault=0, stpcCompatible=1, stpcComprehensiveInsecure=2, stpcHighlySecure=3 };
Default Value
stpcDefault
Remarks
Selects the base configuration for the TLS settings. Several profiles are offered and tuned up for different purposes, such as high security or higher compatibility.
stpcDefault | 0 | |
stpcCompatible | 1 | |
stpcComprehensiveInsecure | 2 | |
stpcHighlySecure | 3 |
Data Type
Integer
TLSCiphersuites Property (XAdESSigner Component)
A list of ciphersuites separated with commas or semicolons.
Syntax
__property String TLSCiphersuites = { read=FTLSCiphersuites, write=FSetTLSCiphersuites };
Default Value
""
Remarks
A list of ciphersuites separated with commas or semicolons. Each ciphersuite in the list may be prefixed with a minus sign (-) to indicate that the ciphersuite should be disabled rather than enabled. Besides the specific ciphersuite modifiers, this property supports the all (and -all) aliases, allowing all ciphersuites to be blanketly enabled or disabled at once.
Note: the list of ciphersuites provided to this property alters the baseline list of ciphersuites as defined by TLSBaseConfiguration. Remember to start your ciphersuite string with -all; if you need to only enable a specific fixed set of ciphersuites. The list of supported ciphersuites is provided below:
- NULL_NULL_NULL
- RSA_NULL_MD5
- RSA_NULL_SHA
- RSA_RC4_MD5
- RSA_RC4_SHA
- RSA_RC2_MD5
- RSA_IDEA_MD5
- RSA_IDEA_SHA
- RSA_DES_MD5
- RSA_DES_SHA
- RSA_3DES_MD5
- RSA_3DES_SHA
- RSA_AES128_SHA
- RSA_AES256_SHA
- DH_DSS_DES_SHA
- DH_DSS_3DES_SHA
- DH_DSS_AES128_SHA
- DH_DSS_AES256_SHA
- DH_RSA_DES_SHA
- DH_RSA_3DES_SHA
- DH_RSA_AES128_SHA
- DH_RSA_AES256_SHA
- DHE_DSS_DES_SHA
- DHE_DSS_3DES_SHA
- DHE_DSS_AES128_SHA
- DHE_DSS_AES256_SHA
- DHE_RSA_DES_SHA
- DHE_RSA_3DES_SHA
- DHE_RSA_AES128_SHA
- DHE_RSA_AES256_SHA
- DH_ANON_RC4_MD5
- DH_ANON_DES_SHA
- DH_ANON_3DES_SHA
- DH_ANON_AES128_SHA
- DH_ANON_AES256_SHA
- RSA_RC2_MD5_EXPORT
- RSA_RC4_MD5_EXPORT
- RSA_DES_SHA_EXPORT
- DH_DSS_DES_SHA_EXPORT
- DH_RSA_DES_SHA_EXPORT
- DHE_DSS_DES_SHA_EXPORT
- DHE_RSA_DES_SHA_EXPORT
- DH_ANON_RC4_MD5_EXPORT
- DH_ANON_DES_SHA_EXPORT
- RSA_CAMELLIA128_SHA
- DH_DSS_CAMELLIA128_SHA
- DH_RSA_CAMELLIA128_SHA
- DHE_DSS_CAMELLIA128_SHA
- DHE_RSA_CAMELLIA128_SHA
- DH_ANON_CAMELLIA128_SHA
- RSA_CAMELLIA256_SHA
- DH_DSS_CAMELLIA256_SHA
- DH_RSA_CAMELLIA256_SHA
- DHE_DSS_CAMELLIA256_SHA
- DHE_RSA_CAMELLIA256_SHA
- DH_ANON_CAMELLIA256_SHA
- PSK_RC4_SHA
- PSK_3DES_SHA
- PSK_AES128_SHA
- PSK_AES256_SHA
- DHE_PSK_RC4_SHA
- DHE_PSK_3DES_SHA
- DHE_PSK_AES128_SHA
- DHE_PSK_AES256_SHA
- RSA_PSK_RC4_SHA
- RSA_PSK_3DES_SHA
- RSA_PSK_AES128_SHA
- RSA_PSK_AES256_SHA
- RSA_SEED_SHA
- DH_DSS_SEED_SHA
- DH_RSA_SEED_SHA
- DHE_DSS_SEED_SHA
- DHE_RSA_SEED_SHA
- DH_ANON_SEED_SHA
- SRP_SHA_3DES_SHA
- SRP_SHA_RSA_3DES_SHA
- SRP_SHA_DSS_3DES_SHA
- SRP_SHA_AES128_SHA
- SRP_SHA_RSA_AES128_SHA
- SRP_SHA_DSS_AES128_SHA
- SRP_SHA_AES256_SHA
- SRP_SHA_RSA_AES256_SHA
- SRP_SHA_DSS_AES256_SHA
- ECDH_ECDSA_NULL_SHA
- ECDH_ECDSA_RC4_SHA
- ECDH_ECDSA_3DES_SHA
- ECDH_ECDSA_AES128_SHA
- ECDH_ECDSA_AES256_SHA
- ECDHE_ECDSA_NULL_SHA
- ECDHE_ECDSA_RC4_SHA
- ECDHE_ECDSA_3DES_SHA
- ECDHE_ECDSA_AES128_SHA
- ECDHE_ECDSA_AES256_SHA
- ECDH_RSA_NULL_SHA
- ECDH_RSA_RC4_SHA
- ECDH_RSA_3DES_SHA
- ECDH_RSA_AES128_SHA
- ECDH_RSA_AES256_SHA
- ECDHE_RSA_NULL_SHA
- ECDHE_RSA_RC4_SHA
- ECDHE_RSA_3DES_SHA
- ECDHE_RSA_AES128_SHA
- ECDHE_RSA_AES256_SHA
- ECDH_ANON_NULL_SHA
- ECDH_ANON_RC4_SHA
- ECDH_ANON_3DES_SHA
- ECDH_ANON_AES128_SHA
- ECDH_ANON_AES256_SHA
- RSA_NULL_SHA256
- RSA_AES128_SHA256
- RSA_AES256_SHA256
- DH_DSS_AES128_SHA256
- DH_RSA_AES128_SHA256
- DHE_DSS_AES128_SHA256
- DHE_RSA_AES128_SHA256
- DH_DSS_AES256_SHA256
- DH_RSA_AES256_SHA256
- DHE_DSS_AES256_SHA256
- DHE_RSA_AES256_SHA256
- DH_ANON_AES128_SHA256
- DH_ANON_AES256_SHA256
- RSA_AES128_GCM_SHA256
- RSA_AES256_GCM_SHA384
- DHE_RSA_AES128_GCM_SHA256
- DHE_RSA_AES256_GCM_SHA384
- DH_RSA_AES128_GCM_SHA256
- DH_RSA_AES256_GCM_SHA384
- DHE_DSS_AES128_GCM_SHA256
- DHE_DSS_AES256_GCM_SHA384
- DH_DSS_AES128_GCM_SHA256
- DH_DSS_AES256_GCM_SHA384
- DH_ANON_AES128_GCM_SHA256
- DH_ANON_AES256_GCM_SHA384
- ECDHE_ECDSA_AES128_SHA256
- ECDHE_ECDSA_AES256_SHA384
- ECDH_ECDSA_AES128_SHA256
- ECDH_ECDSA_AES256_SHA384
- ECDHE_RSA_AES128_SHA256
- ECDHE_RSA_AES256_SHA384
- ECDH_RSA_AES128_SHA256
- ECDH_RSA_AES256_SHA384
- ECDHE_ECDSA_AES128_GCM_SHA256
- ECDHE_ECDSA_AES256_GCM_SHA384
- ECDH_ECDSA_AES128_GCM_SHA256
- ECDH_ECDSA_AES256_GCM_SHA384
- ECDHE_RSA_AES128_GCM_SHA256
- ECDHE_RSA_AES256_GCM_SHA384
- ECDH_RSA_AES128_GCM_SHA256
- ECDH_RSA_AES256_GCM_SHA384
- PSK_AES128_GCM_SHA256
- PSK_AES256_GCM_SHA384
- DHE_PSK_AES128_GCM_SHA256
- DHE_PSK_AES256_GCM_SHA384
- RSA_PSK_AES128_GCM_SHA256
- RSA_PSK_AES256_GCM_SHA384
- PSK_AES128_SHA256
- PSK_AES256_SHA384
- PSK_NULL_SHA256
- PSK_NULL_SHA384
- DHE_PSK_AES128_SHA256
- DHE_PSK_AES256_SHA384
- DHE_PSK_NULL_SHA256
- DHE_PSK_NULL_SHA384
- RSA_PSK_AES128_SHA256
- RSA_PSK_AES256_SHA384
- RSA_PSK_NULL_SHA256
- RSA_PSK_NULL_SHA384
- RSA_CAMELLIA128_SHA256
- DH_DSS_CAMELLIA128_SHA256
- DH_RSA_CAMELLIA128_SHA256
- DHE_DSS_CAMELLIA128_SHA256
- DHE_RSA_CAMELLIA128_SHA256
- DH_ANON_CAMELLIA128_SHA256
- RSA_CAMELLIA256_SHA256
- DH_DSS_CAMELLIA256_SHA256
- DH_RSA_CAMELLIA256_SHA256
- DHE_DSS_CAMELLIA256_SHA256
- DHE_RSA_CAMELLIA256_SHA256
- DH_ANON_CAMELLIA256_SHA256
- ECDHE_ECDSA_CAMELLIA128_SHA256
- ECDHE_ECDSA_CAMELLIA256_SHA384
- ECDH_ECDSA_CAMELLIA128_SHA256
- ECDH_ECDSA_CAMELLIA256_SHA384
- ECDHE_RSA_CAMELLIA128_SHA256
- ECDHE_RSA_CAMELLIA256_SHA384
- ECDH_RSA_CAMELLIA128_SHA256
- ECDH_RSA_CAMELLIA256_SHA384
- RSA_CAMELLIA128_GCM_SHA256
- RSA_CAMELLIA256_GCM_SHA384
- DHE_RSA_CAMELLIA128_GCM_SHA256
- DHE_RSA_CAMELLIA256_GCM_SHA384
- DH_RSA_CAMELLIA128_GCM_SHA256
- DH_RSA_CAMELLIA256_GCM_SHA384
- DHE_DSS_CAMELLIA128_GCM_SHA256
- DHE_DSS_CAMELLIA256_GCM_SHA384
- DH_DSS_CAMELLIA128_GCM_SHA256
- DH_DSS_CAMELLIA256_GCM_SHA384
- DH_anon_CAMELLIA128_GCM_SHA256
- DH_anon_CAMELLIA256_GCM_SHA384
- ECDHE_ECDSA_CAMELLIA128_GCM_SHA256
- ECDHE_ECDSA_CAMELLIA256_GCM_SHA384
- ECDH_ECDSA_CAMELLIA128_GCM_SHA256
- ECDH_ECDSA_CAMELLIA256_GCM_SHA384
- ECDHE_RSA_CAMELLIA128_GCM_SHA256
- ECDHE_RSA_CAMELLIA256_GCM_SHA384
- ECDH_RSA_CAMELLIA128_GCM_SHA256
- ECDH_RSA_CAMELLIA256_GCM_SHA384
- PSK_CAMELLIA128_GCM_SHA256
- PSK_CAMELLIA256_GCM_SHA384
- DHE_PSK_CAMELLIA128_GCM_SHA256
- DHE_PSK_CAMELLIA256_GCM_SHA384
- RSA_PSK_CAMELLIA128_GCM_SHA256
- RSA_PSK_CAMELLIA256_GCM_SHA384
- PSK_CAMELLIA128_SHA256
- PSK_CAMELLIA256_SHA384
- DHE_PSK_CAMELLIA128_SHA256
- DHE_PSK_CAMELLIA256_SHA384
- RSA_PSK_CAMELLIA128_SHA256
- RSA_PSK_CAMELLIA256_SHA384
- ECDHE_PSK_CAMELLIA128_SHA256
- ECDHE_PSK_CAMELLIA256_SHA384
- ECDHE_PSK_RC4_SHA
- ECDHE_PSK_3DES_SHA
- ECDHE_PSK_AES128_SHA
- ECDHE_PSK_AES256_SHA
- ECDHE_PSK_AES128_SHA256
- ECDHE_PSK_AES256_SHA384
- ECDHE_PSK_NULL_SHA
- ECDHE_PSK_NULL_SHA256
- ECDHE_PSK_NULL_SHA384
- ECDHE_RSA_CHACHA20_POLY1305_SHA256
- ECDHE_ECDSA_CHACHA20_POLY1305_SHA256
- DHE_RSA_CHACHA20_POLY1305_SHA256
- PSK_CHACHA20_POLY1305_SHA256
- ECDHE_PSK_CHACHA20_POLY1305_SHA256
- DHE_PSK_CHACHA20_POLY1305_SHA256
- RSA_PSK_CHACHA20_POLY1305_SHA256
- AES128_GCM_SHA256
- AES256_GCM_SHA384
- CHACHA20_POLY1305_SHA256
- AES128_CCM_SHA256
- AES128_CCM8_SHA256
Data Type
String
TLSECCurves Property (XAdESSigner Component)
Defines the elliptic curves to enable.
Syntax
__property String TLSECCurves = { read=FTLSECCurves, write=FSetTLSECCurves };
Default Value
""
Remarks
Defines the elliptic curves to enable.
Data Type
String
TLSExtensions Property (XAdESSigner Component)
Provides access to TLS extensions.
Syntax
__property String TLSExtensions = { read=FTLSExtensions, write=FSetTLSExtensions };
Default Value
""
Remarks
Provides access to TLS extensions.
Data Type
String
TLSForceResumeIfDestinationChanges Property (XAdESSigner Component)
Whether to force TLS session resumption when the destination address changes.
Syntax
__property bool TLSForceResumeIfDestinationChanges = { read=FTLSForceResumeIfDestinationChanges, write=FSetTLSForceResumeIfDestinationChanges };
Default Value
false
Remarks
Whether to force TLS session resumption when the destination address changes.
Data Type
Boolean
TLSPreSharedIdentity Property (XAdESSigner Component)
Defines the identity used when the PSK (Pre-Shared Key) key-exchange mechanism is negotiated.
Syntax
__property String TLSPreSharedIdentity = { read=FTLSPreSharedIdentity, write=FSetTLSPreSharedIdentity };
Default Value
""
Remarks
Defines the identity used when the PSK (Pre-Shared Key) key-exchange mechanism is negotiated.
This property is not available at design time.
Data Type
String
TLSPreSharedKey Property (XAdESSigner Component)
Contains the pre-shared key for the PSK (Pre-Shared Key) key-exchange mechanism, encoded with base16.
Syntax
__property String TLSPreSharedKey = { read=FTLSPreSharedKey, write=FSetTLSPreSharedKey };
Default Value
""
Remarks
Contains the pre-shared key for the PSK (Pre-Shared Key) key-exchange mechanism, encoded with base16.
This property is not available at design time.
Data Type
String
TLSPreSharedKeyCiphersuite Property (XAdESSigner Component)
Defines the ciphersuite used for PSK (Pre-Shared Key) negotiation.
Syntax
__property String TLSPreSharedKeyCiphersuite = { read=FTLSPreSharedKeyCiphersuite, write=FSetTLSPreSharedKeyCiphersuite };
Default Value
""
Remarks
Defines the ciphersuite used for PSK (Pre-Shared Key) negotiation.
Data Type
String
TLSRenegotiationAttackPreventionMode Property (XAdESSigner Component)
Selects the renegotiation attack prevention mechanism.
Syntax
__property TsbxXAdESSignerTLSRenegotiationAttackPreventionModes TLSRenegotiationAttackPreventionMode = { read=FTLSRenegotiationAttackPreventionMode, write=FSetTLSRenegotiationAttackPreventionMode };
enum TsbxXAdESSignerTLSRenegotiationAttackPreventionModes { crapmCompatible=0, crapmStrict=1, crapmAuto=2 };
Default Value
crapmCompatible
Remarks
Selects the renegotiation attack prevention mechanism.
The following options are available:
crapmCompatible | 0 | TLS 1.0 and 1.1 compatibility mode (renegotiation indication extension is disabled). |
crapmStrict | 1 | Renegotiation attack prevention is enabled and enforced. |
crapmAuto | 2 | Automatically choose whether to enable or disable renegotiation attack prevention. |
Data Type
Integer
TLSRevocationCheck Property (XAdESSigner Component)
Specifies the kind(s) of revocation check to perform.
Syntax
__property TsbxXAdESSignerTLSRevocationChecks TLSRevocationCheck = { read=FTLSRevocationCheck, write=FSetTLSRevocationCheck };
enum TsbxXAdESSignerTLSRevocationChecks { crcNone=0, crcAuto=1, crcAllCRL=2, crcAllOCSP=3, crcAllCRLAndOCSP=4, crcAnyCRL=5, crcAnyOCSP=6, crcAnyCRLOrOCSP=7, crcAnyOCSPOrCRL=8 };
Default Value
crcAuto
Remarks
Specifies the kind(s) of revocation check to perform.
Revocation checking is necessary to ensure the integrity of the chain and obtain up-to-date certificate validity and trustworthiness information.
crcNone | 0 | No revocation checking. |
crcAuto | 1 | Automatic mode selection. Currently this maps to crcAnyOCSPOrCRL, but it may change in the future. |
crcAllCRL | 2 | All provided CRL endpoints will be checked, and all checks must succeed. |
crcAllOCSP | 3 | All provided OCSP endpoints will be checked, and all checks must succeed. |
crcAllCRLAndOCSP | 4 | All provided CRL and OCSP endpoints will be checked, and all checks must succeed. |
crcAnyCRL | 5 | All provided CRL endpoints will be checked, and at least one check must succeed. |
crcAnyOCSP | 6 | All provided OCSP endpoints will be checked, and at least one check must succeed. |
crcAnyCRLOrOCSP | 7 | All provided CRL and OCSP endpoints will be checked, and at least one check must succeed. CRL endpoints are checked first. |
crcAnyOCSPOrCRL | 8 | All provided CRL and OCSP endpoints will be checked, and at least one check must succeed. OCSP endpoints are checked first. |
This setting controls the way the revocation checks are performed for every certificate in the chain. Typically certificates come with two types of revocation information sources: CRL (certificate revocation lists) and OCSP responders. CRLs are static objects periodically published by the CA at some online location. OCSP responders are active online services maintained by the CA that can provide up-to-date information on certificate statuses in near real time.
There are some conceptual differences between the two. CRLs are normally larger in size. Their use involves some latency because there is normally some delay between the time when a certificate was revoked and the time the subsequent CRL mentioning that is published. The benefits of CRL is that the same object can provide statuses for all certificates issued by a particular CA, and that the whole technology is much simpler than OCSP (and thus is supported by more CAs).
This setting lets you adjust the validation course by including or excluding certain types of revocation sources from the validation process. The crcAnyOCSPOrCRL setting (give preference to the faster OCSP route and only demand one source to succeed) is a good choice for most typical validation environments. The "crcAll*" modes are much stricter, and may be used in scenarios where bulletproof validity information is essential.
Note: If no CRL or OCSP endpoints are provided by the CA, the revocation check will be considered successful. This is because the CA chose not to supply revocation information for its certificates, meaning they are considered irrevocable.
Note: Within each of the above settings, if any retrieved CRL or OCSP response indicates that the certificate has been revoked, the revocation check fails.
This property is not available at design time.
Data Type
Integer
TLSSSLOptions Property (XAdESSigner Component)
Various SSL (TLS) protocol options, set of cssloExpectShutdownMessage 0x001 Wait for the close-notify message when shutting down the connection cssloOpenSSLDTLSWorkaround 0x002 (DEPRECATED) Use a DTLS version workaround when talking to very old OpenSSL versions cssloDisableKexLengthAlignment 0x004 Do not align the client-side PMS by the RSA modulus size.
Syntax
__property int TLSSSLOptions = { read=FTLSSSLOptions, write=FSetTLSSSLOptions };
Default Value
16
Remarks
Various SSL (TLS) protocol options, set of
cssloExpectShutdownMessage | 0x001 | Wait for the close-notify message when shutting down the connection |
cssloOpenSSLDTLSWorkaround | 0x002 | (DEPRECATED) Use a DTLS version workaround when talking to very old OpenSSL versions |
cssloDisableKexLengthAlignment | 0x004 | Do not align the client-side PMS by the RSA modulus size. It is unlikely that you will ever need to adjust it. |
cssloForceUseOfClientCertHashAlg | 0x008 | Enforce the use of the client certificate hash algorithm. It is unlikely that you will ever need to adjust it. |
cssloAutoAddServerNameExtension | 0x010 | Automatically add the server name extension when known |
cssloAcceptTrustedSRPPrimesOnly | 0x020 | Accept trusted SRP primes only |
cssloDisableSignatureAlgorithmsExtension | 0x040 | Disable (do not send) the signature algorithms extension. It is unlikely that you will ever need to adjust it. |
cssloIntolerateHigherProtocolVersions | 0x080 | (server option) Do not allow fallback from TLS versions higher than currently enabled |
cssloStickToPrefCertHashAlg | 0x100 | Stick to preferred certificate hash algorithms |
cssloNoImplicitTLS12Fallback | 0x200 | Disable implicit TLS 1.3 to 1.2 fallbacks |
cssloUseHandshakeBatches | 0x400 | Send the handshake message as large batches rather than individually |
Data Type
Integer
TLSTLSMode Property (XAdESSigner Component)
Specifies the TLS mode to use.
Syntax
__property TsbxXAdESSignerTLSTLSModes TLSTLSMode = { read=FTLSTLSMode, write=FSetTLSTLSMode };
enum TsbxXAdESSignerTLSTLSModes { smDefault=0, smNoTLS=1, smExplicitTLS=2, smImplicitTLS=3, smMixedTLS=4 };
Default Value
smDefault
Remarks
Specifies the TLS mode to use.
smDefault | 0 | |
smNoTLS | 1 | Do not use TLS |
smExplicitTLS | 2 | Connect to the server without any encryption and then request an SSL session. |
smImplicitTLS | 3 | Connect to the specified port, and establish the SSL session at once. |
smMixedTLS | 4 | Connect to the specified port, and establish the SSL session at once, but allow plain data. |
Data Type
Integer
TLSUseExtendedMasterSecret Property (XAdESSigner Component)
Enables the Extended Master Secret Extension, as defined in RFC 7627.
Syntax
__property bool TLSUseExtendedMasterSecret = { read=FTLSUseExtendedMasterSecret, write=FSetTLSUseExtendedMasterSecret };
Default Value
false
Remarks
Enables the Extended Master Secret Extension, as defined in RFC 7627.
Data Type
Boolean
TLSUseSessionResumption Property (XAdESSigner Component)
Enables or disables the TLS session resumption capability.
Syntax
__property bool TLSUseSessionResumption = { read=FTLSUseSessionResumption, write=FSetTLSUseSessionResumption };
Default Value
false
Remarks
Enables or disables the TLS session resumption capability.
Data Type
Boolean
TLSVersions Property (XAdESSigner Component)
The SSL/TLS versions to enable by default.
Syntax
__property int TLSVersions = { read=FTLSVersions, write=FSetTLSVersions };
Default Value
16
Remarks
The SSL/TLS versions to enable by default.
csbSSL2 | 0x01 | SSL 2 |
csbSSL3 | 0x02 | SSL 3 |
csbTLS1 | 0x04 | TLS 1.0 |
csbTLS11 | 0x08 | TLS 1.1 |
csbTLS12 | 0x10 | TLS 1.2 |
csbTLS13 | 0x20 | TLS 1.3 |
Data Type
Integer
TrustedCertCount Property (XAdESSigner Component)
The number of records in the TrustedCert arrays.
Syntax
__property int TrustedCertCount = { read=FTrustedCertCount, write=FSetTrustedCertCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at TrustedCertCount - 1.This property is not available at design time.
Data Type
Integer
TrustedCertBytes Property (XAdESSigner Component)
Returns the raw certificate data in DER format.
Syntax
__property DynamicArrayTrustedCertBytes[int TrustedCertIndex] = { read=FTrustedCertBytes };
Remarks
Returns the raw certificate data in DER format.
The TrustedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TrustedCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
TrustedCertHandle Property (XAdESSigner Component)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
__property __int64 TrustedCertHandle[int TrustedCertIndex] = { read=FTrustedCertHandle, write=FSetTrustedCertHandle };
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The TrustedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TrustedCertCount property.
This property is not available at design time.
Data Type
Long64
ValidationMoment Property (XAdESSigner Component)
The time point at which signature validity is to be established.
Syntax
__property String ValidationMoment = { read=FValidationMoment, write=FSetValidationMoment };
Default Value
""
Remarks
Use this property to specify the moment in time at which signature validity should be established. The time is in UTC. Leave the setting empty to stick to the default moment (either the signature creation time or the current time).
The validity of the same signature may differ depending on the time point chosen due to temporal changes in chain validities, revocation statuses, and timestamp times.
Data Type
String
NamespaceCount Property (XAdESSigner Component)
The number of records in the Namespace arrays.
Syntax
__property int NamespaceCount = { read=FNamespaceCount, write=FSetNamespaceCount };
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at NamespaceCount - 1.This property is not available at design time.
Data Type
Integer
NamespacePrefix Property (XAdESSigner Component)
A user-defined prefix value of a namespace.
Syntax
__property String NamespacePrefix[int NamespaceIndex] = { read=FNamespacePrefix, write=FSetNamespacePrefix };
Default Value
""
Remarks
A user-defined prefix value of a namespace.
The NamespaceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the NamespaceCount property.
This property is not available at design time.
Data Type
String
NamespaceURI Property (XAdESSigner Component)
A user-defined URI value of a namespace.
Syntax
__property String NamespaceURI[int NamespaceIndex] = { read=FNamespaceURI, write=FSetNamespaceURI };
Default Value
""
Remarks
A user-defined URI value of a namespace.
The NamespaceIndex parameter specifies the index of the item in the array. The size of the array is controlled by the NamespaceCount property.
This property is not available at design time.
Data Type
String
AddDataReference Method (XAdESSigner Component)
Creates a new XML reference to the specified data.
Syntax
int __fastcall AddDataReference(String DataURI, DynamicArray<Byte> Data);
Remarks
Use this method to add a reference to the custom data. Pass the reference's URI via DataURI parameter.
This method uses HashAlgorithm property to specify the hash algorithm of the reference.
The method returns the index of the new reference entry in the References collection.
AddReference Method (XAdESSigner Component)
Creates a new XML reference to the specified XML element.
Syntax
int __fastcall AddReference(String TargetXmlElement, String CustomId, bool AutoGenerateId);
Remarks
Use this method to add a reference to a particular XML element.
The reference's URI is set basing on the ID of the XML element. If the XML element doesn't have an ID then a CustomId value will be used. If CustomId is empty and AutoGenerateId is set, the ID will be generated automatically. An exception will be thrown otherwise.
This method uses CanonicalizationMethod and HashAlgorithm properties to specify the canonicalization method and hash algorithm of the reference.
The method returns the index of the new reference entry in the References collection.
AddTimestampValidationData Method (XAdESSigner Component)
Use this method to add timestamp validation data to the signature.
Syntax
void __fastcall AddTimestampValidationData(int SigIndex);
Remarks
Call this method to add certificates and revocation information used to validate timestamp's signer certificates at a particular time. This method could be called separately or in SignatureValidated event handler after successful signature validation.
AddValidationDataRefs Method (XAdESSigner Component)
Use this method to add signature validation references to the signature.
Syntax
void __fastcall AddValidationDataRefs(int SigIndex);
Remarks
Call this method to add references to certificates and revocation information used to validate a signature at a particular time. This method could be called separately or in SignatureValidated event handler after successful signature validation.
AddValidationDataValues Method (XAdESSigner Component)
Use this method to add signature validation values to the signature.
Syntax
void __fastcall AddValidationDataValues(int SigIndex);
Remarks
Call this method to add certificates and revocation information used to validate a signature at a particular time. This method could be called separately or in SignatureValidated event handler after successful signature validation.
Close Method (XAdESSigner Component)
Closes an opened document.
Syntax
void __fastcall Close(bool SaveChanges);
Remarks
Use this method to close a previously opened document. Set SaveChanges to true to apply any changes made.
Config Method (XAdESSigner Component)
Sets or retrieves a configuration setting.
Syntax
String __fastcall Config(String ConfigurationString);
Remarks
Config is a generic method available in every component. It is used to set and retrieve configuration settings for the component.
These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.
To set a configuration setting named PROPERTY, you must call Config("PROPERTY=VALUE"), where VALUE is the value of the setting expressed as a string. For boolean values, use the strings "True", "False", "0", "1", "Yes", or "No" (case does not matter).
To read (query) the value of a configuration setting, you must call Config("PROPERTY"). The value will be returned as a string.
DoAction Method (XAdESSigner Component)
Performs an additional action.
Syntax
String __fastcall DoAction(String ActionID, String ActionParams);
Remarks
DoAction is a generic method available in every component. It is used to perform an additional action introduced after the product major release. The list of actions is not fixed, and may be flexibly extended over time.
The unique identifier (case insensitive) of the action is provided in the ActionID parameter.
ActionParams contains the value of a single parameter, or a list of multiple parameters for the action in the form of PARAM1=VALUE1;PARAM2=VALUE2;....
ExtractAsyncData Method (XAdESSigner Component)
Extracts user data from the DC signing service response.
Syntax
String __fastcall ExtractAsyncData(String AsyncReply);
Remarks
Call this method before finalizing the asynchronous signing process to extract the data passed to the ExternalCrypto.Data property on the pre-signing stage.
The Data parameter can be used to pass some state or document identifier along with the signing request from the pre-signing to the completion async stage.
GetInnerXML Method (XAdESSigner Component)
Get the inner XML content of the selected XML element.
Syntax
String __fastcall GetInnerXML(String XPath);
Remarks
Call this method to get the inner XML content of the selected XML element.
GetOuterXML Method (XAdESSigner Component)
Get the outer XML content of the selected XML element.
Syntax
String __fastcall GetOuterXML(String XPath);
Remarks
Call this method to get the outer XML content of the selected XML element.
GetTextContent Method (XAdESSigner Component)
Get the text content of the selected XML element.
Syntax
String __fastcall GetTextContent(String XPath);
Remarks
Call this method to get the text content of the selected XML element.
Open Method (XAdESSigner Component)
Opens a document for signing or updating.
Syntax
void __fastcall Open();
Remarks
Use this method to open a document for signing or updating. When finished, call Close to complete or discard the operation.
Revalidate Method (XAdESSigner Component)
Revalidates a signature in accordance with current settings.
Syntax
void __fastcall Revalidate(int Index, bool Detached);
Remarks
Use this method to re-validate a signature in the opened XML document.
SetInnerXML Method (XAdESSigner Component)
Set the inner XML content of the selected XML element.
Syntax
void __fastcall SetInnerXML(String XPath, String Value);
Remarks
Call this method to set the inner XML content of the selected XML element.
SetTextContent Method (XAdESSigner Component)
Set the text content of the selected XML element.
Syntax
void __fastcall SetTextContent(String XPath, String Value);
Remarks
Call this method to set the text content of the selected XML element.
Sign Method (XAdESSigner Component)
Signs an XML document.
Syntax
void __fastcall Sign();
Remarks
Call this method to generate a signature over an XML document.
SignAsyncBegin Method (XAdESSigner Component)
Initiates the asynchronous signing operation.
Syntax
String __fastcall SignAsyncBegin();
Remarks
When using the DC framework, call this method to initiate the asynchronous signing process. Upon completion, a pre-signed copy of the document will be saved in OutputFile (or OutputStream). Keep the pre-signed copy somewhere local, and pass the returned string ('the request state') to the DC processor for handling.
Upon receiving the response state from the DC processor, assign the path to the pre-signed copy to InputFile (or InputStream), and call SignAsyncEnd to finalize the signing.
Note that depending on the signing method and DC configuration used, you may still need to provide the public part of the signing certificate via the SigningCertificate property.
Use the ExternalCrypto.AsyncDocumentID property to supply a unique document ID to include in the request. This is helpful when creating batches of multiple async requests, as it allows you to pass the whole response batch to SignAsyncEnd and expect it to recover the correct response from the batch automatically.
AsyncState is a message of the distributed cryptography (DC) protocol. The DC protocol is based on the exchange of async states between a DC client (an application that wants to sign a PDF, XML, or Office document) and a DC server (an application that controls access to the private key). An async state can carry one or more signing requests, comprised of document hashes, or one or more signatures produced over those hashes.
In a typical scenario you get a client-side async state from the SignAsyncBegin method. This state contains document hashes to be signed on the DC server side. You then send the async state to the DC server (often represented by the DCAuth component), which processes it and produces a matching signature state. The async state produced by the server is then passed to the SignAsyncEnd method.
SignAsyncEnd Method (XAdESSigner Component)
Completes the asynchronous signing operation.
Syntax
void __fastcall SignAsyncEnd(String AsyncReply);
Remarks
When using the DC framework, call this method upon receiving the response state from the DC processor to complete the asynchronous signing process.
Before calling this method, assign the path to the pre-signed copy of the document obtained from the prior SignAsyncBegin call to InputFile (or InputStream). The method will embed the signature into the pre-signed document, and save the complete signed document to OutputFile (or OutputStream).
Note that depending on the signing method and DC configuration used, you may still need to provide the public part of the signing certificate via the SigningCertificate property.
Use the ExternalCrypto.AsyncDocumentID parameter to pass a specific document ID if using batched AsyncReply. If used, it should match the value provided on the pre-signing (SignAsyncBegin) stage.
AsyncState is a message of the distributed cryptography (DC) protocol. The DC protocol is based on the exchange of async states between a DC client (an application that wants to sign a PDF, XML, or Office document) and a DC server (an application that controls access to the private key). An async state can carry one or more signing requests, comprised of document hashes, or one or more signatures produced over those hashes.
In a typical scenario you get a client-side async state from the SignAsyncBegin method. This state contains document hashes to be signed on the DC server side. You then send the async state to the DC server (often represented by the DCAuth component), which processes it and produces a matching signature state. The async state produced by the server is then passed to the SignAsyncEnd method.
SignExternal Method (XAdESSigner Component)
Signs the document using an external signing facility.
Syntax
void __fastcall SignExternal();
Remarks
Call this method to delegate the low-level signing operation to an external, remote, or custom signing engine. This method is useful if the signature has to be made by a device accessible through a custom or non-standard signing interface.
When all preparations are done and hash is computed, the component fires ExternalSign event which allows to pass the hash value for signing.
Timestamp Method (XAdESSigner Component)
Use this method to add an timestamp.
Syntax
void __fastcall Timestamp(int SigIndex, int TimestampType);
Remarks
Call this method to timestamp the signature. Use the TimestampServer property to provide the address of the TSA (Time Stamping Authority) server which should be used for timestamping. This method could be called separately or in SignatureValidated event handler after successful signature validation. Use the TimestampType parameter to specify the type of timestamp to create
Supported timestamp types:
tstSignature | 12 | Signature timestamp |
tstRefsOnly | 13 | RefsOnly timestamp |
tstSigAndRefs | 14 | SigAndRefs timestamp |
tstArchive | 7 | Archive timestamp |
Upgrade Method (XAdESSigner Component)
Upgrades existing XAdES signature to a new form.
Syntax
void __fastcall Upgrade(int SigIndex, int ToForm);
Remarks
XAdES standard defines a number of different 'forms' of signatures which can be used for different purposes. Use this method to upgrade XAdES signature to a new form specified by ToForm. Signatures can normally be upgraded from less sophisticated levels (BES, EPES) to more sophisticated (T, C, X, X-L, A).
The supported forms are:
xafNone | 0 | None |
xafBasic | 1 | XAdES form, supported by XAdES v1.1.1 |
xafBES | 2 | XAdES-BES form, supported starting from XAdES v1.2.2 |
xafEPES | 3 | XAdES-EPES form, supported starting from XAdES v1.2.2 |
xafT | 4 | XAdES-T form |
xafC | 5 | XAdES-C form |
xafX | 6 | XAdES-X form |
xafXL | 7 | XAdES-X-L form |
xafA | 8 | XAdES-A form |
xafExtendedBES | 9 | XAdES-E-BES form |
xafExtendedEPES | 10 | XAdES-E-EPES form |
xafExtendedT | 11 | XAdES-E-T form |
xafExtendedC | 12 | XAdES-E-C form |
xafExtendedX | 13 | XAdES-E-X form |
xafExtendedXLong | 14 | XAdES-E-X-Long form (type 1) |
xafExtendedXL | 15 | XAdES-E-X-L form (type 2) |
xafExtendedA | 16 | XAdES-E-A form |
ChainElementDownload Event (XAdESSigner Component)
Fires when there is a need to download a chain element from an online source.
Syntax
typedef struct { int Kind; String CertRDN; String CACertRDN; String Location; int Action; } TsbxXAdESSignerChainElementDownloadEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerChainElementDownloadEvent)(System::TObject* Sender, TsbxXAdESSignerChainElementDownloadEventParams *e); __property TsbxXAdESSignerChainElementDownloadEvent OnChainElementDownload = { read=FOnChainElementDownload, write=FOnChainElementDownload };
Remarks
Subscribe to this event to be notified about validation element retrievals. Use the Action parameter to suppress the download if required.
veaAuto | 0 | Handle the action automatically (the default behaviour) |
veaContinue | 1 | Accept the request implied by the event (accept the certificate, allow the object retrieval) |
veaReject | 2 | Reject the request implied by the event (reject the certificate, disallow the object retrieval) |
veaAcceptNow | 3 | Accept the validated certificate immediately |
veaAbortNow | 4 | Abort the validation, reject the certificate |
ChainElementNeeded Event (XAdESSigner Component)
Fires when an element required to validate the chain was not located.
Syntax
typedef struct { int Kind; String CertRDN; String CACertRDN; } TsbxXAdESSignerChainElementNeededEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerChainElementNeededEvent)(System::TObject* Sender, TsbxXAdESSignerChainElementNeededEventParams *e); __property TsbxXAdESSignerChainElementNeededEvent OnChainElementNeeded = { read=FOnChainElementNeeded, write=FOnChainElementNeeded };
Remarks
Subscribe to this event to be notified about missing validation elements. Use the KnownCRLs, KnownCertificates, and KnownOCSPs properties in the event handler to provide the missing piece.
ChainElementStore Event (XAdESSigner Component)
This event is fired when a chain element (certificate, CRL, or OCSP response) should be stored along with a signature.
Syntax
typedef struct { int Kind; DynamicArrayBody; String URI; } TsbxXAdESSignerChainElementStoreEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerChainElementStoreEvent)(System::TObject* Sender, TsbxXAdESSignerChainElementStoreEventParams *e); __property TsbxXAdESSignerChainElementStoreEvent OnChainElementStore = { read=FOnChainElementStore, write=FOnChainElementStore };
Remarks
This event could occur if you are verifying XAdES-C form or higher. The Body parameter contains the element in binary form that should be stored along with a signature. Use the URI parameter to provide an URI of the stored element.
ChainValidated Event (XAdESSigner Component)
Reports the completion of a certificate chain validation.
Syntax
typedef struct { int Index; String SubjectRDN; int ValidationResult; int ValidationDetails; } TsbxXAdESSignerChainValidatedEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerChainValidatedEvent)(System::TObject* Sender, TsbxXAdESSignerChainValidatedEventParams *e); __property TsbxXAdESSignerChainValidatedEvent OnChainValidated = { read=FOnChainValidated, write=FOnChainValidated };
Remarks
This event is fired when a certificate chain validation routine completes. SubjectRDN identifies the owner of the validated certificate.
ValidationResult set to 0 (zero) indicates successful chain validation.
cvtValid | 0 | The chain is valid |
cvtValidButUntrusted | 1 | The chain is valid, but the root certificate is not trusted |
cvtInvalid | 2 | The chain is not valid (some of certificates are revoked, expired, or contain an invalid signature) |
cvtCantBeEstablished | 3 | The validity of the chain cannot be established because of missing or unavailable validation information (certificates, CRLs, or OCSP responses) |
cvrBadData | 0x0001 | One or more certificates in the validation path are malformed |
cvrRevoked | 0x0002 | One or more certificates are revoked |
cvrNotYetValid | 0x0004 | One or more certificates are not yet valid |
cvrExpired | 0x0008 | One or more certificates are expired |
cvrInvalidSignature | 0x0010 | A certificate contains a non-valid digital signature |
cvrUnknownCA | 0x0020 | A CA certificate for one or more certificates has not been found (chain incomplete) |
cvrCAUnauthorized | 0x0040 | One of the CA certificates are not authorized to act as CA |
cvrCRLNotVerified | 0x0080 | One or more CRLs could not be verified |
cvrOCSPNotVerified | 0x0100 | One or more OCSP responses could not be verified |
cvrIdentityMismatch | 0x0200 | The identity protected by the certificate (a TLS endpoint or an e-mail addressee) does not match what is recorded in the certificate |
cvrNoKeyUsage | 0x0400 | A mandatory key usage is not enabled in one of the chain certificates |
cvrBlocked | 0x0800 | One or more certificates are blocked |
cvrFailure | 0x1000 | General validation failure |
cvrChainLoop | 0x2000 | Chain loop: one of the CA certificates recursively signs itself |
cvrWeakAlgorithm | 0x4000 | A weak algorithm is used in one of certificates or revocation elements |
cvrUserEnforced | 0x8000 | The chain was considered invalid following intervention from a user code |
ChainValidationProgress Event (XAdESSigner Component)
This event is fired multiple times during chain validation to report various stages of the validation procedure.
Syntax
typedef struct { String EventKind; String CertRDN; String CACertRDN; int Action; } TsbxXAdESSignerChainValidationProgressEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerChainValidationProgressEvent)(System::TObject* Sender, TsbxXAdESSignerChainValidationProgressEventParams *e); __property TsbxXAdESSignerChainValidationProgressEvent OnChainValidationProgress = { read=FOnChainValidationProgress, write=FOnChainValidationProgress };
Remarks
Subscribe to this event to be notified about chain validation progress. Use the Action parameter to alter the validation flow.
The EventKind parameter reports the nature of the event being reported. The CertRDN and CACertRDN parameters report the distinguished names of the certificates that are relevant for the event invocation (one or both can be empty, depending on EventKind). Use the Action parameter to adjust the validation flow.
veaAuto | 0 | Handle the action automatically (the default behaviour) |
veaContinue | 1 | Accept the request implied by the event (accept the certificate, allow the object retrieval) |
veaReject | 2 | Reject the request implied by the event (reject the certificate, disallow the object retrieval) |
veaAcceptNow | 3 | Accept the validated certificate immediately |
veaAbortNow | 4 | Abort the validation, reject the certificate |
DocumentLoaded Event (XAdESSigner Component)
This event is fired when the document has been loaded into memory.
Syntax
typedef struct { bool Cancel; } TsbxXAdESSignerDocumentLoadedEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerDocumentLoadedEvent)(System::TObject* Sender, TsbxXAdESSignerDocumentLoadedEventParams *e); __property TsbxXAdESSignerDocumentLoadedEvent OnDocumentLoaded = { read=FOnDocumentLoaded, write=FOnDocumentLoaded };
Remarks
The handler for this event is a good place to check document properties, which may be useful when preparing the signature, for example, the document format.
Set Cancel to true to terminate document processing on this stage.
Error Event (XAdESSigner Component)
Information about errors during signing.
Syntax
typedef struct { int ErrorCode; String Description; } TsbxXAdESSignerErrorEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerErrorEvent)(System::TObject* Sender, TsbxXAdESSignerErrorEventParams *e); __property TsbxXAdESSignerErrorEvent OnError = { read=FOnError, write=FOnError };
Remarks
The event is fired in case of exceptional conditions during signing.
ErrorCode contains an error code and Description contains a textual description of the error. For a list of valid error codes and their descriptions, please refer to XML.
ExternalSign Event (XAdESSigner Component)
Handles remote or external signing initiated by the SignExternal method or other source.
Syntax
typedef struct { String OperationId; String HashAlgorithm; String Pars; String Data; String SignedData; } TsbxXAdESSignerExternalSignEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerExternalSignEvent)(System::TObject* Sender, TsbxXAdESSignerExternalSignEventParams *e); __property TsbxXAdESSignerExternalSignEvent OnExternalSign = { read=FOnExternalSign, write=FOnExternalSign };
Remarks
Assign a handler to this event if you need to delegate a low-level signing operation to an external, remote, or custom signing engine. Depending on the settings, the handler will receive a hashed or unhashed value to be signed.
The event handler must pass the value of Data to the signer, obtain the signature, and pass it back to the component via the SignedData parameter.
OperationId provides a comment about the operation and its origin. It depends on the exact component being used, and may be empty. HashAlgorithm specifies the hash algorithm being used for the operation, and Pars contains algorithm-dependent parameters.
The component uses base16 (hex) encoding for the Data, SignedData, and Pars parameters. If your signing engine uses a different input and output encoding, you may need to decode and/or encode the data before and/or after the signing.
A sample MD5 hash encoded in base16: a0dee2a0382afbb09120ffa7ccd8a152 - lower case base16 A0DEE2A0382AFBB09120FFA7CCD8A152 - upper case base16
A sample event handler that uses the .NET RSACryptoServiceProvider class may look like the following:
signer.OnExternalSign += (s, e) =>
{
var cert = new X509Certificate2("cert.pfx", "", X509KeyStorageFlags.Exportable);
var key = (RSACryptoServiceProvider)cert.PrivateKey;
var dataToSign = e.Data.FromBase16String();
var signedData = key.SignHash(dataToSign, "2.16.840.1.101.3.4.2.1");
e.SignedData = signedData.ToBase16String();
};
FormatElement Event (XAdESSigner Component)
Reports the XML element that is currently being processed.
Syntax
typedef struct { String StartTagWhitespace; String EndTagWhitespace; int Level; String Path; bool HasChildElements; } TsbxXAdESSignerFormatElementEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerFormatElementEvent)(System::TObject* Sender, TsbxXAdESSignerFormatElementEventParams *e); __property TsbxXAdESSignerFormatElementEvent OnFormatElement = { read=FOnFormatElement, write=FOnFormatElement };
Remarks
Path and Level specify the path to the XML element being processed and its nesting level, respectively.
HasChildElements specify if processed XML element has child elements.
Among other purposes, this event may be used to add whitespace formatting before or after a particular element in the signature.
FormatText Event (XAdESSigner Component)
Reports XML text that is currently being processed.
Syntax
typedef struct { String Text; int TextType; int Level; String Path; } TsbxXAdESSignerFormatTextEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerFormatTextEvent)(System::TObject* Sender, TsbxXAdESSignerFormatTextEventParams *e); __property TsbxXAdESSignerFormatTextEvent OnFormatText = { read=FOnFormatText, write=FOnFormatText };
Remarks
TextType parameter specifies the type of the XML text (normal or Base64-encoded) that is stored in the element; Path and Level specify the path to the XML element and its nesting level.
Among other purposes, this event may be used to add whitespace formatting before or after a particular element in the signature.
Notification Event (XAdESSigner Component)
This event notifies the application about an underlying control flow event.
Syntax
typedef struct { String EventID; String EventParam; } TsbxXAdESSignerNotificationEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerNotificationEvent)(System::TObject* Sender, TsbxXAdESSignerNotificationEventParams *e); __property TsbxXAdESSignerNotificationEvent OnNotification = { read=FOnNotification, write=FOnNotification };
Remarks
The component fires this event to let the application know about some event, occurrence, or milestone in the component. For example, it may fire to report completion of the document processing. The list of events being reported is not fixed, and may be flexibly extended over time.
The unique identifier of the event is provided in the EventID parameter. EventParam contains any parameters accompanying the occurrence. Depending on the type of the component, the exact action it is performing, or the document being processed, one or both may be omitted.
This component can fire this event with the following EventID values:
BeforeTimestamp | This event is fired before a timestamp is requested from the timestamping authority. Use the event handler to modify TSA and HTTP settings. |
TimestampError | This event is only fired if the component failed to obtain a timestamp from the timestamping authority. The EventParam parameter contains extended error info. |
TimestampRequest | A timestamp is requested from the custom timestamping
authority. This event is only fired if TimestampServer was set to a
virtual:// URI. The EventParam parameter contains the
TSP request (or the plain hash, depending on the value provided to
TimestampServer), in base16, that needs to be sent to the TSA.
Use the event handler to send the request to the TSA. Upon receiving the response, assign it, in base16, to the TimestampResponse configuration property. |
ReferenceValidated Event (XAdESSigner Component)
Marks the end of a reference validation.
Syntax
typedef struct { int ReferenceIndex; String ID; String URI; String RefType; bool DigestValid; } TsbxXAdESSignerReferenceValidatedEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerReferenceValidatedEvent)(System::TObject* Sender, TsbxXAdESSignerReferenceValidatedEventParams *e); __property TsbxXAdESSignerReferenceValidatedEvent OnReferenceValidated = { read=FOnReferenceValidated, write=FOnReferenceValidated };
Remarks
The component fires this event to report completion of a reference validation. A reference is a building block of a signature as it binds signature coverage to a particular piece of the document.
ResolveReference Event (XAdESSigner Component)
Asks the application to resolve a reference.
Syntax
typedef struct { int ReferenceIndex; String URI; } TsbxXAdESSignerResolveReferenceEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerResolveReferenceEvent)(System::TObject* Sender, TsbxXAdESSignerResolveReferenceEventParams *e); __property TsbxXAdESSignerResolveReferenceEvent OnResolveReference = { read=FOnResolveReference, write=FOnResolveReference };
Remarks
This event is fired when the control could not automatically resolve a reference and requires custom treatment.
URI contains a reference to the data.
ReferenceIndex specifies the index of the reference to process.
Based on the reference's URI the event handler should set either TargetXMLElement or TargetData property of the reference.
SignatureFound Event (XAdESSigner Component)
Signifies the start of signature validation.
Syntax
typedef struct { int Index; String IssuerRDN; DynamicArraySerialNumber; DynamicArray SubjectKeyID; bool CertFound; bool ValidateSignature; bool ValidateChain; } TsbxXAdESSignerSignatureFoundEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerSignatureFoundEvent)(System::TObject* Sender, TsbxXAdESSignerSignatureFoundEventParams *e); __property TsbxXAdESSignerSignatureFoundEvent OnSignatureFound = { read=FOnSignatureFound, write=FOnSignatureFound };
Remarks
This event tells the application that signature validation is about to start, and provides the details about the signer's certificate via its IssuerRDN, SerialNumber, and SubjectKeyID parameters. It fires for every signature located in the verified document or message.
The CertFound parameter is set to True if the component has found the needed certificate in one of the known locations, and to False otherwise, in which case you must provide it manually via the KnownCertificates property.
Signature validation consists of two independent stages: cryptographic signature validation and chain validation. Separate validation results are reported for each, with the and properties respectively.
Use the ValidateSignature and ValidateChain parameters to tell the verifier which stages to include in the validation.
SignatureValidated Event (XAdESSigner Component)
Marks the completion of the signature validation routine.
Syntax
typedef struct { int Index; String IssuerRDN; DynamicArraySerialNumber; DynamicArray SubjectKeyID; int ValidationResult; } TsbxXAdESSignerSignatureValidatedEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerSignatureValidatedEvent)(System::TObject* Sender, TsbxXAdESSignerSignatureValidatedEventParams *e); __property TsbxXAdESSignerSignatureValidatedEvent OnSignatureValidated = { read=FOnSignatureValidated, write=FOnSignatureValidated };
Remarks
This event is fired upon the completion of the signature validation routine, and reports the respective validation result.
Use the IssuerRDN, SerialNumber, and/or SubjectKeyID parameters to identify the signing certificate.
ValidationResult is set to 0 if the validation has been successful, or to a non-zero value in case of a validation failure.
svtValid | 0 | The signature is valid |
svtUnknown | 1 | Signature validity is unknown |
svtCorrupted | 2 | The signature is corrupted |
svtSignerNotFound | 3 | Failed to acquire the signing certificate. The signature cannot be validated. |
svtFailure | 4 | General failure |
TimestampFound Event (XAdESSigner Component)
Signifies the start of a timestamp validation routine.
Syntax
typedef struct { int Index; String IssuerRDN; DynamicArraySerialNumber; DynamicArray SubjectKeyID; bool CertFound; bool ValidateTimestamp; bool ValidateChain; } TsbxXAdESSignerTimestampFoundEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTimestampFoundEvent)(System::TObject* Sender, TsbxXAdESSignerTimestampFoundEventParams *e); __property TsbxXAdESSignerTimestampFoundEvent OnTimestampFound = { read=FOnTimestampFound, write=FOnTimestampFound };
Remarks
This event fires for every timestamp identified during signature processing, and reports the details about the signer's certificate via its IssuerRDN, SerialNumber, and SubjectKeyID parameters.
The CertFound parameter is set to True if the component has found the needed certificate in one of the known locations, and to False otherwise, in which case you must provide it manually via the KnownCertificates property.
Just like with signature validation, timestamp validation consists of two independent stages: cryptographic signature validation and chain validation. Separate validation results are reported for each, with the and properties respectively.
Use the ValidateSignature and ValidateChain parameters to tell the verifier which stages to include in the validation.
TimestampRequest Event (XAdESSigner Component)
Fires when the component is ready to request a timestamp from an external TSA.
Syntax
typedef struct { String TSA; String TimestampRequest; String TimestampResponse; bool SuppressDefault; } TsbxXAdESSignerTimestampRequestEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTimestampRequestEvent)(System::TObject* Sender, TsbxXAdESSignerTimestampRequestEventParams *e); __property TsbxXAdESSignerTimestampRequestEvent OnTimestampRequest = { read=FOnTimestampRequest, write=FOnTimestampRequest };
Remarks
Subscribe to this event to intercept timestamp requests. You can use it to override timestamping requests and perform them in your code.
The TSA parameter indicates the timestamping service being used. It matches the value passed to the TimestampServer property. Set the SuppressDefault parameter to false if you would like to stop the built-in TSA request from going ahead. The built-in TSA request is also not performed if the returned TimestampResponse parameter is not empty.
TimestampValidated Event (XAdESSigner Component)
Reports the completion of the timestamp validation routine.
Syntax
typedef struct { int Index; String IssuerRDN; DynamicArraySerialNumber; DynamicArray SubjectKeyID; String Time; int ValidationResult; int ChainValidationResult; int ChainValidationDetails; } TsbxXAdESSignerTimestampValidatedEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTimestampValidatedEvent)(System::TObject* Sender, TsbxXAdESSignerTimestampValidatedEventParams *e); __property TsbxXAdESSignerTimestampValidatedEvent OnTimestampValidated = { read=FOnTimestampValidated, write=FOnTimestampValidated };
Remarks
This event is fired upon the completion of the timestamp validation routine, and reports the respective validation result.
ValidationResult is set to 0 if the validation has been successful, or to a non-zero value in case of a failure.
svtValid | 0 | The signature is valid |
svtUnknown | 1 | Signature validity is unknown |
svtCorrupted | 2 | The signature is corrupted |
svtSignerNotFound | 3 | Failed to acquire the signing certificate. The signature cannot be validated. |
svtFailure | 4 | General failure |
TLSCertNeeded Event (XAdESSigner Component)
Fires when a remote TLS party requests a client certificate.
Syntax
typedef struct { String Host; String CANames; } TsbxXAdESSignerTLSCertNeededEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTLSCertNeededEvent)(System::TObject* Sender, TsbxXAdESSignerTLSCertNeededEventParams *e); __property TsbxXAdESSignerTLSCertNeededEvent OnTLSCertNeeded = { read=FOnTLSCertNeeded, write=FOnTLSCertNeeded };
Remarks
This event fires to notify the implementation that a remote TLS server has requested a client certificate. The Host parameter identifies the host that makes a request, and the CANames parameter (optional, according to the TLS spec) advises on the accepted issuing CAs.
Use the TLSClientChain property in response to this event to provide the requested certificate. Please make sure the client certificate includes the associated private key. Note that you may set the certificates before the connection without waiting for this event to fire.
This event is preceded by the TLSHandshake event for the given host and, if the certificate was accepted, succeeded by the TLSEstablished event.
TLSCertValidate Event (XAdESSigner Component)
This event is fired upon receipt of the TLS server's certificate, allowing the user to control its acceptance.
Syntax
typedef struct { String ServerHost; String ServerIP; bool Accept; } TsbxXAdESSignerTLSCertValidateEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTLSCertValidateEvent)(System::TObject* Sender, TsbxXAdESSignerTLSCertValidateEventParams *e); __property TsbxXAdESSignerTLSCertValidateEvent OnTLSCertValidate = { read=FOnTLSCertValidate, write=FOnTLSCertValidate };
Remarks
This event is fired during a TLS handshake. Use the TLSServerChain property to access the certificate chain. In general, components may contact a number of TLS endpoints during their work, depending on their configuration.
Accept is assigned in accordance with the outcome of the internal validation check performed by the component, and can be adjusted if needed.
TLSEstablished Event (XAdESSigner Component)
Fires when a TLS handshake with Host successfully completes.
Syntax
typedef struct { String Host; String Version; String Ciphersuite; DynamicArrayConnectionId; bool Abort; } TsbxXAdESSignerTLSEstablishedEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTLSEstablishedEvent)(System::TObject* Sender, TsbxXAdESSignerTLSEstablishedEventParams *e); __property TsbxXAdESSignerTLSEstablishedEvent OnTLSEstablished = { read=FOnTLSEstablished, write=FOnTLSEstablished };
Remarks
The component uses this event to notify the application about a successful completion of a TLS handshake.
The Version, Ciphersuite, and ConnectionId parameters indicate the security parameters of the new connection. Use the Abort parameter if you need to terminate the connection at this stage.
TLSHandshake Event (XAdESSigner Component)
Fires when a new TLS handshake is initiated, before the handshake commences.
Syntax
typedef struct { String Host; bool Abort; } TsbxXAdESSignerTLSHandshakeEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTLSHandshakeEvent)(System::TObject* Sender, TsbxXAdESSignerTLSHandshakeEventParams *e); __property TsbxXAdESSignerTLSHandshakeEvent OnTLSHandshake = { read=FOnTLSHandshake, write=FOnTLSHandshake };
Remarks
The component uses this event to notify the application about the start of a new TLS handshake to Host. If the handshake is successful, this event will be followed by the TLSEstablished event. If the server chooses to request a client certificate, the TLSCertNeeded event will also be fired.
TLSShutdown Event (XAdESSigner Component)
Reports the graceful closure of a TLS connection.
Syntax
typedef struct { String Host; } TsbxXAdESSignerTLSShutdownEventParams; typedef void __fastcall (__closure *TsbxXAdESSignerTLSShutdownEvent)(System::TObject* Sender, TsbxXAdESSignerTLSShutdownEventParams *e); __property TsbxXAdESSignerTLSShutdownEvent OnTLSShutdown = { read=FOnTLSShutdown, write=FOnTLSShutdown };
Remarks
This event notifies the application about the closure of an earlier established TLS connection. Note that only graceful connection closures are reported.
Config Settings (XAdESSigner Component)
The component accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.XAdESSigner Config Settings
For example, if the corresponding ds:Reference element has an Id "reference-id-1", then you should set this property to "#reference-id-1" value.
Index value could be omitted for the first DataObjectFormat element.
Default value is "ec". In this case "ec:" prefix will be used.
Special values:
"#default" or "" | indicates that the prefix will be omitted. |
"#auto" | indicates that the prefix will be auto-detected based on the parent nodes. |
If IgnoreSystemTrust is True, certificates residing in the trusted root store are treated as if they are known, rather than trusted. Only certificates provided via other means (such as the TrustedCertificates property) are considered trusted.
"" or "XML" | an XML document (by default). | |
"data" | a binary data. | |
"base64" | Base64 encoded binary data (input data will be encoded in Base64 and will be placed in ds:Object for Enveloping signature type) |
Enveloped signature type supports only an XML document as the input. | |
Enveloping signature type supports all types of the input. | |
Detached signature type supports an XML document and a binary data as the input. |
Supported values are:
"" | an empty string indicates the Document element |
"#id" | indicates an XML element with specified Id |
XPath expression | indicates an XML element selected using XPath expression. Use XPathNamespaces property to specify Prefixes and NamespaceURIs
For example: "/root/data[1]" - indicates the second "data" element under the document element with a name "root" "//ns1:data" - indicates a data element. "ns1" prefix should be defined in XPathNamespaces property |
Node name | indicates an XML element selected using its NodeName.
For example: "data" - indicates an XML element with node name "data". |
The empty elements in the custom XML content act as a placeholder for auto-generated elements.
For example to change the order of ds:KeyValue and ds:X509Data auto-generated elements use the value: "<X509Data/><KeyValue/>"
Supported values are:
certificate | Base64-encoded [X509v3] certificate is placed to the signature | |
issuerserial | X.509 issuer distinguished name/serial number pair are placed to the signature | |
subjectname | X.509 subject distinguished name is placed to the signature | |
ski | Base64 encoded plain (i.e. non-DER-encoded) value of a X509 V.3 SubjectKeyIdentifier extension is placed to the signature | |
crl | Base64-encoded certificate revocation list (CRL) is placed to the signature |
Sample value: "CITY=Test City, ST=Test State, POSTALCODE=Test Code, C=Test Country"
Supported values are:
SigAndRefs | SigAndRefs timestamp | |
RefsOnly | RefsOnly timestamp |
Supported values are:
"" | The same as "XML-DSig". | |
XML-DSig | The W3C's XMLDSig-compliant signature (by default). | |
EBICS | Electronic Banking Internet Communication Standard (EBICS) compliant signature. On signing the version is autodetected based on the document element. | |
EBICS_H3 | Electronic Banking Internet Communication Standard (EBICS) compliant signature. The version is H3. | |
EBICS_H4 | Electronic Banking Internet Communication Standard (EBICS) compliant signature. The version is H4. | |
EBICS_H5 | Electronic Banking Internet Communication Standard (EBICS) compliant signature. The version is H5. |
Default value is "ds". In this case "ds:" prefix will be used.
Special values:
"#default" or "" | indicates that the prefix will be omitted. |
"#auto" | indicates that the prefix will be auto-detected based on the parent nodes. |
cxcmNone | 0 | |
cxcmCanon | 1 | |
cxcmCanonComment | 2 | |
cxcmExclCanon | 3 | |
cxcmExclCanonComment | 4 | |
cxcmMinCanon | 5 | |
cxcmCanon_v1_1 | 6 | |
cxcmCanonComment_v1_1 | 7 |
Supported values:
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 |
The default value is empty string, in this case, the hash algorithm specified in HashAlgorithm property is used.
Supported values:
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 |
The default value is empty string, in this case, the hash algorithm specified in HashAlgorithm property is used.
Supported values:
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 |
cxcmNone | 0 | |
cxcmCanon | 1 | |
cxcmCanonComment | 2 | |
cxcmExclCanon | 3 | |
cxcmExclCanonComment | 4 | |
cxcmMinCanon | 5 | |
cxcmCanon_v1_1 | 6 | |
cxcmCanonComment_v1_1 | 7 |
Supported values are:
certificate | Base64-encoded [X509v3] certificates | |
crl | Base64-encoded certificate revocation lists (CRL) | |
ocsp | OCSP responses |
- CA, revocation source, TLS key usage requirements are not mandated
- Violation of OCSP issuer requirements are ignored
- The AuthorityKeyID extension in CRL- and certificate-issuing CAs are ignored (helps with incorrectly renewed certificates)
- Basic constraints and name constraints of CA certificates are ignored
- Some weaker algorithms are tolerated
In case of a timestamping failure, provide new TSA and HTTP settings inside the Notification event handler ('BeforeTimestamp' and 'TimestampError' event IDs).
Supported values are:
certificate | References to X.509 certificates | |
crl | References to certificate revocation lists (CRL) | |
ocsp | References to OCSP responses |
Supported values:
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 |
The default value is empty string, in this case, the hash algorithm specified in HashAlgorithm property is used.
Supported values are:
certificate | Base64-encoded [X509v3] certificates | |
crl | Base64-encoded certificate revocation lists (CRL) | |
ocsp | OCSP responses |
Default value is "xades". In this case "xades:" prefix will be used.
Special values:
"#default" or "" | indicates that the prefix will be omitted. |
"#auto" | indicates that the prefix will be auto-detected based on the parent nodes. |
Default value is "xadesv141". In this case "xadesv141:" prefix will be used.
Special values:
"#default" or "" | indicates that the prefix will be omitted. |
"#auto" | indicates that the prefix will be auto-detected based on the parent nodes. |
Supported values:
"" or "none" | no formatting (by default). | |
"auto" | enables auto-formatting, equivalent to: "indent: 1; indent-char: tab; base64-max-length: 64; starting-level: node" |
indent | specifies indentation level (default is 1) | |
indent-char | specifies indentation character: "space" or "tab" (default) | |
base64-max-length | specifies max length of base64 encoded data, such as signature value, certificate data and etc. (default is 64) | |
starting-level | specifies starting indentation level: non-negative integer or "node" - detected based on parent node, or "root" - detected based on number of parent nodes to a document element (default is "node"). | |
indent-before-main | specifies if whitespace characters should be inserted before a main (ds:Signature) element: "auto" (default), "yes" or "no" |
Base Config Settings
You can switch this property off to improve performance if your project only uses known, good private keys.
Supported values are:
off | No caching (default) | |
local | Local caching | |
global | Global caching |
This setting only applies to sessions negotiated with TLS version 1.3.
Supported values are:
file | File | |
console | Console | |
systemlog | System Log (supported for Android only) | |
debugger | Debugger (supported for VCL for Windows and .Net) |
Supported values are:
time | Current time | |
level | Level | |
package | Package name | |
module | Module name | |
class | Class name | |
method | Method name | |
threadid | Thread Id | |
contenttype | Content type | |
content | Content | |
all | All details |
Supported filter names are:
exclude-package | Exclude a package specified in the value | |
exclude-module | Exclude a module specified in the value | |
exclude-class | Exclude a class specified in the value | |
exclude-method | Exclude a method specified in the value | |
include-package | Include a package specified in the value | |
include-module | Include a module specified in the value | |
include-class | Include a class specified in the value | |
include-method | Include a method specified in the value |
none | No flush (caching only) | |
immediate | Immediate flush (real-time logging) | |
maxcount | Flush cached entries upon reaching LogMaxEventCount entries in the cache. |
Supported values are:
none | None (by default) | |
fatal | Severe errors that cause premature termination. | |
error | Other runtime errors or unexpected conditions. | |
warning | Use of deprecated APIs, poor use of API, 'almost' errors, other runtime situations that are undesirable or unexpected, but not necessarily "wrong". | |
info | Interesting runtime events (startup/shutdown). | |
debug | Detailed information on flow of through the system. | |
trace | More detailed information. |
The default value of this setting is 100.
none | No rotation | |
deleteolder | Delete older entries from the cache upon reaching LogMaxEventCount | |
keepolder | Keep older entries in the cache upon reaching LogMaxEventCount (newer entries are discarded) |
Supported values are:
none | No static DNS rules (default) | |
local | Local static DNS rules | |
global | Global static DNS rules |
This setting only applies to certificates originating from a Windows system store.
Trappable Errors (XAdESSigner Component)
XAdESSigner Errors
1048577 Invalid parameter value (SB_ERROR_INVALID_PARAMETER) | |
1048578 Component is configured incorrectly (SB_ERROR_INVALID_SETUP) | |
1048579 Operation cannot be executed in the current state (SB_ERROR_INVALID_STATE) | |
1048580 Attempt to set an invalid value to a property (SB_ERROR_INVALID_VALUE) | |
1048581 Certificate does not have its private key loaded (SB_ERROR_NO_PRIVATE_KEY) | |
1048581 Cancelled by the user (SB_ERROR_CANCELLED_BY_USER) | |
39845889 Input file does not exist (SB_ERROR_XML_INPUTFILE_NOT_EXISTS) | |
39845890 Data file does not exist (SB_ERROR_XML_DATAFILE_NOT_EXISTS) | |
39845891 Unsupported signature method type (SB_ERROR_XML_UNSUPPORTED_SIGNATURE_METHOD_TYPE) | |
39845892 Unsupported has algorithm (SB_ERROR_XML_UNSUPPORTED_HASH_ALGORITHM) | |
39845893 Unsupported key type (SB_ERROR_XML_UNSUPPORTED_KEY_TYPE) | |
39845894 Invalid key type (SB_ERROR_XML_INVALID_KEY_TYPE) | |
39845895 Invalid encryption method (SB_ERROR_XML_INVALID_ENCRYPTION_METHOD) | |
39845896 Not found (SB_ERROR_XML_NOT_FOUND) | |
39845897 No element ID (SB_ERROR_XML_NO_ELEMENT_ID) |