Статус: Участник
Группы: Участники
Зарегистрирован: 25.08.2017(UTC) Сообщений: 12 Откуда: Москва Поблагодарили: 2 раз в 1 постах
|
Уважаемый разработчики славного CSP! В очередной раз "наступил на грабли" после переустановки CSP c версии RC2 на RC3. Объясните пожалуйста, почему в версии 9922, 9944 код: Код:
if not CryptAcquireContext(HProv, nil, nil, 75, CRYPT_VERIFYCONTEXT) then
RaiseLastOSError;
if not CryptImportPublicKeyInfo(HProv,
Cert.Context.dwCertEncodingType,
@Cert.Context.pCertInfo.SubjectPublicKeyInfo,
HKey) then
RaiseLastOSError;
выдает ошибку: "Параметр задан неверно" В версияx 3.9, 4.0.9842 все "норм" ?
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,377 Откуда: КРИПТО-ПРО Сказал «Спасибо»: 32 раз Поблагодарили: 706 раз в 614 постах
|
Очень странно, а можете прикрепить проблемный сертификат? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.08.2017(UTC) Сообщений: 12 Откуда: Москва Поблагодарили: 2 раз в 1 постах
|
От сертификата не зависит, но прилагаю: kor-20180605.zip (1kb) загружен 3 раз(а).Отредактировано пользователем 28 апреля 2018 г. 12:34:25(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,377 Откуда: КРИПТО-ПРО Сказал «Спасибо»: 32 раз Поблагодарили: 706 раз в 614 постах
|
А вообще что-нибудь работает после обновления? У нас сборки проходят многоступенчатой тестирование и проблем не было обнаружено. Иные криптопровайдеры установлены? На "чистой" машине проблема воспроизводится? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.08.2017(UTC) Сообщений: 12 Откуда: Москва Поблагодарили: 2 раз в 1 постах
|
Поскольку версия R3 является сертифицированной, пришлось разбираться с этой проблемой. Удалось выяснить, что данная ошибка возникает в x64 приложениях, в режиме x32 проблемы нет. Размер Context.pCertInfo^.SubjectPublicKeyInfo: x32 - 24 байта x64 - 48 байт Данные в структуре одинаковые: (('1.2.643.2.2.19', (20, ...)), (66, ..., 0))
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 25.08.2017(UTC) Сообщений: 12 Откуда: Москва Поблагодарили: 2 раз в 1 постах
|
В итоге разобрался. Может кому пригодится.
Ошибка в объявлении типа: HCRYPTKEY = ULONG Правильно: HCRYPTKEY = ULONG_PTR
Размер HCRYPTKEY меняется в зависимости от разрядности системы. Используйте проверенные заголовки!
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close