Развернуть все
Свернуть все

Структура CADES_SIGN_PARA

Структура, содержащая параметры создания усовершенствованной подписи.

Синтаксис

C++
 typedef struct _CADES_SIGN_PARA {
   DWORD dwSize;
   DWORD dwCadesType;
   PCCERT_CONTEXT pSignerCert;
   LPCSTR szHashAlgorithm;
   HCERTSTORE hAdditionalStore;
   PCADES_SERVICE_CONNECTION_PARA pTspConnectionPara;
   PCADES_PROXY_PARA pProxyPara;
   LPVOID pCadesExtraPara;
   DWORD cAdditionalOCSPServices;
   LPCWSTR *rgAdditionalOCSPServices;
 } CADES_SIGN_PARA,
   *PCADES_SIGN_PARA;

Параметры

dwSize

Размер структуры в байтах.

dwCadesType

Тип усовершенствованной подписи (см. примечания). По умолчанию используется тип подписи CADES_DEFAULT.

pSignerCert

Указатель на контекст сертификата используемого для создания подписи (может быть равен NULL). Если указатель на контекст сертификата равен NULL, то используется либо сертификат подписи сообщения (при вызове CadesSignMessage), либо будет осуществляться поиск (в остальных случаях) среди сертификатов, вложенных в сообщение, и в хранилищах текущего пользователя "My" (Личные) и "Addressbook" (Другие пользователи). В качестве критерия поиска сертификатов, используется либо параметр pCertInfo, указанный в структуре CMSG_SIGNER_ENCODE_INFO (при вызове CadesMsgAddEnhancedSignature, CadesMsgCountersign и CadesMsgCountersignEncoded), либо идентификатор сертификата, использованного при создании подписи (при вызове CadesMsgEnhanceSignature и CadesMsgEnhanceSignatureAll).

szHashAlgorithm

Алгоритм хэширования для создания идентификаторов (может быть равен NULL). Данный алгоритм используется для хэширования сертификатов, CRL и OCSP ответов при создании ссылок на доказательства, использованные при проверке сертификата, на ключе которого была сделана подпись. Если этот параметр равен NULL, то используется либо алгоритм хэширования подписываемых данных (при вызове CadesSignMessage, CadesMsgAddEnhancedSignature, CadesMsgCountersign и CadesMsgCountersignEncoded), либо алгоритм хэширования использованный при создании идентификатора сертификата подписи (при вызове CadesMsgEnhanceSignature и CadesMsgEnhanceSignatureAll).

hAdditionalStore

Хранилище, содержащее дополнительные сертификаты и CRL для сбора доказательств действительности сертификата подписи (может быть равно NULL).

pTspConnectionPara

Указатель на структуру CADES_SERVICE_CONNECTION_PARA с параметрами соединения со службой штампов времени (может быть равным NULL). Если указатель равен NULL, то используются настройки групповой политики для CryptoPro TSP Client.

pProxyPara

Указатель на структуру CADES_PROXY_PARA с параметрами прокси (может быть равным NULL). Данный параметр задаёт настройки прокси для доступа к службам актуальных статусов и к службе штампов времени в процессе создания усовершенствованной подписи. Если указатель равен NULL, то для доступа к службам будут использоваться соответствующие настройки групповых политик клиентов служб (OCSP Client, TSP Client). Если параметры прокси в групповых политиках не настроены, будут использоваться настройки прокси Microsoft Internet Explorer.

pCadesExtraPara

Указатель на VOID для передачи параметров подписи (доступен, начиная с версии SDK 2.00.12098. Может быть равным NULL).

cAdditionalOCSPServices

Количество адресов служб OCSP в параметре rgAdditionalOCSPServices (доступен, начиная с версии SDK 2.00.13126. Может быть равным 0).

rgAdditionalOCSPServices

Дополнительные адреса OCSP служб для получения статуса сертификата подписанта. (доступен, начиная с версии SDK 2.00.13126. Может быть равным NULL).

Примечания

Параметры cAdditionalOCSPServices и rgAdditionalOCSPServices будут доступны в структуре CADES_SIGN_PARA если при компиляции будет определена директива препроцессора CADES_PARA_HAS_EXTRA_FIELDS. Параметр dwCadesType может принимать следующие значения:
Имя Описание
CADES_X_LONG_TYPE_1

Тип сообщения CAdES-X Long Type 1.

CADES_BES

Тип сообщения CAdES BES.

CADES_T

Тип сообщения CAdES-T.

CADES_DEFAULT

Эквивалентен CADES_X_LONG_TYPE_1.

PKCS7_TYPE

Тип сообщения PKCS7.

Замечание

В КриптоПро OCSP Client существует групповая политика - "Службы OCSP: сертификаты уполномоченных служб OCSP".

Этой политикой можно определить сертификаты служб OCSP, наделенных полномочиями выдавать ответы со статусами любых сертификатов. Заданные в данной политике службы не проходят проверку на то, что они уполномочены Удостоверяющим Центром, издавшим проверяемый сертификат, выдавать информацию о статусе данного сертификата (см. RFC 2560, подраздел 4.2.2.2).

Если необходимо разрешить использование данной политики при создании подписи формата CAdES-X Long Type 1, следует в дополнение к типу электронной подписи, указываемому в параметре dwCadesType, использовать флаг:
Имя Описание
CADES_USE_OCSP_AUTHORIZED_POLICY

Разрешает использование групповой политики КриптоПро OCSP Client "Службы OCSP: сертификаты уполномоченных служб OCSP" при проверке полномочий службы актуальных статусов.

Данный флаг присоединяется к параметру dwCadesType при помощи логического "или".

Требования

Заголовочный файл cades.h
Минимальная версия продукта 1.0