Функция для работы с усовершенствованной XAdES подписью.
Синтаксис
BOOL XadesSign ( __in PXADES_SIGN_MESSAGE_PARA pSignPara, __in LPCSTR pXPathString, __in BOOL fDetachedSignature, __in const BYTE *pbToBeSigned, __in DWORD cbToBeSigned, __out PCRYPT_DATA_BLOB *ppSignedBlob );
Параметры
- pSignPara
 - 
                        
[in] Указатель на структуру XADES_SIGN_MESSAGE_PARA.
 
- pXPathString
 - 
                        
[in] Регулярное выражение для получение узла подписи. Может быть NULL.
 
- fDetachedSignature
 - 
                        
[in] TRUE, если подпись отделенная.
 
- pbToBeSigned
 - 
                        
[in] Подписываемые данные (XML документ).
 
- cbToBeSigned
 - 
                        
[in] Число байт в массиве pbToBeSigned.
 
- ppSignedBlob
 - 
                        
[out] Указатель на указатель на структуру
CRYPT_DATA_BLOB , в которой возвращается подписанное сообщение, XML документ. Структура должна быть освобождена после использования с помощью XadesFreeBlob.
 
Возвращаемое значение
TRUE в случае успеха, FALSE в случае неудачи, дополнительную информацию об ошибке можно получить через 
Примечания
Функция для создания подписанного сообщения (XML документа) с возможностью задать параметры создания усовершенствованной подписи. Данную функцию нужно вызывать только один раз. Закодированное сообщение возвращается в ppSignedBlob, после использования его нужно освободить с помощью функции XadesFreeBlob.
Если элемент структуры pSignPara->pXadesSignPara->pSignerCert равен NULL, то при создании подписи будет выдано окно для выбора сертификата из хранилища "Личные" ("My") текущего пользователя. При этом сертификаты, срок действия которых истёк или в которых отсутствует ссылка на закрытый ключ, в списке не отображаются.
Требования
| Заголовочный файл | xades.h | 
|---|---|
| Библиотека | xades.dll (Windows), xades.so (Unix) | 
| Библиотека импорта | xades.lib (Windows) | 
| Минимальная версия продукта | 1.0 |