26.07.2005 9:28:50Выбор криптопровайдера Ответов: 5
Ирина
1. Подскажите какой нужно выбрать криптопровайдер, чтобы он поддерживал ГОСТ-овые алгоритмы подписи.
2. Может ли CAPICOM создавать дайжест, то есть результат функции хеширования? И есть ли хелп по CAPICOMу ?
 
Ответы:
26.07.2005 10:36:32Kirill Sobolev
1. продукт - КриптоПро CSP :)
Провайдеры реализующие гостовые алгоритмы подписи (в версии 2.0)
Crypto-Pro GOST R 34.10-94 Cryptographic Service Provider
Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider

2. В CAPICOM есть объект HashedData начиная с версии 2.0. Дока по CAPICOM есть в MSDN http://msdn.microsoft.com/library/default.asp?url=/library/en-us/seccrypto/security/capicom_reference.asp
26.07.2005 11:11:54Ирина
Я понимаю что такие криптопровайдеры, но какой у них тип? Если я пишу CryptAcquireContext(@hProv, cont, ’Crypto-Pro GOST R 34.10-94 Cryptographic Service Provider’, PROV_RSA_FULL, CRYPT_NEWKEYSET), то выдается ошибка NTE_PROV_TYPE_NO_MATCH. Нужен какое-то условное название.
26.07.2005 11:14:30Kirill Sobolev
Конечно, тип же не PROV_RSA_FULL, а
PROV_GOST_94_DH или PROV_GOST_2001_DH. В wincryptex.h эти константы есть.
26.07.2005 12:53:47Ирина
Извините, я не поняла куда ставить этот параметр, вы можете подсказать что в этой строчке неправильно, выдается ошибка NTE_PROV_TYPE_NO_MATCH
CryptAcquireContext(@hProv, cont, ’Crypto-Pro GOST R 34.10-94 Cryptographic Service Provider’, PROV_GOST_94_DH, CRYPT_NEWKEYSET)

В файле wincryptex.h нет строчки PROV_GOST_94_DH, зато там есть
#define PROV_GOST_DH 2
Я в wcrypt2.pas сделала определение
PROV_GOST_94_DH = 2;
хотя значение 2 там уже присутствовало в объявлении другого типа
26.07.2005 12:59:50Kirill Sobolev
у меня wincryptex.h отсюда
http://www.cryptopro.ru/CryptoPro/test/sample2_0.zip
там есть
#define PROV_GOST_94_DH 71
#define PROV_GOST_2001_DH 75