11.05.2006 14:04:31Взаимодействие криптопровайдера с оригинальнымы алгоритмами со сторонним ПО Ответов: 3
Михаил
Каким образом можно заставить систему использовать мой криптопровайдер при проверке сертификатов, в которых используется оригинальный алгоритм подписи, т.е. стандартные и дефолтный криптопровайдеры его не поддерживают. Идентификаторы алгоритмов успешно зарегистрированы и проверка посредством CryptVerifyCertificateSignature с явным указанием хендла на мой криптопровайдер происходит успешно.

Также интересно можно ли заставить Outlook (и другие сторонние приложение, например, Ворд) использовать при подписывании не MD5-хэширование, а какое-то другое (в том же The Bat! для этого есть настроечный диалог).

Спасибо за помощь.
 
Ответы:
12.05.2006 18:58:51Василий
Смотря что называть словом "использовать". Приведённый пример как раз свидетельствует о том, что использовать для проверки подписи (при указанных условиях) можно.

По поводу стороннего приложения - вопрос к разработчику.
12.05.2006 19:12:32Михаил
словом "использовать" я назвал обращение к моему криптопровайдеру при независящих от меня проверках сертификата. Например, при просмотре сертификата в менеджере сертификатов.
15.05.2006 12:55:45Kirill Sobolev
Вот что говорит по этому поводу maxdm

C проверкой подписи в сертификатах все боле менее просто - нужно лишь правильно зарегистрировать OID подписи - читаем Wincrypt.h:

// CRYPT_SIGN_ALG_OID_GROUP_ID has the following optional ExtraInfo:
// DWORD[0] - Public Key Algid.
// DWORD[1] - Flags. Same as above for CRYPT_PUBKEY_ALG_OID_GROUP_ID.
// DWORD[2] - Optional CryptAcquireContext(CRYPT_VERIFYCONTEXT)'s dwProvType.
// If omitted or 0, uses Public Key Algid to select
// appropriate dwProvType for signature verification.

- последний DWORD - и есть тип провайдера при проверке подписи.