Статус: Участник
Группы: Участники
Зарегистрирован: 10.02.2019(UTC) Сообщений: 16  Откуда: Москва Сказал(а) «Спасибо»: 1 раз
|
Добрый день!
В десктопном приложении пытаюсь получить Hash по ГОСТ алгоритму с помощью функций Cryptoapi.
На 4-ом шаге получаю ошибку 87 - Параметр задан неверно.
Схематичный порядок действий, основные функции (все проверки пропущены для наглядности):
self.ProviderType = PROV_GOST_2012_256 ! 80 Algid = CALG_GR3411_2012_256 ! 32801
1. CryptAcquireContext(SELF.hCryptProv,,, SELF.ProviderType,CRYPT_VERIFYCONTEXT)
! Create an empty Hash 2. CryptCreateHash(SELF.hCryptProv,AlgId,0,0,hHash)
! Hash the supplied Password 3. CryptHashData(hHash,ADDRESS(Password),PasswordLen,0)
4. hashlen = GR3411LEN !64 ParamBLOB.ParamData &= NEW(STRING(hashlen))
CryptGetHashParam(hHash,HP_HASHVAL,ADDRESS(ParamBLOB.ParamData),hashlen,0)
!!! Здесь получаю ошибку 87 - Параметр задан неверно
А с такими параметрами прекрасно работает: self.ProviderType = PROV_RSA_AES ! 24 Algid = CALG_SHA_256 ! 32780
И пример на С CreatingHash из пакета Cryptopro SDK тоже нормально работает с ГОСТ алгоритмом.
Программа написана на языке Clarion и все работало с алгоритмом CALG_SHA_256
О чем может говорить полученная ошибка? Что не нравится функции CryptGetHashParam именно для PROV_GOST_2012_256 ?
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 10.02.2019(UTC) Сообщений: 16  Откуда: Москва Сказал(а) «Спасибо»: 1 раз
|
Сделал простейший пример на VBS Цитата:Dim HashedData
Set HashedData= CreateObject("CADESCOM.HashedData") HashedData.Algorithm = 101 HashedData.Hash("Hello word!") Wscript.Stdout.Writeline HashedData.Value Дает ошибку: Указан неправильный алгоритм Со значениями Algorithm от 0 до 6 нормально работает, а с ГОСТ не хочет. Насколько я понимаю, CADESCOM поддерживает ГОСТ алгоритмы Цитата: CADESCOM_HASH_ALGORITHM_CP_GOST_3411 = 100, CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256 = 101, CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_512 = 102, CADESCOM_HASH_ALGORITHM_CP_GOST_3411_HMAC = 110, CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256_HMAC = 111, CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_512_HMAC = 112
Установлен КриптоПро CSP 5.0.11319 KC1 В чем может быть проблема? Возможно, проблема с Criptoapi как то связана с этой проблемой ?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close