| ||||
| ||||
1. Подскажите какой нужно выбрать криптопровайдер, чтобы он поддерживал ГОСТ-овые алгоритмы подписи. 2. Может ли CAPICOM создавать дайжест, то есть результат функции хеширования? И есть ли хелп по CAPICOMу ? | ||||
Ответы: | ||||
| ||||
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 | ||||
| ||||
Я понимаю что такие криптопровайдеры, но какой у них тип? Если я пишу CryptAcquireContext(@hProv, cont, ’Crypto-Pro GOST R 34.10-94 Cryptographic Service Provider’, PROV_RSA_FULL, CRYPT_NEWKEYSET), то выдается ошибка NTE_PROV_TYPE_NO_MATCH. Нужен какое-то условное название. | ||||
| ||||
Конечно, тип же не PROV_RSA_FULL, а PROV_GOST_94_DH или PROV_GOST_2001_DH. В wincryptex.h эти константы есть. | ||||
| ||||
Извините, я не поняла куда ставить этот параметр, вы можете подсказать что в этой строчке неправильно, выдается ошибка 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 там уже присутствовало в объявлении другого типа | ||||
| ||||
у меня wincryptex.h отсюда http://www.cryptopro.ru/CryptoPro/test/sample2_0.zip там есть #define PROV_GOST_94_DH 71 #define PROV_GOST_2001_DH 75 | ||||