SecureBlackbox 2020 iOS Edition

Questions / Feedback?

OfficeSigner Class

Properties   Methods   Events   Configuration Settings   Errors  

The OfficeSigner class signs Office documents.

Syntax

SecureBlackboxOfficeSigner
SecureBlackboxOfficeSignerSwift

Remarks

OfficeSigner provides digital signing capabilities of Office documents, and provides support for extended facilities, such as timestamps and advanced (XAdES) signatures.

Property List


The following is the full list of the properties of the class with short descriptions. Click on the links for further details.

- blockedCertCountThe number of records in the BlockedCert arrays.
- blockedCertBytes:(int)blockedCertIndexReturns raw certificate data in DER format.
- blockedCertHandle:(int)blockedCertIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- chainValidationDetailsThe details of a certificate chain validation outcome.
- chainValidationResultThe general outcome of a certificate chain validation routine. Use ChainValidationDetails to get information about the reasons that contributed to the validation result.
- claimedSigningTimeThe signing time from the signer's computer.
- documentFormatDefines the format of the Office document.
- enableXAdESSpecifies if an advanced signature (XAdES) will be produced.
- externalCryptoCustomParamsCustom parameters to be passed to the signing service (uninterpreted).
- externalCryptoDataAdditional data to be included in the async state and mirrored back by the requestor.
- externalCryptoExternalHashCalculationSpecifies whether the message hash is to be calculated at the external endpoint.
- externalCryptoHashAlgorithmSpecifies the request's signature hash algorithm.
- externalCryptoKeyIDThe ID of the pre-shared key used for DC request authentication.
- externalCryptoKeySecretThe pre-shared key used for DC request authentication.
- externalCryptoMethodSpecifies the asynchronous signing method.
- externalCryptoModeSpecifies the external cryptography mode.
- externalCryptoPublicKeyAlgorithmProvide public key algorithm here if the certificate is not available on the pre-signing stage.
- hashAlgorithmSpecifies the hash algorithm to be used.
- ignoreChainValidationErrorsMakes the class tolerant to chain validation errors.
- inputBytesUse this property to pass the input to class in the byte array form.
- inputFileThe file to be signed.
- knownCertCountThe number of records in the KnownCert arrays.
- knownCertBytes:(int)knownCertIndexReturns raw certificate data in DER format.
- knownCertHandle:(int)knownCertIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- knownCRLCountThe number of records in the KnownCRL arrays.
- knownCRLBytes:(int)knownCRLIndexReturns raw CRL data in DER format.
- knownCRLHandle:(int)knownCRLIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- knownOCSPCountThe number of records in the KnownOCSP arrays.
- knownOCSPBytes:(int)knownOCSPIndexBuffer containing raw OCSP response data.
- knownOCSPHandle:(int)knownOCSPIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- offlineModeSwitches the class to the offline mode.
- outputBytesUse this property to read the output the class object has produced.
- outputFileDefines where to save the signed document.
- profileSpecifies a pre-defined profile to apply when creating the signature.
- proxyAddressThe IP address of the proxy server.
- proxyAuthenticationThe authentication type used by the proxy server.
- proxyPasswordThe password to authenticate to the proxy server.
- proxyPortThe port on the proxy server to connect to.
- proxyProxyTypeThe type of the proxy server.
- proxyRequestHeadersContains HTTP request headers for WebTunnel and HTTP proxy.
- proxyResponseBodyContains the HTTP or HTTPS (WebTunnel) proxy response body.
- proxyResponseHeadersContains response headers received from an HTTP or HTTPS (WebTunnel) proxy server.
- proxyUseIPv6Specifies whether IPv6 should be used when connecting through the proxy.
- proxyUseProxyEnables or disables proxy-driven connection.
- proxyUsernameSpecifies the username credential for proxy authentication.
- revocationCheckSpecifies the kind(s) of revocation check to perform.
- signatureIndexThe index of the signature to update.
- signatureTypeSpecifies the type of the signature to be made.
- signCorePropertiesWhether to sign the core properties of the document.
- signDocumentWhether to sign the document itself.
- signingCertBytesReturns raw certificate data in DER format.
- signingCertHandleAllows to get or set a 'handle', a unique identifier of the underlying property object.
- signingChainCountThe number of records in the SigningChain arrays.
- signingChainBytes:(int)signingChainIndexReturns raw certificate data in DER format.
- signingChainHandle:(int)signingChainIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- signSignatureOriginWhether to sign the signature origin.
- socketDNSModeSelects the DNS resolver to use: the class's (secure) built-in one, or the one provided by the system.
- socketDNSPortSpecifies the port number to be used for sending queries to the DNS server.
- socketDNSQueryTimeoutThe timeout (in milliseconds) for each DNS query.
- socketDNSServersThe addresses of DNS servers to use for address resolution, separated by commas or semicolons.
- socketDNSTotalTimeoutThe timeout (in milliseconds) for the whole resolution process.
- socketIncomingSpeedLimitThe maximum number of bytes to read from the socket, per second.
- socketLocalAddressThe local network interface to bind the socket to.
- socketLocalPortThe local port number to bind the socket to.
- socketOutgoingSpeedLimitThe maximum number of bytes to write to the socket, per second.
- socketTimeoutThe maximum period of waiting, in milliseconds, after which the socket operation is considered unsuccessful.
- socketUseIPv6Enables or disables IP protocol version 6.
- timestampServerThe address of the timestamping server.
- TLSClientCertCountThe number of records in the TLSClientCert arrays.
- TLSClientCertBytes:(int)tLSClientCertIndexReturns raw certificate data in DER format.
- TLSClientCertHandle:(int)tLSClientCertIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- TLSServerCertCountThe number of records in the TLSServerCert arrays.
- TLSServerCertBytes:(int)tLSServerCertIndexReturns raw certificate data in DER format.
- TLSServerCertHandle:(int)tLSServerCertIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- TLSAutoValidateCertificatesSpecifies whether server-side TLS certificates should be validated automatically using internal validation rules.
- TLSBaseConfigurationSelects the base configuration for the TLS settings.
- TLSCiphersuitesA list of ciphersuites separated with commas or semicolons.
- TLSECCurvesDefines the elliptic curves to enable.
- TLSForceResumeIfDestinationChangesWhether to force TLS session resumption when the destination address changes.
- TLSPreSharedIdentityDefines the identity used when the PSK (Pre-Shared Key) key-exchange mechanism is negotiated.
- TLSPreSharedKeyContains the pre-shared for the PSK (Pre-Shared Key) key-exchange mechanism, encoded with base16.
- TLSPreSharedKeyCiphersuiteDefines the ciphersuite used for PSK (Pre-Shared Key) negotiation.
- TLSRenegotiationAttackPreventionModeSelects renegotiation attack prevention mechanism.
- TLSRevocationCheckSpecifies the kind(s) of revocation check to perform.
- TLSSSLOptionsVarious 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.
- TLSTLSModeSpecifies the TLS mode to use.
- TLSUseExtendedMasterSecretEnables Extended Master Secret Extension, as defined in RFC 7627.
- TLSUseSessionResumptionEnables or disables TLS session resumption capability.
- TLSVersionsTh SSL/TLS versions to enable by default.
- trustedCertCountThe number of records in the TrustedCert arrays.
- trustedCertBytes:(int)trustedCertIndexReturns raw certificate data in DER format.
- trustedCertHandle:(int)trustedCertIndexAllows to get or set a 'handle', a unique identifier of the underlying property object.
- validationLogContains the complete log of the certificate validation routine.
- XAdESFormSpecifies which form of XAdES should be produced.
- XAdESVersionSpecifies XAdES version.

