Initiates asynchronous (DC) signing.
Call this method to initiate an asynchronous signing process. Pass the obtained async state to the DC processor for signing. To finalize the signing, pass the async state received from the DC processor to SignAsyncEnd.
AsyncState is a message of the distributed cryptography (DC) protocol. DC protocol is based on 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 control), which processes it and produces a matching signatures state. The async state produced by the server is then passed to the SignAsyncEnd method.
Set Detached to true to generate a detached signature (stored as a separate file).
CAdES defines a number of different 'levels' of signatures. Supported signature levels:
|cslUnknown||0||Unknown signature level|
|cslBES||1||BES (Basic Electronic Signature)|
|cslEPES||2||EPES (Electronic Signature with an Explicit Policy)|
|cslC||4||C (T with revocation references)|
|cslXType1||5||X Type 1 (C with an ES-C timestamp)|
|cslXType2||6||X Type 2 (C with a CertsAndCRLs timestamp)|
|cslXLType1||7||XL Type 1 (C with revocation values and an ES-C timestamp)|
|cslXLType2||8||XL Type 2 (C with revocation values and a CertsAndCRLs timestamp)|
|cslBaselineB||9||Baseline B (B-B, basic)|
|cslBaselineT||10||Baseline T (B-T, timestamped)|
|cslBaselineLT||11||Baseline LT (B-LT, long-term)|
|cslBaselineLTA||12||Baseline LTA (B-LTA, long-term with archived timestamp)|
|cslExtendedXType1||17||Extended X Type 1|
|cslExtendedXType2||18||Extended X Type 2|
|cslExtendedXLType1||19||Extended XL Type 1|
|cslExtendedXLType2||20||Extended XL Type 2|