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

Структура XADES_SIGN_PARA

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

Синтаксис

C++
 typedef struct _XADES_SIGN_PARA {
   DWORD dwSize;
   DWORD dwSignatureType;
   PCCERT_CONTEXT pSignerCert;
   LPCSTR szDigestMethod;
   LPCSTR szSignatureMethod;
   HCERTSTORE hAdditionalStore;
   PCADES_SERVICE_CONNECTION_PARA pTspConnectionPara;
   PCADES_PROXY_PARA pProxyPara;
   LPVOID pXadesExtraPara;
   DWORD cAdditionalOCSPServices;
   LPCWSTR *rgAdditionalOCSPServices;
 } XADES_SIGN_PARA,
   *PXADES_SIGN_PARA;

Параметры

dwSize

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

dwSignatureType

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

pSignerCert

Указатель на контекст сертификата используемого для создания XAdES подписи (может быть равен NULL). Если указатель на контекст сертификата равен NULL, то используется либо сертификат подписи сообщения (при вызове XadesSign), либо будет осуществляться поиск (в остальных случаях) среди сертификатов, вложенных в сообщение, и в хранилищах текущего пользователя "My" (Личные) и "Addressbook" (Другие пользователи).

szDigestMethod

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

szSignatureMethod

URI или URN алгоритма подписи (может быть равен NULL). Данный алгоритм используется для подписи данных. Если этот параметр равен NULL, то алгоритм подписи определяется по алгоритму ключа подписи.

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.

pXadesExtraPara

Указатель на VOID для передачи параметров XAdES подписи. Может быть равным NULL.

cAdditionalOCSPServices

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

rgAdditionalOCSPServices

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

Примечания

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

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

XADES_BES

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

XADES_T

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

XADES_DEFAULT

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

XADES_XMLDSIG

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

и соединяться с помощью логического "или" с видом подписи:

Замечание

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

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

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

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

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

Требования

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