Method List


The following is the full list of the methods of the class with short descriptions. Click on the links for further details.

- configSets or retrieves a configuration setting.
- extractAsyncDataExtracts user data from the DC signing service response.
- signCalculates the signature value.
- signAsyncBeginInitiates the asynchronous signing operation.
- signAsyncEndCompletes the asynchronous signing operation.
- signExternalSigns the document using an external signing facility.
- timestampUse this method to add timestamp.
- upgradeUpgrades existing XAdES signature to a new form.

Event List


The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.

- onErrorInformation about errors during signing.
- onExternalSignHandles remote or external signing initiated by the SignExternal method or other source.
- onNotificationThis event notifies the application about an underlying control flow event.
- onStoreCertificateThis event is fired when a certificate should be stored along with a signature.
- onStoreCRLThis event is fired when a CRL should be stored along with a signature.
- onStoreOCSPResponseThis event is fired when a OCSP Response should be stored along with a signature.
- onTLSCertValidateThis event is fired upon receipt of the TLS server's certificate, allowing the user to control its acceptance.

Configuration Settings


The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.

ClaimedRoleTextThe text of the claimed role.
ClaimedRoleXMLThe XML content of the claimed roles.
CommitmentTypeIndicationAllSignedDataObjects[Index]Specifies the CommitmentTypeIndication's AllSignedDataObjects.
CommitmentTypeIndicationCountThe 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.
ExpireTimeSignature expiration time in UTC.
ForceCompleteChainValidationWhether to check the CA certificates when the signing certificate is invalid.
ForceCompleteChainValidationForTrustedWhether to continue with the full validation up to the root CA certificate for mid-level trust anchors.
GracePeriodSpecifies a grace period to apply during revocation information checks.
IgnoreOCSPNoCheckExtensionWhether OCSP NoCheck extension should be ignored.
IgnoreSystemTrustWhether trusted Windows Certificate Stores should be treated as trusted.
IgnoreTimestampFailureWhether to ignore time-stamping failure during signing.
ImplicitlyTrustSelfSignedCertificatesWhether to trust self-signed certificates.
IncludeKnownRevocationInfoToSignatureWhether to include custom revocation info to the signature.
ProductionPlaceIdentifies the place of the signature production.
PromoteLongOCSPResponsesWhether long OCSP responses are requested.
RefsTimestampTypeSpecifies references timestamp type to include to the signature.
SignatureInfoAddress1Specifies the location at which the signature was created.
SignatureInfoAddress2Specifies the location at which the signature was created.
SignatureInfoCommentsComments to the signature info text.
SignatureInfoDelegateSuggestedSignerSpecifies the name of a person.
SignatureInfoDelegateSuggestedSigner2Specifies the title of a person.
SignatureInfoDelegateSuggestedSignerEmailSpecifies the e-mail address of a person.
SignatureInfoImageSpecifies an image for the digital signature.
SignatureInfoIncludedWhether to include the signature info.
SignatureInfoInvalidLnImageSpecifies the image of an invalid signature.
SignatureInfoSignatureTypeSpecifies the type of the digital signature.
SignatureInfoTextThe text to be displayed as the signature info.
SignatureInfoValidLnImageSpecifies the image of a valid signature.
SignatureLineAdditionalSignatureInfo[Index]Contains additional signature information.
SignatureLineAllowComments[Index]Indicates if comments are allowed.
SignatureLineCountThe number of signature lines.
SignatureLineId[Index]Contains signature unique ID.
SignatureLineImageData[Index]Contains signature image.
SignatureLineIndexSpecifies the index of the signature line to sign.
SignatureLineShowSignDate[Index]Indicates if signing date should be shown.
SignatureLineSignatureIndex[Index]The index of the signature that signs signature line.
SignatureLineSignatureProviderId[Index]Contains signature provider ID.
SignatureLineSignatureProviderUrl[Index]Contains signature provider URL.
SignatureLineSigned[Index]Indicates if signature line is signed.
SignatureLineSigningInstructions[Index]Contains signing instructions.
SignatureLineSuggestedSigner2[Index]Suggested signer line two.
SignatureLineSuggestedSigner[Index]Suggested signer line one.
SignatureLineSuggestedSignerEmail[Index]Suggested signer email address.
SignTimeSpecifies the signing time in UTC.
SigPolicyDescriptionsignature policy description.
SigPolicyExplicitTextThe explicit text of the user notice.
SigPolicyHashThe hash value of the signature policy.
SigPolicyHashAlgorithmSpecifies the hash algorithm used to compute the signature policy hash.
SigPolicyIDIdentifies the signature policy.
SigPolicyNoticeNumbersContains user notice numbers.
SigPolicyNoticeOrganizationThe organization part of the NoticeReference qualifier.
SigPolicyURISignature policy URI.
TempPathLocation where the temporary files are stored.
TimestampCanonicalizationMethodSpecifies canonicalization method used in timestamp.
TimestampValidationDataDetailsSpecifies timestamp validation data details to include to the signature.
TLSChainValidationDetailsContains the advanced details of the TLS server certificate validation.
TLSChainValidationResultContains the result of the TLS server certificate validation.
TLSClientAuthRequestedIndicates whether the TLS server requests client authentication.
TLSValidationLogContains the log of the TLS server certificate validation.
TolerateMinorChainIssuesWhether to tolerate minor chain issues.
TspHashAlgorithmSets a specific hash algorithm for use with the timestamping service.
UseMicrosoftCTLEnables or disables automatic use of Microsoft online certificate trust list.
UseSystemCertificatesEnables or disables the use of the system certificates.
UseValidationCacheEnables or disable the use of the product-wide certificate chain validation cache.
ValidationDataRefsDetailsSpecifies validation data references details to include to the signature.
ValidationDataValuesDetailsSpecifies validation data values details to include to the signature.
CheckKeyIntegrityBeforeUseEnables or disable private key integrity check before use.
CookieCachingSpecifies whether a cookie cache should be used for HTTP(S) transports.
CookiesGets or sets local cookies for the class (supported for HTTPClient, RESTClient and SOAPClient only).
DefDeriveKeyIterationsSpecifies the default key derivation algorithm iteration count.
EnableClientSideSSLFFDHEEnables or disables finite field DHE key exchange support in TLS clients.
GlobalCookiesGets or sets global cookies for all the HTTP transports.
HttpUserAgentSpecifies the user agent name to be used by all HTTP clients.
LogDestinationSpecifies the debug log destination.
LogDetailsSpecifies the debug log details to dump.
LogFileSpecifies the debug log filename.
LogFiltersSpecifies the debug log filters.
LogFlushModeSpecifies the log flush mode.
LogLevelSpecifies the debug log level.
LogMaxEventCountSpecifies the maximum number of events to cache before further action is taken.
LogRotationModeSpecifies the log rotation mode.
MaxASN1BufferLengthSpecifies the maximal allowed length for ASN.1 primitive tag data.
MaxASN1TreeDepthSpecifies the maximal depth for processed ASN.1 trees.
OCSPHashAlgorithmSpecifies the hash algorithm to be used to identify certificates in OCSP requests.
UseOwnDNSResolverSpecifies whether the client classes should use own DNS resolver.
UseSharedSystemStoragesSpecifies whether the validation engine should use a global per-process copy of the system certificate stores.
UseSystemOAEPAndPSSEnforces or disables the use of system-driven RSA OAEP and PSS computations.
UseSystemRandomEnables or disables the use of the OS PRNG.

Copyright (c) 2022 /n software inc. - All rights reserved.
SecureBlackbox 2020 iOS Edition - Version 20.0 [Build 8166]