| ||||
| ||||
Вопрос по CryptoPro 2.0 build 2082. При проверке подписи, а именно при CryptAcquireContext(@hcp, nil, PROV_NAME, PROV_TYPE, 0) PROV_NAME = "Crypto-Pro GOST R 34.10-94 Cryptographic Service Provider" PROV_TYPE = 0x00000047 для чего-то запрашивается ключевой носитель на имя пользователя компьютера (Insert carrier media for Administrator). Если нажать "отмена" - то контекст не получается. Для чего? И как бы так сделать, чтобы этого не случалось (такого сертификата просто нет)? В билде 2048 ничего подобного нет, данное обращение проходит нормально. P.S. А нельзя ли на сайте сделать окно ввода вопроса пошире и подлиннее? Во весь экран по ширине хотя бы? Жутко неудобно набивать длинные строки. Спасибо. | ||||
Ответы: | ||||
| ||||
Проблема немного прояснилась: второй параметр (имя контейнера) пустой, и CryptoPro предполагает, что тогда нужно подставить вместо него имя пользователя. Тем не менее нужно получить контекст криптопровайдера для CryptCreateHash. Можно ли это сделать, если на компьютере нет никаких контейнеров, только сертификаты и с помощью какой функции? | ||||
| ||||
вызовите CryptAcquireContext с флагом CRYPT_VERIFYCONTEXT. | ||||