Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline vdp1955  
#1 Оставлено : 16 апреля 2015 г. 12:12:38(UTC)
vdp1955

Статус: Активный участник

Группы: Участники
Зарегистрирован: 10.10.2013(UTC)
Сообщений: 93
Российская Федерация
Откуда: Москва

Добрый день.
Пытаюсь добавить штамп времени в отделенную подпись pbEncodedBlob:

if (!(hMsg = CryptMsgOpenToDecode(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, 0, 0, 0, 0, 0))) {
ret = CSP_GetLastError();
fprintf(stderr, "CryptMsgOpenToDecode failed. \n");
goto err;
}
if (!CryptMsgUpdate(hMsg, pbEncodedBlob, cbEncodedBlob, TRUE)) {
ret = CSP_GetLastError();
fprintf (stderr, "CryptMsgUpdate failed.\n");
goto err;
}

CADES_SERVICE_CONNECTION_PARA tsp;
memset(&tsp, 0, sizeof(CADES_SERVICE_CONNECTION_PARA));
tsp.dwSize = sizeof(CADES_SERVICE_CONNECTION_PARA);
tsp.wszUri = L"http://cryptopro.ru/tsp/";

CADES_SIGN_PARA enParams;
memset(&enParams, 0, sizeof(CADES_SIGN_PARA));
enParams.dwSize = sizeof(CADES_SIGN_PARA);
enParams.dwCadesType = CADES_X_LONG_TYPE_1;
enParams.pTspConnectionPara = &tsp;
enParams.pTspConnectionPara = NULL;

CADES_COSIGN_PARA cosignPara;
memset(&cosignPara, 0, sizeof(CADES_COSIGN_PARA));
cosignPara.dwSize = sizeof(CADES_COSIGN_PARA);
cosignPara.pSigner = &SignerEncodeInfo;
cosignPara.pCadesSignPara = &enParams;

if (!CadesMsgAddEnhancedSignature(hMsg, &cosignPara)) {
ret = CSP_GetLastError();
fprintf(stderr, "CadesMsgAddEnhancedSignature failed. \n");
goto err;
}

и получаю exception на CadesMsgAddEnhancedSignature.

Вот сообщения из консоли:

cades: CadesMsgAddEnhancedSignature (hCryptMsg=0x0x7b768020, pCadesCosignPara=0x0xbff3e5b8)
cades: CadesMsgAddEnhancedSignatureImpl Signers updating start
cades: SigningTimeAttributeExists (pAttr=0)
cades: AttributeExists (pAttr=0)
cades: CadesMsgAddEnhancedSignatureImpl Attributes copied
cades: CheckAlgorithms Public key info is exported successfully
cades: CheckAlgorithms Signature algoritm OID info is found: 1.2.643.2.2.3
cades: CadesMsgAddEnhancedSignatureImpl Signer does not have any of signing-certificate attributes
cades: CadesMsgAddEnhancedSignatureImpl Certificates equality checked
cades: CadesMsgAddEnhancedSignatureImpl Hash algorithm deduced
cades: AssembleAttribute Assert FAILED: pSignerCert
libc++abi.dylib: terminating with uncaught exception of type ATL::CAtlException

Запускаю на симуляторе. Долго пытался найти device log, но так и не смог. Есть подозрения, что до обращения к серверу дело не доходит, так как, если закомментировать адрес в tsp, ошибка остается та же.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.